干货丨机器学习和深度学习概念入门

0?wx_fmt=gif&wxfrom=5&wx_lazy=1

对于不少初入学习人工智能的学习者来讲,对人工智能、机器学习、深度学习的概念和区别还不是很了解,有可能你天天都能听到这个概念,也常常提这个概念,可是你真的懂它们之间的关系吗?那么接下来就给你们从概念和特色上进行阐述。先看下三者的关系。算法

640?wx_fmt=png&wxfrom=5&wx_lazy=1

人工智能包括了机器学习,机器学习包括了深度学习,他们是子类和父类的关系。编程

先看什么是人工智能。人工智能(Artificial Intelligence),英文缩写为AI。是计算机科学的一个分支,二十世纪七十年代以来被称为世界三大尖端技术之一(空间技术、能源技术、人工智能)。也被认为是二十一世纪三大尖端技术(基因工程、纳米科学、人工智能)之一。1956年夏季,以麦卡赛、明斯基、罗切斯特和申农等为首的一批有远见卓识的年轻科学家在一块儿聚会,共同研究和探讨用机器模拟智能的一系列有关问题,并首次提出了“人工智能”这一术语,它标志着“人工智能”这门新兴学科的正式诞生。人工智能是对人的意识、思惟的信息过程的模拟。人工智能不是人的智能,但能像人那样思考、也可能超过人的智能。数学常被认为是多种学科的基础科学,数学也进入语言、思惟领域,人工智能学科也必须借用数学工具。网络

人工智能实际应用:机器视觉,指纹识别,人脸识别,视网膜识别,虹膜识别,掌纹识别,专家系统,自动规划,智能搜索,定理证实,博弈,自动程序设计,智能控制,机器人学,语言和图像理解,遗传编程等。涉及到哲学和认知科学,数学,神经生理学,心理学,计算机科学,信息论,控制论,不定性论等学科。研究范畴包括天然语言处理,知识表现,智能搜索,推理,规划,机器学习,知识获取,组合调度问题,感知问题,模式识别,逻辑程序设计软计算,不精确和不肯定的管理,人工生命,神经网络,复杂系统,遗传算法等。人工智能目前也分为:强人工智能(BOTTOM-UP AI)和弱人工智能(TOP-DOWN AI),有兴趣你们能够自行查看下区别。框架

机器学习(Machine Learning, ML),是人工智能的核心,属于人工智能的一个分支,是一个大的领域,是让计算机拥有像人同样的学习能力,模拟和实现人的学习行为和能力,能够像人同样具备识别和判断的能力,能够看做是仿生学。机器学习应用领域十分普遍,例如:数据挖掘、数据分类、计算机视觉、天然语言处理(NLP)、生物特征识别、搜索引擎、医学诊断、检测信用卡欺诈、证券市场分析、DNA序列测序、语音和手写识别、战略游戏和机器人运用等。机器学习

0?wx_fmt=jpeg

 李飞飞说,机器是又快又准确,可是人类聪明呀!机器学习实际上是在总结数据,预测未知。它具备高速的计算能力,咱们能够经过不断的学习用它来识别各类植物、动物等,并提升准确率。分布式

0?wx_fmt=png

机器学习的工做方式工具

选择数据:将你的数据分红三组:训练数据、验证数据和测试数据。
模型数据:使用训练数据来构建使用相关特征的模型。
验证模型:使用你的验证数据接入你的模型。
测试模型:使用你的测试数据检查被验证的模型的表现。
使用模型:使用彻底训练好的模型在新数据上作预测。
调优模型:使用更多数据、不一样的特征或调整过的参数来提高算法的性能表现。
机器学习的分类性能

基于学习策略的分类学习

机械学习 (Rote learning)
示教学习 (Learning from instruction或Learning by being told)
演绎学习 (Learning by deduction)
类比学习 (Learning by analogy)
基于解释的学习 (Explanation-based learning, EBL)
概括学习 (Learning from induction)
基于所获取知识的表示形式分类 测试

代数表达式参数

决策树
形式文法
产生式规则
形式逻辑表达式
图和网络
框架和模式(schema)
计算机程序和其它的过程编码
神经网络
多种表示形式的组合

综合分类

经验性概括学习 (empirical inductive learning)
分析学习(analytic learning)
类比学习
遗传算法(genetic algorithm)
联接学习
加强学习(reinforcement learning)

学习形式分类

监督学习(supervised learning)
非监督学习(unsupervised learning)

固然,后面的深度学习也有监督学习、半监督学习和非监督学习的区分。

