You are on page 1of 24

作业1

1. 现有以下数据点(𝑥𝑥𝑖𝑖 , 𝑦𝑦𝑖𝑖 ),试用二次函数拟合,在最大似然准则下估


计系数,并计算拟合残差
(0,-0.11), (0.22,0.09), (0.4,0.58), (0.6,1.62), (0.79,2.52), (1.1,3.4)

2. 题1中设𝑦𝑦𝑖𝑖 的观测误差服从高斯分布𝑁𝑁(0,0.1),二次函数的各系数均
服从先验分布𝑁𝑁(0,0.3),试在最大后验准则下重新估计各系数

3. 试画出下式的计算图,并在该图上用链式法则计算梯度𝜕𝜕𝜕𝜕/𝜕𝜕𝑥𝑥:
𝜕𝜕 𝑥𝑥 = sin 𝑎𝑎𝑥𝑥 + exp 𝑏𝑏𝑥𝑥 2 + 𝑐𝑐𝑥𝑥 + 𝑥𝑥 2 + cos 𝑥𝑥

4. 试证明以下矩阵代数的等式:

作业1
5. 简述经验误差、训练误差、测试误差、泛化误差的区别。
6. 请讨论训练集和测试集的不同划分方法的特点。
7. (1) 请根据表1的二分类结果计算其P-R平衡点处的F1指数
和AP指标,AP定义为P-R曲线下面的面积。
(2)请根据表2的多分类结果计算mAP,其中mAP定义为各类
平均AP。 表1
样本 预测值 标签值
0 0.92 1
1 0.74 1
2 0.68 0
3 0.53 1
4 0.5 1
5 0.44 0
6 0.38 0
7 0.27 1
8 0.1 0
9 0.04 0
作业1
表2
样本 针对第0类的预测值 针对第1类的预测值 针对第2类的预测值 标签值(类别序号)
0 0.61 0.20 0.19 0
1 0.33 0.55 0.12 1
2 0.15 0.39 0.47 2
3 0.19 0.33 0.48 2
4 0.37 0.11 0.51 2
5 0.10 0.61 0.29 1
6 0.42 0.35 0.23 0
7 0.57 0.07 0.36 0
8 0.22 0.39 0.39 2
9 0.39 0.35 0.26 1

矢量形式
T
 𝐿 𝑤 ∝ σ𝑖 𝑦𝑖 − 𝑓 𝑤, 𝑥𝑖 2 = 𝑦റ − 𝑓റ ∙ 𝑦റ − 𝑓റ

𝜕𝐿 𝑇 𝜕𝑓റ
 = 2 𝑦റ − 𝑓റ ∙ =0
𝜕𝑤 𝜕𝑤

 𝑓 𝑤, 𝑥 = 𝑤2 𝑥 2 + 𝑤1 𝑥 + 𝑤0 = [𝑥 2 , 𝑥, 1] ∙ 𝑤


 റ
𝑓 = 𝑥𝑖2 𝑥𝑖 1 ∙𝑤 =𝑿∙𝑤

⋱ ⋱
𝜕𝑓റ 𝜕𝑓𝑖 𝜕𝑓𝑖 𝜕𝑓𝑖
 = = 𝑥𝑖2 𝑥𝑖 1 =𝑿
𝜕𝑤 𝜕𝑤2 𝜕𝑤1 𝜕𝑤0
⋱ ⋱
𝜕𝐿 T
 = 𝑦റ − 𝑿𝑤 ∙ 𝑿 = 𝑦റ 𝑇 𝑿 − 𝑤 𝑇 𝑿𝑇 𝑿 = 0
𝜕𝑤
 𝑤𝑇 = (𝑦റ 𝑇 𝑿)/(𝑿𝑇 𝑿)
最大后验估计
 最大后验概率:

最大后验估计
 例:
 𝑦 = 𝑓 𝑤, 𝑥 + 𝛿
 𝛿~𝑁(0, 𝜎)
 设𝑤~𝑁(𝑤0 , 𝜎𝑤 )
 后验概率:
