在线性回归里,我们用线去拟合点,现在的分类问题里,如果我们同样用线去拟合点,也能得到
一个函数:
如果现在我们延长x轴,我们的数据多了一个点,那我们的线就会变成蓝色这条,在x轴上的分界值会右移,部分原本该为1的点,会被误判为0,因此线性回归不再适合于分类函数
因此我们用一个激活函数,把分类控制在一定范围内,常见的激活函数有sigmoid,relu
当z>=0, g(z)>=0.5, y=1;
当z<=0, g(z)<=0.5, y=0;
decision boundary
当theta=[-3
1
1]
htheta=g(-3+x1+x2), 此时g(-3+x1+x2)>=0, y=1
于是有x1+x2>=3, 把x1,x2用来画图,就有了x1+x2=3这条线作为决策边界。
decision boundary 既可以是线性的,也可以是非线形的
cost function
当h(x) 是sigmoi函数,cost function是不收敛的,图像如左边,这个时候用梯度下降法很难找到全局最优,大多数时候只能是局部最优。因此,我们需要为logistic regression引入一个新的cost function。
在这里我们在假设函数h()上套入了log()函数,为什么加上log()可以表达损失呢?
因为在这个二分问题里面,我们的y只有两种结果,1或0,我们的预测要么对,要么不对(之前的线性回归用减法是为了量化的比较,预测情况和实际情况,比如实际值是0.1,预测值是0.2),当预测是对的时候我们认为cost=0,当预测得不对的时候,我们认为cost无穷大,这个加上-log(h(x))正好可以表示这种情况。
需要注意,y=1,和y=0的损失函数是不同的!!!
显而易见,y有两种状态(0和1),当y=1时,预测值为1,损失为0,当y=0时,预测值为0,损失为无穷大。
现在可以用一个式子把y=1,y=0的情况同时表示出来