张彩丽,吴赛赛,李 玮,王 慧
(1.安徽省农业科学院农业经济与信息研究所,安徽合肥 230031;2.中国农业科学院农业信息研究所,北京 100081;3.安徽省农业科学院作物研究所,安徽合肥 230031;4.安徽省农业科学院土壤肥料研究所,安徽合肥 230031)
随着经济的快速蓬勃发展,全球环境污染越来越严重。其中农业生产引起的土壤污染是面源污染的主要方面,特别在施肥过量时没有被农作物吸收的营养元素是引发水体水质恶化的重要因素;另外,肥料用量不当还会影响农作物的产量和质量以及土壤的理化性质,既对农民造成财产损失,也对粮食安全造成威胁[1-5]。因此,在农业生产过程中,科学施肥、测土配方施肥都是重要的关注点。快速、准确了解种植区土壤肥力状况,精准把握不同农作物的施肥管理措施势在必行。
在人工智能飞速发展的时代,知识图谱的广泛应用产生了众多交叉学科,基于知识图谱的智能问答系统研究也乘势而起。知识图谱是基于图结构的数据格式,非常便于计算机系统的存储及搜索,它强大的语义表达能力可以产生众多知识服务应用,智能问答系统是其中重要的一个分支[6-7]。在农作物科学施肥管理与土壤肥力领域,如果引入专业的基于农业知识图谱的智能问答系统,高效精准地为农业种植户、生态农业中心提供土壤肥力信息与科学施肥管理方法,这对于国家农业发展具有重要的现实意义。
为此,该研究从构建农作物科学施肥管理与土壤肥力领域本体入手,通过挖掘安徽省常见农作物的科学施肥管理措施及行政区内土壤肥力指标数据存入Neo4j图数据库[8-11],并采用模式匹配方法构建问答系统问句类型、关键词和规则,从而实现安徽省农作物科学施肥管理与土壤肥力查询知识问答系统的构建和实现。
该研究根据构建农作物科学施肥管理与土壤肥力知识图谱的目的和使用范围,根据领域专家建议,采用人工构建的方法,使用Protégé本体库构建工具构建安徽省农作物科学施肥管理与土壤肥力领域本体,其类层次如图1所示。
图1 领域本体类层次
安徽省农作物科学施肥管理与土壤肥力领域本体共包括3层,其中最高父类为概念(Concepts),其子类包括地区(Districts)、土壤肥力(Soil fertility)、施肥管理(Fertilization)、常见农作物(Crops)4个类。其中,地区类又包括省(Province)、市(City)、县/区(County)、乡镇/街道(Town)4个子类;土壤肥力类包括pH、有机质(SOM)、全氮(TN)、全磷(TP)、全钾(TK)、有效氮(AN)、有效磷(AP)、粘粒(Clay)、粉粒(Powder)、砂粒(Sand)10个子类;施肥管理类包括氮肥(Nitrogen fertilizer)、磷肥(Phosphate fertilizer)、钾肥(Potassium)3个子类;常见农作物类包括小麦(Wheat)、水稻(Rice)、玉米(Corn)、油菜(Rape)、马铃薯(Potato)、棉花(Cotton)、花生(Peanut)、大豆(Soybean)8个子类。
农作物科学施肥管理与土壤肥力知识图谱构建的数据层构建包括3个方面,其一为从国家地球系统科学数据中心平台获取的安徽省1∶400万土壤全氮、全磷、全钾、pH、有效磷、有效氮、有机质、粘粒、砂粒、粉粒分布图(全国第二次土壤普查数据)经反距离加权插值法得到的结构化数据;其二和其三分别是测土配方查询系统网络数据、安徽省土壤肥力相关主题与安徽省常见农作物施肥管理政策相关主题期刊文献。后两者的数据获取通过深度学习模型ERNIE-BiLSTM-CRF、PCNN-Attention分别进行实体识别和关系抽取。
目前常用的知识图谱存储方法包括3类:基于关系数据库的存储方案、面向RDF的三元组数据库和原生图数据库[12]。该研究采用第三类中最流行的图数据库Neo4j存储抽取到数据源中的所有实体、关系、属性三元组。
农作物科学施肥管理与土壤肥力知识图谱使用Neo4j的Cypher语言实现实体、关系及属性的导入、存储、查询、增删和可视化等操作。图2展示了农作物科学施肥管理与土壤肥力知识图谱的其中一部分节点及关系。
图2 农作物科学施肥管理与土壤肥力知识图谱
安徽省农作物科学施肥管理与土壤肥力农业智能问答系统的主要功能是可以查询安徽省省级、市级、县/区级、乡镇/街道级4级行政区内的8种常见农作物(小麦、水稻、玉米、油菜、马铃薯、棉花、花生、大豆)的科学施肥管理措施,以及相应地区土壤肥力指标(pH、有机质、全氮、全磷、全钾、有效氮、有效磷、粘粒、粉粒、砂粒)的最大值、最小值和平均值。基于知识图谱的智能问答系统设计主要包括前端设计、后端设计及问答实现。
问答系统前端设计采用JSON语言,采用Vue3交互框架,Element-Plus布局框架,vite编译框架。后端设计采用go语言,Gin web框架,与gorm数据库框架。
问答过程采用模式匹配方式。模式匹配是数据结构中字符串的一种基本操作,用于从一条字符串中寻找与另一条子串相同的所有子串。在农作物科学施肥管理问答方面,问句类型设计为:安徽省某地+(可选)某种常见农作物+keyword。例如,怀宁县的水稻施肥建议。在土壤肥力指标查询方面,问句类型设计为:安徽省某地+(可选)某种肥力指标+keyword。例如,怀宁县的pH肥力指标。其中,农作物科学施肥管理问答方面keyword选择施肥管理、施肥、肥料、施肥建议、施肥管理建议、施肥政策、施肥管理政策、肥料建议等。在土壤肥力指标查询方面,keyword选择了指标、土壤肥力、肥力、土壤理化指标、理化指标、土壤指标、肥力指标、土壤理化性质等。
农作物科学施肥管理与土壤肥力智能问答系统设计完成后,多次对该系统的问答功能与系统部署进行了测试。使用者输入问句时,询问的关键词会被检索,系统会围绕该词作出回答[13-15]。
问答系统在安徽省省级、市级、县/区级、乡镇/街道级4级行政区内均可以回答8种常见农作物的科学施肥管理方法,具体见图3;同样地,在4级行政区上也可以查询安徽省土壤肥力十大指标的最大值、最小值和平均值。
图3 智能问答系统中农作物科学施肥管理问答
该研究选用准确率(P)、召回率(R)及F1值作为性能指标,公式如下:
式中,P1为问答系统返回正确答案的数量,R1为问答系统返回答案总数,T为正确答案的数量。
试验通过人工标注土壤肥力相关数据1 151条,随机打乱后选取总数的20%作为该问答系统的测试数据,并将问题输入农作物科学施肥管理与土壤肥力问答系统中,得出结果以统计其中的P值和R值。
试验结果表明,基于ERNIE-BiLSTM-CRF的实体识别模型在土壤肥力语料库上准确率P值达到92.85%、召回率R值达到92.00%、F1值达到92.59%。这说明该研究构建的农作物科学施肥管理与土壤肥力问答系统可以为使用者提供有效的问答体验。
目前,随着大数据、人工智能、深度学习等技术的不断发展和成熟,颠覆了以往的知识服务方式,以这些信息技术为基础的信息服务具有交互更灵活、响应更快速、内容更丰富、服务更智能等特点,一方面给人们带来更多便利,另一方面也节省了大量人力成本。而在农业科学领域,很多基础工作有待探索和深入,该研究即尝试用最有生命力的基于知识图谱的方法建立智能问答系统,初步取得了理想结果,为践行智慧农业服务迈开了重要一步,具有重要的理论与现实意义。
后续研究工作中,需要解决包括构建智能问答系统及知识图谱在内的数据来源分散、结构不一致、标注语料质量参差不齐,以及仅依靠相关深度学习模型不能覆盖所有知识等问题。同时也考虑加强问答系统对自然语言问题多样性的处理能力,支持自然语言提问,支持对更多形式问题的回答。将该研究构建的智能问答系统扩展到更多、更广泛的农业场景中去,也需要在技术上不断尝试,使问答系统更加智能,用户使用更加便捷,为我国的智慧农业发展贡献力量。
致谢:
感谢国家科技基础条件平台-国家地球系统科学数据中心(http://www.geodata.cn)提供数据支撑。