𝑤−𝑤0 2 𝑦𝑖 −𝑓(𝑤,𝑥𝑖 ) 2
 𝑃(𝑤) = exp − 2 ς𝑖 exp −
2𝜎𝑤 2𝜎2

 最大后验估计为
𝜎2 2 2
 𝑤 ∗ = arg min2 𝑤 − 𝑤0 + σ𝑖 𝑦𝑖 − 𝑓 𝑤, 𝑥𝑖
𝑤 𝜎𝑤

𝜆
/ →
y*x*inv(x'*x-1/9)
性能度量
 目标检测/识别、信息检索

查 precision 查 recall

P-R曲线
 根据学习器的预测结果按正例可能性大小(输出概率
连续值)对样例进行排序,并逐个把样本作为正例进
行预测,则可以得到查准率-查全率曲线,简称“P-R
曲线”


=查
P-R
F1指数
比P-R曲线平衡点更用常用的是F1度量:

比F1更一般的形式 ,

: F1
: 查 ( )
查 ( )

ROC曲线
 类似P-R曲线,根据学习器的预测结果对样例排序,并
逐个作为正例进行预测,以“假正例率”为横轴,
“真正例率”为纵轴可得到ROC曲线,全称“受试者工
作特征”.
 根据ROC曲线下面积大小进行比较,也即AUC值.
ROC

AUC

AUC
1、 3、

2、
4、试证明以下矩阵代数的等式:
5、简述经验误差、训练误差、测试误差、泛化误差的区别。
经验误差(Empirical Error)也叫训练误差(Training Error)
:训练误差是指模型在训练
集上的误差,即模型对训练数据的拟合程度。它是通过计算模型在训练数据上的预测值与实
际值之间的差异来衡量的。训练误差越低,表示模型在训练数据上的拟合效果越好。
测试误差(Test Error):测试误差是指模型在独⽴的测试集上的误差,即模型对未⻅过
的数据的预测性能。它⽤于评估模型在现实世界中的泛化能⼒。测试误差是通过计算模型在
测试数据上的预测值与实际值之间的差异来衡量的。测试误差较低表示模型具有较好的泛
化能⼒。
泛化误差(Generalization Error)
:泛化误差是指模型在新的、未⻅过的数据上的误差。
它是衡量模型在现实世界中应⽤的预测性能的关键指标。泛化误差是模型的真实误差,即模
型在整个数据分布上的平均误差。泛化误差是模型的训练误差和测试误差之间的差异,它反
映了模型对新数据的适应能⼒。

6、请讨论训练集和测试集的不同划分⽅法的特点。
随机划分(Random Split):将数据集随机划分为训练集和测试集。这是最常⻅和简单
的划分⽅法之⼀。特点包括:
l 简单快速:随机划分⽅法⾮常简单且易于实施。
l 随机性:由于随机划分,每次划分可能会得到不同的训练集和测试集。
l 可能引⼊偏差:随机划分可能会导致训练集和测试集之间的分布差异,从⽽引⼊⼀定的
偏差。

分层划分(Stratified Split)
:根据类别或标签的分布,按照⼀定⽐例划分数据集。特点
包括:
l 保持类别分布:分层划分可以确保训练集和测试集中不同类别或标签的样本⽐例与原
始数据集中的⽐例相似。
l 更可靠的评估:分层划分可以提供更可靠的模型评估结果,特别是在类别不平衡的情况
下。

时间序列划分(Time Series Split)


:对于时间序列数据,按时间顺序划分数据集。特点
包括:
l 时间关联性:时间序列划分考虑到数据的时间关联性,确保训练集和测试集按照时间顺
序划分。
l 避免未来信息:时间序列划分可以避免将未来信息引⼊训练集中,从⽽更准确地模拟真
实情况。

交叉验证(Cross-Validation)
:将数据集划分为多个互斥的⼦集,进⾏多次训练和测试。
特点包括:
l 最⼤化数据利⽤:交叉验证可以最⼤化利⽤数据,将数据集划分为多个⼦集⽤于训练和
测试。
l 更稳健的评估:交叉验证可以提供更稳健的模型评估结果,减少因单次划分⽽引⼊的偏
差。
l 计算成本:交叉验证需要进⾏多次训练和测试,因此计算成本相对较⾼。
7、 1.

2.

3.试推导以下激活函数的导数,并用原函数表示
Matlab 参考代码见 ann_hw.m,数据见 mnist_liste.mat

感知机(Perceptron)
 𝑦 = sgn(𝒘 ∙ 𝒙)
 梯度下降:
 选择一个数据点(𝒙𝑖 , 𝑦𝑖 ),若分错,则:
 𝑤 ← 𝑤 + 𝜂𝑦𝑖 𝒙𝑖

𝒘∙𝒙=𝟎
朴素贝叶斯(Naïve Bayesian)

 已知量:数据(特征) 𝒙 = 𝑥1 , 𝑥2 , …
 待估计:类别 𝑦 ∈ 𝐶1 , 𝐶2 , …

𝑝 𝒙 𝑦 = 𝐶𝑖 𝑝 𝑦 = 𝐶𝑖
𝑝 𝑦 = 𝐶𝑖 𝒙 =
𝑝(𝒙)

𝑝 𝑦 = 𝐶𝑖 𝒙 ∝ 𝑝 𝒙 𝑦 = 𝐶𝑖 𝑝 𝑦 = 𝐶𝑖

朴素贝叶斯(Naïve Bayesian)
 假设特征量之间相互独立

𝑝 𝑦 = 𝐶𝑖 𝒙 ∝ 𝑝 𝒙 𝑦 = 𝐶𝑖 𝑝 𝑦 = 𝐶𝑖

𝑝 𝒙 𝑦 = 𝐶𝑖 = ෑ 𝑝 𝑥𝑗 𝑦 = 𝐶𝑖
𝑗 𝑁𝑖
𝑝 𝑦 = 𝐶𝑖 =
σ𝑖 𝑁𝑖

𝑝 𝑥𝑗 𝑦 = 𝐶𝑖 = Hist 𝑥𝑗 𝑦 = 𝐶𝑖
例:

◼ 计算相关概率

CS583, Bing Liu, UIC

◼ 若 C = t, 其后验概率为
2
1 2 2 2
Pr(C = t ) Pr( A j = a j | C = t ) =   =
j =1 2 5 5 25
◼ 若 C = f, 其后验概率为
2
1 1 2 1
Pr(C = f )  Pr( A j = a j | C = f ) =   =
j =1 2 5 5 25

◼ 显然C = t 概率高,因此预测类别为 t.

CS583, Bing Liu, UIC


卷积层的BP实现
 限制条件:权值相等
 We compute the gradients as usual, and then modify
the gradients so that they satisfy the constraints.
 So if the weights started off satisfying the constraints,
they will continue to satisfy them.

 ReLU的梯度
0 𝑥<0
 𝑓′ = ቊ
1 𝑥≥0

 误差回传时无衰减!

Softmax
 Applies to the output layer in the case of multi-class
classification
 Estimates the posterior probabilities over each class:
exp 𝑂𝑖 𝐿
𝑝𝑖 = 𝐿
(𝑖 = 1, ⋯ , 𝐾)
σ𝐾
𝑗=1 exp 𝑂𝑗
Cross-Entropy (Softmaxloss)
 Cross-entropy loss function: minimizing the discrepancy
between the ground truth y and the network prediction p:
𝐾
𝐿 𝑤 =෍ −𝑡𝑗 log 𝑝𝑗 = − log 𝑝𝑦
𝑗=1

 Gradient of Softmaxloss is balanced out between


softmax and cross-entropy

𝜕𝐿 𝜕𝐿 𝜕𝑝
 = ∙ =𝑡−𝑝
𝜕𝑂 𝜕𝑝 𝜕𝑂

 误差回传时无衰减、无失真!
1、
2、 3、
4、

作业3
 3、分别计算对于如下输入和卷积层的输出矩阵维度。
 (1)𝐼𝑛𝑝𝑢𝑡. 𝑠𝑖𝑧𝑒 = 28,28,3
 𝐶𝑜𝑛𝑣2𝑑. 𝑘𝑒𝑟𝑛𝑒𝑙. 𝑠𝑖𝑧𝑒 = 3,3,16
 𝑝𝑎𝑑𝑑𝑖𝑛𝑔 = 0, 𝑠𝑡𝑟𝑖𝑑𝑒 = 5

 (2)𝐼𝑛𝑝𝑢𝑡. 𝑠𝑖𝑧𝑒 = 256,256,6


 𝐶𝑜𝑛𝑣2𝑑. 𝑘𝑒𝑟𝑛𝑒𝑙. 𝑠𝑖𝑧𝑒 = 7,7,64
 𝑝𝑎𝑑𝑑𝑖𝑛𝑔 = 2, 𝑠𝑡𝑟𝑖𝑑𝑒 = 3
4、阐述VGGNet、ResNet、DenseNet、U-Net各自特点和
2、(1)阐述池化层的作用
 降维:池化层可以减少特征图中的参数数量,降低特征维度,从而也降低了模型
的参数规模,防止过拟合。
 不变性:池化层可以获得一定程度上的不变性,例如最大池化获得平移不变性,
平均池化获得旋转不变性。这能增强模型对特征位置和方向的鲁棒性。
 保留主要特征:池化层通过取局部区域内的最大值或平均值,可以保留特征图
中的主要特征,去掉不重要的细节。
作业3
区别。

总结:
U-Net:
ResNet:
VGGNet:

DenseNet:

- 强化了特征的传递和复用

- U-Net:编码-解码,进行图像分割
- ResNet:残差连接,解决梯度消失
- DenseNet:特征重用,提升参数效率
- VGGNet:网络加深,提取多尺度特征
- 参数量和计算量非常大,训练时间长

- 上采样会产生 checkerboard artifacts


- 能提取出多个不同尺度下的特征信息

- 可以进行图像语义分割,保留空间信息
- 减少参数量,增强特征重用,提高参数效率
- 采用多层小卷积核(3x3)的堆叠,增加网络深度

- 引入 dense block,每层连接前面所有层的输出
- 通过 identity shortcut 连接,跳过卷积层,梯度可以直接回传
- 引入残差结构,实现跨层连接,解决网络深化时的梯度消失问题
4、阐述 VGGNet、ResNet、DenseNet、U-Net 各自特点和区别。

- 结合编码器和解码器,采用 skip connection,上采样 concat 编码特征

姓名_____________________________ 学号_________________________
注:均需给出解题过程。

1. 现有以下数据点(𝑥𝑥𝑖𝑖 , 𝑦𝑦𝑖𝑖 ) ,试用二次函数拟合,在最大似然准则下估计系数:


(0,-0.1), (0.2,0.2), (0.5, 0.6), (0.6, 1.6), (0.9,2.3)
1.6422 1.2819 -0.1235
2. 给定感知机模型
𝑧𝑧 = sgn(𝑤𝑤1 𝑥𝑥 + 𝑤𝑤2 𝑦𝑦 + 𝑏𝑏)
当前参数取值为𝑤𝑤1 = 1, 𝑤𝑤2 = 0.9, 𝑏𝑏 = −1;学习步长𝜂𝜂 = 0.5;
若当前样本为:(𝑥𝑥, 𝑦𝑦, 𝑧𝑧) = (1.0, −0.2, −1),请更新感知机权重;
若当前样本为:(𝑥𝑥, 𝑦𝑦, 𝑧𝑧) = (1.0, −0.2, +1),请更新感知机权重。

5. 在 Q-learning 过程中,当前时刻 Q-table 如下图所示,假设在当前状态 S1


3. 计 算 如 下 输 入 𝑋𝑋 经 过 CNN 的 卷 积 层 𝑊𝑊 = {𝑊𝑊0 , 𝑊𝑊1 } 得 到 的 输 出 𝑌𝑌 。 下智能体采取了动作 a0,环境反馈进入状态 S3、即时奖励为 0.1,设折扣
(padding=1,stride=1) 因子为 0.9,试根据 Q-learning 方法更新该 Q-table
2 0 2 1 0 1 4 1 6. 试 推 导 如 图 所 示 RNN 网 络 的 时 间 展 开 后 向 传 播 BPTT 算 法 的 梯 度
𝑋𝑋(: , : ,0) = �1 2 1 0� , 𝑋𝑋(: , : ,1) = �1 2 0 0� 𝜕𝜕𝜕𝜕/ 𝜕𝜕𝜕𝜕, 𝜕𝜕𝜕𝜕/ 𝜕𝜕𝜕𝜕表达式,其中𝜕𝜕为𝑦𝑦 (𝑡𝑡) 与𝑦𝑦� (𝑡𝑡) 的交叉熵
0 0 0 1 0 1 1 1
1 0 0 2 0 1 2 2
0 1 0 −1 0 1 第 5 题图: 第 6 题图:
𝑊𝑊0 (: , : ,0) = �1 −4 1� , 𝑊𝑊0 (: , : ,1) = �−2 0 2� Q a0: Left a1:Right
0 1 0 −1 0 1
−1 1 1 1 0 −1 S0 0.1 0.5
𝑊𝑊1 (: , : ,0) = �−1 −2 1 � , 𝑊𝑊0 (: , : ,1) = �−1 0 −1�
0 −1 −1 −1 −2 2 S1 0.4 0.3

S2 0.8 0.4

S3 0.1 0.2
4. 试推导下图神经网络模型中后向传播的梯度:𝜕𝜕𝜕𝜕/ 𝜕𝜕𝜕𝜕, 𝜕𝜕𝜕𝜕/ 𝜕𝜕𝑤𝑤

Q(S1, a0) <- 0.4 + (0.1 + 0.9*0.2 - 0.4)


用时间展开的DAG进行训练

U: Input-Hidden
W: Hidden-Hidden
V: Hidden-Output

RNN的训练方法
 假设输出为Softmaxloss
 激活函数为tanh(为什么不用ReLU)

o
Back-Propagation-Through-Time
 Forward Pass:
 输入整个序列
 计算得到整个输出序列
 存储所有中间变量
 Backward Pass:
 在时间展开的DAG上进行后向传播
 计算梯度
 根据权值约束,对循环权值的梯度求平均
 时间复杂度:o(T)
 内存复杂度:o(T)

RNN的记忆衰退
 简化分析
 线性系数
RNN的记忆衰退

RNN的记忆衰退
RNN学习的难题:信息饱和/爆炸
 权值被重复使用t次,等效于指数次放大
 Forward

 W的取值使得最终输出极不稳定
 CNN不存在这个问题,因为不同层W的取值可以不同

RNN学习的难题:信息饱和/爆炸
 Backward
 激活函数的梯度也是指数次放大
ReLU
𝜕𝐿 𝜕𝐿
= ∙ 𝑓′ ∙ 𝑊
𝜕ℎ𝑡−1 𝜕ℎ𝑡 ReLU

𝜕𝐿 𝑡
∝ 𝑓′ ∙ 𝑊 = 𝑄𝑇 𝛬𝑡 𝑄
𝜕ℎ0
Value-based: Deep Q-Learning / DQN
 Establish a fit function to predict final reward
 Q-value function
 Under current policy 𝜋
 Given current state 𝑠
 Predict the final reward for any action 𝑎

 can be decomposed to a recursive form:

Bellman Equation
Q a0: Left a1:Right Q a1: Left a2:Right

S0 0.1 0.5 S0 0.1 0.5

S1 0.4 0.3 S1 0.2+0.15 0.3

S2 0.8 0.4 S2 0.8 0.4


R=0.2
𝛾 = 0.75
S3 0.1 0.2 S3 0.1 0.2

Take action a0 at current state s1 Move to s3 Update Q-table


Get reward r

Deep Q-Learning / DQN

You might also like