使用人工智能技术密切关注您的牛 | 亚马逊网络服务

使用人工智能技术密切关注您的牛 | 亚马逊网络服务

At 亚马逊网络服务(AWS)我们不仅热衷于为客户提供各种全面的技术解决方案,而且热衷于深入了解客户的业务流程。 我们采用第三方视角和客观判断,帮助客户梳理价值主张,收集痛点,提出合适的解决方案,并创建最具成本效益和可用的原型,帮助他们系统地实现业务目标。

这个方法叫做 向后工作 在AWS。 就是抛开技术和解决方案,从客户的预期结果出发,确认其价值,然后逆序推导需要做什么,最后实施解决方案。 在实施阶段,我们也遵循以下理念: 最小可行产品 力争在几周内快速形成一个能够产生价值的原型,然后对其进行迭代。

今天我们来回顾一下AWS与新希望乳业合作打造云上智能农场的案例。 通过这篇博文,您可以深入了解AWS可以为构建智能农场提供什么以及如何与AWS专家一起在云上构建智能农场应用程序。

项目背景

牛奶是一种营养丰富的饮料。 出于对国民健康的考虑,我国一直积极推动乳业发展。 欧睿国际的数据显示,638.5年中国乳制品销售额达到2020亿元人民币,预计810年将达到2025亿元人民币。此外,过去14年的年复合增长率也达到10%,呈现出快速发展的态势。

另一方面,截至2022年,中国乳制品行业大部分收入仍来自液态奶。 20%的原料奶用于液态奶和酸奶,另外XNUMX%是奶粉——液态奶的衍生物。 只有极少量用于深加工产品,例如奶酪和奶油。

液态奶是一种轻加工产品,其产量、质量、成本与原料奶密切相关。 这意味着,乳制品行业要想释放产能,专注于生产深加工产品、创造新产品、开展更多创新生物技术研究,首先必须提高和稳定原奶产量和质量。

作为乳制品行业的领军企业,新希望乳业一直在思考如何提高牧场运营效率,提高原奶产量和质量。 新希望乳业希望利用AWS的第三方视角和技术专长,促进乳制品行业的创新。 在新希望乳业副总裁兼CIO胡六通的支持和推动下,AWS客户团队开始为奶牛场梳理运营和潜在创新点。

奶牛场面临的挑战

AWS是云技术领域的专家,但要在乳制品行业实施创新,需要乳制品主题专家的专业建议。 为此,我们多次深度采访了新希望乳业生产技术中心副主任宋良荣、牧场管理团队、营养师等,了解牧场面临的一些问题和挑战。

首先是盘点储备奶牛

牧场上的奶牛分为两种: 奶牛储备奶牛。 奶牛是成熟并持续产奶的奶牛,而储备奶牛是尚未达到产奶年龄的奶牛。 大中型养殖场通常为后备奶牛提供较大的开放活动区域,创造更舒适的生长环境。

然而,奶牛和后备奶牛都是农场的资产,需要每月进行盘点。 奶牛每天都要挤奶,由于挤奶过程中奶牛相对静止,因此库存跟踪很容易。 但储备牛处于空旷的空间,自由活动,清查不方便。 每次盘点时,多名工作人员都会对不同地区的储备奶牛进行反复清点,最后进行数量核对。 这个过程需要多名工人花费一到两天的时间,并且通常会出现计数对齐问题或每头牛是否已被计数的不确定性。

如果我们有办法快速准确地盘点储备奶牛,就可以节省大量时间。

二是识别跛脚牛

目前,大多数乳制品公司使用名为 荷斯坦 生产牛奶。 荷斯坦奶牛是我们大多数人都熟悉的黑白奶牛。 尽管大多数乳制品公司使用同一品种,但不同公司和牧场之间的牛奶产量和质量仍然存在差异。 这是因为奶牛的健康状况直接影响产奶量。

然而,奶牛无法像人类一样自行表达不适,兽医定期对数千头奶牛进行体检也是不切实际的。 因此,我们必须利用外部指标来快速判断奶牛的健康状况。

使用 AWS 的智能牧场

