入门--Machine Learning 1-2 小结
在coursera上跟着Andrew NG的视频学了一个礼拜,做个小结,主要是学了监督学习中的回归和分类的一些基本概念与算法
回归:线性回归与逻辑回归
一、线性回归:根据已有的数据集,拟合一个假设函数,用来做预测
1.单特征值
假设函数为(线性假设):
和
是预测模型参数,x为样本的特征
然后求解代价函数,即平方误差函数
(至于为什么是这个函数,应该是和最小二乘有关(待学习))
m指的是样本总数,并且代价函数是以theta为参数的函数,举个例子,水平面是theta,纵轴是
为了找出假设函数,实现预测,就是找代价函数为最小值时的两个参数,使用的是梯度下降算法(类似于下山)
第一步:初始化两个模型参数
第二步:同步更新(迭代)两个参数,直到代价函数收敛
所以关键在于更新,公式如下
(是指赋值,j=0,1,
成为学习速率,偏导数为梯度,或者说学习速率就相当于下山的步子大小,梯度表示下山的方向)
通过这个算法,可以找的代价函数的局部最小值,当代价函数为凸函数时,局部最小值即为全局最小值
此时的和
就是我们需要的模型参数,带入假设函数,就可以进行预测
另一种计算模型参数的算法为正规方程,公式如下:
X为矩阵,行数样本数,列数为(样本特征数+1),y是样本的结果矩阵
2.多特征值
即每个样本有多个特征,也是类似,从矩阵的角度看
二、逻辑回归:根据已有的数据集,拟合一个假设函数,用来做分类
1.二元分类,解决分类问题,找出决策边界,例如下图,表示录取结果(0 or 1)与两次考试分数的散点图,当有一个新学生的成绩时,可以根据决策边界,就可以判断他的录取结果(概率)
其中涉及到概率,所以问题就是找出边界,步骤如下
先是假设函数为:
g(z)称为逻辑函数或sigmoid函数,其中x是样本向量,theta是模型参数,sigmoid函数图像如下
即 >=0 时,则g(
) >= 0.5,此时输出为1的概率较大
即 < 0 时,则g(
) < 0.5,此时输出为1的概率较大
而 = 0 就是决策边界
就像上面2个成绩的例子,admitted代表1,not admitted代表0
这是一条直线,x1,x2是两次成绩向量,只要求出theta,就可画出决策边界。
所以关键要求训练出theta,而对于theta,和之前相同,即代价函数最小值问题
逻辑回归的代价函数与线性回归的代价函数不同,线性回归的代价函数是一个凸函数,局部最小值就是全局最大值,而逻辑回归的代价函数是非凸函数,公式如下(最大似然推导)
接下来也是采用梯度下降算法,求出最小值以及对应的theta
--------------------------------------------------------------------
在复述多元分类之前,先小结正则化的知识,关于正则化,目的就是解决欠拟合或者过度拟合
无论是线性还是逻辑回归,引入lambda来平衡高阶项的影响
公式如下
--------------------------------------------------------------------
下篇是多元分类与神经网络