O problema que estou enfrentando é categorizar textos curtos em várias classes. Minha abordagem atual é usar frequências de termo ponderadas tf-idf e aprender um classificador linear simples (regressão logística). Isso funciona razoavelmente bem (cerca de 90% da macro F-1 no conjunto de testes, quase 100% no conjunto de treinamento). Um grande problema são as palavras não vistas / n-gramas.
Estou tentando melhorar o classificador adicionando outros recursos, por exemplo, um vetor de tamanho fixo calculado usando semelhanças de distribuição (conforme calculado pelo word2vec) ou outros recursos categóricos dos exemplos. Minha idéia era apenas adicionar os recursos aos recursos de entrada esparsos do pacote de palavras. No entanto, isso resulta em pior desempenho no conjunto de teste e treinamento. Os recursos adicionais, por si só, fornecem cerca de 80% de F-1 no conjunto de teste, para que não sejam lixo. Escalar os recursos também não ajudou. Meu pensamento atual é que esse tipo de recurso não se mistura bem com o pacote (esparso) de recursos de palavras.
Portanto, a pergunta é: supondo que os recursos adicionais forneçam informações adicionais, qual é a melhor maneira de incorporá-los? Poderia treinar classificadores separados e combiná-los em algum tipo de trabalho de conjunto (isso provavelmente teria a desvantagem de que nenhuma interação entre os recursos dos diferentes classificadores poderia ser capturada)? Existem outros modelos mais complexos que devo considerar?