使用 CreateML 训练图像分类器的最佳图像分辨率是多少?

What is the optimal image resolution to train an image classifier with CreateML?

我想使用 CreateML 创建图像分类器模型。我有非常高分辨率的图像,但会以数据流量和处理时间为代价,所以我更喜欢使用尽可能小的图像。

docs 说:

The images (...) don’t have to be a particular size, nor do they need to be the same size as each other. However, it’s best to use images that are at least 299 x 299 pixels.

我用各种尺寸的图像训练了一个测试模型 > 299x299px,Xcode 中的模型参数显示尺寸 299x299px,我理解这是 标准化 图像尺寸:

此维度似乎由 CreateML 图像分类器算法确定,不可配置。

  1. 使用大于 299x299 像素的图像训练模型是否有意义?
  2. 如果图像尺寸不是正方形(高宽相同),训练图像在归一化过程中是否会被中心裁剪为 299x299px,或者正方形之外的图像部分是否会影响模型?

根据阅读和训练图像分类模型的经验(但没有直接的 Apple 内部知识),Create ML 似乎会缩放输入图像以适合 299 x 299 的方形图像。你会浪费磁盘 space 并且通过提供更大的图像来缩短预处理时间。 我能找到的最好的文档是查看 CreateML 为图像分类器模板创建的 mlmodel 文件。输入明确定义为 299 x 299 彩色图像。在独立应用程序中没有更改该设置的选项。 这是一些文档(适用于默认使用 ScenePrint 的 Classifer 模板):

https://developer.apple.com/documentation/createml/mlimageclassifier/featureextractortype/sceneprint_revision

Playground 作品space中可能有Center/Crop选项,但我从未在 Create ML 的独立应用程序版本中找到它。