我正在探索IBM Watson视觉识别服务,当我使用类似“ black-dog ”(即black-dog_positive_example)的类名创建分类器时,此类名称稍后将返回为“当我使用/v3/classify
端点对图像进行分类时,black_dog '(使用下划线替换破折号)。
但是当我使用/v3/classifiers/{classifier_id}
检索分类器详细信息时,该类被正确列为“黑狗”。
因此,GET /v3/classifiers/{classifier_id}
的结果如下:
{
"classifier_id": "dog_561932172",
"name": "dog",
"owner": "xxxxxxxx-xxx-xxx-xxx-xxxxxxxxxxxx",
"status": "ready",
"created": "2016-07-30T22:06:39.327Z",
"classes": [
{"class": "black-dog"}
]
}
虽然GET /v3/classify
的结果是
{
"custom_classes": 1,
"images": [
{
"classifiers": [
{
"classes": [
{
"class": "black_dog",
"score": 0.546941
}
],
"classifier_id": "dog_561932172",
"name": "dog"
}
],
"image": "20160620_142113.jpg"
}
],
"images_processed": 1
}
这是预期还是缺陷?我应该避免在类名中使用“ - ”吗?对于类名的值是否还有其他规则?
答案 0 :(得分:2)
<强>更新强>
通过Matt的回答更新。
与支持团队交谈,这确实是一个错误。以下是他们的回复:
感谢您指出这一点。我与开发团队一起复制和确认,我们确实认为列出的类名和结果中的类名之间的不一致是一个错误。
这是因为类名在结果中被改变了。
我已经提出了跟踪此票的罚单。根据开发人员的说法,目前输出可以是列出替换的文档,也可以找到删除它们的方法。
......所以他们正在研究它。
答案 1 :(得分:1)
对于类名的值是否还有其他规则?
我们进行了更新,服务不应再修改任何类名,例如用下划线替换短划线。相反,它不会接受任何这些字符用于自定义学习的类名:\,|,*,{,},$, - ,/,&#39;,`,&#34;
(你会看到破折号包含在那里。)空格是可以接受的。此更新不具有追溯性,因此在培训期间修改的现有类名不会受到影响。