机器学习是 人工智能(AI) 和计算机科学的一个分支,专注于利用数据和算法来模仿人类的学习方式,逐步提高其准确性。过去几十年来,存储和处理能力方面的技术进步催生了一些基于机器学习的创新产品,例如 Netflix 的推荐引擎和自动驾驶汽车。 机器学习是不断发展的数据科学领域的重要组成部分。通过使用统计方法,训练算法进行分类或预测,并揭示数据挖掘项目中的关键见解。这些见解随后推动应用程序和业务内的决策制定,理想情况下会影响关键增长指标。随着大数据的不断扩大和增长,市场对数据科学家的需求将会增加。他们将需要帮助识别最相关的业务问题以及回答这些问题的数据。
由于深度学习和机器学习往往可以互换使用,因此值得注意两者之间的细微差别。机器学习、深度学习和神经网络都是人工智能的子领域。然而,神经网络实际上是机器学习的一个子领域,而深度学习是神经网络的一个子领域。
深度学习和机器学习的不同之处在于每种算法的学习方式。“深度”机器学习可以使用标记数据集(也称为监督学习)来通知其算法,但它不一定需要标记数据集。深度学习可以摄取原始形式的非结构化数据(例如文本或图像),并且可以自动确定区分不同类别数据的一组特征。这消除了一些所需的人为干预,并允许使用更大的数据集。正如麻省理工学院讲座中指出的那样,您可以将深度学习视为“可扩展的机器学习” 。
经典的或“非深度”的机器学习更依赖于人类干预来学习。人类专家确定一组特征来理解数据输入之间的差异,通常需要更结构化的数据来学习。
神经网络或人工神经网络 (ANN) 由节点层组成,其中包含输入层、一个或多个隐藏层和输出层。每个节点或人工神经元都连接到另一个节点,并具有相关的权重和阈值。如果任何单个节点的输出高于指定的阈值,则该节点将被激活,将数据发送到网络的下一层。否则,该节点不会将数据传递到网络的下一层。深度学习中的“深度”只是指神经网络的层数。由三层以上组成的神经网络(包含输入和输出)可以被视为深度学习算法或深度神经网络。只有三层的神经网络只是一个基本的神经网络。
深度学习和神经网络被认为加速了计算机视觉、自然语言处理和语音识别等领域的进步。
通常机器学习算法的学习系统分为三个主要部分。
机器学习模型分为三个主要类别。
监督学习,也称为监督机器学习,是通过使用标记数据集来训练算法来准确分类数据或预测结果来定义的。当输入数据输入模型时,模型会调整其权重,直到适当拟合为止。这是交叉验证过程的一部分,以确保模型避免 过度拟合 或 拟合不足。监督学习可帮助组织大规模解决各种现实问题,例如将垃圾邮件分类到与收件箱不同的文件夹中。监督学习中使用的一些方法包括神经网络、朴素贝叶斯、线性回归、逻辑回归、随机森林和支持向量机 (SVM)。
无监督学习,也称为无监督机器学习,使用机器学习算法来分析和聚类未标记的数据集。这些算法无需人工干预即可发现隐藏的模式或数据分组。该方法能够发现信息的相似性和差异性,使其成为探索性数据分析、交叉销售策略、客户细分以及图像和模式识别的理想选择。它还用于通过降维过程减少模型中的特征数量。主成分分析 (PCA) 和奇异值分解 (SVD) 是两种常见的方法。无监督学习中使用的其他算法包括神经网络、k 均值聚类和概率聚类方法。
半监督学习提供了监督学习和无监督学习之间的良好媒介。在训练过程中,它使用较小的标记数据集来指导从较大的未标记数据集中进行分类和特征提取。半监督学习可以解决监督学习算法没有足够标记数据的问题。如果标记足够数据的成本太高,它也会有所帮助。
强化机器学习是一种类似于监督学习的机器学习模型,但算法不是使用样本数据进行训练的。该模型通过反复试验来学习。一系列成功的结果将得到加强,以针对特定问题制定最佳建议或政策。
常用的机器学习算法有很多。
下面列举了部分算法:
二元分类,一种监督机器学习任务,用于预测数据实例属于两个类(类别)中的哪一个。分类算法的输入是一组带标签的示例,其中每个标签都是 0 或 1 的整数。
二元分类示例场景包括:
决定是否将电子邮件标记为“垃圾邮件”。
确定照片是否包含特定物品,例如狗或水果。
......
多类分类,一种监督机器学习任务,用于预测数据实例的类别(类别)。分类算法的输入是一组带标签的示例。
多类分类场景的示例包括:
将航班分类为“早”、“准时”或“晚点”。
将电影评论理解为“正面”、“中立”或“负面”。
将酒店评论分类为“位置”、“价格”、“清洁度”等。
......
一种监督机器学习任务,用于根据一组相关特征预测标签的值。标签可以是任何实际值,而不是像分类任务中那样来自有限的值集。回归算法对标签对其相关特征的依赖性进行建模,以确定标签如何随着特征值的变化而变化。回归算法的输入是一组带有已知值标签的示例。回归算法的输出是一个函数,您可以使用它来预测任何新输入特征集的标签值。
回归场景的示例包括:
根据房屋属性(例如卧室数量、位置或大小)预测房价。
根据历史数据和当前市场趋势预测未来股票价格。
根据广告预算预测产品的销量。
预测下期彩票的中奖号码,当然这个不靠谱。
......
一种无监督机器学习任务,用于将数据实例分组为包含相似特征的集群。聚类还可用于识别数据集中的关系,而您可能无法通过浏览或简单观察从逻辑上推导出这些关系。聚类算法的输入和输出取决于所选的方法。您可以采用分布、质心、连通性或基于密度的方法。ML.NET 目前支持使用 K-Means 聚类的基于质心的方法。
聚类的场景的示例包括:
根据酒店选择的习惯和特点了解酒店客人的细分。
确定客户群和人口统计数据,以帮助开展有针对性的广告活动。
根据制造指标对库存进行分类。
......