Usando o TF-IDF com outros recursos no SKLearn


8

Qual é a melhor / maneira correta de combinar a análise de texto com outros recursos? Por exemplo, eu tenho um conjunto de dados com algum texto, mas também outros recursos / categorias. O vetorizador TF-IDF do SKlearn transforma dados de texto em matrizes esparsas. Eu posso usar essas matrizes esparsas diretamente com um classificador Naive Bayes, por exemplo. Mas como também levar em conta os outros recursos? Devo desesparsificar a representação tf-idf do texto e combinar os recursos e o texto em um DataFrame? Ou posso manter a matriz esparsa como uma coluna separada, por exemplo? Qual é a maneira correta de fazer isso?

Respostas:



3

Normalmente, se possível, você deseja manter sua matriz escassa o maior tempo possível, pois economiza muita memória. É por isso que existem matrizes esparsas, afinal, por que se preocupar? Portanto, mesmo que seu classificador exija o uso de entrada densa, convém manter os recursos TFIDF escassos e adicionar os outros recursos a eles em um formato esparso. E somente então, torne a matriz densa.

Para fazer isso, você pode usar o scipy.sparse.hstack . Combina duas matrizes esparsas juntas por coluna. O scipy.sparse.vstack também existe. E, claro, o scipy também possui a versão não esparsa scipy.hstack e scipy.vstack

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.