18、实现通用粒子滤波算法,针对不同数量的粒子流N和不同的有效粒子大小阈值Neff进行处理。
- 先选择一个分布(正态分布是不错的选择)并进行初始化。
- 然后根据算法在每一步更新粒子。
- 最后,检查
Neff
是否低于阈值,如果是,则继续进行重采样过程。
19、实现序贯重要性采样(SIS)粒子滤波算法,并绘制不同时间点 n 下生成的粒子及其归一化权重。观察随着时间推移,权重的退化现象。
可按如下步骤操作:
- 先选择一个分布(正态分布是不错的起始选择)并初始化。
- 然后依据算法在每一步更新粒子。
- 最后检查有效粒子大小 $N_{\text{eff}}$ 是否低于阈值,若低于则进行重采样过程。
之后绘制不同时间点 $n$ 下的粒子及其归一化权重,观察权重方差随时间增加,少数粒子权重非零的退化现象。
20、证明如果激活函数是 softmax,损失函数是交叉熵,那么在特定计算式中的 δL nj 不依赖于非线性函数的导数。
将 softmax 激活与交叉熵损失函数结合会得到与非线性函数导数无关的梯度,但未给出具体证明过程。
21、考虑一个分类问题,有数据集X1和X2。采用两层前馈神经网络,并使用自适应反向传播算法对其进行训练,初始步长设为0.0001,ri = 1.05,rd = 0.7,c = 1.04,迭代6000次。分别基于X1和X2计算训练误差和测试误差,并绘制训练误差随迭代次数变化的曲线。将结果与之前某题中(b)部分的结果进行比较。
需要按照以下步骤完成任务:
- 构建两层前馈神经网络;
- 使用自适应反向传播算法训练网络,设置初始步长为0.0001,ri = 1.05,rd = 0.7,c = 1.04,迭代6000次;
- 基于数据集X1计算训练误差,基于数据集X2计算测试误差;
- 绘制训练误差随迭代次数变化的曲线;
- 将上述结果与之前某题中(b)部分的结果进行比较。