王宝聚,兰玉彬,陈蒙蒙,柳宝虎,王国宾,刘海涛
(1. 山东理工大学农业工程与食品科学学院,山东淄博,255000; 2. 国家精准农业航空施药技术国际联合研究中心山东理工大学分中心,山东淄博,255000; 3. 山东理工大学电气与电子工程学院,山东淄博,255000)
农业是世界上最重要的产业之一[1],因为粮食是每个人所必须的,它保证了全球人口的生存,农业的快速发展使得饥饿危机不再出现[2]。在当今全球人口不断增长的趋势下,需要更多的农业劳动力来维持农业生产[3];然而,在之前的几十年中,从事农业劳动的农民的平均年龄正在快速增大,从事农业劳动的45~64岁的人口占比已经从2006年的33.48%增长至2016年的43.48%[4],因此,当前的农业研究主要以更少的劳动力提升更高质量的农业生产为主[1]。
随着信息技术的快速发展,物联网(IoT)[5-6]、机器人技术[7-8]、大数据[9]和人工智能(AI)[10-11]等世界最前沿的技术在农业中的应用越来越广泛和成熟,使得无人农场的作业模式从构想变成现实,极大解放了生产力,提高了资源利用率;在无人农场作业模式中,人工智能技术起着思考和决策的作用,而机器学习是人工智能最重要的技术之一[12]。
随着机器学习技术逐渐成功地应用于其他科学领域,例如生物信息学[13]、医学[14]、视觉跟踪[15]、机器人技术[7]、气候学[16]、遥感图像处理[17-18]等,使得农业科学家、学者越来越关注机器学习在农业领域的应用,也是农业领域目前最具有前沿性、现代性和前景的技术[19]。本文在介绍无人农场以及机器学习概念的基础上,结合机器学习技术在山东理工大学生态无人农场的实际经验,总结其在生态无人农场的应用现状以及未来的发展方向,为以后机器学习能更好的应用在无人农场提供参考。
随着我国农业资源出现过度开发的现象,可用耕地在逐年减少,同时,对农业资源的浪费和无故开发导致了我国农业劳动的环境越来越恶化。现在,我国人口老龄化程度越来越严重,从事农业劳动的劳动力越来越少,无人种地的困局越来越明显。而物联网、云计算、大数据以及人工智能等信息技术在农业领域的深度应用[20],使得无人农场具备了产生的经济条件、社会条件以及技术条件。
无人农场是一种全新的农业生产模式,不需要劳动力的过多参与,通过物联网、大数据、人工智能、第五代(5G)技术和机器人等多种前沿技术的联合使用,通过远程控制,全过程执行无人农场的所有生产活动,实现设备、机械和机器人的自主作业,全过程执行无人农场的所有生产活动[1]。
无人农场使用传感器技术来监测动植物的生长状况以及各种生产设备的工作状况,并使用可靠、高效的通信技术将数据传输到云中,例如LoRA无线传输通信技术[21];云平台通过大数据技术[22]分析和处理数据,生成生产和运营决策,然后将决策信息传送给机器人,最后由机器人执行特定的生产活动。
在无人农场中,农业生产和经营的全过程要实现精准的管理、自我决策、无人操作以及个性化的服务,从而实现农业生产的可持续发展目标。无人农场的体系结构由基础层、决策层和应用程序服务层共同组成,其角色和组件描述如下:(1)基础层包括通信系统和基础设施系统。(2)决策层是用于无人农场的智能决策云平台,该平台进行大量数据资源的分析、处理和存储,并产生决策。(3)应用层是自动作业设备系统,它利用智能农业设备和物联网技术,是无人农场的核心组件。
无人农场的三层结构扮演着不同的角色:基础层对于支持其他系统的运行是必不可少的,基础层的基础设施系统和通信系统负责数据的收集和传输;决策层执行数据管理并做出与生产和运营相关的决策;应用程序层使用机器而不是人员来进行生产操作。这三层结构相互配合,实现了无人农场安全可靠的智能运行[1]。
机器学习(Machine Learing,ML)是人工智能在计算机科学领域的一个重要的分支,ML名称由Samuel[23]提出;机器学习是让计算机模拟人的学习活动,获取新知识、不断改善性能和实现自身完善的智能方法。ML的基本原理是构造一种算法,该算法可以接收数据并使用统计技术来预测输出,同时在有新数据可用时更新输出[24]。
机器学习方法分为有监督学习、无监督学习和半监督学习,常用的算法有人工神经网络和深度学习等。
1.2.1 有监督学习
有监督学习是通过已有的训练样本去训练得到一个最优的学习模型,再利用这个学习模型将所有的输入映射为相应的输出,对输出进行简单的判断从而实现预测和分类的目的。
1.2.2 无监督学习
无监督学习的训练样本没有任何标记信息,它是通过学习没有标记信息的训练样本来发现数据的内在关系,为进一步的数据分析提供基础,其适用在没有足够的先前经验、不适合人工标注的场景。
1.2.3 半监督学习
半监督学习是有监督学习和无监督学习的集合,其训练数据集的数据一部分是有标签的,另一部分是没有标签的,利用少量的标签数据和大量的无标签数据进行学习,从而得到相应的输出。在农业中,由于场景的限制一般会有大量的无标签数据,因此半监督学习的研究对于农业很有帮助。
1.2.4 人工神经网络
人工神经网络(Artificial Neural Network,ANN)简称神经网络(NN),是模拟人脑的神经系统对复杂信息处理机制的一种数学模型,它实际上是一个由大量简单元件相互连接而成的复杂网络,是能够进行复杂的逻辑操作和非线性关系实现的系统,是监督学习的例子之一[25]。
人工神经元是人工神经网络操作的基本信息处理单位。人工神经元的结构如图1。
图1 人工神经网络的结构图Fig. 1 Structure diagram of artificial neural network
一个人工神经元对输入信号X=[X1,X2,X3…Xm]T的输出
y=f(u+b)
(1)
(2)
当前,人工神经网络已经越来越多的应用于信息处理、预测分析等领域[26]。
1.2.5 深度学习
深度学习是机器学习的一个子领域,它是在人工神经网络上发展起来的,其核心思想是经过数据的驱动[27],使用非线性变换,在数据中心自动提取多层特征[28],实质是通过利用非线性信息处理机制,通过有监督和无监督相结合的训练方式,达到特征提取和转换的目的,使得样本间的数据关系可以成功拟合[29];深度学习是一种深层的机器学习模型,“深”主要体现在对特征的多次变换上[30],深层网络结构在一定程度上弱化了前一层网络所提取的错误特征,用较少的参数对复杂函数进行表示,使得网络计算更加紧凑,进而提高效率和效果[28];深度学习的强大优势是特征学习,即从原始数据中自动提取特征,由较低层次特征组合形成更高层次的特征[31];深度学习有多种不同的网络类型,其基本网络包括深度置信网络(Deep Belief Networks)、卷积神经网络(Convolutional Neural Networks)、递归神经网络(Recurrent Neural Networks)等[32],而卷积神经网络在农业中应用的最为广泛,网络模型LeNet-5是经典的卷积神经网络,其网络结构如图2所示。
图2 LeNet-5网络结构图Fig. 2 Structure diagram of LeNet-5 network
由于无人农场的关键部分是人工智能,而机器学习是人工智能的关键技术之一,所以机器学习技术在无人农场发挥着越来越重要的作用,本节将在种植业和畜牧业两个部分对机器学习的应用进行论述。
2.1.1 机器学习在田间杂草识别中的应用
在农业生产活动中,田间杂草是不可避免的伴生植物,目前我国使用的主要除草方式是化学除草、人工除草、机械除草、生物除草等,传统的除草工作费时费力,在当今“无人种地”的形势下,不可能依赖于传统的除草技术,所以基于机器学习的除草技术已经变得越来越重要。
利用卷积神经网络和深度学习对杂草进行识别检测,是现在最为广泛通用的一种方法。波恩大学的Andrea等[33]利用卷积神经网络在作物早期生长阶段区分玉米植株和杂草,使用分割阶段生成的数据集对卷积神经网络进行训练,识别精度达到97.23%。姜红花等[34]对田间杂草进行识别时,对卷积神经网络进行改进,在全连接层后面增加二进制的哈希层,通过对比全连接层特征码和哈希码,找出与其最相近的K幅图像的标签,归入频率最高的一类,此算法使用5 000 张图片训练,使用1 000张数据集进行测试(训练集测试集比例为5∶1),田间识别准确率高达98.6%,在其他杂草数据集上的检测准确率达到95.8%;北达科他州州立大学农业与生物工程系的Flores等[35]在温室环境下模拟田间条件,采集图像形状、色彩和纹理特征值后,使用支持向量机模型(SVM)、神经网络(NN)、随机森林(RF)、GoogLeNet和VGG-16模型分别进行识别检测,最终VGG-16模型在区分大豆幼苗和玉米杂苗中的识别精度达到96.2%,在以上五个模型方法中精度最高。孟庆宽等[36]采用深度可分离卷积结合压缩与激励网络模块构建轻量特征提取单元,替代标准SSD模型中的VGG16网络,提高特征提取速度;将扩展网络中的深层语义信息与浅层细节信息进行融合,经过改进后的深度学习检测模型对玉米及杂草的平均检测精度均值为88.27%。刘慧力等[37]基于深度学习框架TensorFlow搭建了多尺度分层特征的卷积神经网络模型,应用4倍膨胀的单位卷积核,获得了玉米秧苗图像的识别模型,其识别准确率达到99.65%。
在田间的杂草管理中,通过改进各种机器学习算法,使杂草的识别准确率已经很高,但大多是在实验室进行种植、采集数据,并没有在田间进行实地测试,由于在田间的环境更加复杂,会加大机器学习算法的识别难度,应加强落地实验,通过实际的田间场景改进算法模型,使机器学习算法更好地应用在田间杂草识别项目中。
2.1.2 机器学习在病虫害检测中的应用
在农业中除了杂草问题对作物的影响较大之外,病虫害控制是作物种植的另一个重要的问题,在针对病虫害的问题上,目前常用的做法就是在种植区域均匀的喷洒化学药剂,这种方法虽然是最有效的,但是化学药剂的使用还会造成环境污染,对环境安全造成威胁[38];由于深度学习在精准农业中的使用,使得在病虫害防治的过程中实现精准喷施,减少了农药的使用。
Pantazi等[39]采用Artificial Neural Network(ANN)和XY-Fusion network的方法,用于检测和鉴别健康的水飞蓟植物和被黑曲霉菌感染的植物,使用XY-Fusion的方法,其检测准确率达到了95.16%。Ebrahimi等[40]利用SVM分类方法检测农作物冠层图像上的蓟马,并利用一种新的图像处理技术检测草莓植物上可能出现的寄生虫,采用具有不同核函数的支持向量机方法对寄生虫进行分类和蓟马检测,结果表明,以区域指数和亮度为颜色指数的支持向量机模型分类效果最好,平均误差小于2.25%。Chung等[41]提出了一种使用机器视觉无损的区分3周龄感染水稻恶苗病和健康幼苗的方法,开发了支持向量机(SVM)分类器,以区分受感染和健康的幼苗,将遗传算法用于选择SVM分类器的基本特征和最佳模型参数,结果显示所提出的方法有87.9%的准确度,对被感染植物实现了自动检测,提高了谷物产量,并且减少了耗时。张银松[42]对粘虫板害虫进行目标检测识别,采用可以实时检测的SSD目标检测算法,并且在SSD算法的基础上对害虫体积小的问题进行改进;利用反卷积实现高层和低层的特征融合,再利用融合后的特征建立特征金字塔,再进行逐层检测,以得到最优的识别模型,结果显示,模型识别准确率达到91.8%。刘志勇等[43]针对传统的leNet-5模型在复杂纹理图像的分类上图片的识别精度不高、模型训练效率较低等问题,对传统的LeNet-5进行改进,采用PReLU函数作为激活函数,并在网络中加入Inception结构模块组、采用DropOut策略并加入Batch Normalization等,提出改进后的LeNet-5模型,在识别番茄病虫害的实验中,其改进的模型识别准确率高达95.3%。Moshou等[44]将受黄锈病感染的冬小麦、氮胁迫的植株和健康的植物进行了识别检测,采用了基于SOM神经网络和高光谱反射成像的方法,结果表明,识别氮胁迫植株的准确度为100%,感染黄锈病的植株识别准确度为99.92%,健康植株的识别准确度为99.39%。
2.1.3 机器学习在产量预测中的作用
作物的产量预测在无人农场作业中占据非常重要的地位,对于提高农场的生产管理水平具有重要的意义。You团队[45]放弃了在遥感领域使用的传统方法,而是采用卷积神经网络(CNN)和长短期时间记忆网络(LSTM,是一种时间递归神经网络)的方法,自动的从原始数据中提取出相关特征,并利用深高斯过程整合数据的时空信息,在预测大豆产量的任务中评估他们的方法,结果表明,他们的模型平均比美国农业部的预测准确率高出15%。Ali等[46]在爱尔兰的集约化管理但规模较小的农场中进行估算草地生物量的工作,他们采用多元线性回归(MLR)、人工神经网络(ANN)以及自适应神经模糊推理系统(ANFIS)模型的方法,其中ANFIS模型结合了人工神经网络和模糊逻辑的优点,并在爱尔兰的两个集约化管理的草地农场进行评估,结果表明ANFIS相比于其他两种方法,有更好的效果。
通过对机器学习在种植业中的相关文献进行总结,发现经过改进的机器学习算法,其识别准确率以及预测效果都非常好,这表明了机器学习可以在无人农场中进行应用,但也应加强算法的嵌入式研究,进行实地测验,使得机器学习能够更好的在无人农场中应用,更快的推动无人农场的智能化发展。
机器学习在畜牧业中的应用,主要的应用场景是渔场和养殖场,一方面用于精准识别动物,实时监测动物的行为,为生产者提供生长状况信息;另一方面,机器学习技术主要应用于生产线的监控,为生产者提供生产信息,以创造最大的经济价值。
2.2.1 机器学习在牲畜精准识别中的应用
利用机器学习对鱼类进行智能化识别,为进一步的渔情预测打下基础,精确的渔情预测数据能够解决目前多数渔业标准服务系统中缺少基于标准体系的渔业标准服务问题,并能够为渔业标准修订指南提供数据决策依据[47],同时还能为渔场主提供实时监测鱼类的生长健康数据,为鱼类养殖提供数据支持。
利用深度学习对鱼类进行识别检测,是现在最通用的一种方法;王文成等[48]利用RESNet50网络对大菱鲆、黄鳍鲷、金钱鱼、鲻鱼这四种鱼类进行识别检测,测试准确率达到96%以上,并且利用PyQt5开发了GUI可视化界面,通过界面操作,测试结果与预测类别一致,同时利用DSOD框架做了水下目标的实时跟踪检测,在不损失检测速度的情况下,对小目标的检测准确率实现大幅提高。袁红春等[49]采用了一种基于Faster R-CNN二次迁移学习和带色彩恢复的多尺度视网膜增强算法(MSRCR),解决了鱼类样本数量不足以及鱼类模糊图像的快速检测问题,通过测试结果表明,此方法利用样本数量较少的鱼类数据集训练出来的网络,其检测准确率可达到98.12%。李庆忠等[50]利用改进的YOLO检测算法和迁移学习,解决了非限制性环境中的水下机器人基于视频图像的鱼类目标的快速检测问题,相比于传统的YOLO算法,改进后的算法提高了对小目标以及重叠目标的检测性能,检测准确率达到89%。王烨[51]提出基于残差网络的鱼类识别模型,他们利用ResNet50作为基础网络,利用迁移学习搭建网络,并引入注意力机制,将注意力机制中的非局部算子以模块的形式插入残差网络中,结果表明,改进后的网络模型识别精度达到98.16%。
随着集约化管理的采用,比如猪和牛等牲畜的精准识别已经成为养殖场中的一个重要的问题。Hansen团队[52]提出了采用动物面部非侵入式的生物识别方法,使用Fisherfaces,VGG-Face预先训练的人脸卷积神经网络(CNN)模型和他们自己的CNN模型三种方法进行测试,使用人工扩充的数据集进行训练,结果表明,他们自己设计的CNN模型识别准确率达到96.7%。
对牲畜进行精准识别分类,在畜牧养殖中占据重要的地位,在近几年的牲畜识别研究中,各学者对机器学习算法进行改进,已经达到了非常高的识别准确率,也为牲畜的行为识别、健康监测等打下坚实的基础。
2.2.2 机器学习在牲畜的生产预测中的应用
机器学习具有早期发现和警告问题的能力,这在畜牧业中有非常重要的作用,能够对家禽进行实时监测,能够及时发现生产过程中的问题,及时采取行动来避免这些问题,减少经济损失。
对养殖场中的动物进行实时的生产监测,可以及时调整生产策略,实现效益的最大化,目前机器学习被广泛利用在此领域。Morales团队[53]利用农场的478 919只母鸡的鸡蛋生产数据,采用支持向量机的方法,发现了鸡蛋生产曲线中的问题,该技术能够提前一天发出警报警示生产曲线出现了问题,准确率达到98.54%。Alonso等[54]利用支持向量机回归的方法,对屠宰前几天的肉牛预测其体重,对144只动物进行了390次测量,其平均绝对误差为真实值的4.27%。
2.2.3 机器学习在牲畜喂食决策中的应用
在水产养殖中,鱼的喂食对降低成本具有重要意义,同时对提高鱼的产量也有重要作用;Zhou等[55]利用近红外计算机视觉和神经模糊的进给控制方法,实现根据鱼类的食欲进行自动喂养的目的,通过结果测试表明,其模型的进食决策精度达到98%。赵健[56]对循环水养殖中具备表征鱼群饥饿程度的鱼群局部突发行为进行监测,他们采用递归神经网络、粒子平流方案以及改进运动影响力图的方法,通过实验结果表明平均检测准确率达到98.91%,平均识别准确率达到89.89%。
机器学习在畜牧养殖中的应用都表现出较好的效果,其在精准分类识别、生产预测以及喂食决策中都有非常好的表现,由于养殖牲畜需要更加严谨,保证牲畜信息的准确性,导致现在的机器学习不能完全解决人工养殖中的问题,但现在机器学习的表现完全可以为养殖过程提供较好的信息决策支持;在日后的技术发展中,机器学习在养殖业必有更加广阔的应用天地。
经过总结上述文献,机器学习技术主要集中在机器视觉方面,用机器学习算法来检测目标物体,在这些应用中也存在一些缺点。
1) 机器视觉的使用需要用到大量的数据集,用于模型的训练以及验证,在当前的农业机器学习环境下,并没有通用的数据集,都是依靠各个实验团队自己采集标注数据集,由于农田环境的影响,采集数据集耗时耗力,并且标注数据集需要专业人员进行人工标注,以至于并没有流通的数据量多的数据集,这限制了机器视觉模型的检测准确性,同时也增加了机器学习在农业方面的应用难度。
2) 目前的机器学习需要高质量的硬件以满足其运算能力,但当前的嵌入式芯片存在运算能力不足,运算速度较慢等问题,嵌入式芯片的性能突破涉及到其他领域的问题,短期内难以有更大的研究突破。
3) 在农业领域运用机器学习,需要具备农业的生产经验同时还需要具备机器学习的专业知识,但现在具备两者的专业人才严重缺乏,这限制了机器学习技术在农业中的发展。
在无人农场的作业模式中,机器学习是必不可少的,针对机器学习在无人农场中的应用现状,还应加大对以下几个方面的研究力度。
1) 现如今,机器学习技术主要应用在作物的田间杂草管理、病虫害检测等方面,在农作物方面的应用技术已经比较广泛,节省了大量的人力、物力以及财力,但在渔场、养牛场、养猪场等应用方面还较少,在未来应该加大对动物方面的研究;使用机器学习技术动态监测动物的生长状况,并利用大数据技术,结合专家的生产经验,能够通过动物日常的行为,预测动物的健康状况,建立一套专家系统,可及时避免动物疾病的大规模传播;同时还应利用机器学习对动物的生长环境状况进行实时监测,为改善动物的生长环境提供决策支持。
2) 同时还应在无人农场建立一套高质量的数据库,数据库对机器学习的作用是非常重要的,因此具有高质量的数据库会加速机器学习的应用进程,同时会极大提高无人农场的管理效率,对无人农场的建设有非常积极的意义。
3) 随着无人农场的兴起,其在生产领域、智能装备领域等产生了大量的数据,利用机器学习结合5G、传感器、大数据等技术对这些数据传输、融合、处理和应用,将农场的管理系统建设成为真正的AI系统。
4) 针对当前的机器学习研究大多停留在实验室中的问题,应加强机器学习技术的嵌入式研究,将实验室中的研究真正落地到田间;加强对机器学习算法的研究,减少其对嵌入式芯片的性能依赖,加快算法的训练速度以及运行速度;从而加快机器学习在无人农场的应用速度。
总之,机器学习在无人农场的应用将会有更加广阔的天地。
本文对近几年机器学习在农业中的应用相关文献进行整理介绍,结合在山东理工大学生态无人农场的实际经验,阐述了机器学习在种植业中的田间杂草识别、作物病虫害检测、作物产量预测的应用,以及在畜牧业中的鱼类、猪羊等牲畜的精准识别分类、鱼类的喂食决策系统以及鸡、牛的生产线预测方面的应用;并且通过总结以上文献以及实际经验得出机器学习在无人农场应用的劣势,其在数据集、专业人才以及嵌入式系统中都存在相当大的问题;其次通过总结自身在无人农场的实际经验以及目前的研究水平及问题,提出机器学习在无人农场的发展趋势,主要是建立高效的数据库、搭建“专家系统”、结合多领域技术以及算法的嵌入式研究。
机器学习在无人农场中的应用正在快速发展,也被更多的研究学者所重视,也会有更多的机器学习技术应用到无人农场中,实现真正的无人化作业,推动农业的快速可持续发展。