从代码转化角度看STM32CubeMX.AI

嵌入式设备自带专用属性,不适合作为随机性很强的人工智能深度学习训练平台。想象用S3C2440训练神经网络算法都会头皮发麻,PC上的I7、GPU上都很吃力,大部分都要依靠服务器来训练。但是一旦算法训练好了做成了一个API库就可以到处移植转化使用了,就像一个驱动程序。

但是训练好的深度学习模型直接用在嵌入式设备上依然有难度,一个是嵌入式设备计算资源有限(RAM、ROM小),其二是嵌入式设备大部分使用使用的编译器都是C语言的,而深度学习模型代码一般都是高级语言如Python等。

那么就存在语言转化、逻辑转化、效率转化的问题。意法半导体公布的人工智能模型转化函数库“X-CUBE-AI”完全不同于它之前公布的底层驱动包、中间层函数库。“X-CUBE-AI”目前仅仅转化一小部分人工智能模型:

  • Generation of an STM32-optimized library from pre-trained Neural Network models
  • Support various Deep Learning frameworks such as Keras, Caffe, ConvnetJS, and Lasagne
  • Easy portability across different STM32 microcontrollers series through STM32Cube™ integration
  • Free, user-friendly license terms

虽然这与传统的嵌入式比如做驱动程序、写C应用代码差别很大,可是本质上除了多了一步转化成C代码并在嵌入式设备上调试,实际上与在PC上设计开发深度学习模型区别不大。

意法半导体恰恰解决了转化这一中间层的痛点。对于传统嵌入式软件工程师而言,搞人工智能的人甚至不是软件工程师他们通过python、matlab等研究性质的语言设计出了人工智能模型,但离产品化还很远。在通用平台上开发人工智能已经比较成熟,各大PC、手机、软件厂商提供了大量工具。可是在嵌入式设备领域则是一片蛮荒之地。诚然对于水平高的人而言,将python设计的人工智能模型,转为C语言并下载到嵌入式设备上可能不难。但是对于大量从未接触人工智能模型的软件工程师而言,人工智能模型就像一个黑盒,他们更希望这个黑盒是用C语言打造的。

希望有一天STM32CubeMX.AI做成了标准库一样,嵌入式软件工程师开发人工智能应用就得心应手了。

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值