返回介绍

9.8 高效的卷积算法

发布于 2024-01-20 12:27:18 字数 535 浏览 0 评论 0 收藏 0

现代卷积网络的应用通常需要包含超过百万个单元的网络。利用并行计算资源的强大实现是很关键的,如第12.1节中所描述的。然而,在很多情况下,也可以通过选择适当的卷积算法来加速卷积。

卷积等效于使用傅里叶变换将输入与核都转换到频域、执行两个信号的逐点相乘,再使用傅里叶逆变换转换回时域。对于某些问题的规模,这种算法可能比离散卷积的朴素实现更快。

当一个d维的核可以表示成d个向量(每一维一个向量)的外积时,该核被称为可分离的(separable)。当核可分离时,朴素的卷积是低效的。它等价于组合d个一维卷积,每个卷积使用这些向量中的一个。组合方法显著快于使用它们的外积来执行一个d维的卷积,并且核也只要更少的参数来表示成向量。如果核在每一维都是w个元素宽,那么朴素的多维卷积需要O(wd)的运行时间和参数存储空间,而可分离卷积只需要O(w×d)的运行时间和参数存储空间。当然,并不是每个卷积都可以表示成这种形式。

设计更快的执行卷积或近似卷积,而不损害模型准确性的方法,是一个活跃的研究领域。甚至仅提高前向传播效率的技术也是有用的,因为在商业环境中,通常部署网络比训练网络还要耗资源。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文