我正在使用基于keras的vgg模型作为图像分类器。在此网页上:
https://machinelearningmastery.com/use-pre-trained-vgg-model-classify-objects-photographs/
但是我很想找出预测的父类别。例如,如果模型预测出一条狗,我想知道它的父类别是动物。 我不知道是否可以使用Imagenet树来解决此问题?
答案 0 :(得分:1)
ImageNet
使用WordNet
创建类的层次结构。您可以通过以下方式访问对象同义词集:
import nltk
from nltk.corpus import wordnet
nltk.download('wordnet')
dog = wordnet.synsets('dog')[0]
要访问dog
的父母,请致电:
dog.hypernyms()
它可能会返回多个结果,这是有问题的。
您现在可以做的是检查此父级中的任何一个是否为实际的ImageNet
类。要获取符号集的wnid
,只需调用dog.offset()
。
要撤消该过程:
from nltk.corpus import wordnet as wn
wn.synset_from_pos_and_offset('n',2084071)