MobileNet预训练模型 - 分类

问题描述 投票:-1回答:1

我目前正在使用预先训练的MobileNet模型,该模型对来自1000个类别的图像进行分类。出于我的IOS应用程序的目的,我只需要它来识别/分类场景中的一种类型的对象。我如何训练模型,以便它只对我需要的一个对象进行分类,但是它做得非常好?

我是机器学习的新手,不熟悉转学习技巧。进行这种类型的训练会减少模型大小并使其更有效地识别我需要的一个对象吗?如果是的话,有什么资源可以教我如何为我的目标继续训练这个预先训练过的模型。

ios swift machine-learning neural-network computer-vision
1个回答
0
投票

简而言之,您希望将1000路分类器转换为二元分类器。下面的答案假设您可以访问原始数据,并且您知道如何训练原始模型(即,您可以访问培训脚本)。开始:

假设您只对单个类别C感兴趣,您希望首先将数据的所有实例(x,C)映射到(x,1),将所有其他实例(x,not_C)映射到(x,0),然后在结果数据上训练模型(或者,如果训练脚本也接受模型的起点,则继续训练预训练模型)。

然后,该模型将失去在非C类之间辨别的能力,并且希望在区分C与非C实例方面变得更好。

注意:一种不太常见的方法是实际上将模型限制为仅输出0或1,并将目标更改为二进制softmax。但是,这需要对模型的架构进行一些操作,您可以不使用它。

© www.soinside.com 2019 - 2024. All rights reserved.