SlideShare a Scribd company logo
Intelligenza artificiale e testo
a cura di: Andrea Guzzo
Che funziona…
at reasonable scale…
Ciao Commit University!
I'm Andrea Guzzo:
- AI Technical Leader @MDPI
- Organizer @PythonBiellaGroup
- Nerd @ByNight
- Sometimes @ComputerScientist
Trying to follow the PEP8 way..
Reach me:
- https://linktr.ee/jeydi92
Grazie di avermi invitato e grazie di essere qui!!!
È vero che solo le big tech possono fare "intelligenza artificiale"?
Di cosa parliamo?
● Cosa vuol dire NLP?
● Qual è lo stato dell’arte dell’Intelligenza Artificiale?
● Quali sono i modelli più utilizzati? Che problemi si possono risolvere?
● Come si può realizzare un Sistema di Intelligenza Artificiale che utilizza il testo
e il linguaggio naturale?
● Facciamo qualche esempio!
NLP, cosa vuol dire?
Cosa vuol dire fare NLP?
- Processare differenti formati di testo scritti in linguaggio naturale in modo che
siano comprensibili da una macchina
- Utilizzare il testo per estrarre informazioni utili tramite l'impiego di algoritmi.
Il linguaggio naturale comporta moltissimi problemi
Un po' di storia
3 / 5 anni fa il mio attuale lavoro non esisteva
Quanto testo "digitale" esiste ora? Quanto è grande il "web" adesso?
Cosa sta succedendo adesso?
https://openai.com/dall-e-2/
https://www.midjourney.com/home/
https://github.com/features/copilot
https://openai.com/blog/whisper/
https://www.theverge.com/2022/9/29/23378210/meta-text-to-video-ai-generation-
make-a-video-model-dall-e
● Ma ci sono sempre gli umani!
Cosa sta succedendo adesso?
● È una beta
● È GPT
● È GROSSO (175 miliardi di parametri)
● È probabilistico e molto arrogante
● Funziona bene su cose semplici
● Sbaglia ancora tanto
● Non è aggiornato
● Potrebbe essere rivoluzionario (però è figo)
Algoritmi e modelli
Quali sono e quali problemi risolvono?
Che problemi posso risolvere?
https://paperswithcode.com/
Si ma concretamente, cosa si può fare?
A partire da degli articoli scientifici (papers e journals):
● Trovare delle similarità semantiche: Article Similarity
● Trovare simili autori e revisori per gli articoli: Peer Reviewer Finder
● Capire di cosa parlano certi articoli: Topic Finder, Article Summarization
● Raggruppare articoli simili: Article Clustering
● Estrarre parole chiave: Topic Modelling
● Capire se ci sono delle copiature o dei problemi: Ethical Project
● Migliorare il processo di revisione manuale: Regole sintattiche e sematiche (POS)
● Suggerire riviste e articoli agli utenti: Finder
● Creare dashboard per l'analisi dei dati
● E tanto tanto altro ancora…
Facciamo qualche esempio!
https://app.scilit.net/publications/2f886c5a1a8858cba1e81d837276cf1c
Di quali algoritmi stiamo parlando?
BERT Model
Word Embeddings
https://medium.com/@hari4om/word-embedding-d816f643140 https://jalammar.github.io/illustrated-bert/
Di quali algoritmi stiamo parlando?
Transformer!
https://jalammar.github.io/illustrated-transformer/ https://jalammar.github.io/how-gpt3-works-visualizations-animations/
Che problemi posso risolvere?
Alcuni concetti fondamentali…
● Algoritmi addestrati da altri: Pre-addestrati
● Modelli pre-addestrati sono molto difficili da addestrare e serve tanto corpus
● Grazie al transfer learning è possibile specializzare gli algoritmi pre addestrati
● È possibile condividere modelli pre addestrati
● Specializzare un algoritmo sui tuoi dati: fine tuning
● Alla fine si ottengono degli embeddings (vettori in uno spazio)
● È possibile applicare della «matematica» agli embeddings per fare calcoli (similarità)
https://huggingface.co/
NLP!
Come si può fare per davvero?
Anatomie delle aziende
● Come faccio a valorizzare i dati e le informazioni che ho a disposizione?
● Posso realizzare anche io un progetto Dati (Science, AI) che funziona davvero?
Ma non dimentichiamo mai
Ogni azienda è unica perchè ha dati unici e persone uniche
I dati sono più importanti degli oggetti che li hanno creati:
- Le informazioni estratte valgono più dei dati
- La conoscenza vale più dell'informazione
- La saggezza ricavata ha un valore inestimabile
“Ogni azienda è una società di analisi dati” Amir Orad, Forbes Feb. 2020
“Chi controlla la spezia controlla l'universo!” Baron Vladimir Harkonnen
Reasonable Scale
Criteri:
- Computazione: hanno una disponibilità limitata di budget per la computazione, non un intero data
center a disposizione
- Grandezza del team: hanno dozzine di ingegneri, non centinaia
- Ricavato: hanno fatturati da milioni all'anno, non miliardi (e magari la tecnologia non è il loro core
business)
- Dati: hanno una disponibilità limitata di datasets (terabytes-sized), non petabytes.
- Impatto: non utilizzano Data Science come strumento quotidiano nel loro lavoro
Jacopo Tagliabue (Adjunct Professor NYU) - StanfordMLSysSeminars
Come possiamo trovare una soluzione e fare un progetto?
Siamo "data people", quindi il nostro compito è quello di creare qualcosa
che abbia un valore (per davvero).
La risposta: Non abbiamo bisogno di una barca più grande!
● Il dato è il Re: ossessionati con la qualità del dati, perchè è il punto in cui il guadagno è maggiore
○ Corollario: importante prima investire in Data Engineers (più che in) Data Scientists
● PaaS è meglio di Iaas: Il tempo è spesso la risorsa più scarsa e ci sono molte soluzioni e strumenti che ci
possono semplificare la vita, usiamole!
○ Corollario = less is more e KISS: non scrivere codice che altri hanno già scritto
● Sforzarsi di essere "agili": L'archiviazione intelligente dei dati, moderni computer portatili, accesso
facilitato alle risorse "scalable computing" è tutto quello di cui c'è bisogno
○ Corollary: il calcolo distribuito (ad esempio Spark) è la radice di tutti i mali
Jacopo Tagliabue (Adjunct Professor NYU) - StanfordMLSysSeminars
Come possiamo trovare una soluzione?
● General trend 1: I modelli sono diventati delle commodities (es: computer vision e NLP),
le pipelines di gestione dei dati rappresentano il vantaggio competitivo (ma fa meno figo)
● General trend 2: al di là di alcuni giganti tecnologici il 95% (ma anche il 99%) degli strumenti,
delle necessità e dei modelli possono essere risolti con strumenti off-the-shelf (principalmente
open source)
Facciamo un esempio!
Reasonable scale: per noi!
Come abbiamo costruito i nostri progetti?
- Partire con il team: creare una metodologia di lavoro che funzioni bene per il
tuo team, coinvolgere sempre il "gestore" dei dati e l'utente finale nel processo.
Bisogna costruire qualcosa che funzioni!
- Creare building blocks: partire dai fondamentali, creare semplici template e generalizzare il codice
per tutti i progetti.
- Get out of the building: bisogna andare in produzione subito, dal giorno 0
- Shiny object syndrome: l'ultimo modello o l'ultima tecnologia sul mercato non risolverà il tuo
problema nella maggior parte dei casi
- Nessuna scusa: se non puoi fare qualcosa, costruisci con quello che hai, e solitamente è più che
abbastanza.
- Deve funzionapre per gli utenti: alla fine, il progetto deve funzionare e deve essere utilizzato dagli
utenti
- Il "perchè" (la domanda di ricerca) è sempre il faro nella notte!
Workflow di lavoro
Architettura
Si, non c'è nessun
cloud qui :)
E adesso?
Cosa ci portiamo a casa?
Si può fare!
- Democratizzazione: al giorno d'oggi l'Intelligenza Artificiale è stata molto
"democratizzata"
- Non solo le big tech: tutti possono realizzare la propria soluzione (non serve una barca
sempre più grande)
- Giusta filosofia: Bisogna conoscere, approfondire, imparare (never ending learning), ma avendo la
giusta metodologia e filosofia di lavoro fin da subito
- Trovare la propria: "reasonable scale"
- Il mondo dell'Intelligenza Artificiale sta evolvendo tantissimo! Soprattutto in alcuni campi
- Attenzione: è un mondo vasto e ci si può perdere facilmente, se non sai cosa stai facendo
- Non cediamo alla fuffa… o a terminator!
Domande?
https://linktr.ee/jeydi92
Grazie!

