开始
在一个普通的周末打开哔哩哔哩刷新动态的时候突然看到qsc投稿了视频的我是表示震惊的!当看到标题是机器学习算法讲堂的时候,我知道:是时候了,是时候开始学一点机器学习了,那么这也算是最近周末的常驻项目之一了.既然看了视频并且手推了一遍,肯定是要搞个大新闻的,那么就开个博客记录一下自己的笔记吧.
先来贴一下qsc视频的地址:
机器学习算法讲堂(2):线性回归推导
机器学习算法讲堂(2.1):最大似然与线性回归
线性回归
首先允许我再盗一张图:
这是一个非常经典的二维的线性回归的图片.我们的任务就是找到这样一条直线,使得这条直线到平面上所有的点的距离之和最小,写成函数就是这样:
判断这个函数的好坏我们就定义一个损失函数(loss function)如下(最小二乘法):
定义W为使得E最小时的参数:W=argminE,然后我们可以把这个问题转化为求E的导数,找到E的导数为0的点就是E最小的点 先将E化为矩阵的表示形式(这里的x和y都是矩阵的形式):
接下来对E求导(左导右不导加上右导左不导):
我们可以把
当
最大似然
还是回到上面的图片中,在我们用函数来拟合这组数据的时候,因为无法完美的拟合数据,所以我们假设有我们没有观察到的因素存在导致我们的拟合函数存在误差,而这个拟合函数所缺失的不可解释的那部分误差就是直线到数据点之间的距离. 同时我们换个角度来看这个数据集,既然这些点被我们观测到了,就说明这些点被我们观测到的概率是最大的,由此可以推出,我们可以寻找一个函数,使得我们能够观测到这些点的概率最大,那我们也就找到了对些数据最好的拟合.
似然函数推导
假定存在一个数据集D=
最大似然和线性回归
根据我们之前的定义:
将上面的
由于误差符合正态分布,我们将概率代入似然函数中并且对似然函数取log:
化简得到:
去掉前面的常数项和后面的常系数之后可以化简为:
总结
虽然是最简单的线性回归的推导,但是从概率的角度利用最大似然来推出loss function的那一刻还是感觉到:数学真炫酷啊~ 之前看机器学习的时候感觉数学公式看到就很头疼,但是现在自己硬着头皮推一遍之后发现并没有那么复杂而且通过这种硬盒的方式来学机器学习的算法是获益匪浅.最后再说一句:qsc的视频我是期期都看啊~