机器学习模型

机器学习模型被定义为训练过程输出的数学表示。 机器学习是对不同算法的研究,这些算法可以通过经验和旧数据自动改进并构建模型。机器学习模型类似于旨在根据以前的经验或数据识别模式或行为的计算机软件。学习算法发现训练数据中的模式,并输出一个 ML 模型,该模型捕获这些模式并对新数据进行预测。

Machine Learning Models

让我们了解一个 ML 模型的示例,其中我们正在创建一个应用程序来根据面部表情识别用户的情绪。因此,通过机器学习模型可以创建这样的应用程序,我们将通过输入标有各种情感的面部图像来训练模型。每当此应用程序用于确定用户的心情时,它都会读取所有馈送的数据,然后确定任何用户的心情。

因此,用简单的话来说,我们可以说 机器学习模型是事物或过程的简化表示。 在本主题中,我们将讨论不同的机器学习模型及其技术和算法

什么是机器学习模型?

机器学习模型可以理解为经过训练以在新数据中查找模式并做出预测的程序。这些模型表示为数学函数,它接受输入数据形式的请求,对输入数据进行预测,然后提供输出作为响应。首先,这些模型通过一组数据进行训练,然后为它们提供一种算法来推理数据、从馈送数据中提取模式并从这些数据中学习。一旦这些模型经过训练,它们就可以用来预测看不见的数据集。

根据不同的业务目标和数据集,有多种类型的机器学习模型可用。

机器学习模型的分类:

根据不同的业务目标和数据集,算法的学习模型分为三种。每个机器学习算法都适用于以下三个模型之一:

  • 监督学习
  • 无监督学习
  • 强化学习

Machine Learning Models

监督学习进一步分为两类:

  • 分类
  • 回归

无监督学习也分为以下几类:

  • 聚类
  • 关联规则
  • 降维

1.监督机器学习模型

监督学习是最简单的机器学习模型,其中输入数据称为训练数据,并具有已知标签或结果作为输出。因此,它的工作原理是输入-输出对。它需要创建一个可以使用训练数据集进行训练的函数,然后将其应用于未知数据并做出一些预测性能。监督学习是基于任务的,并在标记数据集上进行测试。

我们可以针对简单的现实问题实施监督学习模型。例如,我们有一个由年龄和身高组成的数据集;然后,我们可以建立一个监督学习模型来根据年龄来预测人的身高。

监督学习模型进一步分为两类:

回归

在回归问题中,输出是连续变量。一些常用的回归模型如下:

a) 线性回归

线性回归是最简单的机器学习模型,我们尝试使用一个或多个输入变量来预测一个输出变量。线性回归的表示形式是一个线性方程,它组合了一组输入值 (x) 和这组输入值的预测输出 (y)。它以线的形式表示:

Y = bx + c。

Machine Learning Models

线性回归模型的主要目的是找到最适合数据点的最佳拟合线。

线性回归扩展到多元线性回归(找到最佳拟合平面)和多项式回归(找到最佳拟合曲线)。

b) 决策树

决策树是流行的机器学习模型,可用于回归和分类问题。

决策树使用树状决策结构及其可能的后果和结果。其中,每个内部节点用于表示对属性的测试;每个分支用于表示测试的结果。决策树的节点越多,结果就越准确。

决策树的优点是直观且易于实现,但缺乏准确性。

决策树广泛应用于 运筹学,特别是决策分析、战略规划,主要是机器学习。

c) 随机森林

随机森林是集成学习方法,由大量决策树组成。随机森林中的每个决策树都会预测一个结果,获得多数票的预测被视为结果。

随机森林模型可用于回归和分类问题。

对于分类任务,随机森林的结果取自大多数选票。而在回归任务中,结果取自每棵树生成的预测的平均值。

d) 神经网络

神经网络是机器学习的子集,也称为人工神经网络。神经网络由人工神经元组成,其设计方式类似于人脑结构和工作方式。每个人工神经元都与神经网络中的许多其他神经元连接,如此数以百万计的连接神经元创建了复杂的认知结构。

Machine Learning Models

神经网络由多层结构组成,包含一个输入层、一个或多个隐藏层和一个输出层。当每个神经元与另一个神经元连接时,它将数据从一层传输到下一层的另一个神经元。最后,数据到达神经网络的最后一层或输出层并生成输出。

神经网络依靠训练数据来学习并提高其准确性。然而,经过完美训练且准确的神经网络可以快速聚类数据,并成为强大的机器学习和人工智能工具。最著名的神经网络之一是 谷歌的搜索算法。

分类

分类模型是监督学习技术的第二种类型,用于根据分类形式的观察值生成结论。例如,分类模型可以识别电子邮件是否是垃圾邮件;买家是否会购买该产品等。分类算法用于预测两个类别并将输出分类为不同的组。

在分类中,设计了一个分类器模型,将数据集分为不同的类别,并且为每个类别分配一个标签。

机器学习有两种分类:

  • 二元分类:如果问题只有两个可能的类,称为二元分类器。例如,猫或狗,是或否,
  • 多类分类:如果问题有两个以上可能的类,则它是多类分类器。

一些流行的分类算法如下:

a) 逻辑回归

逻辑回归用于解决机器学习中的分类问题。它们与线性回归类似,但用于预测分类变量。它可以预测输出是或否、0 或 1、True 或 False 等。但是,它不是给出精确值,而是提供 0 和 1 之间的概率值。