More Related Content

What's hot

Language translator internship report
Language translator internship reportLanguage translator internship report
Language translator internship report
SumitSumit26
 
Introduction to Transformers for NLP - Olga Petrova
Introduction to Transformers for NLP - Olga PetrovaIntroduction to Transformers for NLP - Olga Petrova
Introduction to Transformers for NLP - Olga Petrova
Alexey Grigorev
 
Introduction to natural language processing, history and origin
Introduction to natural language processing, history and originIntroduction to natural language processing, history and origin
Introduction to natural language processing, history and origin
Shubhankar Mohan
 
Natural language processing (NLP) introduction
Natural language processing (NLP) introductionNatural language processing (NLP) introduction
Natural language processing (NLP) introduction
Robert Lujo
 
Natural Language Processing.pptx
Natural Language Processing.pptxNatural Language Processing.pptx
Natural Language Processing.pptx
PriyadharshiniG41
 
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?
たけおか しょうぞう
 
OpenAI’s GPT 3 Language Model - guest Steve Omohundro
OpenAI’s GPT 3 Language Model - guest Steve OmohundroOpenAI’s GPT 3 Language Model - guest Steve Omohundro
OpenAI’s GPT 3 Language Model - guest Steve Omohundro
Numenta
 
Conversational AI with Rasa - PyData Workshop
Conversational AI with Rasa - PyData WorkshopConversational AI with Rasa - PyData Workshop
Conversational AI with Rasa - PyData Workshop
Tom Bocklisch
 
