1.1 机器学习

传统的计算机程序需要先通过人工的方式给出限定条件,并做出相应的限制,程序按照限定条件对输入的数据集进行分析,并得到最终结果。而机器学习则是使用特定的训练集进行大规模数据计算以实现人工建立限制的过程,机器学习将数据(不限于文本数据、图形数据、音频数据和视频数据)提交给模型,模型根据算法对数据进行处理。

机器学习系统是通过训练得到的,不是显式的编制。机器学习过程是给机器学习一些与任务相关的例子,然后让机器通过例子推导并得出结果。深度学习是在机器学习基础上发展而来的一个重要方向,它通过特征建立相应的算法,从而达到让机器识别文字、数字和声音等数据的目的。传统程序、传统机器学习与深度学习之间的区别如图1-1所示。

图1-1 传统程序、传统机器学习与深度学习之间的区别

机器学习的本质是通过不断分析特征集建立函数算法的过程。可以将该过程大致分为以下3个步骤。

(1)选择一个合适的模型。针对不同的问题和任务的实际情况选取不同的模型,模型就是一组函数的集合。

(2)通过测试判断一个函数的好坏。

(3)找出合适的函数,常用的方法有梯度下降算法、最小二乘法等。

在选择了合适的函数后,要不断地在新样本上进行测试,函数只有在新样本上表现得好才算合适。

机器学习的核心是使用算法解析数据,使用数学方法建立函数,最终需要根据函数做出决定或进行预测。机器学习包括监督学习、无监督学习和强化学习。

这3种机器学习都有其特定的优点和缺点。

(1)监督学习需要有一组标记数据,使用特定模式来识别这种数据中每种标记的样本。监督学习主要包括分类、回归和排序。

① 在分类学习中,根据特定的模式将标记的数据划分为特定的类。

② 在回归学习中,根据特定的模式对已有数据进行处理以预测数据趋势。

③ 排序学习主要用于信息检索领域,需要按照一定的特征对特定数据集进行排序。

(2)无监督学习利用类别未知的训练样本解决数据识别的各种问题。需要注意的是,在无监督学习中,数据是无标签的。无监督学习包括聚类学习和降维学习。

① 聚类学习的实质是将数据集按照一定的特征进行分组。与分类学习不同,在聚类学习中不需要人为指定组的信息。

② 降维学习是通过在数据集中找到数据的共同点实现的。多数大数据可视化使用降维学习来探寻趋势和规则。

(3)强化学习使用机器的历史和经验来做决定。其不断地输入模糊数据,对机器学习函数进行强化,直至达到目的。强化学习是一个持续的过程。

常用场景分类如图1-2所示。

图1-2 常用场景分类