前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >针对复杂图像分类场景:使用物体探测(第一部分)

针对复杂图像分类场景:使用物体探测(第一部分)

作者头像
AI研习社
发布2019-05-08 17:45:17
7120
发布2019-05-08 17:45:17
举报
文章被收录于专栏:AI研习社AI研习社

本文为 AI 研习社编译的技术博客,原标题 : Using Object Detection for Complex Image Classification Scenarios Part 1: 作者 | Aaron (Ari) Bornstein 翻译 | chesc 校对 | 酱番梨 审核 | 约翰逊·李加薪 整理 | 立鱼王 原文链接: https://towardsdatascience.com/using-object-detection-for-complex-image-classification-scenarios-part-1-779c87d1eecb

TLDR; 本系列是基于检测以下现实生活代码记录中复杂策略的工作。该系列的代码可以在原文找到。

第1部分:AI计算机视觉革命

计算机视觉的最新发展已经改变了计算机视觉领域。许多曾经被认为只能在科幻中使用的场景最近已经变得像使用API一样简单。

例如,仅在四年前,以下漫画出现在XKCD上。

XKCD 2014年9月24日

早在2014年,对于普通开发人员而言,进行基本的图像分类能力被认为近乎于科幻小说。仅仅三年之后,我们不仅可以确定图片是否包括鸟类,我们还可以告诉你鸟的种类,这只鸟在图片中的位置,并实时追踪鸟类的迁徙模式。

Microsoft开发人员博客 使用Azure ML进行鸟类检测 和 用于与保护指标合作的目标检测的主动学习 2018年11月6日

实际上,并非每个计算机视觉问题都与鸟类、花卉、猫和狗有关

在本系列中,我们将回顾用于零售业的现实生活中的计算机视觉用例,并将比较和对比一些用于解决这个问题的不同方法和技术。

一年多以前,微软与中欧和东欧的一家大型糖果产品制造商合作,建立了一个机器学习模型,用于验证经销商是否正确地存放巧克力。我们合作的公司拥有遍布14个国家的大型连锁超市分销网络。每个经销商都要根据标准政策在其展台上摆放巧克力。每一项政策都描述了给定巧克力应该放在什么架子上,以及应该按什么顺序存放。

执行这些政策的“常规”审计活动需要巨大的成本。我们的合作伙伴希望开发一个系统,在这个系统中,审核员或商店经理可以拍照,并立即得知货架是否正确存放,如上图所示。

即使采用最先进的方法,这也是一项具有挑战性的工作,原因包括:

  • 图像质量
  • 图像角度
  • 轻微与规则不相符

模型很容易看出这里面没有巧克力

尽管上图中右边一些错误存放的商品是显然“与规则不相符”的,并且很容易分类。但其他一些,例如下面这种“不相符”是更微妙的情况,更难以正确分类。

图像识别模型很难知道这个图像没有巧克力

第1部分

# 系列挑战

在本系列中,我们将构建一个类似于上述场景的复杂策略分类器。要有效存储图像,必须按以下顺序存储。

顶架(苏打水)

中层(果汁)

底架(水)

在左边我们有一个有效的图像,右侧我们有一个无效的图像

这个问题的潜在技术解决方案

Microsoft提供了一系列可用于解决计算机视觉任务的人工智能服务,每个解决方案都可以在Azure上运行。

从 Azure Cognitive Services 到 Azure DSVM 和 Azure Machine Learning 每种技术和方法都有不同的优势和权衡,适合计算机视觉用例的范围。

认知服务

Azure Cognitive Services 是一套开箱即用的API和高级服务,可帮助您在不需要任何领域经验的情况下开始执行AI任务。

Azure 数据科学虚拟机 与 机器学习服务

