Как получить достоверность предсказания класса от тензорных объектов? - PullRequest
0 голосов
/ 05 февраля 2020
from fastai import *
from fastai.vision import *
import fastai
import pathlib
import pandas as pd

tfms = get_transforms()
path = pathlib.Path('/home/urls') # current directory
classes = [x.stem for x in path.glob('*')]
np.random.seed(42)
data = ImageDataBunch.from_folder(path, train=".", valid_pct=0.2,
        ds_tfms=get_transforms(), size=224, num_workers=4).normalize(imagenet_stats)

learn = cnn_learner(data, models.resnet50, metrics=error_rate) 
learn.fit_one_cycle(14)
learn.save('multi-class')

#actual predictions with the trained model
images = [x.stem for x in path1.glob('*.jpg')]
for i in images:
    try:
        img = open_image('/home/user/ml/' + f'{i}.jpg')
        prediction = learn.predict(img)
        print(i, prediction)
        prediction_list.append(prediction)
        store_item_list.append(i)
    except: 
        pass
# for a specific image
preds,tensor,probs=learn.predict(open_image("23000.jpg"))
classes=learn.data.classes
confidences = [{c: p for ((c, p*100)) in list(zip(classes, probs))} for probs in preds

Ошибка лежит в последней строке confidences = [{c: p for ((c, p*100)) in list(zip(classes, probs))} for probs in preds.

File "<ipython-input-75-8d5b35da10c9>", line 1 confidences = [{c: p for ((c, p*100)) in list(zip(classes, probs))} for probs in preds] ^ SyntaxError: can't assign to operator

Пожалуйста, помогите - я открыт для любых других способов получения уверенности в предсказании класса .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...