轻量级深度卷积神经网络在农业机器人中的应用

简介: 最近,深度学习正随着训练过程简单化和准确化而变得越来越流行。对于旨在将研究转换为工业应用的研究者而言,这是一个至关重要的需求,例如机器人。

在本文中,作者提出了学习轻量级模型的一个非常新颖的方式,在实现精度超过 90% 的同时让训练速度快了一个数量级,让参数也少了一个数量级。作者主要使用了以下三个步骤:


1). 将预先训练好的模型适应于手头的任务中。

2). 在适应的模型中使用模型压缩技术来学习到一个具有更少参数的轻量级深度卷积神经网络(DCNN)

3). 作者将 K 个轻量级模型结合起来作为一个混合模型来提高轻量级模型的性能


最后,这个方法被用在了农业机器人中,并取实现了良好的性能。


简介


如今农业机器人的使用在稳步增长,例如图 1 所示的 AgBot Ⅱ [1],它帮助进行杂草检测和分类,以及 Harvey[2],可以用来进行检测和分割作物。目前的杂草分割方法是把形状和像素统计特征相结合,使用一个随机森林分类器来做分类。因为机器人平台的资源是有限的,所以很难部署深度卷积神经网络,并且用有限的数据去训练深度神经网络也是很困难的。使用最先进的网络所需要的计算能力是那些常见机器人负担不起的。这篇文章在复杂度和准确度之间做了一个折中,并通过以下步骤解决了这个问题。首先,开发者把一个预先训练好的模型 Inception-v3[3] 适应在这个任务中。然后,他们使用模型压缩和「蒸馏」技术实现了指数级减少的参数。最后,基于之前的工作 [4],作者将一组 K 个轻量级模型结合成了一个混合模型来提升性能。

微信图片_20211128200113.jpg图 1:上边是 AgBot Ⅱ,它在执行杂草管理;下面是 Harvey,它是一个机器人甜椒收割机


这个方法在杂草分割上实现了可观的结果。Adapted-IV3 模型将准确率从 85.9% 提升到了 90.3。并且,对于 K=4 的轻量级深度卷积神经网络,它能够在使用更少的参数和更快的帧率时实现 90.3% 的准确率,


作者提供了一份详实的综述,论述了这个新颖思想的历史以及导致这个思想的方法。他们还提供了对目前的学习特征和模型压缩这两个技术的趋势的优劣分析。这不是这篇论文的重点,所以在这里不会深入细节。如果你对这篇论文感兴趣,它值得一读。

提出的方法


新方法主要是一个被分为三步的过程,这个过程在速度和内存大小之间做了精确的折中。这个方法被用来有效地解决诸如 AgBot II 这种机器人平台的杂草分割问题。滑动窗口的维度在彩色图像上是 81 × 81 × 3(因为彩色图像是三通道的),窗口中间的像素就被判断为要么是作物,要么是杂草。由于大多数机器人视觉问题都是稀疏问题,所以全连接神经网络(FCN)没有被使用。这篇论文中的稀疏问题指的是杂草分割仅仅需要对包含植被的像素做出分类,所以作者做出了关于他们为何没有使用全连接神经网络的解释,因为全连接神经网络是针对密集决策(对每一个像素)来设计和训练的。作者用图 2 解释了什么是稀疏问题。


微信图片_20211128200132.jpg图 2:一个具有挑战性的杂草 vs 作物的分割问题。上面的图片是原始图像,下面是对应的事实,其中绿色代表作物,红色代表杂草


现在我要简要地描述一下这三个摘要过程。


A. 迁移学习:适应复杂的预训练网络


就像在这个例子中一样,如果你只有有限的数据来训练一个神经网络,最好的方法就是拿一个预先训练好的模型并将其适应在你的任务中。有名的几个常被使用的预训练网络是:VGGnet、GoogleNet 等等。在这篇论文中,作者使用了 GoogleNet 的最新版本--Inception-v3,与其他模型相比,它是一个更小的模型。随后作者将原始图像进行了重采样,以让它与 Inception-v3 模型所需要的尺寸相匹配。


B. 模型压缩:训练轻量级深度卷积神经网络

微信图片_20211128200151.jpg图 3:对 AgNet 和 MiniInception DCNNs 的描述。上面是一个 AgNet 模型,它是一个由 8 个深度卷积层和一个全连接层组成的深度模型。模型的深度是轻量级的,并且拥有少于 25 万的参数。下面是 MiniInception 模型,它与 AgNet 有着类似的结构,然而,后者的卷积层结合了两个感知模型 (图中高亮的部分)。这使得模型会更加复杂,拥有 510 万个参数。


