CoreML 模型预测不同于训练
Posted
技术标签:
【中文标题】CoreML 模型预测不同于训练【英文标题】:CoreML model predictions differ from training 【发布时间】:2019-04-14 05:50:33 【问题描述】:我对 Core ML 还很陌生,但到目前为止,我玩得很开心。我目前正在学习如何通过在操场上创建模型并验证其结果来训练模型进行面部识别。我保存 .mlmodel 并在我的应用中实现它。
我的问题是,当我在操场上测试它时,它似乎具有非常高的准确度,但是当我在我的应用环境中使用相同的图片实现相同的模型时,我会得到完全不同的结果,而且几乎无法使用。
这是我从调试控制台获取的一些代码。
[<VNClassificationObservation: 0x282deff00> BFB8D19B-40AE-45F9-B979-19C11A919DBE, revision 1, 0.778162 "Others", <VNClassificationObservation: 0x282dede60> 9E9B2AC8-3969-4086-B3B0-6ED6BEDFFE71, revision 1, 0.221838 "Me"]
这里它错误地将我的图像分类为其他人,即使它在测试期间正确地将同一图像分类在操场上。看起来应用程序本身运行良好,只是模型突然关闭了。
我在这里错过了什么?
谢谢
【问题讨论】:
【参考方案1】:通常,当您在 Playground 和应用中以不同的方式加载图像时,就会发生这种情况。我要做的是确保您使用的图像在两种情况下都完全相同。不仅是图像内容,还有在将它们提供给模型之前它们是如何加载的。
【讨论】:
以上是关于CoreML 模型预测不同于训练的主要内容,如果未能解决你的问题,请参考以下文章
从 pytorch 模型转换而来的 coreML 模型给出了错误的预测概率
图像识别的 CoreML 模型预测仅适用于 iPhone 11 和 12 模型