机器学习(2)——线性回归

线性回归

函数模型

  线性回归函数想必大家在高中的学习中就已经学习过了,这一篇文章中我们并不会很详细的介绍。首先,如同下面这张散点图:
  我们会怎么去用函数拟合?
  我们一眼就会发现,用一条直线穿过数据会很好的拟合这些数据,这些数据很均匀的分布在直线的两侧。看到这里我们就可以直接写出我们线性函数的表达式了:
f(x,\omega)=\sum_{i=0}^{m}\omega_ix_i
  不过通常我们认为x_0=1,所以这个式子展开之后就是:
f(x,\omega)=\omega_0+\omega_1x_1+...+\omega_ix_i
  在机器学习中,我们常常使用线性代数去描绘数据,因此我们写成下面这种形式
\omega=\begin{bmatrix}\omega_0\\\omega_1\\\vdots\\\omega_n \end{bmatrix} \qquad x= \begin{bmatrix}x_0\\x_1\\\vdots\\x_n \end{bmatrix} \qquad b= \begin{bmatrix}b_0\\b_1\\\vdots\\b_n \end{bmatrix}
  也就是说,将表达式写成矩阵的形式,就成了:
f(x,\omega)=wx^T+b
  这只是最简单的一种线性函数,还有一些广泛应用于神经网络的线性函数是一层一层的嵌套函数,例如:
  f_1(x,\omega)=\alpha f(w_if(wx))+...
  目前我们并不去讨论非线性的函数模型,对于非线性的函数模型,我们往往需要进行正则化进行调整,这里我会在后面进行详细的介绍。

代价函数

  代价函数又称为损失函数,在这里我们可以试着来推导一下。我们的代价函数主要就是用于衡量预测数据和真实数据之间的误差。很容易的我们会想到直接用他们之间的差值作为衡量。
J(\omega)=\sum_{i=0}^{m}(y-f(x_i))
  不过这个函数存在一个问题,就是y-f(x_i)的符号是不确定的,因此即使误差很大,J(\omega)甚至可以为0,因此我们需要改进这个函数。
  那么,加一个绝对值怎么样呢?
J(\omega)=\sum_{i=0}^{m}\left|y-f(x_i)\right |
  这样显然我们的代价函数有了更好的性能,不过还是存在一些问题,就是绝对值是无法求导的。那么我们会想,有什么方法既可以不影响函数的代数性质又不会造成误差的失误呢?很明显,二次函数是一个不错的想法。
J(\omega)=\sum_{i=0}^{m}(y-f(x_i))^2
  这个时候我们已经完成了我们的函数设计,不过还有一点点小问题,就是j(\omega)有可能出现过大的情况,我们需要对它进行求平均值,同时,为了方便我们后续的求导计算,我们通常还会乘以一个参数\frac{1}{2},当然你不做处理也不会有问题。最终的函数解析式就成了:
J(\omega)=\frac{1}{2m}\sum_{i=0}^{m}(y-f(x_i))^2
  相信很多数学底子好一些的朋友,肯定发现了一件事,这不就是我们常常使用的方差的变形吗?是的,这个函数我们称为均方误差函数,你可以理解为广义上的方差,我们记得方差是减去数据的平均值,这里也是类似的,因为我们所用的拟合函数就已经充当了平均值的作用。

极大似然估计

  这个玩意名字取得总是让人觉得怪怪的,一眼看不出这是干嘛的。极大似然估计有点类似文言文的一种说法,似然,也就是可能性的意思。极大似然估计也就是最大可能性的估计。
  构造极大似然估计的条件很容易,也就是i.i.d条件,数据独立同分布条件。我们给出一个概率函数P(y|x,\omega)。如何评判函数的好坏呢?我们知道,对于给定的数据,概率达到最大值就是最好的,那么针对整个数据集来说,我们应当对概率函数进行求积:
L(\omega)=\prod_{i=1}^{m}P(y|x,\omega)
  L(\omega)就是我们的似然函数了,而求出函数最大值所对应的\omega也就是我们所讨论的极大似然估计了。
  大部分情况下,我们不喜欢求连积,我们要想办法将L(\omega)变成一个求和的函数,这样我们的计算会方便许多。很容易想到对数的性质。我们对L(\omega)进行求对数,得到:
lnL(\omega)=\sum_{i=1}^mlnP(y|x,\omega)
  同样的我们防止数据过大,对它求一个平均值,不过这里的平均值应该是负平均值比较好,为什么?看一看对数函数的图像,概率是衡在[0,1]之间,对应的对数始终为负值,所以我们应该用负数好。
lnL(\omega)=\frac{-1}{m}\sum_{i=1}^mlnP(y|x,\omega)
  对数函数也有缺点,就是遇上0的时候,对数函数就显得无能为力了,在一些分类问题中,假设真实标记是0,那么极大似然估计出的概率函数也应该是0,或者是接近0,这样就会导致对它求对数的时候数值会变得巨大。这里我们引入一个概念——。我们将在下一节信息论中进行详细的介绍。

我的掘金:WarrenRyan

我的简书:WarrenRyan

欢迎关注我的博客获得第一时间更新 https://blog.tity.xyz

我的Github:StevenEco

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,033评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,725评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,473评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,846评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,848评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,691评论 1 282
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,053评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,700评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,856评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,676评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,787评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,430评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,034评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,990评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,218评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,174评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,526评论 2 343

推荐阅读更多精彩内容