标签:regular 步骤 .com blank 影响 idt ons http 调用
逻辑回归(logistic regression)
1.用来解决归类问题(只是由于历史上的原因取了回归的名字)
2.二分归类(binary classification)
z>=0时g>=0.5,z<0时g<0.5; z-> -∞,g->0; z-> +∞,g->1
, ,
h(x)为输出值为1的概率:
,所以有:
合并上面两个式子:
再向量化表示:
画图是:
求偏导可得:(和之前线性回归的结果一样)
向量化表示为:
Conjugate gradient, BFGS, L-BFGS
用octave内部的函数库来调用这些方法,步骤:
1.写出代价函数和它的偏导:
function [jVal, gradient] = costFunction(theta) jVal = [...code to compute J(theta)...]; gradient = [...code to compute derivative of J(theta)...]; end
2.调用fminunc函数,optimset是传给该函数的参数
options = optimset(‘GradObj‘, ‘on‘, ‘MaxIter‘, 100); initialTheta = zeros(2,1); [optTheta, functionVal, exitFlag] = fminunc(@costFunction, initialTheta, options);
3.多类归类(multiclass classification):
正规化(regularization)
1.正规化用来解决过拟合问题(overfitting),适用于线性回归和逻辑回归问题。
延伸:
2.正规化后的代价函数:
(λ是正规化参数)
演示:https://www.desmos.com/calculator/1hexc8ntqp
eg:
h(x)=
如果想要减少theta3,theta4参数的影响,代价函数可以写成如下形式:
后面的两项参数乘以很大的数,这样为了得到代价的最小值,后两个参数就得很小,趋近于0,这样h函数中的那两个参数就
会很小,相当于消去了参数,所以函数就会变得平缓了,从而不会过拟合
3.正规化线性回归:
移项也可以写成:
可以看出,和没有正规化相比,只是每次迭代时,theta都变为原来的(1-α*λ/m)<1倍
( L=(n+1)*(n+1) )
4.正规化逻辑回归:
(注意没有第0项)
标签:regular 步骤 .com blank 影响 idt ons http 调用
原文地址:https://www.cnblogs.com/judejie/p/9013145.html