0
点赞
收藏
分享

微信扫一扫

【机器学习理论】(一)机器学习简述

松鼠树屋 2022-02-16 阅读 65

文章目录

1. 机器学习的特点

机器学习是关于计算机基于数据构建概率统计模型,并运用模型对数据进行预测与分析的一门学科。

机器学习的主要特点是:(1) 机器学习以计算机及网络为平台,是建立在计算机及网络上的;(2) 机器学习以数据为研究对象,是数据驱动的学科;(3) 机器学习的目的是对数据进行预测与分析;(4) 机器学习以方法为中心,机器学习方法构建模型并应用模型进行预测与分析;(5) 机器学习是概率论、统计学、信息论、计算理论、最优化理论及计算机科学等多个领域的交叉学习,并且在发展中逐步形成独自的理论体系与方法论。

2. 机器学习的对象

机器学习研究的对象是数据。它从数据出发,提取数据的特征,抽象出数据的模型,发现数据中的知识,又回到对数据的分析与预测中去。作为机器学习的对象,数据是多样的,包括存在于计算机及网络上的各种数字、文字、图像、视频、音频数据以及它们的组合。

机器学习关于数据的基本假设是同类数据具有一定的统计规律性,这是机器学习的前提。这里的同类数据是指具有某种共同性质的数据,例如英文文章、互联网网页、数据库中的数据等。由于它们具有统计规律性,所以可以用概率统计方法处理它们。比如。可以用随机变量描述数据中的特征,用概率分布描述数据的统计规律。在机器学习中,以变量或变量组表示数据。数据分为由连续变量和离散变量表示的类型。

3. 机器学习的目的

机器学习用于对数据的预测与分析,特别是对未知新数据的预测与分析。对数据的预测可以使计算机更加智能化,或者说使计算机的某些性能得到提高;对数据的分析可以让人们获取新的知识,给人们带来新的发现。

对数据的预测与分析是通过构建概率统计模型实现的。机器学习总的目标就是考虑学习什么样的模型和如何学习模型,以使模型能对数据进行准确的预测和分析,同时也要考虑尽可能地提高学习效率。

4. 机器学习的方法

机器学习的方法是基于数据构建概率统计模型从而数据进行预测与分析。机器学习由监督学习、无监督学习和强化学习等组成。

机器学习方法可以概括如下:从给定的、有限的、用于学习的训练数据集合出发,假设数据是独立同分布产生的;并且假设要学习的模型属于某个函数的集合,称为假设空间;应用某个评价准则,从假设空间中选取一个最优模型,使它对已知的训练数据和未知的测试数据在给定的评价准则下有最优的预测;最优模型的选取由算法实现。这样,机器学习方法包括模型的假设空间、模型选择的准则以及模型学习的算法。称其为机器学习方法的三要素,简称为模型、策略和算法。

实现机器学习方法的步骤如下:
(1) 得到一个有限的训练数据集合;
(2) 确定包含所有可能的模型的假设空间,即学习模型的集合;
(3) 确定模型选择的准则,即学习的策略;
(4) 实现求解最优模型的算法,即学习的算法;
(5) 通过学习方法选择最优模型;
(6) 利用学习的最优模型对新数据进行预测或分析。

5. 机器学习的研究

机器学习方法研究一般包括机器学习方法、机器学习理论及机器学习应用三个方面。机器学习方法的研究旨在开发新的学习方法;机器学习理论的研究在于探求机器学习方法的有效性与效率,以及机器学习的基本理论问题;机器学习应用的研究主要考虑将机器学习方法应用到实际问题中去,解决实际问题。

6. 机器学习的重要性

近二十年来,机器学习无论是在理论还是在应用方面都得到了巨大的发展,有许多重大突破,机器学习已被成功地应用到人工智能、模式识别、数据挖掘、自然语言处理、语音处理、计算视觉、信息检索、生物信息等许多计算机应用领域中,并且成为这些领域的核心技术。人们确信,机器学习将会在今后的科学发展和技术应用中发挥越来越大的作用。

机器学习学科在科学技术中的重要性主要体现在以下几个方面:
(1) 机器学习是处理海量数据的有效方法。我们处于一个信息爆炸的时代,海量数据的处理与利用是人民必然的需求。现实中的数据不但规模大,而且常常具有不确定性,机器学习往往是处理这类数据最强有力的工具。
(2) 机器学习是计算机智能化的有效手段。智能化是计算机发展的必然趋势,也是计算机技术研究与开发的主要目标。近几十年来,人工智能等领域的研究证明,利用机器学习模仿人类智能的方法,虽有一定的局限性,还是实现这一目标的最有效手段。
(3) 机器学习是计算机科学发展的一个重要组成部分。可以认为计算机科学由三维组成:系统、计算、信息。机器学习主要属于信息这一维,并在其中起着核心作用。

