上周:线性回归:可以预测一个数字
这周,分类 输出变量y只能取可能值中的一个,而不是无限数字了
动机与目的
训练特征集得出的结果仅为概率的参考
垂直分界线:决策边
逻辑回归算法
logistic regression逻辑回归(注意属于分类算法而不是回归算法) 得出的值仅在0-1 帮助分类
f(x)得出的值小于0.5,则y hat = 0;f(x)得出的值大于0.5,则y hat = 1
(后面的z就是前面的f)
由
得出Sigmoid函数
Sigmoid函数
一个在生物学中常见的S型函数,也称为S型生长曲线。在信息科学中,由于其单增及反函数单增等性质,Sigmoid函数常被用作神经网络的阈值函数,将变量映射到0和1之间。(该题重点在于Sigmoid函数得出g(z)的值为得癌症的概率)
在图得出y=0.7时通过Sigmoid函数图(z为自变量,g(z)为阈值的图)得出
(e取值2.7)
转变为70%的可能性为恶性肿瘤
总结:由已给特征集合锻炼出x为未知数的,w和b为已知数的式子f:1. 当带入f得出大于0.5,则z大于0,则f概率确诊,确诊力度大;2. 当带入f后小于0.5,z小于0,则f概率确诊,确诊力度小
决策边界
反推过程
x1 + x2 - b = 3 为边界线
以上是普通的决策边界,以下举例另一种决策边界(圆)
还有一些更复杂的决策边界
逻辑回归中的代价函数
总的代价函数为1/m × 损失函数的累和
f是对应的按照我们自己的逻辑回归函数和对应的wbx推出来的。损失函数就是用于预测我们推断结果与真实结果的误差
若L函数接近1,则说明误差小
(后面偏难 仅贴图) 若之后有新的更贴合的解释会添加文字说明
简化逻辑回归代价函数
本节目的是简化(去掉损失函数和成本函数),使得梯度函数拟合更简单
损失函数简化过程
上面两个公式合成以下一个公式
简化成本函数
通过损失函数简化
梯度下降
在此推荐一个机器学习——逻辑斯特回归(包含梯度下降推导) - 知乎 (zhihu.com)有助于理解
逻辑回归梯度下降推导
过拟合 overfitting(正则化regularization)
过拟合就是太过于合适数据 (中间是just right恰到好处;右边是overfit)
第一个是偏差(高偏差即使过拟合),第二个是方差(高方差high variance):都是过度合适数据
如何查找最合适呢:笔者认为应该是根据给的特征个数决定初始幂次,再根据特征的范围设定幂次
如何解决
- 获取更多的data数据
- 尝试选择和使用特征的一个子集
- reduce size of parameters 正则化 例如 神经网络
寻找特征集的子集
正则化
正则化尝试让w1到wn变小 使得 过度拟合减小
在大部分情况下w有影响而b无影响
为什么加一个项却是使得n个特征削弱呢? 增加了后面的大系数二次项后为了代价函数取值较小,就只能将相应的w值减小了,最终呈现的结果是w变小了
我们希望减小最小化原始成本(第一个加式),即均方误差成本加上额外的第二项,并尽量减少第二个任期(使第二项w保持较小),这有助于减少过拟合(损失函数尽量小,即J尽量小。当lamada大时,只能w变小)
用于线性回归的正则方法
第一部分是 平方误差成本函数 第二部分是额外的 正则化项(lamda是正则化参数)
用于逻辑回归的正则方法
两者相似
偏导数求导的链式法则