IT评测·应用市场-qidao123.com技术社区

标题: 机械学习底子-6.更多分类-数据建模与机械智能课程自留 [打印本页]

作者: 半亩花草    时间: 2025-2-18 10:20
标题: 机械学习底子-6.更多分类-数据建模与机械智能课程自留
本节目的:

回首:分类问题

上一节,我们使用逻辑回归(logistic regression)计算标签出现的概率,接下来会使用这些概率并通过 “阈值”(thresholds)来对标签进行预测。
阈值
在某些应用中,必要做出预测,而不但仅是估计标签的概率。将条件概率                                   P                         (                         y                         =                         l                         ∣                                   x                            0                                  )                              \mathbb{P}(y = l|x_0)                  P(y=l∣x0​)转换为标签预测的一种简单方法是                                        f                            (                                       x                               0                                      )                            =                                                                arg                                     ⁡                                     max                                     ⁡                                              l                                                 P                            (                            y                            =                            l                            ∣                                       x                               0                                      )                                  f(x_0)=\underset{l}{\arg\max}\mathbb{P}(y = l|x_0)                     f(x0​)=largmax​P(y=l∣x0​)
符号含义

二分类问题
在二分类(类别为                                   {                         0                         ,                         1                         }                              \{0, 1\}                  {0,1})的环境下,这等同于设置:当                                   P                         (                         y                         =                         1                         ∣                                   x                            0                                  )                         >                         0.7                              \mathbb{P}(y = 1|x_0)>0.7                  P(y=1∣x0​)>0.7时,                                   f                         (                                   x                            0                                  )                         =                         1                              f(x_0)=1                  f(x0​)=1;否则                                   f                         (                                   x                            0                                  )                         =                         0                              f(x_0)=0                  f(x0​)=0。这里必要指出,0.7这个阈值虽然直观,但也是一个任意的选择。
                                         f                            (                                       x                               0                                      )                            =                                       {                                                                                     1                                                                                                             if                                               P                                              (                                              y                                              =                                              1                                              ∣                                                               x                                                 0                                                              )                                              >                                              0.7                                                                                                                                  0                                                                                             otherwise                                                                                              f(x_0)=\begin{cases} 1 & \text{if } \mathbb{P}(y = 1|x_0) > 0.7 \\ 0 & \text{otherwise} \end{cases}                     f(x0​)={10​if P(y=1∣x0​)>0.7otherwise​
二分类问题中,不同的阈值会导致产生不同的分类模型,分析如下:
二分类的混淆矩阵


显然,改变阈值 T ,将会改变模型的性能,因为这会对分类边界产生影响:

混淆矩阵

混淆矩阵是机器学习中用于评估分类模型性能的紧张工具,尤其在二分类和多分类使命里广泛应用。
在给定阈值                                    T                         ∈                         N                              T\in\mathbb{N}                  T∈N 和分类模型                                    p                         (                         x                         )                              p(x)                  p(x) 时:

指标计算公式
真正率(TPR)、假负率(FNR)、假正率(FPR)和真负率(TNR)的计算公式:

评估指标:灵敏度和特异度

回首一下回归问题和分类问题的评估指标:

在二分类或多分类问题中,存在其他指标:

在评判模型时,优先思量灵敏度照旧特异度,取决于应用场景以及数据科学家的偏好:

例子
这里展示了一个关于聚合酶链式反应(PCR)和侧向流检测(LFD)的新冠病毒(COVID)检测效果的混淆表:

行和列的含义:行表示LFD检测效果(阳性“LFD +ve”和阴性“LFD -ve”),列表示PCR检测效果(阳性“PCR +”和阴性“PCR -”),同时另有对应PCR和COVID的总计列和行。
请你分别计算PCR和LFD的灵敏度和特异度。
PCR检测的灵敏度和特异度计算

LFD检测的灵敏度和特异度计算

ROC 曲线

笔墨分析部分

分类模型的性能通常通过绘制受试者工作特征(ROC)曲线来分析。
对于给定的分类模型,针对不同的阈值取值                                   {                                   T                            1                                  ,                         …                         ,                                   T                            l                                  }                         ⊂                         [                         0                         ,                         1                         ]                              \{T_1, \ldots, T_l\} \subset [0, 1]                  {T1​,…,Tl​}⊂[0,1],绘制真正率(TPR)与假正率(FPR)的关系图,从而得到ROC曲线。
我们期望找到一个真正率                                   T                         P                         R                         =                         1                              TPR = 1                  TPR=1且假正率                                   F                         P                         R                         =                         0                              FPR = 0                  FPR=0的分类器。


AUC:ROC曲线下面积



AUC,即ROC曲线下面积,为分类器在所有阈值下的性能提供了一个度量指标。
  1. - 理论上,最好的分类器的AUC为1。
  2. - 存在一个阈值$T>0$,此时真正率$TPR = 1$(所有真正例数据点都被预测为正类)且假正率$FPR = 0$(所有真负例数据点都被预测为负类)。
  3. - 当把阈值降低到$T = 0$时,所有情况都被预测为正类,所以曲线必须经过点$(FPR, TPR)=(1, 1)$。
复制代码
支持向量机

思绪

分离数据点

到目前为止,我们把基于数据进行预测的问题看成一个函数拟合问题,即实验学习                                   y                         =                         f                         (                         x                         )                              y = f(x)                  y=f(x)。
让我们实验一种不同的方法!
对于二分类问题,可以从几何角度来对待这个问题。我们必要将空间分成两部分,分别代表不同的类别标签。并且提到有很多方法可以分割                                             R                            n                                       \mathbb{R}^n                  Rn空间(                                   n                              n                  n 维实数空间)。
思绪:找到具有最大“间隔”的线

我们希望找到一条与数据之间具有最大“间隔”的直线。为了实现这一点,我们将构建一个优化问题。
为了构建这个优化问题,我们必须使用线性代数来刻画这个“间隔”。
补充配景知识

点积



超平面(HYPERPLANES


示例

超平面的法向量


图中标注了两个位于超平面上的点                                             x                            1                                       x_1                  x1​和                                             x                            2                                       x_2                  x2​,向量                                   v                         =                                   x                            1                                  −                                   x                            2                                       v = x_1 - x_2                  v=x1​−x2​是超平面的切线向量。绿色箭头表示超平面的法向量                                             θ                                       ∥                               θ                                           ∥                                  2                                                       ∈                                   R                            n                                       \frac{\theta}{\|\theta\|_2} \in \mathbb{R}^n                  ∥θ∥2​θ​∈Rn,它垂直于超平面。超平面的数学表达式为                                   {                         x                         ∈                                   R                            n                                  :                                   θ                            0                                  +                                   θ                            T                                  x                         =                         0                         }                              \{x \in \mathbb{R}^n: \theta_0 + \theta^T x = 0\}                  {x∈Rn:θ0​+θTx=0}。
回首向量点积公式                                   x                         ⋅                         y                         =                         ∥                         x                                   ∥                            2                                  ∥                         y                                   ∥                            2                                  cos                         ⁡                         θ                              x \cdot y = \|x\|_2\|y\|_2 \cos\theta                  x⋅y=∥x∥2​∥y∥2​cosθ,如果                                   x                         ⋅                         y                         =                         0                              x \cdot y = 0                  x⋅y=0,那么                                   θ                         =                                   π                            2                                       \theta = \frac{\pi}{2}                  θ=2π​或                                                        3                               π                                      2                                       \frac{3\pi}{2}                  23π​,即向量                                   x                              x                  x和                                   y                              y                  y正交。

到超平面的最小距离


在                                             R                            n                                       \mathbb{R}^n                  Rn空间中,一个超平面                                   {                         x                         ∈                                   R                            n                                  :                                   θ                            0                                  +                                   θ                            T                                  x                         =                         0                         }                              \{x \in \mathbb{R}^n: \theta_0 + \theta^T x = 0\}                  {x∈Rn:θ0​+θTx=0}(蓝色直线代表超平面在二维空间的示意),以及空间中的一点                                   y                         ∈                                   R                            n                                       y \in \mathbb{R}^n                  y∈Rn(紫色点)。
超平面的法向量为                                             θ                                       ∥                               θ                                           ∥                                  2                                                       ∈                                   R                            n                                       \frac{\theta}{\|\theta\|_2} \in \mathbb{R}^n                  ∥θ∥2​θ​∈Rn(棕色箭头)。从点                                   y                              y                  y到超平面上的点                                   z                         ∈                                   R                            n                                       z \in \mathbb{R}^n                  z∈Rn(紫色点)形成向量                                   y                         −                         z                         ∈                                   R                            n                                       y - z \in \mathbb{R}^n                  y−z∈Rn(绿色箭头),赤色箭头表示点                                   y                              y                  y到超平面的最小距离                                   d                         ∈                         R                              d \in \mathbb{R}                  d∈R。
由此推断:在                                             R                            n                                       \mathbb{R}^n                  Rn空间中,点                                   y                              y                  y到超平面                                   {                         x                         ∈                                   R                            n                                  :                                   θ                            0                                  +                                   θ                            T                                  x                         =                         0                         }                              \{x \in \mathbb{R}^n: \theta_0 + \theta^T x = 0\}                  {x∈Rn:θ0​+θTx=0}的最小距离公式:                                        d                            =                                       1                                           ∥                                  θ                                               ∥                                     2                                                             (                                       θ                               0                                      +                                       θ                               T                                      y                            )                                  d = \frac{1}{\|\theta\|_2}(\theta_0 + \theta^T y)                     d=∥θ∥2​1​(θ0​+θTy)
证实过程
- 思量超平面上的任意一点                                   z                         ∈                                   R                            n                                       z \in \mathbb{R}^n                  z∈Rn,则有                                             θ                            0                                  +                                   θ                            T                                  z                         =                         0                              \theta_0 + \theta^T z = 0                  θ0​+θTz=0。
- 最小距离是毗连点                                   z                              z                  z和                                   y                              y                  y的向量                                   y                         −                         z                              y - z                  y−z在法向量                                             θ                                       ∥                               θ                                           ∥                                  2                                                       ∈                                   R                            n                                       \frac{\theta}{\|\theta\|_2} \in \mathbb{R}^n                  ∥θ∥2​θ​∈Rn上的投影。
- 通过内积计算投影,得出                                   d                         =                         (                                   θ                                       ∥                               θ                                           ∥                                  2                                                                 )                            T                                  (                         y                         −                         z                         )                         =                                   1                                       ∥                               θ                                           ∥                                  2                                                       (                                   θ                            0                                  +                                   θ                            T                                  y                         )                              d = (\frac{\theta}{\|\theta\|_2})^T (y - z) = \frac{1}{\|\theta\|_2}(\theta_0 + \theta^T y)                  d=(∥θ∥2​θ​)T(y−z)=∥θ∥2​1​(θ0​+θTy) 。
数据集与超平面的间隔


在                                             R                            n                                       \mathbb{R}^n                  Rn空间中的一个超平面                                   {                         x                         ∈                                   R                            n                                  :                                   θ                            0                                  +                                   θ                            T                                  x                         =                         0                         }                              \{x \in \mathbb{R}^n: \theta_0 + \theta^T x = 0\}                  {x∈Rn:θ0​+θTx=0}(蓝色直线示意超平面在二维空间的环境),以及五个数据点                                             x                            1                                  ,                                   x                            2                                  ,                                   x                            3                                  ,                                   x                            4                                  ,                                   x                            5                                  ∈                                   R                            n                                       x_1, x_2, x_3, x_4, x_5 \in \mathbb{R}^n                  x1​,x2​,x3​,x4​,x5​∈Rn(紫色点)。从每个数据点到超平面都有一个最小距离,分别用                                             d                            1                                  ,                                   d                            2                                  ,                                   d                            3                                  ,                                   d                            4                                  ,                                   d                            5                                       d_1, d_2, d_3, d_4, d_5                  d1​,d2​,d3​,d4​,d5​(赤色箭头)表示。

数据集与超平面的最大间隔


上图展示了一个超平面                                   {                         x                         ∈                                   R                            n                                  :                                   θ                            0                                  +                                   θ                            T                                  x                         =                         0                         }                              \{x \in \mathbb{R}^n: \theta_0 + \theta^T x = 0\}                  {x∈Rn:θ0​+θTx=0}(蓝色直线示意其在二维空间的情形),以及五个带标签的数据点                                             x                            1                                  ,                                   x                            2                                  ,                                   x                            3                                  ,                                   x                            4                                  ,                                   x                            5                                  ∈                                   R                            n                                       x_1, x_2, x_3, x_4, x_5 \in \mathbb{R}^n                  x1​,x2​,x3​,x4​,x5​∈Rn。
此中,                                             y                            1                                  =                         +                         1                              y_1 = +1                  y1​=+1,                                             y                            2                                  =                         +                         1                              y_2 = +1                  y2​=+1,                                             y                            3                                  =                         +                         1                              y_3 = +1                  y3​=+1(紫色点),                                             y                            4                                  =                         −                         1                              y_4 = -1                  y4​=−1,                                             y                            5                                  =                         −                         1                              y_5 = -1                  y5​=−1(绿色点)。从每个数据点到超平面都有一个距离,分别用                                             d                            1                                  ,                                   d                            2                                  ,                                   d                            3                                  ,                                   d                            4                                  ,                                   d                            5                                       d_1, d_2, d_3, d_4, d_5                  d1​,d2​,d3​,d4​,d5​(赤色箭头)表示。
假设数据点被标记为两类                                             y                            i                                  ∈                         {                         −                         1                         ,                         +                         1                         }                              y_i \in \{-1, +1\}                  yi​∈{−1,+1}。为了使超平面正确分类数据点,要求当                                             y                            i                                  =                         +                         1                              y_i = +1                  yi​=+1时,                                             θ                            0                                  +                                   θ                            T                                            x                            i                                  >                         0                              \theta_0 + \theta^T x_i > 0                  θ0​+θTxi​>0;当                                             y                            i                                  =                         −                         1                              y_i = -1                  yi​=−1时,                                             θ                            0                                  +                                   θ                            T                                            x                            i                                  <                         0                              \theta_0 + \theta^T x_i < 0                  θ0​+θTxi​<0。这个条件可以简化为                                             y                            i                                  (                                   θ                            0                                  +                                   θ                            T                                            x                            i                                  )                         >                         0                              y_i(\theta_0 + \theta^T x_i) > 0                  yi​(θ0​+θTxi​)>0,进一步修改为                                             y                            i                                            d                            i                                  =                                              y                               i                                                 ∥                               θ                                           ∥                                  2                                                       (                                   θ                            0                                  +                                   θ                            T                                            x                            i                                  )                         >                         0                              y_id_i = \frac{y_i}{\|\theta\|_2}(\theta_0 + \theta^T x_i) > 0                  yi​di​=∥θ∥2​yi​​(θ0​+θTxi​)>0。
我们希望找到一个既能正确分类数据点,又具有最大间隔的超平面。因此,必要求解一个优化问题:在约束条件                                                               y                                  i                                                      ∥                                  θ                                               ∥                                     2                                                             (                                       θ                               0                                      +                                       θ                               T                                                 x                               i                                      )                            ≥                            M                                  \frac{y_i}{\|\theta\|_2}(\theta_0 + \theta^T x_i) \geq M                     ∥θ∥2​yi​​(θ0​+θTxi​)≥M(对于                                   i                         ∈                         {                         1                         ,                         …                         ,                         N                         }                              i \in \{1, \ldots, N\}                  i∈{1,…,N})下,最大化                                   M                              M                  M,此中                                   M                              M                  M代表间隔。
进一步简化最大间隔问题


简化的依据:

简化后的最大间隔问题:

感知机(PERCEPTRON)


上方展示了感知机的布局示意图:

感知机学习算法

为了符号表示的方便,通过在数据中添加一行1来吸取                                             θ                            0                                       \theta_0                  θ0​,并定义                                   w                         :                         =                                   (                                                                                             θ                                           0                                                                                                                        θ                                                                          )                                       w := \begin{pmatrix} \theta_0 \\ \theta \end{pmatrix}                  w:=(θ0​θ​)。此时分类模型为                                   f                         (                         x                         )                         =                         s                         g                         n                         (                                   w                            T                                  x                         )                              f(x) = sgn(w^T x)                  f(x)=sgn(wTx),这个模型通常被称为感知机。
感知机学习算法的流程:
支持向量


展示了一个二维平面(示意                                             R                            n                                       \mathbb{R}^n                  Rn空间),此中有:

线性不可分数据集



不可分环境

线性不可分有两种环境,以下是第一种:

优化问题:

松懈变量                                             ϵ                            i                                       \epsilon_i                  ϵi​分析:

线性不可分第二种:非线性决策边界

优化问题照旧在参数                                             θ                            0                                       \theta_0                  θ0​和                                   θ                              \theta                  θ上最大化                                   M                              M                  M。
约束条件:                                        ∥                            θ                                       ∥                               2                               2                                      =                            1                            ,                                       y                               i                                      (                                       θ                               0                                      +                                       θ                               T                                      Φ                            (                                       x                               i                                      )                            )                            ≥                            M                            (                            1                            −                                       ϵ                               i                                      )                            ,                            对于                            i                            ∈                            {                            1                            ,                            …                            ,                            N                            }                            ,                                       ϵ                               i                                      ≥                            0                            且                                       ∑                                           i                                  =                                  1                                          N                                                 ϵ                               i                                      ≤                            C                                  \|\theta\|_2^2 = 1,y_i(\theta_0 + \theta^T \Phi(x_i)) \geq M(1 - \epsilon_i),\text{对于}i \in \{1, \ldots, N\},\epsilon_i \geq 0\text{且}\sum_{i = 1}^{N} \epsilon_i \leq C                     ∥θ∥22​=1,yi​(θ0​+θTΦ(xi​))≥M(1−ϵi​),对于i∈{1,…,N},ϵi​≥0且i=1∑N​ϵi​≤C
表明                                   Φ                         (                         x                         )                              \Phi(x)                  Φ(x):                                   Φ                         (                         x                         )                         :                         =                         [                                   ϕ                            1                                  (                         x                         )                         ,                         …                         ,                                   ϕ                            m                                  (                         x                         )                                   ]                            T                                       \Phi(x) := [\phi_1(x), \ldots, \phi_m(x)]^T                  Φ(x):=[ϕ1​(x),…,ϕm​(x)]T,此中                                   {                                   ϕ                            k                                  (                         x                         )                                   }                                       k                               =                               1                                      m                                       \{\phi_k(x)\}_{k = 1}^{m}                  {ϕk​(x)}k=1m​是一组基函数。比方,多项式基函数                                             ϕ                            k                                  (                         x                         )                         =                                   x                            k                                       \phi_k(x) = x^k                  ϕk​(x)=xk。
对于这种环境,我们将原始状态空间                                   x                         ∈                                   R                            n                                       x \in \mathbb{R}^n                  x∈Rn扩展为                                   z                         =                         Φ                         (                         x                         )                         ∈                                   R                            m                                       z = \Phi(x) \in \mathbb{R}^m                  z=Φ(x)∈Rm。以求在更高维度中求解最优分离超平面,并将决策边界投影回原始维度。可以通过添加更多基函数,类似于在线性回归中的做法,能够捕获非线性的真实模型。
可视化高维增强状态如下图:

支持向量机


核函数(kernel functions)是用于度量两个向量之间的距离。以下是三种常见核函数的表达式:

相识支持向量机的具体细节超出了本课程的范围,只必要大概知道就行了。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/) Powered by Discuz! X3.4