通常根据咱们的数据类型的不一样,对相应问题的建模也有不一样的方式。在机器学习或者人工智能领域,人们首先会考虑算法的学习方式。在机器学习领域,有几种主要的学习方式。将算法按照学习方式分类是一个不错的想法,这样可让人们在建模和算法选择的时候考虑能根据输入数据来选择最合适的算法来得到最好的结果。

主要分为:监督学习,非监督学习,半监督学习和强化学习。监督学习主要用于回归和分类;半监督学习主要用于分类,回归,半监督聚类;无监督学习主要用于聚类。

那咱们先看下这几种学习方式的特色和差异:

1)监督学习(Supervised learning)

监督学习是指利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。是从标记的训练数据来推断一个功能的机器学习任务,也就是样本标签打好了。训练数据包括一套训练示例。在监督学习中,每一个实例都是由一个输入对象(一般为矢量)和一个指望的输出值(也称为监督信号)组成。监督学习算法是分析该训练数据,并产生一个推断的功能,其能够用于映射出新的实例。一个最佳的方案将容许该算法来正确地决定那些看不见的实例的类标签。这就要求学习算法是在一种“合理”的方式从一种从训练数据到看不见的状况下造成。

举个例子:监督学习就像咱们在学习时候旁边有老师指点同样,老师知道你输入的数据是正确仍是错误,他能够利用他所知道的数据帮你进行正确和错误分类和指导。监督学习就是人们常说的分类,咱们根据已有的训练样本,也就是数据进行了标记,输入和输出是对应的。那么咱们就能够根据这个已经训练好的模型去判断和映射其余输入的数据的对应的输出,也就实现了对未知数据的分类。相似仿生学,咱们从小并不知道什么是手机、电视、鸟、猪,那么这些东西就是输入数据,而家长会根据他的经验指点告诉咱们哪些是手机、电视、鸟、猪。这就是经过模型判断分类。当咱们掌握了这些数据分类模型,咱们就能够对这些数据进行本身的判断和分类了。

0?wx_fmt=jpeg

在监督式学习下,输入数据被称为“训练数据”,每组训练数据有一个明确的标识或结果,如对防垃圾邮件系统中“垃圾邮件”“非垃圾邮件”,对手写数字识别中的“1“,”2“,”3“,”4“等。在创建预测模型的时候,监督式学习创建一个学习过程,将预测结果与“训练数据”的实际结果进行比较,不断的调整预测模型,直到模型的预测结果达到一个预期的准确率。监督式学习的常见应用场景如分类问题和回归问题。常见监督式学习算法有决策树(ID3,C4.5算法等),朴素贝叶斯分类器,最小二乘法,逻辑回归(Logistic Regression),支持向量机(SVM),K最近邻算法(KNN,K-NearestNeighbor),线性回归(LR,Linear Regreesion),人工神经网络(ANN,Artificial Neural Network),集成学习以及反向传递神经网络(Back Propagation Neural Network)等等。下图是几种监督式学习算法的比较:

0?wx_fmt=png

2)非监督学习(Unsupervised learing)

非监督学习是另外一种研究的比较多的学习方法,它与监督学习的不一样之处,在于咱们事先没有任何训练样本,而须要直接对数据进行建模。是否有监督(Supervised),就看输入数据是否有标签(Label)。输入数据有标签(即数据有标识分类),则为有监督学习,没标签则为无监督学习。这听起来彷佛有点难以想象,可是在咱们自身认识世界的过程当中不少处都用到了无监督学习。好比咱们去参观一个画展,咱们彻底对艺术一无所知,可是欣赏完多幅做品以后,咱们也能把它们分红不一样的派别(好比哪些更朦胧一点,哪些更写实一些,即便咱们不知道什么叫作朦胧派,什么叫作写实派,可是至少咱们能把他们分为两个类)。无监督学习里典型的例子就是聚类了。聚类的目的在于把类似的东西聚在一块儿,而咱们并不关心这一类是什么。所以,一个聚类算法一般只须要知道如何计算类似度就能够开始工做了。 在非监督式学习中,数据并不被特别标识,学习模型是为了推断出数据的一些内在结构。

非监督学习在聚类上同监督学习分类效果相比没法作到一样的完美,那么咱们为何还要使用非监督学习聚类?由于在不少实际应用中,并无大量的标识数据进行使用,而且标识数据须要大量的人工工做量,很是困难。那么咱们就须要非监督学习根据数据的类似度,特征及相关联系进行模糊判断分类。

