2 监督学习

2.1 由实例学习类

假设我们要学习“家用汽车”类C,先使用一些实例进行标记,家用汽车为正,其他为负。
类学习就是寻找一个涵盖所有的正例而不包含负例的描述。
这样我们就能:
给一辆没见过的车,检查学习得到的描述,对汽车进行判断是否为家用汽车。

[egin{aligned} x=[x_1,x_2]^T \ r=egin{cases} 1 & ext{如果为正} \ 0 & ext{如果为负} end{cases} \ chi = {x^t,r^t}_{t=1}^N end{aligned} ]

专家分析,家用汽车价格和发动机功率应当在一个范围内

[egin{aligned} (p_1 le ext{价格} le p_2) and (e_1 le ext{功率} le e_2) end{aligned} ]

这样有了一个假设(h in H),尽可能的逼近类C

[h(x)=egin{cases} 1 & ext{如果h预测x为正} \ 0 & ext{如果h预测x为负} end{cases} ]

那么就有了误差,假设误差为:

[E(h|chi)= overset{N}{underset{t=1}{sum}} 1(h(x^t eq r^t)) ]

2.2 VC维

假设一个二分类问题,有N个样本,那么对于这N个样本有(2^N)个分类方法,可以定义(2^N)个学习方法。
那么对于任意一个问题我们都能找到一个假设(hin H)分类,那么我们就称H散列N个点。
H的散列的点的最大数量成为H的VC维,记为VC(H),用来度量假设类H的学习能力。

2.3 概率逼近正确学习

概率逼近正确学习中,给定类C和未知但具有确定分布(p(x))中取样,置信率(delta le 1/2),误差(epsilon > 0)

[P{CDelta h le epsilon } ge 1-delta ]

假设h误差至多为(epsilon)的概率为(1- delta),其中(CDelta h)是C与h不同的区域。
矩形有4个小条子,那么正例不落在某个小条子的概率为:(1-epsilon /4),那么对于N个实例不在小条子的概率为(4(1-epsilon /4)^N)(落在小条子里面为判断错误)我们希望最大值为(delta).
因为有公式:((1-x) le exp[-x])
代入到公式有:(4exp[-epsilon N/4] le delta)
整理后得到:(N ge (4/epsilon)log(4/delta))
由此得到为了保证 置信率(delta ,epsilon)至少需要:(N ge (4/epsilon)log(4/delta))个样本。

2.5 学习多类

假设有K个类,标记为(C_i,i=1,……,K)
假设数据集,(chi = {x^t,r^t}_{t=1}^N)
r是K维的,有:

[r_i^t=egin{cases} 1 & ext{如果} x_t in C_i \ 0 & ext{如果} x_t in C_j, j eq i end{cases} ]

对于预测有:

[h_i(x^t)=egin{cases} 1 & ext{如果} x_t in C_i \ 0 & ext{如果} x_t in C_j, j eq i end{cases} ]

则误差有:

[E({h_i}_{i=1}^K|chi)=underset{t=1}{overset{N}{sum}}underset{i=1}{overset{K}{sum}}1(h_i(x^t) eq r_i^t) ]

2.6 回归

假设数据集,(chi = {x^t,r^t}_{t=1}^N)
我们希望找出一个函数(r^t=operatorname{f}(x^t))
若加上噪声(r^t=operatorname{f}(x^t)+varepsilon)
对于噪声的解释就是,存在我们无法观测的额外隐藏变量(r^t=operatorname{f}(x^t,z^t))(z^t)就是隐藏变量。
有误差函数:

[E(g|chi)= frac 1 N overset{N}{underset{t=1}{sum}} [ r^t - g(x^t)]^2 ]

假设x是线性的,我们有:

[g(x)=overset{N}{underset{t=1}{sum}}w_jx_j+w_0 ]

假设只有一个参数:

[egin{aligned} g(x) &=w_1x+w_0 \ E(g|chi)&= frac 1 N overset{N}{underset{t=1}{sum}} [ r^t - (w_1x^t+w_0)]^2 end{aligned} ]

(w_0,w_1)偏导为0,先求(w_0)在代入到对(w_1)求偏导的公式中得到:

[egin{aligned} w_0&=ar r-w_1ar x \ w_1&=frac{underset{t}{sum}x^tr^t - Nar{x}ar{r}} {underset{t}{sum}(x^t)^2 - N(ar{x})^2} end{aligned} ]

如果线性模型太简单也可以修改为二次函数:(g(x)=w_2x^2+w_1x+w_0)

2.8 监督机器学习算法学习的维

假设数据集,(chi = {x^t,r^t}_{t=1}^N)
1.定义一个学习用的模型 (g(x| heta)),其中( heta)是参数
2.定义一个损失函数(operatorname{L}()),那么逼近误差或者损失是各个实例误差的和

[E( heta|chi)=underset{t}{sum}L(r^t,g(x| heta)) ]

3.最优化过程,求解参数( heta^*)使得误差最小

[ heta^*=arg underset{ heta}{min} E( heta|chi) ]

原文地址:https://www.cnblogs.com/Amaranthus/p/14419998.html