本文是在softmax求导过程中,表达个人对j!=y[i]的理解。
理解这个东西花了3天,有可能理解还有错,请指出。
灵魂拷问:对谁求导啊,谁对谁求导啊?
一般是损失函数对权重求导。数学表达:result = d(loss)/d(W)。
求导得到的结果是用来更新权重W用的,数学表达:W = W-result。
怎么理解j==y[i]和j!=y[i]?
softmax中的loss是这样子的。(下面的公式是从cs231n抄的 )
j是用来遍历calss的index。
i是输入图片的编号,是用来遍历train_num。
f = X*W+b。
y[i]是输入图片的正确标签,假如样本是第3张图片,那么y[3]就是第3张图片的正确标签(猫)。
众所周知,计算结果中分两种情况,j==y[i]和j!=y[i]。
这里不解释为啥求导出这个结果,就是这个对我来说比较抽象的j==y[i]花了我三天时间。下图带来秒杀级理解: