机器学习入门

目录

一、引入

二、机器学习定义 

三、机器学习的范围 

四、机器学习的方法——经典的算法

五、机器学习的应用

六、深度学习——机器学习的子类

七、人工智能(AI)——机器学习的父类


机器学习(Machine Learning,ML)

传统计算机工作方式——按照给出的指令执行,有因有果。而机器学习不接受指令,只接受输入的数据,相关而非因果。

一、引入

案例1 朋友经常迟到,我是现在出门还是一会再出门?

假设与朋友约过5次,迟到次数为1,按时到的比例为80%,我的阈值为70%,高于我的阈值,我按时出门;若迟到次数为4,按时到的比例为20%,低于我的阈值,我推迟出门。依据数据做出判断,与机器学习思想一致

案例中只考虑了频次,机器学习至少考虑两个量:自变量和因变量,因变量为要预测的结果,只有1个(迟到与否),自变量为预测迟到的量,可以有多个(时间)

案例1.1 发现朋友迟到的日子基本在星期五,通过建立模型,来模拟朋友迟到与星期五的概率

上图为最简单的机器学习模型,称为决策树

案例1.2 朋友迟到的部分原因是开车过来的时候,模型变复杂(2个因变量+1个自变量);朋友的迟到与天气也有一定关系。我希望能预测朋友迟到的具体时间,把朋友迟到的时间与雨量的大小、是否开车、是否是星期五统一建立一个预测模型,模型能预测值,如朋友大概会迟到几分钟,更好的规划出门时间。无法用决策树(决策树只能预测离散值),可用线性回归方法建立模型。

把所有的自变量和因变量输入,让计算机生成一个模型,同时让计算机根据我当前的情况,给出我是否需要迟出门,需要迟几分钟的建议。计算机执行这些辅助决策的过程就是机器学习的过程。

二、机器学习定义 

广义上,机器学习是一种能够赋予机器学习的能力以让它完成直接编程无法完成的功能的方法。

实践上,机器学习是一种通过利用数据,训练出模型,然后使用模型预测的一种方法。 

 案例2  我要出一套房,卖多少钱合适?

调查了周边与我房型类似的一些房子,从数据中找出价格和面积的规律——拟合一条直线,穿过所有的点。   机器学习的强力算法可拟合出复杂的非线性模型;数据越多,预测效果可能越好。

三、机器学习的范围 

1.模式识别=机器学习,前者源于工业界,后者源自计算机学科

2.数据挖掘=机器学习+数据库。数据挖掘仅仅是一种思考方式,应尝试从数据中挖掘出知识,但不是每个数据都能挖掘出金子的。

3.统计学习近似等于机器学习。机器学习中的大多数方法来自统计学,如著名的支持向量机算法,统计学习者关注统计模型的发展优化,偏数学,机器学习者更关注够解决问题,偏实践。

4.计算机视觉=图像处理+机器学习。图像处理技术将图像处理为适合进入机器学习模型中的输入,机器学习负责从图像中识别出相关的模式。

5.语音识别=语音处理+机器学习。

四、机器学习的方法——经典的算法

监督学习算法

线性回归、逻辑回归、神经网络、SVM

无监督学习算法

聚类算法、降维算法

特殊算法

推荐算法

1.回归算法

机器学习课程中回归算法为介绍的第一个算法。原因:简单,平滑的从统计学迁移到机器学习中;是后面若干强大算法的基石,若不理解回归算法,无法学习那些强大的算法。

a. 线性回归,一般用最小二乘法求解,最小二乘法的思想:假设拟合出的直线代表数据真实值,观测到的数据代表拥有误差的值。为尽可能减小误差,需求解一条直线使所有误差的平方和最小。最小二乘法将最优问题转化为求函数极值问题。数学上用导数为0的方法,但计算机可能求解不出或计算量太大。   计算机界有一个“数值计算”的学科——提升计算机各类计算的准确性和效率。著名的“梯度下降”以及“牛顿法”就是数值计算中的经典算法,非常适合处理求解函数极值的问题。梯度下降法是解决回归模型中最简单且有效的方法之一。