Introduction to Natural Language Processing (NLP)
Introduction to Natural Language Processing (NLP)Introduction to Natural Language Processing (NLP)
Introduction to Natural Language Processing (NLP)
VenkateshMurugadas
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
saurabhnarhe
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
VeenaSKumar2
 
今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門
Masashi Umezawa
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
prashantdahake
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
Yasir Khan
 
Bleu vs rouge
Bleu vs rougeBleu vs rouge
Cargo makeを使ってみた話
Cargo makeを使ってみた話Cargo makeを使ってみた話
Cargo makeを使ってみた話
emakryo
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
Aanchal Chaurasia
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
KarenVacca
 
Introduction to natural language processing
Introduction to natural language processingIntroduction to natural language processing
Introduction to natural language processing
Minh Pham
 
From NLP to text mining
From NLP to text mining From NLP to text mining
From NLP to text mining
Yi-Shin Chen
 

What's hot (20)

Language translator internship report
Language translator internship reportLanguage translator internship report
Language translator internship report
 
Introduction to Transformers for NLP - Olga Petrova
Introduction to Transformers for NLP - Olga PetrovaIntroduction to Transformers for NLP - Olga Petrova
Introduction to Transformers for NLP - Olga Petrova
 
Introduction to natural language processing, history and origin
Introduction to natural language processing, history and originIntroduction to natural language processing, history and origin
Introduction to natural language processing, history and origin
 
Natural language processing (NLP) introduction
Natural language processing (NLP) introductionNatural language processing (NLP) introduction
Natural language processing (NLP) introduction
 
Natural Language Processing.pptx
Natural Language Processing.pptxNatural Language Processing.pptx
Natural Language Processing.pptx
 
どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?どうして昔の人は八進数でしゃべるのか?
どうして昔の人は八進数でしゃべるのか?
 
OpenAI’s GPT 3 Language Model - guest Steve Omohundro
OpenAI’s GPT 3 Language Model - guest Steve OmohundroOpenAI’s GPT 3 Language Model - guest Steve Omohundro
OpenAI’s GPT 3 Language Model - guest Steve Omohundro
 
Conversational AI with Rasa - PyData Workshop
Conversational AI with Rasa - PyData WorkshopConversational AI with Rasa - PyData Workshop
Conversational AI with Rasa - PyData Workshop
 
Introduction to Natural Language Processing (NLP)
Introduction to Natural Language Processing (NLP)Introduction to Natural Language Processing (NLP)
Introduction to Natural Language Processing (NLP)
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門今からでも遅くないSmalltalk入門
今からでも遅くないSmalltalk入門
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
 
Natural Language Processing
Natural Language ProcessingNatural Language Processing
Natural Language Processing
 
Bleu vs rouge
Bleu vs rougeBleu vs rouge
Bleu vs rouge
 
Cargo makeを使ってみた話
Cargo makeを使ってみた話Cargo makeを使ってみた話
Cargo makeを使ってみた話
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
 
Natural language processing
Natural language processingNatural language processing
Natural language processing
 
Introduction to natural language processing
Introduction to natural language processingIntroduction to natural language processing
Introduction to natural language processing
 
From NLP to text mining
From NLP to text mining From NLP to text mining
From NLP to text mining
 

Similar to Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale in produzione

