ML:极大似然估计
概率密度(质量)函数:用来描述随机变量取某个值的时候,取值点对应的概率的函数。
概率:已知概率分布,推断样本的概率值
似然:已经有观测样本,寻找最符合当前数据分布的参数
似然函数:L(μ,σ∣X)=∏i=1NP(xi∣μ,σ)
对数似然函数:L(μ,σ∣X)=∑i=1NlogP(xi∣μ,σ)
损失函数:J(θ)=−∑imYlog(Y^)−(1−Y)log(1−Y^),需要求J(θ)对于θi的导数,式中Y^=1+e−θTX1
利用dxdloga(f(x))=f(x)lna1f′(x),将Y^=1+e−θTX1代入log(Y^):
∂θj∂log(Y^)=∂θj∂log(1+e−θTx1)=∂θj∂(log(1)−log(1+e−θTx))
∂θj∂log(Y^)=∂θj∂(−log(1+e−θTx))=−1+e−θTx1⋅e−θTx⋅−xj=(1−1+e−θTx1)x
∂θj∂log(1−Y^)=∂θj∂log(1+e−θTxe−θTx)=∂θj∂(−θTx−log(1+e−θTx))
∂θj∂log(1−Y^)=−xj+xj(1−1+e−θTx1)=−1+e−θTx1xj
综上可得,∂θj∂J(θ)=−∑imyixij(1−1+e−θTxi1)−(1−yi)xij1+e−θTxi1
其中,i是数据点的序号,j是特征的数量,输入X可以表示为:
X=⎣⎡xi=1,j=1xi=1,j=2xi=1,j=3xi=2,j=1xi=3,j=1xi=2,j=2xi=3,j=2xi=2,j=3xi=3,j=3⎦⎤,举个例子,一个batch的图片,xij表示第i张图片的第j个像素
展开整理得:∂θj∂J(θ)=∑im(1+e−θTxi1−yi)xij=∑im(y^i−yi)xij,式中Y^=1+e−θTX1
之前θ和X的向量表示形式为:θT=[ bias θ1θ2]和X=⎣⎡1x1x2⎦⎤
由于θ中的bias对应着X里面的1,所以可以得到:∂bias∂J(θ)=∑im(y^i−yi)
设定学习率η,迭代下面的步骤直至收敛:
θj←θj−η∂θj∂J(θ)
bias←bias−η∂ bias ∂J(θ)