turicreate (turicreate-5.0b2) 中的对象检测返回空预测数组

Posted

技术标签:

【中文标题】turicreate (turicreate-5.0b2) 中的对象检测返回空预测数组【英文标题】:Object Detection in turicreate (turicreate-5.0b2) returns empty predictions array 【发布时间】:2018-12-18 06:55:48 【问题描述】:

您好,我正在使用带有 TuriCreate 的对象检测功能,使用 2 个类别标识符和 60 个图像,并且我按照说明成功地训练了数据,但是在预测测试数据时我得到了空的预测。在我的 MAC OS Mojave 10.14 Beta 和 XCode 10.0 Beta 3 上安装了 turicreate-5.0b2。这是我使用的代码:

import turicreate as tc
images = tc.load_images('data/images')
annotations = tc.SFrame('data/imagesannotations.csv')
data = images.join(annotations)
train_data, test_data = data.random_split(0.8)
model = tc.object_detector.create(train_data, max_iterations=10)
predictions = model.predict(test_data)

我得到空的预测输出:

Predicting  1/11
Predicting 11/11
>>> predictions
dtype: list
Rows: 11
[[], [], [], [], [], [], [], [], [], [], []]

请帮助我为什么得到空洞的预测。我以 0.8 的速率分割图像数据集进行训练和测试,它们都彼此相似。

【问题讨论】:

【参考方案1】:

这听起来不太可能,但我在使用通过 Homebrew 安装的 Python 2.7 时也收到了空洞的预测,并且无论如何导出模型都会导致崩溃。这里有一个类似的问题:https://github.com/apple/turicreate/issues/80。

我卸载了 Python 并使用 https://www.python.org/downloads/mac-osx/ 上的安装程序重新安装了 2.7.13,并收到了预测。我意识到这是几个月后的事情,所以希望你现在已经解决了你的问题。

【讨论】:

【参考方案2】:

这个数据集的 10 次迭代可能不足以获得一个可以自信地预测任何事情的模型。因此,所有可能的预测都太低置信度,无法满足 IOU 阈值,因此返回值为空列表。

【讨论】:

以上是关于turicreate (turicreate-5.0b2) 中的对象检测返回空预测数组的主要内容,如果未能解决你的问题,请参考以下文章

无法在 anaconda 中安装 turicreate

使用 GPU 在 colab 上使用 Turicreate 训练对象检测模型

无法使用 turicreate

无法在我的 Windows 10 上安装“Turicreate”

如何为对象检测任务创建与 TuriCreate 兼容的 SFrame

没有找到 coremltools==0.8 的匹配分布(来自 turicreate)