Tensor Network Kernel Machines: A JAX Framework for Machine Learning and Nonlinear System Identification
Questo articolo introduce "tnkm", una libreria Python open-source basata su JAX che consente la costruzione e l'addestramento di macchine a kernel di reti tensoriali espressive ma computazionalmente efficienti per l'identificazione di sistemi non lineari attraverso un'interfaccia unificata che supporta diversi feature map, architetture e strategie di ottimizzazione.
Articolo originale sotto licenza CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Questa è una spiegazione generata dall'IA dell'articolo qui sotto. Non è stata scritta né approvata dagli autori. Per precisione tecnica, consulta l'articolo originale. Leggi il disclaimer completo
Immagina di cercare di insegnare a un computer come prevedere il futuro, che si tratti di indovinare la nota successiva in una canzone, di prevedere il tempo o di controllare il braccio di un robot. Per farlo, il computer deve capire come diversi input (come la velocità del vento o il movimento di un joystick) si trasformino in output (come la formazione di una nuvola o la rotazione di una ruota). La parte difficile è che il mondo reale raramente è una linea retta; è pieno di curve, loop e salti improvvisi. Questo è il mondo dei "sistemi non lineari".
Per decenni, gli scienziati hanno cercato di costruire modelli in grado di gestire queste curve. Alcuni modelli sono come enormi e disordinate biblioteche che possono ricordare tutto ma impiegano un'eternità per trovare un libro (sono accurati ma lenti). Altri sono come piccole e veloci tessere con flashcard che sono rapide da leggere ma potrebbero perdere di vista il quadro generale (sono veloci ma non molto intelligenti). La grande sfida nel machine learning è trovare un modo per avere il meglio di entrambi i mondi: un modello che sia abbastanza intelligente da comprendere curve complesse, ma abbastanza piccolo e veloce da poter girare su un normale laptop senza farlo fondere. È qui che entra in gioco un'idea astuta chiamata "tensor networks" (reti tensoriali). Pensa a una rete tensoriale come a un modo per ripiegare una mappa massiccia e ingombrante in una piccola e compatta gru di origami che conserva ancora tutte le direzioni importanti.
In questo articolo, gli autori Albert Saiapin e Kim Batselier introducono un nuovo strumento software open-source chiamato tnkm (Tensor Network Kernel Machines). Hanno costruito questo strumento per rendere molto più facile per chiunque costruire e addestrare questi modelli "origami" utilizzando un potente linguaggio di programmazione chiamato JAX. Prima di allora, costruire questi modelli era come cercare di montare un mobile complesso senza un manuale o gli strumenti giusti; era possibile, ma frustrante e limitato agli esperti. Gli autori hanno creato un "coltellino svizzero" per questi modelli, permettendo agli utenti di mescolare e abbinare diversi tipi di "feature maps" (il modo in cui il computer vede i dati) con diversi "tensor networks" (il modo in cui il computer memorizza le regole) e "metodi di ottimizzazione" (il modo in cui il computer impara).
L'articolo non si limita a sostenere che questo strumento funzioni; lo mette alla prova. Hanno addestrato questi modelli su diversi problemi "benchmark" famosi, che sono come puzzle matematici standardizzati usati per vedere quanto sia bravo un computer a imparare. In un test riguardante il rumore di un'ala di un aereo, hanno scoperto che il loro metodo poteva apprendere il pattern altrettanto bene dei metodi pesanti e lenti, ma ha completato il lavoro in circa 1 secondo invece di minuti. In altri test riguardanti serbatoi di fluidi e motori elettrici, il nuovo strumento ha eguagliato l'accuratezza di complessi modelli "black-box", ma con una frazione della potenza di calcolo. Gli autori dimostrano che, utilizzando queste strutture matematiche compatte e ripiegate, è possibile ottenere previsioni ad alta precisione senza la necessità di un supercomputer. Hanno anche confrontato due modi per insegnare al modello: uno che risolve la matematica passo dopo passo (chiamato Alternating Least Squares) e uno che utilizza un approccio più generale basato su tentativi ed errori (ottimizzazione basata sul gradiente). Hanno scoperto che il metodo passo dopo passo era spesso molto più veloce e stabile per questi specifici tipi di problemi, sebbene il metodo basato su tentativi ed errori offra maggiore flessibilità per diversi tipi di compiti.
In definitiva, l'articolo suggerisce che questo nuovo framework rende possibile la costruzione di modelli potenti ed efficienti per cose come la robotica e il controllo di processo senza restare intrappolati nella complessità computazionale. È un passo verso il rendere il machine learning avanzato accessibile, riproducibile e pratico per risolvere problemi del mondo reale che coinvolgono dati non lineari e disordinati.
Sommerso dagli articoli nel tuo campo?
Ricevi digest giornalieri degli articoli più recenti corrispondenti alle tue parole chiave di ricerca — con riassunti tecnici, nella tua lingua.