图片分类器是如何工作的?

这篇文章是翻译官方IOS TuriCreate的图片分类器的使用。
原文链接:图片分类器如何工作的?

图片分类器是如何工作的?

深度学习是在机器学习世界中随处可见的一个短语。它似乎正在帮助我们取得巨大的突破,但深度学习是什么呢?它是一种具有多层非线性转换的模型,频繁的通过该模型学习数据的高层表达的一种方法。让我们花点时间分析一下最后一句话。学习数据的高层表达意味着深度学习模型将获取数据,例如图片的原始像素值,并针对该数据学习诸如“是动物”或“是猫”等抽象概念。好的,很容易,但是“多层非线性变换”的含义是什么呢?从概念上讲,多层非线性变换意味着将简单的非线性函数组成了一个复杂的非线性函数,该函数可以将像原始像素值一样复杂的东西映射到图片类别上。这就是让深度学习模型获得如此惊人结果的原因。

卷积神经网络(CNN)是计算机视觉领域中最常见的方法。通常,挑战在于如何选择网络的层数,以及如何初始化模型参数值(也称为权重)等等。基本上,如果把深度学习模型比作一台机器,该机器上有许多令人困惑的旋钮(称为超参数,基本上是算法无法学习的参数),如果随机设置的情况下,模型的效果可能很差。但是,当良好的超参数设置组合在一起时,结果将非常强大。

图片分类器工具包的主要目标是降低创建模型的复杂度,该模型适用于不同类别图片的数据集(大型或小型)。

迁移学习

要解决的任务和已经解决的任务有相关性是很常见的。以区分猫和狗的任务为例,著名的ImageNet挑战赛是CNN的最新水平,它要求训练模型可以分类1000个类别。区分狮子和狼等类别的功能是否对区分猫和狗有用呢?

答案是肯定的,只需要删除1000种分类的深度神经网络的输出层,然后把将要传递到输出层的信号作为特征传递给“猫与狗”分类器中即可实现。

因此,当你运行Turi Create图片分类器时,它会将事情分解为如下几步:

  • 步骤1:在大型通用数据集上创建CNN分类器。一个很好的例子是ImageNet,它具有1000个类别和120万张图片。这些模型已经被研究人员训练过,我们可以放心使用。
  • 步骤2:CNN中每一层的输出可以视为每个图片的有意义的向量表示。从任务中的每张图片上的输出层的上一层中提取这些特征向量
  • 创建一个新的适合自己任务的分类器,使用这些特征向量作为输入。

乍一看,这似乎比仅训练深度学习模型还要复杂。但是,步骤1可重用于许多不同的问题,并且一旦完成,就不必经常进行更改。

最终,即使在你没有足够的数据来创建深度学习模型的情况下,通过上面的流水线结果也无需调整超参数,并且拥有更快的训练和更好的性能。而且,即使你的步骤3分类任务与步骤1的训练任务相对不相关,该技术也是有效的。这个想法最早由Donahue等人提出(2013),并已成为创建图片分类器模型的最佳方法之一。

预训练图片分类器

下面显示了用于图片分类的内置最新网络体系结构。我们希望随着该领域研究的发展而增加更多:

Resnet

从一组1000种类别(例如树木,动物,食物,车辆,人等)中检测图片中存在的主要目标。原始发布的top 5错误是7.8%。该模型大小约为102.6MB。

Squeezenet

从一组1000种类别(例如树木,动物,食物,车辆,人等)中检测图片中存在的主要目标。SqueezeNet的总体占用空间仅为5MB,其准确度与AlexNet相似,但参数却减少了50倍

VisionFeaturePrint_Scene

仅在macOS 10.14及更高版本上可用。该模型包含在操作系统中,因此导出的模型尺寸很小。

  • Core ML导出模型大约40KB
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值