Passa ai contenuti principali

Post

Un esperimento no-code

Random Forest batte la rete neurale con Orange Data Mining.  Ho realizzato un semplice esperimento di classificazione supervisionata con Orange Data Mining, utilizzando il classico dataset Iris.  L’obiettivo era riconoscere automaticamente la specie di un fiore a partire da quattro misure: lunghezza e larghezza del sepalo, lunghezza e larghezza del petalo. L’aspetto più interessante è che l’intero esperimento è stato costruito in modalità no-code: nessuna riga di Python, nessuno script, nessuna programmazione manuale.  Il flusso di lavoro è stato creato collegando graficamente i widget di Orange: caricamento dati, preprocessing, modello, valutazione e matrice di confusione. In questo modo anche un’attività tipica del machine learning — addestrare e confrontare modelli predittivi — diventa accessibile attraverso un ambiente visuale. Ho confrontato i seguenti due modelli: Random Forest, un algoritmo di machine learning basato su un insieme di alberi decisionali. Neural Netw...
Post recenti

Un RAG su misura

I sistemi RAG ( Retrieval-Augmented Generation ) sono ormai uno standard: un modello linguistico non risponde più “a memoria”, ma recupera i frammenti di testo più pertinenti da una base documentale e li usa come contesto per generare la risposta.  Sulla carta il meccanismo è lineare: si dividono i documenti in chunk , si calcola la similarità vettoriale e si passa tutto al modello.  Nella pratica, costruirne uno da zero — anziché affidarsi a una libreria preconfezionata — è un esercizio che smonta parecchie certezze. La prima smentita riguarda il retrieval : si tende a pensare che sia solo una questione di vettori, distanze e similitudine del coseno. In realtà, il vero collo di bottiglia è quasi sempre a monte, nella segmentazione del testo.  Un chunk troppo corto perde il filo del discorso; uno troppo lungo diluisce la rilevanza metrica e introduce rumore. In un sistema fatto in casa l'impatto di queste scelte è immediato: se il recupero fallisce, quasi mai...

Un partner di peer-review

C'è un modo pigro di usare l'intelligenza artificiale: fare una domanda, leggere la risposta e fidarsi.  E c'è un modo emancipato: condurre un interrogatorio strutturato, in cui ogni prompt ha una funzione precisa e l'ultima parola spetta al tuo senso critico, non al modello. La differenza non è filosofica, è pratica. Un modello linguistico non è un database di fatti: è una mappa probabilistica di relazioni tra concetti .  Con una domanda generica, la risposta tende verso la media divulgativa — quella piena di analogie zoppe e semplificazioni che avete già letto e sentito mille volte.  Con un prompting strutturato, restringete lo spazio di campionamento verso i quadranti più densi e rigorosi di quella mappa. Ho messo alla prova per voi che mi seguite questo approccio su uno dei temi più maltrattati dalla divulgazione: l'entanglement quantistico. Ecco le sei mosse, in ordine, con il perché di ciascuna. Mossa 1 — Prima di costruire, bonifica il terreno Il primo prompt...

Il polo protagonista

Chi non ha visto nella sua vita almeno una volta l'insieme di Mandelbrot: quella figura nera contornata di filamenti psichedelici che è diventata l'icona non ufficiale del caos matematico. E pensare che basta una piccolissina modifica nella formula del frattale per ottenere un risultato visivo completamente diverso — con un comportamento geometrico quasi opposto. Il Mandelbrot classico nasce da una regola semplicissima: z(n+1) = z(n)² + c Si parte da z₀ = 0, si itera, e si guarda se la successione esplode o resta limitata. Punto per punto sul piano complesso, questo produce l'insieme che tutti conoscono. Nella versione che qui vi propongo, il quadrato è finito al denominatore: z(n+1) = 1/z(n)² + c Sembra un dettaglio, ma cambia la natura matematica dell'oggetto: non è più un polinomio ma una funzione razionale, con un polo in z = 0 (dove la formula esplode, essendo una divisione per zero). Per questo la successione non può più partire da z₀ = 0 come nel Mandelbrot origi...

Dall'idea al prototipo giocabile in tempo record

C'è un momento, nello sviluppo di un videogioco, in cui un'idea brillante rischia di spegnersi.  Non perché sia sbagliata, ma perché la distanza tra “ce l'ho in testa” e “lo posso provare” è troppo lunga. Servono ore di setup, righe di codice ripetitivo, una UI da cablare, sistemi da collegare.  Quando finalmente il prototipo gira, l'entusiasmo iniziale si è già raffreddato. È proprio qui che l'accoppiata tra un'IA agentica e un motore come Unity sta cambiando le regole del gioco. Unity è il mondo. È il motore che trasforma asset, fisica, luci e input in un'esperienza giocabile e multipiattaforma, dallo smartphone al desktop. Ti dà la scena, gli oggetti, il ciclo di gioco e un ecosistema enorme di risorse pronte all'uso. L'IA agentica è l'acceleratore. La differenza rispetto a un semplice assistente che suggerisce sta tutta in quell'aggettivo: un'IA agentica non si limita a proporre frammenti di codice, ma pianifica, esegue pa...

Fine-tuning locale di un modello linguistico

Fine-tuning locale di un modello linguistico: successi, limiti e lezioni apprese Ho fatto un nuovo fine-tuning su un piccolo modello linguistico locale. Non volevo limitarmi a dire: “ho addestrato un modello”. Volevo capire una cosa più importante: il nuovo addestramento migliora davvero le risposte? Per verificarlo ho costruito una pipeline completa. Prima ho preparato una serie di prompt di test. Poi ho interrogato il modello base e ho salvato le sue risposte in un file. Successivamente ho costruito un dataset in formato JSONL, con coppie istruzione-risposta, e ho eseguito un fine-tuning leggero tramite adapter. La tecnica usata è stata quella del fine-tuning parametrico efficiente , cioè un adattamento che non modifica tutto il modello, ma addestra solo piccoli componenti aggiuntivi. In pratica, il modello di partenza resta quasi invariato, mentre viene creato un piccolo adapter specializzato. Questo rende l’esperimento molto più leggero, adatto anche a un laptop di fasc...

Il sogno dell'automazione

Il fermento attorno all'Intelligenza Artificiale ha alimentato un mito pericoloso: l'idea che basti premere un bottone per ottenere sistemi complessi, sicuri e personalizzati. Nel mondo delle soluzioni locali e protette — come le architetture RAG (Retrieval-Augmented Generation) — questa è un'illusione. La verità è che l'indipendenza digitale non si compra un tanto al chilo e non tollera la pigrizia intellettuale. Sviluppare una pipeline che colleghi la conoscenza privata al web in totale sicurezza richiede competenza, adattamento e, soprattutto, la volontà di studiare. Chi cerca la soluzione pronta senza sforzo è destinato a fallire al primo aggiornamento software. Costruire un assistente che elabori dati offline non significa installare un'applicazione commerciale. Significa far dialogare componenti radicalmente diversi: file system, interpreti di codice, chiamate API locali e driver hardware. Ogni passaggio di questa catena rappresenta un potenziale p...