监督学习的实现步骤:
得到一个有限的训练数据集合
确定模型的假设空间,也就是所有的备选模型
确定模型选择的准则,即学习的策略
实现求解最优模型的算法
通过学习方法选择最优模型
利用学习的最优模型对新数据进行预测或分析
训练集: T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , ⋯ , ( x N , y N ) } T=\left\{\left(x_{1}, y_{1}\right),\left(x_{2}, y_{2}\right), \cdots,\left(x_{N}, y_{N}\right)\right\} T={(x1,y1),(x2,y2),⋯,(xN,yN)}
实例 x x x的特征向量: x = ( x ( 1 ) , x ( 2 ) , ⋯ , x ( n ) ) T x=\left(x^{(1)}, x^{(2)}, \cdots, x^{(n)}\right)^{T} x=(x(1),x(2),⋯,x(n))T
模型:
决策函数: F = { f ∣ Y = f θ ( X ) , θ ∈ R n } F=\left\{f | Y=f_{\theta}(X), \theta \in R^{n}\right\} F={f∣Y=fθ(X),θ∈Rn}
条件概率分布: F = { P ∣ P θ ( Y ∣ X ) , θ ∈ R n } F=\left\{P\left|P_{\theta}(Y | X), \theta \in R^{n}\right\}\right. F={P∣Pθ(Y∣X),θ∈Rn}
损失函数
L ( Y , f ( X ) ) = { 1 , Y ≠ f ( X ) 0 , Y = f ( X ) L(Y, f(X))=\left\{\begin{array}{l} 1, Y \neq f(X) \\ 0, Y=f(X) \end{array}\right. L(Y,f(X))={1,Y=f(X)0,Y=f(X)
L ( Y , f ( X ) ) = ( Y − f ( X ) ) 2 L(Y, f(X))=(Y-f(X))^{2} L(Y,f(X))=(Y−f(X))2
L ( Y , f ( X ) ) = ∣ Y − f ( X ) ∣ L(Y, f(X))=|Y-f(X)| L(Y,f(X))=∣Y−f(X)∣
L ( Y , P ( Y ∣ X ) ) = − log P ( Y ∣ X ) L(Y, P(Y \mid X))=-\log P(Y \mid X) L(Y,P(Y∣X))=−logP(Y∣X)
经验风险最小化:
min f ∈ F 1 N ∑ i = 1 N L ( y i , f ( x i ) ) \min _{f \in F} \frac{1}{N} \sum_{i=1}^{N} L\left(y_{i}, f\left(x_{i}\right)\right) f∈FminN1i=1∑NL(yi,f(xi))
结构风险最小化
min f ∈ F 1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) \min _{f \in F} \frac{1}{N} \sum_{i=1}^{N} L\left(y_{i}, f\left(x_{i}\right)\right)+\lambda J(f) f∈FminN1i=1∑NL(yi,f(xi))+λJ(f)
挑选一个最合适的算法,使得可以求解最优模型
训练误差:
1 N ∑ i = 1 N L ( y i , f ^ ( x i ) ) \frac{1}{N} \sum_{i=1}^{N} L\left(y_{i}, \widehat{f}\left(x_{i}\right)\right) N1i=1∑NL(yi,f (xi))
测试误差:
1 N ′ ∑ i = 1 N ′ L ( y i , f ^ ( x i ) ) \frac{1}{N^{\prime}} \sum_{i=1}^{N^{\prime}} L\left(y_{i}, \widehat{f}\left(x_{i}\right)\right) N′1i=1∑N′L(yi,f (xi))
多项式拟合问题
最小化结构风险:
1 N ∑ i = 1 N L ( y i , f ( x i ) ) + λ J ( f ) \frac{1}{N} \sum_{i=1}^{N} L\left(y_{i}, f\left(x_{i}\right)\right)+\lambda J(f) N1i=1∑NL(yi,f(xi))+λJ(f)
交叉验证:数据集随机划分为以下三部分,训练集(模型的训练),验证集(模型的选择),测试集(模型的评估)。
定理1.1 泛化误差上界
对于二分类问题,当假设空间是有限个函数的集合 F = { f 1 , f 2 , ⋯ , f d } F=\left\{f_{1}, f_{2}, \cdots, f_{d}\right\} F={f1,f2,⋯,fd}时, 对任意一个函数 f ∈ F f\in F f∈F, 至少以概率 1 − δ 1-\delta 1−δ,以下不等式成立:
R ( f ) ≤ R ^ ( f ) + ε ( d , N , δ ) R(f) \leq \widehat{R}(f)+\varepsilon(d, N, \delta) R(f)≤R (f)+ε(d,N,δ)
其中:
ε ( d , N , δ ) = 1 2 N ( log d + log 1 δ ) \varepsilon(d, N, \delta)=\sqrt{\frac{1}{2 N}\left(\log d+\log \frac{1}{\delta}\right)} ε(d,N,δ)=2N1(logd+logδ1)
生成方法: P ( Y ∣ X ) = P ( X , Y ) P ( X ) P(Y | X)=\dfrac{P(X, Y)}{P(X)} P(Y∣X)=P(X)P(X,Y) 。比如说,如何知道女孩子的姓名呢?生成方法就是:我要是把她爸妈建模出来,直接问她 爸妈不就行了吗?
判别方法: f ( x ) f(x) f(x)或 P ( Y ∣ X ) P(Y|X) P(Y∣X). 沿用上面例子,判别方法就是:她叫小红的概率是多少?她叫小刘的概率时多少?。。。
精确率:
P = T P T P + F P P=\frac{TP}{TP+FP} P=TP+FPTP
召回率:
R = T P T P + F N R=\frac{TP}{TP+FN} R=TP+FNTP
F1值:
2 F 1 = 1 P + 1 R F 1 = 2 T P 2 T P + F P + F N \begin{aligned} \frac{2}{F_{1}} &=\frac{1}{P}+\frac{1}{R} \\ F_{1} &=\frac{2 T P}{2 T P+F P+F N} \end{aligned} F12F1=P1+R1=2TP+FP+FN2TP
在掷硬币实验中估计出现正面向上的概率 θ \theta θ
极大似然估计:
x i = { 1 , 正 0 , 负 x i ∼ B ( 1 , θ ) x_{i}=\left\{\begin{array}{l} 1, \text { 正 } \\ 0, \text { 负 } \end{array} \quad x_{i} \sim \mathrm{B}(1, \theta)\right. xi={1, 正 0, 负 xi∼B(1,θ)
概率函数:
P ( X = x ) = θ x ( 1 − θ ) 1 − x P(X=x)=\theta^{x}(1-\theta)^{1-x} P(X=x)=θx(1−θ)1−x
似然函数:
L ( θ ) = P ( X 1 = x 1 ∣ θ ) ⋯ P ( X n = x n ∣ θ ) = ∏ i = 1 n θ x i ( 1 − θ ) 1 − x i \begin{aligned} \mathrm{L}(\theta) &=P\left(X_{1}=x_{1} \mid \theta\right) \cdots P\left(X_{n}=x_{n} \mid \theta\right) \\ &=\prod_{i=1}^{n} \theta^{x_{i}}(1-\theta)^{1-x_{i}} \end{aligned} L(θ)=P(X1=x1∣θ)⋯P(Xn=xn∣θ)=i=1∏nθxi(1−θ)1−xi
max ln L ( θ ) = ∑ i = 1 n [ ln θ x i + ln ( 1 − θ ) 1 − x i ] = ∑ i = 1 n x i ln θ + ( n − ∑ i = 1 n x i ) ln ( 1 − θ ) ∂ ln L ( θ ) ∂ θ = ∑ i = 1 n x i θ − n − ∑ j = 1 n x i 1 − θ = 0 \begin{aligned} \max \ln \mathrm{L}(\theta) &=\sum_{i=1}^{n}\left[\ln \theta^{x_{i}}+\ln (1-\theta)^{1-x_{i}}\right] \\ &=\sum_{i=1}^{n} x_{i} \ln \theta+\left(n-\sum_{i=1}^{n} x_{i}\right) \ln (1-\theta) \\ \frac{\partial \ln L(\theta)}{\partial \theta}=& \frac{\sum_{i=1}^{n} x_{i}}{\theta}-\frac{n-\sum_{j=1}^{n} x_{i}}{1-\theta}=0 \end{aligned} maxlnL(θ)∂θ∂lnL(θ)==i=1∑n[lnθxi+ln(1−θ)1−xi]=i=1∑nxilnθ+(n−i=1∑nxi)ln(1−θ)θ∑i=1nxi−1−θn−∑j=1nxi=0
估计值:
θ ^ = ∑ i = 1 n x i n \hat{\theta}=\frac{\sum_{\mathrm{i}=1}^{n} x_{i}}{n} θ^=n∑i=1nxi
输入:目标函数 f ( x ) f(x) f(x), 梯度函数 g ( x ) = Δ f ( x ) g(x)=\Delta f(x) g(x)=Δf(x),计算精度 ϵ \epsilon ϵ, 步长 η \eta η
输出: f ( x ) f(x) f(x)的极小值点 x ∗ x^{*} x∗
步骤: