此视频集锦查找表的优化能力,以产生一个有效的查找表S型函数,这是在深度学习网络中使用的键激活功能。然后,我们比较上一个Arduino由于相对加速®和意法半导体®利用在环仿真硬件所生成的代码发现板。
查找表是嵌入式设计的主要结构,并经常被用来加快你的算法的某些功能的运行时刻执行。例如,复杂的三角函数经常替换为更高效的LUT实现。
让我们尝试一个简单的实验 - 将相同的原则,以S形函数来探讨我们如何可以加快特别是在边缘的深度学习推理性能。
S形函数是用于神经网络的关键构建块,并且是在深学习网络中使用的常用的非线性激活函数之一。
在这里,我们有一个简单的Simulink子系金宝app统模型的双曲线函数。我要使用查找表优化工具应用生成最优LUT,指定输入和输出数据类型。由于这是一个有限的功能,我可以指定在输出最后的公差在1%的输出范围。
一旦优化问题就解决了,大家可以看一下比较情节,以验证LUT近似的错误是我们的规定的公差范围内。
现在,作为下一个步骤,允许用户从S形函数和生成的LUT生成的C代码并将其部署到一个皮质M平台像Arduino板。
我们使用硬件在环与利用Simulink投入运行生成的代码。金宝app目前运行在此模式下的代码的一些开销,但是这仍然给了我们相对执行速度的一个很好的比较。
正如你可以从执行个人资料中看到,该LUT是2.5×在Arduino的速度更快。我反复在基于Cortex-M7意法半导体发现板相同的测试。这里是表示相对加速用不同的数据类型的查找表的曲线图。
事实上,这可以扩展,如果你可以分享所有神经元之间的查找表近似,按数量级进一步降低执行速度。你可以用像双曲线正切其他激活功能相同的实验。
要了解更多关于在您的设计优化的LUT,请参阅下面的视频额外的链接。
您还可以选择从下面的列表中的网站:
选择最佳的网站性能的中国网站(在中国或英文)。其他MathWorks的国家网站都没有从您的位置访问进行了优化。
本网站使用Cookies来改善您的用户体验,个性化的内容和广告,并分析网站流量。通过继续使用本网站,您同意我们使用Cookie。请参阅我们的隐私政策要了解更多关于cookie和如何更改设置。