#!/usr/bin/env python # coding: utf-8 # 第$j$个输入实例$x$的特征向量 # \begin{align*} \\& x_{j} = \left( x_{j}^{\left(1\right)},x_{j}^{\left(2\right)}, \cdots, x_{j}^{\left(i\right)}, \cdots, x_{j}^{\left(n\right)} \right)^{T}, \quad i=1,2,\cdots,n; \quad j=1,2,\cdots,N \end{align*} # 其中,$x_{j}^{\left(i\right)}$表示第$j$个输入实例的第$i$个特征。 # 监督学习的训练数据集合由输入(特征向量)与输出对组成 # \begin{align*} \\& T = \left\{ \left( x_{1}, y_{1} \right), \left( x_{2}, y_{2} \right), \cdots, \left( x_{N}, y_{N} \right) \right\} \end{align*} # 假设空间$\mathcal{F}$定义为决策函数的集合 # \begin{align*} \\& \mathcal{F} = \left\{ f | Y = f \left( X \right) \right\} \end{align*} # 其中,$X$是定义在输入空间$\mathcal{X}$上的变量,$Y$是定义在输入空间$\mathcal{}$上的变量。 # 假设空间$\mathcal{F}$通常是由一个参数向量决定的函数族 # \begin{align*} \\& \mathcal{F} = \left\{ f | Y = f_{\theta} \left( X \right), \theta \in R^{n} \right\} \end{align*} # 其中,参数向量$\theta$取值于$n$维向量空间$R^{n}$,称为参数空间。 # 假设空间$\mathcal{F}$也可定义为条件概率的集合 # \begin{align*} \\& \mathcal{F} = \left\{ P | P \left( Y | X \right) \right\} \end{align*} # 其中,$X$是定义在输入空间$\mathcal{X}$上的随机变量,$Y$是定义在输入空间$\mathcal{}$上的随机变量。 # 假设空间$\mathcal{F}$通常是由一个参数向量决定的概率分布族 # \begin{align*} \\& \mathcal{F} = \left\{ P | P_{\theta} \left( Y | X \right), \theta \in R^{n} \right\} \end{align*} # 其中,参数向量$\theta$取值于$n$维向量空间$R^{n}$,称为参数空间。 # 损失函数(代价函数)来度量预测错误的程度,是预测输出$f\left(X\right)$和实际输出$Y$的非负实值函数,记作$L \left(Y, f \left( X \right) \right)$。 # 0-1损失函数 # \begin{align*} L \left(Y, f \left( X \right) \right) = \left\{ # \begin{aligned} # \ & 1, Y \neq f \left( X \right) # \\ & 0, Y = f \left( X \right) # \end{aligned} # \right.\end{align*} # 平方损失函数 # \begin{align*} L \left(Y, f \left( X \right) \right) = \left( Y - f \left( X \right) \right)^{2} \end{align*} # 绝对值损失函数 # \begin{align*} L \left(Y, f \left( X \right) \right) = \left| Y - f \left( X \right) \right| \end{align*} # 绝对值损失函数(对数似然损失函数) # \begin{align*} L \left(Y, f \left( X \right) \right) = - \log P \left( Y | X \right) \end{align*} # 风险损失(期望损失)是模型$f\left(X\right)$关于联合概率分布$P\left(X,Y\right)$的平均意义下的损失 # \begin{align*} R_{exp} \left( f \right) = E_{P} \left[L \left(Y, f \left( X \right) \right) \right] = \int_{\mathcal{X} \times \mathcal{Y}} L \left(Y, f \left( X \right) \right) P \left(x,y\right) dxdy \end{align*} # 经验风险(经验损失)是模型$f\left(X\right)$关于训练数据集 # \begin{align*} \\& T = \left\{ \left( x_{1}, y_{1} \right), \left( x_{2}, y_{2} \right), \cdots, \left( x_{N}, y_{N} \right) \right\} \end{align*} # 的平均损失 # \begin{align*} R_{emp} \left( f \right) = \dfrac{1}{N} \sum_{i=1}^{N} L \left(y_{i}, f \left( x_{i} \right) \right) \end{align*} # 经验风险最小化 # \begin{align*} \min_{f \in \mathcal{F}} \dfrac{1}{N} \sum_{i=1}^{N} L \left(y_{i}, f \left( x_{i} \right) \right) \end{align*} # 其中,$\mathcal{F}$是假设空间。 # 结构风险最小化 # \begin{align*} \min_{f \in \mathcal{F}} \dfrac{1}{N} \sum_{i=1}^{N} L \left(y_{i}, f \left( x_{i} \right) \right) + \lambda J \left(f\right) \end{align*} # 其中,$J \left(f\right)$是模型复杂度,是增则化项,是定义在建设空间$\mathcal{F}$上的泛函;$\lambda \geq 0$是系数,用以权衡风险和模型复杂度。 # 正则化项可以是参数向量的$L_{2}$范数 # \begin{align*} L_{2} = \| w \|\end{align*} # 其中,$\|w\|$表示参数向量$w$的$L_{2}$范数。 # 正则化项可以是参数向量的$L_{1}$范数 # \begin{align*} L_{1} = \| w \|_{1} \end{align*} # 其中,$\|w\|_{1}$表示参数向量$w$的$L_{1}$范数。 # 训练误差是模型$Y = \hat f \left(X\right)$关于训练数据集的平均损失 # \begin{align*} R_{emp} \left( \hat f \right) = \dfrac{1}{N} \sum_{i=1}^{N} L \left(y_{i}, \hat f \left( x_{i} \right) \right) \end{align*} # 其中,$N$是训练样本容量。 # 测试误差是模型$Y = \hat f \left(X\right)$关于测试数据集的平均损失 # \begin{align*} e_{test} = \dfrac{1}{N'} \sum_{i=1}^{N'} L \left(y_{i}, \hat f \left( x_{i} \right) \right) \end{align*} # 其中,$N'$是测试样本容量。 # 当损失函数是0-1损失,测试误差即测试集上的误差率 # \begin{align*} e_{test} = \dfrac{1}{N‘} \sum_{i=1}^{N’} I \left( y_{i} \neq \hat f \left(x_{i} \right) \right) \end{align*} # 其中,$I$是指示函数,即$y \neq \hat f \left( x \right)$时为1,否则为0。 # 测试集上的准确率 # \begin{align*} r_{test} = \dfrac{1}{N‘} \sum_{i=1}^{N’} I \left( y_{i} = \hat f \left(x_{i} \right) \right) \end{align*} # 则,$r_{test} + e_{test} = 1 $。 # 生成方法由数据学习联合概率分布$P\left(X,Y\right)$,然后求出条件概率分布$P\left(Y|X\right)$作为预测的模型,即生成模型 # \begin{align*} P\left(Y|X\right) = \dfrac{P\left(X,Y\right)}{P\left(X\right)}\end{align*} # 判别方法由数据直接学习决策函数$f\left(X\right)$或者条件概率分布$P\left(Y|X\right)$作为预测的模型,即判别模型。 # TP——将正类预测为正类; # FN——将正类预测为负类; # FP——将负类预测为正类; # TN——将负类预测为负类。 # 精确率 # \begin{align*} P = \dfrac{TP}{TP+FP}\end{align*} # 召回率 # \begin{align*} R = \dfrac{TP}{TP+FN}\end{align*} # $F_{1}$值是精确率和召回率的调和均值 # \begin{align*} \\ & \dfrac{2}{F_{1}} = \dfrac{1}{P} + \dfrac{1}{R} # \\ & F_{1} = \dfrac{2TP}{2TP+FP+FN}\end{align*} # In[ ]: