Uma abordagem comum à classificação de texto é treinar um classificador a partir de um 'saco de palavras'. O usuário leva o texto para ser classificado e conta as frequências das palavras em cada objeto, seguido por algum tipo de corte para manter a matriz resultante de um tamanho gerenciável.
Muitas vezes, vejo usuários construindo seu vetor de recurso usando o TFIDF. Em outras palavras, as frequências de texto mencionadas acima são ponderadas pela frequência das palavras em corpus. Entendo por que o TFIDF seria útil para selecionar as palavras 'mais distintivas' de um determinado documento para, digamos, exibir a um analista humano. Mas, no caso de categorização de texto usando técnicas padrão de supervisão supervisionada, por que se preocupar em diminuir o peso pela frequência de documentos no corpus? O próprio aluno não decidirá a importância de atribuir a cada palavra / combinação de palavras? Ficaria grato por seus pensamentos sobre o valor que as IDF agregam, se houver.
No caso típico, você pode ter muito mais documentos em seu corpus do que documentos rotulados. Isso significa que o IDF pode ser calculado de maneira muito mais precisa e completa ao usar todo o corpus.
Em seguida, considere o caso em que o corpus no qual você pode colocar as mãos até agora está todo rotulado ou o subconjunto rotulado é "grande o suficiente". Nesse caso, o número de iterações necessárias para o treinamento poderia ser menor ao usar o TfIDF, porque o algoritmo de aprendizado não precisaria aprender tanto.
Finalmente, nesse mesmo caso, você também pode fornecer tf somente, ou tf e idf separadamente (ou até incluir tfidf também). Eu acho que isso poderia gerar melhores resultados, por exemplo, ao usar uma função sofisticada do kernel.
fonte