CN113168577A - 用于执行机器学习算法的方法和系统 - Google Patents
用于执行机器学习算法的方法和系统 Download PDFInfo
- Publication number
- CN113168577A CN113168577A CN201980076419.6A CN201980076419A CN113168577A CN 113168577 A CN113168577 A CN 113168577A CN 201980076419 A CN201980076419 A CN 201980076419A CN 113168577 A CN113168577 A CN 113168577A
- Authority
- CN
- China
- Prior art keywords
- model
- machine learning
- learning model
- data
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/0265—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric the criterion being a learning criterion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- A—HUMAN NECESSITIES
- A01—AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
- A01B—SOIL WORKING IN AGRICULTURE OR FORESTRY; PARTS, DETAILS, OR ACCESSORIES OF AGRICULTURAL MACHINES OR IMPLEMENTS, IN GENERAL
- A01B79/00—Methods for working soil
- A01B79/005—Precision agriculture
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Automation & Control Theory (AREA)
- Health & Medical Sciences (AREA)
- Mechanical Engineering (AREA)
- Soil Sciences (AREA)
- Environmental Sciences (AREA)
- Databases & Information Systems (AREA)
- Computational Linguistics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
描述了一种计算机实现的数据处理方法,该方法提供对表示与农业有关的物理性质的数字数据执行机器学习过程的改进。在一个实施例中,该方法包括:从计算设备接收浏览存储在数字模型存储库中的机器学习模型的请求;从数字模型存储库检索并且向计算设备传输关于存储在数字模型存储库中的机器学习模型的信息;从计算设备接收从机器学习模型中对特定模型的选择并且接收针对特定模型的特定输入;使用模型执行基础设施平台中可用的资源对特定输入执行特定模型以生成特定输出;以及向被配置在农业机械上的计算机传输特定输出以在农业机械在农田执行农业任务时控制农业机械。
Description
版权通告
该专利文件的公开内容的一部分包含受版权保护的材料。版权所有者不反对任何人以专利和商标局专利文件或记录中的形式复制专利文件或专利公开的内容,但保留所有版权或权利。气候公司(Climate Corporation)。
技术领域
本公开的一个技术领域是提供了一种用于执行机器学习算法的计算机辅助平台。另一技术领域是对机器学习模型进行分类、编目、执行和监测,并且提供用于执行模型的模型缩放能力。另一技术领域是一种计算机实现的技术,该技术用于浏览、选择和执行机器学习模型并且使用由模型生成的输出来控制农业设备。
背景技术
本部分中描述的方法是可以被保护的方法,但不一定是先前已经设想或已经被保护的方法。因此,除非另有说明,否则不应当仅由于本部分中所述的任何方法被包括在本部分中而认为本部分中所述的任何方法有资格作为现有技术。
在农业的上下文中,农作物种植者经常寻求针对农田的种子选择和种子种植的推荐。这些推荐可以根据例如田地的位置、气候和土壤类型、以及种植者的目标进行定制。
通常,种子和种植推荐是由基于复杂计算机的系统生成的,该系统对大量农业数据执行数字模型并且需要大量计算资源。但是,这些系统很少提供定制功能。例如,某些系统可能无法配置和缩放模型以生成足够具体的推荐。
此外,即使农业模型的定制被实现,对模型的定制也可能导致获取如此大量的定制模型使得管理和维护模型可能会出现问题。例如,可能难以跟踪和编目模型的各个版本并且使农民易于访问它们。
发明内容
所附权利要求可以用作本公开的概述。
附图说明
在附图中:
图1示出了被配置为执行本文中描述的功能的示例计算机系统,该示例计算机系统在田地环境中与该系统可以与之交互的其他装置一起示出。
图2示出了当示例移动应用被加载以供执行时主存储器中的指令集的示例逻辑组织的两个视图。
图3示出了编程的过程,通过该编程的过程,农业智能计算机系统使用由一个或多个数据源提供的农艺数据来生成一个或多个预配置的农艺模型。。
图4是示出了可以在其上实现本发明的实施例的计算机系统的框图。
图5描绘了用于数据录入的时间线视图的示例实施例。
图6描绘了用于数据录入的电子表格视图的示例实施例。
图7A描绘了用于执行机器学习算法的示例性的基于计算机的平台。
图7B描绘了示例性的基于计算机的模型存储库。
图7C描绘了由基于计算机的模型存储库维护的示例数据结构。
图7D描绘了用于构建、存储和编目基于机器的模型的示例流程图。
图8A描绘了用于执行机器学习算法的示例性的基于计算机的模型执行基础设施。
图8B描绘了用于选择和执行示例机器学习模型的示例性流程图。
图9描绘了用于执行机器学习算法的用户界面的示例图。
具体实施方式
在下面的描述中,出于解释的目的,阐述了很多具体细节以便提供对本公开的透彻理解。然而,将很清楚的是,可以在没有这些具体细节的情况下实践实施例。在其他实例中,以框图形式示出了公知的结构和设备,以避免不必要地使本公开变得模糊。根据以下概述,在各部分中公开了实施例:
1.概述
2.示例农业智能计算机系统
2.1.结构概述
2.2.应用程序概述
2.3.计算机系统的数据摄取
2.4.过程概述——农业模型训练
2.5.实现示例——硬件概述
3.用于执行机器学习算法的系统
3.1.示例模型存储库
3.2.示例模型执行基础设施
3.3.示例模型历史日志
4.可缩放性注意事项
5.示例实现
6.某些实施例的益处
7.扩展和替代
***
1.总体概述
在一个实施例中,描述了用于执行机器学习算法的计算机实现的方法、计算机系统和计算机程序产品。它们可以包括用于存储、编目和执行机器学习模型的基于计算机的平台。该平台被编程以对模型的通用定义和元数据进行编目,将模型存储在存储库中,从存储库中浏览和选择模型,并且将执行组件抽象化以促进模型的可重复方式的执行。基于机器的模型的示例包括操作研究模型、机器学习模型、深度学习模型和物理模型。
在一个实施例中,一种用于执行机器学习算法的方法提供了用于定制农业模型,编目、维护和管理大量定制模型以及促进模型的执行以向农作物种植者提供具体推荐的功能。用于存储、执行和编目基于机器的模型的方法允许部署不同版本的模型,向模型存储库添加新模型和新版本的模型,并且提供用于执行模型的硬件/软件运行时基础设施。
在一个实施例中,用于存储、执行和编目基于机器的模型的平台包括模型存储库、模型执行基础设施平台和模型历史日志。
模型存储库是被配置为存储数字数据模型的基于计算机的数字数据存储库。这些模型可以具有不同配置和不同执行要求。对于每个模型,存储库可以存储例如捕获模型的组件和特性的模型定义和模型元数据。与模型相关联的模型定义和元数据可以包括关于模型的名称、输入、输出、基础设施要求、版本、状态等的信息。模型存储库是可搜索的、可修改的和可浏览的。
模型执行基础设施平台包括共同提供用于执行基于机器的模型的平台的硬件和/或软件组件。模型执行基础设施的组件在本文中称为通用基础设施组件。这些组件是用于执行存储在模型存储库中的模型的构建块。
模型历史日志是基于计算机的数字日志,该数字日志包含关于基于机器的模型的执行的信息。模型的日志可以包括关于针对模型而执行的每个执行实例的信息。这可以包括关于版本、输入、输出、执行要求、修改和更新、执行日期、统计信息、以及与模型执行有关的其他信息的信息。
在一个实施例中,为农业应用而实现了一种用于执行机器学习算法的方法。该算法可以被配置为例如解决农业相关问题,并且提供对请求农业推荐的查询的回答。例如,该方法可以允许农作物种植者浏览存储在模型存储库中的模型,从存储库中选择模型,提供针对所选择的模型的输入,发起所选择的模型在模型基础设施平台上的执行以为种植者生成推荐,并且从平台接收推荐。
机器学习算法可以包括神经网络的实现,神经网络被配置为例如从农作物种植者接收输入,处理接收到的输入,并且为种植者生成推荐。推荐可以包括例如基于种植者提供的输入的、对种植者有益的关于种子类型和种子种植时间的推荐。输入可以包括关于土壤、气候和种植者田地位置的信息。推荐可以从神经网络被传输到农作物种植者可用的一个或多个计算设备。例如,推荐可以从神经网络被传输到农作物种植者的用来与网络通信的移动设备。
根据另一示例,机器学习算法可以包括被配置为从农作物种植者接收种子种植请求的神经网络的实现。神经网络可以处理该请求并且生成用于使用农业设备(诸如播种机和种植机)来播种种子的播种指令。种植指令可以被传输到种植者的移动设备。种植指令也可以被传输到安装在农业机械上的计算机或控制器。当机器在田间执行种子种植时,控制器可以使用该指令来控制机器的行为。
在一个实施例中,一种用于执行机器学习算法的方法实现了图形用户界面。图形用户界面可以被配置为访问模型存储库、模型执行基础设施平台和模型历史日志。图形用户界面可以用于例如向存储库发出查询,促进浏览存储库的内容,显示关于存储在存储库中的模型的信息,接收从存储在存储库中的模型中对模型的选择,促进向所选择的模型提供输入,促进所选择的模型的执行,并且显示由所执行的模型生成的输出。
2.示例农业智能计算机系统
2.1.结构概述
图1示出了被配置为执行本文描述的功能的示例计算机系统,该示例计算机系统在田地环境中与该系统可以与之进行互操作的其他装置一起示出。在一个实施例中,用户102拥有、操作或占有田地位置中的或与田地位置(诸如用于农业活动的田地或用于一个或多个农田的管理位置)相关联的田地管理器计算设备104。田地管理器计算机设备104被编程或配置为经由一个或多个网络109向农业智能计算机系统130提供田地数据106。
田地数据106的示例包括:(a)标识数据(例如,面积,田地名称,田地标识符,地理标识符,边界标识符,作物标识符,以及可用于标识农田的任何其他合适数据,诸如公共土地单位(CLU)、地块和街段编号、宗地编号、地理坐标和边界、农场序列号(FSN)、农场编号、地带编号、田地编号、地区、镇区和/或范围);(b)收获数据(例如,作物类型,作物品种,作物轮换,是否以有机方式种植作物,收获日期,实际生产历史(APH),预期产量,产量,作物价格,作物收入,谷物水分,耕作实践,以及先前的生长季节信息);(c)土壤数据(例如,类型,组成,pH,有机质(OM),阳离子交换能力(CEC));(d)种植数据(例如,种植日期,一个或多个种子的类型,所种植的一个或多个种子的相对成熟度(RM),种子种群);(e)肥料数据(例如,营养物类型(氮,磷,钾),施用类型,施用日期,数量,来源,方法);(f)化学施用数据(例如,农药,除草剂,杀真菌剂,旨在用作植物调节剂、脱叶剂或干燥剂的其他物质或物质混合物,施用日期,数量,来源,方法);(g)灌溉数据(例如,施用日期,数量,来源,方法);(h)天气数据(例如,降水量,降雨率,预测的降雨,水径流率区域,温度,风,预测,压力,能见度,云,热指数,露点,湿度,雪深,空气质量,日出,日落);(i)图像数据(例如,来自农业装置传感器、相机、计算机、智能电话、平板、无人驾驶飞行器、飞机或卫星的图像和光谱信息);(j)侦察观察(照片,视频,自由形式的笔记,语音记录,语音转录,天气情况(温度,降水(当前和随着时间推移),土壤湿度,作物生长阶段,风速,相对湿度,露点,黑层));以及(k)土壤,种子,作物物候,病虫害报告,以及预测来源和数据库。
数据服务器计算机108通信地耦合到农业智能计算机系统130,并且被编程或配置为经由一个或多个网络109将外部数据110发送到农业智能计算机系统130。外部数据服务器计算机108可以由与农业智能计算机系统130相同的法人或实体拥有或操作,或者由不同的人或实体(诸如政府机构、非政府组织(NGO)和/或私人数据服务提供商)拥有或操作。外部数据的示例包括天气数据、图像数据、土壤数据或与作物产量有关的统计数据等。外部数据110可由与田地数据106相同类型的信息组成。在一些实施例中,外部数据110由拥有和/或操作农业智能计算机系统130的同一实体所拥有的外部数据服务器108提供。例如,农业智能计算机系统130可包括专门专注于否则可能从第三方来源获得的一类数据(诸如天气数据)的数据服务器。在一些实施例中,外部数据服务器108实际上可被并入系统130内。
农业装置111可具有固定在其上的一个或多个远程传感器112,这些传感器经由农业装置111直接或间接地通信耦合到农业智能计算机系统130并被编程或配置为将传感器数据发送到农业智能计算机系统130。农业装置111的示例包括:拖拉机,联合收割机,收割机,播种机,卡车,化肥设备,包括无人驾驶飞行器的飞行器,以及任何其他物理机械或硬件项目,其通常为移动机械,并且可用于与农业相关联的任务。在一些实施例中,装置111的单个单元可包括在该装置上的网络中本地耦合的多个传感器112;控制器区域网络(CAN)是可以安装在联合收割机、收割机、喷雾器和中耕机中的这种网络的示例。应用控制器114经由一个或多个网络109通信地耦合到农业智能计算机系统130,并且被编程或配置为从农业智能计算机系统130接收用于控制农业车辆的操作参数或实施的一个或多个脚本。例如,控制器区域网络(CAN)总线接口可用于实现从农业智能计算机系统130到农业装置111的通信,例如可从加利福尼亚州旧金山市的气候公司获得的CLIMATE FIELDVIEW DRIVE如何被使用。传感器数据可以由与田地数据106相同类型的信息组成。在一些实施例中,远程传感器112可能不被固定到农业装置111,而是可以远程位于田地中并且可以与网络109通信。
装置111可包括用驾驶室应用编程的驾驶室计算机115,该驾驶室应用可包括用于在本文的其他部分中进一步描述的设备104的移动应用的版本或变体。在一个实施例中,驾驶室计算机115包括紧凑型计算机,通常是平板尺寸的计算机或智能电话,其具有安装在装置111的操作者的驾驶室内的图形屏幕显示,诸如彩色显示器。驾驶室计算机115可实现本文中针对移动计算机设备104进一步描述的一些或全部的操作和功能。
一个或多个网络109广义地表示使用有线或无线链路(包括陆地或卫星链路)中的任何链路的包括局域网、广域网、互联网或因特网在内的一个或多个数据通信网络的任何组合。这一个或多个网络可以由提供图1的各种元件之间的数据交换的任何介质或机制来实现。图1的各种元件还可具有直接(有线或无线)通信链路。传感器112、控制器114、外部数据服务器计算机108和系统的其他元件各自包括与一个或多个网络109兼容的接口,并且被编程或配置为使用用于跨网络的通信的标准化协议,诸如TCP/IP、蓝牙、CAN协议以及更高层协议(诸如HTTP、TLS等)。
农业智能计算机系统130被编程或配置为从田地管理器计算设备104接收田地数据106,从外部数据服务器计算机108接收外部数据110,并从远程传感器112接收传感器数据。农业智能计算机系统130可被进一步配置为托管、使用或执行一个或多个计算机程序、其他软件元素、数字编程的逻辑(诸如FPGA或ASIC)或其任意组合,以便以在本公开的其他部分中进一步描述的方式执行数据值的转换和存储、一个或多个田地上的一个或多个作物的数字模型的构造、推荐和通知的生成以及生成脚本并将其发送到应用控制器114。
在一个实施例中,农业智能计算机系统130被编程有通信层132、表示层134、数据管理层140、硬件/虚拟化层150以及模型和田地数据存储库160,或者包括通信层132、表示层134、数据管理层140、硬件/虚拟化层150、模型和田地数据存储库160以及代码指令180。该上下文中的“层”指的是电子数字接口电路、微控制器、固件(诸如驱动程序)和/或计算机程序或其他软件元素的任何组合。
通信层132可被编程或配置为执行输入/输出接口功能,包括分别向田地管理器计算设备104、外部数据服务器计算机108和远程传感器112发送对田地数据、外部数据和传感器数据的请求。通信层132可被编程或配置为将接收到的数据发送到模型和田地数据存储库160以存储为田地数据106。
在一个实施例中,代码指令180包括模型存储库指令136、模型执行指令137、模型历史指令138和模型查询指令139。还可以包括其他代码指令。模型存储库指令136可以用于生成和维护用于创建、存储、编目和浏览基于机器的模型的模型存储库。模型执行指令137可以用于确定基于机器的模型的执行要求,管理在模型执行基础设施平台中可用的执行资源,并且管理模型在模型执行基础设施平台中的执行。模型历史指令138可以用于生成在模型执行基础设施平台中执行的模型的历史日志,聚合日志,并且提供日志浏览功能。模型查询指令139可以用于接收、处理和解析被发布给模型学习算法平台的查询。
表示层134可被编程或配置为生成要在田地管理器计算设备104、驾驶室计算机115或通过网络109耦合到系统130的其他计算机上显示的图形用户界面(GUI)。该GUI可包括用于输入要发送到农业智能计算机系统130的数据、生成对模型和/或推荐的请求和/或显示推荐、通知、模型和其他田地数据的控件。
数据管理层140可被编程或配置为管理涉及存储库160和系统的其他功能元素的读取操作和写入操作,包括在系统的功能元素与存储库之间传送的查询和结果集。数据管理层140的示例包括JDBC、SQL服务器接口代码和/或HADOOP接口代码等。存储库160可包括数据库。如本文所使用的,术语“数据库”可以指数据的主体、关系数据库管理系统(RDBMS)或指两者。如本文所使用的,数据库可包括数据的任何集合(包括分层数据库、关系数据库、平面文件数据库、对象关系数据库、面向对象的数据库、分布式数据库),以及在计算机系统中存储的记录或数据的任何其他结构化的集合。RDBMS的示例包括但不限于MYSQL、DB2、SQL SERVER、和POSTGRESQL数据库。然而,可以使用实现本文描述的系统和方法的任何数据库。
当未经由与农业智能计算机系统交互的一个或多个农业机械或农业机械设备直接向农业智能计算机系统提供田地数据106时,可以经由(农业智能计算机系统所服务的)用户设备上的一个或多个用户界面提示用户输入这样的信息。在示例实施例中,用户可以通过访问(农业智能计算机系统所服务的)用户设备上的地图并选择已经在该地图上以图形方式示出的特定CLU来指定标识数据。在替代实施例中,用户102可以通过访问(农业智能计算机系统130所服务的)用户设备上的地图并在该地图上绘制田地的边界来指定标识数据。这样的CLU选择或地图绘制表示地理标识符。在替代实施例中,用户可以通过经由用户设备访问来自美国农业部农场服务局或其他来源的(作为形状文件或以类似格式提供的)田地标识数据并将这样的田地标识数据提供给农业智能计算机系统来指定标识数据。
在示例实施例中,农业智能计算机系统130被编程为生成包括用于数据输入的数据管理器的图形用户界面并使得显示该图形用户界面。在已经使用上述方法识别出一个或多个田地之后,数据管理器可提供一个或多个图形用户界面窗口小部件,其当被选择时可以标识田地、土壤、作物、耕作或养分实践的变化。数据管理器可包括时间线视图、电子表格视图和/或一个或多个可编辑的程序。
图5描绘了数据输入的时间线视图的示例实施例。使用在图5中描述的显示,用户计算机可以输入对特定田地和特定日期的选择以添加事件。在时间线顶部描述的事件可包括氮、种植、实践和土壤。为了添加氮施用事件,用户计算机可提供输入以选择氮标签。用户计算机然后可以为特定田地选择时间线上的位置,以指示氮在所选择的田地上的施用。响应于接收到对特定田地在时间线上的位置的选择,数据管理器可以显示数据输入覆盖图,从而允许用户计算机输入与氮施用、种植过程、土壤管理、耕作过程、灌溉实践有关的数据,或与特定田地有关的其他信息。例如,如果用户计算机选择时间线的一部分并指示氮的施用,则数据输入覆盖图可包括用于输入所施用的氮的数量、施用日期、所使用的肥料的类型以及与氮的施用有关的任何其他信息的字段。
在一个实施例中,数据管理器提供用于创建一个或多个程序的界面。该上下文中的“程序”指的是与氮施用、种植过程、土壤施用、耕作过程、灌溉实践有关的一组数据,或者可能与一个或多个田地相关并可以存储在数字数据存储中以供在其他操作中作为一组重复使用的其他信息。在已经创建程序之后,可以在概念上将其应用于一个或多个田地,并且可以将对该程序的引用与标识这些田地的数据相关联地存储在数字存储中。因此,代替针对多个不同田地手动输入与相同氮施用有关的相同数据,用户计算机可以创建指示氮的特定施用的程序,然后将该程序应用于多个不同田地。例如,在图5的时间线视图中,前两条时间线选择了“春季施用”程序,其中包括在4月初施用150lbs N/ac。数据管理器可提供用于编辑程序的界面。在一个实施例中,当特定程序被编辑时,已经选择该特定程序的每个田地都被编辑。例如,在图5中,如果编辑了“春季施用”程序以将氮的施用减少到130lbs N/ac,则可以基于编辑后的程序用减少的氮施用来更新前两个田地。
在一个实施例中,响应于接收到对选择了程序的田地的编辑,数据管理器去除该田地与所选择的程序的对应关系。例如,如果氮施加被添加到图5中的顶部田地,则界面可以更新以指示“春季施用”程序不再被应用于顶部田地。尽管4月初的氮施用可能保留,但是对“春季施用”程序的更新将不会改变氮的4月施用。
图6描绘了用于数据输入的电子表格视图的示例实施例。使用在图6中描绘的显示,用户可以创建和编辑一个或多个田地的信息。数据管理器可包括如在图6中描绘的电子表格,该电子表格用于输入关于氮、种植、实践和土壤的信息。为了编辑特定条目,用户计算机可以选择电子表格中的特定条目并更新值。例如,图6描绘了对第二田地的目标产量值的正在进行的更新。此外,用户计算机可以选择一个或多个田地以便应用一个或多个程序。响应于接收到针对特定田地的程序选择,数据管理器可以基于所选择的程序来自动完成特定田地的条目。与时间线视图一样,数据管理器可以响应于接收到对特定程序的更新而更新与该程序相关联的每个田地的条目。此外,数据管理器可以响应于接收到对田地的条目之一的编辑而删除所选择的程序与该田地的对应关系。
在一个实施例中,模型和田地数据存储在模型和田地数据存储库160中。模型数据包括为一个或多个田地创建的数据模型。例如,作物模型可包括一个或多个田地上的作物的发育的数字构建模型。该上下文中的“模型”指的是彼此相关联的可执行指令和数据值的电子数字存储集合,它们能够接收程序化或其他数字调用、调用或解析请求并基于指定的输入值来响应该程序化或其他数字调用、调用或解析请求,以产生一个或多个存储或计算出的输出值,这些输出值可以用作计算机实现的建议、输出数据显示或机器控制等的基础。本领域技术人员发现使用数学方程式来表达模型是方便的,但是该表达形式不将本文公开的模型局限于抽象概念;相反,本文中的每个模型都以存储的可执行指令和数据的形式在计算机中具有实际应用,存储的可执行指令和数据使用计算机来实现该模型。该模型可包括一个或多个田地上的过去事件的模型、一个或多个田地的当前状态的模型和/或一个或多个田地上的预测事件的模型。模型和田地数据可以存储在存储器中的数据结构中、数据库表中的行中、平面文件或电子表格中或其他形式的存储数字数据中。
硬件/虚拟化层150包括一个或多个中央处理单元(CPU)、存储器控制器以及计算机系统的其他设备、组件或元件,诸如易失性或非易失性的存储器、非易失性存储(诸如磁盘)以及例如结合图4说明和描述的I/O设备或接口。层150还可包括被配置为支持虚拟化、容器化或其他技术的编程指令。
出于说明清楚示例的目的,图1示出了某些功能元件的有限数量的实例。然而,在其他实施例中,可以存在任何数量的这样的元件。例如,实施例可以使用与不同用户相关联的数千或数百万个不同移动计算设备104。另外,系统130和/或外部数据服务器计算机108可以使用被配置在离散位置或与数据中心、共享计算设施或云计算设施中的其他元件位于同一位置的两个或更多个处理器、核心、群集或者物理机或虚拟机的实例来实现。
2.2.应用程序概述
在一个实施例中,使用被加载到一个或多个通用计算机中并使用一个或多个通用计算机执行的一个或多个计算机程序或其他软件元件来实现本文描述的功能将使这些通用计算机被配置为特定机器或配置为专门用于执行本文描述的功能的计算机。另外,本文进一步描述的每个流程图可以单独用作可用于将计算机或逻辑编程为实现所描述的功能的算法、计划或指导,或与本文中的散文形式的过程和功能的描述结合用作这些算法、计划或指导。换句话说,本文中的所有散文和所有附图一起旨在提供如下算法、计划或指导的公开,这些算法、计划或指导足以允许技术人员考虑到适用于该类型的发明和公开的技能水平结合此类人员的技能和知识将计算机编程为执行本文描述的功能。
在一个实施例中,用户102使用配置有操作系统和一个或多个应用程序或应用的田地管理器计算设备104与农业智能计算机系统130交互;田地管理器计算设备104还可以在程序控制或逻辑控制下独立且自动地与农业智能计算机系统进行互操作,并且直接的用户交互不是总被要求。田地管理器计算设备104广义地表示以下各项中的一个或多个:智能电话,PDA,平板计算设备,膝上型计算机,台式计算机,工作站,或者能够发送和接收信息以及执行本文描述的功能的任何其他计算设备。田地管理器计算设备104可以使用在田地管理器计算设备104上存储的移动应用程序经由网络进行通信,并且在一些实施例中,可以使用电缆113或连接器将该设备耦合到传感器112和/或控制器114。特定用户102可以一次拥有、操作或拥有和结合系统130使用多于一个田地管理器计算设备104。
移动应用程序可以经由网络向一个或多个移动计算设备提供客户端侧功能。在示例实施例中,田地管理器计算设备104可以经由网络浏览器或本地客户端应用程序或应用来访问移动应用程序。田地管理器计算设备104可以使用基于网络的协议或格式(诸如HTTP、XML和/或JSON)或应用专用协议向一个或多个前端服务器发送数据和从一个或多个前端服务器接收数据。在示例实施例中,数据可以采用到移动计算设备中的请求和用户信息输入(诸如田地数据)的形式。在一些实施例中,移动应用程序与田地管理器计算设备104上的位置跟踪硬件和软件进行交互,该位置跟踪硬件和软件使用标准的跟踪技术(诸如无线电信号的多点定位,全球定位系统(GPS),WiFi定位系统,或其他移动定位方法)来确定田地管理器计算设备104的位置。在一些情况下,可以通过对设备的操作系统的查询或通过请求设备上的应用从该操作系统获得数据来获得与设备104、用户102和/或一个或多个用户账户相关联的位置数据或其他数据。
在一个实施例中,田地管理器计算设备104将田地数据106发送到农业智能计算机系统130,田地数据106包含或包括但不限于表示以下各项中的一个或多个的数据值:一个或多个田地的地理位置,一个或多个田地的耕作信息,在一个或多个田地中种植的作物,以及从一个或多个田地中提取的土壤数据。田地管理器计算设备104可以响应于来自用户102的指定一个或多个田地的数据值的用户输入而发送田地数据106。此外,当数据值中的一个或多个变得对田地管理器计算设备104可用时,田地管理器计算设备104可以自动发送田地数据106。例如,田地管理器计算设备104可以通信地耦合到远程传感器112和/或应用控制器114,远程传感器112和/或应用控制器114包括灌溉传感器和/或灌溉控制器。响应于接收到表明应用控制器114曾将水释放到一个或多个田地上的数据,田地管理器计算设备104可以将田地数据106发送到农业智能计算机系统130,从而表明水在一个或多个田地上曾被释放。可以使用电子数字数据来输入和传送在本公开中标识的田地数据106,该电子数字数据是使用通过HTTP的参数化URL或另一合适的通信或消息收发协议在计算设备之间传送的。
移动应用程序的商业示例是可从加利福尼亚州旧金山市的气候公司购买的CLIMATE FIELDVIEW。CLIMATE FIELDVIEW应用程序或其他应用程序可被修改、扩展或调整,以包括在本公开的申请日之前尚未被公开的特征、功能和编程。在一个实施例中,移动应用程序包括集成的软件平台,该软件平台允许种植者为他们的操作做出基于事实的决定,因为它将与种植者的田地有关的历史数据与种植者希望比较的任何其他数据结合。结合和比较可以实时进行,并且基于科学模型,这些科学模型提供了可能的情景,以允许种植者做出更好、更明智的决定。
图2示出了当示例移动应用程序被加载以供执行时主存储器中的指令集的示例逻辑组织的两个视图。在图2中,每个命名的元素表示RAM或其他主存储器的一个或多个页面的区域,或者磁盘存储或其他非易失性存储的一个或多个块的区域,以及那些区域内的编程指令。在一个实施例中,在视图(a)中,移动计算机应用程序200包括账户—田地—数据摄取—共享指令202,概述和警报指令204,数字地图手册指令206,种子和种植指令208,氮指令210,天气指令212,田地健康指令214,以及执行指令216。
在一个实施例中,移动计算机应用程序200包括账户、田地、数据摄取、共享指令202,其被编程为经由手动上传或API从第三方系统接收、转换和摄取田地数据。数据类型可包括田地边界,产量图,种植图,土壤测试结果,施用图,和/或管理区等。数据格式可包括形状文件,第三方的原生数据格式,和/或农场管理信息系统(FMIS)导出等。接收数据可以经由以下方式发生:手动上传,带有附件的电子邮件,将数据推送到移动应用程序的外部API,或者调用外部系统的API来将数据拉取到移动应用程序中的指令。在一个实施例中,移动计算机应用程序200包括数据收件箱。响应于接收到对数据收件箱的选择,移动计算机应用程序200可以显示用于手动上传数据文件和将上传的文件导入到数据管理器的图形用户界面。
在一个实施例中,数字地图簿指令206包括在设备存储器中存储的田地地图数据层,并被编程有数据可视化工具和地理空间田地注释。这为种植者提供了近在咫尺的方便信息,以供参考、记录和对田地表现的视觉洞察力。在一个实施例中,概述和警报指令204被编程为提供对种植者重要之物的操作范围视图,以及采取行动或专注于特定问题的及时建议。这允许种植者将时间集中在需要关注什么,以节省时间并在整个季节保持产量。在一个实施例中,种子和种植指令208被编程为基于科学模型和经验数据来提供用于种子选择、混合放置和脚本创建(包括可变速率(VR)脚本创建)的工具。这使种植者能够通过优化的种子购买、放置和种群来使产量或投资回报最大化。
在一个实施例中,脚本生成指令205被编程为提供用于生成脚本(包括可变速率(VR)肥力脚本)的界面。该界面使种植者能够为田地器具(诸如养分施用、种植和灌溉)创建脚本。例如,种植脚本界面可包括用于识别用于种植的种子的类型的工具。在接收到对种子类型的选择之后,移动计算机应用程序200可以显示被划分为管理区域的一个或多个田地,诸如作为数字地图簿指令206的一部分而被创建的田地地图数据层。在一个实施例中,管理区域包括土壤区域以及面板,该面板标识每个土壤区域以及每个区域的土壤名称、质地、排水或其他田地数据。移动计算机应用程序200还可在一个或多个田地的地图上显示用于编辑或创建此类的工具,诸如用于绘制管理区域(诸如土壤区域)的图形工具。种植过程可以应用于所有管理区域,或者不同的种植过程可以应用于管理区域的不同子集。当脚本被创建时,移动计算机应用程序200可以使该脚本可用于以应用控制器可读的格式(诸如存档或压缩的格式)下载。此外,和/或可替代地,脚本可以被从移动计算机应用程序200直接发送到驾驶室计算机115和/或被上传到一个或多个数据服务器并被存储以供进一步使用。
在一个实施例中,氮指令210被编程为提供通过使氮对作物的可用性可视化来告知氮决策的工具。这使种植者能够通过季节期间的优化的氮施用来使产量或投资回报最大化。示例编程功能包括:显示图像(诸如SSURGO图像)以使得能够以高空间分辨率(取决于传感器的接近度和分辨率,精细到毫米或更小)绘制肥料施用区域和/或根据子田地土壤数据(诸如从传感器获得的数据)生成的图像;上传现有的种植者定义的区域;提供植物养分可用性的图和/或使得能够调节跨多个区域的一次或多次氮施用的地图;输出脚本以驱动机械;用于大量数据输入和调整的工具;和/或用于数据可视化的地图等。该上下文中的“大量数据输入”可能表示输入数据一次然后将相同的数据应用于已经在系统中定义的多个田地和/或区域;示例数据可包括对于相同种植者的许多田地和/或区域都相同的氮施用数据,但是这样的大量数据输入适用于将任何类型的田地数据输入到移动计算机应用程序200中。例如,氮指令210可被编程为接受氮施用和实践程序的定义以及接受指定跨多个田地应用那些程序的用户输入。该上下文中的“氮施用程序”指的是与以下各项相关联的所存储的命名的数据集:名称,颜色代码或其他标识符,一个或多个施用日期,每个日期的材料或产品类型以及数量,施用或掺入的方法(诸如注入或播撒),和/或每个日期的施用量或施用速率,作为施用对象的作物或杂种,等等。该上下文中的“氮实践程序”指的是与以下各项相关联的所存储的命名的数据集:实践名称;先前的作物;耕作系统;主要耕作的日期;曾使用的一个或多个先前的耕作系统;曾使用的施用类型(诸如施肥)的一个或多个指示符。氮指令210也可被编程为生成并导致显示氮图,该氮图指示对指定氮的植物使用的预测以及是预测到盈余还是预测到不足;在一些实施例中,不同的颜色指示符可以表示盈余的幅度或不足的幅度。在一个实施例中,氮图包括:计算机显示设备中的包括多行的图形显示,每一行与田地相关联并标识该田地;指定在田地中种植什么作物、田地大小、田地位置和田地周界的图形表示的数据;在每一行中,具有图形指示符的按月的时间线指定与月份名称相关的点处的每次氮施用和数量;以及数字和/或有颜色的盈余指示符或不足指示符,其中颜色指示幅度。
在一个实施例中,氮图可包括诸如刻度盘或滑动条之类的用于动态地改变氮种植和实践程序的一个或多个用户输入特征,使得用户可以优化其氮图。用户然后可以使用其优化的氮图以及相关的氮种植和实践程序来实现一个或多个脚本,包括可变速率(VR)肥力脚本。氮指令210也可被编程为生成并导致显示氮地图,该氮地图指示对指定氮的植物使用的预测以及是预测到盈余还是预测到不足;在一些实施例中,不同的颜色指示符可以表示盈余的幅度或不足的幅度。氮地图可以使用数字和/或有颜色的盈余指示符或不足指示符来显示对指定氮的植物使用的预测以及针对过去和未来的不同时间(诸如每天、每周、每月或每年)是预测到盈余还是预测到不足,其中颜色指示幅度。在一个实施例中,氮地图可包括诸如刻度盘或滑动条之类的用于动态地改变氮种植和实践程序的一个或多个用户输入特征,使得用户可以优化其氮地图,例如以获得优选量的盈余到不足。用户然后可以使用其优化的氮地图以及相关的氮种植和实践程序来实现一个或多个脚本,包括可变速率(VR)肥力脚本。在其他实施例中,与氮指令210类似的指令可以用于其他养分(诸如磷和钾)的施用、农药的施用以及灌溉程序。
在一个实施例中,天气指令212被编程为提供田地专用的最近天气数据和预报天气信息。这使得种植者能够节省时间以及具有关于日常操作决策的高效集成显示。
在一个实施例中,田地健康指令214被编程为提供及时的遥感图像,这些遥感图像突出显示应季作物变化和潜在担忧。示例编程功能包括:云检查,以识别可能的云或云阴影;基于田地图像确定氮指数;对例如包括与田地健康有关的那些的侦察层的图形可视化,以及对侦察笔记的查看和/或共享;和/或从多个来源下载卫星图像,并优先考虑种植者的图像,等等。
在一个实施例中,表现指令216被编程为提供报告、分析和洞察力工具,这些工具使用农场数据进行评估、洞察力和决策。这使种植者能够通过关于为何投资回报处于先前水平的基于事实的结论以及对产量限制因素的洞察力来寻求下一年的改进结果。表现指令216可被编程为经由一个或多个网络109向在农业智能计算机系统130和/或外部数据服务器计算机108处执行的后端分析程序传送,并且被配置为分析诸如产量、产量差异、杂种、种群、SSURGO区域、土壤测试属性或海拔等的度量。编程的报告和分析可包括:产量可变性分析,治疗效果估计,基于从许多种植者收集的匿名数据或种子和种植的数据对照其他种植者的产量和其他度量的基准测试,等等。
具有以这种方式配置的指令的应用程序可以针对不同的计算设备平台来实现,同时保持相同的一般用户界面外观。例如,移动应用程序可被编程以便在使用客户端计算机处的浏览器访问的平板、智能电话或服务器计算机上执行。另外,针对平板计算机或智能电话配置的移动应用程序可以提供适合于驾驶室计算机115的显示和处理能力的完整的应用程序体验或驾驶室应用程序体验。例如,现在参考图2的视图(b),在一个实施例中,驾驶室计算机应用程序220可包括地图—驾驶室指令222、远程视图指令224、数据收集和传送指令226、机器警报指令228、脚本传送指令230和侦察—驾驶室指令232。视图(b)的指令的代码基可以与视图(a)的相同,并且实现该代码的可执行文件可被编程为检测它们所执行于的平台的类型,并被编程为通过图形用户界面仅暴露适用于驾驶室平台或完整平台的那些功能。该方法使系统能够识别出适用于驾驶室内环境和驾驶室的不同技术环境的截然不同的用户体验。地图—驾驶室指令222可被编程为提供田地、农场或区域的地图视图,这些地图视图在指导机器操作时有用。远程视图指令224可被编程为打开、管理实时的或近乎实时的机器活动的视图并将其经由无线网络、有线连接器或适配器等提供给连接到系统130的其他计算设备。数据收集和传送指令226可被编程为打开、管理在传感器和控制器处收集的数据,并提供将其经由无线网络、有线连接器或适配器等传送到系统130。机器警报指令228可被编程为检测与驾驶室相关联的机器或工具的操作问题并生成操作者警报。脚本传送指令230可被配置为以指令脚本的方式传送,这些指令脚本被配置为指导机器操作或数据的收集。侦查—驾驶室指令232可被编程为基于田地管理器计算设备104、农业装置111或传感器112在田地中的位置来显示从系统130接收到的基于位置的警报和信息,并且摄取、管理基于位置的侦察观察结果并提供基于农业装置111或传感器112在田地中的位置将基于位置的侦察观察结果传送到系统130。
2.3.计算机系统的数据摄取
在一个实施例中,外部数据服务器计算机108存储外部数据110,其包括表示一个或多个田地的土壤组成的土壤数据以及表示一个或多个田地上的温度和降水的天气数据。天气数据可包括过去和当前的天气数据以及对未来天气数据的预测。在一个实施例中,外部数据服务器计算机108包括由不同实体托管的多个服务器。例如,第一服务器可包含土壤组成数据,而第二服务器可包括天气数据。此外,土壤组成数据可存储在多个服务器中。例如,一个服务器可存储表示土壤中的沙子、淤泥和粘土的百分比的数据,而第二服务器可存储表示土壤中的有机物(OM)的百分比的数据。
在一个实施例中,远程传感器112包括一个或多个传感器,这一个或多个传感器被编程或配置为生成一个或多个观察结果。远程传感器112可以是空中传感器(诸如卫星),车辆传感器,种植设备传感器,耕作传感器,肥料或杀虫剂施用传感器,收割机传感器,以及能够从一个或多个田地接收数据的任何其他器具。在一个实施例中,应用控制器114被编程或配置为从农业智能计算机系统130接收指令。应用控制器114还可被编程或配置为控制农业车辆或用具的操作参数。例如,应用控制器可被编程或配置为控制车辆(诸如拖拉机)、种植设备、耕作设备、肥料或杀虫剂设备、收割机设备或其他农场用具(诸如水阀)的操作参数。其他实施例可使用传感器和控制器的任何组合,其中以下仅仅是选中的示例。
系统130可以在用户102的控制下大规模地从已经将数据贡献给共享数据库系统的大量种植者获得或摄取数据。当请求或触发一个或多个用户控制的计算机操作以获得供系统130使用的数据时,该形式的获取数据可以称为“手动数据摄取”。例如,可以操作可从加利福尼亚州旧金山市的气候公司购买的CLIMATE FIELDVIEW应用程序以将数据导出到系统130,以存储在存储库160中。
例如,种子监视器系统既可以控制播种机装置组件,也可以获得种植数据,包括经由信号线束来自种子传感器的信号,该信号线束包括CAN主干网以及用于注册和/或诊断的点对点连接。种子监视器系统可被编程或配置为经由驾驶室计算机115或系统130内的其他设备向用户显示播种间距、种群和其他信息。在美国专利第8,738,243号和美国专利公开20150094916中公开了示例,并且本公开假定那些其他专利公开的知识。
同样,产量监视器系统可包含用于收割机装置的产量传感器,其将产量测量数据发送至驾驶室计算机115或系统130内的其他设备。产量监视器系统可利用一个或多个远程传感器112来获得联合收割机或其他收割机中的谷物水分测量结果,并经由驾驶室计算机115或系统130内的其他设备将这些测量结果发送到用户。
在一个实施例中,可以与在本文中其他地方描述的类型的任何移动车辆或装置一起使用的传感器112的示例包括运动学传感器和位置传感器。运动学传感器可包括任何速度传感器,诸如雷达或车轮速度传感器、加速计或陀螺仪。位置传感器可包括GPS接收器或收发器,或者基于WiFi的位置或地图应用程序等,这些应用程序被编程为基于附近的WiFi热点来确定位置。
在一个实施例中,可以与拖拉机或其他移动车辆一起使用的传感器112的示例包括:发动机转速传感器,燃料消耗传感器,与GPS或雷达信号交互的面积计数器或距离计数器,PTO(动力输出装置)速度传感器,被配置为检测液压参数(诸如压力或流量)和/或液压泵速度的拖拉机液压传感器,轮速传感器或轮滑传感器。在一个实施例中,可以与拖拉机一起使用的控制器114的示例包括:液压方向控制器,压力控制器,和/或流量控制器;液压泵速度控制器;速度控制器或调速器;悬挂装置位置控制器;或者车轮位置控制器提供自动转向。
在一个实施例中,可以与诸如种植机、条播机或空气播种机之类的种子种植设备一起使用的传感器112的示例包括:种子传感器,其可以是光学、电磁或碰撞传感器;下压力传感器,诸如称重销、称重传感器、压力传感器;土壤性质传感器,诸如反射率传感器、湿度传感器、电导率传感器、光学残留传感器或温度传感器;组件操作标准传感器,诸如种植深度传感器、下压力缸压力传感器、种子盘速度传感器、种子驱动电机编码器、种子输送机系统速度传感器或者真空度传感器;或者杀虫剂施加传感器,诸如光学或其他电磁传感器或碰撞传感器。在一个实施例中,可以与这样的种子种植设备一起使用的控制器114的示例包括:工具栏折叠控制器,诸如用于与液压缸相关联的阀的控制器;下压力控制器,诸如用于与气压缸、安全气囊或液压缸相关联的阀的控制器,并被编程用于将下压力施加到单个行单元或整个种植机框架上;种植深度控制器,诸如线性致动器;计量控制器,诸如电动排种器驱动马达、液压排种器驱动马达或刈幅控制离合器;混合选择控制器,诸如排种器驱动马达,或者被编程用于选择性地允许或阻止种子或空气种子混合物将种子递送到排种器或中央散装料斗中或从排种器或中央散装料斗中递送种子的其他致动器;计量控制器,诸如电动排种器驱动马达或液压排种器驱动马达;种子输送机系统控制器,诸如用于带式种子递送输送机马达的控制器;标记控制器,诸如用于气动或液压致动器的控制器;或者杀虫剂施用速率控制器,诸如计量驱动控制器、孔口尺寸或位置控制器。
在一个实施例中,可以与耕作设备一起使用的传感器112的示例包括:用于诸如柄或盘之类的工具的位置传感器;用于被配置为检测深度、同轴角或侧向间距的此类工具的工具位置传感器;下压力传感器;或牵伸力传感器。在一个实施例中,可以与耕作设备一起使用的控制器114的示例包括下压力控制器或工具位置控制器,诸如被配置为控制工具深度、同轴角或侧向间距的控制器。
在一个实施例中,可以联系用于施用肥料、杀虫剂、杀真菌剂等的装置(诸如播种机上的起动肥料系统、底土肥料施用器或肥料喷雾器)使用的传感器112的示例包括:流体系统标准传感器,例如流量传感器或压力传感器;指示哪些喷头阀或流体管线阀为打开的传感器;与罐相关联的传感器,诸如液位传感器;分段或全系统的供应线传感器,或者行专用的供应线传感器;或者运动学传感器,诸如布置在喷雾器喷杆上的加速度计。在一个实施例中,可以与这样的装置一起使用的控制器114的示例包括:泵速度控制器;阀控制器,其被编程为控制压力、流量、方向、PWM等;或者诸如用于喷杆高度、深耕铲深度或喷杆位置的位置致动器。
在一个实施例中,可以与收割机一起使用的传感器112的示例包括:产量监视器,诸如冲击板应变仪或位置传感器、电容式流量传感器、负载传感器、重量传感器或者与升降机或绞龙相关联的扭矩传感器,或者光学或其他的电磁谷物高度传感器;谷物水分传感器,诸如电容传感器;谷物损失传感器,包括碰撞传感器、光学传感器或电容传感器;割台操作标准传感器,诸如割台高度传感器、割台类型传感器、甲板间隙传感器、送料机速度传感器和拨禾轮速度传感器;分离器操作标准传感器,诸如凹板间隙、转子速度、闸瓦间隙或筛间隙传感器;用于位置、操作或速度的绞龙传感器;或者发动机转速传感器。在一个实施例中,可以与收割机一起使用的控制器114的示例包括:用于诸如割台高度、割台类型、甲板间隙、送料机速度或拨禾轮速度之类的元素的割台操作标准控制器;用于诸如凹板间隙、转子速度、闸瓦间隙或筛间隙之类的特征的分离器操作标准控制器;或者用于绞龙位置、操作或速度的控制器。
在一个实施例中,可以与谷物拖车一起使用的传感器112的示例包括重量传感器或者用于绞龙位置、操作或速度的传感器。在一个实施例中,可以与谷物拖车一起使用的控制器114的示例包括用于绞龙位置、操作或速度的控制器。
在一个实施例中,传感器112和控制器114的示例可以安装在无人驾驶飞行器(UAV)装置或“无人机”中。这样的传感器可包括具有对包括可见光、红外、紫外线、近红外(NIR)等在内的电磁频谱的任何范围都有效的检测器的相机;加速度计;高度计;温度传感器;湿度传感器;皮托管传感器或其他空速或风速传感器;电池寿命传感器;或雷达发射器和反射雷达能量探测装置;其他电磁辐射发射器和反射电磁辐射检测装置。这样的控制器可包括:引导或马达控制设备,控制面控制器,相机控制器,或者被编程为打开任何前述传感器、操作任何前述传感器、从任何前述传感器获得数据、管理和配置任何前述传感器的控制器。在美国专利申请第14/831,165号中公开了示例,并且本公开假定该其他专利公开的知识。
在一个实施例中,传感器112和控制器114可以固定到土壤采样和测量装置,该装置被配置或编程为对土壤进行采样以及执行土壤化学测试、土壤湿度测试和其他与土壤有关的测试。例如,在美国专利第8,767,194号和美国专利第8,712,148号中公开的装置可被使用,并且本公开假定那些专利公开的知识。
在一个实施例中,传感器112和控制器114可包括用于监视田地的天气状况的天气设备。例如,在2015年4月29日提交的美国临时申请第62/154,207号、2015年6月12日提交的美国临时申请第62/175,160号、2015年7月28日提交的美国临时申请第62/198,060号和2015年9月18日提交的美国临时申请第62/220,852号中公开的装置可被使用,并且本公开假定那些专利公开的知识。
2.4.处理概述-农艺模型训练
在一个实施例中,农业智能计算机系统130被编程或配置为创建农艺模型。在该上下文中,农艺模型是农业智能计算机系统130的存储器中的数据结构,其包括田地数据106,诸如一个或多个田地的标识数据和收获数据。农艺模型还可包括计算出的农艺特性,其描述了可能影响田地上的一个或多个作物的生长的条件或一个或多个农作物的特性或两者。此外,农艺模型可包括基于农艺因素的建议,诸如作物建议、灌溉建议、种植建议、肥料建议、杀真菌剂建议、杀虫剂建议、收割建议和其他作物管理建议。农艺因素也可用于估计一个或多个作物相关结果,诸如农艺产量。作物的农艺产量是对所生产的作物的数量的估计,或者在一些示例中是从所生产的作物获得的收入或利润。
在一个实施例中,农业智能计算机系统130可使用预先配置的农艺模型来计算与当前接收到的一个或多个田地的位置和作物信息有关的农艺特性。预先配置的农艺模型基于先前处理的田地数据,其包括但不限于标识数据、收获数据、肥料数据和天气数据。预先配置的农艺模型可能已被交叉验证,以确保模型的准确性。交叉验证可包括与地面实况的比较,其将预测结果与田地上的实际结果进行比较,诸如将降雨估计与提供相同或附近位置的天气数据的雨量计或传感器进行比较,或将氮含量的估计与土壤样品测量结果进行比较。
图3示出了编程的处理,通过该处理,农业智能计算机系统使用由一个或多个数据源提供的田地数据来生成一个或多个预先配置的农艺模型。图3可以用作用于将农业智能计算机系统130的功能元件编程为执行现在描述的操作的算法或指令。
在框305处,农业智能计算机系统130被配置或编程为实现对从一个或多个数据源接收的田地数据的农艺数据预处理。可以出于去除噪声、失真影响以及农艺数据内的混杂因素的目的而对从一个或多个数据源接收的田地数据进行预处理,这些混杂因素包括可能对接收到的田地数据值产生不利影响的测量异常值。农艺数据预处理的实施例可包括但不限于:去除通常与异常数据值相关联的数据值、已知不必要地使其他数据值倾斜的特定测量数据点,数据平滑、聚合,或者用于去除或减少来自噪声的加性或乘性影响的采样技术,以及用于提供正数据输入和负数据输入之间的明显区别的其他滤波或数据推导技术。
在框310处,农业智能计算机系统130被配置或编程为使用预处理后的田地数据来执行数据子集选择,以识别对初始农艺模型生成有用的数据集。农业智能计算机系统130可实现数据子集选择技术,其包括但不限于遗传算法方法、所有子集模型方法、顺序搜索方法、逐步回归方法、粒子群优化方法和蚁群优化方法。例如,遗传算法选择技术基于自然选择和遗传学的进化原理使用自适应启发式搜索算法来确定和评估预处理农艺数据内的数据集。
在框315处,农业智能计算机系统130被配置或编程为实现田地数据集评估。在一个实施例中,通过创建农艺模型并对所创建的农艺模型使用特定质量阈值来评估特定田地数据集。可以使用一种或多种比较技术(诸如但不限于留一交叉验证均方根误差(RMSECV)、平均绝对误差和平均百分比误差)来比较和/或验证农艺模型。例如,RMSECV可以通过将由农艺模型创建的预测农艺属性值与所收集和分析的历史农艺属性值进行比较来交叉验证农艺模型。在一个实施例中,将农艺数据集评估逻辑用作反馈回路,其中在未来的数据子集选择步骤期间使用不满足已配置质量阈值的农艺数据集(框310)。
在框320处,农业智能计算机系统130被配置或编程为基于经交叉验证的农艺数据集来实现农艺模型创建。在一个实施例中,农艺模型创建可实施多变量回归技术以创建预先配置的农艺数据模型。
在框325处,农业智能计算机系统130被配置或编程为存储预先配置的农艺数据模型以用于未来的田地数据评估。
2.5.实现示例-硬件概述
根据一个实施例,本文描述的技术由一个或多个专用计算设备实现。专用计算设备可被硬连线以执行这些技术,或者可包括诸如一个或多个专用集成电路(ASIC)或现场可编程门阵列(FPGA)之类的被永久编程为执行这些技术的数字电子设备,或者可包括被编程为根据固件、存储器、其他存储或组合中的程序指令来执行这些技术的一个或多个通用硬件处理器。这样的专用计算设备还可以将定制的硬连线逻辑、ASIC或FPGA与定制的编程相结合,以实现这些技术。专用计算设备可以是台式计算机系统,便携式计算机系统,手持式设备,联网设备,或是包含用来实现这些技术的硬连线和/或程序逻辑的任何其他设备。
例如,图4是示出了可以在其上实现本发明的实施例的计算机系统400的框图。计算机系统400包括总线402或用于传送信息的其他通信机制,以及与总线402耦合的用于处理信息的硬件处理器404。硬件处理器404可以例如是通用微处理器。
计算机系统400还包括耦合到总线402的用于存储信息和要由处理器404执行的指令的主存储器406,诸如随机存取存储器(RAM)或其他动态存储设备。主存储器406也可用于在要由处理器404执行的指令的执行期间存储临时变量或其他中间信息。这样的指令当存储在处理器404可访问的非暂时性存储介质中时使计算机系统400成为专用于执行在这些指令中指定的操作的专用机器。
计算机系统400还包括耦合到总线402的用于存储静态信息和处理器404的指令的只读存储器(ROM)408或其他静态存储设备。诸如磁盘、光盘或固态驱动器之类的存储设备410被提供并耦合到总线402以存储信息和指令。
计算机系统400可以经由总线402耦合到诸如阴极射线管(CRT)之类的用于向计算机用户显示信息的显示器412。包括字母数字键和其他键的输入设备414耦合到总线402,以向处理器404传送信息和命令选择。另一种类型的用户输入设备是用于向处理器404传送方向信息和命令选择并用于控制显示器412上的光标移动的光标控制416,诸如鼠标、跟踪球或光标方向键。该输入设备通常在两个轴(第一轴(例如,x)和第二轴(例如,y))上具有两个自由度,这允许设备指定平面中的位置。
计算机系统400可以使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑来实现本文描述的技术,该程序逻辑与计算机系统结合使计算机系统400成为专用机器或将计算机系统400编程为专用机器。根据一个实施例,由计算机系统400响应于处理器404执行在主存储器406中包含的一个或多个指令的一个或多个序列而执行本文中的技术。可以从诸如存储设备410之类的另一存储介质将这样的指令读取到主存储器406中。执行在主存储器406中包含的指令序列使处理器404执行本文描述的处理步骤。在替代实施例中,可以使用硬连线电路来代替软件指令或者与软件指令结合使用硬连线电路。
本文所使用的术语“存储介质”指的是存储数据和/或使机器以特定方式运行的指令的任何非暂时性介质。这样的存储介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘、磁盘或固态驱动器,诸如存储设备410。易失性介质包括动态存储器,诸如主存储器406。存储介质的常见形式例如包括:软盘,柔性盘,硬盘,固态驱动器,磁带或任何其他磁性数据存储介质,CD-ROM,任何其他光学数据存储介质,具有孔图案的任何物理介质,RAM,PROM,和EPROM,FLASH-EPROM,NVRAM,任何其他存储器芯片或盒式磁带。
存储介质不同于传输介质,但是可以与传输介质结合使用。传输介质参与在存储介质之间传送信息。例如,传输介质包括同轴电缆、铜线和光纤,包括构成总线402的电线。传输介质还可以采用声波或光波的形式,诸如在无线电波和红外数据通信期间生成的那些。
各种形式的介质可参与将一个或多个指令的一个或多个序列运送到处理器404以供执行。例如,指令最初可被携带在远程计算机的磁盘或固态驱动器上。远程计算机可以将指令加载到其动态存储器中,并使用调制解调器通过电话线来发送指令。在计算机系统400本地的调制解调器可以接收电话线上的数据,并使用红外发射器将数据转换为红外信号。红外检测器可以接收红外信号中携带的数据,并且适当的电路可以将数据放置在总线402上。总线402将数据运送到主存储器406,处理器404从主存储器406中检索并执行指令。由主存储器406接收的指令可以可选地在处理器404执行之前或之后存储在存储设备410上。
计算机系统400还包括耦合到总线402的通信接口418。通信接口418向连接到本地网络422的网络链路420提供双向数据通信耦合。例如,通信接口418可以是集成服务数字网络(ISDN)卡、电缆调制解调器、卫星调制解调器,或者用于向对应类型的电话线提供数据通信连接的调制解调器。作为另一个示例,通信接口418可以是用于向兼容的LAN提供数据通信连接的局域网(LAN)卡。无线链路也可被实现。在任何这样的实现中,通信接口418发送和接收电信号、电磁信号或光信号,这些电信号、电磁信号或光信号携带表示各种类型的信息的数字数据流。
网络链路420通常向其他数据设备提供通过一个或多个网络的数据通信。例如,网络链路420可以向主机计算机424或向由因特网服务提供商(ISP)426操作的数据设备提供通过本地网络422的连接。ISP 426继而通过现在通常称为“因特网”428的全球分组数据通信网络来提供数据通信服务。本地网络422和因特网428都使用携带数字数据流的电信号、电磁信号或光信号。通过各种网络的信号和在网络链路420上并通过通信接口418的信号是传输介质的示例形式,这些信号向和从计算机系统400传送数字数据。
计算机系统400可以通过一个或多个网络、网络链路420和通信接口418发送消息和接收包括程序代码在内的数据。在因特网示例中,服务器430可以通过因特网428、ISP426、本地网络422和通信接口418来发送所请求的应用程序的代码。
所接收的代码可以在其被接收时由处理器404执行,并且/或者存储在存储设备410或其他非易失性存储中以供以后执行。
3.用于执行机器学习算法的系统
在一个实施例中,用于执行机器学习算法的计算机系统包括被编程用于执行各种基于机器的模型的硬件和软件。在一些实施例中,独立的组件可以被选择、修改和分组以形成被配置为支持模型的执行的组件的组合。组件可以被组合以形成可以促进模型的执行的顺序、并行或混合组合。这可以使用以下示例来说明:假定模型存储库包括实现用于种植玉米的各种过程和用于估计玉米种植周期的各种过程的组件。此外,假定模型执行基础设施包括一组CPU、一组存储器单元、存储设备、通信总线和通信网络。使用来自模型存储库的组件,农作物种植者可以选择或构建模型,该模型被配置为确定向农田推荐多少氮以从田地获取最大可能玉米收获,或者何时以及如何应当向田地施肥,或者应当种植哪种类型的玉米,或者田地的玉米要花多少天才能成熟。作物种植者可以向模型提供输入,该输入指定有关田地的土壤、气候和位置的信息。然后,种植者可以请求在模型执行基础设施上并且根据所提供的输入来执行模型以生成输出。输出可以包括针对田地的氮和玉米类型推荐。输出还可以包括对玉米收获日期的预测等。
图7A描绘了用于执行机器学习算法的示例性的基于计算机的平台700。在所描绘的示例中,平台700包括管理处理器705、模型存储库710、模型执行基础设施720和模型历史日志730。管理处理器705可以在被配置为接收、处理和传输任何类型的数据的计算设备中实现。
在一个实施例中,基础设施720包括一个或多个存储设备722、一个或多个云系统计算机723、一个或多个基于云的网络724、一个或多个计算机服务器725、一个或多个计算机工作站726和一个或多个通信网络727。模型执行基础设施720在图8A中详细描述。在其他实施例中,基础设施720包括更少或更多的组件。
可以经由一个或多个通信网络740和被配置为传输和接收数据的一个或多个计算设备(诸如终端750、平板电脑752、移动设备754、服务器计算机756和其他计算设备(图7A中未示出,诸如云存储、基于云的网络等))来促进对平台700的访问。在其他实施例中,平台700可以包括更少或更多的设备。
在一个实施例中,平台700被配置为编目、定义和组织各种基于机器的模型,将它们存储在存储库710中,在模型执行基础设施720上执行它们,并且将模型的执行数据日志记录在模型历史日志730中。在提供全面和广泛能力(如下所述)以跟踪模型、管理模型的修改和执行以及使模型的历史和日志可用于用户方面,平台700优于业内已知的用于构建和存储模型的其他平台。例如,平台700提供用于跟踪模型的版本、修改和运行时特性的综合版本控制能力、以及用于浏览和查询模型及其定义的综合编目能力。
在一个实施例中,模型存储库710被配置为存储和编目基于机器的模型的定义和元数据。模型的定义描述特定于模型的特性,而与模型相关联的元数据则描述模型的用法和执行特性。
在一个实施例中,模型执行基础设施720提供将模型执行和模型输入抽象的能力,使得基础设施720可以被重用,以用于执行各种模型。
在一个实施例中,模型历史日志730被配置为存储模型的执行的历史日志。日志在还原模型的旧版本或不同版本、执行同一模型的不同版本以及比较由模型的不同版本生成的结果时可能很有用。模型历史日志730允许存储关于在模型执行基础设施720的相同或不同组件上以及在不同输入数据上的各种模型的执行的度量。这在执行模型的运行时度量、预期准确度度量和预期执行持续时间度量的历史分析时可能很有用。
3.1.示例模型存储库
在一个实施例中,模型存储库710是被配置为存储关于机器学习模型的信息的基于计算机的数据库。模型存储库710可以用于存储各种类型的模型以及每个模型的各种类型的信息。
图7B描绘了示例性的基于计算机的模型存储库710。在所描绘的示例中,存储库710包括在农业应用中可能有用的基于机器的模型的示例。存储库710还可以包括在图7B中未描绘的其他模型。存储在存储库710中的模型可以被索引、组织和分类。模型的索引可以存储在索引数据结构719中,该索引数据结构719可以使用数据指针、数据表等来组织。
在农业应用的上下文中,基于机器的模型的示例可以包括操作研究模型712、机器学习模型714、深度学习模型716和物理模型718。
尽管在图7B中未示出,但是基于机器的模型可以包括特定于非农业应用的模型,诸如人力资源模型、计费模型等。
操作研究模型712是被配置为处理复杂的数学等式以解决优化问题的专用模型。通常,操作研究模型712处理基于约束的编程。操作研究模型可以接受包括一个或多个约束的输入。在接收到输入之后,模型可以执行优化算法以得出对约束的输入值进行优化的解。操作研究模型可以用于优化例如在尽可能短的时间段内处理遗传相关数据所需要的遗传学实验室中的雇员数和机器人机器数。
操作研究模型712在农业技术中具有广泛的适用性,以优化种子种植时间表,优化施肥时间表和优化收获时间表。操作研究模型712也可以应用于物流和运输。
机器学习模型714通常包括人工智能(“AI”)模型。它们通常用于学习系统的行为,并且基于学习到的系统的行为来预测系统对新输入和数据的反应。机器学习模型714可以是针对特定系统和特定任务而定构和定制的。
机器学习模型714可以广泛应用于农业技术中。例如,可以在表现出某些植物病害的一组植物图片上训练机器学习模型。训练可以包括将疾病的名称分配给图片。例如,训练可以包括在图片中描绘的疾病特性与疾病名称之间构建关联。一旦模型被训练,就可以部署模型并且可以将模型用于识别用户提供的植物照片中描绘的植物病害。
深度学习模型716包括通常比机器学习模型714更高级和更复杂的机器学习模型。深度学习模型716可以使用例如随机森林算法、线性回归算法、神经网络算法和其他复杂的算法。
物理模型718是可以在模型执行基础设施720中执行的软件组件的物理模型。例如,物理模型718可以包括软件库、指令和可编程调用,它们可以被组合和选择以形成诸如操作研究模型、机器学习模型或深度学习模型等特定模型的可执行文件。
模型存储库710中存储的模型通常与其各自的定义和元数据相关联地存储。每个模型可以与其自己的一组定义和其自己的元数据相关联。因此,操作研究模型712中的每个操作研究模型可以具有其自己的定义和元数据712A,机器学习模型714中的每个机器学习模型可以具有其自己的定义和元数据714A,深度学习模型716中的每个深度学习模型可以具有其自己的定义和元数据716A,并且物理模型718中的每个物理模型可以具有其自己的定义和元数据718A。
图7C描绘了由基于计算机的模型存储库维护的示例数据结构。所描绘的示例示出了示例物理模型数据结构718B以及与示例物理模型718A(在图7B中示出)相关联的定义和元数据结构718BB。尽管图7C仅为物理模型描绘了示例数据结构,但是其他模型可以具有存储在模型存储库710中的类似数据结构。
如图7C所示,模型存储库710可以为物理模型718存储物理模型数据结构718A。数据结构718A可以用于存储与物理模型718相关联的定义和元数据。
数据结构718A可以用于存储与物理模型718相关联的定义和元数据。定义通常与模型的静态特性有关,而元数据通常与与模型的执行有关的特性有关。在某些情况下,定义和元数据之间的区别可能是不清楚的,这是因为,定义和元数据都可能涉及例如预期运行时度量等。例如,预期运行时度量可以在定义和元数据两者中被描述。
在图7C所示的示例中,定义和元数据718A包括模型名称、输入定义、输出定义、基础设施要求、运行时度量、预期执行持续时间、预期准确度、状态(诸如开发状态、测试状态或生产状态)、模型分类、模型版本、模型类型和模型所有者。在其他示例中,数据结构718A可以包括更少或更多的元素。
在一个实施例中,定义和元数据718A包括模型工件。工件是为基于机器的模型而构建并且可以被执行以对系统的某些行为进行建模的二进制文件。一旦模型在训练数据上被训练过,通常会生成二进制文件。一旦训练阶段完成,就将经训练的模型捕获到实际二进制文件中。二进制文件包括在由计算机处理器执行时使模型预测与训练数据一致的系统行为的可执行指令。二进制文件(即,工件)可以部署到生产中,并且在模型执行基础设施720中被执行。
基于机器的模型的定义和元数据718A中包括的元素可以变化,并且可以取决于模型的类型以及模型是否已经被执行或修改。例如,与机器学习模型相关联的定义和元数据通常将包括模型的特定类型、模型的质量度量以及模型的预期准确度。模型的预期准确度可以表示为分数(诸如95%)或类似形式。
图7C中描绘的数据结构可以通过管理如图7A所示的处理器705来创建、查询、更新和维护。
对被维护在模型存储库710中的数据结构的访问可以经由一个或多个通信网络740(在图7A中示出,但在图7C中未示出)以及经由一个或多个计算设备(诸如终端750、平板电脑752、移动设备754、服务器计算机756、以及被配置为传输和接收数据的其他计算设备)来促进。
模型存储库710可以被更新和修改。例如,新模型可以被添加到模型存储库710,和/或模型的新版本可以被创建并且存储在存储库中。
为了创建新的基于机器的模型或模型的新版本,用户或管理者可以从模型存储库710中可用的构造块来构建新模型。一旦构建好,就为新模型创建初始定义并且将其存储在模型存储库710中以指示新模型正在开发中。一旦对新模型进行测试,就创建另一定义并且将其存储在模型存储库710中以指示正在测试新模型。一旦新模型被部署到生产中,就为新模型创建其他定义并且将其存储在模型存储库710中以指示新模型已经投入生产。每个定义可以与新模型本身相关联地存储,使用例如索引719(在图7B所示)来进行索引,并且使其用于查询和生成报告。
一旦准备好要执行的新模型,就创建其他定义并且将其存储在模型存储库710中以指示例如预期执行持续时间、预期准确度和执行基础设施要求。
一旦新模型被执行,就针对该模型创建元数据并且将元数据存储在模型存储库710中以指示例如运行时度量、状态数据、状态指示符等。另外,创建新模型的执行日志并且将其存储在模型历史日志数据库730中。
当对新的输入数据执行新模型时,针对模型创建新的元数据并且将新的元数据存储在模型存储库710中以指示新的运行时度量、状态数据、状态指示符等。另外,创建模型的新的执行日志并且将其存储在模型历史日志数据库730中。
每次创建、修改、执行或查询模型时,都会重复这个过程。随着时间的流逝,模型存储库710、模型执行基础设施720和模型历史日志数据库730成为中心仓库,科学家、研究人员和农业专业人员可以扩展和测试该中心仓库,并且农作物种植者可以使用和比较该中心仓库。
图7D描绘了用于构建、存储和编目基于机器的模型的示例流程图。提供该示例只是为了说明将模型合并到存储库710中的多种方式之一、以及将模型集成到平台700中的多种方式之一。所描绘的过程可以由包括如图7A所示的管理处理器705在内的任何基于计算机的处理器来执行。
在步骤780中,基于计算机的处理器接收存储基于机器的模型的请求。该请求可以从任何终端设备(诸如图7A、7C所示的设备750-756)被接收。
在步骤782中,处理器解析该请求并且标识模型工件和关于模型的信息。工件可以在请求本身中被提供;替代地,该请求可以包括指向存储有该工件的存储空间的超链接,并且处理器可以从该存储空间中检索该工件。类似地,关于模型的信息可以被包括在请求本身中,或者请求可以包括指向存储空间的超链接,处理器可以从该存储空间中检索模型的定义和元数据。
在步骤784中,处理器确定针对模型的输入。输入和输出可以由用户提供。替代地,可以提供指向可以从中检索输入/输出的存储空间的超链接。输入可以包括当被提供给模型时将被处理以生成输出值的特定输入值。输入可以包括例如关于农田的土壤、气候和位置等的信息。输出结果可以包括提供有关肥料类型的推荐的请求,如果将这种肥料施用于田间,则可以实现田间的最大产量。
在步骤788中,处理器确定用于执行模型的基础设施要求。该要求可能已经在与模型相关联的定义中被提供。替代地,可以从已经存储该模型的记录或存储类似模型的数据记录的模型存储库710中获取该要求。该要求可以包括CPU规范、存储器要求、存储要求等。
在步骤790中,处理器确定模型的状态、版本、预期准确度和估计执行时间。该信息在与模型相关联的定义中可能已经可用。替代地,可以从已经存储该模型的记录或存储类似模型的记录的模型存储库710中获取该信息。
在步骤792中,处理器为模型生成或更新、定义和元数据,并且将已更新定义和元数据与模型相关联地存储在模型存储库710中。
在步骤794中,处理器将模型工件与模型的定义和元数据相关联。例如,处理器可以为模型创建物理模型数据结构718A。数据结构718A在图7C中被描述。
在步骤795中,处理器将模型工件与模型的定义和元数据之间的关联存储在模型存储库710中。
在步骤796中,处理器在模型历史日志数据库730中创建或更新针对模型的记录。这可以包括检查是否已经创建针对模型的记录,如果已经创建,则使用定义和元数据中包括的信息更新记录。然而,如果尚未创建针对模型的记录,则处理器可以在模型历史日志数据库730中创建记录并且将模型的定义和元数据存储在记录中。
如果在步骤797中处理器接收到新请求,则处理器前进到步骤782以处理新请求。否则,处理器在步骤799中结束执行。
3.2.示例模型执行基础设施
图8A描绘了用于执行机器学习算法的示例性的基于计算机的模型执行基础设施720。
在一个实施例中,基础设施720是可以被组合或单独使用以促进存储在模型存储库710中的基于机器的模型的执行的硬件和软件组件的集合。基础设施720可以包括例如计算机处理器、存储器单元、高速缓存、通信总线和计算机编程指令,它们共同提供用于执行模型的执行平台。计算机编程指令可以包括操作系统、系统调用、跨平台应用程序编程接口、编程库等的指令。
基础设施720可以经由任何类型的计算设备来访问。在所描绘的示例中,用户102可以从移动设备754访问基础设施720。移动设备754可以被配置为建立通信会话并且与基础设施720的各个组件通信(808),并且与物理机器1102通信(810),并且与模型存储库710和模型历史日志数据库730通信(816)。基础设施720可以向移动设备754提供(812)推荐。基础设施720还可以被配置为向诸如拖拉机、联合收割机、种植机、播种机等机器1102提供(814)指令。
在一个实施例中,用户102向基础设施720提供输入,以使基础设施720基于该输入来得到田地的农业推荐,以使基础设施720向用户102传输推荐,和/或直接向农业机器1102传输推荐以使机器1102根据从基础设施720获取的推荐来耕种田地。例如,在接收到来自用户102的对田地的农业推荐的请求时,移动设备754向模型执行基础设施720传送该请求(808),并且基础设施720选择特定机器模型,或者允许用户102从模型存储库710中选择特定机器模型。一旦特定机器模型的执行完成并且生成推荐,基础设施就将推荐直接传输(814)给机器1102,并且将推荐直接传输(812)给移动设备754。在从基础设施720接收到推荐时,在机器102中实现的计算机使用该推荐来生成指令并且使机器102执行该指令以耕种田地。到基础设施720的请求的传送(808)、到机器1102的推荐的传送(814)和到移动设备754的推荐的传送(812)可以实时地执行。
用户还可以经由终端750、平板电脑752、服务器计算机756(在图7A中示出,但是在图8A中未示出)和被配置为传输和接收数据的其他计算设备来访问基础设施720。
在一个实施例中,基础设施720包括一个或多个存储设备722、一个或多个云系统计算机723、一个或多个基于云的网络724、一个或多个计算机服务器725、一个或多个计算机工作站726和一个或多个通信网络727。每个设备722-723、725和726可以包括一个或多个计算机处理器、一个或多个存储器单元、一个或多个高速缓存和一个或多个通信总线。设备722-723、725和726中包括的处理器可以变化并且可以具有不同处理能力。类似地,设备722-723、725和726中包括的存储器单元可以变化并且可以具有不同存储和处理能力。
每个设备722-723、725和726可以存储计算机编程指令,这些指令当在计算机处理器上执行时使处理器执行存储在模型存储库710中的机器学习模型。此外,每个设备722-723、725和726可以存储计算机编程指令,该指令当在计算机处理器上执行时使处理器将关于模型的信息存储在模型存储库710中并且将关于模型的执行的信息存储在模型历史日志数据库730中。
设备722-723、725和726可以是独立计算设备。替代地,设备722-723、725和726中的一些或所有设备可以被实现为分布式系统。分布式系统可以是云网络724的一部分,并且分布式系统的组件可以经由一个或多个通信网络727彼此通信。
在一个实施例中,模型执行基础设施720包括被配置为与图8A中未示出的其他系统建立通信的组件。例如,服务器725可以被配置为与GPS系统(图8A中未示出)建立通信连接以获取可以用作机器学习模型的输入的地理位置信息。一旦服务器725与例如基于卫星的GPS系统(图8A中未示出)建立通信连接,服务器725就可以跟踪用户102正在使用的移动设备754的位置和移动。当拖拉机1102遍历农田并且将种子播种到田地上时,服务器725也可以跟踪拖拉机1102的位置和移动。
模型执行基础设施720的组件可以包括通用组件、定制组件、或者通用组件和定制组件两者。可以使用和重复使用这些组件以提供用于执行和重新执行各种模型的执行平台。
如果可能,某些组件可以互换。例如,如果在双核处理器上执行模型无法满足预期执行时间要求,则可以选择另一处理器(诸如四核处理器)并且将其用于执行模型,以希望使用四核处理器会缩短模型的执行时间。
图8B描绘了用于选择和执行示例机器学习模型的示例性流程图。提供该示例只是为了说明为基于机器的模型选择执行基础设施,在所选择的基础设施上执行模型以及利用通过执行模型而生成的输出的多种方式中的一种。通过执行模型而生成的输出可以用于例如控制农业机械,诸如图8A所示的拖拉机1102。所描绘的过程可以由任何基于计算机的处理器来执行,包括图7A所示的管理处理器705。
在步骤880中,基于计算机的处理器接收浏览存储在模型存储库710中的机器学习模型的请求。该请求可以从例如由用户102操作的移动设备754被接收。用户102可以是开发和测试模型的科学家,或者是想知道要在田间种植哪种种子才能从田间获取高产的农作物种植者。
在步骤882中,处理器生成和显示关于已经存储在模型存储库710中的机器学习模型的信息。这可以包括访问模型存储库710,从存储库中检索关于模型的信息,生成检索到的信息的图形表示,并且将图形表示发送给移动设备754。
在某些情况下,所接收的请求可以提供一些信息,处理器可以使用该信息来限制与应当从模型存储库710中检索的模型有关的信息。例如,该请求可以指定用户只想查看操作研究模型或只想查看深度学习模型。根据另一示例,该请求可以指定用户仅希望查看在特定日期之后构建或更新的模型,或者已经专门为处理与玉米相关的查询而构建的模型。
在步骤884中,处理器从用户可用的菜单或模型列表中接收对模型的选择。该选择可以通过提供模型的名称、标识符或任何其他类型的标识来指示模型。
在步骤886中,处理器确定用于执行所选择的模型的基础设施要求。该要求可以指定例如应当用于执行所选择的模型的CPU的类型、或者需要被分配以执行所选择的模型的存储空间。模型的要求可以从模型存储库710、或更具体地从在模型存储库710中存储的与所选择的模型相关联的元数据中检索。
根据另一示例,该要求可以从请求本身中提取。例如,该请求可以指定所选择的模型需要在四核处理器上执行,并且通过执行所选择的模型而生成的输出需要被提供给拖拉机1102。
此外,在该步骤中,处理器可以生成基础设施要求的图形表示,并且可以将该图形表示传输给移动设备754。
在步骤888中,处理器确定或检索所选择的模型的定义和元数据。这可以包括访问所选择的模型的存储在模型存储库710中的定义和元数据,并且检索所存储的定义和元数据。定义可以用于确定例如所选择的模型的版本、输入定义、输出定义、模型类型、模型分类等。
同样,在该步骤中,处理器为所选择的模型生成定义和元数据的图形表示,并且将该图形表示传输给移动设备754。例如,该图形表示可以包括可以被提供给模型的输入的类型的信息、以及模型可以生成的输出的类型的信息。
在步骤890中,处理器接收将用于执行所选择的模型的输入。该输入可以包括例如模型可以接受的特定值。该特定值可以包括农田的土壤类型信息、田地的地理位置信息、要在田地上种植的农作物的类型等。
如果所接收的输入满足在模型存储库710中针对所选择的模型而保存的定义数据结构中包括的输入定义,则处理器继续进行以执行步骤892。否则,处理器可以重复步骤888并且重新显示所选择的模型接受的输入的输入定义。
在步骤892中,如果处理器接收到使用所提供的输入来执行所选择的模型的指示或请求,则处理器继续进行以执行步骤894。否则,处理器继续进行以执行步骤896。
在步骤894中,处理器发起使用输入并且在模型基础设施上的对所选择的模型的执行。一旦模型的执行完成,模型就生成输出信息(本文中称为输出)。输出可以包括例如解决在步骤880中接收的请求的推荐。例如,如果请求是针对播种推荐的请求,则输出可以提供推荐用于农田的种子的类型作为推荐、以及播种以获取最高产量的时机。推荐还可以包括用于播种的指令,诸如用于播种的间隔指令。
在步骤895中,处理器将输出传输给例如移动设备754。该输出还可以传输给计算机或控制诸如拖拉机1102等机械的控制器。例如,如果输出包括用于使用农业播种机播种种子的播种指令,则可以将输出直接传输给安装在播种机上的控制器,以在播种机开始播种过程之前调整播种处理管道之间的间距。
如果在步骤896中,处理器确定接收到修改模型的输入的请求,则处理器继续进行以执行步骤890。否则,处理器继续进行以执行步骤897。
如果在步骤897中,处理器确定接收到选择不同模型的请求,则处理器继续进行以执行步骤898;否则,处理器在步骤899中停止执行。
在步骤898中,处理器接收对另一模型的选择,然后继续进行以执行步骤886,在该步骤886中,处理器为新选择的模型确定基础设施要求。
每当处理器接收到选择和执行基于机器的模型的请求时,重复该过程。该请求可以从例如开发和测试新的基于机器的模型或者开发和增强平台700的科学家发送。该请求还可以从例如寻求用于改善其他们的田地的农业实践的推荐的农作物种植者被接收。
3.3.示例模型历史日志
在一个实施例中,模型历史日志730用于存储用于基于机器的模型的执行的特定输入和输出。例如,如果深度学习模块被添加到模型存储库710,则在模型历史日志730中创建针对模型的记录。模型被配置为接受的输入和模型可以生成的输出被存储在模型历史日志730中的记录中。当随后执行模块时,实际输入值和实际输出值被添加到存储在模型的模型历史日志730中的记录中。此外,当在另一输入值上执行模型时,则新的实际输入值和实际输出值被添加到存储在模型的模型历史日志730中的记录中。
结果,存储在模型的模型历史日志730中的记录是通过在平台700中执行模型而使用和生成的所有输入和所有输出的总记录。为所有模型生成和存储的记录形成模型历史记录日志730。
在一个实施例中,模型的存储在模型历史日志730中的记录是聚合的、可检索的、可搜索的和可修改的。
在一个实施例中,所有模型的存储在模型历史日志730中的记录是被聚合的、可检索的、可搜索的和可修改的。总记录可以例如可搜索的特定输出、特定推荐、特定日期等。此外,可以对总记录进行复杂分析,以确定特定模型的最新版本是否比该模型的旧版本性能更好。
4.可缩放性注意事项
在一个实施例中,一种方法提供了广泛的可缩放性选项。例如,该方法允许确定用于模型的执行基础设施平台、以及也可以在其上执行模型的一个或多个替代执行基础设施平台。它可以指定,特定模型的最小执行基础设施平台可以包括例如双CPU、32GB存储卡、16MB TrasnFlash卡和500GB磁盘存储空间。但是,它也可以指定,模型的替代执行基础设施平台可以包括配备有更强大CPU和更多存储空间的分布式云系统。
可缩放性还可以指代使用相同执行基础设施平台来同时执行一个以上的基于机器的模型。例如,包括分布式超级计算机等的分布式云系统可以用于同时和并行执行两个或更多个基于机器的模型,因为这样的系统通常提供大量计算和存储资源。
在一个实施例中,本文中描述的平台700允许科学家开发和交付各种基于模型的解决方案,这些解决方案是可缩放的、可广泛访问的、易于搜索和修改的。
在一个实施例中,模型存储库710被增强和扩展。例如,附加特征被添加到模型存储库710以增强存储库的可搜索性和适用性。此外,从设计存储库到部署存储库的过程被优化使得设计与部署之间的持续时间相对较短。还可以通过添加新模型和已经添加的模型的新版本来扩展模型存储库710。
增强还可以包括对模型执行基础设施730的改进。该改进可以包括新硬件组件、新软件组件的添加以及最新技术的添加。
增强可以包括用于增强用户体验的增强。这包括添加精美界面、智能图形用户界面、以及用于帮助用户浏览、使用和修改平台700的其他工具。这还可以包括添加新模型的自动生成和现有模型的新版本的自动生成。
增强还可以包括对模型存储库710、模型执行基础设施720和模型历史日志730的设计的修改。存储库可以被设计为提供对模型的容易访问以及对模型的有效组织和分类。
增强还可以包括用于将平台700设计为交钥匙系统的改进,该交钥匙系统足够鲁棒以满足广泛的期望和要求。交钥匙系统可以包括先进的组件,这些组件可以利用新技术的进步。
5.示例实现
图9描绘了用于执行机器学习算法的用户界面的示例图。在一个实施例中,平台700从配置有图形用户界面910的用户设备901可访问。
图形用户界面910被生成以提供与平台700的交互性。图形用户界面910可以用于促进向平台700输入查询并且从平台700获取对该查询的响应。图形用户界面910可以是与平台700分离的组件,如图9所示。替代地,图形用户界面910可以是平台700的一部分。
在一个实施例中,图形用户界面910被配置为生成和显示可以用于向平台700提供查询的图形对象。查询可以包括对以下各项的请求:浏览(920)模型存储库710,浏览模型历史日志720,请求关于存储在模型存储库710中的模型的信息,修改(940)发送给平台700的请求,请求(960)特定模型在模型执行基础设施720中的执行,等等。
图形用户界面910也可以被配置为接收和显示对查询的响应。响应包括例如对浏览请求的回复930、对修改请求的回复950和/或对执行请求的回复970。
在一个实施例中,图形用户界面910被配置为将所接收的查询传送给平台700,并且在接收到对查询的响应时,将所接收的响应传送给请求者。
图形用户界面910可以被配置为从平台700接收各种推荐、指令和通知,并且在显示设备上显示推荐/指令/通知。例如,图形用户界面910可以被配置为接收通过在模型执行基础设施720上执行模型而生成的并且指示用于农田的推荐策略的推荐。推荐可以被显示在诸如移动设备754等显示设备上。在一个实施例中,推荐还可以被传输给控制诸如播种机、联合收割机、收割机或犁等农业设备的计算机或控制器。
6.某些实施例的益处
在一个实施例中,一种方法和工具使用基于计算机的平台来存储、编目和执行基于机器的模型。该平台提供了一个计算机基础,该计算机基础用于对模型的通用定义和元数据进行编目,将模型存储在存储库中,并且从存储库中浏览和选择模型。
在一个实施例中,一种用于执行机器学习算法的方法提供了用于定制农业模型,编目、维护和管理大量定制模型的功能,并且促进模型的执行以向农作物种植者提供推荐的功能。
在一个实施例中,用于存储、执行和编目基于机器的模型的平台包括模型存储库、模型执行基础设施和模型历史日志。模型存储库是被配置为存储模型的基于计算机的数字数据存储库。模型执行基础设施包括共同提供用于执行基于机器的模型的平台的硬件和/或软件组件。模型历史日志是包含关于基于机器的模型的执行的信息的基于计算机的数字日志。
在一个实施例中,针对农业应用实现了一种用于执行机器学习算法的方法。例如,该方法可以允许农作物种植者浏览存储在模型存储库中的模型,从存储库中选择模型,提供针对所选择的模型的输入,并且使用所提供的输入,发起所选择的模型在模型基础设施上的执行以为种植者提供推荐。
7.扩展和替代
在前述说明书中,已经参考可能根据实现方式而发生变化的许多具体细节对本公开的实施例进行了描述。因而,说明书和附图要被认为是说明性的而非限制性的。本公开的范围以及申请人意图作为本公开保护范围的唯一且排他性的指示是本申请发出的权利要求书的字面和等同范围,其具有这些权利要求的具体形式,包括任何后续补正在内。
Claims (20)
1.一种计算机实现的数据处理方法,提供对表示与农业有关的物理性质的数字数据执行机器学习过程的改进,所述方法包括:
从计算设备接收浏览存储在数字模型存储库中的机器学习模型的请求;
从所述数字模型存储库检索并且向所述计算设备传输关于存储在所述数字模型存储库中的所述机器学习模型的信息;
从所述计算设备接收从所述机器学习模型中对特定模型的选择并且接收针对所述特定模型的特定输入;
使用模型执行基础设施平台中可用的资源对所述特定输入执行所述特定模型以生成特定输出;
向被配置在农业机械上的计算机传输所述特定输出以在所述农业机械在农田中执行农业任务时控制所述农业机械。
2.根据权利要求1所述的方法,还包括:
向所述计算设备传输所述特定输出;
确定是否有对针对所述特定模型的所述特定输入的任何修改被请求;
响应于接收到对所述特定输入的修改被请求的指示,接收针对所述特定模型的经修改的输入,并且对经修改的输入执行所述特定模型以生成经修改的特定输出,并且向所述计算设备传输所述经修改的特定输出。
3.根据权利要求1所述的方法,其中关于存储在所述数字模型存储库中的所述机器学习模型的所述信息包括模型工件以及与所述模型工件相关联的定义和元数据;
其中所述模型工件包括以下一项或多项:操作研究模型工件、机器学习模型工件、深度机器学习模型工件或物理模型工件;
其中与特定模型工件相关联的定义和元数据包括以下一项或多项:模型名称、输入定义、输出定义、基础设施要求、运行时度量、预期执行持续时间、预期准确度、状态信息、模型分类、模型版本、模型类型、或模型所有者名称。
4.根据权利要求1所述的方法,还包括:
接收存储机器学习模型的请求;
解析所述请求并且标识模型工件和关于所述机器学习模型的信息;
确定针对所述机器学习模型的输入和输出;
确定用于执行所述机器学习模型的基础设施要求;
将针对所述机器学习模型的所述基础设施要求存储在所述数字模型存储库中;
确定针对所述机器学习模型的定义和元数据;
将所述定义和元数据与所述机器学习模型相关联;
将所述机器学习模型与所述定义和元数据相关联地存储在所述数字模型存储库中。
5.根据权利要求4所述的方法,还包括:
创建针对所述机器学习模型的记录并且将所述记录存储在模型历史日志中;其中针对所述机器学习模型的所述记录包括以下一项或多项:针对执行所述机器学习模型的输入、针对执行所述机器学习模型的输出、或特定于执行所述机器学习模型的信息。
6.根据权利要求5所述的方法,还包括:
接收针对所述机器学习模型的所述记录的更新信息;其中所述更新信息包括针对执行所述机器学习模型的新输入和新输出;
响应于接收到所述更新信息,使用所述新输入和所述新输出来更新针对所述机器学习模型的所述记录。
7.根据权利要求1所述的方法,还包括:
接收机器学习模型的新版本;其中所述机器学习模型的所述新版本包括新模型工件以及新的定义和元数据;
响应于接收到机器学习模型的所述新版本,将所述新模型工件以及所述新的定义和元数据存储在所述数字模型存储库中;在模型历史日志中更新针对所述机器学习模型的记录。
8.根据权利要求1所述的方法,其中所述计算设备是被配置为生成、传输和接收数字数据的任何类型的设备;其中所述计算设备包括以下任一项:个人计算机、膝上型计算机、智能电话、平板电脑或计算机服务器。
9.根据权利要求1所述的方法,其中所述模型执行基础设施平台包括以下一项或多项:计算机处理器、存储器单元、存储设备、通信总线、通信网络、云存储设备、云分布式系统、计算机服务器或大型计算机。
10.根据权利要求2所述的方法,还包括:
使所述计算设备:生成和显示图形用户界面,生成所述经修改的特定输出的图形表示,以及使用所述图形用户界面来显示所述经修改的特定输出的所述图形表示。
11.一种或多种非暂态计算机可读存储介质,存储一个或多个计算机指令,所述一个或多个计算机指令在由一个或多个计算机处理器执行时使所述一个或多个计算机处理器执行:
从计算设备接收浏览存储在数字模型存储库中的机器学习模型的请求;
从所述数字模型存储库检索并且向所述计算设备传输关于存储在所述数字模型存储库中的所述机器学习模型的信息;
从所述计算设备接收从所述机器学习模型中对特定模型的选择并且接收针对所述特定模型的特定输入;
使用模型执行基础设施平台中可用的资源对所述特定输入执行所述特定模型以生成特定输出;
向被配置在农业机械上的计算机传输所述特定输出以在所述农业机械在农田中执行农业任务时控制所述农业机械。
12.根据权利要求11所述的一种或多种非暂态计算机可读存储介质,存储用于以下操作的附加指令:
向所述计算设备传输所述特定输出;
确定是否有对针对所述特定模型的所述特定输入的任何修改被请求;
响应于接收到对所述特定输入的修改被请求的指示,接收针对所述特定模型的经修改的输入,并且对经修改的输入执行所述特定模型以生成经修改的特定输出,并且向所述计算设备传输所述经修改的特定输出。
13.根据权利要求11所述的一种或多种非暂态计算机可读存储介质,其中关于存储在所述数字模型存储库中的所述机器学习模型的所述信息包括模型工件以及与所述模型工件相关联的定义和元数据;
其中所述模型工件包括以下一项或多项:操作研究模型工件、机器学习模型工件、深度机器学习模型工件或物理模型工件;
其中与特定模型工件相关联的定义和元数据包括以下一项或多项:模型名称、输入定义、输出定义、基础设施要求、运行时度量、预期执行持续时间、预期准确度、状态信息、模型分类、模型版本、模型类型、或模型所有者名称。
14.根据权利要求11所述的一种或多种非暂态计算机可读存储介质,存储用于以下操作的附加指令:
接收存储机器学习模型的请求;
解析所述请求并且标识模型工件和关于所述机器学习模型的信息;
确定针对所述机器学习模型的输入和输出;
确定用于执行所述机器学习模型的基础设施要求;
将针对所述机器学习模型的所述基础设施要求存储在所述数字模型存储库中;
确定针对所述机器学习模型的定义和元数据;
将所述定义和元数据与所述机器学习模型相关联;
将所述机器学习模型与所述定义和元数据相关联地存储在所述数字模型存储库中。
15.根据权利要求14所述的一种或多种非暂态计算机可读存储介质,存储用于以下操作的附加指令:
创建针对所述机器学习模型的记录并且将所述记录存储在模型历史日志中;其中针对所述机器学习模型的所述记录包括以下一项或多项:针对执行所述机器学习模型的输入、针对执行所述机器学习模型的输出、或特定于执行所述机器学习模型的信息。
16.根据权利要求15所述的一种或多种非暂态计算机可读存储介质,存储用于以下操作的附加指令:
接收针对所述机器学习模型的所述记录的更新信息;其中所述更新信息包括针对执行所述机器学习模型的新输入和新输出;
响应于接收到所述更新信息,使用所述新输入和所述新输出来更新针对所述机器学习模型的所述记录。
17.根据权利要求11所述的一种或多种非暂态计算机可读存储介质,存储用于以下操作的附加指令:
接收机器学习模型的新版本;其中所述机器学习模型的所述新版本包括新模型工件以及新的定义和元数据;
响应于接收到机器学习模型的所述新版本,将所述新模型工件以及所述新的定义和元数据存储在所述数字模型存储库中;在模型历史日志中更新针对所述机器学习模型的记录。
18.根据权利要求11所述的一种或多种非暂态计算机可读存储介质,其中所述计算设备是被配置为生成、传输和接收数字数据的任何类型的设备;其中所述计算设备包括以下任一项:个人计算机、膝上型计算机、智能电话、平板电脑或计算机服务器。
19.根据权利要求11所述的一种或多种非暂态计算机可读存储介质,其中所述模型执行基础设施平台包括以下一项或多项:计算机处理器、存储器单元、存储设备、通信总线、通信网络、云存储设备、云分布式系统、计算机服务器或云计算系统。
20.根据权利要求12所述的一种或多种非暂态计算机可读存储介质,存储用于以下操作的附加指令:
使所述计算设备:生成和显示图形用户界面,生成所述经修改的特定输出的图形表示,以及使用所述图形用户界面来显示所述经修改的特定输出的所述图形表示。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201862734420P | 2018-09-21 | 2018-09-21 | |
US62/734,420 | 2018-09-21 | ||
PCT/US2019/051732 WO2020061193A1 (en) | 2018-09-21 | 2019-09-18 | Method and system for executing machine learning algorithms |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113168577A true CN113168577A (zh) | 2021-07-23 |
Family
ID=69883856
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201980076419.6A Pending CN113168577A (zh) | 2018-09-21 | 2019-09-18 | 用于执行机器学习算法的方法和系统 |
Country Status (7)
Country | Link |
---|---|
US (1) | US11475359B2 (zh) |
EP (1) | EP3853780A4 (zh) |
CN (1) | CN113168577A (zh) |
AR (1) | AR116476A1 (zh) |
BR (1) | BR112021004651A2 (zh) |
CA (1) | CA3112950A1 (zh) |
WO (1) | WO2020061193A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113704257A (zh) * | 2021-08-06 | 2021-11-26 | 网易(杭州)网络有限公司 | 数据表的更新方法和装置 |
CN113886382A (zh) * | 2021-08-23 | 2022-01-04 | 阿里云计算有限公司 | 数据库任务处理方法、设备及存储介质 |
Families Citing this family (42)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
MX2021004578A (es) * | 2018-10-24 | 2021-09-08 | Climate Llc | Genética de apalancamiento e ingeniería de características para potenciar la previsibilidad de la colocación para selección del producto de semilla y recomendación por campo. |
US11467605B2 (en) | 2019-04-10 | 2022-10-11 | Deere & Company | Zonal machine control |
US11653588B2 (en) | 2018-10-26 | 2023-05-23 | Deere & Company | Yield map generation and control system |
US11178818B2 (en) | 2018-10-26 | 2021-11-23 | Deere & Company | Harvesting machine control system with fill level processing based on yield data |
US11641800B2 (en) | 2020-02-06 | 2023-05-09 | Deere & Company | Agricultural harvesting machine with pre-emergence weed detection and mitigation system |
US11589509B2 (en) | 2018-10-26 | 2023-02-28 | Deere & Company | Predictive machine characteristic map generation and control system |
US11957072B2 (en) | 2020-02-06 | 2024-04-16 | Deere & Company | Pre-emergence weed detection and mitigation system |
US11672203B2 (en) | 2018-10-26 | 2023-06-13 | Deere & Company | Predictive map generation and control |
US11079725B2 (en) | 2019-04-10 | 2021-08-03 | Deere & Company | Machine control using real-time model |
US11240961B2 (en) | 2018-10-26 | 2022-02-08 | Deere & Company | Controlling a harvesting machine based on a geo-spatial representation indicating where the harvesting machine is likely to reach capacity |
US11234366B2 (en) | 2019-04-10 | 2022-02-01 | Deere & Company | Image selection for machine control |
US11615347B2 (en) * | 2019-12-31 | 2023-03-28 | Paypal, Inc. | Optimizing data processing and feature selection for model training |
US11477940B2 (en) | 2020-03-26 | 2022-10-25 | Deere & Company | Mobile work machine control based on zone parameter modification |
DE102020116714A1 (de) | 2020-06-25 | 2021-12-30 | Audi Aktiengesellschaft | Steuergerät für ein Fahrzeug, System, Verfahren und Kraftfahrzeug mit einem solchen Steuergerät |
US11295331B2 (en) * | 2020-07-01 | 2022-04-05 | X Development Llc | Analyzing crop fields based on agricultural management practices |
CN112101576B (zh) * | 2020-09-09 | 2021-07-30 | 上海松鼠课堂人工智能科技有限公司 | 分布式设备使用机器学习模型聚合系统 |
US11864483B2 (en) | 2020-10-09 | 2024-01-09 | Deere & Company | Predictive map generation and control system |
US11650587B2 (en) | 2020-10-09 | 2023-05-16 | Deere & Company | Predictive power map generation and control system |
US11849671B2 (en) | 2020-10-09 | 2023-12-26 | Deere & Company | Crop state map generation and control system |
US11895948B2 (en) | 2020-10-09 | 2024-02-13 | Deere & Company | Predictive map generation and control based on soil properties |
US11946747B2 (en) | 2020-10-09 | 2024-04-02 | Deere & Company | Crop constituent map generation and control system |
US11889788B2 (en) | 2020-10-09 | 2024-02-06 | Deere & Company | Predictive biomass map generation and control |
US11983009B2 (en) | 2020-10-09 | 2024-05-14 | Deere & Company | Map generation and control system |
US11874669B2 (en) | 2020-10-09 | 2024-01-16 | Deere & Company | Map generation and control system |
US11675354B2 (en) | 2020-10-09 | 2023-06-13 | Deere & Company | Machine control using a predictive map |
US11845449B2 (en) | 2020-10-09 | 2023-12-19 | Deere & Company | Map generation and control system |
US11871697B2 (en) | 2020-10-09 | 2024-01-16 | Deere & Company | Crop moisture map generation and control system |
US11474523B2 (en) | 2020-10-09 | 2022-10-18 | Deere & Company | Machine control using a predictive speed map |
US11727680B2 (en) | 2020-10-09 | 2023-08-15 | Deere & Company | Predictive map generation based on seeding characteristics and control |
US11849672B2 (en) | 2020-10-09 | 2023-12-26 | Deere & Company | Machine control using a predictive map |
US11635765B2 (en) | 2020-10-09 | 2023-04-25 | Deere & Company | Crop state map generation and control system |
US11711995B2 (en) | 2020-10-09 | 2023-08-01 | Deere & Company | Machine control using a predictive map |
US11592822B2 (en) | 2020-10-09 | 2023-02-28 | Deere & Company | Machine control using a predictive map |
US11825768B2 (en) | 2020-10-09 | 2023-11-28 | Deere & Company | Machine control using a predictive map |
US11927459B2 (en) | 2020-10-09 | 2024-03-12 | Deere & Company | Machine control using a predictive map |
US11844311B2 (en) | 2020-10-09 | 2023-12-19 | Deere & Company | Machine control using a predictive map |
WO2022076855A1 (en) * | 2020-10-09 | 2022-04-14 | AquaSys LLC | Anonymous training of a learning model |
US11889787B2 (en) | 2020-10-09 | 2024-02-06 | Deere & Company | Predictive speed map generation and control system |
US11727007B1 (en) * | 2020-10-19 | 2023-08-15 | Splunk Inc. | Systems and methods for a unified analytics platform |
DE102021204544A1 (de) * | 2021-05-05 | 2022-11-10 | Robert Bosch Gesellschaft mit beschränkter Haftung | Verfahren zum Betreiben eines hydraulischen Zylinders einer Arbeitsmaschine |
US20230206430A1 (en) * | 2021-12-27 | 2023-06-29 | Deere & Company | Crop yield component map |
CN117233540B (zh) * | 2023-11-15 | 2024-02-20 | 广东电网有限责任公司江门供电局 | 一种基于深度学习的计量流水线故障检测方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090138415A1 (en) * | 2007-11-02 | 2009-05-28 | James Justin Lancaster | Automated research systems and methods for researching systems |
CN107077650A (zh) * | 2014-09-12 | 2017-08-18 | 克莱米特公司 | 用于管理农业活动的方法和系统 |
US20170300602A1 (en) * | 2016-04-13 | 2017-10-19 | The Climate Corporation | Estimating rainfall adjustment values |
US20180132423A1 (en) * | 2016-11-16 | 2018-05-17 | The Climate Corporation | Identifying management zones in agricultural fields and generating planting plans for the zones |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9565275B2 (en) * | 2012-02-09 | 2017-02-07 | Rockwell Automation Technologies, Inc. | Transformation of industrial data into useful cloud information |
US9915131B2 (en) | 2007-03-02 | 2018-03-13 | Schlumberger Technology Corporation | Methods using fluid stream for selective stimulation of reservoir layers |
DE102013201996A1 (de) * | 2013-02-07 | 2014-08-07 | Deere & Company | Verfahren zur Einstellung von Arbeitsparametern einer Erntemaschine |
CA3045439A1 (en) * | 2016-05-09 | 2017-11-16 | Charles Howard CELLA | Methods and systems for the industrial internet of things |
EP3582603A4 (en) * | 2017-03-21 | 2021-01-06 | Blue River Technology Inc. | COMBINE WITH MACHINE FEEDBACK |
JP2020530159A (ja) * | 2017-08-02 | 2020-10-15 | ストロング フォース アイオーティ ポートフォリオ 2016,エルエルシー | 大量のデータセットを使用する産業用のモノのインターネットのデータ収集環境における検出のための方法及びシステム |
US20200133254A1 (en) * | 2018-05-07 | 2020-04-30 | Strong Force Iot Portfolio 2016, Llc | Methods and systems for data collection, learning, and streaming of machine signals for part identification and operating characteristics determination using the industrial internet of things |
-
2019
- 2019-09-18 CA CA3112950A patent/CA3112950A1/en active Pending
- 2019-09-18 CN CN201980076419.6A patent/CN113168577A/zh active Pending
- 2019-09-18 US US16/574,991 patent/US11475359B2/en active Active
- 2019-09-18 EP EP19862162.5A patent/EP3853780A4/en active Pending
- 2019-09-18 WO PCT/US2019/051732 patent/WO2020061193A1/en unknown
- 2019-09-18 BR BR112021004651-8A patent/BR112021004651A2/pt unknown
- 2019-09-20 AR ARP190102687A patent/AR116476A1/es active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090138415A1 (en) * | 2007-11-02 | 2009-05-28 | James Justin Lancaster | Automated research systems and methods for researching systems |
CN107077650A (zh) * | 2014-09-12 | 2017-08-18 | 克莱米特公司 | 用于管理农业活动的方法和系统 |
US20170300602A1 (en) * | 2016-04-13 | 2017-10-19 | The Climate Corporation | Estimating rainfall adjustment values |
US20180132423A1 (en) * | 2016-11-16 | 2018-05-17 | The Climate Corporation | Identifying management zones in agricultural fields and generating planting plans for the zones |
Non-Patent Citations (1)
Title |
---|
吕家恪;刘洪斌;汪璇;魏朝富;: "基于WebGIS的县域农业资源信息共享系统研究", 中国农学通报, no. 04, pages 409 - 413 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113704257A (zh) * | 2021-08-06 | 2021-11-26 | 网易(杭州)网络有限公司 | 数据表的更新方法和装置 |
CN113704257B (zh) * | 2021-08-06 | 2023-09-26 | 网易(杭州)网络有限公司 | 数据表的更新方法和装置 |
CN113886382A (zh) * | 2021-08-23 | 2022-01-04 | 阿里云计算有限公司 | 数据库任务处理方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CA3112950A1 (en) | 2020-03-26 |
EP3853780A4 (en) | 2022-07-06 |
US20200097851A1 (en) | 2020-03-26 |
US11475359B2 (en) | 2022-10-18 |
EP3853780A1 (en) | 2021-07-28 |
AR116476A1 (es) | 2021-05-12 |
BR112021004651A2 (pt) | 2021-06-01 |
WO2020061193A1 (en) | 2020-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11475359B2 (en) | Method and system for executing machine learning algorithms on a computer configured on an agricultural machine | |
US11882786B2 (en) | Method for recommending seeding rate for corn seed using seed type and sowing row width | |
US11557116B2 (en) | Generating pixel maps from non-image data and difference metrics for pixel maps | |
CN112740258B (zh) | 通过田地健康影像生成农艺产量地图 | |
US20200334518A1 (en) | Crop yield estimation using agronomic neural network | |
CN111565557B (zh) | 根据田地的杂交种子选择和种子投资组合优化 | |
CN111565558A (zh) | 根据田地的杂交种子选择和种子投资组合优化 | |
CN113228047A (zh) | 利用多阶段、多尺度深度学习的植物病害检测 | |
CN112889063A (zh) | 基于天气数据的产量自动预测和播种率推荐 | |
US11796970B2 (en) | Utilizing spatial statistical models for implementing agronomic trials | |
CN113226009A (zh) | 针对大豆的预测性的种子脚本处理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: Missouri, USA Applicant after: Clemet Co.,Ltd. Address before: California, USA Applicant before: THE CLIMATE Corp. |
|
CB02 | Change of applicant information |