From idea to concept - Todi Appy Days 2015
From idea to concept - Todi Appy Days 2015From idea to concept - Todi Appy Days 2015
From idea to concept - Todi Appy Days 2015
Todi Appy Days
 
Smart api
Smart apiSmart api
Smart api
Simone Romano
 
Stop Meeting, Start Coding!
Stop Meeting, Start Coding!Stop Meeting, Start Coding!
Stop Meeting, Start Coding!
Giulio Roggero
 
Intelligenza Artificiale e Robotica - Applicazioni industriali e responsabili...
Intelligenza Artificiale e Robotica - Applicazioni industriali e responsabili...Intelligenza Artificiale e Robotica - Applicazioni industriali e responsabili...
Intelligenza Artificiale e Robotica - Applicazioni industriali e responsabili...
Edoardo E. Artese
 
Il modello collaborativo dell'open source per lo sviluppo software
Il modello collaborativo dell'open source per lo sviluppo softwareIl modello collaborativo dell'open source per lo sviluppo software
Il modello collaborativo dell'open source per lo sviluppo software
Federico Gobbo
 
Francesco Liguori, Giuliano Liguori | Il Project Manager ai tempi dell'IA
Francesco Liguori, Giuliano Liguori | Il Project Manager ai tempi dell'IAFrancesco Liguori, Giuliano Liguori | Il Project Manager ai tempi dell'IA
Francesco Liguori, Giuliano Liguori | Il Project Manager ai tempi dell'IA
PMexpo
 
Introduzione al coding
Introduzione al codingIntroduzione al coding
Introduzione al coding
Paolo Righetto
 
Una fugace occhiata al Test Driven Development (2006)
Una fugace occhiata al Test Driven Development  (2006)Una fugace occhiata al Test Driven Development  (2006)
Una fugace occhiata al Test Driven Development (2006)
Roberto Bettazzoni
 
Analizza i tuoi dati con Intelligenza Artificiale
Analizza i tuoi dati con Intelligenza ArtificialeAnalizza i tuoi dati con Intelligenza Artificiale
Analizza i tuoi dati con Intelligenza Artificiale
Roberto Marmo
 
2016 Aica - Formazione Animatori Digitali Calabria
2016 Aica - Formazione Animatori Digitali Calabria2016 Aica - Formazione Animatori Digitali Calabria
2016 Aica - Formazione Animatori Digitali Calabria
GiovanniFabio
 
Alice in WordPressLand - "We're all mad here"
Alice in WordPressLand - "We're all mad here"Alice in WordPressLand - "We're all mad here"
Alice in WordPressLand - "We're all mad here"
Nicola Costantino
 
Workshop metodi e tecniche agili
Workshop metodi e tecniche agiliWorkshop metodi e tecniche agili
Workshop metodi e tecniche agiliFederico Gobbo
 
IoT Design Deck - Il metodo per il Co-Design della UX di prodotti e servizi c...
IoT Design Deck - Il metodo per il Co-Design della UX di prodotti e servizi c...IoT Design Deck - Il metodo per il Co-Design della UX di prodotti e servizi c...
IoT Design Deck - Il metodo per il Co-Design della UX di prodotti e servizi c...
Massimiliano Dibitonto
 
AICA Workshop 26 feb 2008 @ SIAM
AICA Workshop 26 feb 2008 @ SIAMAICA Workshop 26 feb 2008 @ SIAM
AICA Workshop 26 feb 2008 @ SIAMFederico Gobbo
 
Imparare con l'intelligenza artificiale
Imparare con l'intelligenza artificiale Imparare con l'intelligenza artificiale
Imparare con l'intelligenza artificiale
Andrea Povelato
 
Lean Web Solutions with WP [versione italiana]
Lean Web Solutions with WP [versione italiana]Lean Web Solutions with WP [versione italiana]
Lean Web Solutions with WP [versione italiana]
Carlo Beschi
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Commit University
 
Coding, pattern e pensiero computazionale
Coding, pattern e pensiero computazionaleCoding, pattern e pensiero computazionale
Coding, pattern e pensiero computazionale
Alessandri Giuseppe
 
L'avvento del programmatore sociale
L'avvento del programmatore socialeL'avvento del programmatore sociale
L'avvento del programmatore sociale
Marcello Missiroli
 
Intelligenza artificiale, robotica, rpa, machine learning Smau Bologna 2019
Intelligenza artificiale, robotica, rpa, machine learning Smau Bologna 2019Intelligenza artificiale, robotica, rpa, machine learning Smau Bologna 2019
Intelligenza artificiale, robotica, rpa, machine learning Smau Bologna 2019
Alberto Sarullo
 

