LNN(ListenAI Neural Network)是聆思科技开发的一种端到端的训练推理一体化工具,它专注于AI算法的辅助设计、模型量化训练和推理引擎部署。
它包括量化训练组件linger和推理部署工具thinker两部分:
LNN工具链已支撑聆思芯片在计算机视觉、语音唤醒、语音识别、离线翻译等领域的10多个AI场景中应用落地。除了常规的CNN模型结构,已落地的应用中还包括流式Encoder-Decoder架构,特别是裁剪后的transformer结构和其它的attention结构。
LNN工具链仅支持聆思的CSK6硬件平台(轻量级边缘侧AIOT级别芯片,理论算力128G)。受限于芯片底层架构设计,工具链对模型的规模和结构有很多限制,详细内容请参考模型选择须知。大家也不必太在意于具体细节,因为LNN工具链已将这些限制内容的检查融入到工具链中。如果使用thinker的打包工具tpacker打包成功,说明模型已通过检查,适配成功,可以运行在CSK6平台上。
LNN工具链相对于实际硬件平台来说,它实际上是个linux平台的模拟器(只支持linux平台),模拟AI算法在芯片的计算过程,且模拟器的计算结果与硬件平台能够保证完全一致。
实际上芯片运行时,将打包好的资源和库文件烧录到特定地址即可。
linger是由AI研发部开发的的基于pytorch神经网络量化训练组件
linger基于PyTorch对聆思LUNA系列芯片进行深度定制,在神经网络训练的前向过程中将激活和权重量化到8bit,通过参数调整得到量化无损的8bit模型
易用性高
linger 是基于 PyTorch 的量化方案,在原始浮点训练代码中加入一行 linger 相关代码即可完成进行量化算子的替换,使用原始的训练流程即可完成量化训练,无需其他复杂设置
拓展性好
linger 基于 PyTorch 进行量化算子的搭建,因此只要符合 PyTorch 拓展算子的规范,你可以添加任何量化算子到 linger 中来完成你的量化需求
工具链完整
linger 后端适配thinker推理引擎,thinker推理引擎为CSK60XX而生,功能完善,量化训练与推理过程可无缝衔接,同时训练推理二进制一致得到保证
thinker是聆思科技AI研发部开发的轻量级神经网络推理框架
thinker将引擎执行器中的非核心功能尽量剥离出来放在离线工具中完成