Responder a: Não consigo prever mais classes, AJUDA POR FAVOR!

Home Fóruns Fórum Processamento de Linguagem Natural com BERT e Python Não consigo prever mais classes, AJUDA POR FAVOR! Responder a: Não consigo prever mais classes, AJUDA POR FAVOR!

#35013
Denny Ceccon
Moderador

    Olá Micael,

    Para prever mais de uma categoria, além de ajustar o parâmetro NB_CLASSES, você precisa transformar seus rótulos usando o LabelEncoder do Sklearn:

    from sklearn.preprocessing import LabelEncoder
    encoder = LabelEncoder()
    data_labels = encoder.fit_transform(data_labels.reshape(-1, 1))

    Aliás, dá pra fazer isto também com duas categorias, ao invés de fazer a transformação manualmente como o professor fez.

    O interessante de usar este método é que dá pra recuperar os rótulos originais no final, usando o método inverse_transform do encoder:

    def get_prediction(sentence):
        tokens = encode_sentence(sentence)
        inputs = tf.expand_dims(tokens, 0)
        output = Dcnn(inputs, training=False).numpy()
        output = np.argmax(output, -1)
        category = encoder.inverse_transform(output)
        return category