奶牛健康的外部指标包括 身体状况评分跛行程度。 体况评分很大程度上与奶牛的体脂百分比相关,是一个长期指标,而跛行是一个短期指标,由腿部问题或足部感染等影响奶牛情绪、健康和产奶量的问题引起。 此外,成年荷斯坦奶牛的体重可能超过 500 公斤,如果它们不稳定,可能会对它们的脚造成严重伤害。 因此,当出现跛行时,兽医应尽快干预。

根据2014年的一项研究,中国严重跛行的奶牛比例高达31%。 尽管自研究以来情况可能有所改善,但农场的兽医数量极其有限,因此很难定期监测奶牛。 当发现跛行时,情况往往很严重,治疗起来既费时又困难,而且产奶量已经受到影响。

如果我们有办法及时发现奶牛跛行,并促使兽医在轻度跛行阶段进行干预,奶牛的整体健康状况和产奶量都会增加,农场的绩效也会提高。

最后,饲料成本优化

在畜牧业中,饲料是最大的可变成本。 为了保证饲料的质量和库存,养殖场往往需要从国内外供应商采购饲料原料,运送到饲料配方厂进行加工。 现代饲料原料的种类很多,包括豆粕、玉米、苜蓿、燕麦草等,这意味着有很多变数在起作用。 每种饲料原料都有其自身的价格周期和价格波动。 在大幅波动期间,饲料总成本可能波动超过15%,造成重大影响。

饲料成本波动,但乳制品价格长期相对稳定。 因此,在其他条件不变的情况下,总体利润可能纯粹由于饲料成本变化而大幅波动。

为了避免这种波动,有必要考虑在价格较低时储存更多原料。 但放养还需要考虑价格是否真正处于低谷,以及根据当前的消耗率应该购买多少饲料。

如果我们有办法精确预测饲料消耗量,并将其与整体价格趋势结合起来,建议最佳的饲料购买时间和数量,我们就可以降低农场的成本并提高效率。

显然,这些问题与客户的改进目标直接相关。 农场运营效率,方法分别是 释放劳动力, 增加产量降低成本。 通过对解决每个问题的难度和价值的讨论,我们选择 增加产量 以此为出发点,优先解决跛牛问题。

研究

在讨论技术之前,必须进行研究。 该研究由 AWS 客户团队、 AWS 生成式 AI 创新中心,管理机器学习算法模型,以及 AWS AI上海Lablet提供最新计算机视觉研究的算法咨询以及新希望乳业的专家养殖团队。 研究分为几个部分:

  • 了解传统的纸质跛行牛识别方法,并对什么是跛行牛有基本的了解。
  • 确认现有的解决方案,包括农场和工业中使用的解决方案。
  • 进行农场环境研究以了解实际情况和限制。

通过研究资料和观看现场视频,团队对跛脚牛有了基本的了解。 读者还可以通过下面的动画图片对跛牛的姿势有一个基本的了解。

跛脚牛

与相对健康的奶牛相比。

健康的牛

与健康牛相比,跛脚牛在姿势和步态上有明显差异。

对于现有的解决方案,大多数牧场依靠兽医和营养师的目视检查来识别跛脚牛。 业界有使用可穿戴计步器和加速度计进行识别的解决方案,也有使用分区地磅进行识别的解决方案,但两者都相对昂贵。 对于竞争激烈的乳制品行业,我们需要最大限度地降低识别成本以及对非通用硬件的成本和依赖。

在与牧场兽医和营养师讨论和分析信息后,AWS生成式AI创新中心专家决定使用计算机视觉(CV)进行识别,仅依靠普通硬件:民用监控摄像头,这不会给牧场增加任何额外负担。奶牛并降低成本和使用障碍。

确定了这个方向后,我们实地考察了一个拥有上千头奶牛的中型农场,考察了牧场环境,确定了摄像头的摆放位置和角度。

使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。

初步建议

现在,寻求解决方案。 我们基于简历的解决方案的核心包括以下步骤:

  • 奶牛识别: 识别单帧视频中的多头牛并标记每头牛的位置。
  • 奶牛追踪: 在录制视频时,我们需要随着帧的变化不断跟踪奶牛,并为每头奶牛分配一个唯一的编号。
  • 姿势标记: 通过将牛图像转换为标记点来降低牛运动的维度。
  • 异常识别: 识别标记点动态中的异常情况。
  • 跛脚牛算法: 对异常进行标准化以获得分数来确定奶牛跛行的程度。
  • 阈值确定: 根据专家输入获取阈值。

