1. Softmax
1.1 Softmax概要
Softmax分类器可以认为是在SVM分类器的基础上做了一些改进,SVM的输出为对于一张image在各个类别上面的评分,因为没有明确的参照,所以很难直接解释。而Softmax则不同,Softmax将对于一张image在各个类别上面的评分看作为归一化的对数概率,概率给了我们明确的参照,我们可以认为这张image应该认为是概率最高所对应的类别。
1.2 Softmax VS SVM
SVM认为只要在正确分类上面的得分高出其它类别Δ就不会对损失产生任何贡献,而Softmax却认为在概率归一化以后在正确类别上面的概率大于其它类别上面的概率。
SVM鼓励我们在正确类别上面的得分高出其它类别的得分Δ,Softmax鼓励我们在正确类别上的概率(归一化后)趋于1。
2. Loss Fuction
2.1 cross-entropy loss
2.2 calculus
2.2.1 当 j == yi :
2.2.2 当 j != yi
3. 代码实现
github:https://github.com/GIGpanda/CS231n
代码由两个文件组成,一个叫softmax.py, 另一个也叫softmax.py