Similar to Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale in produzione (20)

From idea to concept - Todi Appy Days 2015
From idea to concept - Todi Appy Days 2015From idea to concept - Todi Appy Days 2015
From idea to concept - Todi Appy Days 2015
 
Smart api
Smart apiSmart api
Smart api
 
Stop Meeting, Start Coding!
Stop Meeting, Start Coding!Stop Meeting, Start Coding!
Stop Meeting, Start Coding!
 
Intelligenza Artificiale e Robotica - Applicazioni industriali e responsabili...
Intelligenza Artificiale e Robotica - Applicazioni industriali e responsabili...Intelligenza Artificiale e Robotica - Applicazioni industriali e responsabili...
Intelligenza Artificiale e Robotica - Applicazioni industriali e responsabili...
 
Il modello collaborativo dell'open source per lo sviluppo software
Il modello collaborativo dell'open source per lo sviluppo softwareIl modello collaborativo dell'open source per lo sviluppo software
Il modello collaborativo dell'open source per lo sviluppo software
 
Francesco Liguori, Giuliano Liguori | Il Project Manager ai tempi dell'IA
Francesco Liguori, Giuliano Liguori | Il Project Manager ai tempi dell'IAFrancesco Liguori, Giuliano Liguori | Il Project Manager ai tempi dell'IA
Francesco Liguori, Giuliano Liguori | Il Project Manager ai tempi dell'IA
 
Introduzione al coding
Introduzione al codingIntroduzione al coding
Introduzione al coding
 
Una fugace occhiata al Test Driven Development (2006)
Una fugace occhiata al Test Driven Development  (2006)Una fugace occhiata al Test Driven Development  (2006)
Una fugace occhiata al Test Driven Development (2006)
 
Analizza i tuoi dati con Intelligenza Artificiale
Analizza i tuoi dati con Intelligenza ArtificialeAnalizza i tuoi dati con Intelligenza Artificiale
Analizza i tuoi dati con Intelligenza Artificiale
 
2016 Aica - Formazione Animatori Digitali Calabria
2016 Aica - Formazione Animatori Digitali Calabria2016 Aica - Formazione Animatori Digitali Calabria
2016 Aica - Formazione Animatori Digitali Calabria
 
Alice in WordPressLand - "We're all mad here"
Alice in WordPressLand - "We're all mad here"Alice in WordPressLand - "We're all mad here"
Alice in WordPressLand - "We're all mad here"
 
Workshop metodi e tecniche agili
Workshop metodi e tecniche agiliWorkshop metodi e tecniche agili
Workshop metodi e tecniche agili
 
IoT Design Deck - Il metodo per il Co-Design della UX di prodotti e servizi c...
IoT Design Deck - Il metodo per il Co-Design della UX di prodotti e servizi c...IoT Design Deck - Il metodo per il Co-Design della UX di prodotti e servizi c...
IoT Design Deck - Il metodo per il Co-Design della UX di prodotti e servizi c...
 
AICA Workshop 26 feb 2008 @ SIAM
AICA Workshop 26 feb 2008 @ SIAMAICA Workshop 26 feb 2008 @ SIAM
AICA Workshop 26 feb 2008 @ SIAM
 
Imparare con l'intelligenza artificiale
Imparare con l'intelligenza artificiale Imparare con l'intelligenza artificiale
Imparare con l'intelligenza artificiale
 
Lean Web Solutions with WP [versione italiana]
Lean Web Solutions with WP [versione italiana]Lean Web Solutions with WP [versione italiana]
Lean Web Solutions with WP [versione italiana]
 
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
Collaborazione, Decisionalità e Gestione della Complessità nel Tempo: cosa ...
 
Coding, pattern e pensiero computazionale
Coding, pattern e pensiero computazionaleCoding, pattern e pensiero computazionale
Coding, pattern e pensiero computazionale
 
L'avvento del programmatore sociale
L'avvento del programmatore socialeL'avvento del programmatore sociale
L'avvento del programmatore sociale
 
Intelligenza artificiale, robotica, rpa, machine learning Smau Bologna 2019
Intelligenza artificiale, robotica, rpa, machine learning Smau Bologna 2019Intelligenza artificiale, robotica, rpa, machine learning Smau Bologna 2019
Intelligenza artificiale, robotica, rpa, machine learning Smau Bologna 2019
 

More from Commit University

Alla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAGAlla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAG
Commit University
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
Commit University
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Commit University
 
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdfBreaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Commit University
 
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdfAccelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Commit University
 
