Scopri Polaris

Compliance & Certificazioni

Brand page

Artificial Intelligence

Trasformazione Digitale

Approfondimenti

Digital twin

Simulation

IoT

Big Data

Advanced Manufacturing

Additive Manufacturing

Cyber Security

Industria 4.0

Augmented Reality/Virtual Reality

Potenziare la catena del valore

Agricolture 4.0

Polaris

Ageria

Deepclever

Strategy

Software Aziendali

The Polaris AI Team

Change Management

Finance Consulting

Infrastructure Services

Zero Based Mindset

Supply Chain

L’incubo della Data Annotation: come mitigarlo con il Self-Supervised Learning

Intelligenza Artificiale, Ricerca & Sviluppo

Sentiamo frequentemente parlare di modelli di deep learning sempre più sofisticati, prodotti dalle grandi aziende tech del pianeta. Ma la possibilità di sfruttare modelli di intelligenza artificiale nella moltitudine di ambiti applicativi in cui potrebbero avere un impatto positivo è spesso ostacolata da un enorme problema, quello della Data Annotation. Nella sua forma più diffusa, il deep learning richiede una fase di addestramento supervisionata, in cui il modello di apprendimento impara a trovare correlazioni tra enormi quantità di dati di input ed etichette ad essi assegnati da esseri umani. Purtroppo, il processo di etichettatura di tali dati è molto dispendioso in termini di tempo, conoscenza e costi, a cui talvolta si aggiungono anche problemi legati alla privacy delle persone a cui appartengono o da cui sono stati generati i dati stessi. Ma come hanno fatto le big tech a mitigare questo problema? La risposta è il Self-Supervised Learning.

 

L’idea del Self-Supervised learning è quella di sfruttare le enormi quantità di dati non etichettati che vengono generati quotidianamente. In generale, il modello di apprendimento deve imparare a risolvere un task specifico, noto come downstream task, come ad esempio predirre la prossima parola che un utente sta per scrivere all’interno di una chat, o distinguere immagini di cani da immagini di gatti. Per imparare a distinguere cani da gatti in maniera supervisionata, un modello di deep learning dovrebbe essere addestrato tramite dati etichettati, come mostrato in Figura 1.

figura 1
Figura 1: – Apprendimento supervisionato per distinguere immagini di cani da immagini di gatti.
Come possiamo insegnare al modello a svolgere questo compito tramite il Self-Supevised Learning, riducendo così la quantità di dati che abbiamo bisogno di etichettare manualmente? In una prima fase, il modello di apprendimento viene addestrato per risolvere un pretext task, in cui i dati vengono pseudo-etichettati in maniera completamente automatica. Ad esempio, se il downstream task consiste nel distinguere cani da gatti, il pretext task potrebbe consistere nel predire di quanto è ruotata un’immagine generica di un animale (vedi Figura 2). In questo modo, le pseudo-etichette possono essere generate automaticamente: ogni immagine non etichettata che abbiamo a disposizione può essere ruotata in maniera casuale, associandole come etichetta il grado di rotazione ad essa applicato.
figura 2
Figura 2: Un esempio di pretext task.

Qual è il vantaggio di tutto ciò? Per imparare a risolvere il pretext task, ovvero riconoscere il grado di rotazione applicato all’immagine di un animale, il modello di deep learning dovrà imparare a riconoscere forme caratteristiche degli animali stessi: se riesci a riconoscere le orecchie di un gatto, ti sarà più facile capire di quanto esse siano ruotate all’interno di un’immagine che ti viene mostrata.

 

Grazie al pretext task, il modello impara quindi a riconoscere informazioni caratteristiche (features) dei dati di input, senza necessità di andarli ad etichettare manualmente. A questo punto, come mostrato in Figura 3, non ci resta che effettuare un processo chiamato fine tuning: ci basta un numero relativamente basso di dati etichettati per insegnare al modello a sfruttare le features che è già in grado di estrarre dai dati di input per risolvere il nostro downstream task.

figura 3
Figura 3: Esempio di fine tuning su un modello pre-addestrato tramite Self-Supervised Learning
In conclusione, abbiamo visto come il Self-Supervised Learning può essere sfruttato per mitigare il problema della Data Annotation quando abbiamo necessità di addestrare un modello di deep learning. La maggior parte dei più recenti modelli presentati dalle big tech (vedi ad esempio i Large Language Models alla base di ChatGPT) sfruttano proprio questo meccanismo per permettere al modello di apprendimento di imparare da enormi quantità di dati che non necessitano di essere etichettati a mano.
AI Generativa: cos’è, come funziona e casi d’uso

AI Generativa: cos’è, come funziona e casi d’uso

Dall’uscita di ChatGPT a Novembre 2022, l’AI generativa è il discorso più sentito negli ufficio: “Ma lo usi?”, “E cosa ci fai?" ... Cerchiamo di fare un po' di chiarezza! Introduzione all'Intelligenza Artificiale Generativa Nel vasto campo dell'intelligenza...

leggi tutto
Simulation

Simulation

Simulazione tra macchine interconnesse per ottimizzare i processi Sistemi di simulazione per l’analisi e l’ottimizzazione dei processi, con possibilità di essere interconnesse agli impianti/macchine. Il concetto di simulazione è legato a quello di “Fabbrica digitale“....

leggi tutto
Cyber physical system

Cyber physical system

La sinergia tra tecnologie IoT e Big Data è una delle basi della Cyber-Physical Convergence (e dei corrispondenti Cyber-Physical Production Systems – CPPS). La Cyber Physical Convergence è caratterizzata da un processo circolare (Information Value Loop) tra il mondo...

leggi tutto
Deep Learning e dataset sintetici

Deep Learning e dataset sintetici

Come affrontare la mancanza di dati In applicazioni come Industria 4.0, non sempre i dati disponibili rispondono alle necessità delle strutture algoritmiche complesse, né riportano labeling corretti. Ecco perché si ricorre a dati sintetici, per sopperire a tutte...

leggi tutto