您应该使用哪些 AI/ML 模型,为什么?

发布:2024-10-30 10:39 阅读:72 点赞:0

机器学习 (ML) 工程师和数据科学家通常需要为任务选择合适的机器学习模型或算法。ML 中没有放之四海而皆准的模型。每种型号都有其优点和缺点。

例如,逻辑回归是一个非常好的模型,可用于表格数据集中的二进制分类,但它不会帮助您进行图像分类。尽管您可以对图像进行预处理以获得一些表格特征,但这种方法并不是解决图像分类问题的最佳方法。有一类模型专门用于解决图像分类问题。

为了为您的任务选择合适的模型,必须接触各种机器学习技术及其最适合的用例。在本指南中,您将了解 12 种最有用的机器学习模型。大多数模型都是开源的,但其中一些模型是专有的。

最后,您还将了解一个可以帮助您轻松部署和维护机器学习模型的平台。

TL:DR;
以下是最有用的 ML 模型:

  • 线性回归
  • Logistic 回归
  • 决策树
  • 聚类
  • 提高
  • 卷积神经网络 (CNN)
  • 长短期记忆 (LSTM) 网络
  • 生成对抗网络 (GAN)
  • 强化学习
  • 变压器的双向编码器表示 (BERT)
  • 亚马逊个性化
  • 生成式预训练 transformers 3.5 或 ChatGPT

在深入研究机器学习算法之前,请记住,如果您可以通过简单的数学或启发式方法解决问题,则可以在没有 ML 的情况下推出您的产品。不要仅仅为了 ML 模型本身而涉足 ML 模型。

让我们详细介绍列出的每个模型。

您应该拥有的 12 个机器学习模型

线性回归
线性回归是一种监督机器学习(或简称监督学习)算法,旨在捕获数据和输出变量之间的线性关系。在需要预测连续变量(也称为回归任务)的情况下,它非常有用。与列表中的许多其他算法一样,它需要标记的数据。

大多数 ML 库(如 scikit-learnpandas 等)都允许您可视化和预测训练数据中变量之间的线性关系。由于线性回归是一个简单的模型,因此很容易解释输出,并且可以用于需要可解释解决方案的行业。

线性回归

Logistic 回归
线性回归用于预测连续变量,而 Logistic 回归则应用 sigmoid 函数在值 0 和 1 之间转换线性回归的输出,使其适用于分类问题。然后,您可以选择一个阈值(例如 0.5),并将 0.5 到 1 之间的输出分类为正类,将小于 0.5 的输出分类为负类。这样,您就可以将 Logistic 回归用作简单的二元分类器。

Logistic 回归

决策树
决策树由迭代应用的问题或规则组成,直到得出结论。这些规则是简单的是或否问题,可用于分类 (预测分类变量) 和回归 (预测连续变量)。例如,如果您希望决策树模型向用户推荐特定餐厅,则问题或规则可能如下所示:

  • 餐厅在附近吗?
  • 它是否提供用户喜欢的食物类型?
  • 用户负担得起吗?

该模型将按顺序评估这三个问题,如果对所有三个问题的回答都是“”,则模型会向用户推荐特定的餐厅。另一方面,在任何时候回答 “no” 都会导致模型不向用户推荐特定的餐厅。虽然该示例演示了决策树在解决分类问题中的应用,但您也可以使用它来解决回归问题。

决策树

聚类
聚类算法可帮助您将训练数据点分成多个组。很多时候,作为 ML 工程师,您将处理没有标签的数据,这也称为无监督学习或无监督机器学习,与半监督学习不同,半监督学习同时使用标记数据和未标记数据。当数据缺少标签时,您可以使用 k 表示聚类、频谱聚类等聚类算法来发现所提供数据集中的模式。集群广泛用于客户细分、异常检测、欺诈检测和图像分割。

聚类

提升
提升不是一个单独的 ML 模型,而是一种将多个弱学习器组合在一起以创建一个可以生成高度准确预测的模型的技术。Xgboost 是一种常见的 boosting 模型,支持分布式训练,从而加快训练速度。根据英特尔的研究,Xgboost 比基于神经网络的表格数据方法更有效。此外,Xgboost 的训练速度更快,并且不需要神经网络所需的那么多数据。

卷积神经网络 (CNN)
CNN 是一种旨在处理图像的人工神经网络。它是支持图像分类、对象检测和图像分割的模型的支柱。虽然普通神经网络也可用于基于图像的任务,但 CNN 可以使用更少的参数执行相同的任务,从而形成一个训练速度更快的网络并充分利用图形处理单元 (GPU)。Facebook 大量使用 CNN 进行图像识别(在照片中自动标记)。同样,CNN 也用于为自动驾驶汽车提供动力

卷积神经网络

