📔
国科大模式识别与机器学习笔记 2023
  • 课程概况
  • 第一章 概述
    • 1.1 概述
  • 第二章 生成式分类器
    • 2.1 模式识别与机器学习的目标
    • 2.2 正态分布模式的贝叶斯分类器
    • 2.3 均值向量和协方差矩阵的参数估计
    • 附 第二章作业
  • 第三章 判别式分类器
    • 3.1 判别式分类器与生成式分类器
    • 3.2 线性判别函数
    • 3.3 广义线性判别函数
    • 3.4 Fisher线性判别
    • 3.5 感知器算法
    • 3.6 可训练的确定性分类器的迭代算法
    • 3.7 势函数法
    • 3.8 决策树
    • 附 第三章作业
  • 第四章 特征选择和提取
    • 4.1 模式类别可分性的测度
    • 4.2 特征选择
    • 4.3 离散K-L变换
    • 附 第四章作业
  • 第五章 统计机器学习
    • 5.1 机器学习简介
    • 5.2 统计机器学习
  • 第六章 有监督学习
    • 6.1 有监督学习
    • 6.2 回归任务
    • 6.3 分类问题
    • 附 第六章作业
  • 第七章 支持向量机
    • 7.1 线性支持向量机
    • 7.2 核支持向量机
    • 7.3 序列最小优化算法
    • 附 第七章作业
  • 第八章 聚类
    • 8.1 基本概念
    • 8.2 经典聚类算法
    • 附 第八章作业
  • 第九章 降维
    • 9.1 基本概念
    • 9.2 维度选择
    • 9.3 维度抽取
  • 第十章 半监督学习
    • 10.1 基本概念
    • 10.2 半监督学习算法
  • 第十一章 概率图模型
    • 11.1 PGM简介
    • 11.2 有向图模型(贝叶斯网络)
    • 11.3 无向图模型(马尔科夫随机场)
    • 11.4 学习和推断
    • 11.5 典型概率图模型
    • 附 第十一章作业
  • 第十二章 集成学习
    • 12.1 简介
    • 12.2 Bagging
    • 12.3 Boosting
    • 附 第十二章作业
由 GitBook 提供支持
在本页
  • 题目
  • 解
  • 附加

这有帮助吗?

在GitHub上编辑
  1. 第二章 生成式分类器

附 第二章作业

题目

设以下模式类别具有正态概率密度函数:

ω1:{(0 0)T,(2 0)T,(2 2)T,(0 2)T}ω2:{(4 4)T,(6 4)T,(6 6)T,(4 6)T}\omega_1 : \{(0\ 0)^T,(2\ 0)^T,(2\ 2)^T,(0\ 2)^T\} \\ \omega_2 : \{(4\ 4)^T,(6\ 4)^T,(6\ 6)^T,(4\ 6)^T\}ω1​:{(0 0)T,(2 0)T,(2 2)T,(0 2)T}ω2​:{(4 4)T,(6 4)T,(6 6)T,(4 6)T}

(1)设P(ω1)=P)ω2=12P(\omega_1)=P)\omega_2=\frac{1}{2}P(ω1​)=P)ω2​=21​,求这两类模式之间的贝叶斯判别界面方程式。

(2)绘出判别界面。

解

(1)判别界面方程式

由

mi=1N∑j=1NixijCi=1N∑j=1Ni(xij−mi)(xij−mi)Tm_i = \frac{1}{N}\sum_{j=1}^{N_i}x_{ij} \\ C_i = \frac{1}{N}\sum_{j=1}^{N_i}(x_{ij}-m_i)(x_{ij}-m_i)^Tmi​=N1​j=1∑Ni​​xij​Ci​=N1​j=1∑Ni​​(xij​−mi​)(xij​−mi​)T

得:

m1=14∑j=14x1j=(1 1)Tm2=14∑j=14x2j=(5 5)TC1=14∑j=14(x1j−m1)(x1j−m1)T=(1001)C2=14∑j=14(x2j−m2)(x2j−m2)T=(1001)C−1=(1001)\begin{align} &m_1 =\frac14\sum_{j=1}^4x_{1j}= (1\ 1)^T \nonumber \\ &m_2 =\frac14\sum_{j=1}^4x_{2j}= (5\ 5)^T \\ &C_1 = \frac14\sum_{j=1}^4(x_{1j}-m_1)(x_{1j}-m_1)^T= \begin{pmatrix} 1 & 0\\ 0 & 1 \end{pmatrix} \\ &C_2 = \frac14\sum_{j=1}^4(x_{2j}-m_2)(x_{2j}-m_2)^T= \begin{pmatrix} 1 & 0\\ 0 & 1 \end{pmatrix} \\ &C^{-1}= \begin{pmatrix} 1 & 0\\ 0 & 1 \end{pmatrix} \end{align}​m1​=41​j=1∑4​x1j​=(1 1)Tm2​=41​j=1∑4​x2j​=(5 5)TC1​=41​j=1∑4​(x1j​−m1​)(x1j​−m1​)T=(10​01​)C2​=41​j=1∑4​(x2j​−m2​)(x2j​−m2​)T=(10​01​)C−1=(10​01​)​​

带入判别式有:

d1(x)−d2(x)=ln⁡P(ω1)−ln⁡P(ω2)+(m1−m2)TC−1x−12m1TC−1m1+12m2TC−1m2=−4x1−4x2+24=0\begin{align} d_1(x) - d_2(x) &= \ln P(\omega_1) - \ln P(\omega_2) + (m_1 - m_2)^TC^{-1}x - \frac{1}{2}m_1^TC^{-1}m_1 + \frac{1}{2}m_2^TC^{-1}m_2 \nonumber \\ &=-4x_1-4x_2 + 24 = 0 \end{align}d1​(x)−d2​(x)​=lnP(ω1​)−lnP(ω2​)+(m1​−m2​)TC−1x−21​m1T​C−1m1​+21​m2T​C−1m2​=−4x1​−4x2​+24=0​​

(2)绘图

绘制图像如下图所示:

附加

使用python实现:

import numpy as np
import matplotlib.pyplot as plt

w1 = np.array([[0, 0], [2, 0], [2, 2], [0, 2]])
w2 = np.array([[4, 4], [6, 4], [6, 6], [4, 6]])

m1 = np.mean(w1, axis=0)
m2 = np.mean(w2, axis=0)

cov1 = np.cov(w1.T, bias=True)
cov2 = np.cov(w2.T, bias=True)

inv_cov1 = np.linalg.inv(cov1)
inv_cov2 = np.linalg.inv(cov2)

w = np.dot((m1 - m2), inv_cov1)
b = -0.5 * np.dot(m1, np.dot(inv_cov1, m1)) + 0.5 * np.dot(m2, np.dot(inv_cov2, m2))


def discriminant_function(_x):
    return -(w[0] * _x + b) / w[1]


x = np.linspace(-2, 7, 100)
plt.plot(x, discriminant_function(x), 'r-', label='Discriminant')
plt.scatter(w1[:, 0], w1[:, 1], c='blue', label='ω1')
plt.scatter(w2[:, 0], w2[:, 1], c='green', label='ω2')
plt.legend()

plt.show()
上一页2.3 均值向量和协方差矩阵的参数估计下一页3.1 判别式分类器与生成式分类器

最后更新于1年前

这有帮助吗?

image-20230925093502582