Slide-10years.pdf
Slide-10years.pdfSlide-10years.pdf
Slide-10years.pdf
Commit University
 
Vue.js slots.pdf
Vue.js slots.pdfVue.js slots.pdf
Vue.js slots.pdf
Commit University
 
Commit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptxCommit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptx
Commit University
 
Sviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PASviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PA
Commit University
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Commit University
 
Prisma the ORM that node was waiting for
Prisma the ORM that node was waiting forPrisma the ORM that node was waiting for
Prisma the ORM that node was waiting for
Commit University
 
Decision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit UniversityDecision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit University
Commit University
 
Component Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdfComponent Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdf
Commit University
 
Prototipazione Low-Code con AWS Step Functions
Prototipazione Low-Code con AWS Step FunctionsPrototipazione Low-Code con AWS Step Functions
Prototipazione Low-Code con AWS Step Functions
Commit University
 
KMM survival guide: how to tackle struggles between Kotlin and Swift
KMM survival guide: how to tackle struggles between Kotlin and SwiftKMM survival guide: how to tackle struggles between Kotlin and Swift
KMM survival guide: how to tackle struggles between Kotlin and Swift
Commit University
 
Da Vuex a Pinia: come fare la migrazione
Da Vuex a Pinia: come fare la migrazioneDa Vuex a Pinia: come fare la migrazione
Da Vuex a Pinia: come fare la migrazione
Commit University
 
Orchestrare Micro-frontend con micro-lc
Orchestrare Micro-frontend con micro-lcOrchestrare Micro-frontend con micro-lc
Orchestrare Micro-frontend con micro-lc
Commit University
 
Fastify has defeated Lagacy-Code
Fastify has defeated Lagacy-CodeFastify has defeated Lagacy-Code
Fastify has defeated Lagacy-Code
Commit University
 
SwiftUI vs UIKit
SwiftUI vs UIKitSwiftUI vs UIKit
SwiftUI vs UIKit
Commit University
 
Alpine.js: the outsider Javascript framework
Alpine.js: the outsider Javascript frameworkAlpine.js: the outsider Javascript framework
Alpine.js: the outsider Javascript framework
Commit University
 

More from Commit University (20)

Alla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAGAlla scoperta dei Vector Database e dei RAG
Alla scoperta dei Vector Database e dei RAG
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdfBreaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
Breaking REST Chains_ A Fastify & Mercurius Pathway to GraphQL Glory.pdf
 
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdfAccelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
Accelerating API Development: A Pit Stop with Gin-Gonic in Golang-Slide.pdf
 
Slide-10years.pdf
Slide-10years.pdfSlide-10years.pdf
Slide-10years.pdf
 
Vue.js slots.pdf
Vue.js slots.pdfVue.js slots.pdf
Vue.js slots.pdf
 
Commit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptxCommit - Qwik il framework che ti stupirà.pptx
Commit - Qwik il framework che ti stupirà.pptx
 
Sviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PASviluppare da zero una Angular Web App per la PA
Sviluppare da zero una Angular Web App per la PA
 
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
Backstage l'Internal Developer Portal Open Source per una migliore Developer ...
 
Prisma the ORM that node was waiting for
Prisma the ORM that node was waiting forPrisma the ORM that node was waiting for
Prisma the ORM that node was waiting for
 
Decision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit UniversityDecision-making for Software Development Teams - Commit University
Decision-making for Software Development Teams - Commit University
 
Component Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdfComponent Design Pattern nei Game Engine.pdf
Component Design Pattern nei Game Engine.pdf
 
Prototipazione Low-Code con AWS Step Functions
Prototipazione Low-Code con AWS Step FunctionsPrototipazione Low-Code con AWS Step Functions
Prototipazione Low-Code con AWS Step Functions
 
KMM survival guide: how to tackle struggles between Kotlin and Swift
KMM survival guide: how to tackle struggles between Kotlin and SwiftKMM survival guide: how to tackle struggles between Kotlin and Swift
KMM survival guide: how to tackle struggles between Kotlin and Swift
 
Da Vuex a Pinia: come fare la migrazione
Da Vuex a Pinia: come fare la migrazioneDa Vuex a Pinia: come fare la migrazione
Da Vuex a Pinia: come fare la migrazione
 
Orchestrare Micro-frontend con micro-lc
Orchestrare Micro-frontend con micro-lcOrchestrare Micro-frontend con micro-lc
Orchestrare Micro-frontend con micro-lc
 
Fastify has defeated Lagacy-Code
Fastify has defeated Lagacy-CodeFastify has defeated Lagacy-Code
Fastify has defeated Lagacy-Code
 
