神经网络编译与模拟:从模型到硬件的高效实现
1. 步长调整与激活稀疏性
在神经网络训练中,步长是一个可学习的参数,它在训练过程中会不断调整,以确保每一层的信息损失最小。随着训练接近收敛,步长的值会根据每一层的激活分布和所需的位宽而有所不同。通常,训练中的第一层和最后一层会选择较小的步长,这意味着它们需要更多的带宽来表示。
通过特定方法生成的权重经过平均融合后,可以得到最终的双流网络的准确率和激活稀疏性。实验结果表明,该方法在UCF - 101人体动作识别数据集上,能够实现88%的激活稀疏性,同时准确率损失为5%。具体数据如下表所示:
| 模型类型 | 基线准确率(%) | 基线激活稀疏性(%) | 提议方法准确率(%) | 提议方法激活稀疏性(%) |
| — | — | — | — | — |
| 空间流 | 75 | 50 | 69 | 86 |
| 时间流 | 70 | 46 | 65 | 89 |
| 双流(平均融合) | 82 | 47 | 77 | 88 |
2. 专用推理加速器硬件的神经网络编译器
为了将神经网络算法的任务映射到具有模拟内存计算的专用硬件上进行推理,需要一个编译器来自动生成指令集,以在专用硬件上实现更好的性能。该编译器的输入是训练好的神经网络算法和推理加速器的硬件架构,输出是可执行的操作集。
2.1 编译器组件
编译器主要由三个组件组成:
- 硬件架构 :考虑专用推理加速器的独特架构和约束,生成加速器的硬件表示。
- 解析器 :解析每个神经
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



