利用物联网驱动的机器学习进行气候智能农业的作物推荐

《Cogent Food & Agriculture》:Climate-smart agriculture using IoT-enabled machine learning for crop recommendation

【字体: 大 中 小 】 时间:2026年08月27日 来源:Cogent Food & Agriculture 3.1

编辑推荐:

  精准农业(Precision Agriculture)已成为通过先进决策支持系统提高农业产量的有效策略。然而,理解土壤和环境因素有助于改善农业规划。本研究(研究人员)建立了一个利用物联网(Internet of Things, IoT)方法的作物推荐系统,并附

  
精准农业(Precision Agriculture)已成为通过先进决策支持系统提高农业产量的有效策略。然而,理解土壤和环境因素有助于改善农业规划。本研究(研究人员)建立了一个利用物联网(Internet of Things, IoT)方法的作物推荐系统,并附带数据提取功能。必要的土壤养分数据(氮N、磷P、钾K)通过连接Arduino UNO(RS-485)的商业NPK传感器获取。气候应用编程接口(Application Programming Interfaces, APIs)被用于获取大气变量,如温度和湿度。该系统设计为计算年平均值而非聚合短期测量值,从而能够专注于气候信息。收集的数据集随后使用一系列机器学习方法进行分析,包括K近邻(K-Nearest Neighbors)、支持向量机(Support Vector Machines)、随机森林(Random Forest)和梯度提升(Gradient Boosting)。在所有评估的模型中,最有效的方法是随机森林,实验准确率达到99%,因此适用于作物预测。
**论文解读:基于物联网与机器学习的作物推荐系统研究**

**研究背景与问题**
农业是保障粮食安全和促进经济发展的重要支柱,尤其在发展中国家。然而,传统农业方法依赖农民经验和人工评估土壤及环境因素,忽视了气候和土壤条件的动态变化,导致作物选择不当、资源利用效率低、产量下降及土壤质量退化。气候变化加剧了这些挑战,对粮食供应系统造成更大压力。因此,迫切需要基于数据驱动的智能解决方案来优化农业决策和资源利用。现有作物推荐系统多采用静态数据集而非实时田间数据,或依赖多种环境传感器增加硬件复杂度和成本,部分系统仅关注少数土壤因子,缺乏可扩展性,且存在数据质量不稳定、预处理不足、部署不友好等问题。这些局限性促使研究人员开发一种整合实时物联网(IoT)土壤监测、可靠气候信息和强健机器学习模型的统一框架,以提供精确可行的作物建议。

**研究内容与结论**
本研究提出了一种基于IoT的机器学习作物推荐系统,通过实时土壤养分监测与云端天气数据集成,实现精准农业决策支持。研究人员利用工业级NPK传感器(JXCT)通过RS-485协议连接Arduino UNO微控制器,获取土壤氮(N)、磷(P)、钾(K)数据;同时通过天气应用编程接口(API)获取温度、湿度、降雨量等环境参数。系统采用混合数据采集方式:自动模式下,Arduino硬件通过蓝牙(HC-05)传输土壤养分数据,并基于用户地理位置获取30天平均天气指标;手动模式下,用户可自行输入参数。收集的数据集来自Kaggle公开的作物推荐数据集(Crop Recommendation Dataset),包含22种作物类别、2200个样本,特征含N、P、K、温度、湿度、降雨量(pH被排除以简化硬件)。研究人员对比了四种监督学习算法:K近邻(KNN)、支持向量机(SVM)、随机森林(Random Forest)和梯度提升(Gradient Boosting),通过分层五折交叉验证和GridSearchCV优化超参数。实验结果表明,随机森林分类器表现最佳,测试准确率达99%,精确率、召回率和F1分数均接近1.0,训练时间短(0.0099秒),被选为最终模型。该模型通过Flask REST API部署于PythonAnywhere云平台,并与Android移动应用(MIT App Inventor开发)集成,支持自动和手动两种模式,实时输出作物推荐及置信度。本研究发表在《Cogent Food》。