尽管 Inception-v3 拥有 25 万个参数(这已经远远少于其他模型了),但是它仍然需要模型压缩技术。这里,将过程 A 中的模型作为「教师网络」,然后从中学习到一个轻量级的「学生深度卷积神经网络」。为了训练这个模型,使用了学生网络和事实之间的损失函数,以及教师网络和学生网络的逻辑输出之间的 L2 损失。作者考虑了两种潜在的结构,第一个包含 8 个卷积层和 1 个全连接层,它与 AlexNet 类似,你可以在图 3 中看到细节。第二个网络结构包含 4 个卷积层,并在后面还跟随着 2 个感知模型和一个全连接层 (类似于 GoogleNet),你可以在图 3 的底部看到。图 4 中描述了 4 个子模型。你可以在图 4 的解释中看到细节。

微信图片_20211128200208.jpg图 4:我们所用的感知模型,它包括四个子模型 (a)-(d)


参数的细节如表 1 所示。


表Ⅰ:用在子模型中的两个感知网络的参数数量


微信图片_20211128200234.jpgC. 深度卷积神经网络的混合和组合


在这篇论文中,通过结合这些轻量级模型提升了性能。通过平均决策,它可以以较低的成本提升性能。首先,基于最大逻辑值计算占用概率:

微信图片_20211128200248.jpg然后,如公式 2 所示,我们得到了最终的分类,它是在对应的占用概率下的加权和。

微信图片_20211128200306.jpg

实验结果


作者利用这个方法解决了机器人平台中的杂草分割问题。并且这个模型在 tensorflow 中得到了实现。Adam 优化器的参数如下所示


  • 学习率 (learning rate): γ = 1e−4, ε = 0.1
  • 批处理大小 (batch size) :b = 60
  • 下降率 (drop out rate) :50%.


1. 杂草分割的准确度


作者使用了公开的训练数据及「Crop/Weed Field Image Dataset (CW-FID)」,它包括 20 张训练数据和 40 张测试数据。作者还将结果与 Haug 和 Ostermann 的工作 [5] 做了比较,Haug 和 Ostermann 在特征上训练了一个随机森林。我们可以在表 2 中看到细节结果,它表明文中提出的所有深度学习方案都要好于之前提出的方法。Adapted-IV3 模型得到了最高的准确率,大约是 93.9%,然而 Haug 和 Ostermann 达到的准确率是 85.9%。


表Ⅱ:不同的模型在 CW-FID 数据集上的准确率


微信图片_20211128200326.jpg2. 轻量级深度卷积神经网络的混合


这里,作者还结合了多个轻量级的模型,例如 Mix-AgNet 和 Mix-MiniInception。与使用集合模型相比,MixDCNN 方法提供了 0.15% 的性能提升。对单 GPU 而言,也没有增加模型复杂度。在表Ⅱ中,可以看到,通过增加 K(模型的数量),全局性能得到了提升,但是相对性能却降低了。K=4 的 AgNet DCNNs 在模型复杂度和准确度之间是一个不错的折中。在图 5 中你可以看到可视化的结果,描述了 3 个深度卷积神经网络模型:AgNet、MixAgNet(K = 4)以及 Adapted-IV3。

微信图片_20211128200344.jpg图 5:三种深度学习方法的例子:红色代表杂草,绿色代表作物。每一行从左到右依次是:实际结果、Agnet 模型、MiniInception 模型、Mix-AgNet(K=4)、Mix-MiniInception(K=2)以及 Adapted-IV3 模型。每一行代表一张不同的图片,最后一行代表一个失败的案例。


3. 速度和模型复杂度


表Ⅲ展示了每秒钟可以被处理的区域的数量。我们发现,模型越简单,每秒处理的区域数越多。复杂度会随着模型数量的增加而增加,这会降低每秒钟处理的区域数量。为了维持它们之间的平衡,我们选择了 K=4 时候的 Mix-AgNet 模型以及 K=2 时候的 Mix-MiniInception 模型。我们也可以发现,考虑到速度和复杂度,AgNet、Mix-AgNet 和 Mix-MiniInception 这三种方法也具有被部署到机器人平台上的潜力。


表Ⅲ:参数的数目以及每秒钟可以处理的区域的数量


图 5:三种深度学习方法的例子:红色代表杂草,绿色代表作物。每一行从左到右依次是:实际结果、Agnet 模型、MiniInception 模型、Mix-AgNet(K=4)、Mix-MiniInception(K=2)以及 Adapted-IV3 模型。每一行代表一张不同的图片,最后一行代表一个失败的案例。


4. 速度和模型复杂度


表Ⅲ展示了每秒钟可以被处理的区域的数量。我们发现,模型越简单,每秒处理的区域数越多。复杂度会随着模型数量的增加而增加,这会降低每秒钟处理的区域数量。为了维持它们之间的平衡,我们选择了 K=4 时候的 Mix-AgNet 模型以及 K=2 时候的 Mix-MiniInception 模型。我们也可以发现,考虑到速度和复杂度,AgNet、Mix-AgNet 和 Mix-MiniInception 这三种方法也具有被部署到机器人平台上的潜力。


表Ⅲ:参数的数目以及每秒钟可以处理的区域的数量微信图片_20211128200405.jpg

