开发平台支持Arm Cortex-M的微控制器上人工智能训练

Development platform enables AI training on Arm Cortex-M-based microcontrollers

Cartesiam推出了nanodedge AI Studio,这是一个集成开发环境,开发人员可以使用在不需要任何数据科学知识的情况下,在微控制器上创建AI培训和推理应用程序。该技术兼容任何基于Arm Cortex-M的微控制器,M0到M7,包括M55,并且不需要大量的数据集进行训练。

现在可以在微控制器内部实现学习。将同一个微控制器和同一个库应用于预测性维护应用程序,可以了解单个机器的振动特性

在这种资源受限的设备上训练人工智能算法是一个重大的首次。典型的应用,如预测性维护,直接在微控制器上使用无监督学习来教授特定机器内部正常环境的算法。然后可以创建一个模型并用于推断(预测)。

“真正革命性的是能够在微控制器内部学习,”Cartesiam联合创始人Joël Rubino告诉《欧洲经济时报》。“其人在微控制器内部进行推理,在云端进行学习。需要捕捉数据,在云端创建数据科学家的模型,然后编译所有的东西,然后在微控制器上运行。所做的是不同的。创建了一个库,可以直接在微控制器内部,在任何机器内学习。在边缘创建模型。在边缘训练。这改变了游戏规则,因为现在市场上没有人能做到这一点。”

AI at the Edge

AI在边缘

鲁比诺说,一段时间以来,随着边缘智能化的趋势,计算机行业已经从集中式向分散式发展。

“一开始的想法是,边缘的所有对象都将生成大量的数据。云也不可能分析和计算这些数据。与其将所有数据发送到云端,想法是为什么不向边缘发送情报。”。

本地智能减少了对通信带宽的需求,并防止了篡改的风险。

微控制器作为当今最可用的端点计算平台,完全可以将智能带到端点设备。然而,到目前为止,有限的计算能力和内存是无法克服的挑战。

总部位于法国土伦的卡特西亚姆(Cartesiam)聘请了一支由受过博士学位教育的数学家、数据科学家和机器学习专家组成的团队。

鲁比诺说:“从头重写了所有的机器学习算法,这样就可以安装在微控制器中了。”。“今天这个过程的另一个问题是,需要为想观察的现象采集数据,但数据科学家是一种稀缺资源……如果想把智能带到边缘,必须比现在简单、快捷、更实惠。”

开发流程

NanoEdge人工智能工作室已经制作了3年。

鲁比诺说:“这真的是要把人工智能带到所有的嵌入式设计师那里,使用nanodedge人工智能工作室,将能够在对象内开发人工智能,而且速度非常快。”。

使用NanoEdgeAI Studio的典型开发流程对于没有人工智能专业知识的嵌入式开发人员来说是完全可以访问的。开发人员定义正在使用的传感器类型(电流、加速度计等),定义可用的微控制器(M0到M7),并指定可用RAM的数量。加载一个典型数据的小样本,IDE将使用这些数据来优化不同的算法-在信号处理库、机器学习库和超参数之间,有5亿个可用的组合。最终选择的算法作为一个大小为4kB到32kB的C库提供。可以在开发人员的工作站上使用一个简化的仿真器进行测试,然后下载到目标微控制器上。鲁比诺说,应用程序可以在几天内启动并运行。

开发人员在IDE中提供了一个典型数据的小样本,并创建了一个可以嵌入到微控制器中的库。这些微控制器可以在现场了解所监视的各个机器的特性。

在此基础上,微控制器可以安装在使用无监督学习来训练算法的领域(在无监督学习中,未标记的数据被提供给算法,必须在数据本身中找到结构)。然后创建一个模型,该模型可用于下一步的推理。

同一台机器上的微控制器可以学习同一台机器上的振动数据,而这两台机器是用单片机学习的。不同机器上的同一个库将从这台机器的振动中学习,并创建自己的机器学习模型,”鲁比诺说。

例如,Cartesiam的一个客户使用NanoEdge AI Studio的beta版生产空调机组。该公司监测风扇电机的电流,以检测空气过滤器是否堵塞,需要更换。在客户使用兼容过滤器而不是制造商原装过滤器的市场中,当过滤器被更换时,模型可以了解新过滤器的特性,以预测何时需要更换。

融资回合

该公司成立于2016年,其理念是将人工智能引入端点和物联网设备,如传感器节点。在两年前200万欧元的资助加速了算法的开发之前,50万欧元的种子基金资助使概念得以验证。

çolane的Bob assistant是一个火柴盒大小的设备,可以学习所固定的机器的特征振动。

第一个使用卡特尔塞姆技术进入市场的产品是Éolane的Bob assistant,已经在市场上销售了大约2年。Bob是一种火柴盒大小的硬件设备,可以用磁铁固定在机器上。花7天时间学习每台机器的特征振动(每隔几分钟执行一个简短的学习阶段),然后创建一个机器学习模型,可以在指定的时间间隔内用于预测。如果检测到异常,将连接到LoRA网络以发出适当的通知。

鲁比诺说,Bob已广泛应用于欧洲公司的预测性维护应用,如雷诺、法国铁路运营商SNCF、法国电力公司EDF Energy、空客、泰雷兹等。