b.逻辑回归

线性回归处理的是数值问题,最后预测出的结果是数字(房价)。逻辑回归属于分类算法,预测结果是离散的分类(判断这封邮件是否是垃圾邮件,用户是否会点击此广告)。简而言之,逻辑回归是画了一条分类线

逻辑回归 = 线性回归的计算结果 + Sigmoid函数,Sigmoid函数将数值结果转化为了0到1之间的概率,根据概率做预测(如概率大于0.5,则这封邮件就是垃圾邮件,或者肿瘤是否是恶性的等)

案例3  有一组肿瘤患者的数据,有良性(蓝点表示),有恶性(红点表示)。红蓝色为数据“标签”,每个数据包括两个特征——患者年龄和肿瘤大小,将特征和标签映射到二维空间。判断绿点是良性还是恶性?

根据红蓝点我们训练出一个逻辑回归模型,即分类线。若绿点在分类线左侧,判断其标签为红色,属于恶性肿瘤。

逻辑回归算法划出的分类线基本为线性(也有非线性分类线的逻辑回归,处理数据量较大的时效率低),当两类之间的界线不是线性时,逻辑回归的表达能力就不足。下面的两个算法是机器学习界最强大且重要的算法,都可以拟合出非线性的分类线。

2.神经网络(ANN)

起源于对大脑工作机理的研究,BP算法(加速神经网络训练过程的数值算法)诞生后,进入热潮。

神经网络学习机理:分解与整合。下图为简单的神经网络逻辑框架,分输入层、隐藏层、输出层。输入层接收信号,隐藏层分解与处理数据,结果整合到输出层。一个圆代表一个处理单元(模拟一个神经元),若干处理单元组成一个层,若干层组成一个网络(神经网络)

每个处理单元事实上是一个逻辑回归模型,逻辑回归模型接收上层的输入,把模型的预测结果作为输出传输到下一个层次。这样,神经网络可以完成非常复杂的非线性分类。

LeNet程序,一个基于多个隐层构建的神经网络。可以识别多种手写数字,达到很高的识别精度与较好的鲁棒性。

90年代,神经网络的发展进入了一个瓶颈期。尽管有BP算法的加速,神经网络的训练过程仍然很困难。因此90年代后期支持向量机(SVM)算法取代了神经网络的地位。

3.SVM(支持向量机)

某种意义上来说是逻辑回归算法的强化,通过给予逻辑回归算法更严格的优化条件,支持向量机算法可以获得比逻辑回归更好的分类界线。但是若没有某类函数技术,则支持向量机算法最多算是一种更好的线性分类技术。

但通过跟高斯“核”的结合,支持向量机可以表达出非常复杂的分类界线,从而达成很好的的分类效果。(“核”本质一种特殊的函数,典型特征:将低维的空间映射到高维的空间。)

案例4  如何在二维平面画出圆形分类界限?

二维平面很难,可通过“核”将二维空间映射到三维空间,用一个线性平面可达到效果(二维平面的非线性分类界线等价于三维平面的线性分类界线。)在三维空间中进行简单的线性划分就可以达到在二维平面中的非线性划分效果

将数据从低维映射到高维不会带来最后计算复杂性的提升。通过支持向量机算法,既可以保持计算效率,又可以获得非常好的分类效果。支持向量机在90年代后期一直占据着机器学习中最核心的地位,基本取代了神经网络算法。直到现在神经网络借着深度学习重新兴起,两者之间才又发生了微妙的平衡转变。

4.聚类算法

前面算法中的训练数据包含了标签,训练出的模型可以对其他未知数据预测标签——有监督算法训练数据不包含标签,算法的目的是通过训练,推测出这些数据的标签——无监督算法,典型代表为聚类算法。

案例5 一组二维数据,一个数据包括两个特征,如何给不同种类打上标签?

