首页 > 编程笔记 > Python笔记 阅读:2

机器学习的4种类型(非常详细)

目前,有多种机器学习的算法,可以根据算法学习数据的方式,以及算法是否需要标签、算法利用标签的方式等因素,将机器学习分为四种类型:监督学习、无监督学习、半监督学习和强化学习。

训练是指机器学习模型的学习过程,即模型从数据中学习并提升性能的过程。这个过程通常需要一个数据集,这个数据集通常被分为训练集和测试集。训练的目标是使模型能从输入的特征(描述数据实例的属性)预测出对应的标签。

监督学习是指算法从带有标签的训练数据中学习经验,这些经验被应用于预测新的、未被标注的数据。这种方法就像在一个监督者的指导下进行学习,因此该方法称为监督学习。

无监督学习是指算法只有输入数据,而没有对应的标签。无监督学习的目标是通过寻找数据中的隐藏模式,从而学习数据的结构。因为在这种学习过程中没有任何监督,所以该方法称为无监督学习。

半监督学习是介于监督学习和无监督学习之间的一种学习方法。半监督学习使用的数据集中,一部分数据有标签,另一部分数据没有标签。算法需要利用有标签的数据进行学习,同时也尝试从无标签的数据中寻找规律。

强化学习的模型会通过与环境的交互进行学习,通过在一系列的决策中尝试不同的行为,并根据结果调整行为策略,从而实现特定环境下的优化行为。

每种类型的机器学习都有适用的场景,理解这些基本类型可以帮助用户更好地理解机器学习,并根据实际问题选择合适的学习策略。

监督学习

监督学习是机器学习的一个重要分支,其名称源于这种学习方式的性质,用户为模型提供的数据集包含输入和对应的输出,模型通过监督这种输入与输出之间的关联关系,对这种关联关系进行学习。

这里的输入是指用于预测或估计目标值的一组特征或参数。例如,在预测房价任务中,房屋的面积、位置、房间数量等都可以作为输入。输出是模型预测或估计的目标结果,即用户希望从输入中得到的信息。在上述预测房价任务中,房价就是输出。

在监督学习的过程中,模型首先接收一组包含输入和输出的数据对,这些数据对被称为训练数据。模型的任务是发现输入和输出之间的关系,这个关系可以是一个函数,该函数将输入映射到相应的输出。一旦学习了这个函数,就可以用该函数预测未知输入的输出。

监督学习的应用非常广泛,主要包括回归任务和分类任务:
在监督学习中,一个重要的挑战是如何评估模型的性能。通常,用户会把数据集分成训练集和测试集。训练集用于训练模型,测试集用于评估模型对未知数据的预测性能。为了更精确地评估模型的性能,用户还会使用交叉验证等技术。

交叉验证是一种统计学上的验证模型泛化性能的方法,通过将原始数据集分成训练集和验证集,使模型在训练集上训练并在验证集上验证,多次重复以评估模型的平均性能。

另一个关键的问题是如何避免过拟合和欠拟合:
监督学习是机器学习的核心,理解和掌握监督学习对于深入理解机器学习非常重要。

无监督学习

与监督学习不同,无监督学习的数据集只包含输入,不包含输出。也就是说,用户没有指定目标结果指导学习过程,而是使模型自我学习数据的结构和模式。

结构通常是指数据的组织形式以及数据元素之间的关系。在数据中找出结构通常是为了理解数据的分布、组织方式和可能的组合。

例如,购物篮分析(Market Basket Analysis)是机器学习的应用之一。在购物篮分析案例中,结构可能是购物篮中商品的购买组合——某些商品经常被一起购买,这表明这些商品之间有某种关系或结构。

模式通常是指数据中反复出现的一种或几种行为或趋势。从数据中寻找模式是为了预测或理解未来可能的行为或趋势。

例如,对于电商网站的用户浏览数据,模式可能是用户的浏览路径或购买习惯——用户在浏览特定商品之后,通常会浏览或购买此商品。无监督学习就像让孩子自己去探索和理解世界,而没有老师在一旁指导。

无监督学习的主要任务包括聚类任务和降维任务。

聚类任务是将输入数据划分成几个组别,这些组别是根据数据的相似度划分的。例如,商家可能会根据消费者的购买行为将消费者分为几个不同的群体,以进行更精细的市场营销。

常见的聚类算法有如下几种:
降维任务是指将高维数据转换为低维数据,同时尽量保留数据的重要信息。在实际应用中,数据往往具有很高的维度,这不仅增加了计算的复杂度,也可能导致过拟合等问题。降维可以帮助用户解决这些问题,并且可以用来可视化高维数据。常见的降维算法有主成分分析、线性判别分析(LDA)、t-分布随机邻域嵌入(t-SNE)等。

值得注意的是,尽管无监督学习不需要输出变量的标签,但这并不意味着用户不能评估模型的性能。

实际上,存在许多度量方法可以评估无监督学习的性能,如轮廓系数、Calinski-Harabasz 指数等。但无监督学习的评估通常比监督学习更为复杂,因为用户没有一个真正的正确答案作为参考。

