机器学习——Nonlinear Transformation
之前我们学习的所有模型,都是linear model。我们做的都是用一条直线(或者平面等)来分类,或者拟合,或者是通过该直线来预测概率。但是现实中很多时候线性不一定能做得很好。
之前我们学习的所有模型,都是linear model。我们做的都是用一条直线(或者平面等)来分类,或者拟合,或者是通过该直线来预测概率。但是现实中很多时候线性不一定能做得很好。
目前,我们对二元分类已经有了不少的了解,可以用多个线性模型去实现二元分类。但是生活中遇到的往往不是是非题,而是选择题,尤其是图像识别问题中,我们往往需要识别多个物体。如何通过之前实现的二元分类,来实现多元分类呢?
到目前为止,已经学习了3个线性模型了,他们都使用到了$score = W^TX$(后文中简写为$s$),使用特征间线性组合来打分,通过分数来做后续的处理。
Gradient Decent,即梯度下降。梯度下降是机器学习中非常重要的接近最优解的工具。
通过线性分类,我们预测的是一个样本是positive,还是negative,不过有时候我们并不想要那样明确的结果。
27号,我坐上远离家乡的飞机,不过两个半小时,我就来到了深圳————这里,距离我的家,有1700多公里,距离太原,有2000公里。
上一篇博客介绍了线性回归模型,但是不知道大家是否有这样的感觉:它与之前的PLA算法似乎有很多类似之处。
终于完成了机器学习基石相对理论的部分,可以开始一些具体的算法的学习了。首先学习的第一个算法就是线性回归(linear regression)。
总共20道题目。
上次的博客介绍了VC bound,用的是二元分类来证明。实际上推广到其他的线性回归等问题,我们只需要修改一些VC bound里相关的定义,最终一样可以得到类似的结果。
上次的Hoeffding不等式那篇,证明了一个hypothesis集合是有限集合,那么学习是可行的。
总共20道题目。
这次用霍夫丁不等式来证明学习的可行性。首先要说明一个定理,叫做“No Free Lunch”定理。如果真是需要预测的值是完全随机的情况下,我们无论最后建立一个什么样的模型,误差期望都是一致的。这样学习似乎是不可行的。
今天想起来之前一个oj题目,是求类似与斐波那契数列一个数列的第N位。那时候接触到一个算法叫快速矩阵幂。
在这里我就用斐波那契数列的列子来简单说明一下如何用快速矩阵幂来解决这个题目。
上次主要是证明了PLA算法的可行性,这次用来实现PLA算法,并且实现可视化。
这个算法的实现是比较简单的,比较难的部分在于要考虑可视化。
对研究生要跟的导师还不确定,暑假打算学习点专业课与英语,也迟迟没有做好。我想不管哪个实验室应该都不会离开机器学习吧。因此开始看这方面的东西。
时间过的真快,转眼间从大学毕业已经一个月了。
在这两个月的时间里,我一直是“社会人”,因此享受不到阿里云的学生优惠,作为一个穷人,我很果断地放弃了我的梦想:关掉了之前自己一步一步搭出来的博客。