ValueError: Значение истинности массива с более чем одним элементом неоднозначно. Используйте a.any () или a.all (), как я могу их использовать? - PullRequest
1 голос
/ 09 марта 2020

Я получил эту ошибку при попытке предсказать модель машинного обучения для одной партии

, но я не знаю, как использовать any () или all () в моем коде я думаю, что из-за размера массива не менее

я должен использовать один из них any () или all ()

Код:

saved_weights = find_checkpoint_file('.')
print('please enter the value')
user_input1 = input()
if len(saved_weights) == 0:
    print("The network hasn't been trained! Program will exit...")
    sys.exit()
else:
    X_test = load_test_data(user_input1, X_word_to_ix, MAX_LEN)
    print(type(X_test))
    X_test = pad_sequences(X_test, maxlen=4, dtype='int32')
    print(type(X_test))
    model.load_weights(saved_weights)
    predictions = np.array(model.predict(X_test))
    print(type(predictions))
    sequences = []
    for prediction in predictions:
        sequence = ' '.join([y_ix_to_word[index] for index in prediction if index > 0])
        print(sequence)
        l = sequences.append(sequence)
    np.savetxt('test_result.txt', sequences, fmt='%s')

строка, которую я думаю об ошибке:

sequence = ' '.join([y_ix_to_word[index] for index in prediction if index > 0])

ошибка:

ValueError : Значение истинности массива с более чем одним элементом неоднозначно. Используйте a.any () или a.all ()

sequence = ' '.join([y_ix_to_word[index] for index in prediction if index > 0]) 

ValueError: Значение истинности массива с более чем одним элементом является неоднозначным. Используйте a.any () или a.all ()

на изображении ниже: обратная связь об ошибке traceback

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