深度学习

理解和使用深度学习网络

边缘AI与覆盆子GHC19π,霍珀庆祝妇女在计算

你好深度学习爱好者!我叫莎拉Nadeau,我兴奋的是客人写这篇博文MathWorks霍珀庆祝团队的代表!的霍珀庆祝是世界上最大的收集的女性技术专家。MathWorks GHC19白金赞助商和合作伙伴的AnitaB.org。MathWorks GHC团队5领导会议在GHC19说话的机会,一个面板,和三个车间。

图为MathWorks GHC团队

《华盛顿邮报》封面边缘AI与覆盆子π研讨会由Jaya Shankar深度学习代码生成团队的软件开发经理;Louvere Walker-Hannon、应用工程师与客户深度学习和数据分析;软件工程主任和彭妮安德森。车间是全新的硬件的一部分追踪2019年加入会议。

图(左到右):Louvere, Jaya,彭妮

准备车间

在软件开始融合硬件空间,你听到这一切:“硬件很难!”As an engineer with a background in electrical engineering, I always cringe at the thought that this refrain might discourage someone from trying to deploy their designs in different environments or even explore the beauty of analog circuitry. However, I must concede that there is one place this is undeniably true:准备和物流!
车间团队依靠一小队幕后志愿者,包括我自己,其他几个MathWorks GHC团队的成员,和许多制造商在MathWorks。处理硬件与软件的不同之处在于,每个车间设置身体独特的,必须单独测试和设置。团队举办许多董事会设置和锻炼bash派对。这是一个从一个照片。

图(左到右):Chinmayi,莎拉,莎拉,Louvere各拿一个覆盆子π

从左到右,你会看到Chinmayi斯里兰卡,质量工程师帮助极大锻炼代码开发和测试;莎拉·默罕默德,一名软件工程师MathWorks GHC团队和主持人的口袋AI和物联网车间;我自己,有一个可爱的头发一天;和Louvere控股董事会我们设置和测试。
即便如此,在硬件设置的任务更简单的帮助下Reeno约瑟夫,在嵌入式软件开发人员团队目标在班加罗尔是谁写的剧本来帮助减少每个志愿者必须执行的步骤建立一个董事会。
除了准备物理板,五金车间提出了一个有趣的沟通挑战:我们需要指导参与者——不管他们的硬件经验的过程——通过操作在headless模式下覆盆子π董事会从自己的笔记本电脑。作为团队中的技术作家,我起草和测试车间几个迭代指令。最终产品是有用的,足以让IBM的工程师保持车间后为了感谢我们的指令。

硬件设置车间旁边印刷车间的指令

运输车间

GHC19发生在奥兰多,这意味着MathWorks GHC团队谈判的物流运输所有必需的硬件从纳蒂克,马。多少硬件可能我们运输,我们会怎么做?什么样的强国访问将在房间里?我们能从电池运行的覆盆子π董事会银行?的后勤挑战看似无穷无尽,但边缘AI团队设法顺利成功,航运80覆盆子π董事会到佛罗里达,然后测试每一板前的车间。这是一分钱,提着几盒的覆盆子π,以太网电缆,电力银行、USB电缆,和以太网适配器提供车间。

图为一分钱弯曲而把车与盒的硬件

即使我们得到了所有的硬件到奥兰多在不损害一个委员会,研究小组还设置硬件配置为所有车间80董事会在与会者开始之前到达房间。所有可用的团队成员工作快速准备的房间。

MathWorks GHC团队设置硬件站车间

预先登记车间填满,有几乎没有任何席位当天交付。兴奋的参与者表现的脸和年龄在图像首先在MATLAB在线检测,然后使用生成的代码部署在覆盆子π。

全景展示全体出席研讨会的房间

在MATLAB面临和年龄检测

启动车间和探索问题空间,所有的参与者表现的脸和年龄检测一个图像,特别的图片GHC18深度学习和物联网车间团队还包括Louvere。
我= imread (“GHC18.jpg”);[416416]im = imresize (im);= detectAge (im);图imshow(出);

图为MATLAB在线脚本输出显示检测到的人脸和年龄在一个图像