7. 机器学习的发展历程

机器学习是人工智能研究发展到一定阶段的必然产物。

7.1 人工智能发展

人工智能从二十世纪五十年代初至今已经历过三个时期,分别如下:
在这里插入图片描述

7.2 机器学习发展

机器学习的各个阶段发展历程如下:
在这里插入图片描述

7.3 经典算法发展

以监督学习、无监督学习、概率图模型、深度学习、强化学习为5个大方向,历史上出现的经典算法如下:

1. 监督学习
监督学习是机器学习算法中最庞大的一个家族。下图列出了经典的有监督学习算法(深度学习不在此列)。
在这里插入图片描述
[1] 线性判别分析(LDA)是Fisher发明的,其历史可以追溯到1936年,那时候还没有机器学习的概念。这是一种有监督的数据降维算法,它通过线性变换将向量投影到低维空间中,保证投影后同一种类型的样本差异很小,不同类的样本尽量不同。
[2] 贝叶斯分类器起步于1950年代,基于贝叶斯决策理论,它把样本分到后验概率最大的那个类。
[3] logistic回归的历史同样悠久,可以追溯到1958年,它直接预测出一个样本属于正样本的概率,在广告点击率预估、疾病诊断等问题上得到了应用。
[4] 感知器模型是一种线性分类器,可看作是人工神经网络的前身,诞生于1958年,但它过于简单,甚至不能解决异或问题,因此不具有实用价值,更多的起到了思想启蒙的作用,为后面的算法奠定了思想上的基础。
[5] kNN算法诞生于1967年,这是一种基于模板匹配思想的算法,虽然简单,但很有效,至今仍在被使用。

在1980年之前,这些机器学习算法都是零碎化的,不成体系。但它们对整个机器学习的发展所起的作用不能被忽略。从1980年开始,机器学习才真正成为一个独立的方向。在这之后,各种机器学习算法被大量的提出,得到了快速发展。

[6] 决策树的3种典型实现:ID3、CART、C4.5是1980年代到1990年代初期的重要成果,虽然简单,但可解释性强,这使得决策树至今在一些问题上仍被使用。
[7] 1986年诞生了用于训练多层神经网络的真正意义上的反向传播算法,这是现在的深度学习中仍然被使用的训练算法,奠定了神经网络走向完善和应用的基础。
[8] 1989年,LeCun设计出了第一个真正意义上的卷积神经网络,用于手写数字的识别,这是现在被广泛使用的深度卷积神经网络的鼻祖。

在1986到1993年之间,神经网络的理论得到了极大的丰富和完善,但当时的很多因素限制了它的大规模使用。1990年代是机器学习百花齐放的年代。

[9] 在1995年诞生了两种经典的算法:SVM、AdaBoost,此后它们纵横江湖数十载,神经网络则黯然失色。SVM代表了核技术的胜利,这是一种思想,通过隐式地将输入向量映射到高维空间中,使得原本非线性的问题能得到很好的处理;而AdaBoost则代表了集成学习算法的胜利,通过将一些简单的弱分类器集成起来使用,居然能够达到惊人的精度。
[10] 现在大红大紫的LSTM在2000年就出现了,当时在很长一段时间内一直默默无闻,直到2013年后与深度循环神经网络整合,在语音识别上取得成功。
[11] 随机森林出现于2001年,于AdaBoost算法同属集成学习,虽然简单,但在很多问题上效果却出奇的好,因此现在还在被大规模使用。
[12] 2009年距离度量学习的一篇经典之作算是经典机器学习算法中年轻的成员,在后来,这种通过机器学习得到距离函数的想法被广泛的研究,出现了不少论文。

从1980年开始到2012年深度学习兴起之前,有监督学习得到了快速的发展,这有些类似于春秋战国时代,各种思想和方法层出不穷,相继登场。另外,没有一种机器学习算法在大量的问题上取得压倒性的优势,这和现在的深度学习时代很不一样。

2. 无监督学习
相比于有监督学习,无监督学习的发展一直很缓慢,至今仍未取得大的突破。下面按照聚类和降维两类问题对这些无监督学习算法进行介绍。

(1) 聚类
聚类算法的历史与有监督学习一样悠久。
在这里插入图片描述
[1] 层次聚类算法出现于1963年,这是非常符合人的直观思维的算法,现在还在使用。它的一些实现方式,包括SLINK,CLINK则诞生于1970年代。
[2] k均值算法可谓所有聚类算法中知名度最高的,其历史可以追溯到1967年,此后出现了大量的改进算法,也有大量成功的应用,是所有聚类算法中变种和改进型最多的。
[3] 大名鼎鼎的EM算法诞生于1977年,它不光被用于聚类问题,还被用于解决数据缺失情况下的参数估计问题。
[4] Mean Shift算法早在1995年就被用于聚类问题,和DBSCAN算法,OPTICS算法一样,同属于基于密度的聚类算法。
[5] 谱聚类算法是聚类算法家族中年轻的成员,诞生于2000年左右,它将聚类问题转化为图切割问题,这一思想提出之后,出现了大量的改进算法。