长短期记忆 (LSTM)
LSTM 模型在处理顺序数据(包括文本、股票价格、音乐或音频等)方面很受欢迎。几年前,Google 和其他公司提供了由 LSTM 提供支持的语言翻译服务。LSTM 还为 Google Now 等语音助手提供支持。LSTM 的常见应用包括文本分类、文本摘要说话人分类、音乐生成语音转录和语音识别。

LSTM 电池片

生成对抗网络 (GAN)
GAN 是一种特殊类型的网络,它利用两个神经网络(一个判别器和一个生成器)来生成与给定数据集相似的新数据。所涉及的两个网络充当对手:当生成器尝试生成与原始数据集相似的新数据时,判别器试图从原始数据集中区分新数据或虚假数据。当生成器成功混淆判别器以将生成的数据分类为真实数据时,训练过程结束。此时,训练成功,可以独立使用生成器生成真实数据。

生成对抗网络的架构

如果您访问“此人不存在”网站,您会发现使用 GAN 生成的逼真人物图像。他们是现实世界中不存在的虚构个体。另一个网站 deoldify 使用 GAN 生成灰度图像的彩色版本。GAN 的其他流行应用包括图像超分辨率、图像画中、图像外绘等。

强化学习
机器学习系统或算法试图模仿人类解决问题的方法。CNN 试图模仿人类视觉皮层的运作方式,而人工神经网络试图模仿生物神经元的运作方式。同样,强化学习是一种机器学习,其中算法通过尝试不同的动作和观察结果来学习做出决策。这类似于孩子通过尝试不同的事物并观察会发生什么来学习。

DeepMind 的 AlphaZero 在国际象棋和围棋等游戏中击败了最优秀的人类玩家,它是使用强化学习算法进行训练的。

来自 transformers 的双向编码器表示 (BERT)
BERT 是 Google 为自然语言处理 (NLP) 开发的最先进的模型。它是 LSTM 的继任者,基于 transformer 架构。它在文本分类、文本生成、信息提取和问答等任务中非常有效。您可以在 Huggingface 上试用该模型。

BERT、未标记数据、预测建模

BERT 是开源的:您可以使用自己的数据对其进行调整,并在商业上使用它,而无需支付任何费用。因此,如果您的应用程序要求客户的数据不离开您的私有服务器,您应该使用 BERT 或任何其他开源替代方案。例如,如果输入数据的长度、上下文大小和 BERT 的计算能力对您的用例来说是一个限制,那么您还可以使用更大的语言模型,如 llama3mixtral 等。

Amazon Personalize
Amazon 的推荐系统是现存最好的推荐系统之一。虽然 Amazon 尚未开源其推荐模型,但您仍然可以通过支付象征性费用来访问他们的算法。您可以使用自己的数据对其进行优化,并在生产中使用它。LOTTE、Discovery 等公司也使用 Amazon Personalize 来支持他们的推荐系统。您可以在官方网站上找到有关其定价和使用案例的更多信息。

Amazon Personalize 服装推荐

生成式预训练转换器 3.5 或 ChatGPT
生成式预训练转换器 (GPT) 是一种基于 transformer 的模型,用于文本生成。近年来,OpenAI 改进了这些模型,并通过 GPT-3.5 或 ChatGPT 创建了一个通用的文本生成模型,该模型可用于从回答简单问题到生成复杂营销计划和编写计算机代码的任何事情。虽然该模型不是开源的,但您可以在上下文中使用自己的数据对其进行优化,并通过他们的 API 以象征性的费用使用它。

公司出于多种原因使用 ChatGPT:Microsoft 使用 ChatGPT 为其搜索引擎提供动力,Expedia 使用 ChatGPT 作为其 AI 助手,可口可乐使用 ChatGPT 来简化营销运营并改善客户体验等。您还可以使用其 API 将 ChatGPT 用于您自己的应用程序。

结论

上面的列表包含 11 个最有用的 ML 模型和算法。它们中的大多数是开源的,而其中一些是专有的。由于法人实体为在产品中使用人工智能 (AI) 制定了严格的规则,因此需要为您的用例采用开源模型。

此外,如果您想保护用户数据,并且法律要求用户数据不会超出地理区域或您的公司服务器,您可以使用开源模型或您公司开发的模型。

Jozu 枢纽

Jozu Hub 是一个符合 OCI 标准的注册表,用于托管开源 ModelKits(所有机器学习工件的容器:数据、模型、代码、静态文件等),它提供各种开源 ML 模型供您微调和用于您的使用案例。Jozu Hub 可以用作 SaaS,安装在本地,也可以部署到私有环境。由于所有 ML 构件都打包为单个实体,因此部署 ML 支持的解决方案变得更加容易。Jozu Hub 还拥有一组精选的模型和数据集,ML 团队可以通过简单的界面使用,但由现有的企业注册表提供支持。