1
resposta

classificação não supervisionada

Boa noite.

Pelo que vi, foi feita uma classificação supervisionada. Quais são as melhores técnicas para fazer uma classificação não supervisionada? Por exemplo, se eu tiver um dataset sem nenhuma classificação de pos ou neg, como faço para, a partir dos textos, conseguir extrair/classificar o sentimento?

1 resposta

Olá Victor, tudo bem ? Espero que sim.

Um caminho que eu tentei foi aplicar o KMeans que aprendemos no curso Machine Learning: Introdução a algoritmos não supervisionados, e coloquei o numero de n_clusters em dois, pensando que os grupos que ele separou vão ser o pos e neg.

# teste text_pt
tfidf = TfidfVectorizer(lowercase=False, ngram_range = (1,2))
vetor_tfidf = tfidf.fit_transform(resenha["text_pt"])
treino, teste, classe_treino, classe_teste = train_test_split(vetor_tfidf,
                                                              resenha["classificacao"],
                                                              random_state = 42)

Partindo desse código feito pelo instrutor, importei o KMeans e treinei com os dados treino.

from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters=2, random_state=0).fit(treino)

Eu rodei esse código no colab e demorou horas : /

Depois de treinado, peguei os dados de teste e rodei o predict, tendo os resultados peguei a quantidade previsões que eram igual as classes de teste e dividi pela quantidade de amostras:

previsao = kmeans.predict(X=teste)
quantidade = len(previsao)
acertos = sum((classe_teste == previsao))
score = acertos/quantidade * 100
score 

Tive um score bem baixo:

45.175899716942986

Se eu tivesse usado os dados tratados provavelmente teria um resultado um pouco melhor.

Me diz se faz sentido para você o que eu propus, lembrando que na documentação do sklearn.cluster encontramos diversas opções de algoritmos de agrupamento não supervisionado.

Espero ter ajudado, qualquer duvida não hesite em perguntar.

OBS: Encontrei esse notebook no kaggle onde o autor propõem explorar descrições de vinho utilizando NLP e kMenas.

Bons Estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software