一、监督机器学习

1.1 概念理解

监督学习是机器学习的类型,其中机器使用“标记好”的训练数据进行训练,并基于该数据,机器预测输出。标记的数据意味着一些输入数据已经用正确的输出标记。

在监督学习中,提供给机器的训练数据充当监督者,教导机器正确预测输出。它应用了与学生在老师的监督下学习相同的概念。

监督学习是向机器学习模型提供输入数据和正确输出数据的过程。监督学习算法的目的是找到一个映射函数来映射输入变量(x)和输出变量(y)

在现实世界中,监督学习可用于风险评估、图像分类、欺诈检测、垃圾邮件过滤等。

1.2 监督学习如何运作

在监督学习中,模型使用标记数据集进行训练,其中模型学习每种类型的数据。训练过程完成后,模型会根据测试数据(训练集的子集)进行测试,然后预测输出。

通过以下示例和图表可以很容易地理解监督学习的工作原理:
监督学习与无监督学习_监督学习

1.3 监督学习的步骤

  1. 首先确定训练数据集的类型
  2. 收集/收集标记的训练数据(一般可能需要手动标记)
  3. 将训练数据集拆分为训练数据集、测试数据集和验证数据集。
  4. 确定训练数据集的输入特征,这些特征应该有足够的知识使模型能够准确地预测输出。
  5. 确定适合模型的算法,如支持向量机、决策树等。
  6. 在训练数据集上执行算法。有时我们需要验证集作为控制参数,它们是训练数据集的子集。
  7. 通过提供测试集来评估模型的准确性。如果模型预测出正确的输出,这意味着我们的模型是准确的。

1.4 监督机器学习算法的类型

监督学习可以进一步分为两类问题:回归分类

1.回归
如果输入变量和输出变量之间存在关系,则使用回归算法。它用于预测连续变量,例如天气预报、市场趋势等。以下是一些流行的回归算法,它们属于监督学习:

  • 线性回归
  • 回归树
  • 非线性回归
  • 贝叶斯线性回归
  • 多项式回归

2.分类
当输出变量是分类时使用分类算法,这意味着有两个类别,例如是 - 否,男性 - 女性,真假等。垃圾邮件过滤,是否为垃圾等。

可能用到的算法:

  • 随机森林
  • 决策树
  • 逻辑回归
  • 支持向量机

1.5 监督学习的优点

  • 在监督学习的帮助下,模型可以根据先前的经验预测输出。
  • 在监督学习中,我们可以对对象的类别有一个准确的认识。
  • 监督学习模型帮助我们解决各种现实问题,例如欺诈检测、垃圾邮件过滤等。

1.6 监督学习的缺点

  • 监督学习模型不适合处理复杂的任务。
  • 如果测试数据与训练数据集不同,监督学习无法预测正确的输出。
  • 训练需要大量的计算时间。
  • 在监督学习中,我们需要足够的关于对象类别的知识。

二、无监督机器学习

在上一个主题中,我们学习了监督机器学习,其中模型在训练数据的监督下使用标记数据进行训练。但是在很多情况下,我们没有标记数据,需要从给定的数据集中找到隐藏的模式。因此,要解决机器学习中的此类案例,我们需要无监督学习技术。

2.1 什么是无监督学习?

顾名思义,无监督学习是一种机器学习技术,其中模型不使用训练数据集进行监督。相反,模型本身会从给定数据中找到隐藏的模式和见解。它可以比作在学习新事物时发生在人脑中的学习。它可以定义为:

监督学习是一种机器学习,其中模型使用未标记的数据集进行训练,并允许在没有任何监督的情况下对该数据进行操作。

无监督学习不能直接应用于回归或分类问题,因为与监督学习不同,我们有输入数据但没有相应的输出数据。无监督学习的目标是找到数据集的底层结构,根据相似性对数据进行分组,并以压缩格式表示该数据集

示例: 假设给定无监督学习算法的输入数据集,其中包含不同类型的猫和狗的图像。该算法从未在给定的数据集上进行过训练,这意味着它对数据集的特征一无所知。无监督学习算法的任务是自行识别图像特征。无监督学习算法将通过根据图像之间的相似性将图像数据集聚类到组中来执行此任务。
监督学习与无监督学习_监督学习_02

2.2 为什么要使用无监督学习?

以下是描述无监督学习重要性的一些主要原因:

  • 无监督学习有助于从数据中找到有用的见解。
  • 无监督学习与人类通过自己的经验学习思考非常相似,这使得它更接近真正的人工智能。
  • 无监督学习适用于未标记和未分类的数据,这使得无监督学习更加重要。
  • 在现实世界中,我们并不总是有输入数据和相应的输出,因此为了解决这种情况,我们需要无监督学习。

2. 3 无监督学习的工作原理

下图可以理解无监督学习的工作原理:
监督学习与无监督学习_监督学习_03
在这里,我们采用了未标记的输入数据,这意味着它没有分类,也没有给出相应的输出。现在,这些未标记的输入数据被输入机器学习模型以对其进行训练。首先,它将解释原始数据以从数据中找到隐藏的模式,然后应用合适的算法,如 k-means 聚类、决策树等。

一旦应用了合适的算法,该算法就会根据对象之间的相似性和差异性将数据对象分组。

2.4 无监督学习算法的类型

无监督学习算法可以进一步分为两类问题:聚类关联

  • 聚类:聚类是一种将对象分组为聚类的方法,使得具有最多相似性的对象保留在一个组中,并且与另一组的对象具有较少或没有相似性。聚类分析发现数据对象之间的共性,并根据这些共性的存在和不存在对它们进行分类。
  • 关联:关联规则是一种无监督学习方法,用于查找大型数据库中变量之间的关系。它确定在数据集中一起出现的项目集。关联规则使营销策略更加有效。例如购买 X 商品(假设是面包)的人也倾向于购买 Y(黄油/果酱)商品。关联规则的一个典型例子是市场篮子分析。

2.5 无监督学习算法

以下是一些流行的无监督学习算法:

  • K-means 聚类
  • KNN(k-最近邻)
  • 层次聚类
  • 异常检测
  • 神经网络
  • 主成分分析
  • 独立成分分析
  • 先验算法
  • 奇异值分解

2.6 无监督学习的优势

  • 与监督学习相比,无监督学习用于更复杂的任务,因为在无监督学习中,我们没有标记的输入数据。
  • 无监督学习更可取,因为与标记数据相比,它更容易获得未标记数据。

2.7 无监督学习的缺点

  • 无监督学习本质上比监督学习更难,因为它没有相应的输出。
  • 无监督学习算法的结果可能不太准确,因为输入数据没有标记,并且算法事先不知道确切的输出。