聚类算法就是计算种群中的距离,根据距离的远近将数据划分为多个族群。

聚类算法中最典型的代表就是K-Means算法。、

5.降维算法

也是一种无监督算法,主要特征是将数据从高维降低到低维层次。维度表示数据的特征量大小,通过降维算法我们就可以去除冗余信息,(如房价包含房子的长、宽、面积与房间数量四个特征。但面积=长 × 宽,信息重叠,只保留面积、房间数量两个特征,从4维的数据压缩到2维。)

上述降维属于肉眼可视层次,不会造成信息损失;若肉眼不可视,或没有冗余的特征,降维算法可能会有信息损失,但最大程度保留了数据信息。

主要作用是压缩数据与提升机器学习其他算法的效率,数据的可视化(如将5维的数据压缩至2维,然后可以用二维平面来可视)

降维算法的主要算法为PCA算法(主成分分析算法)

6.推荐算法

推荐算法的主要特征:自动向用户推荐他们最感兴趣的东西

a.基于物品内容推荐,将与用户购买的内容近似的物品推荐给用户,前提是每个物品有若干标签,才可以找出与用户购买物品类似的物品,好处是关联程度大。

b.基于用户相似度推荐,将与目标用户兴趣相同的其他用户购买的东西推荐给目标用户。

在电商应用中,一般是两类混合使用。推荐算法中最有名的算法就是协同过滤算法

7.其他算法

上面列的六个算法是使用最多,影响最广,种类最全的典型。还有其他的如高斯判别朴素贝叶斯决策树等等算法。

算法的子算法:梯度下降法,主要运用在线型回归,逻辑回归,神经网络,推荐算法中;牛顿法,主要运用在线型回归中;BP算法,主要运用在神经网络中;SMO算法,主要运用在SVM中。本身并不是一个机器学习算法,而是为解决某个子问题而诞生的,用于大幅度提高训练过程。但

五、机器学习的应用

2010年以前,车牌识别,网络攻击防范,手写字符识别等。2010年以后,大数据是机器学习应用的最佳场景。如Google利用大数据预测了H1N1在美国某小镇的爆发。

数据的魔力如何发挥?机器学习!基于机器学习技术的发展,数据能够“预测”。机器学习模型的数据越多,机器学习的预测的效率就越好。成功的机器学习应用不是拥有最好的算法,而是拥有最多的数据!

六、深度学习——机器学习的子类

从90年代以后,神经网络已经消寂了一段时间,原因是神经网络在隐藏层扩大到两个以上,其训练速度就会非常慢,因此实用性一直低于支持向量机。

2006年,Geoffrey Hinton论证了两个观点:1.多隐层的神经网络具有优异的特征学习能力,学习得到的特征对数据有更本质的刻画,从而有利于可视化或分类;2.深度神经网络在训练上的难度,可以通过“逐层初始化” 来有效克服。从此,神经网络重新成为了机器学习界中的主流强大学习技术。

具有多个隐藏层的神经网络被称为深度神经网络,基于深度神经网络的学习研究称之为深度学习。

深度学习的发展推动图像识别技术与语音识别技术,如Cortana等语音助手,百度识图功能。

七、人工智能(AI)——机器学习的父类

 

智慧是对生活的感悟,是对人生的积淀与思考, 与机器学习的思想何其相似,通过经验获取规律,指导人生与未来。

计算能力有分布式计算,反应能力有事件驱动架构,检索能力有搜索引擎,知识存储能力有数据仓库,逻辑推理能力有专家系统,但是,唯有对应智慧中最显著特征的归纳与感悟能力,只有机器学习与之对应,人工智能的发展可能不仅取决于机器学习,更取决于深度学习。

深度学习技术由于深度模拟了人类大脑的构成,在视觉识别与语音识别上显著性的突破了原有机器学习技术的界限,因此极有可能是真正实现人工智能梦想的关键技术。无论是谷歌大脑还是百度大脑,都是通过海量层次的深度学习网络所构成的。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值