从算法的角度看,机器学习有很多种算法,例如回归算法、基于实例的算法、正则化算法、决策树算法、贝叶斯算法、聚合算法、关联规则学习算法和人工神经网络算法。很多算法可以应用于不同的具体问题;很多具体的问题也需要同时应用好几种不同的算法。由于篇幅有限,我们仅介绍其中(可能是公众心目中名气较大的)一种:人工神经网络。
人工神经网络:
既然人工智能要模拟人类的思考过程,一些人工智能科学家想,不如我们先看看人类是怎样思考的吧?
人类的大脑是一个复杂的神经网络。它的组成单元是神经元。每一个神经元看起来很简单,它们先接收上一个神经细胞的电信号刺激,再向下一个神经细胞发出电信号刺激。
别看神经元细胞很简单,但如果神经元的数量很多,它们彼此之间的连接恰到好处,变成神经网络,就可以从简单中演生出复杂的智能来。例如,人类的大脑中含有1千亿个神经元,平均每个神经元跟其他的神经元存在7000个突触连接。一个三岁小孩大脑中,大约会形成1千万亿个突触。随着年龄的增长,人类大脑的突触数量会逐渐减少。成年人的大脑中,大约会有1百万亿到5百万亿个突触。
虽然科学家还没有完全搞清楚人类大脑的神经网络的运作方式,但人工智能科学家想,不理解没关系,先在计算机中模拟一组虚拟的神经网络试试看,这就是人工神经网络。
在人工神经网络中,每一个小圆圈都是在模拟一个“神经元”。它能够接收从上一层神经元传来的输入信号(也就是一堆数字);根据不同神经元在它眼中的重要性,分配不同的权重,然后将输入信号按照各自的权重加起来(一堆数字乘以权重的大小,再求和);接着,它将加起来结果代入某个函数(通常是非线性函数),进行运算,得到最终结果;最后,它再将这个结果输出给神经网络中的下一层神经元。
人工神经网络中的神经元看起来很简单,只知道傻傻地将上一层神经元的输入数据进行简单的运算,然后再傻傻地输出。没想到这一套还真的很管用,运用一系列精巧的算法,再给它投喂大量的数据之后,人工神经网络居然能够像人脑的神经网络一样,从复杂的数据中发现一系列“特征”,产生“聪明的思考结果”。
那么人工神经网络是怎么学习的呢?所谓的学习,本质上是让人工神经网络尝试调节每一个神经元上的权重大小,使得整个人工神经网络在某一个任务的测试中的表现达到某个要求(例如,识别汽车的正确率达到90%以上)。
请回忆一下前面讲过的“梯度下降法”。人工神经网络尝试不同的权重大小,相当于在一个参数空间的地图上四处游走。每一种权重的组合对应的人工神经网络执行任务时的错误率,相当于这个地图上的每一点都有一个海拔高度。寻找一组权重,使得人工神经网络的表现较好,错误率较低,就相当于在地图上寻找海拔较低的地方。所以,人工神经网络的学习过程,常常要用到某种“梯度下降法”,这就是为什么如果将来你要学习人工智能,第一个要掌握的就是“梯度下降法”。
机器学习的分类:
从学习风格的角度看,机器学习有很很多种学习方法,我们简要地列举其中几种方法:监督学习、非监督学习、强化学习和迁移学习。
监督学习:
比方说,你想教计算机如何识别一张照片上的动物是不是猫。你先拿出几十万张动物的照片,凡是有猫的,你就告诉计算机有猫;凡是没有猫的,你就告诉计算机没有猫。也就是说,你预先给计算机要学习的数据进行了分类。这相当于你监督了计算机的学习过程。
经过一段监督学习的过程之后,如果你再给计算机看照片,它就能认出照片中有没有猫。
非监督学习:
比方说,你想教计算机区分猫和狗的照片。你拿出几十万张猫和狗的照片(没有其他动物)。你并不告诉计算机哪些是猫,哪些是狗。也就是说,你没有预先给计算机要学习的数据进行分类,所以你并没有监督计算机的学习过程。
经过一段监督学习的过程之后,计算机就能把你输入的照片按照相似性分成两个大类(也就是区分了猫和狗)。只不过计算机只是从数字照片的数学特征的角度进行了分类,而不是从动物学的角度进行了分类。
强化学习:
比方说,你想教计算机控制一只机械臂打乒乓球。一开始,计算机控制机械臂像傻瓜一样,拿着球拍做很多随机的动作,完全不得要领。
但是,一旦机械臂凑巧接到一个球,并把球击打到对手的球桌上,我们就让计算机得一分,这叫做奖励。一旦机械臂没有正确地接到球、或没有把球击打到正确的位置上,我们就给计算机扣一分,这叫做惩罚。经过大量的训练之后,机械臂渐渐地从奖励和惩罚中,学会了接球、击打球的基本动作。
迁移学习:
比方说,你让计算机学会了控制机械臂打乒乓球之后,又叫它学习打网球。这个时候,你不需要让计算机从零开始重新学,因为乒乓球和网球的规则是相似的。例如,这两种球都要把球击打到对方的球场/球桌上。所以,计算机可以将之前学到的动作迁移过来。这样一种学习,就叫做迁移学习。
文章来源:雪球
《机器学习》炼数成金经典课程,机器学习可以使我们可以从现实世界的海量数据里提炼出有价值的知识,规则和模式。对于数据分析基础的朋友,可以提高其处理大数据的能力。对于IT基础的朋友,可以通过课程了解机器学习算法的原理与应用,进军大数据分析领域。点击下方二维码报名课程