**关键技术方法**
研究采用以下关键技术:硬件层面,使用工业级JXCT NPK传感器通过RS-485模块与Arduino UNO通信,蓝牙HC-05模块实现无线数据传输,OLED显示本地读数;软件层面,Python语言结合Scikit-learn库实现机器学习算法(KNN、SVM、随机森林、梯度提升),GridSearchCV进行超参数优化,Flask框架构建REST API并部署于PythonAnywhere云平台;移动应用由MIT App Inventor开发。数据来源为Kaggle的作物推荐数据集(Crop Recommendation Dataset),包含22种作物、2200个样本,特征为N、P、K、温度、湿度、降雨量。采用分层五折交叉验证(Stratified 5-fold Cross-Validation)和GridSearchCV避免过拟合并保持类别分布。

**研究结果**
**4.1 实验设置**:通过硬件与软件管道实现实时土壤养分监测与作物预测。系统使用NPK传感器、Arduino UNO、蓝牙模块、天气API,随机森林模型预测准确率99%。
**4.2 输入特征相关性分析**:通过相关性矩阵分析,发现磷(P)与钾(K)呈显著正相关(0.74),氮(N)与磷、钾呈弱负相关,温度与土壤养分无显著关联,湿度与温度弱正相关,表明无严重多重共线性,特征选择合理。
**4.3 标记混淆矩阵分析**:随机森林模型的混淆矩阵显示,大部分作物被正确分类,仅少数作物间存在误分类(如黑豆与椰子、黄麻),表明模型区分能力强,尤其适用于非技术用户。
**4.4 优化分类模型比较**:比较KNN、SVM、随机森林、梯度提升的交叉验证准确率、训练/测试准确率、精确率、召回率、F1分数及计算时间。随机森林交叉验证准确率最高(99.26%),训练准确率100%,测试准确率99%,训练时间短(0.0099秒),综合性能最优,被选为最终模型。
**4.5 分类报告分析**:随机森林分类报告显示,各作物精确率范围0.95–1.00,召回率0.97–1.00,F1分数0.97–1.00,宏平均和加权平均均为0.99,表明模型无偏,对所有作物类别预测均衡。
**4.6 特征重要性分析**:基于随机森林的特征重要性排序,降雨量最重要,其次为湿度、钾、磷、氮、温度,符合农学知识(水分对作物生长关键)。
**4.7 机器学习模型准确率比较**:条形图显示,随机森林和梯度提升准确率接近99%,KNN约97.5%,SVM约98%,集成方法优于单一模型。
**4.8 移动应用输出验证**:自动模式和手动模式均产生一致作物推荐。自动模式通过蓝牙获取土壤数据并计算30天平均天气,更可靠;手动模式允许用户输入,更灵活。置信度示例中,甜瓜最高置信度30.5%,但仍被推荐,测试准确率99%表明低置信度不代表错误。

**讨论与结论**
研究讨论部分强调,所提出的系统通过整合实时IoT土壤传感、云端气候数据和机器学习模型,实现了高精度作物预测,并部署于移动应用,提升了实用性和可访问性。随机森林模型在准确率、计算效率及泛化能力上均优于其他算法,适合实时决策支持。论文结论部分翻译如下:本文提出了一种基于IoT的机器学习作物推荐系统,旨在通过智能决策支持精准农业。该框架将Arduino-based NPK土壤养分传感器与天气API获取的云端气候信息相结合。通过聚合环境参数(温度、湿度、降雨量)的长期平均值,预测更加稳定可靠。通过比较KNN、SVM、随机森林和梯度提升等多种算法,实验结果表明随机森林分类器准确率达99%,可作为强大的农业决策支持系统。通过云Flask REST API,训练模型与Android移动应用集成,向农民提供实时作物推荐。本研究的局限性在于使用了特定数据集,且在不同农业区域的田间验证有限。
相关新闻
生物通微信公众号
微信
新浪微博
  • 搜索
  • 国际
  • 国内
  • 人物
  • 产业
  • 热点
  • 科普

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号