第一部分 人工智能概述
一、人工智能相关
- 人工智能 (Artifical Intelligence, AI):人工智能是计算机科学的一个分支,主要研究、开发和扩展人类智能的理论、方法、技术和应用系统等。John McCarthy对其定义为:人工智能就是让机器的行为看起来表现的是人多表现出来的智能行为一样。
- 人工智能涵盖许多的子学科,例如:机器感知(计算机视觉、语音信息处理)、学习(模式识别、机器学习、强化学习)、语言(自然语言处理)、记忆(知识表示)、决策(规划、数据挖掘)等。
- 当前人工智能主要领域:1)感知:模拟人的感知能力,对外部刺激信息(视觉、语音等)进行感知和加工,主要包括语音信息处理和计算机视觉;2)学习:模拟人的学习能力,主要研究如何从样例和环境的交互中学习,主要包括监督学习、无监督学习、强化学习。3)认知:模拟人的认知能力,主要包括知识表示、自然语言理解、推理、规划、决策。
二、机器学习相关
- 机器学习 (Machine Learning, ML):从有限的数据观测中学习(猜想)出具有一般性的规律,并利用该规律对未知数据进行预测的方法。机器学习是人工智能的一个重要分支,并逐步成为推动人工智能发展的关键因素。
- 浅层学习(传统的机器学习):其关注点在于如何学习一个预测模型。其工作流程一般为:首先将数据表示为一组特征(连续或离散),然后将特征输入到模型,最终得到预测结果。这类学习方法不涉及特征的学习,其特征的选取是人为实现的。
- 在实际的机器学习(传统的机器学习)任务中,数据集通常很复杂,并且其中很多数据不能正常的被使用,因此,通常会通过以下几个步骤:
(1)数据预处理:对原始数据进行初步的数据清理(去掉特征丢失的样本,去掉一些冗余的特征)与加工(数值特征进行防缩或归一化),并构建成一个可用的数据集;
(2)特征提取:从数据的原始特征中提取一些对特定机器学习任务有用的高质量特征;
(3)特征准换:对特征进行进一步加工,例如降维与升维,降维包括特征抽取与特征选择。常用的特征转换有主成分分析法、线性判别分析。
(4)预测:机器学习的核心部分,学习一个函数并进行预测。
三、表示学习相关
传统的机器学习不会进行特征的学习,仅仅关注获得一个函数进行预测,特征的选取完全由人工确定,使得很多机器学习任务变成了特征工程。然而在实际操作,不同的预测模型的性能相差不大,但前三步(上图)对预测的准确度有着关键的作用。因此,如果能够实现学习特征选取,无疑会极大提高正确率,这就是表示学习。
- 表示学习:通过自动学习出有效的特征,达到提高预测准确率的目的。
- 语义鸿沟:输入数据的底层特征与高层语义信息间的不一致或差异性。它是表示学习中的关键问题。
- 表示学习的两个核心问题:1)什么是一个好的表示;2)如何学习出一个好的表示;
- 好的表示的三个特点:1)具有极强的表示能力,相同的向量维度能够表示更多的信息;2)包含更高层的语义信息;3)具有一般性。
- 表示特征的两种方式:1)局部表示;2)分布式表示。
四、深度学习相关
为了学习一种好的表示方法,需要构建一个具有一定“深度”的模型,并通过算法让模型自动学习出好的特征表示(从底层特征到中层特征,再到高层特征),从而提高预测正确率。所谓深度是指原始数据进行非线性变换的次数。
- 深度学习 (Deep Learning, DL):从数据中学习一个深度模型的方法。深度学习是机器学习的一个子问题,虽然早期用于表示学习,但现在越来越多的用于复杂的推理、决策问题。
- 深度学习是将原始的数据特征通过多次的特征转换得到的一种特征表示,并进一步输入得到预测结果,其流程图如下。
- 深度学习要解决的核心问题是贡献度分配问题。深度学习中,原属数据被多个功能单位进行特征转换,每一个功能单位相互独立,但又通过一定的顺序进行连接,每个功能单位对数据的处理都会影响最终的预测结果,但是每个功能单位对结果的影响程度、作用不尽相同。因此如何分配每个功能单位的影响成了一种非常重要的问题。从某种意义上,深度学习可以看做一种强化学习。
- 目前,深度学习采用的模型主要是神经网络,因为神经网络模型可以通过误差反向传播算法很好的解决贡献度分配问题。只要是超过1层的神经网络均存在公信度分配问题,因此超过1层的神经网络均可看成深度学习模型。
- 端到端学习:端到端学习也称为端到端训练,指在训练过程中,我们不需要考虑中间各个环节的功能,也不需要人为干预中间环节,我们只关注输入与输出。就像一个黑盒,黑盒中的任何东西我们都不关注,我们只关注将什么输入黑盒,从黑盒中输出了什么。同样的,端到端学习也需要解决贡献度分配问题,目前,大多数的神经网络也可被视为端到端学习。
五、神经网络相关
- 人工神经网络 (Artificial Neural Network, ANN):很多人工神经元构成的网络结构模型,这些人工神经元之间的连接强度是可以学习的参数。
- 人工神经网络通过多个人工神经元连接而成,可以对数据间的复杂关系进行建模。不同节点(人工神经元)之间的连接被赋予了不同的权重,权重代表了该节点对与之连接节点的影响。每个节点代表了一个特定函数,输入这个节点的所有数据经过对应的权重综合计算,输入一个激活函数得到一个新的活性值(抑制或者兴奋)。
- 从系统观点看,神经网络由大量的神经元连接而成的自适应非线性系统,可以被视为一个可以学习的函数。
六、第一部分总结
人工智能是一个非常大的范畴,其包含了诸多的领域,机器学习的是它的分支之一,同时近年来也成为了推动人工智能发展的关键因素。在传统的机器学习中,通过人为选择特征,仅仅通过多选特征归纳出一个预测模型。人为选择特征进行学习极大地限制了正确率,为了解决该问题,提出了表征学习的概念,将特征的选取作为学习的环节。为了学习的更好的特征表示,提出了深度学习。深度学习的模型很多,但现在最常用的是神经网络,因为反向传播的算法能够很好的解决贡献度分配问题。