根据学习任务的不同,机器学习算法大致可分为3类:监督学习、无监督学习和半监督学习。
监督学习(Supervised Learning)
在监督学习中,我们有一组带有标签(即已知输出)的训练样本作为输入。目标是通过学习输入与输出之间的映射关系,构建一个模型来预测新的输入对应的输出。
从给定的训练数据集中学习出一个模型参数,然后根据这个模型对未知样本进行预测。在监督学习中,样本同时包含特征(输入)和标签(输出)。本质上,监督学习的目标是构建一个从输入到输出的映射,该映射用模型来表示。
常见的监督学习算法有k近邻、朴素贝叶斯、决策树、随机森林、SVM等。
根据预测结果输出的类别,可分为分类和回归。若预测值是连续的,则属于回归问题;若预测值是离散的,则属于分类问题。
常见的监督学习算法包括线性回归、逻辑回归、决策树、支持向量机(SVM)和神经网络等。
无监督学习(Unsupervised Learning)
在无监督学习中,训练样本没有标签或者说没有已知的输出。算法需要自动发现数据中的模式、结构或关系,以便进行聚类、降维、异常检测等任务。
也称为非监督学习,输入的样本只包含特征,而不包含标签。学习模型是数据内在结构的推断,并不知道分类结果是否正确。
常见的无监督学习算法包括聚类算法(如K均值算法、层次聚类)、关联规则挖掘、主成分分析(PCA)和自编码器等。
半监督学习(Semi-supervised Learning)
半监督学习是监督学习和无监督学习的结合,既利用了带有标签的样本,也利用了没有标签的样本。在半监督学习中,算法通过使用标记样本的信息和未标记样本的结构来进行训练和推断。
一种介于监督和无监督学习之间的学习方式,通过使用带标签数据及大量不带标签的数据进行模型学习。在监督学习中,样本的类别标签是已知的,对于无监督学习,样本是无标签的。实际上,有标签的样本是极少量的,绝大部分数据都是没有标签的,这是因为人工标记样本的成本很高,导致有标签的数据十分稀少。与此相应,不带标签的样本更容易获得。
半监督学习在实际应用中很有用,因为获取大量标记样本通常是耗时且昂贵的。使用半监督学习,只需要少量带标签的数据,同时又能够带来较高的准确性,因此,在今天的大数据时代,半监督学习逐渐受到更多的关注。
常见的半监督学习算法包括自训练、生成模型和半监督支持向量机等。
这三类机器学习算法在解决不同类型的问题时具有各自的优势和适用性。选择合适的算法取决于数据的特点、问题的性质以及可用的标记数据量等因素。