MediaPipe 模型制作工具

MediaPipe Model Maker 是一种工具,用于自定义现有机器学习模型,以便与你的数据和应用搭配使用。您可以使用此工具作为构建和训练新机器学习模型的更快替代方案。Model Maker 使用一种称为迁移学习的机器学习训练技术,该技术使用新数据重新训练现有模型。此方法会重复利用现有模型逻辑中的很大一部分,这意味着训练所用的时间比训练新模型要短,并且用的数据更少。

Model Maker 适用于各种类型的模型,包括对象检测、手势识别或图片、文本或音频数据的分类器。该工具会移除模型的最后几层(用于将数据分类到特定类别)来重新训练模型,并使用您提供的新数据重新构建这些层。 Model Maker 还支持微调模型层以提高准确率和性能。

展示移除和替换分类层的机器学习模型

图 1.Model Maker 会移除现有模型的最后几层,并使用新数据重新构建这些层。

使用 Model Maker 重新训练模型通常会减小模型的大小,特别是重新训练新模型以识别更少的事物时。这意味着您可以使用 Model Maker 创建针对性更强的模型,更适合您的应用。该工具还可以帮助您应用量化等机器学习技术,以减少模型使用的资源,并提高运行效率。

训练数据要求

您可以使用 Model Maker 重新训练模型,其数据明显少于训练新模型。使用新数据重新训练模型时,每个训练的类别应具有大约 100 个数据样本。例如,如果您要重新训练一个图片分类模型来识别猫、狗和鹦鹉,则应该拥有大约 100 张猫图片、100 张狗图片和 100 张鹦鹉图片。根据您的应用,您或许可以使用更少的每个类别的数据来重新训练有用的模型,但较大的数据集通常会提高模型的准确性。创建训练数据集时,请记住,您的训练数据会在重新训练过程中被拆分,通常 80% 用于训练,10% 用于测试,其余 10% 用于验证。

自定义的限制

由于重新训练过程会移除之前的分类层,因此生成的模型只能识别新数据中提供的训练项或类别。如果旧模型经过训练可识别 30 个不同的项类别,并且您使用 Model Maker 利用 10 个不同项的数据重新训练,则生成的模型只能识别这 10 个新项。

使用 Model Maker 重新训练模型无法更改原始机器学习模型旨在解决的问题,即使这些作业类似也是如此。例如,您不能使用该工具让图片分类模型执行对象检测,即使这些任务具有一些相似性也是如此。

开始使用

您可以运行 MediaPipe 解决方案的一个解决方案自定义教程(例如图片分类)来开始使用 MediaPipe Model Maker