Week 16: 深度学习补遗:集成学习进阶与量子计算概念入门 - 指南
2025-09-16 11:15 tlnshuju 阅读(10) 评论(0) 收藏 举报Week 16: 深度学习补遗:集成学习进阶与量子计算概念入门
摘要
本周跟随李宏毅老师的课程继续学习了Adaboost相关的知识和数学原理推导,同时根据老师的指引开始补充部分量子计算相关的基础知识。
Abstract
This week, I continued studying Adaboost-related knowledge and mathematical principle derivations in Professor Li Hongyi’s course. At the same time, following the professor’s guidance, I began supplementing some foundational knowledge related to quantum computing.
1. Adaboost
,训练好一个分类器就是Adaboost是一种Boosting的方法,其具体做法f 1 f_1f1后,调整训练集的权重,让f 1 f_1f1的正确率在调整后的训练集上降低到50%的正确率。
,对于就是在调整训练集权重时,Adaboost采用的方法f 1 f_1f1分类正确的数据,让其权重除以一个大于一的数值d 1 d_1d1;同时对于f 1 f_1f1错分的数据,让其权重乘以同样的一个数值d 1 d_1d1。
ϵ 1 = ∑ n u 1 n δ ( f 1 ( x n ) ≠ y n ^ ) ∑ n u 1 n = ∑ n u 2 n δ ( f 1 ( x n ) ≠ y n ^ ) ∑ n u 2 n ∑ n u 2 n δ ( f 1 ( x n ) ≠ y n ^ ) = ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 ∑ n u 2 n = ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 + ∑ f 1 ( x n ) = y n ^ u 1 n / d 1 \epsilon_1 =\frac{\sum_n u_1^n\delta(f_1(x^n)\neq\hat{y^n})}{\sum_n u_1^n} =\frac{\sum_n u_2^n\delta(f_1(x^n)\neq\hat{y^n})}{\sum_n u_2^n} \\ \sum_n u_2^n\delta(f_1(x^n)\neq\hat{y^n})=\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1\\ \sum_nu_2^n=\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1+\sum_{f_1(x^n)=\hat{y^n}}u_1^n/d_1ϵ1=∑nu1n∑nu1nδ(f1(xn)=yn^)=∑nu2n∑nu2nδ(f1(xn)=yn^)n∑u2nδ(f1(xn)=yn^)=f1(xn)=yn^∑u1nd1n∑u2n=f1(xn)=yn^∑u1nd1+f1(xn)=yn^∑u1n/d1
错误率ϵ 1 \epsilon_1ϵ1的计算方式是,将错误数据的权重求和,并且进行归一化。使f 1 f_1f1的正确率降低到50%具体来说就是,在f 1 f_1f1在u 1 u_1u1的KaTeX parse error: Undefined control sequence: \textless at position 11: \epsilon_1\̲t̲e̲x̲t̲l̲e̲s̲s̲ ̲0.5时,调整权重得到u 2 u_2u2使得f 1 f_1f1在u 2 u_2u2上的ϵ 2 = 0.5 \epsilon_2=0.5ϵ2=0.5,并在权重u 2 u_2u2上训练f 2 f_2f2。
∵ ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 + ∑ f 1 ( x n ) = y n ^ u 1 n / d 1 = 0.5 ∴ ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 + ∑ f 1 ( x n ) = y n ^ u 1 n / d 1 ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 = 2 ∑ f 1 ( x n ) = y n ^ u 1 n / d 1 ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 = 1 \begin{aligned} \because\frac{\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1}{\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1+\sum_{f_1(x^n)=\hat{y^n}}u_1^n/d_1}&=0.5 \\ \therefore \frac{\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1+\sum_{f_1(x^n)=\hat{y^n}}u_1^n/d_1}{\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1}&=2\\ \frac{\sum_{f_1(x^n)=\hat{y^n}}u_1^n/d_1}{\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1}=1 \end{aligned}∵∑f1(xn)=yn^u1nd1+∑f1(xn)=yn^u1n/d1∑f1(xn)=yn^u1nd1∴∑f1(xn)=yn^u1nd1∑f1(xn)=yn^u1nd1+∑f1(xn)=yn^u1n/d1∑f1(xn)=yn^u1nd1∑f1(xn)=yn^u1n/d1=1=0.5=2
这就说明∑ f 1 ( x n ) = y n ^ u 1 n / d 1 = ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 \sum_{f_1(x^n)=\hat{y^n}}u_1^n/d_1=\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1∑f1(xn)=yn^u1n/d1=∑f1(xn)=yn^u1nd1,即答对部分新的权重的总和需要等于答错部分新的权重总和。
∑ f 1 ( x n ) = y n ^ u 1 n / d 1 = ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 1 d 1 ∑ f 1 ( x n ) = y n ^ u 1 n = d 1 ∑ f 1 ( x n ) ≠ y n ^ u 1 n d 1 ∵ ϵ 1 = ∑ n u 1 n δ ( f 1 ( x n ) ≠ y n ^ ) ∑ n u 1 n ∴ ∑ n u 1 n ( 1 − ϵ 1 ) d 1 = ∑ n u 1 n ϵ 1 d 1 ∴ d 1 = ( 1 − ϵ 1 ) / ϵ 1 > 1 \begin{aligned} \sum_{f_1(x^n)=\hat{y^n}}u_1^n/d_1&=\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1 \\ \frac{1}{d_1}\sum_{f_1(x^n)=\hat{y^n}}u_1^n&=d_1\sum_{f_1(x^n)\neq\hat{y^n}}u_1^nd_1\\ \because \epsilon_1 &=\frac{\sum_n u_1^n\delta(f_1(x^n)\neq\hat{y^n})}{\sum_n u_1^n}\\ \therefore \frac{\sum_n u_1^n(1-\epsilon_1)}{d_1}&=\sum_n u_1^n\epsilon_1d_1\\ \therefore d_1=\sqrt{(1-\epsilon_1)/\epsilon_1}>1 \end{aligned}f1(xn)=yn^∑u1n/d1d11f1(xn)=yn^∑u1n∵ϵ1∴d1∑nu1n(1−ϵ1)∴d1=(1−ϵ1)/ϵ1>1=f1(xn)=yn^∑u1nd1=d1f1(xn)=yn^∑u1nd1=∑nu1n∑nu1nδ(f1(xn)=yn^)=n∑u1nϵ1d1
许可得到,用这个d 1 d_1d1去乘以或者除u 1 u_1u1,就可以生成一个可以让f 1 f_1f1Fail掉的训练集。
允许将Adaboost的步骤整理。
- 对于训练数据{ ( x 1 , y 1 ^ , u 1 1 ) , … , ( x n , y n ^ , u 1 n ) , … , ( x N , y N ^ , u 1 N ) } \{(x^1,\hat{y^1},u_1^1),\dots,(x^n,\hat{y^n},u_1^n),\dots,(x^N,\hat{y^N},u_1^N)\}{(x1,y1^,u11),…,(xn,yn^,u1n),…,(xN,yN^,u1N)},其中y ^ = ± 1 \hat{y}=\pm1y^=±1(二元分类),u 1 n = 1 u_1^n=1u1n=1(初始化为等权重)
- 对于t = 1 , … , T t=1,\dots,Tt=1,…,T:
- 用训练集权重{ u t 1 , … , u t N } \{u^1_t,\dots,u_t^N\}{ut1,…,utN}训练一个较弱的分类器f t ( x ) f_t(x)ft(x),得到其分类错误率ϵ t \epsilon_tϵt。
- 对于n = 1 , … , N n=1,\dots,Nn=1,…,N:
- 如果x n x^nxn被f t ( x ) f_t(x)ft(x)错分了,即y n ^ ≠ f t ( x n ) \hat{y^n}\neq f_t(x^n)yn^=ft(xn),那么训练集权重u t + 1 n = u t n × d t = u t n × e α t u^n_{t+1}=u^n_t\times d_t=u_t^n\times e^{\alpha_t}ut+1n=utn×dt=utn×eαt。
- 对于分类正确的情况,即y n ^ = f t ( x n ) \hat{y^n}= f_t(x^n)yn^=ft(xn),那么u t + 1 n = u t n d t = u t n × e − α t u^n_{t+1}=\frac{u^n_t}{d_t}=u^n_t\times e^{-\alpha^t}ut+1n=dtutn=utn×e−αt。
- 其中,d t = ( 1 − ϵ 1 ) / ϵ 1 d_t=\sqrt{(1-\epsilon_1)/\epsilon_1}dt=(1−ϵ1)/ϵ1,α t = ln ( 1 − ϵ 1 ) / ϵ 1 \alpha_t=\ln\sqrt{(1-\epsilon_1)/\epsilon_1}αt=ln(1−ϵ1)/ϵ1
- 即u t + 1 n ← u t n × e − y n ^ f t ( x n ) α t u^n_{t+1}\gets u_t^n\times e^{-\hat{y^n}f_t(x^n)\alpha_t}ut+1n←utn×e−yn^ft(xn)αt
2. 量子计算初步
一个集合如果满足以下运算法则就能被称为一个矢量。
- 加法结合律:u + ( v + w ) = ( u + v ) + w \bold{u}+(\bold{v}+\bold{w})=(\bold{u}+\bold{v})+\bold{w}u+(v+w)=(u+v)+w
- 加法交换律:u + v = v + u \bold{u}+\bold{v}=\bold{v}+\bold{u}u+v=v+u
- 加法幺元:存在0 ∈ V \bold{0} \in \it{V}0∈V,称为0矢量,存在对于任意v \bold{v}v有v + 0 = v \bold{v}+\bold{0}=\bold{v}v+0=v
- 加法逆元:对于任意v \bold{v}v,存在 − v ∈ V \bold{-v} \in \it{V}−v∈V,称为v \bold{v}v的逆元,令v + ( − v ) = 0 \bold{v}+(\bold{-v})=0v+(−v)=0
- 标量乘法与域乘法兼容性:a ( b v ) = ( a b ) v a(b\bold{v})=(ab)\bold{v}a(bv)=(ab)v
- 标量乘法幺元:1 v = v \bold{1v}=\bold{v}1v=v,1 \bold{1}1是F FF中的乘法单位元。
- 标量乘法对向量加法的分配率:a ( u + v ) = a u + a v a(\bold{u+v})=a\bold{u}+a\bold{v}a(u+v)=au+av
- 标量乘法对域加法的分配率:( a + b ) v = a v + b v (a+b)\bold{v}=a\bold{v}+b\bold{v}(a+b)v=av+bv
例如一个由“波函数”组成的集合,比如:H = { Spin up, Spin down } H=\{\text{Spin up, Spin down }\}H={Spin up, Spin down},描述了电子自旋的状态。使用狄拉克表示,我们许可将其表示成:∣ 0 ⟩ = Spin up , ∣ 1 ⟩ = Spin down \ket{0}=\text{Spin up},\ket{1}=\text{Spin down}∣0⟩=Spin up,∣1⟩=Spin down。∣ 0 ⟩ \ket{0}∣0⟩和∣ 1 ⟩ \ket{1}∣1⟩就被称为“量子比特”(Qubit)。这种表示方式是由狄拉克发明的,分别称为⟨ b r a ∣ \bra{bra}⟨bra∣和∣ k e t ⟩ \ket{ket}∣ket⟩。一个电子的状态就可以表示为a ∣ 0 ⟩ + b ∣ 1 ⟩ a\ket{0}+b\ket{1}a∣0⟩+b∣1⟩,其中∣ a ∣ 2 + ∣ b ∣ 2 = 1 ( a , b ∈ C ) |a|^2+|b|^2=1(a,b\in \mathbb{C})∣a∣2+∣b∣2=1(a,b∈C)。
总结
本周机器学习方面,学习了Adaboost相关知识和推导,理解了Adaboost更新训练集权重组成新训练集以及利用训练多个分类器提升训练集准确率的方法。学习了量子计算的基本概念,关于矢量定义的相关内容。
浙公网安备 33010602011771号