楼主: 时光永痕
1308 0

[数据挖掘新闻] 识别照片中的动物:建立用于对象识别的AI模型 [推广有奖]

  • 0关注
  • 14粉丝

svip3

学术权威

12%

(VIP/贵宾)三级

40%

威望
0
论坛币
26 个
通用积分
49.7576
学术水平
4 点
热心指数
4 点
信用等级
4 点
经验
34070 点
帖子
2731
精华
0
在线时间
316 小时
注册时间
2020-7-21
最后登录
2024-4-24

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
识别照片中的动物:建立用于对象识别的AI模型
我们用于识别图像中特定动物的模型是一个由多层组成的神经网络,并且初始层通常已经很好地理解了世界。因此,我们不需要“重新发明轮子”,而只需要训练最后一层。
我很高兴与我们的合作伙伴之一Wild Detect一起完成一个最近的项目,因为它符合我们在Appsilon的目标之一-使用数据科学咨询来帮助保护和管理地球的野生动植物和环境。目的是建立一个视觉识别特定种类动物的模型。我无法发布该模型,因此通过使用其他数据集,我想向您展示如何针对此问题构建概念证明深度学习模型。那么,我们选择了哪些动物?去年,我在布里斯班的UseR上做了演讲,这对我来说是一段旅程。我有机会参观那里的考拉保护区。可悲的是,考拉受到气候变化的严重影响,最近它们被宣布已绝种。  。为了强调这个问题,出于本文的目的,我决定选择澳大利亚的动物-考拉和袋鼠。
视觉识别对野生动植物管理以外的许多行业都具有强大的功能,包括零售,国防,保险(索赔验证)和制造(质量控制)。训练有素的现代深度神经网络可以为我们解决各种问题提供非常准确的结果。  
数据集
要获得概念验证模型,从Google图片开始很有帮助。gi2ds  是一个很好的工具:您可以对要在数据集中包含的每个类运行Google图片搜索,运行一些javascript代码,然后排除不需要的图片。它将为您提供图像URL列表,然后可以使用代码下载。
数据集野生动物机器学习 150w,https://appsilon.com/wp-content/uploads/2019/06/marek -image-set-m-5 ... 500w,https://appsilon.com/wp-content/uploads/2019/06/marek-image-set-m-7 ... 768w,https:// appsilon .com / wp-content / uploads / 2019/06 / marek-image-set-m.jpg 1200w“ size =”(最大宽度:1024px)100vw,1024px“ pagespeed_url_hash =” 2167469735“ onload =” pagespeed.CriticalImages。 checkImageForCriticality(this);“ />
训练数据-考拉,袋鼠和“没有这些”的图像的集合。
在我们的案例中,我们收集了三个类别的图像:“考拉”,“袋鼠”和“其他”(没有任何考拉或袋鼠的澳大利亚荒野图像)。保留20%的图像作为验证集。
该模型
该模型是卷积神经网络(CNN)。CNN擅长视觉识别。具体来说,我们使用了最初由康奈尔大学/微软团队开发的ResNet架构,它是用于视觉任务的最新架构。其卓越准确性的背后是在训练过程中跳过网络层的想法,这有助于消除许多消失的梯度  问题,最终产生较低的训练误差。令人着迷的是,人的大脑实际上做了类似的事情。
Resnet架构
来自原始论文的ResNet架构,由Adit Deshpande制作动画                                                   
对于深度学习框架,我们使用了PyTorch。我们发现它比Tensorflow更方便,原因有几个。我想在这里强调的是PyTorch提供了一套正式的预训练模型  ,可用于各种视觉问题。   
模型训练
我们没有从头开始训练模型,而是使用了 在ImageNet数据集上预先训练的ResNet版本。ImageNet是为https://www.google.com/url?q=ima ... st=1559916335950000(ILSVRC  )创建的超过1500万张带批注图像的数据集。   
这种将预训练的模型用于不同任务的技术称为转移学习。它可以快速实现出色的结果。我们的模型是一个由多层组成的神经网络,而经过预训练的模型的初始层通常已经非常擅长于理解世界。我们只需要训练最后一层。此步骤还可以极大地减少培训时间,并且可以使我们使用“考拉”,“袋鼠”和“其他”这三个类别中的每一个类别的数百张图像来获得良好的效果。
我们从训练最后2层开始,这给出了1.98%的错误。 为了进一步降低误差,我们在所有层上进行了更多的训练,从而使错误率降至1.58%。自然,对于生产模型,我们将进行更多的微调和数据扩充。我们还需要收集更现实的数据集。话虽如此,该模型已经证明了可以实现的解决方案。
机器学习目标检测袋鼠 768w,https://appsilon.com/wp-content/uploads/2019/06/marek-recognition.png 858w“ size =”(最大宽度:600像素)100vw,600像素“ pagespeed_url_hash =” 1171731196“ onload =” pagespeed.CriticalImages.checkImageForCriticality(this);“ />
在这里,我们可以看到图像中对于预测类别最重要的部分。
介面
一旦模型被教导要识别袋鼠和考拉,就可以通过多种方式(API,Shiny或Python Web应用程序)访问结果。我们认为为模型提供可用的界面至关重要。我们想将神经网络的发现暴露给需要信息的人们,甚至可能需要查看模型如何得出给定的结论。网络与人互动的步骤与人工智能一样重要。
对于使用Wild Detect的项目,我们正在构建最终将生活在旷野,牧场和/或自然保护区中的设备,因此它将是运行在该设备上的独立服务,可以定期查询随着新图像从相机中进入。
我们是构建分析Web应用程序的专家,因此对于POC,我除了构建可以在模型中使用的应用程序外别无所求。这是它的样子。
袋鼠检测模型 768w,https ://appsilon.com/wp-content/uploads/2019/06 / marek-detect-with-f ... 1024w,https://appsilon.com/wp-content/uploads/2019/06/marek-detect-with-f ... 1570w“ size =”(最大宽度:600px)100vw,600px“ pagespeed_url_hash =” 2194572882“ onload =” pagespeed.CriticalImages.checkImageForCriticality(this);“ />
神经网络模型的用户界面                                                                        
概要
人工智能可以非常准确地识别图像中的物体,动物和人。使用转移学习使业务应用程序更加可行,并允许我们处理较小的数据集,而这通常是我们所拥有的。建立模型的准确性和努力至关重要。这对一个非盈利性组织很重要,该组织正在计算地球上剩余的几只无尾熊,对一家公司计算其货架上的存货也很重要。对于Wild Detect来说,这很重要,我们为之成功地进行了概念验证,我们很高兴能与他们继续前进。  
管理大型设施,库存和土地的组织都可以从对象的准确视觉识别中受益。
1
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Recognition Javascript cognition Critical Content

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-25 23:11