机器学习笔记(1)-线性回归,梯度下降,logistic回归

今天开始学习 机器学习,将我每次学到的内容做一个笔记,方便以后复习。

一、线性回归

(一)

         什么是线性回归呢,我的理解是已经知道一些数据,根据已知的数据拟合出一条直线(二维空间中)或一个平面(三维空间中)以此类推。用拟合出来的“直线”来预测未知的数据。举一个例子,比如有某家银行给不同人贷款的额度的数据,假设是根据这个人的工资以及年龄判断贷多少钱给这个人。根据这些数据拟合出一个公式,后面只要输入一个人的工资和年龄就可以预测出银行会贷给他多少钱。其中工资和年龄称为特征,贷款额度称为标签。

机器学习笔记(1)-线性回归,梯度下降,logistic回归

从这个表可以看到工资和额度两个特征从数值上差距比较大,那么到底每个特征对标签的影像有多大呢,这就需要通过算法来确定每一个特征所占的权重。(参数)

 我们假设机器学习笔记(1)-线性回归,梯度下降,logistic回归是年龄的参数,机器学习笔记(1)-线性回归,梯度下降,logistic回归是工资的参数。这样拟合的平面为

机器学习笔记(1)-线性回归,梯度下降,logistic回归

机器学习笔记(1)-线性回归,梯度下降,logistic回归

其中机器学习笔记(1)-线性回归,梯度下降,logistic回归是偏置项。偏置项的变动体现出来的是拟合平面的上下整体浮动,可以看作是对其他各个解释变量留下的偏差的线性修正。(这里留下一个问题,在什么情况下线性回归可以不考虑偏置项?望知道的大牛告诉我)

将上面的式子整合一下,令机器学习笔记(1)-线性回归,梯度下降,logistic回归为1,则上式变为

机器学习笔记(1)-线性回归,梯度下降,logistic回归

(二)误差

误差就是真实值与预测值之间存在的差距,用机器学习笔记(1)-线性回归,梯度下降,logistic回归表示。对于每个样本机器学习笔记(1)-线性回归,梯度下降,logistic回归,误差是独立并且具有相同分布,并且服从标准正态分布的。

机器学习笔记(1)-线性回归,梯度下降,logistic回归

为什么呢?概率论与数理统计里的中心极限定理有解释。

机器学习笔记(1)-线性回归,梯度下降,logistic回归

吴恩达斯坦福大学的公开课中关于这个有两个回答:
1.方便数学处理

2.他不知道,比如中心极限定理带来的效应,但是对于绝大多数实际的问题,通常服从高斯分布。

机器学习笔记(1)-线性回归,梯度下降,logistic回归

用最大似然法求出使得已知数据符合这个分布的概率最大的机器学习笔记(1)-线性回归,梯度下降,logistic回归,简单来说就是似然函数就是求所有样本值都预测正确的概率。要求出一个机器学习笔记(1)-线性回归,梯度下降,logistic回归,使这个概率最大。

机器学习笔记(1)-线性回归,梯度下降,logistic回归

机器学习笔记(1)-线性回归,梯度下降,logistic回归

展开化简后

机器学习笔记(1)-线性回归,梯度下降,logistic回归

要使这个最大,就要使后面的那项最小。

因此目标就是使机器学习笔记(1)-线性回归,梯度下降,logistic回归最小,使用最小二乘法。

机器学习笔记(1)-线性回归,梯度下降,logistic回归

为了方便计算,将上式写成矩阵形式

机器学习笔记(1)-线性回归,梯度下降,logistic回归

求偏导数

机器学习笔记(1)-线性回归,梯度下降,logistic回归

使偏导数等于0,求出

机器学习笔记(1)-线性回归,梯度下降,logistic回归

上面涉及到矩阵求导的知识,可以参考这篇博客 矩阵求导

(三)评估方法

拟合出“直线”后还要对其进行评估,

机器学习笔记(1)-线性回归,梯度下降,logistic回归


二、梯度下降

当我们得到一个目标函数后,很多时候不能直接求解(线性回归可以当成一个特例),常规套路就是我交给机器一堆数据,然后告诉它什么样的学习方式是对的,让它抄着这个方向去做。

目标函数:

机器学习笔记(1)-线性回归,梯度下降,logistic回归

线性回归
寻找山谷的最低点,也就是我们的目标函数终点

(什么样的参数能使得目标函数达到极值点)

机器学习笔记(1)-线性回归,梯度下降,logistic回归

下山分几步走呢?(更新参数)

(1):找到当前最合适的方向
(2):走那么一小步,走快了该” 跌倒 ” 了

(3):按照方向(梯度方向,也就是使目标函数下降最快的方向)与步伐(学习率)去更新我们的参数

机器学习笔记(1)-线性回归,梯度下降,logistic回归

下标j代表第i个样本的第j个特征

学习率会对结果产生巨大的影响,一般设置小一点

批处理数量:32,64,128都可以,很多时候还得考虑内存和效率


三、logistic回归

logistic回归不是一个回归算法,而是一个二分类算法。线性回归中拟合函数

机器学习笔记(1)-线性回归,梯度下降,logistic回归

求出来的是一个具体的值。logistic回归需要根据这个值的大小将其分成两个不同的类别。这就需要用到近似于单位越阶函数但是是连续的sigmod函数去拟合分类问题。

机器学习笔记(1)-线性回归,梯度下降,logistic回归

logistic回归预测函数:机器学习笔记(1)-线性回归,梯度下降,logistic回归


其中机器学习笔记(1)-线性回归,梯度下降,logistic回归代表y=1的概率,即

机器学习笔记(1)-线性回归,梯度下降,logistic回归

为什么机器学习笔记(1)-线性回归,梯度下降,logistic回归代表y=1的概率呢?由

机器学习笔记(1)-线性回归,梯度下降,logistic回归变换得机器学习笔记(1)-线性回归,梯度下降,logistic回归机器学习笔记(1)-线性回归,梯度下降,logistic回归越大,y=1的几率越大;反之,机器学习笔记(1)-线性回归,梯度下降,logistic回归越小,y=0的几率越大

机器学习笔记(1)-线性回归,梯度下降,logistic回归

在线性回归中,机器学习笔记(1)-线性回归,梯度下降,logistic回归为预测值的拟合函数,在逻辑回归中,机器学习笔记(1)-线性回归,梯度下降,logistic回归=0为决策边界

==

整合后有

机器学习笔记(1)-线性回归,梯度下降,logistic回归

似然函数为

机器学习笔记(1)-线性回归,梯度下降,logistic回归

对数似然函数为

机器学习笔记(1)-线性回归,梯度下降,logistic回归

此时可用梯度上升法求对数似然函数的最大值,可引入 

机器学习笔记(1)-线性回归,梯度下降,logistic回归

转换为梯度下降任务

求导过程为

机器学习笔记(1)-线性回归,梯度下降,logistic回归

参数更新

机器学习笔记(1)-线性回归,梯度下降,logistic回归



参考:http://blog.csdn.net/u010692239/article/details/52345754