梯度计算过程如下:
线性回归:
逻辑回归
优化
使梯度下降进行逻辑回归的速度提高,适合数据比较大
>> options = optimset('GradObj','on','MaxIter','100'); >> initialTheta = zeros(2,1) initialTheta = 0 0 >> [optTheta,functionVal,exitFlag] =fminunc(@costFunction,initialTheta,options) optTheta = 5.0000 5.0000 functionVal = 1.5777e-30 exitFlag = 1 on:梯度目标参数为打开 MaxIter 100 :最大迭代次数为100 fminunc 会自动进行优化算法,找到theta 的最优值 exitFlag =1 表明此时是收敛的。 要求theta 的维度>=2