此外,无监督学习也存在过拟合和欠拟合的问题,但与监督学习中的过拟合和欠拟合有些不同:
总体而言,无监督学习是一种更自由、灵活的学习方式,它可以帮助用户发现数据的内在结构和模式,进一步揭示数据的潜在含义。

半监督学习

半监督学习是介于监督学习和无监督学习之间的一种学习方法。

在半监督学习中,用户的数据集既包含带标签的数据(监督学习中的数据),也包含未标记的数据(无监督学习中的数据)。实际上,这种学习场景在现实世界中非常常见,因为标记数据通常需要人工进行,而未标记的数据相对容易获取。

在半监督学习中,模型不仅要利用带标签的数据学习输入和输出之间的关系,也要利用未标记的数据学习数据的潜在结构和模式。这样,模型就可以利用更多的信息改善学习效果。例如,模型可以利用未标记数据的分布信息改善输入空间的划分,从而改善新数据的预测结果。

输入空间是机器学习中的一个术语,是指所有可能的输入数据的集合或区域。在这个空间中,每一个点都代表一个可能的输入数据,空间的维度由输入数据的特征数决定。

例如,在建立一个天气预测模型时,可能的输入特征包括温度和湿度。在这种情况下,可以把所有温度和湿度的组合看作一个二维的输入空间,每一个点在这个空间中都代表一个可能的温度-湿度组合。

半监督学习的应用非常广泛,包括图像识别、文字分类、语音识别、生物信息学等领域。这些任务通常涉及大量的未标记数据和少量的带标签数据。例如,图像识别系统会利用半监督学习自动识别商品图片的内容。

常见的半监督学习方法包括自训练、多视图学习、图半监督学习等:
半监督学习的一个重要挑战是如何有效地利用未标记数据。如果处理不当,则未标记数据可能会导致模型的性能降低,这被称为负迁移。为了避免负迁移,需要设计合理的学习策略和算法。例如,可以使用一些假设引导学习过程,如使用聚类假设或流形假设。

半监督学习的另一个挑战是如何评估模型的性能。通常,用户可以使用和监督学习相同的评估方法,如交叉验证、准确率、召回率等。召回率是指模型预测正确的正样本(真正例)占所有实际正样本(真正例和假反例)的比例。但是,用户还需要考虑未标记数据的利用效果。例如,可以通过比较半监督学习和监督学习的性能评估未标记数据的价值。

总之,半监督学习是一种充分利用有限标签信息和丰富未标签信息的有效学习方法,具有广泛的应用前景。

强化学习

强化学习是一种在互动环境中学习和做出决策的方法。

在强化学习中,智能体通过与环境的交互学习如何执行任务,这个智能体可以观察其环境,选择并执行行动,同时接收环境的反馈,如奖励或惩罚。

智能体的目标通常是通过从环境中获得的累积奖励学习最优的行动策略。例如,一个智能体可以是在电子游戏中寻找宝藏的角色,通过试错和学习,该角色了解在不同游戏状态下应该选择的最佳动作。

智能体不仅考虑即时回报,还需考虑未来的回报。因此,强化学习需要处理许多短期和长期决策的问题。

强化学习的基本框架是马尔可夫决策过程(MDP),包括状态、动作、转移函数和回报函数。转移函数描述了在给定的状态和动作下,智能体到达新状态的概率。回报函数定义智能体在特定状态执行特定动作后所得到的即时回报。累积的回报有时也称作总回报或折扣回报,是指智能体在一系列动作中获得的所有即时回报的总和。智能体的目标是通过选择最优的动作策略最大化累积的回报。

强化学习在许多领域都有广泛应用:
常见的强化学习方法包括值迭代、策略迭代、Q-learning、深度 Q 网络(DQN)、策略梯度等:
强化学习的一个重要挑战是如何平衡探索和利用。这里的探索是指智能体尝试新的动作获取更多信息,利用是指智能体使用已有的信息做出最优的决策。如果只重视探索,则智能体可能无法快速找到好的策略;如果只重视利用,则智能体可能会陷入局部最优问题。

另一个挑战是如何在大规模或连续的状态和动作空间中有效地进行学习和决策。在许多任务中,状态和动作的空间可能非常大,甚至是连续的,导致无法直接求解最优策略,这就需要借助如函数近似和蒙特卡罗采样等技术。

函数近似用于在大规模或连续的空间中近似表示价值函数或策略函数。价值函数用于估算某一状态下采取某一动作后,智能体预期奖励之和;策略函数在给定状态下,选择各个动作的概率分布。可以使用神经网络等方法进行函数近似。

蒙特卡罗采样是一种基于随机抽样的方法,用于估计复杂的或不易直接计算的概率分布,该方法在处理大规模或连续空间问题时非常有用。

总而言之,强化学习是一种在互动环境中进行学习和决策的强大方法,在许多领域都有广泛的应用。

相关文章