Nel campo dell'apprendimento automatico, l'apprendimento multi-task (MTL)
è diventato una direzione di ricerca e sviluppo molto attesa. L'idea principale di questo approccio è quella di risolvere simultaneamente più compiti di apprendimento e di sfruttare i punti in comune e le differenze tra i compiti. Rispetto all'addestramento del solo modello, MTL può migliorare significativamente l'efficienza dell'apprendimento e la precisione delle previsioni. Le prime versioni dell'apprendimento multi-task erano chiamate "suggerimenti" e furono proposte per la prima volta da Rich Caruana nel 1997, nel suo articolo che descriveva come MTL migliora la generalizzazione mediante l'apprendimento in parallelo e la condivisione delle rappresentazioni.
"L'apprendimento multi-task è un metodo per migliorare il ragionamento sfruttando le informazioni di dominio dai segnali di addestramento di attività correlate come un bias di inferenza."
Nel contesto della classificazione, l'apprendimento multi-task mira a migliorare l'esecuzione di più attività di classificazione mediante l'apprendimento congiunto. Ad esempio, per un filtro antispam per diversi utenti, ogni utente potrebbe avere una distribuzione diversa delle funzionalità per l'identificazione dello spam. Per chi parla inglese, tutte le e-mail in russo potrebbero essere considerate spam, ma questo non vale per chi parla russo. Tuttavia, in questo compito di classificazione sono ancora evidenti delle caratteristiche comuni, come ad esempio i simboli di testo correlati al trasferimento di denaro. Risolvendo congiuntamente i problemi di classificazione dello spam di ciascun utente tramite MTL, le soluzioni possono influenzarsi a vicenda, migliorando così le prestazioni.
Tuttavia, una sfida fondamentale nell'apprendimento multi-task risiede nel modo in cui integrare i segnali di apprendimento provenienti da più attività in un unico modello. Questa parte dipende in larga misura dalla coerenza o contraddizione tra i diversi compiti. Nel contesto di MTL, le informazioni possono essere condivise selettivamente in base alla pertinenza del compito.
"Le informazioni vengono estratte attraverso la combinazione e la sovrapposizione di attività e i dati possono essere condivisi selettivamente in base alla struttura delle dipendenze delle attività."
In particolare, le attività possono essere raggruppate in base a una metrica generale oppure essere organizzate in una gerarchia. Ad esempio, il vettore dei parametri di ogni attività può essere modellato come una combinazione lineare di una base. La sovrapposizione delle attività correlate mostra i punti in comune tra le attività, in base ai quali la combinazione di attività può essere eseguita in un sottospazio generato da un certo elemento di base. In una struttura di questo tipo, i diversi compiti possono essere separati o sovrapposti.
Oltre alle attività correlate, MTL può sfruttare anche il potenziale di attività non correlate. Utilizzando attività ausiliarie non correlate, indipendentemente dalla loro natura, possiamo comunque trarre vantaggio dall'apprendimento congiunto nelle nostre applicazioni. Il ragionamento alla base di ciò è che la conoscenza pregressa delle correlazioni tra le attività può portare a una rappresentazione più scarna e informativa per ciascuna combinazione di attività.
"Negli esperimenti con dati sia sintetici che reali, i modelli che includono attività non correlate superano significativamente i metodi di apprendimento multi-attività standard."
Strettamente correlato all'apprendimento multi-task è il concetto di trasferimento della conoscenza. L'apprendimento multi-task tradizionale implica lo sviluppo di rappresentazioni condivise tra le attività in parallelo, mentre il trasferimento delle conoscenze implica una rappresentazione condivisa sequenziale. Nelle applicazioni pratiche, progetti di apprendimento automatico su larga scala come la rete neurale convoluzionale profonda GoogLeNet possono sviluppare rappresentazioni robuste, che saranno di grande aiuto nell'apprendimento di ulteriori algoritmi per attività correlate.
Ad esempio, i modelli pre-addestrati possono essere utilizzati come estrattori di caratteristiche per eseguire la preelaborazione di altri algoritmi di apprendimento. Oppure i modelli pre-addestrati possono essere utilizzati per inizializzare modelli con strutture simili e poi perfezionati per apprendere diverse attività di classificazione.
In alcuni casi, l'allenamento simultaneo di attività apparentemente correlate può ostacolare le prestazioni rispetto ai modelli basati su un'unica attività. Per risolvere questi conflitti, è necessario utilizzare vari metodi di ottimizzazione MTL per ridurre al minimo l'impatto di questo problema. In generale, per ogni attività, i gradienti calcolati vengono infine uniti in una direzione di aggiornamento congiunta attraverso vari algoritmi di aggregazione o metodi euristici.
Con il progresso della tecnologia e la ricerca approfondita sull'apprendimento multi-task, non possiamo fare a meno di chiederci: in che modo l'apprendimento multi-task migliorerà ulteriormente l'accuratezza e l'ambito di applicazione dei nostri modelli di apprendimento automatico in futuro?