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

Posted 程劼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《统计学习方法》第1章习题相关的知识,希望对你有一定的参考价值。

习题1.1

统计学习方法的三要素为:模型、策略、算法。

模型即需要用函数 \\(Y=f_\\theta(X)\\) 或者条件概率分布 \\(P_\\theta(Y|X)\\) 表示。

策略即寻找合适的损失函数,表示预测值与真实值之间的误差,进而构建风险函数。风险函数就是最优化的目标函数。

算法即学习模型时需要选择的最优化算法。

题目要求说明伯努利模型的极大似然估计及贝叶斯估计的统计学习方法三要素进行说明,下文通过极大似然估计与贝叶斯估计的基本流程框架进行解答。

极大似然估计的基本流程

(1)首先需要写出概率分布(离散或连续)

(2)通过一组观测值,写出这组观测值的联合概率分布

(3)基于(1)和(2)写出似然函数

(4)寻找合适的算法找出似然函数的极大似然估计值

伯努利模型的极大似然估计

由题,假设需要估计的参数结果为1的概率为 \\(\\theta\\) ,则 $P(X=1|\\theta) =\\theta $ , $P(X=0|\\theta) =1-\\theta $

由于有 \\(n\\) 个观测值 \\(\\{x^{(1)}, x^{(2)}, ... , x^{(n)}\\}\\) ,且 \\(x^{(i)}\\) 取1还是取0是独立的。

由此,可得 \\(P(x^{(1)}, x^{(2)}, ... , x^{(n)}|\\theta) = \\prod P(x^{(i)}|\\theta)\\)

因此,似然函数为 \\(L(\\theta) = P(x^{(1)}, x^{(2)}, ... , x^{(n)}|\\theta) = \\prod P(x^{(i)}|\\theta) = \\theta^k * (1-\\theta)^{n-k}\\)

要估计的参数 \\(\\hat{\\theta} = \\mathop{\\arg\\max}\\limits_{\\theta} L(\\theta)=\\mathop{\\arg\\max}\\limits_{\\theta} log (L(\\theta))\\)

其中 \\(log (L(\\theta)) = k*log(\\theta) + (n-k) * log(1-\\theta)\\)

使用求偏导的算法求解极大似然估计值 ,令\\(\\frac{\\partial log L(\\theta)}{\\partial \\theta} = \\frac{k}{\\theta} - \\frac{n-k}{1-\\theta} = 0\\)

解得, \\(\\hat{\\theta} = \\frac{k}{n}\\)

这也是伯努利模型的极大似然估计的参数结果

贝叶斯估计的基本流程

(1)与极大似然估计(认为参数是一个固定的常数)不同的是,参数也服从一个概率分布

(2)假设参数服从的概率分布,即先验概率

(3)推导出似然函数

(4)根据贝叶斯公式,通过先验概率和似然函数计算后验概率

伯努利模型的贝叶斯估计

首先,需要假设参数\\(\\theta\\) 服从一定的概率分布,而我们要找到这样的先验分布

由于似然函数的形式为 \\(\\theta^k * (1-\\theta)^{n-k}\\) ,且 \\(后验 \\propto 似然 * 先验\\) ,贝塔分布可以很好的作为伯努利模型的先验分布

事实上,贝塔分布是伯努利分布和二项分布的共轭先验,在机器学习中也应用广泛

贝塔分布

定义在 \\((0, 1)\\) 区间的连续概率分布, 有两个参数 \\(\\alpha , \\beta >0\\) ,记为 \\(Be(\\alpha, \\beta)\\)

\\[Be(\\theta|\\alpha,\\beta) = \\frac{\\Gamma(\\alpha+\\beta)}{\\Gamma(\\alpha)\\Gamma(\\beta)}\\theta^{\\alpha-1}(1-\\theta)^{\\beta-1} \\]

假设\\(\\theta\\) 服从 \\(Be(\\alpha, \\beta)\\) , 则\\(P(\\theta) = \\frac{\\Gamma(\\alpha+\\beta)}{\\Gamma(\\alpha)\\Gamma(\\beta)}\\theta^{\\alpha-1}(1-\\theta)^{\\beta-1}\\)

似然函数仍为\\(L(\\theta) = P(x^{(1)}, x^{(2)}, ... , x^{(n)}|\\theta) = \\prod P(x^{(i)}|\\theta) = \\theta^k * (1-\\theta)^{n-k}\\)

根据贝叶斯公式,\\(P(\\theta|x^{(1)}, x^{(2)}, ... , x^{(n)}) = \\frac{P(x^{(1)}, x^{(2)}, ... , x^{(n)}|\\theta)P(\\theta)}{P(x^{(1)}, x^{(2)}, ... , x^{(n)}}\\propto P(x^{(1)}, x^{(2)}, ... , x^{(n)}|\\theta)P(\\theta)\\)

所以,\\(\\hat{\\theta} = \\mathop{\\arg\\max}\\limits_{\\theta}P(x^{(1)}, x^{(2)}, ... , x^{(n)}|\\theta)P(\\theta) = \\mathop{\\arg\\max}\\limits_{\\theta} \\theta^k * (1-\\theta)^{n-k}*\\theta^{\\alpha-1}*(1-\\theta)^{\\beta-1}\\)

利用求偏导的方式可得,\\(\\hat{\\theta} = \\frac{k+\\alpha-1}{n+\\alpha+\\beta-2}\\)

通过不同的先验分布的超参数,确定最终的 \\(\\theta\\) 值。

习题1.2

经验风险最小化:

根据经验风险的公式,可以得知经验风险是样本损失函数的平均值。

\\(R_{emp} = \\frac{1}{N}\\sum\\limits_{i=1}^N L(y_i, f(x_i))\\)

由于损失函数为对数损失函数,所以 \\(L(y_i, f(x_i)) = -log(P(Y|X))\\)

所以经验风险最小化估计的参数 \\(\\theta\\)\\(\\hat{\\theta} = \\mathop{\\arg\\min}\\limits_\\theta \\frac{1}{N}\\sum\\limits_{i=1}^N -log(P(y_i|x_i,\\theta))\\)

极大似然估计:

似然函数为 \\(L(\\theta) = P(y^{(1)}, y^{(2)}, ... , y^{(n)}|x^{(1)}, x^{(2)}, ... , x^{(n)}, \\theta) = \\prod P(y^{(i)}|x^{(i)},\\theta)\\)

所以极大似然估计的参数 \\(\\theta\\)\\(\\hat{\\theta} = \\mathop{\\arg\\max}\\limits_\\theta log(L(\\theta)) = \\mathop{\\arg\\max}\\limits_\\theta \\sum\\limits_{i=1}^N log(P(y_i|x_i,\\theta))\\)

从而得出结论:模型是条件概率分布,损失函数是对数损失函数时,经验风险最小化等价于极大似然估计

以上是关于《统计学习方法》第1章习题的主要内容,如果未能解决你的问题,请参考以下文章

统计学习方法 李航---第1章 统计学习方法概论

习题

习题

PTA的Python练习题-第4章-7 统计学生平均成绩与及格人数

复现经典:《统计学习方法》第 7 章 支持向量机

统计学习方法 李航---第12章 统计学习方法总结