第一章 引言
对于大多数的实践环境中,我们常常将原始的数据转换到一个新的数据空间中,希望该问题能够更加容易的被解决。例如,在数字识别的过程中,数字图片常常被转换或者缩放,使得每个数字在一个固定的方块中,这样就能极大的降低了在同一个数字类别中的影响因素,因为这种做法使得每个数字的位置和大小都相同,保证了在后续能够更加容易的利用模式识别的方法对属于不同类别的数字进行分析。这个pre-processing的过程通常被称为特征提取的过程。而且,对于新的测试样本也需要按照相同的处理训练样本的方法对其进行处理。
通常,为了提高后续算法的运行速度,我们也常常对数据进行预处理。例如,在一个高分辨率的视频流中,我们要实时的对人脸进行识别,计算机必须在每秒中处理大量的像素,再将这些数据直接给了一个相对复杂的模式识别的程序是不可行的。相反的,我们可以先在这些视频流中,找出那些最有用的像素特征,这些特征能保留那些能够对识别人脸具有重要作用的信息,然后再将这些特征作为输入数据给了模式识别的方法中。我们可以很容易的计算出在一个固定的感兴趣区域中图像的平均亮度,这样一组特征值就在人脸识别的过程中对于提高速度就非常重要,因为处理后的像素个数要极大的小于原图的像素个数,这是一个降维例子。同时,在预处理的过程,我们应该非常小心,因为会有可能去除一些对后续处理很重要的信息。
在一些应用中,有的训练数据是和他们所属的特定类别一起出现,进行训练我们算法模型,这个叫做监督学习,因为我们的算法能精确的知道训练集中的每个样本属于哪一个类。在数字识别的例子中,我们要将每个数字图像对应到一个有限的数字类别中,这个过程就叫做分类,因为每个数字类别是离散的,我们所做的就是将图像中的数字识别出来,给出具体的数字识别结果。如果我们的结果中包含一系列连续的变量,那么这个问题就是一个回归的问题。一个关于回归的例子是,预测化工产品产量过程,他的输入数据包括:反应物、温度和压力,在这个过程中产量是随着时间连续的。
在一些其他的应用中,训练样本只是一些特征变量x,并没有他们所属的类别y,这个无监督算法(因为对于数据没有label)的关键问题就是寻找在给定的数据中一些相似的数据子集,这就是聚类,或者挖掘这个数据集中数据的分布情况,这是密度轨迹density estimation,在或者将数据从一个高维的空间中投影到一个2维或3维的空间中,对数据进行可视化。
最后,反馈学习(reinforcement learning)问题是在一个特定的环境中寻找一个最合适的行为,使对他的奖励达到最大值。在这里,与监督学习不同的是,我们并没有给这些行为最优的结果,我们所要做的就是来发掘这个最优的行为,通过一系列的尝试和错误的修正过程。通常,这种学习的算法会在有一些状态和行为的序列中与他的环境进行交互。在很多情况下,当前的行为不仅会影响其当前的奖励,也会对后续一系列的行为奖励产生影响,也就是说在整个过程中,两个行为之间是相互有影响的。例如,基于一个合适的反馈学习的算法,我们可以使一个神经网络以一个高水准玩家来玩backgammon(一种投掷骰子决定棋子进行的两人游戏)。这里,神经网络必须以棋盘和他所掷的位置作为输入,在决定以最好的投掷位置。这个过程可以通过让神经网络自己与自己玩1万次来学习实现,在这个过程中,神经网络算法应该学习对应不同情况下不同的投掷位置,来取得胜利。一个重要的挑战是,在这个过程中,并不是每投一次就给一次奖励,只有通过一系列的投掷之后,如果获胜才给奖励,并且奖励必须合适的分配给每一个达到胜利的步骤,要知道在整个投掷过程中,并不是每一个步骤都是最优的,这是信度分配(credit assignment)问题。反馈学习的一个重要的特征是寻找探索(exploration)和利用(exploitation)的折中,也就是说,算法尝试一个新的行为来看这个行为的结果是否能够帮助其达到赢棋的目的。过度的只关注于exploration或exploitation的任何一个过程将会得到一个比较差的结果。反馈学习仍然是机器学习领域中一个比较活跃的研究方向。
【注】该文并不是完全基于Bishop的Pattern Recognition and Machine Learning 翻译的,其中有一些个人的理解,如果有不正确的地方,欢迎各位指正。