机器学习是人工智能的一个子集,它通过示例和经验教会计算机执行任务,是研究和开发的热门领域。我们每天使用的许多应用程序都使用机器学习算法,包括AI助手,Web搜索和机器翻译。
您的社交媒体新闻提要由机器学习算法提供支持。您、看到的推荐视频是机器学习模型的结果。Spotify的“发现周刊”利用机器学习算法的强大功能来创建符合您喜好的歌曲列表。
但是机器学习有许多不同的风格。在这篇文章中,我们将探讨有监督和无监督学习,这是机器学习算法的两个主要类别。每个子集由许多适合各种任务的不同算法组成。
关于机器学习的快速笔记
在深入研究有监督和无监督学习之前,我们先来了解一下什么是机器学习。当今的AI系统以最简单的形式将输入转换为输出。例如,图像分类器将图像或视频帧作为输入,并输出图像中包含的对象的种类。欺诈检测算法将支付数据作为输入,并输出交易欺诈的可能性。下棋的AI将棋盘的当前状态作为输入并输出下一个动作。
开发智能系统的经典方法称为符号人工智能,要求程序员明确指定将输入映射到输出的规则。尽管符号AI有很多好处,但在输入可以以多种形式出现的领域中使用有限,例如计算机视觉,语音识别和自然语言处理。
相反,机器学习使用不同的方法来发展行为。在创建ML系统时,开发人员会创建一个通用结构,并在许多示例中进行培训。这些示例可以是带有相应图像的图片,国际象棋游戏数据,客户购买的物品,用户听过的歌曲或与AI模型要解决的问题有关的任何其他数据。在分析了训练数据之后,机器学习算法对其内部参数进行了调整,以能够处理新的输入数据。
监督学习
Logistic回归是一种有监督的机器学习算法,可以将输入分类为不同的类
如果您关注人工智能新闻,您可能已经听说过AI算法需要很多人工标记的示例。这些故事指的是监督学习,这是机器学习算法中比较流行的类别。监督式机器学习适用于您知道输入数据结果的情况。假设您要创建一个图像分类机器学习算法,该算法可以检测猫,狗和马的图像。
要训练AI模型,您必须收集猫,狗和马照片的大型数据集。但是在将它们输入机器学习算法之前,您必须使用它们各自类的名称对其进行注释。批注可能包括使用文件命名约定将每个类的图像放在单独的文件夹中,或将元数据附加到图像文件中。这是费力的手动任务,在提到AI血汗工厂的故事中经常提到。
标记数据后,机器学习算法(例如卷积神经网络或支持向量机)将处理这些示例并开发可将每个图像映射到其正确类别的数学模型。如果对AI模型进行足够的带标签的示例训练,它将能够准确地检测出包含猫,狗,马的新图像类别。
监督机器学习解决了两种类型的问题:分类和回归。上面说明的示例是一个分类问题,其中机器学习模型必须将输入放入特定的存储桶或类别中。分类问题的另一个示例是语音识别。
回归机器学习模型不限于特定类别。它们可以具有连续的无限值,例如客户将为产品支付多少费用或明天下雨的可能性。
一些常见的监督学习算法包括:
无监督机器学习算法可以基于共享特征将数据划分为集群
假设您是一个电子商务零售企业所有者,他拥有成千上万的客户销售记录。您想找出哪些客户有共同的购买习惯,以便您可以使用该信息向他们提出相关建议并改善您的追加销售政策。问题是您没有预定义的类别将客户划分为多个类别。因此,您不能训练监督式机器学习模型来对客户进行分类。
这是一个聚类问题,主要用于无监督机器学习。与监督学习不同,无监督机器学习不需要标记数据。它仔细研究了训练示例,并根据它们的共同特征将它们分为几类。训练有素的无监督机器学习算法会将您的客户划分为相关的集群。这将帮助您根据客户与集群中其他人的共同偏好来预测客户将购买的产品。
K-means是众所周知的无监督聚类机器学习算法。使用k均值的挑战之一是知道将数据划分为多少个群集。太少的包会打包不太相似的数据,而太多的簇只会使您的模型复杂且不准确。除了聚类之外,无监督学习还可以执行降维。当数据集具有太多特征时,可以使用降维。假设您有一个有关客户的信息表,该表有100列。拥有有关您的客户的大量数据可能听起来很有趣。但实际上并非如此。
随着数据中功能数量的增加,您还将需要更大的样本集来训练准确的机器学习模型。您可能没有足够的样本来训练100列模型。太多的功能也增加了过度拟合的机会,这实际上意味着您的AI模型在训练数据上表现良好,而在其他数据上表现不佳。
无监督的机器学习算法可以分析数据并找到不相关的特征,可以将其删除以简化模型而不会失去宝贵的见解。例如,对于我们的客户表,通过降维算法运行它之后,我们可能会发现与客户的年龄和家庭住址相关的功能几乎没有关联,因此可以将其删除。
主成分分析(PCA)是一种流行的降维机器学习算法。一些安全分析师还使用无监督的机器学习进行异常检测,以识别组织网络中的恶意活动。
无监督学习的好处之一是,它不需要监督学习必须经历的费力的数据标记过程。但是,要权衡的是,评估其性能的有效性也非常困难。相反,通过将监督学习算法的输出与测试数据的实际标签进行比较,可以很容易地衡量监督学习算法的准确性。
【编辑推荐】