数据科学虚拟机是在Azure上的虚拟机镜像。它已经安装和配置了许多流行的数据科学和深度学习工具。这些镜像带有流行的数据科学和机器学习工具,包括Microsoft R Server Developer Edition,Microsoft R Open,Anaconda Python,Julia,Jupyter notebooks,Visual Studio Code,RStudio,xgboost等等。您可以通过配置DSVM(数据科学虚拟机),而不是自行创建一个类似的工作区,从而节省大量的安装,配置和包管理过程。部署了DSVM后,就可以立即开始数据科学项目的工作。

关于如何使用DSVM的详细信息,请参阅在Azure上使用Linux数据科学虚拟机的数据科学。

Azure机器学习服务

Azure 机器学习服务使您能够更快地构建和训练机器学习模型,并轻松地部署到云。使用最新的开源技术,如TensorFlow,PyTorch或Jupyter。在本地进行实验,然后在云上使用支持GPU的大型集群快速扩展。通过自动化机器学习和超参数调整对数据科学进行加速。使用集成的CI/CD工具跟踪您的实验、管理模型并轻松部署。

深度学习框架与Keras

通常,深度学习工程师不会手动实现矩阵代数运算。相反,他们使用PyTorch或TensorFlow等框架。Keras是一个用Python编写的开源神经网络库。它能够运行在TensorFlow,Microsoft Cognitive Toolkit或Theano之上。它旨在实现对深层神经网络的快速实验,着重于用户友好、模块化和可扩展性。--维基百科

在数据科学虚拟机上与Jupyter,Docker和PyTorch进行交互式深度学习......学习使用Jupyter,PyTorch和Data Science Virtual Machine训练深度学习模型

在以下系列中,我们将探讨其中一些技术和体系结构,以解决我们自己的复杂策略分类方案。

系列目标

在这个系列的最后,你应该

  • 了解人工智能计算机视觉前沿
  • 能够构建部署自定义的视觉服务模型
  • 利用Keras和迁移学习构建CNN图像识别模型
  • 使用vott和fasterrcnn对复杂分类场景的目标检测模型进行注释和训练
  • 使用Azure ML Service和ACI在云上训练和部署自定义的计算机视觉模型

资源

Pythic Coder推荐的用于在azure上开始机器学习的内容

因为DevOps资源上的帖子很受欢迎,而且很难跟踪文档,… medium.com

aribornstein - Overview

@pythiccoder。aribornstein有68个存储库。在GitHub.github.com上关注他们的代码。

认知服务|Microsoft AzureMicrosoft Azure Stack是Azure的扩展 - 将云计算的灵活性和创新带入您的... azure.microsoft.com

下一篇文章

本系列的下一篇文章将介绍如何使用自定义视觉服务来处理此任务,后续文章将解决以下问题:

  • 使用Keras CNNs,MobileNet和迁移学习进行策略识别
  • 使用Keras RetinaNet进行策略检测
  • 使用Azure机器学习服务在云上训练计算机视觉模型
  • 使用Azure机器学习在远程集群上训练计算机视觉模型

如果您有任何问题、评论或主题需要与我讨论,请随时在Twitter上关注我,如果您觉得我错过了一个里程碑,请告诉我。

关于作者

Aaron(Ari)Bornstein是一位狂热的人工智能爱好者,对历史充满热情,致力于新技术和计算医学。作为微软云开发者倡导团队的开源工程师,他与以色列高科技社区合作,通过改变游戏规则的技术解决现实世界的问题,然后将其记录下来,开源并与世界其他地方共享。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-03-15,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 AI研习社 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 第1部分:AI计算机视觉革命
  • 实际上,并非每个计算机视觉问题都与鸟类、花卉、猫和狗有关
  • 第1部分
  • 这个问题的潜在技术解决方案
  • 认知服务
  • Azure 数据科学虚拟机 与 机器学习服务
  • 深度学习框架与Keras
  • 系列目标
  • 资源
  • 下一篇文章
  • 关于作者
相关产品与服务
图像处理
图像处理基于腾讯云深度学习等人工智能技术,提供综合性的图像优化处理服务,包括图像质量评估、图像清晰度增强、图像智能裁剪等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档