(2) 降维
在这里插入图片描述
[1] 经典的PCA算法诞生于1901年,这比第一台真正的计算机的诞生早了40多年。
[2] 线性判别分析(LDA)是Fisher发明的,其历史可以追溯到1936年。

此后的近100年里,数据降维在机器学习领域没有出现太多重量级的成果。

[3] 直到1998年,核PCA作为非线性降维算法的出现。这是核技术的又一次登台,与PCA的结合将PCA改造成了非线性的降维算法。
[4] 从2000年开始,机器学习领域刮起了一阵流形学习的旋风,这种非线性方法是当时机器学习中炙手可热的方向,这股浪潮起始于局部线性嵌入LLL。
[5] 此后,拉普拉斯特征映射、局部保持投影、等距映射等算法相继提出。流形学习在数学上非常优美,但遗憾的是没有多少公开报道的成功的应用。
[6] t-SNE是降维算法中年轻的成员,诞生于2008年,虽然想法很简单,效果却非常好。

3. 概率图模型
在这里插入图片描述
[1] 赫赫有名的隐马尔可夫模型诞生于1960年,在1980年代,它在语音识别中取得了成功,一时名声大噪,后来被广泛用于各种序列数据分析问题,在循环神经网络大规模应用之前,处于主导地位。
[2] 马尔可夫随机场诞生于1974年,也是一种经典的概率图模型算法。
[3] 贝叶斯网络是概率推理的强大工具,诞生于1985年,其发明者是概率论图模型中的重量级人物,后来获得了图灵奖。
[4] 条件随机场是概率图模型中相对年轻的成员,被成功用于中文分词等自然语言处理,还有其他领域的问题,也是序列标注问题的有力建模工具。

4. 深度学习
在这里插入图片描述
虽然真正意义上的人工神经网络诞生于1980年代,反向传播算法也早就被提出,卷积神经网络、LSTM等早就别提出,但遗憾的是神经网络在过去很长一段时间内并没有得到大规模的成功应用,在于SVM等机器学习算法的较量中处于下风。原因主要有:算法本身的问题,如梯度消失问题,导致深层网络难以训练。训练样本数的限制。计算能力的限制。直到2006年,情况才慢慢改观。

[1] 对神经网络改进一直在进行着,在深度学习的早期,自动编码器和受限玻尔兹曼机被广泛的研究,典型的改进和实现有去噪自动编码器、收缩自动编码器、变分自动编码器、DBN、DBM等,虽然热闹,但还是没有真正得到成功应用。
[2] 后来在语音识别中大显身手的CTC(连接主义时序分类)早在2006年就被提出,然而生不逢时,在后面一直默默无闻。情况真正被改变发生在2012年,Alex网络的成功使得深度神经网络卷土重来。在这之后,卷积神经网络被广泛的应用于机器视觉的各类问题;循环神经网络则被用于语音识别、自然语言处理等序列预测问题。
[3] 整合了循环神经网络和编码器-解码器框架的seq2seq技术,巧妙了解决了大量的实际应用问题。
[4] GAN作为深度生成模型的典型代表,可以生成逼真的图像,得到了不可思议的效果,是现在深度学习中热门的研究方向。

历史选择了神经网络并非偶然,它有万能逼近定理作为保障,可以拟合闭区间上任意一个连续函数。另外,我们可以人为控制网络的规模,用来拟合非常复杂的函数,这是其他机器学习算法不具备的。深度学习的出现,让图像、语音等感知类问题取得了真正意义上的突破,离实际应用已非常之近。

5. 强化学习
在这里插入图片描述
相比监督学习和无监督学习,强化学习在机器学习领域的起步更晚。

[1] 虽然早在1980年代就出现了时序差分算法,但对于很多实际问题,我们无法用表格的形式列举出所有的状态和动作,因此这些抽象的算法无法大规模实用。
[2] 神经网络与强化学习的结合,即深度强化学习,才为强化学习带来了真正的机会。在这里,深度神经网络被用于拟合动作价值函数,即Q函数,或者直接拟合策略函数,这使得我们可以处理各种复杂的状态和环境,在围棋、游戏、机器人控制等问题上真正得到应用。
[3] 神经网络可以直接根据游戏画面,自动驾驶汽车的摄像机传来的图像,当前的围棋棋局,预测出需要执行的动作。其典型的代表是DQN这样的用深度神经网络拟合动作价值函数的算法,以及直接优化策略函数的算法。

举报

相关推荐

0 条评论