LR算法
逻辑回归主要用于二元分类问题,逻辑函数为
f(x;θ)=1+eθTx1
推导损失函数:
P(y=1∣x;θ)=f(x;θ)=1+eθTx1P(y=0∣x;θ)=1P(y=1∣x;θ)
每个样本相互独立,则似然函数为:
L(θ)=i∈{1,…,N}.y(i)=1∏P(y=1∣x(i);θ)i∈{1,…,N}.y(i)=0∏P(y=0∣x(i);θ)L(θ)=i∈{1,…,N}.y(i)=1∏P(y=1∣x(i);θ)i∈1,…,N}.y(i)=0∏(1P(y=1∣x(i);θ))对其取对数:
J(θ)=lnL(θ)=i=1∑Ny(i)ln(P(y=1∣x(i);θ))+(1y(i))ln(1P(y=1∣x(i);θ))
梯度下降法:
对于f(z)=1+ez1的导函数是f′(z)=f(z)(1f(z))
链式求导法则求得参数θ:
θ=θα(f(xi;θ)yi)xi
算法优化:随机梯度下降法
当大数据量时,上述方法需要遍历所有样本,造成梯度下降缓慢。
随机梯度下降是根据步长选择一部分样本进行梯度下降,再向最优点前进,最终在最优点附近震荡。
实践
代码练习Titanic |