STM32垂直应用挑战第六周+人工智能 学习网站:https://www.stmcu.com.cn/ecosystem/app/ai 在本周的人工智能学习中,对人工智能有更深的了解和认识了ST与人工智能的应用。对于之前接触过一些人工智能,利用树莓派去调用Snowboy实现语音控制。在机器学习是基于能够数据进行学习和预测的算法组成的,再到对于机器学习的方法有,决策树、聚类、基于规则的学习、归纳逻辑编程和深度学习。在机器学习中往下延深就是深度学习这一大类,深度学习是利用神经网络进行学习,而深度学习最主要就是需要大量的数据来输入,到训练模型,最后使用训练的模型分析数据。而且对于神经网络可以包括三层,输入层、隐藏层和输出层。 图1 神经网络分层 对于深度学习的优缺点,在优点上,学习能力强、覆盖范围广、适应力强和可移植性好,而且深度学习最大的优点就在于假设只要层数够 一个较好的 Feature Set 是可以被学出来的深度学习对比其它的机器学习算法本质是先Dimension Reduction再有Classification。对于缺点,计算量大、便携性差、硬件成本较高和模型设计复杂。 对于深度学习的框架是一定的,对于它开发的框架通过ST提供的资源去实现开发流程,获取数据——数据清洗、打标——训练神经网络模型——模型转换为MCU上的执行代码——使用训练好的模型分析数据,如图2。 图2 神经网络开发流程 在收集数据的过程中ST提供硬件开发板和软件采集数据,SensorTile、SensorTile.Box、IOT Node (B-L475E-IOT01A),这三个就是对于获取数据的硬件开发板。对于AI技术使用经过训练的人工神经网络对运动和振动传感器、环境传感器、麦克风和图像传感器的数据信号进行分类,比传统的手工信号处理方法更加快速、高效。现在开发人员可以用STM32Cube.AI将预先训练的神经网络转成可在STM32 微控制器上运行的C代码,调用经过优化的函数库。STM32Cube.AI附带即用型软件功能包,其中包括用于识别人类活动和音频场景分类的代码示例,可在ST SensorTile 参考板和ST BLE Sensor mobile app移动应用程序上立即使用这些代码示例。在训练好的模型拿来对运动、声音类数据分析可以使用FP-AI-SENSING1,该软件功能包提供支持基于神经网络的端到端运动(人类活动识别)和音频(音频场景分类)应用代码示例。该功能包利用意法半导体的SensorTile参考板在训练之前捕获和标记传感器数据,然后,电路板运行优化神经网络的推论。而且在对图像数据分析时,可以利用Openmv去实现,并且可以在OpenMV生态系统中集成STM32Cube.AI生成代码,在下面分享将STM32Cube.AI和OpenMV结合使用的过程。 图3 STM32Cube.AI和OpenMV结合使用的过程
|