Я хочу предсказать оценку для каждого предложения в тексте.Я написал этот метод теста:
def test(sent):
# Predict for a given sentence
if sent != "":
input, seq_lengths, target = make_variables([sent], [])
output = classifier(input, seq_lengths)
pred = output.data.max(1, keepdim=True)[1]
score = pred.cpu().numpy()[0][0]
print("The sentence is:",sent, "The score is:", score)
return
print("evaluating trained model ...")
total_mse=0
for sents, scores in test_loader:
input, seq_lengths, target = make_variables(sents, scores)
output = classifier(input, seq_lengths)
pred = output.data.max(1, keepdim=True)[1]
error=mean_squared_error(pred,target.data.view_as(pred.float()))
total_mse +=error
print(" ********** Total MSE is **********",total_mse)
return
В части основного метода у меня есть:
# Testing
test("")
# Testing for a given sample _a sentence_
test("For instance, wolves prey on moose, which are too big for coyotes.")
Но я получил эту ошибку:
Отслеживание ошибок (последний вызов был последним): файл "/home/mahsa/anaconda3/envs/pytorch_env/lib/python3.5/unittest/case.py", строка 59, в файле testPartExecutor yield File "/ home / mahsa / anaconda3 /envs / pytorch_env / lib / python3.5 / unittest / case.py ", строка 601, в файле запуска testMethod ()" /home/mahsa/anaconda3/envs/pytorch_env/lib/python3.5/site-packages/nose/case.py ", строка 198, в runTest self.test (* self.arg) Исключение: test () отсутствует 1 обязательный позиционный аргумент: 'sent' -------------------- >> начать запись в журнал << -------------------- gensim.models.doc2vec: ОТЛАДКА: используется быстрая версия gensim.models.doc2vec..preprocessing.cleaner: INFO: пакет 'pattern' не найден;Фильтры тегов недоступны для английского gensim.utils: INFO: загрузка объекта KeyedVectors из / home / mahsa / PycharmProjects / PyTorch_env_project / Thesis / proj2 / glove_saved gensim.utils: INFO: загрузка syn0 из / home / mahsa / PycharmProjects / PyTorch_j/proj2/glove_saved.syn0.npy с mmap = Нет gensim.utils: INFO: установка для игнорируемого атрибута syn0norm значения Нет gensim.utils: INFO: загружен / home / mahsa / PycharmProjects / PyTorch_env_project / Thesis / proj2 / glove_saved --------------------- >> завершение записи журнала << --------------------- </p>
E ============================================================================ ОШИБКА: mahsa_rnn_sent_classification.test ---------------------------------------------------------------------- Traceback (самый последнийпоследний вызов): файл "/home/mahsa/anaconda3/envs/pytorch_env/lib/python3.5/site-packages/nose/case.py", строка 198, в runTest self.test (* self.arg) TypeError:test () отсутствует 1 обязательный позиционный аргумент: 'sent' -------------------- >> begin captured logging << -------------------- gensim.models.doc2vec: DEBUG: используется быстрая версия gensim.models.doc2vec. sum.preprocessing.cleaner: INFO: пакет 'pattern' не найден;Фильтры тегов недоступны для английского gensim.utils: INFO: загрузка объекта KeyedVectors из / home / mahsa / PycharmProjects / PyTorch_env_project / Thesis / proj2 / glove_saved gensim.utils: INFO: загрузка syn0 из / home / mahsa / PycharmProjects / PyTorch_j/proj2/glove_saved.syn0.npy с mmap = Нет gensim.utils: INFO: установка для игнорируемого атрибута syn0norm значения Нет gensim.utils: INFO: загружен / home / mahsa / PycharmProjects / PyTorch_env_project / Thesis / proj2 / glove_saved --------------------- >> завершение записи журнала << --------------------- </p>
---------------------------------------------------------------------- Выполнен 1 тест за 0,004 с
СБОЙ (ошибки = 1)
Я думаю, чтоtest () имеет свой аргумент 'sent'.Как я могу исправить эту ошибку?