根据AWS Generative AI创新中心专家的判断,前几步是通用需求,可以使用开源模型来解决,而后面的步骤则需要我们使用数学方法和专家干预。

解决的难点

为了平衡成本和性能,我们选择了yolov5l模型,这是一种用于牛识别的中型预训练模型,输入宽度为640像素,为该场景提供了很好的价值。

虽然 YOLOv5 负责识别和标记单个图像中的奶牛,但实际上,视频由多个连续变化的图像(帧)组成。 YOLOv5无法识别不同框架中的奶牛属于同一个体。 为了在多个图像中跟踪和定位奶牛,需要另一个称为 SORT 的模型。

SORT 代表 简单的在线实时跟踪,其中 在线 意味着它只考虑当前和先前的帧进行跟踪,而不考虑任何其他帧,并且 即时的 意味着它可以立即识别物体的身份。

SORT发展后,许多工程师对其进行了实现和优化,导致了考虑对象外观的OC-SORT、包括人类外观的DeepSORT(及其升级版本StrongSORT)和使用ByteTrack的发展考虑低置信度识别的两阶段关联链接器。 经过测试,我们发现对于我们的场景,DeepSORT的外观跟踪算法更适合人类而不是牛,而ByteTrack的跟踪精度稍弱一些。 因此,我们最终选择 OC-SORT 作为我们的跟踪算法。

接下来,我们使用DeepLabCut(简称DLC)来标记奶牛的骨骼点。 DLC是无标记模型,这意味着虽然不同的点,例如头部和四肢,可能有不同的含义,但它们都只是 对于DLC,只需要我们标记点并训练模型。

这就引出了一个新的问题:我们应该在每头牛身上标记多少个点以及我们应该在哪里标记它们? 这个问题的答案会影响标记、训练的工作量以及后续的推理效率。 要解决这个问题,首先要了解如何识别跛脚牛。

根据我们的研究和专家客户的意见,视频中的跛脚牛表现出以下特征:

  • 弓背: 颈部和背部弯曲,与颈骨根部形成三角形(拱背)。
  • 经常点头: 每一步都可能导致奶牛失去平衡或滑倒,从而导致频繁发生 点头 (摇头)。
  • 步态不稳定: 奶牛的步态在几步后发生变化,并有轻微的停顿(步态模式变化)。

健康牛与跛行牛的比较

对于颈部和背部弯曲以及点头,AWS生成式人工智能创新中心的专家确定,仅在牛身上标记XNUMX个背部点(头部XNUMX个、颈部底部XNUMX个、背部XNUMX个)即可从而达到良好的识别效果。 既然我们现在有了一个识别框架,我们也应该能够识别不稳定的步态模式。

接下来,我们用数学表达式来表示识别结果并形成算法。

人类识别这些问题并不困难,但计算机识别需要精确的算法。 例如,给定一组牛背坐标点,程序如何知道牛背的弯曲程度? 它怎么知道牛是否在点头?

就背部曲率而言,我们首先考虑将牛的背部视为一个角度,然后找到该角度的顶点,这样我们就可以计算出角度。 这种方法的问题是脊柱可能具有双向弯曲,使得角度的顶点难以识别。 这就需要切换到其他算法来解决问题。

牛的关键点

在点头方面,我们首先考虑使用Fréchet距离,通过比较奶牛整体姿势曲线的差异来判断奶牛是否在点头。 然而,问题是牛的骨骼点可能会移位,导致相似曲线之间存在很大的距离。 为了解决这个问题,我们需要取出头部相对于识别框的位置并对其进行归一化。

标准化头部位置后,我们遇到了新问题。 在下图中,左侧的图表显示了牛头位置的变化。 我们可以看到,由于识别精度问题,头点的位置会不断地轻微晃动。 我们需要去掉这些小运动,找到头部比较大的运动趋势。 这是需要一些信号处理知识的地方。 通过使用Savitzky-Golay滤波器,我们可以平滑信号并获得其整体趋势,使我们更容易识别点头,如右图中的橙色曲线所示。

