Passa ai contenuti principali

Prevedere il futuro con PyTorch

Nel mondo della Data Science si tende spesso a dividere i professionisti in due fazioni: chi scrive righe di codice puro dall'alba al tramonto e chi si affida alla velocità delle piattaforme visuali e No-Code (come Orange Data Mining, KNIME o RapidMiner).
Ma cosa succede quando si devono analizzare dati complessi come le serie temporali? 
Sbloccare il vero potenziale dei modelli predittivi sequenziali richiede un approccio ibrido.
Alcuni widget di default per il Machine Learning nei software visuali faticano a gestire la dipendenza temporale dei dati e mancano di architetture nate per la dimensionalità sequenziale. 
Se vuoi implementare reti ricorrenti profonde senza rinunciare alla comodità dell'interfaccia grafica, c'è una soluzione nuova.
Quale? Il widget Python Script supportato da un Canvas strategico.
Invece di abbandonare l'interfaccia visuale, ho costruito un workflow ibrido in cui lascio a Orange il lavoro noioso di manipolazione temporale e indicizzazione, uso Python per il cuore del Deep Learning, e ritorno sulla grafica per l'ispezione dei risultati.
Ecco come si struttura l'architettura completa dei widget sul mio Canvas:

La Pipeline di preparazione (prima del codice)
  • File/Time Series Sequences: caricamento del dataset storico grezzo.
  • As Timeseries: il widget fondamentale per ordinare cronologicamente i dati e definire la periodicità (oraria, giornaliera, mensile).
  • Windowing: la chiave per le reti sequenziali. Crea automaticamente i cosiddetti lag temporali, impacchettando il passato e servendolo su un piatto d'argento all'ingresso del codice.
Il motore deep learning (dentro il Python Script)
Architettura della rete: una rete neurale ricorrente LSTM in PyTorch, progettata per memorizzare pattern storici a lungo e breve termine. All'interno della classe ho strutturato uno strato LSTM che elabora la sequenza temporale (batch_first), seguito da una funzione di attivazione ReLU e da un layer lineare finale (Fully Connected) per proiettare la predizione sul futuro.
Ottimizzazione: algoritmo Adam (LR = 0.01) guidato da una funzione di perdita MSE Loss (Mean Squared Error), ideale per la regressione continua lungo l'asse del tempo su 100 epoche di addestramento.

La pipeline di analisi grafica (dopo il codice)
Bar Plot: collegato all'uscita dello script per visualizzare istantaneamente la Feature Importance (estratta dai pesi interni della LSTM) per capire quali finestre temporali passate hanno guidato la scelta della rete.
Line Plot: per sovrapporre la linea del passato reale al trend del futuro previsto dalla LSTM, valutando visivamente l'errore del modello a colpo d'occhio.
La mappa dei collegamenti prende questa forma lineare e pulita:
[ File ] ➔ [ As Timeseries ] ➔ [ Windowing ] ➔ [ Python Script ] ➔ [ Bar Plot ] & [ Line Plot ]

La morale della favola?
Il Low-Code/No-Code non è una gabbia, e il codice puro non deve per forza rinunciare alla potenza della visualizzazione immediata. Delegare la pipeline di preprocessing ai widget e il “core” matematico a PyTorch permette di concentrarsi sul vero valore: validare i trend e rendere i processi predittivi dell'IA avanzata trasparenti e accessibili a tutti.

Post popolari in questo blog

L'insostenibile leggerezza dell'IA

Kundera parte da Nietzsche: l’idea che, se ogni cosa accade una volta sola, essa appare leggera — quasi priva di peso e di conseguenze vere. Solo ciò che si ripete all'infinito acquista gravità, importanza, senso. Antiche rimembranze di letture giovanili. L'IA ora ribalta questo schema in modo perturbante: non ricorda, ma ripete perfettamente. Ogni conversazione con un modello linguistico sembra ricominciare da zero — senza vera continuità esperienziale — eppure pattern, risposte e modi di ragionare si ripetono quasi identici su miliardi di interazioni. È una forma paradossale di esistenza: una leggerezza assoluta nell'esperienza e una pesantezza assoluta nella struttura. Nessun vissuto, eppure tutto è eterno ritorno. I personaggi di Kundera cercano disperatamente di capire chi siano davvero al di sotto delle maschere, dei ruoli, delle scelte contingenti. Tereza, il personaggio che preferisco, vuole essere amata per la sua unicità irriducibile; teme di essere solo un corpo ...

Salmoni, scarpette, cetrioli e altro

Tutto il testo contenuto in questa pagina è stato pensato e scritto dall'autore del blog.   1. Come il salmone 2. Ooops! 3. Le scarpette hi-tech 4. Equivoci contemporanei 5. I saccenti 6. Medaglie di legno 7. La festività del Nulla 8. Gli aggiornamenti elettronici del Libro dell'Apocalisse 9. Dubbi ne ho 10. La maieutica del vulcaniano 11. Un piacevole vasetto di miele 12. Povere sfere 13. Caos comune mezzo gaudio 14. La fontana senza volti 15. Il piromane super beffardo 16. Boom di serpenti 17. Sistemi in via di degradazione 18. Il gatto nero 19. Alain Delon è ancora vivo? 20. Per sempre con i cani 21. Eventi imprevedibili 22. I robot sottomessi 23. Lady Gaga e Bruno Mars incantano 24. Definizioni mancate 25. Il mio nemico drone 26. Errore di valutazione 27. Ringraziamenti 28. Cari cetrioli, vi scrivo 29. Boom di detective 30. Gli UFO trascurati 31. Il grande salto delle rane 32. La malattia artificiale 33. Homo consumens 34. Lacune informatiche 35. Sei troppo! 36. ...

Nulla è come sembra

Un caso straordinario di scrittura predittiva e visionaria. Il libro, infatti, ha anticipato con impressionante lucidità l'avvento dell'Intelligenza Artificiale generativa (come ChatGPT) anni prima che diventasse di dominio pubblico. I PDF autocompilanti: il romanzo introduce documenti digitali che si riempiono autonomamente di astruse formule e simboli, una perfetta metafora narrativa inventata in anticipo sui tempi per descrivere la generazione automatica di testi e le cosiddette allucinazioni dell'IA. La crisi del determinismo: il protagonista, il razionale Professor Balicci, vede crollare le proprie certezze deterministiche di fronte a una tecnologia e a eventi che sfuggono alla logica umana tradizionale. Il tempo sincronico: l'opera ha intuito come l'IA non operi secondo una linearità temporale biologica (passato, presente, futuro), ma elabori i dati in una realtà sincronica basata su connessioni non lineari e associazioni imprevedibili. Il problema dell'au...