年龄检测网络使用一个相对较小的数据集训练名人的图片。边缘的焦点人工智能与覆盆子π车间是解释深度学习和硬件的概念通过一个有趣的演示。不过,有趣的是需要考虑的和有趣的方式训练数据影响分类结果。
正如你可能已经猜到了,脸和年龄的深度学习魔法检测中发生的detectAge函数。函数加载pre-trained YOLOv2网络检测面临的输入图像。
faceDetector = coder.loadDeepLearningNetwork (“trained_face_detector_yolov2_mobilenetv2.mat”);%……我= imresize (, [416416]);[face_boxes, ~, labels1] = faceDetector.detect (im,“阈值”,0.5);%……
detectAge函数然后饲料检测面临着成MobileNetV2深度学习分类器预测每个脸图像中检测到的年龄。
ageDetector = coder.loadDeepLearningNetwork (“ageDetector_Mobilenetv2.mat”);%……k = 1:尺寸(face_boxes, 1)%年龄分类器运行在每个检测到的脸:face_box_pt = face_boxes (k);ymin = face_box_pt (1、2);ymax = ymin + face_box_pt (1,4);xmin = face_box_pt (1,1);xmax = xmin + face_box_pt (1、3);幼圆im (ymin: ymax xmin: xmax);faceout (1:128 1:128:) = imresize(脸,[128128]);撅嘴= ageDetector.predict (faceout);%计算年龄使用返回概率加权和年龄= [0:100];p_age =圆(和((+ 1岁)。*撅嘴)1);%……结束
参与者有趣的MATLAB代码运行在自己的图片,和车间讨论如何移动网络上迅速的优势。

部署训练网络边缘

接下来在车间讨论代码生成是一个关键的工具部署深度学习网络。由于时间限制,参与者并没有生成代码并将文件移动到覆盆子π董事会本身。MathWorks GHC团队照顾这一步之前,车间所以参与者可以专注于理论。车间领导走参与者通过脚本生成c++代码用于部署。
%从人脸检测器生成代码的应用程序cfg = coder.config(“自由”);cfg。TargetLang =“c++”;dlcfg = coder.DeepLearningConfig (“arm-compute”);dlcfg。ArmArchitecture =“v7”;dlcfg。ArmComputeVersion = ' 19.02 ';cfg。DeepLearningConfig = dlcfg; cfg.GenCodeOnly = true; hw = coder.hardware('Raspberry Pi'); cfg.Hardware = hw; codegen -config cfg detectAge -args ones(416,416,3,'uint8') -d detectAgeCode -report
除了学习代码生成,参与者学习技术用于减少深度学习网络的大小,包括量子化、网络优化和代码生成。

脸和年龄检测覆盆子π

参与者使用VNC查看器和有线以太网连接到自己的笔记本电脑连接到覆盆子π董事会前车间团队建立会话。开始锻炼,他们部署的脸和年龄检测算法在同一GHC18车间团队的形象。然后,参与者有很多乐趣转移selfies覆盆子π的脸和年龄检测自己的图像。

研讨会参与者造成笔记本电脑旁边显示年龄分类结果从树莓π

在庆祝

MathWorks团队飞纳蒂克,把所有参与者的积极能量带到会议和许多经验教训如何产生一个成功的五金车间。我们感激有机会分享研讨会这样的天才和形形色色的女性。
到达回到MathWorks总部,MathWorks GHC团队有权利工作,比划着超过150个感谢卡以外的人的团队贡献了宝贵的时间,专业知识和思想内容。许多这些卡片去帮助的人专门用AI与覆盆子π车间。再次,我要感谢很多同事自愿牺牲他们的时间让车间成功!

GHC之外

MathWorks GHC的团队,这些工作室的工作还远未结束后我们离开大会回到纳蒂克。我们想分享学习的机会和乐趣与尽可能多的人。作为一个例子,看看这篇博客如何GHC18手与深度学习和物联网车间与科学共享天参与者路易斯安那州拉斐特大学的。
如果你有兴趣提供边缘AI与覆盆子π车间机构,接触Louvere Walker-Hannon lwalker@mathworks.com。我们已经支持集团将车间在俄亥俄万博1manbetx州立大学。
看到更多的乐趣在GHC19 MathWorks,看看这个Twitter的时刻。开始深入学习,自由深度学习斜坡弯道。遵循# shelovesmatlab标签看到很棒的女科学家和工程师的工作!
|
  • 打印
  • 发送电子邮件

评论

留下你的评论,请点击在这里MathWorks账户登录或创建一个新的。