关键点曲线

另外,经过几十个小时的视频识别,我们发现一些背部曲率极高的奶牛实际上并没有驼背。 进一步调查发现,这是因为用于训练DLC模型的牛大多是黑色或黑白相间的,而白色或接近纯白色的牛并不多,导致模型在识别时出现错误。它们的身上有大片的白色区域,如下图红色箭头所示。 这可以通过进一步的模型训练来纠正。

除了解决上述问题外,还有其他通用问题需要解决:

  • 视频帧中有两条路径,远处的牛也可能被识别,从而导致问题。
  • 视频中的路径也有一定的曲率,当牛位于路径两侧时,牛的体长会变短,导致姿势容易被错误识别。
  • 由于多头牛的重叠或栅栏的遮挡,同一头牛可能被识别为两头牛。
  • 由于跟踪参数和相机偶尔跳帧的原因,无法正确跟踪奶牛,从而导致 ID 混淆的问题。

短期来看,基于与新希望乳业的一致,提供最小可行产品,然后迭代,这些问题通常可以通过离群值判断算法结合置信度过滤来解决,如果解决不了,就会变成问题。无效的数据,这需要我们进行额外的训练并不断迭代我们的算法和模型。

在长期, AWS AI上海Lablet 基于他们以对象为中心的研究,提出了解决上述问题的未来实验建议: 缩小现实世界中以对象为中心的学习的差距自监督阿模态视频对象分割。 除了使这些异常数据无效之外,还可以通过开发更精确的对象级模型来解决姿势估计、非模态分割和监督跟踪。 然而,这些任务的传统视觉管道通常需要大量标签。 以对象为中心的学习专注于解决像素与对象的绑定问题,而无需额外的监督。 绑定过程不仅提供有关对象位置的信息,而且还为下游任务提供稳健且适应性强的对象表示。 由于以对象为中心的管道侧重于自监督或弱监督设置,因此我们可以在不显着增加客户标签成本的情况下提高性能。

在解决一系列问题后,结合农场兽医和营养师给出的评分,我们得到了奶牛的综合跛行评分,这有助于我们识别重度、中度、轻度等不同跛行程度的奶牛,还可以识别奶牛的多种体态属性,有助于进一步分析判断。

几周之内,我们开发了一个用于识别跛脚牛的端到端解决方案。 该方案的硬件摄像头成本仅300元, 亚马逊SageMaker 批量推理,使用g4dn.xlarge实例时,50小时视频耗时约2小时,总计仅300元。 投入生产后,如果每周检测10批奶牛(假设10,000小时左右),加上滚动保存的视频和数据,一个拥有数千头奶牛的中型牧场每月检测成本不到XNUMX万元。

目前,我们的机器学习模型流程如下:

  1. 录制原始视频。
  2. 奶牛被检测和识别。
  3. 跟踪每头牛并检测关键点。
  4. 每头牛的动作都会被分析。
  5. 确定跛行评分。

鉴定过程

模型部署

之前我们已经介绍过基于机器学习的跛脚牛识别方案。 现在,我们需要在 SageMaker 上部署这些模型。 如下图所示:

架构图

业务实施

当然,到目前为止我们讨论的只是我们技术方案的核心。 为了将整个解决方案集成到业务流程中,我们还必须解决以下问题:

  • 数据反馈: 例如,我们必须为兽医提供一个界面,用于过滤和查看需要处理的跛脚牛,并在这个过程中收集数据作为训练数据。
  • 奶牛识别: 兽医看到一头跛脚牛后,他们还需要知道这头牛的身份,例如它的编号和围栏。
  • 牛定位: 在拥有数百头牛的围栏中,快速定位目标牛。
  • 数据挖掘: 例如,了解跛行程度如何影响进食、反刍、休息和产奶量。
  • 数据驱动: 例如,识别跛脚牛的遗传、生理和行为特征,以实现最佳的配种和繁殖。

只有解决这些问题,解决方案才能真正解决业务问题,收集到的数据才能产生长期价值。 这些问题有些是系统集成问题,有些是技术和业务集成问题。 我们将在以后的文章中分享有关这些问题的更多信息。