常见的应用场景包括关联规则的学习以及聚类等。常见非监督学习算法包括聚类算法、奇异值分解、主成分分析(PCA)、SVD矩阵分解、独立成分分析(ICA)、Apriori算法以及K-均值算法(K-Means)、稀疏自编码(sparse auto-encoder)等等。

0?wx_fmt=jpeg

3)半监督学习(Semi-supervised Learning)

半监督学习(Semi-Supervised Learning,SSL)是模式识别和机器学习领域研究的重点问题,是监督学习与无监督学习相结合的一种学习方法。半监督学习使用大量的未标记数据,以及同时使用标记数据,来进行模式识别工做。当使用半监督学习时,将会要求尽可能少的人员来从事工做,同时,又可以带来比较高的准确性,所以,半监督学习目前正愈来愈受到人们的重视。

0?wx_fmt=jpeg

在此学习方式下,输入数据部分被标识,部分没有被标识,这种学习模型能够用来进行预测,可是模型首先须要学习数据的内在结构以便合理的组织数据来进行预测。

半监督学习有两个样本集,一个有标记,一个没有标记。分别记做Lable={(xi,yi)},Unlabled={(xi)},而且数量,L<<u。< p=""></u。<>

单独使用有标记样本,咱们可以生成有监督分类算法
单独使用无标记样本,咱们可以生成无监督聚类算法
二者都使用,咱们但愿在1中加入无标记样本,加强有监督分类的效果;一样的,咱们但愿在2中加入有标记样本,加强无监督聚类的效果

通常而言,半监督学习侧重于在有监督的分类算法中加入无标记样原本实现半监督分类,也就是在1中加入无标记样本,加强分类效果[1]。应用场景包括分类和回归,算法包括一些对经常使用监督式学习算法的延伸,这些算法首先试图对未标识数据进行建模,在此基础上再对标识的数据进行预测。如自训练算法(self-training)、多视角算法(Multi-View)、生成模型(Enerative Models)、图论推理算法(Graph Inference)或者拉普拉斯支持向量机(Laplacian SVM)等。

0?wx_fmt=jpeg

(图片来自百度百科)

4)强化学习(Reinforcement learning)

又称再励学习、评价学习,是一种重要的机器学习方法,在智能控制机器人及分析预测等领域有许多应用。但在传统的机器学习分类中没有提到过强化学习,而在链接主义学习中,把学习算法分为三种类型,即非监督学习(unsupervised learning)、监督学习(supervised leaning)和强化学习。

0?wx_fmt=jpeg

在这种学习模式下,输入数据做为对模型的反馈,不像监督模型那样,输入数据仅仅是做为一个检查模型对错的方式,在强化学习下,输入数据直接反馈到模型,模型必须对此马上做出调整。常见的应用场景包括动态系统以及机器人控制等。常见算法包括Q-Learning以及时间差学习(Temporal difference learning)。在企业数据应用的场景下, 人们最经常使用的可能就是监督式学习和非监督式学习的模型。 在图像识别等领域,因为存在大量的非标识的数据和少许的可标识数据, 目前半监督式学习是一个很热的话题。 而强化学习更多的应用在机器人控制及其余须要进行系统控制的领域。

0?wx_fmt=jpeg

强化学习灵感来源于心理学中的行为主义理论,即有机体如何在环境给予的奖励或惩罚的刺激下,逐步造成对刺激的预期,产生能得到最大利益的习惯性行为。这个方法具备普适性,所以在其余许多领域都有研究,例如博弈论、控制论、运筹学、信息论、模拟优化方法、多主体系统学习、群体智能、统计学以及遗传算法。 它的本质就是解决“决策(decision making)”问题,即学会自动进行决策。它在没有任何label告诉算法应该怎么作的状况下,经过先尝试作出一些行为——而后获得一个结果,经过判断这个结果是对仍是错来对以前的行为进行反馈。由这个反馈来调整以前的行为,经过不断的调整算法可以学习到在什么样的状况下选择什么样的行为能够获得最好的结果。

0?wx_fmt=jpeg