结论


这篇论文提供了一个可训练被用在机器人平台上的深度卷积神经网络的新方式。论文有着全面的文献综述和清晰的图表,这可以让读者更容易地理解背景信息以及实现这个方法的细节。尽管作者并没有告诉我们他们为什么要用这种方法,但是这篇论文给我们提供了一个思考和使用深度神经网络的新方法。正如作者在论文末尾建议的一样,我们可以尝试更多的方法来提升性能,但是这篇论文的价值在于它提供了可以被接受并且应用在日常生活中的研究结果。

相关文章
|
1月前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
眼疾识别系统,本系统使用Python作为主要开发语言,基于TensorFlow搭建卷积神经网络算法,并收集了4种常见的眼疾图像数据集(白内障、糖尿病性视网膜病变、青光眼和正常眼睛) 再使用通过搭建的算法模型对数据集进行训练得到一个识别精度较高的模型,然后保存为为本地h5格式文件。最后使用Django框架搭建了一个Web网页平台可视化操作界面,实现用户上传一张眼疾图片识别其名称。
105 5
基于Python深度学习的眼疾识别系统实现~人工智能+卷积网络算法
|
2月前
|
机器学习/深度学习 人工智能 算法
猫狗宠物识别系统Python+TensorFlow+人工智能+深度学习+卷积网络算法
宠物识别系统使用Python和TensorFlow搭建卷积神经网络,基于37种常见猫狗数据集训练高精度模型,并保存为h5格式。通过Django框架搭建Web平台,用户上传宠物图片即可识别其名称,提供便捷的宠物识别服务。
321 55
|
3天前
|
机器学习/深度学习 编解码 自动驾驶
YOLOv11改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
YOLOv11改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
30 16
YOLOv11改进策略【模型轻量化】| 替换骨干网络为MoblieNetV1,用于移动视觉应用的高效卷积神经网络
|
3天前
|
机器学习/深度学习 存储
YOLOv11改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
YOLOv11改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
29 15
YOLOv11改进策略【模型轻量化】| PP-LCNet:轻量级的CPU卷积神经网络
|
3天前
|
机器学习/深度学习 编解码 移动开发
YOLOv11改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
YOLOv11改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
15 7
YOLOv11改进策略【Conv和Transformer】| TPAMI-2024 Conv2Former 利用卷积调制操作和大核卷积简化自注意力机制,提高网络性能
|
3天前
|
机器学习/深度学习 计算机视觉 iOS开发
YOLOv11改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 RepViT 轻量级的Vision Transformers架构
YOLOv11改进策略【模型轻量化】| 替换骨干网络 CVPR-2024 RepViT 轻量级的Vision Transformers架构
26 12
|
1月前
|
负载均衡 容灾 Cloud Native
云原生应用网关进阶:阿里云网络ALB Ingress 全能增强
在过去半年,ALB Ingress Controller推出了多项高级特性,包括支持AScript自定义脚本、慢启动、连接优雅中断等功能,增强了产品的灵活性和用户体验。此外,还推出了ingress2Albconfig工具,方便用户从Nginx Ingress迁移到ALB Ingress,以及通过Webhook服务实现更智能的配置校验,减少错误配置带来的影响。在容灾部署方面,支持了多集群网关,提高了系统的高可用性和容灾能力。这些改进旨在为用户提供更强大、更安全的云原生网关解决方案。
455 19
|
29天前
|
机器学习/深度学习 算法 计算机视觉
基于CNN卷积神经网络的金融数据预测matlab仿真,对比BP,RBF,LSTM
本项目基于MATLAB2022A,利用CNN卷积神经网络对金融数据进行预测,并与BP、RBF和LSTM网络对比。核心程序通过处理历史价格数据,训练并测试各模型,展示预测结果及误差分析。CNN通过卷积层捕捉局部特征,BP网络学习非线性映射,RBF网络进行局部逼近,LSTM解决长序列预测中的梯度问题。实验结果表明各模型在金融数据预测中的表现差异。
|
1月前
|
容灾 网络协议 数据库
云卓越架构:云上网络稳定性建设和应用稳定性治理最佳实践
本文介绍了云上网络稳定性体系建设的关键内容,包括面向失败的架构设计、可观测性与应急恢复、客户案例及阿里巴巴的核心电商架构演进。首先强调了网络稳定性的挑战及其应对策略,如责任共担模型和冗余设计。接着详细探讨了多可用区部署、弹性架构规划及跨地域容灾设计的最佳实践,特别是阿里云的产品和技术如何助力实现高可用性和快速故障恢复。最后通过具体案例展示了秒级故障转移的效果,以及同城多活架构下的实际应用。这些措施共同确保了业务在面对网络故障时的持续稳定运行。
|
2月前
|
数据采集 JavaScript 前端开发
异步请求在TypeScript网络爬虫中的应用
异步请求在TypeScript网络爬虫中的应用

热门文章

最新文章