总结

在本文中,我们简要阐述了AWS客户解决方案团队如何根据客户的业务进行快速创新。 该机制有几个特点:

  • 业务主导: 在讨论技术之前,优先考虑现场和亲自了解客户的行业和业务流程,然后深入研究客户的痛点、挑战和问题,找出可以用技术解决的重要问题。
  • 立即可用: 直接向客户提供简单但完整且可用的原型,以便在几周(而不是几个月)内进行测试、验证和快速迭代。
  • 最低费用: 在价值真正得到验证之前,最大限度地降低甚至消除客户的成本,避免对未来的担忧。 这与 AWS 一致 节俭 领导原则。

在我们与乳制品行业的协同创新项目中,我们不仅从业务角度出发,与业务专家一起找出具体的业务问题,还与客户一起到农场和工厂进行了现场调研。 我们在现场确定了摄像机的放置位置,安装并部署了摄像机,并部署了视频流解决方案。 AWS Generative AI 创新中心的专家剖析了客户的需求并开发了算法,然后由解决方案架构师设计了整个算法。

通过每次推理,我们可以获得数千个分解和标记的奶牛行走视频,每个视频都有原始视频 ID、奶牛 ID、跛行评分和各种详细评分。 完整的计算逻辑和原始步态数据也被保留,以供后续算法优化。

跛行数据不仅可以用于兽医的早期干预,还可以与挤奶机数据结合进行交叉分析,提供额外的验证维度并回答一些额外的业务问题,例如:最高的奶牛的身体特征是什么产奶量? 跛行对奶牛产奶量有何影响? 造成牛跛行的主要原因是什么,如何预防? 这些信息将为农场经营提供新思路。

识别跛脚牛的故事到此结束,但农场创新的故事才刚刚开始。 在后续的文章中,我们将继续讨论我们如何与客户紧密合作来解决其他问题。


作者简介


使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。黄昊
是 AWS 生成 AI 创新中心的应用科学家。 他专门研究计算机视觉 (CV) 和视觉语言模型 (VLM)。 最近,他对生成式人工智能技术产生了浓厚的兴趣,并已经与客户合作,将这些前沿技术应用到他们的业务中。 他也是ICCV、AAAI等AI会议的审稿人。


使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。北洋河
是 AWS 生成 AI 创新中心的高级数据科学家。 她与不同行业的客户合作,利用 GenAI/ML 解决方案解决他们最紧迫和创新的业务需求。 业余时间,她喜欢滑雪和旅行。


使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。刘雪峰
领导亚太区和大中华区 AWS 生成式 AI 创新中心的科学团队。 他的团队与 AWS 客户合作开展生成式 AI 项目,目标是加速客户采用生成式 AI。


使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。肖天军
是 AWS AI 上海 Lablet 的高级应用科学家,共同领导计算机视觉工作。 目前,他的主要关注点在于多模态基础模型和以对象为中心的学习领域。 他正在积极研究它们在不同应用中的潜力,包括视频分析、3D 视觉和自动驾驶。


使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。张岱
是中国地理业务部门的AWS高级解决方案架构师。 他通过提供业务流程、用户体验和云技术方面的咨询,帮助各种规模的公司实现其业务目标。 他是一位多产的博客作家,也是两本书的作者:《现代自学者》和《设计经验》。


使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。曾建宇
是AWS的高级客户解决方案经理,其职责是在云转型过程中为新希望集团等客户提供支持,并协助他们通过基于云的技术解决方案实现业务价值。 凭借对人工智能的浓厚兴趣,他不断探索利用人工智能推动客户业务创新变革的方法。


使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。童敏
高级业务发展经理,负责大中华区GEO West的大客户,包括两个重要的企业客户:剑南春集团和新希望集团。 她以客户为中心,始终热衷于支持和加速客户的云之旅。

使用人工智能技术密切关注您的牛 |亚马逊网络服务柏拉图区块链数据智能。垂直搜索。人工智能。蒋尼克 是 AIML SSO 中国团队的高级专家销售。 他专注于转移创新的 AIML 解决方案并帮助客户在 AWS 中构建与 AI 相关的工作负载。

时间戳记:

更多来自 AWS机器学习