Skip to content

Commit 65743a7

Browse files
Implement cross entropy loss function.
1 parent 578758d commit 65743a7

File tree

1 file changed

+9
-0
lines changed

1 file changed

+9
-0
lines changed

nn.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,15 @@ def loss(self, values, expected):
6262
def dloss(self, values, expected):
6363
return 2*(values - expected)/values.size
6464

65+
class CrossEntropyLoss(LossFunction):
66+
def loss(self, values, target_class):
67+
return -values[target_class, 0] + np.log(np.sum(np.exp(values)))
68+
69+
def dloss(self, values, target_class):
70+
d = np.exp(values)/np.sum(np.exp(values))
71+
d[target_class, 0] -= 1
72+
return d
73+
6574

6675
class Layer:
6776
"""Model the connections between two sets of neurons in a network."""

0 commit comments

Comments
 (0)