Il problema che sto affrontando sta classificando brevi testi in più classi. Il mio approccio attuale è quello di utilizzare le frequenze dei termini ponderate tf-idf e apprendere un semplice classificatore lineare (regressione logistica). Funziona abbastanza bene (circa il 90% di macro F-1 sul set di test, quasi il 100% sul set di allenamento). Un grosso problema sono le parole invisibili / n-grammi.
Sto cercando di migliorare il classificatore aggiungendo altre funzionalità, ad esempio un vettore di dimensioni fisse calcolato usando somiglianze distributive (come calcolato da word2vec) o altre caratteristiche categoriche degli esempi. La mia idea era quella di aggiungere solo le funzionalità alle funzioni di input sparse dal sacco di parole. Tuttavia, ciò comporta prestazioni peggiori sul set di test e di allenamento. Le funzioni aggiuntive forniscono da sole circa l'80% di F-1 sul set di test, quindi non sono spazzatura. Anche il ridimensionamento delle funzionalità non ha aiutato. Il mio pensiero attuale è che questo tipo di caratteristiche non si mescolano bene con le caratteristiche (sparse) delle parole.
Quindi la domanda è: supponendo che le funzionalità aggiuntive forniscano informazioni aggiuntive, qual è il modo migliore per incorporarle? Potrebbe addestrare classificatori separati e combinarli in una sorta di lavoro d'insieme (questo avrebbe probabilmente lo svantaggio di non poter catturare l'interazione tra le caratteristiche dei diversi classificatori)? Ci sono altri modelli più complessi che dovrei considerare?