Bob的成功使Cartesiam意识到不能继续为每个客户开发单独的库,并致力于开发一种工具,客户可以使用为自己的应用开发自己的库。结果,NanoEdge人工智能工作室,现在可以使用了。

开发平台支持Arm Cortex-M的微控制器上人工智能训练的更多相关文章

  1. Micro Python:运行在微控制器上的Python

    Micro Python运行在微控制器上的Python.遵守MIT协议.由剑桥大学的理论物理学家乔治·达明设计.和Arduino类似,但Micro Python更强大. Micro Python的软件 ...

  2. .Net语言 APP开发平台——Smobiler学习日志:快速实现手机上的图片上传功能

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的"S ...

  3. LabVIEW图形化的AI视觉开发平台(非NI Vision),大幅降低人工智能开发门槛

    前言 之前每次进行机器学习和模型训练的时候发现想要训练不同模型的时候需要使用不同的框架,有时候费了九牛二虎之力终于写下了几百行代码之后,才发现环境调试不通,运行效率也差强人意,于是自己写了一个基于La ...

  4. 痞子衡嵌入式:ARM Cortex-M内核那些事(2)- 第一款微控制器

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是第一款Cortex-M微控制器. 1.天生荣耀:ARM Cortex-M处理器由来 ARM公司自2004年推出ARMv7内核架构时,摒弃 ...

  5. 百度AI开发平台简介

    AIstudio https://aistudio.baidu.com/aistudio/index 关于AI Studio AI Studio是基于百度深度学习平台飞桨的一站式AI开发平台,提供在线 ...

  6. 玩转微信2次开发1_交互通信api.php(微擎版)

    在2次开发中,涉及到比较多的也比较繁琐的就是服务器和微信服务器的交互 用户在公众号里操作回复关键词都会让微信服务器和开发者的服务器进行交互 用户一旦关注了某某公众号--微信后台会去查询该公众号是否连接 ...

  7. 从表单驱动到模型驱动,解读低代码开发平台的发展趋势 ZT

    原文地址:https://www.grapecity.com.cn/blogs/read-the-trends-of-low-code-development-platforms 随着社会数字化进程的 ...

  8. 阿里云云开发平台助力风变科技Serverless架构升级实战

    阿里云云开发平台助力风变科技Serverless架构升级实战 背景 风变科技 一个希望通过技术去推动下一代基础教育的组织.旗下产品包括第一代的熊猫书院(读书类产品).第二代的熊猫小课(泛学科综合学习平 ...

  9. 痞子衡嵌入式:微控制器CPU性能测试基准(EEMBC-CoreMark)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是微控制器CPU性能测试基准CoreMark. 在嵌入式系统行业用于评价CPU性能指标的标准主要有三种:Dhrystone.MIPS.Co ...

随机推荐

  1. Xposed框架Hook Android应用的所有类方法打印Log日志

    本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80954759 在进行Android程序的逆向分析的时候,经常需要Android程 ...

  2. hdu2102 水搜索

    题意:                                    A计划 Problem Description 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次 ...

  3. IDEA 这样设置,好看到爆炸!!!

    Hello,大家好,我是楼下小黑哥. 今天这篇文章是次条视频的文案,这里推荐大家直接看视频学习. IDEA 这样设置,好看到爆炸!!!#01 今天这期我们来分享几个美化 IDEA 设置技巧,让你的 I ...

  4. 初学Golang的笔记

    Note 一个module是一个go package的集合,该module用于发布的一个单位. 一般一个go repo仅仅包含一个module,含有一个go.mod文件 每个module路径不仅仅用于 ...

  5. Day002 Java三大版本

    Java三大版本 Write Once .Run Anywhere JavaSE: 标准版(桌面程序,控制台开发......) JavaME:嵌入式开发(手机,小家电.......) JavaEE:E ...

  6. 第三部分 IDEA创建并运行项目

    可以创建一个maven,几行代码就解决了导入依赖,但是我的电脑不知道哪里出现了问题,IDEA重装,jdk重装,maven重装,都无法解决问题,找了3天,还是没有解决问题.最后只能采用手动导入包方法.看 ...

  7. PHP解压压缩包文件到指定目录的实现

    $src_file为文件路径,上传文件返回压缩包路径即可 public function unzip($src_file, $dest_dir=false, $create_zip_name_dir= ...

  8. RabbitMQ实现延时消息的两种方法

    目录 RabbitMQ实现延时消息的两种方法 1.死信队列 1.1消息什么时候变为死信(dead-letter) 1.2死信队列的原理 1.3 代码实现 1.4死信队列的一个小坑 2 .延时插件 2. ...

  9. ASP.NET Core文件压缩最佳实践

    前言 在微软官方文档中,未明确指出文件压缩功能的使用误区. 本文将对 ASP.NET Core 文件响应压缩的常见使用误区做出说明. 误区1:未使用 Brotil 压缩 几乎不需要任何额外的代价,Br ...

  10. Mycat调优启用useOffHeapForMerge报java.lang.NumberFormatException异常解决(附源码)

    come from : https://blog.csdn.net/u013716179/article/details/89886452