图片来源:Unsplash 拍摄者:Franck V.
机器学习领域主要有以下三种任务类型:监督型,半监督型和无监督型。
这三种类型之间最主要区别在于实况数据的可用性水平,这里的可用性水平是指针对既定输入,已经预先知道了该模型的输出值。
监督学习的目标是学习一个函数,已知该函数的样本数据和输出值的情况下,尽最大可能拟合输入和输出间的关系。
半监督学习旨在使用从少量标记数据点所学的知识来标记未标记的数据点。
无监督学习中不存在标注过的样本输出值,因此其目标是推断一组数据样本中的内部结构。
监督学习
监督学习模型拟合输入与输出。
当我们想要将输入映射到输出标签或回归,又或是将输入映射到连续输出,监督学习通常将其作为分类任务完成。监督学习中的常用算法包括逻辑回归、朴素贝叶斯、人工神经网络、支持向量机和随机森林。在回归和分类中,目标是找到输入数据的特定关系或结构,以便有效地生成正确的输出数据。
请注意,“正确”输出完全取决于训练数据,因此即使的确有一个模型假定为真的实况数据,也并意味着显示的数据标签准确无误。数据噪声或不正确的数据标签会明显降低模型的效果。
复杂性
模型复杂性是指尝试学习的函数的复杂性——类似于多项式函数的复杂程度。恰当的模型复杂程度通常取决于训练数据的性质。
如果数据量很少,或者在不同场景下,数据分布并不均匀,这时应该选择低复杂度模型。这是因为如果在少量数据点上使用高复杂度模型将会导致过度拟合。
过度拟合是指学习的函数与训练数据非常匹配,但难以泛化至其他数据上。—— 换言之,就是在不了解导致输出的数据中的实际趋势和结构的情况下,一板一眼地学习生成训练数据。想象一下,试图在两点之间拟合一条曲线。理论上,可以使用任何程度的函数,但在实践中,只会单纯的增加复杂性使用线性函数来完成拟合。
偏差 - 方差平衡
偏差—方差平衡也与模型泛化有关。在任何模型中,偏差(即恒定误差项)和方差(不同数据集之间误差可能变化的量)之间都存在平衡。因此,一般来说,高偏差、低方差的模型会有20%的错误率,而低偏差和高方差模型会出现5-50%的随机错误率,具体情况取决于训练数据。
注意,偏差和方差通常呈反比关系; 增加偏差通常会导致方差降低,反之亦然。在制作模型时,具体问题和数据的性质将指导模型根据偏差变化规律作出明智选择。
通常,增加偏差(和减少方差)会生成相对稳的在基线水平的模型,这在某些任务中可能至关重要。此外,为了生成泛化较好的模型,模型方差应根据训练数据的大小和复杂程度进行调整。通常应使用低方差模型来学习小且简单的数据集,使用高方差学习大型复杂数据集的数据结构。
半监督学习
学习未标记和标记的数据点。
半监督学习介于监督和无监督学习之间。半监督模型旨在使用少量标记的训练数据和大量未标记的训练数据。通常用于标签数据价格高昂和或有恒定数据流的情况下。
例如,假设意图在社交网络中检测不适当的消息,由于信息太多且成本高昂,因此无法获得每条消息的手工标记信息。相反,可以手动标记信息中的一部分,使用半监督技术,依靠这一小组标记数据来帮助理解剩余信息内容。
常见的半监督学习方法包括直推式支持向量机化和图论方法,例如标签传播算法。
假设
半监督方法需要对数据做出一些假设,为使用一小组标记数据来对未标记数据点做出结论。可分为以下三类。
1. 平滑假设—假设相近数据更有可能具有相同标签。
2. 聚类假设—假设数据自然形成分离聚类,且同一聚类下的数据具有相同标签。
3. 流形假设—假设数据大致位于比输入空间低的低维空间(或流形)中。当具有少量参数的不可观察或难以观察的系统产生高维可观察输出时,这一假设具有重大意义。
无监督学习
无监督模型发现数据内在结构。
无监督学习中最常见的任务是聚类,表示学习和密度估计。在这些任务,是希望在无明确提供的标签的情况下了解数据的内在结构。常见的算法包括k-means聚类、主成分分析和自动编码器。由于没有提供标签,因此在多数无监督学习方法中没有用于比较模型性能的具体方法。
探索性数据分析(EDA)
鉴于可以自动识别数据中的结构,无监督学习在探索性分析中十分有用。例如,若分析师试图对消费者进行细分,那么无监督的聚类方法将是分析的一个良好开端。在提出数据趋势不可能做到或不切实际的情况下,无监督学习可提供初步指引,用于检验个人假设。
降维
降维指的是使用较少的特征来表示数据的方法,可以使用无监督方法完成。在表示学习中,人们希望了解各个特征间的关系,使得可以用初始特征间的潜在特征来表示数据。这种稀疏的潜在结构常常通过使用比原始特征更少的特征进行表示,因此可以使数据特征变得更加稠密,并且可以消除数据冗余。在其他情况下,还可使用降维将数据从一种模态转换为另一种模态。例如,可以使用递归自动编码器将序列转换为固定长度表示。