重点:强化学习其实就是自动进行决策,而且能够作连续决策。强化学习有不少应用,好比自动直升机,机器人控制,手机网络路由,市场决策,工业控制,高效网页索引,无人驾驶,AlphaGo,玩游戏,还在制造业、库存处理、电商、广告、推荐、金融、医疗等与咱们生活息息相关的领域也有应用。像强化学习里的Q-Learning能够很好的处理动态订价问题。在电商中,也能够用强化学习算法来学习和分析顾客行为,定制产品和服务以知足客户的个性化需求。如双 11 推荐场景中,阿里巴巴使用了深度强化学习与自适应在线学习,经过持续机器学习和模型优化创建决策引擎,对海量用户行为以及百亿级商品特征进行实时分析,帮助每个用户迅速发现宝贝,提升人和商品的配对效率。还有,利用强化学习将手机用户点击率提高了 10-20%。例如一家日本公司 Fanuc,工厂机器人在拿起一个物体时,会捕捉这个过程的视频,记住它每次操做的行动,操做成功仍是失败了,积累经验,下一次能够更快更准地采起行动。

0?wx_fmt=png

举个例子:以小孩学习走路为例,走路时候小孩须要知道先进行决定先迈那条腿,若是第一步做对了,那么就会获得奖励,错了,那么记录下来,再进行第二次走路时候进行学习更正。例如在向用户推荐新闻文章的任务中,非监督式会找到用户先前已经阅读过相似的文章并向他们推荐其一,而强化学习将经过向用户先推荐少许的新闻,并不断得到来自用户的反馈,最后构建用户可能会喜欢的文章的“知识图”。

强化学习经常使用算法:TD算法(时间差分学习,Temporal Difference)、SARSA算法、Q-Learning算法等。咱们固然也须要了解马尔可夫决策过程(MDP,Markov Decision Processes),这样更利于咱们对强化学习的理解。

接下来看下深度学习。深度学习(Deep Learning)是机器学习的一种,是它的一个大的分支,深度学习的概念由Hinton等人于2006年提出,深度学习的概念源于人工神经网络的研究。既然叫作学习,那么天然与咱们人类的学习过程有类似之处,其实就是仿生学,仿照咱们人类大脑的思惟方式以及神经网络的接收和反馈方式进行计算机模拟深度学习的。咱们的大脑就是一个深度学习的超级计算机。深度学习实际上指的的深度神经网络学习,普通神经网络因为训练代价较高,通常只有3-4层,而深度神经网络因为采用了特殊的训练方法加上一些技术算法,能够达到8-10层。深度神经网络可以捕捉到数据中的深层联系,从而可以获得更精准的模型,而这些联系不容易被普通的机器学习方法所发觉。

用官方的含义就是:含多隐层的多层感知器就是一种深度学习结构。深度学习经过组合低层特征造成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。同机器学习方法同样,深度机器学习方法也有监督学习与无监督学习之分.不一样的学习框架下创建的学习模型非常不一样.例如,卷积神经网络(Convolutional neural networks,简称CNNs)就是一种深度的监督学习下的机器学习模型,而深度置信网(Deep Belief Nets,简称DBNs)就是一种无监督学习下的机器学习模型。

深度学习整个过程就是数据收集、数据清洗处理、传入数据进行训练模型和学习优化、通过不断优化调节后造成高准确率的识别分类模型,供相应的领域进行传入相关数据进行应用分类。举个例子,咱们人类在刚出生时看到一个手机,那么他是不知道这个是什么的,而且有各类各样形状和样式的手机,此时咱们的深度学习系统初始状态就是这样的。可是通过父母和周围的分类和指导,咱们渐渐的知道了这种样子和形状、功能的物体是手机,那么咱们经过大量的数据就具备了学习和分辨手机的能力模型,那么这就是咱们的深度学习系统在通过数据和算法训练后所具有的功能和学习能力。就是这么简单,能够说就是仿生学。

2017年CCF青年精英大会,香港中文大学教授汤晓鸥指出,深度学习的三大核心要素,就是算法设计、高性能的计算能力、大数据。我以为应该按照这个顺序排序:大数据、算法设计、高性能的计算能力。

例如深度学习在语音识别和天然语言领域,微软研究人员经过与hinton合做,首先将RBM和DBN引入到语音识别声学模型训练中,而且在大词汇量语音识别系统中得到巨大成功,使得语音识别的错误率相对减低30%。可是,DNN尚未有效的并行快速算法,不少研究机构都是在利用大规模数据语料经过GPU平台提升DNN声学模型的训练效率。在国际上,IBM、google等公司都快速进行了DNN语音识别的研究,而且速度飞快。国内方面,阿里巴巴,科大讯飞、百度、中科院自动化所等公司或研究单位,也在进行深度学习在语音识别上的研究。

最后,给你们附带一个深度学习部分经常使用的神经网络算法的图形展现。

0?wx_fmt=png

0?wx_fmt=jpeg