Сохранение модели и загрузка модели в отдельном сеансе дает неверные прогнозы - PullRequest
0 голосов
/ 16 апреля 2019

Как только обучение закончено, генерация прогнозов на тестовом наборе данных дает точность> 70.

Затем я сохраняю модель, используя метод model.save(...).

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

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

Чтобы покончить с сомнением в отношении различных токенизаторов, я сохранил токенизатор в файл tokenizer.pickle, который будет загружен перед проведением texts_to_sequences и pad_sequences в тестовых текстовых данных (это не любая разница).

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

model.save('model.h5') #for saving the model
------------------------------------------------------------

#Predicting after saving on a different session

trained_model = load_model('model.h5') #for loading the model in a different session.

# load tokenizer
tokenizer = Tokenizer()
with open('trained_model/tokenizer.pickle', 'rb') as handle:
  tokenizer = pickle.load(handle)

test_revs = pd.read_csv('test_dataset.csv')

test_revs.loc[:, 'rating'] = test_revs['rating'].apply(points_to_class) #converting decimal ratings to integer classes 

actual_texts = test_revs['text']
actual_ratings = test_revs['rating']

final_Y_test = to_categorical(actual_ratings, 5)

actual_text_tokens = add_doc_to_vocab(actual_texts.tolist())

sequences_test = tokenizer.texts_to_sequences(actual_text_tokens)

X_test = pad_sequences(sequences_test, maxlen=1939, padding='post')

# Predictions
pred_test = trained_model.predict(X_test)
pred_test = [np.argmax(x) for x in pred_test]

# Actual
true_test = final_Y_test
true_test = [np.argmax(x) for x in true_test]

# Find accuracies
accuracy = accuracy_score(true_test, pred_test)

print("The total accuracy is : ", accuracy)

Я новичок в TensorFlow, если у кого-то есть предложения, пожалуйста, поднимите, ура!

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