SwiftUI vs UIKit
SwiftUI vs UIKitSwiftUI vs UIKit
SwiftUI vs UIKit
 
Alpine.js: the outsider Javascript framework
Alpine.js: the outsider Javascript frameworkAlpine.js: the outsider Javascript framework
Alpine.js: the outsider Javascript framework
 

Un viaggio alla scoperta dei Language Models e dell’intelligenza artificiale in produzione

  • 1. Intelligenza artificiale e testo a cura di: Andrea Guzzo Che funziona… at reasonable scale…
  • 2. Ciao Commit University! I'm Andrea Guzzo: - AI Technical Leader @MDPI - Organizer @PythonBiellaGroup - Nerd @ByNight - Sometimes @ComputerScientist Trying to follow the PEP8 way.. Reach me: - https://linktr.ee/jeydi92 Grazie di avermi invitato e grazie di essere qui!!!
  • 3. È vero che solo le big tech possono fare "intelligenza artificiale"? Di cosa parliamo? ● Cosa vuol dire NLP? ● Qual è lo stato dell’arte dell’Intelligenza Artificiale? ● Quali sono i modelli più utilizzati? Che problemi si possono risolvere? ● Come si può realizzare un Sistema di Intelligenza Artificiale che utilizza il testo e il linguaggio naturale? ● Facciamo qualche esempio!
  • 5. Cosa vuol dire fare NLP? - Processare differenti formati di testo scritti in linguaggio naturale in modo che siano comprensibili da una macchina - Utilizzare il testo per estrarre informazioni utili tramite l'impiego di algoritmi. Il linguaggio naturale comporta moltissimi problemi
  • 6. Un po' di storia 3 / 5 anni fa il mio attuale lavoro non esisteva Quanto testo "digitale" esiste ora? Quanto è grande il "web" adesso?
  • 7. Cosa sta succedendo adesso? https://openai.com/dall-e-2/ https://www.midjourney.com/home/ https://github.com/features/copilot https://openai.com/blog/whisper/ https://www.theverge.com/2022/9/29/23378210/meta-text-to-video-ai-generation- make-a-video-model-dall-e ● Ma ci sono sempre gli umani!
  • 8. Cosa sta succedendo adesso? ● È una beta ● È GPT ● È GROSSO (175 miliardi di parametri) ● È probabilistico e molto arrogante ● Funziona bene su cose semplici ● Sbaglia ancora tanto ● Non è aggiornato ● Potrebbe essere rivoluzionario (però è figo)
  • 9. Algoritmi e modelli Quali sono e quali problemi risolvono?
  • 10. Che problemi posso risolvere? https://paperswithcode.com/
  • 11. Si ma concretamente, cosa si può fare? A partire da degli articoli scientifici (papers e journals): ● Trovare delle similarità semantiche: Article Similarity ● Trovare simili autori e revisori per gli articoli: Peer Reviewer Finder ● Capire di cosa parlano certi articoli: Topic Finder, Article Summarization ● Raggruppare articoli simili: Article Clustering ● Estrarre parole chiave: Topic Modelling ● Capire se ci sono delle copiature o dei problemi: Ethical Project ● Migliorare il processo di revisione manuale: Regole sintattiche e sematiche (POS) ● Suggerire riviste e articoli agli utenti: Finder ● Creare dashboard per l'analisi dei dati ● E tanto tanto altro ancora…
  • 13. Di quali algoritmi stiamo parlando? BERT Model Word Embeddings https://medium.com/@hari4om/word-embedding-d816f643140 https://jalammar.github.io/illustrated-bert/
  • 14. Di quali algoritmi stiamo parlando? Transformer! https://jalammar.github.io/illustrated-transformer/ https://jalammar.github.io/how-gpt3-works-visualizations-animations/
  • 15. Che problemi posso risolvere?
  • 16. Alcuni concetti fondamentali… ● Algoritmi addestrati da altri: Pre-addestrati ● Modelli pre-addestrati sono molto difficili da addestrare e serve tanto corpus ● Grazie al transfer learning è possibile specializzare gli algoritmi pre addestrati ● È possibile condividere modelli pre addestrati ● Specializzare un algoritmo sui tuoi dati: fine tuning ● Alla fine si ottengono degli embeddings (vettori in uno spazio) ● È possibile applicare della «matematica» agli embeddings per fare calcoli (similarità) https://huggingface.co/
  • 17. NLP! Come si può fare per davvero?
  • 18. Anatomie delle aziende ● Come faccio a valorizzare i dati e le informazioni che ho a disposizione? ● Posso realizzare anche io un progetto Dati (Science, AI) che funziona davvero?
  • 19. Ma non dimentichiamo mai Ogni azienda è unica perchè ha dati unici e persone uniche I dati sono più importanti degli oggetti che li hanno creati: - Le informazioni estratte valgono più dei dati - La conoscenza vale più dell'informazione - La saggezza ricavata ha un valore inestimabile “Ogni azienda è una società di analisi dati” Amir Orad, Forbes Feb. 2020 “Chi controlla la spezia controlla l'universo!” Baron Vladimir Harkonnen
  • 20. Reasonable Scale Criteri: - Computazione: hanno una disponibilità limitata di budget per la computazione, non un intero data center a disposizione - Grandezza del team: hanno dozzine di ingegneri, non centinaia - Ricavato: hanno fatturati da milioni all'anno, non miliardi (e magari la tecnologia non è il loro core business) - Dati: hanno una disponibilità limitata di datasets (terabytes-sized), non petabytes. - Impatto: non utilizzano Data Science come strumento quotidiano nel loro lavoro Jacopo Tagliabue (Adjunct Professor NYU) - StanfordMLSysSeminars
  • 21. Come possiamo trovare una soluzione e fare un progetto? Siamo "data people", quindi il nostro compito è quello di creare qualcosa che abbia un valore (per davvero). La risposta: Non abbiamo bisogno di una barca più grande! ● Il dato è il Re: ossessionati con la qualità del dati, perchè è il punto in cui il guadagno è maggiore ○ Corollario: importante prima investire in Data Engineers (più che in) Data Scientists ● PaaS è meglio di Iaas: Il tempo è spesso la risorsa più scarsa e ci sono molte soluzioni e strumenti che ci possono semplificare la vita, usiamole! ○ Corollario = less is more e KISS: non scrivere codice che altri hanno già scritto ● Sforzarsi di essere "agili": L'archiviazione intelligente dei dati, moderni computer portatili, accesso facilitato alle risorse "scalable computing" è tutto quello di cui c'è bisogno ○ Corollary: il calcolo distribuito (ad esempio Spark) è la radice di tutti i mali Jacopo Tagliabue (Adjunct Professor NYU) - StanfordMLSysSeminars
  • 22. Come possiamo trovare una soluzione? ● General trend 1: I modelli sono diventati delle commodities (es: computer vision e NLP), le pipelines di gestione dei dati rappresentano il vantaggio competitivo (ma fa meno figo) ● General trend 2: al di là di alcuni giganti tecnologici il 95% (ma anche il 99%) degli strumenti, delle necessità e dei modelli possono essere risolti con strumenti off-the-shelf (principalmente open source)
  • 24. Reasonable scale: per noi! Come abbiamo costruito i nostri progetti? - Partire con il team: creare una metodologia di lavoro che funzioni bene per il tuo team, coinvolgere sempre il "gestore" dei dati e l'utente finale nel processo. Bisogna costruire qualcosa che funzioni! - Creare building blocks: partire dai fondamentali, creare semplici template e generalizzare il codice per tutti i progetti. - Get out of the building: bisogna andare in produzione subito, dal giorno 0 - Shiny object syndrome: l'ultimo modello o l'ultima tecnologia sul mercato non risolverà il tuo problema nella maggior parte dei casi - Nessuna scusa: se non puoi fare qualcosa, costruisci con quello che hai, e solitamente è più che abbastanza. - Deve funzionapre per gli utenti: alla fine, il progetto deve funzionare e deve essere utilizzato dagli utenti - Il "perchè" (la domanda di ricerca) è sempre il faro nella notte!
  • 26. Architettura Si, non c'è nessun cloud qui :)
  • 27. E adesso? Cosa ci portiamo a casa?
  • 28. Si può fare! - Democratizzazione: al giorno d'oggi l'Intelligenza Artificiale è stata molto "democratizzata" - Non solo le big tech: tutti possono realizzare la propria soluzione (non serve una barca sempre più grande) - Giusta filosofia: Bisogna conoscere, approfondire, imparare (never ending learning), ma avendo la giusta metodologia e filosofia di lavoro fin da subito - Trovare la propria: "reasonable scale" - Il mondo dell'Intelligenza Artificiale sta evolvendo tantissimo! Soprattutto in alcuni campi - Attenzione: è un mondo vasto e ci si può perdere facilmente, se non sai cosa stai facendo - Non cediamo alla fuffa… o a terminator!