Olá, finalizei o curso e estou muito contente, porém me surgiu uma dúvida. Eu repliquei o código feito no curso em uma base de dados com alguns tweets, o modelo funcionou normalmente e então salvei o modelo utilizando o código:
filename = 'modelo.pkl'
pickle.dump(regressao_logistica, open(filename, 'wb'))
Logo depois comecei a criar a minha API para alguns testes, porém não estou consigo utilizar o método predict() do modelo carregado. Tentei de tudo e não consegui resolver. Segue o código:
@app.route('/predict', methods=['POST'])
def predict():
dados = request.get_json(force=True)
teste = dados['texto']
tratamento_1 = tratamento1([teste])
tratamento_2, punctuation_stopwords = tratamento2(tratamento_1)
tratamento_3, without_accents = tratamento3(tratamento_2, punctuation_stopwords)
tratamento_4 = tratamento4(tratamento_3, without_accents)
tratamento_5 = tratamento5(tratamento_4, without_accents)
classification = model.predict([tratamento_5])
resposta = {
'classificacao': classification
}
return jsonify(resposta)
No código acima eu replico no meu request os mesmos tratamentos utilizados no modelo (tudo funcionando normalmente). O problema está no model.predict() que está me retornando a seguinte mensagem: ValueError: X has 1 features per sample; expecting 864900. Alguém pode me ajudar? Obrigado desde já.