NameError: имя 'классификатор' не определено - PullRequest
0 голосов
/ 01 сентября 2018

Я новичок в машинном обучении. Я пытался прогнозировать набор данных, но при запуске программы выдается следующая ошибка:

NameError: name 'classifier' is not defined 

Вот мой код:

import numpy as np
from keras.preprocessing import image
test_image = image.load_img('dataset/single_prediction/1.jpg', target_size = (64, 64))
test_image = image.img_to_array(test_image)
test_image = np.expand_dims(test_image, axis = 0)
result = classifier.predict(test_image)
training_set.class_indices
if result[0][0] == 1:
  prediction = 'nsfw'
else:
  prediction = 'sfw'

Ответы [ 2 ]

0 голосов
/ 03 апреля 2019

Вы должны указать «пустую» версию, прежде чем начинать добавлять слои в модель.

Вы можете просто исправить эту ошибку, добавив строку над кодом:

import keras
from keras.models import Sequential
from keras.layers import Dense
from keras.models import load_model

#empty model
classifier = Sequential()

Затем продолжите указывать как:

#add layers, start with hidden layer and first deep layer
classifier.add(Dense(output_dim=15, init="uniform", activation='relu',input_dim = 15))
classifier.add(Dropout(rate=0.1))
0 голосов
/ 01 сентября 2018

Вы используете classifier, чтобы делать прогнозы. Но classifier не определен. Вот в чем ошибка.

Чтобы решить эту проблему, у вас должна быть сохраненная модель keras, которая подготовлена ​​для вашей конкретной проблемы с ней. Если у вас есть это, вы можете загрузить его и делать прогнозы.

Ниже код показывает, как вы можете загрузить модель.

from keras.models import load_model

classifier = load_model('path_to_your_model')

После загрузки модели вы можете использовать ее для прогнозирования, как вы.

import numpy as np
from keras.preprocessing import image
test_image = image.load_img('dataset/single_prediction/1.jpg', target_size = (64, 64))
test_image = image.img_to_array(test_image)
test_image = np.expand_dims(test_image, axis = 0)
result = classifier.predict(test_image)
training_set.class_indices
if result[0][0] == 1:
  prediction = 'nsfw'
else:
  prediction = 'sfw'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...