一些零碎的知识点

一些零碎的知识点

知识点一:Lagrange对偶性

参考李航老师的《统计学习方法》

  • 原始问题

    给定凸优化问题
    min ⁡ x f ( x ) s . t . g i ( x ) ≤ 0 ,   i = 1 , ⋯   , m h j ( x ) = 0 ,   j = 1 , ⋯   , n \begin{aligned} \min_{x}\quad &f(x) \\ s.t.\quad &g_{i}(x) \leq 0,\ i=1,\cdots,m \\ & h_{j}(x) = 0,\ j=1,\cdots,n \end{aligned} xmins.t.f(x)gi(x)0, i=1,,mhj(x)=0, j=1,,n

    其中 f ( x ) f(x) f(x) g i ( x ) g_{i}(x) gi(x) 都是 R n \mathbb{R}^n Rn 上的连续可微的凸函数,约束函数 h j ( x ) h_{j}(x) hj(x) R n \mathbb{R}^n Rn 上的仿射函数。当 f ( x ) f(x) f(x) 是二次函数,约束函数 g i ( x ) g_{i}(x) gi(x) h j ( x ) h_{j}(x) hj(x) 是仿射函数时,上述问题称为凸二次规划问题。

    构造Lagrange函数
    L ( x , λ , μ ) = f ( x ) + ∑ i = 1 m λ i g i ( x ) + ∑ j = 1 n μ j h j ( x ) L(x,\lambda, \mu) = f(x) + \sum_{i=1}^{m}\lambda_{i}g_{i}(x) + \sum_{j=1}^{n}\mu_{j}h_{j}(x) L(x,λ,μ)=f(x)+i=1mλigi(x)+j=1nμjhj(x)
    其中, λ i ≥ 0 , μ j \lambda_{i}\geq0,\mu_{j} λi0,μj 是拉格朗日乘子。

    则上述优化问题等价于
    min ⁡ x max ⁡ λ ≥ 0 , μ L ( x , λ , μ ) \min_{x}\max_{\lambda\geq0,\mu} L(x, \lambda, \mu) xminλ0,μmaxL(x,λ,μ)
    事实上
    min ⁡ x max ⁡ λ ≥ 0 , μ L ( x , λ , μ ) = min ⁡ x ( f ( x ) + max ⁡ λ ≥ 0 , μ ( ∑ i = 1 m λ i g i ( x ) + ∑ j = 1 n μ j h j ( x ) ) ) = min ⁡ x ( f ( x ) + { 0 , g ( x ) ≤ 0 ,   h ( x ) = 0 ∞ , o t h e r w i s e ) = min ⁡ x   f ( x )    s . t .   g i ( x ) ≤ 0 ,   i = 1 , ⋯   , m    h j ( x ) = 0 ,   j = 1 , ⋯   , n \begin{aligned} &\quad\min_{x}\max_{\lambda\geq0,\mu}\quad L(x, \lambda, \mu) \\ &=\min_{x}\left(f(x)+\max_{\lambda\geq0,\mu}\left(\sum_{i=1}^{m}\lambda_{i}g_{i}(x) + \sum_{j=1}^{n}\mu_{j}h_{j}(x)\right)\right) \\ &=\min_{x}\left(f(x)+ \begin{cases}0, & g(x)\leq0,\ h(x)=0 \\ \infty, & otherwise \end{cases} \right) \\ &=\min_{x}\ f(x)\\ &\quad\ \ s.t.\ g_{i}(x)\leq0,\ i=1,\cdots,m \\ &\qquad\quad\ \ h_{j}(x)=0,\ j=1,\cdots,n \end{aligned} xminλ0,μmaxL(x,λ,μ)=xmin(f(x)+λ0,μmax(i=1mλigi(x)+j=1nμjhj(x)))=xmin(f(x)+{0,,g(x)0, h(x)=0otherwise)=xmin f(x)  s.t. gi(x)0, i=1,,m  hj(x)=0, j=1,,n

  • 对偶问题

    原始问题是 (primary problem):
    min ⁡ x max ⁡ λ ≥ 0 , μ L ( x , λ , μ ) \min_{x}\max_{\lambda\geq0,\mu} L(x, \lambda, \mu) xminλ0,μmaxL(x,λ,μ)
    对偶问题 (duality problem) 是:
    max ⁡ λ ≥ 0 , μ min ⁡ x L ( x , λ , μ ) \max_{\lambda\geq0,\mu}\min_{x} L(x, \lambda, \mu) λ0,μmaxxminL(x,λ,μ)

  • 原始问题和对偶问题的关系

    定理1 (弱对偶性, weak duality): 若原始问题和对偶问题都有最优值,则
    d ∗ = max ⁡ λ ≥ 0 , μ min ⁡ x   L ( x , λ , μ ) ≤ min ⁡ x max ⁡ λ ≥ 0 , μ   L ( x , λ , μ ) = p ∗ d^{*} = \max_{\lambda\geq0,\mu}\min_{x}\ L(x, \lambda, \mu) \leq \min_{x}\max_{\lambda\geq0,\mu}\ L(x, \lambda, \mu) = p^{*} d=λ0,μmaxxmin L(x,λ,μ)xminλ0,μmax L(x,λ,μ)=p
    推论1: x ∗ x^* x ( λ ∗ , μ ∗ ) (\lambda^*,\mu^*) (λ,μ) 分别是原始问题和对偶问题的可行解,并且 d ∗ = p ∗ d^*=p^* d=p,则 x ∗ x^* x ( λ ∗ , μ ∗ ) (\lambda^*,\mu^*) (λ,μ) 分别是原始问题和对偶问题的最优解。

    强对偶性 (strong duality):
    p ∗ = d ∗ p^{*}=d^{*} p=d
    在强对偶成立的情况下,可以通过求解对偶问题来得到原始问题的解。

    强对偶性成立的性质

    x ∗ x^* x ( λ ∗ , μ ∗ ) (\lambda^*,\mu^*) (λ,μ) 分别是原始问题和对偶问题的最优解,则
    d ∗ = min ⁡ x L ( x , λ ∗ , μ ∗ ) ≤ L ( x ∗ , λ ∗ , μ ∗ ) ≤ max ⁡ λ ≥ 0 , μ L ( x ∗ , λ , μ ) = p ∗ d^* = \min_{x} L(x,\lambda^*,\mu^*) \leq L(x^*,\lambda^*,\mu^*) \leq \max_{\lambda\geq0,\mu} L(x^*,\lambda,\mu) = p^* d=xminL(x,λ,μ)L(x,λ,μ)λ0,μmaxL(x,λ,μ)=p
    结合强对偶性知
    p ∗ = d ∗ = L ( x ∗ , λ ∗ , μ ∗ ) p^*=d^*=L(x^*,\lambda^*,\mu^*) p=d=L(x,λ,μ)
    强对偶性成立的条件

    Slater 条件是指不等式约束条件是严格可行的,即存在 x x x 满足:
    g i ( x ) < 0 ,   i = 1 , ⋯   , m g_{i}(x) < 0,\ i=1,\cdots,m gi(x)<0, i=1,,m
    KKT条件:
    ∇ x f ( x ∗ ) + ∑ i = 1 m λ i ∗ ∇ x g i ( x ∗ ) + ∑ j = 1 n μ j ∗ ∇ x h j ( x ∗ ) = 0 ( 互 补 松 弛 条 件 )   λ i ∗ g i ( x ∗ ) = 0 ,   i = 1 , ⋯   , m g i ( x ∗ ) ≤ 0 ,   i = 1 , ⋯   , m λ i ∗ ≥ 0 ,   i = 1 , ⋯   , m h i ( x ∗ ) = 0 ,   j = 1 , ⋯   , n \begin{aligned} \nabla_{x}f(x^*) + \sum_{i=1}^{m}\lambda_{i}^{*}\nabla_{x}g_{i}(x^*) + \sum_{j=1}^{n}\mu_{j}^{*}\nabla_{x}h_{j}(x^*) = 0 \\ (互补松弛条件)\ \lambda_{i}^{*}g_{i}(x^{*}) = 0,\ i=1,\cdots,m \\ g_{i}(x^{*}) \leq 0,\ i=1,\cdots,m \\ \lambda_{i}^{*} \geq 0,\ i=1,\cdots,m \\ h_{i}(x^{*}) = 0,\ j=1,\cdots,n \end{aligned} xf(x)+i=1mλixgi(x)+j=1nμjxhj(x)=0() λigi(x)=0, i=1,,mgi(x)0, i=1,,mλi0, i=1,,mhi(x)=0, j=1,,n
    定理2: 如果原始问题是凸优化问题,满足Slater条件,则存在 x ∗ , λ ∗ , μ ∗ x^*,\lambda^*,\mu^* x,λ,μ,使 x ∗ x^* x ( λ ∗ , μ ∗ ) (\lambda^*,\mu^*) (λ,μ) 分别是原始问题和对偶问题的最优解,并且
    p ∗ = d ∗ = L ( x ∗ , λ ∗ , μ ∗ ) p^*=d^*=L(x^*,\lambda^*,\mu^*) p=d=L(x,λ,μ)
    定理4: 如果原始问题是凸优化问题,且满足Slater条件,则 x ∗ x^* x ( λ ∗ , μ ∗ ) (\lambda^*,\mu^*) (λ,μ) 分别是原始问题和对偶问题的最优解的充要条件是 ( x ∗ , λ ∗ , μ ∗ ) (x^*,\lambda^*,\mu^*) (x,λ,μ) 满足KKT条件。

    SVM中的强对偶性

    • SVM是一种凸二次规划问题

    • Slater条件在SVM中等价于存在超平面能将数据分隔开来

知识点二:多类别分类: 一对多 (one-vs-all)

例:有三种不同水果:桃,苹果,香蕉。
对桃取值为1,其他两类归于0,做模型进行训练。
对苹果取值为1,其他两类归于0,做模型进行训练。
对香蕉取值为1,其他两类归于0,做模型进行训练。
现在我们有了三个模型,可以对一个输入值进行判断分类,分类结果取出最大值的那个就是类别。

知识点三:特征映射

在这里插入图片描述
对于这样的非线性数据 (特征数n=2),不能用直线将他们分开,可以尝试用形如
θ 0 + θ 1 x ( 1 ) + θ 2 x ( 2 ) + θ 3 ( x ( 1 ) ) 2 + θ 4 x ( 1 ) x ( 2 ) + θ 5 ( x ( 2 ) ) 2 + . . . = 0 \theta_{0}+\theta_{1}x^{(1)}+\theta_{2}x^{(2)}+\theta_{3}(x^{(1)})^{2}+\theta_{4}x^{(1)}x^{(2)}+\theta_{5}(x^{(2)})^{2}+...= 0 θ0+θ1x(1)+θ2x(2)+θ3(x(1))2+θ4x(1)x(2)+θ5(x(2))2+...=0
的多项式函数曲线作为决策边界。为此,只需做特征映射,将 ( x ( 1 ) ) 2 , x ( 1 ) x ( 2 ) , ( x ( 2 ) ) 2 , ⋯ (x^{(1)})^{2},x^{(1)}x^{(2)},(x^{(2)})^{2},\cdots (x(1))2,x(1)x(2),(x(2))2, 作为新的特征。

def feature_mapping(x, y, power):
 """
 x, y: array
 power: 最高项次数
 -------
 Return: x^{p-i}y^{i}, p<=power 生成的DataFrame
 """
 df = pd.DataFrame({'x{}y{}'.format(p-i, i): 
                    np.power(x, p-i) * np.power(y, i) 
                    for p in range(power+1) for i in range(p+1)})
 return df
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值