什么是机器学习?
机器学习是人工智能 (AI) 和计算机科学的一个分支,专注于使用数据和算法,模仿人类学习的方式,逐步提高自身的准确性。
在过去的几十年里,存储和处理能力方面的技术进步推动一些基于机器学习的创新产品顺利落地,例如 Netflix 的推荐引擎和Google自动驾驶技术。
机器学习是不断发展的数据科学领域的重要组成部分。 通过使用统计方法对算法进行训练,使其能够执行分类或预测,以及在数据挖掘项目中揭示关键洞察。 而这些洞察又可以推动应用和业务中的决策,有效影响关键增长指标。 随着大数据的持续增长,市场对数据科学家的需求也水涨船高。 企业要求他们帮助确定最相关的业务问题,并提供数据以找到答案。
机器学习算法通常是使用旨在加速解决方案开发的框架创建的,例如 TensorFlow 和 PyTorch。
机器学习、深度学习与神经网络
由于深度学习和机器学习这两个术语往往互换使用,因此必须注意这两者之间的细微差别。 机器学习、深度学习和神经网络都是人工智能的子领域。 但是,神经网络实际上是机器学习的一个子领域,而深度学习则是神经网络的一个子领域。
深度学习和机器学习的不同之处在于每个算法的学习方式。 “深度”机器学习可以利用标注数据集(也称为监督式学习)为算法提供所需信息,但并不一定要使用标注数据集。 深度学习能够以原始格式(例如文本或图像)采集非结构化数据,并且可以自动确定用于区分不同类别数据的特征集。 这避免了一些原本必需的人工干预,并能够使用更大的数据集。 可将深度学习视为”可扩展的机器学习”,就如 Lex Fridman 在麻省理工学院的这场讲座中所述的那样。
经典机器学习,也称为”非深度”机器学习,更依赖于人工干预进行学习。 人类专家确定一组特征,用于了解数据输入之间的差异,通常需要使用更为结构化的数据进行学习。
神经网络也称为人工神经网络 (ANN),由节点层组成,包含一个输入层、一个或多个隐藏层和一个输出层。 每个节点也称为一个人工神经元,它们连接到另一个节点,具有相关的权重和阈值。 如果任何单个节点的输出高于指定的阈值,那么该节点将被激活,并将数据发送到网络的下一层。 否则,该节点不会将任何数据传递到网络的下一层。 深度学习中的”深度”就是指神经网络中的层数。 由三层以上组成的神经网络(包含输入和输出)可视为深度学习算法或深度神经网络。 只有三层的神经网络只是基本神经网络。
深度学习和神经网络目前的成就,要归功于 计算机视觉、自然语言处理 和 语音识别 等领域的突飞猛进。
请阅读博客帖子”AI、机器学习、深度学习与神经网络:有何区别?“,详细了解这些不同概念之间的关系。
机器学习如何工作
加州大学伯克利分校将机器学习算法的学习系统分为三个主要部分。
- 决策过程:通常,机器学习算法用于进行预测或分类。 算法可根据一些已标注或未标注的输入数据,生成有关数据中模式的估算。
- 误差函数:误差函数用于评估模型的预测情况。 如果存在已知示例,那么误差函数可以进行比较,评估模型的准确性。
- 模型优化过程:如果模型能够更好地拟合训练集中的数据点,那么会调整权重,减少已知示例和模型估算之间的差异。 该算法将重复此”评估并优化”过程,自主更新权重,直到满足准确性阈值为止。
机器学习方法
机器学习模型主要分为三大类。
1) 监督式机器学习
监督式学习也称为监督式机器学习,它使用标注数据集来训练算法,以便准确进行数据分类或预测结果。 将输入数据传入模型后,该模型会调整权重,直到适当拟合为止。 这是交叉验证过程的一部分,可确保模型避免过拟合或欠拟合。 监督式学习可帮助组织大规模解决各种现实问题,例如将垃圾邮件归类到收件箱的单独文件夹中。 监督式学习中使用的方法包括神经网络、朴素贝叶斯、线性回归、逻辑回归、随机森林和支持向量机 (SVM) 等。
2) 无监督机器学习
无监督学习也称为无监督机器学习,使用机器学习算法,分析未标注的数据集并将这些数据集形成聚类。 这些算法可发现隐藏的模式或数据分组,无需人工干预。 这种方法能够发现信息的相似性和差异,因此是探索性数据分析、交叉销售策略、客户群细分、图像和模式识别的理想之选。 通过降维过程,它还可用于减少模型中的特征数量。 主成分分析 (PCA) 和奇异值分解 (SVD) 是无监督学习中两种常用的方法。 无监督学习中使用的其他算法包括神经网络、k 均值聚类和概率聚类方法。
3) 半监督机器学习
半监督学习是监督式学习和无监督学习的巧妙结合。 在训练期间,它使用较小的标注数据集,以指导从较大的未标注数据集进行分类和特征提取。 半监督学习可以解决因标注数据不足而无法采用监督式学习算法的问题。 如果标注足够的数据成本太高,也可以使用这种方法。
要深入了解这些方法之间的差异,请参阅”监督式学习与无监督学习:有何区别?”
常用机器学习算法
目前常用的机器学习算法有很多。 其中包括:
- 神经网络: 神经网络模拟人脑的工作方式,包含大量相互链接的处理节点。 神经网络擅长模式识别,在自然语言翻译、图像识别、语音识别和图像创建等应用领域发挥着重要作用。
- 线性回归: 这种算法用于根据不同值之间的线性关系来预测数值。 例如,该方法可用于根据某个地区的历史数据预测房价。
- 逻辑回归: 这种监督式学习算法可对分类响应变量进行预测,例如,对问题回答”是/否”。 它可用于垃圾邮件分类和生产线质量控制等应用场景。
- 聚类: 通过使用无监督学习,聚类算法可以识别数据中的模式,从而对其进行分组。 计算机可通过识别人类往往会忽视的数据项之间的差异,为数据科学家提供帮助。
- 决策树: 决策树既可用于预测数值(回归),也可用于将数据归入不同类别。 决策树使用链接决策的分支序列,可以用树状图表示。 决策树与神经网络的黑盒属性不同,易于验证和审计,这也是其优点之一。
- 随机森林: 在随机森林中,机器学习算法通过组合多个决策树的结果来预测值或类别。