《统计学习方法》第2章习题

习题2.1

感知机模型的函数表示为 \(f(x) = sign(w*x+b)\)

其中, \(sign(x)=\begin{cases} +1, & x \geq 0 \\ -1, & x < 0 \end{cases}\)

用表格列出异或(XOR)关系

\((x_1,x_2)\) \(y\)
(0,0) 0
(0,1) 1
(1,0) 1
(1,1) 0

假设存在这样的超平面 \(w*x+b=0\) 可以对异或关系进行分隔,它应该满足:

(1)根据 \(x_1=0, x_2=0\) ,则 \(w_1 *0 + w_2 * 0 + b <0\) ,得到 \(b <0\)

(2)根据 \(x_1=0, x_2=1\) ,则 \(w_1 *0 + w_2 * 1 + b \ge 0\) ,由(1)可得 \(w_2 \ge -b >0\)

(3)根据 \(x_1=1, x_2=0\) ,则 \(w_1 *1 + w_2 * 0 + b \ge 0\) ,由(1)可得 \(w_1 \ge -b >0\)

基于这三个不等式,代入第四个点。

根据 \(x_1=1, x_2=1\) ,则 \(w_1 *1 + w_2 * 1 + b <0\) 。然而由(1)-(3)可知,\(w_1+w_2+b \ge (-b) + (-b) + b = -b > 0\) 。产生矛盾。

因此,不存在这样的超平面 \(w*x+b=0\) 。感知机不能表示异或。

习题2.2

习题2.3

证明以下定理:

样本集线性可分的充分必要条件是正实例点集所构成的凸壳与负实例点集所构成的凸壳互不相交

定义 \(S\)凸壳 \(conv(S)\)

\[conv(S)=\{ x= \sum \limits_{i=1}^k \lambda_i x^{(i)} | \sum \limits_{i=1}^k \lambda_i = 1, \lambda_i \ge 0, i=1,2,...,k\} \]

解释几个含义:

(1)线性可分:根据书中定义,存在一个超平面 \(w*x+b=0\) 使得特征空间分为两部分,两部分的点被分为正、负两类

(2)凸壳:见定义

(3)正实例点构成的凸壳\(conv(S^+) = \{ x^+= \sum \lambda_i x^{(i)} | \sum \lambda_i = 1, \lambda_i \ge 0, x_i \in \{x^{(i)}|y^{(i)}=1\}\}\)

(4)负实例点构成的凸壳\(conv(S^-) = \{ x^- = \sum \lambda_i x^{(i)} | \sum \lambda_i = 1, \lambda_i \ge 0, x_i \in \{x^{(i)}|y^{(i)}=-1\}\}\)

先证必要性:线性可分 -> 互不相交

因为样本集线性可分,所以存在一个超平面 \(w*x+b=0\) ,使得 \(\begin{cases} w*x^{(i)} \ge -b & x^{(i)} \in \{x^{(i)}|y^{(i)}=1\} \\ w*x^{(i)} < -b & x^{(i)} \in \{x^{(i)}|y^{(i)}=-1\}\end{cases}\)

对于正实例点集中任意一个点有 \(w*x^+ = w * \sum \limits_{x^{(i)} \in \{x^{(i)}|y^{(i)}=1\}} \lambda_i x^{(i)} = \sum \limits_{x^{(i)} \in \{x^{(i)}|y^{(i)}=1\}} \lambda_i w x^{(i)} \ge \sum \lambda_i*(-b) = -b\)

同理,对于负实例点集中任意一个点有 \(w*x^- = w * \sum \limits_{x^{(i)} \in \{x^{(i)}|y^{(i)}=-1\}} \lambda_i x^{(i)} = \sum \limits_{x^{(i)} \in \{x^{(i)}|y^{(i)}=-1\}} \lambda_i w x^{(i)} < \sum \lambda_i*(-b) = -b\)

所以 \(w*x^+ +b \ge 0\)\(w*x^- +b < 0\) ,所以正实例点集所构成的凸壳与负实例点集所构成的凸壳落在超平面两边,互不相交。

再证充分性:互不相交 -> 线性可分

假设两个点的距离为:\(L_2(x^{(i)}, x^{(j)}) = \left \| x^{(i)} - x^{(j)} \right\|_2\)

定义 \(conv(S^+)\)\(conv(S^-)\) 的距离为 \(L_2(conv(S^+), conv(S^-)) = min (\left \| s^{+} - s^{-} \right\|_2)\) ,其中 $s^+ \in conv(S^+) , s^- \in conv(S^-) $

假设在正实例点凸壳与负实例点凸壳里各取两个点,使得 \(x_{min}^+ \in conv(S^+) , x_{min}^- \in conv(S^-)\) 并且 \(L_2(x_{min}^+, x_{min}^-) = L_2(conv(S^+), conv(S^-))\)

因此,对于任意正实例点 \(x^+\) ,使得 \(L_2(x^+ , x_{min}^-) \ge L_2(x_{min}^+, x_{min}^-)\)

同理,对于任意负实例点 \(x^-\) ,使得 \(L_2(x^- , x_{min}^+) \ge L_2(x_{min}^+, x_{min}^-)\)

由于两个凸壳互不相交,以 向量 \((x_{min}^+ - x_{min}^-)\) 作为法向量,过两点中点 \(\frac{x_{min}^+ + x_{min}^-}{2}\) 做超平面\(w*x+b = 0\)。(简而言之,以这两个点为线段,做垂直平分面)。其中 \(w = 2(x_{min}^+ - x_{min}^-)\)\(b = (x_{min}^-)^2 - (x_{min}^+)^2\)

以中点 \(\frac{x_{min}^+ + x_{min}^-}{2}\) 为球心,\(\frac{L_2(x_{min}^+, x_{min}^-)}{2}\) 为半径,过 \(x_{min}^+ - x_{min}^-\) 两点做超球。

对于任意的正实例点 \(x^+\)\(w*x^+ + b = 2(x_{min}^+ - x_{min}^-)*x^+ + (x_{min}^-)^2 - (x_{min}^+)^2 = \left \| x_{min}^- - x^+ \right\|_2^2 - \left \| x_{min}^+ - x^+ \right\|_2^2 = L_2^2(x^+ , x_{min}^- ) - L_2^2(x^+ , x_{min}^+ )\)

用反证法证明 \(L_2(x^+ , x_{min}^- ) > L_2(x^+ , x_{min}^+ )\)

如果,\(L_2(x^+ , x_{min}^- ) \le L_2(x^+ , x_{min}^+ )\) ,根据 \(L_2(x^+ , x_{min}^-) \ge L_2(x_{min}^+, x_{min}^-)\) ,在以 $x^+ , x_{min}^- , x_{min}^+ $ 三个点构造的三角形中(三点可在一条直线上,只要满足前面的不等式即可),最短边为 \((x_{min}^+, x_{min}^-)\), 最长边为\((x_{min}^+, x^+)\) ,且 \(x_{min}^+\) 位于超球外。

假设最长边 \((x_{min}^+, x^+)\) 与超球交于 \(x_r^+\) 点。根据凸壳具有凸性可知, \(x_r^+\) 也位于正实例点凸壳中,且该点距离 \(x_{min}^-\) 更近。产生矛盾。

所以 \(w*x^+ + b > 0\)

同理,对于任意负实例点 \(x^-\) 亦可得出类似结论。

所以充分性得证。

posted @ 2021-06-23 10:21  程劼  阅读(425)  评论(0编辑  收藏  举报