《神经网络与深度学习》第二章习题

简介: 机器学习概述,习题总结

第二章 机器学习概述

习题 2-1 分析为什么平方损失函数不适用于分类问题。

平方损失函数为:

$$ \mathcal{L}\left(y,f(\boldsymbol{x};\theta)\right)=\frac{1}{2}\left(y-f(\boldsymbol{x};\theta)\right)^2 \tag{2.14} $$

对于分类问题,例如如果一个分类问题有标签 $[1, 2, 3]$,分别代表了 $[red, green, yellow]$,假如真实分类是 1, 而被分类到 2 和 3 错误程度应该是一样的, 但是平方损失函数的损失却不相同。

习题 2-2 在线性回归中,如果我们给每个样本 $(\boldsymbol{x}^{(n)}, y^{(n)})$ 赋予一个权重 $r^{(n)}$,经验风险函数为

$$ \mathcal{R}(\boldsymbol{w}) = \frac{1}{2}\sum_{n=1}^{N}r^{(n)}(y^{(n)}-\boldsymbol{w}^\mathrm{T}\boldsymbol{x}^{(n)})^2 \tag{2.91} $$

计算其最优参数 $\boldsymbol{w}^*$,并分析权重 $r^{(n)}$ 的作用。

$$ \begin{aligned} \frac{\partial}{\partial{\boldsymbol{w}}}\mathcal{R}(\boldsymbol{w}) & = \frac{1}{2}\sum_{n=1}^{N}r^{(n)}\frac{\partial\left\|\boldsymbol{y}-\boldsymbol{X}^\mathrm{T}\boldsymbol{w}\right\|^2}{\partial\boldsymbol{w}} = 0 \\ \boldsymbol{w}^{*} & = \sum_{n=1}^{N} r^{(n)}\left(\boldsymbol{X} \boldsymbol{X}^{\mathrm{T}}\right)^{-1} \boldsymbol{X} \boldsymbol{y} \end{aligned} $$

习题 2-3 证明在线性回归中,如果样本数量 $N$ 小于特征数量 $D+1$,则 $\boldsymbol{X}\boldsymbol{X}^{\mathrm{T}}$ 的秩最大为 $N$。

矩阵 $\boldsymbol{X}=[\boldsymbol{x}^{(1)},\boldsymbol{x}^{(2)},...,\boldsymbol{x}^{(n)}]$,样本数 $N$ 比特征数量 $D+1$ 还小,故 $\boldsymbol{X}$ 的秩肯定不会超过 $N$,而 $rank(\boldsymbol{X} \boldsymbol{X}^{\mathrm{T}})=rank(\boldsymbol{X})$ 故其秩最大也只能是 $N$。

这相当于线性方程组的未知数个数大于方程个数,是不存在唯一的非零解的。

习题 2-4 在线性回归中,验证岭回归的解为结构风险最小化准则下的最小二乘法估计,见公式(2.44)。

$$ \begin{aligned} \frac{\partial \mathcal{R}(\boldsymbol{w})}{\partial \boldsymbol{w}} &=\frac{1}{2} \frac{\partial\left\|\boldsymbol{y}-\boldsymbol{X}^{\mathrm{T}} \boldsymbol{w}\right\|^{2}+\lambda\|\boldsymbol{w}\|^{2}}{\partial \boldsymbol{w}} \\ &=-\boldsymbol{X}\left(\boldsymbol{y}-\boldsymbol{X}^{\mathrm{T}} \boldsymbol{w}\right)+\lambda \boldsymbol{w} \end{aligned} $$

令 $\frac{\partial}{\partial{\boldsymbol{w}}}\mathcal{R}(\boldsymbol{w})=0$ 可得:

$$ -\boldsymbol{X} \boldsymbol{Y}+\boldsymbol{X} \boldsymbol{X}^{\mathrm{T}} \boldsymbol{w}+\lambda \boldsymbol{w}=0\\ \left(\boldsymbol{X}\boldsymbol{X}^{\mathrm{T}}+\lambda \boldsymbol{I}\right) \boldsymbol{w}=\boldsymbol{X} \boldsymbol{Y} $$

即:$\boldsymbol{w}^{*}=\left(\boldsymbol{X}\boldsymbol{X}^{\mathrm{T}}+\lambda \boldsymbol{I}\right)^{-1} \boldsymbol{X} \boldsymbol{y}$。