b) 支持向量机

支持向量机或SVM是流行的机器学习算法,广泛用于分类和回归任务。然而,具体来说,它是用来解决分类问题的。 SVM的主要目的是在N维空间中找到最佳决策边界,可以将数据点分类,最佳决策边界称为超平面。 SVM选择极值向量来寻找超平面,这些向量称为支持向量。

Machine Learning Models

c) 朴素贝叶斯

朴素贝叶斯是机器学习中使用的另一种流行的分类算法。之所以如此称呼,是因为它基于贝叶斯定理,并遵循特征之间的朴素(独立)假设,如下所示:

Machine Learning Models

每个朴素贝叶斯分类器都假设特定变量的值独立于任何其他变量/特征。例如,如果需要根据颜色、形状和味道对水果进行分类。所以黄色、椭圆形、甜的就会被认定为芒果。这里每个特征都是独立于其他特征的。

2. 无监督机器学习模型

无监督机器学习模型实现与监督学习相反的学习过程,这意味着它使模型能够从未标记的训练数据集中学习。基于未标记的数据集,模型预测输出。使用无监督学习,模型可以在没有任何监督的情况下自行从数据集中学习隐藏模式。

无监督学习模型主要用于执行以下三个任务:

  • 聚类
    聚类是一种无监督学习技术,涉及根据相似性和差异将数据点聚类或摸索到不同的簇中。相似度最高的对象保留在同一组中,并且它们与其他组没有相似之处或相似之处很少。
    聚类算法可以广泛应用于不同的任务,例如 图像分割、统计数据分析、市场细分, ETC。
    一些常用的聚类算法是 K 均值聚类、层次聚类、DBSCAN, ETC。
    Machine Learning Models
  • 关联规则学习
    关联规则学习是一种无监督学习技术,它可以发现大型数据集中变量之间有趣的关系。这种学习算法的主要目的是找到一个数据项对另一数据项的依赖关系,并相应地映射这些变量,以便产生最大的利润。该算法主要应用在 市场购物篮分析、网络使用挖掘、持续生产, ETC。
    关联规则学习的一些流行算法是 Apriori 算法、Eclat、FP 增长算法。
  • 降维
    数据集中存在的特征/变量的数量称为数据集的维数,用于降低维数的技术称为降维技术。
    虽然更多的数据可以提供更准确的结果,但它也会影响模型/算法的性能,例如过度拟合问题。在这种情况下,使用降维技术。
    这是将较高维度数据集转换为较低维度数据集的过程,确保它提供相似的信息”。
    不同的降维方法,例如 如PCA(主成分分析)、奇异值分解等。

强化学习

在强化学习中,算法学习导致目标状态的一组给定状态的动作。它是一种基于反馈的学习模型,通过与环境交互来在每个状态或动作之后获取反馈信号。这种反馈作为奖励(对每个好的行为是积极的,对每个坏的行为是消极的),代理的目标是最大化积极的奖励以提高他们的表现。

强化学习中模型的行为与人类学习类似,人类通过经验作为反馈来学习事物并与环境交互。

以下是强化学习中的一些流行算法:

  • Q-学习: Q-learning 是流行的强化学习无模型算法之一,它基于贝尔曼方程。

它的目的是学习可以帮助人工智能代理在特定情况下采取最佳行动以最大化奖励的策略。它包含每个状态-动作对的 Q 值,指示遵循给定状态路径的奖励,并尝试最大化 Q 值。

  • 国家行动奖励国家行动(SARSA): SARSA 是一种基于马尔可夫决策过程的在策略算法。它使用当前策略执行的操作来学习 Q 值。 SARSA算法代表 为 State Action 奖励 State Action,代表元组 (s, a, r, s', a')。
  • 深Q网络: 数据质量网络 或深度 Q 神经网络是 Q 学习 在神经网络内。它基本上用于大状态空间环境,其中定义 Q 表将是一项复杂的任务。因此,在这种情况下,神经网络不会使用 Q 表,而是根据状态为每个动作使用 Q 值。

训练机器学习模型

一旦建立了机器学习模型,就对其进行训练以获得适当的结果。为了训练机器学习模型,需要大量的预处理数据。这里的预处理数据是指具有减少空值等的结构化形式的数据。如果我们不提供预处理数据,那么我们的模型很有可能表现得很糟糕。

如何选择最佳型号?

在上一节中,我们讨论了不同的机器学习模型和算法。但对于任何初学者来说,最令人困惑的问题是“我应该选择哪种模型?”。所以,答案是,这主要取决于业务需求或项目需求。除此之外,它还取决于关联的属性、可用数据集的数量、特征的数量、复杂性等。但是,在实践中,建议我们始终从可应用于特定情况的最简单的模型开始然后通过参数调整和交叉验证逐渐提高复杂性并测试准确性。

机器学习模型和算法之间的区别

初学者最困惑的问题之一是机器学习模型和算法是一样的吗?因为在机器学习和数据科学的各种情况下,这两个术语可以互换使用。

这个问题的答案是否定的,机器学习模型与算法不同。简单地说,一个 ML 算法就像在数据上运行以从中发现模式的过程或方法 并生成模型。与此同时,一个 机器学习模型就像一个生成输出或进行预测的计算机程序。更具体地说,当我们用数据训练算法时,它就变成了模型。