习题 2-5 在线性回归中,若假设标签 $y\sim\mathcal{N}(\boldsymbol{w}^{\mathrm{T}}\boldsymbol{x},\beta)$,并用最大似然估计来优化参数,验证最优参数为公式(2.52)的解。

$$ \begin{aligned} \log p(\boldsymbol{y}|\boldsymbol{X} ; \boldsymbol{w}, \beta) & = \sum_{n=1}^{N} \log \mathcal{N}\left(y^{(n)} ; \boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}^{(n)}, \beta\right) \\ & = \sum_{n=1}^{N} \log \left(\frac{1}{\sqrt{2 \pi \beta}} \exp \left(-\frac{\left(y^{(n)}-\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}\right)^{2}}{2 \beta}\right)\right) \\ & = \sum_{n=1}^{N} \log \frac{1}{\sqrt{2 \pi \beta}}+\sum_{n=1}^{N} \log \left(\exp \left(-\frac{\left(y^{(n)}-\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}\right)^{2}}{2 \beta}\right)\right) \end{aligned} $$

对于等式的第一部分只是一个常数,其对 $\boldsymbol{w}$ 求导为零,所以只看后面的部分。

后面部分可以化简为

$$ \sum_{n=1}^{N} \left(-\frac{\left(y^{(n)}-\boldsymbol{w}^{\mathrm{T}} \boldsymbol{x}\right)^{2}}{2 \beta}\right) $$

:在计算机或者说人工智能中,代码上的 $\log$ 通常都是以 $e$ 为底的,即代表 $\ln$。

所以,把分母的 $2\beta$ 提出去,最大似然函数对 $\boldsymbol{w}$ 的求导函数又变成了 $-\frac{1}{2\beta}\left\|\boldsymbol{y}-\boldsymbol{X}^{\mathrm{T}} \boldsymbol{w}\right\|^2$,参考最小二乘法可以知道,最优参数为

$$ \boldsymbol{w}^{ML}=\left(\boldsymbol{X}\boldsymbol{X}^{\mathrm{T}}\right)^{-1} \boldsymbol{X} \boldsymbol{y} \tag{2.52} $$

习题 2-6 假设有 $N$ 个样本 $x^{(1)},x^{(2)},...,x^{(N)}$ 服从正态分布 $\mathcal{N}(\mu,\sigma^2)$,其中 $\mu$ 未知。1)使用最大似然估计来求解最优参数 $\mu^{ML}$;2)若参数 $\mu$ 为随机变量,并服从正态分布 $\mathcal{N}(\mu_0,\sigma_0^2)$,使用最大后验估计来求解最优参数 $\mu^{MAP}$。

(1)问

习题 2-5 基本一样,就是变量表示变了

$$ \begin{aligned} \log p(\boldsymbol{x}|\mu ; \sigma^2) & = \sum_{n=1}^{N} \log \mathcal{N}\left(x^{(n)} ; \mu, \sigma^2\right) \\ & = \sum_{n=1}^{N} \log \left(\frac{1}{\sqrt{2 \pi}\sigma} \exp \left(-\frac{\left(x^{(n)}-\mu\right)^{2}}{2 \sigma^2}\right)\right) \\ & = \sum_{n=1}^{N} \log \frac{1}{\sqrt{2 \pi}\sigma}+\sum_{n=1}^{N}\left(-\frac{\left(x^{(n)}-\mu\right)^{2}}{2 \sigma^2}\right) \end{aligned} $$

等式右边的第二项对 $\mu$ 求导,并令其等于零,得 $\mu^{ML}=\boldsymbol{x}$

(2)问

由贝叶斯公式得参数 $\mu$ 的后验分布为 $p(\mu|\boldsymbol{x};v,\sigma)\propto p(\boldsymbol{x}|\mu;\sigma) p(\mu;v)$,两边取对数

$$ \begin{aligned} \log p(\mu|\boldsymbol{x};v,\sigma) & \propto \log p(\boldsymbol{x}|\mu,\sigma)+\log p(\mu;v) \\ & \propto-\frac{1}{2 \sigma^{2}}\left\|\boldsymbol{x}-\mu\right\|^{2}-\frac{1}{2 v^{2}} \mu^2 \end{aligned} $$

对 $\mu$ 进行求导可以解得 $\mu^{MAP}=\frac{v^2}{v^2+\sigma^2}\boldsymbol{x}$。

习题 2-7 在习题 2-6 中,证明当 $N\rightarrow\infty$ 时,最大后验估计趋向于最大似然估计。

习题 2-9 试分析什么因素会导致模型出现图 2.6 所示的高偏差高方差情况。

一般来说,高偏差是因为模型欠拟合了,高方差是因为模型过拟合了,如果两个都偏高,那么模型可能出现了问题,或者不能够用来解决给定的问题。

习题 2-11 分别用一元、二元和三元特征的词袋模型表示文本「我打了张三」和「张三打了我」,并分析不同模型的优缺点。

首先这句话可以分为三个词:我 | 打了 | 张三,加上文本的开始 $ 和结束 \#。

一元特征:$ | 我 | 打了 | 张三 | \#

二元特征:$ | $我 | 我打了 | 打了张三 | 张三\#

三元特征:$ | $我打了 | 我打了张三 | 打了张三\#

习题 2-12 对于一个三分类问题,数据集的真实标签和模型的预测标签分别为:$[1,1,2,2,2,3,3,3,3]$ 和 $[1,2,2,2,3,3,3,1,2]$,分别计算模型的精确率、召回率、$\mathcal{F1}$ 值以及它们的宏平均和微平均。

$$ \boldsymbol{\mathcal{P}}=[\frac{1}{2},\frac{1}{2},\frac{2}{3}] , \boldsymbol{\mathcal{R}}=[\frac{1}{2},\frac{2}{3},\frac{1}{2}] , \boldsymbol{\mathcal{F1}}=[\frac{1}{2},\frac{4}{7},\frac{4}{7}] \\ \, \\ \, \mathcal{P_{macro}}= \frac{5}{9}, \mathcal{R_{macro}}= \frac{5}{9}, \mathcal{F1_{macro}}= \frac{5}{9} $$

目录
相关文章
|
20天前
|
机器学习/深度学习 自然语言处理 语音技术
深度学习500问——Chapter06: 循环神经网络(RNN)(3)
深度学习500问——Chapter06: 循环神经网络(RNN)(3)
33 3
|
4天前
|
机器学习/深度学习 人工智能 算法
中草药识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
中草药识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
25 0
|
6天前
|
机器学习/深度学习 PyTorch 人机交互
探索深度学习在语音识别中的实践:基于循环神经网络的模型构建
探索深度学习在语音识别中的实践:基于循环神经网络的模型构建
20 0
|
6天前
|
机器学习/深度学习 自然语言处理 算法
深入解析深度学习中的卷积神经网络:从理论到实践
深入解析深度学习中的卷积神经网络:从理论到实践
25 0
|
15天前
|
机器学习/深度学习 人工智能 算法
食物识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
食物识别系统采用TensorFlow的ResNet50模型,训练了包含11类食物的数据集,生成高精度H5模型。系统整合Django框架,提供网页平台,用户可上传图片进行食物识别。效果图片展示成功识别各类食物。[查看演示视频、代码及安装指南](https://www.yuque.com/ziwu/yygu3z/yhd6a7vai4o9iuys?singleDoc#)。项目利用深度学习的卷积神经网络(CNN),其局部感受野和权重共享机制适于图像识别,广泛应用于医疗图像分析等领域。示例代码展示了一个使用TensorFlow训练的简单CNN模型,用于MNIST手写数字识别。
40 3
|
20天前
|
机器学习/深度学习 人工智能 自然语言处理
一文搞懂深度学习:神经网络基础部分
一文搞懂深度学习:神经网络基础部分
24 0
|
20天前
|
机器学习/深度学习 算法 Scala
深度学习500问——Chapter06: 循环神经网络(RNN)(4)
深度学习500问——Chapter06: 循环神经网络(RNN)(4)
31 1
|
20天前
|
机器学习/深度学习 算法 搜索推荐
深度学习500问——Chapter06: 循环神经网络(RNN)(2)
深度学习500问——Chapter06: 循环神经网络(RNN)(2)
26 3
|
20天前
|
机器学习/深度学习 存储 自然语言处理
深度学习500问——Chapter06: 循环神经网络(RNN)(1)
深度学习500问——Chapter06: 循环神经网络(RNN)(1)
23 1
|
20天前
|
机器学习/深度学习 算法 数据挖掘
深度学习500问——Chapter05: 卷积神经网络(CNN)(4)
深度学习500问——Chapter05: 卷积神经网络(CNN)(4)
28 1