Sei sulla pagina 1di 18

CAPITOLO 1

Analisi dei big data. Ti dirò solo qualcosa di me sulle persone che vedremo. Insieme a me durante le
lezioni sugli esami e chi più ne ha più ne metta. Come al solito, se hai domande, alza la mano e sai che
puoi. Puoi farmi qualsiasi domanda tu possa interrompermi quando vuoi. Non c'è nessun problema con il
rispetto e sai che cercherò di rispondere alla tua domanda se avrò una risposta ovviamente. Va bene.
Quindi ehm.Qualche parola su di me per i nuovi studenti che abbiamo oggi. Quindi sono professore
presso. E io sono del dipartimento di ingegneria elettrica e dell'informazione. Sai che l'URL che puoi
vedere nella diapositiva è il mio sito personale, nel caso fossi curioso su di me, ma la mia ricerca sulle
mie pubblicazioni e così via. Ma per quanto riguarda gli orari d'ufficio, puoi contattarmi e possiamo
avere. La discussione possiamo fare due chiacchiere insieme ogni venerdì dalle 9:30 alle 13:00. Se vuoi
avere questo tipo di discussione con me, se vuoi chiedermi quello che vuoi su questa maledizione, allora
devi prenotare una fascia oraria usando quell'URL, il che è abbastanza facile. È un po' punto LY barra.
Orario d'ufficio quindi è abbastanza facile anche da ricordare. ehm? Oltre a me durante questo
durante questo corso vedranno anche questo. Queste persone mi avrebbero aiutato e sai, a. Come sai
anche tu. Potresti fornire una qualità superiore delle lezioni, quindi in particolare vedrai Valkyr Nelly se
vuoi contattare il dottor Anneli, puoi inviargli una e-mail e di solito risponde alle e-mail e puoi anche
vedere Antonio Parra. Un post Doc. Uh, Ferrari è uno studente di dottorato che lavora con il nostro
gruppo nel nostro laboratorio. Nell'asfalto. Orario d'ufficio di Antonio. Anche in questo caso puoi
prenotare una fascia oraria utilizzando questo URL. Anche un errore abbastanza facile da ricordare.
Hai l'orario d'ufficio di Antonio Ferrara e lo stesso vale per la casa di qualità, chiamato anche tu
prometti al tuo dottorando qui. Stiamo tutti lavorando. Come sapete, con le nostre attività di ricerca
sull'intelligenza artificiale e su molti aspetti dell'intelligenza artificiale, in particolare stiamo lavorando
sull'analisi dei big data e sull'apprendimento automatico. Così che' Per questo ho chiesto anche a loro di
aiutarmi e di fare durante questo corso. OK, quindi questo è il libro principale. Questo è il libro di
riferimento che sai che useremo durante il durante come riferimento durante queste lezioni, ma penso
che sia il migliore. Il miglior atteggiamento che puoi avere è quello di frequentare tutte le lezioni. OK
quindi per favore cercate di frequentare tutte le lezioni in modo che tutto sia molto più semplice. Per
quanto madre e tu sappia, spero che passerai l'esame il prima possibile. Uh, quindi questo è il modo in
cui insegneremo prima gli argomenti all'interno di questo, quindi avremo lezioni quando ci sarò io o
qualcuno dei miei o qualcuno dei ragazzi che hai visto prima. Inizia a parlare di un argomento specifico,
ma avremo anche molte sessioni pratiche, pratiche, pratiche, quindi so che molti di voi non hanno molta
familiarità con la programmazione, ma durante queste curve devi imparare a programmare, ecco perché
avremo. Ti aiuteremo in questo senso a, diciamo, migliorare le tue capacità in questa direzione. E nello
specifico, ti forniremo alcuni video relativi a un corso introduttivo con la programmazione in Python che
abbiamo avuto l'anno scorso, quindi. Questi video sono esattamente le stesse lezioni che abbiamo avuto
l'anno scorso. Quindi puoi guardarli e nel caso tu possa imparare qualcosa di più sulla programmazione e
qualcosa di più su Python, OK, quindi questo. Questo video in questo video. Partiamo dall'inizio. Quindi
partiamo dalla nozione di algoritmo. Quindi partiamo dalla nozione di diagramma di flusso e poi partendo
da questa nozione di base, passiamo a a. Linguaggi di programmazione e E in particolare, nella
programmazione con Python OK. Quindi, tieni presente che devi programmare qualcosa se vuoi superare
questo esame, ecco perché lo faremo. Ti aiuteremo a sapere se c'è qualcosa che possiamo fare di più.
Fateci sapere. Saremo molto felici di farlo per aiutarti in questa direzione. Ehm sì ed è per questo che
avremo anche molto. Molte sessioni pratiche durante le nostre lezioni. Ti forniremo anche alcune
implementazioni di riferimento per gli algoritmi che vedremo durante le lezioni. Quindi anche in questo
caso vi aiuteremo a capire come implementare tutta questa roba. Uh, sì, questo è. Questo è il messaggio
che credo di aver dato ieri. Ma questo è esattamente lo stesso messaggio che ti danno oggi. Si consiglia
vivamente di frequentare tutte le lezioni così noi. Sai, noi, vediamo molto fare queste lezioni che forse
non riesci a trovare i libri o all'interno di un libro. Puoi trovare solo una frase. Ma con cosa quella frase
nel libro. Sai, abbiamo parlato forse per mezz'ora. Quindi cerchiamo di essere molto più chiari e chiari
possibile. Questi sono i linguaggi di programmazione. Questo è il linguaggio di programmazione che
useremo. Fondamentalmente useremo Python. Quindi Python è il linguaggio di programmazione di
riferimento e come ID di riferimento. Quindi l'ambiente per la programmazione, useremo il grafico a
torta. PyCharm può essere scaricato gratuitamente, quindi non devi pagare nulla per utilizzare il grafico
a torta. Ma sai come ti ho detto ieri, se ti senti più a tuo agio con qualsiasi altra piscina. Quindi continua
a ridurlo. OK, quindi il punto principale è che devi imparare Python E devi imparare a programmare in
Python. ehm? Tutto sarà consegnato attraverso le squadre, quindi tutte le comunicazioni. Il materiale
didattico e la lezione. Le note saranno disponibili sui team, quindi in questo momento. Ci sono già le slide
delle curve ci sono già. Di tanto in tanto, aggiornerò le diapositive così per esempio. Subito dopo questa
lezione. Aggiornerò aggiornerò le slide relative alla selezione perché ho aggiunto qualcosa in più solo per
introdurre meglio alcune idee o qualcosa di concetto. Quindi, per favore, controlla ogni volta. Se c'è una
nuova versione delle diapositive delle dispense. Ok, questo è. Questo è il modo in cui lo faremo. Avremo
degli esami, quindi prevediamo di fare degli esami intermedi. Quindi usavamo in italiano quello che
chiamavamo Exoneree. Um, ogni esame intermedio quindi avremo fondamentalmente due esami
intermedi. OK uno. Durante la pausa e l'altra alla fine del corso. OK, questo è solo per gli studenti di
analisi dei big data. OK per studenti di apprendimento artificiale e automatico. Noi già. Abbiamo già
detto ieri come funziona e funziona diversamente perché hanno 12 crediti invece di 6. Quindi. L'esame
finale è composto da due parti, quindi abbiamo un'implementazione su ciascuna della soluzione a un
determinato problema. Quindi ti daremo un problema. Ti daremo un PC, ti daremo un ambiente e poi te
lo chiederemo. OK questo è il tuo ambiente Python. Programma Gohan. Scrivi il codice per risolvere
questo problema. OK, quindi non vogliamo che parli di Big Data Analytics. Vogliamo che tu giochi con
l'analisi dei big data. OK, ecco perché ti chiediamo l'implementazione. Soluzione ovvia a questo
problema. Quindi il tempo che avremo per risolvere questo problema sponsor da 2 ore a quattro ore, 4
ore. Sai, dipende dalla complessità del problema. E questa uh questa parte si valuta con al massimo
18/30 la seconda parte. Dell'esame è un test online a scelta multipla è un. In questo caso avrà da 20
minuti a 40 minuti e in tal caso la prova verrà valutata con un punteggio finale di al massimo 12/30 OK.
Opzionalmente puoi anche sostenere un altro esame perché sai se non sei soddisfatto del voto finale.
Da cui ottieni. La combinazione dell'implementazione nel test online e puoi chiedere un altro esame solo
per dire, OK, voglio essere valutato meglio o diversamente o di più, e poi puoi richiederlo. Ok, ma il
punto è che puoi chiedere un esame orale se e solo se superi l'esame normale, nel senso che se in media
tra la prova di attuazione e la tua prova di linea ottieni 18/30. Allora puoi chiedere un esame orale. OK,
quindi il. La condizione principale è che devi superare l'esame normale e poi puoi sostenere un esame
orale. Anche questo caso devo dirlo. Ecco qua, ho detto che modificare i voti si ottiene perché
modificare significa. O aumentare o diminuire. OK quindi può succedere che se tu chiedi un esame orale
e per ogni domanda che ti ho detto, non hai nessuna risposta per le tue risposte sono tutte sbagliate.
Allora devo immaginare che ci sia qualcosa che non va nel tuo. Con il modo in cui hai studiato, quindi
forse il tuo voto finale può anche diminuire come ho chiamato ieri questo è successo solo altro ricordo 3
quattro volte in tutta la mia carriera, quindi non è così normale che le persone. Che le persone
ottengano un punteggio più basso alla fine dell'esame normale. Ma può succedere. Quindi solo per
essere solo per essere sicuri di saperlo. E, uh, questo è un altro libro, K. Questo è anche il caso
dell'esame intermedio, quindi con il DSO il nocciolo cade in questo spazio. Ogni esame intermedio che
verrà diviso sarà sostanzialmente composto da queste due parti, quindi hai un'implementazione e hai un
test OK. E anche nel caso in cui li superi entrambi. Gli esami intermedi si possono richiedere anche per
un altro esame. OK, quindi penso che questo sia il modo normale a cui eri abituato anche con tutti gli
esami di matematica e fisica che avevamo già nella tua carriera precedente. Di nuovo, se ci sono
domande, basta. ehm. OK, per quanto riguarda l'implementazione testata durante l'esame per l'esame
intermedio, quindi non puoi usare il tuo laptop. Ma utilizzerai un'attrezzatura fornita da noi, quindi se
speriamo di poter fare tutto fisicamente. Questa attrezzatura sarà quella che abbiamo che abbiamo
nella nostra posterità, lei o nella hall. Quindi questi sono i due laboratori principali che abbiamo qui al
Politecnico. Ma nel caso in cui tutto fosse ancora online, ti forniremo alcune macchine per le persone in
modo che tu possa. E tieni tutto pronto e tutto pronto e consegnato a te da. Ma durante questo, uh,
durante questo test puoi usare solo le librerie esterne fornite insieme all'ambiente che ti stiamo dando
e tutte le librerie che puoi usare solo le librerie che vediamo durante la sezione pratica. Quindi non puoi
usare nessun'altra libreria diversa da quelle che vedremo durante la bella sessione. Sessioni. Ma se il
test richiedeva esplicitamente l'implementazione di un algoritmo, allora devi implementare l'algoritmo
da . OK, questo è solo perché sai che per alcune librerie hai già implementato alcuni algoritmi, ma in
alcuni casi possiamo farlo. Possiamo chiederti di implementare l'algoritmo da zero e devi essere in
grado di farlo. Troverai il grafico a torta e OK, quindi abbiamo seguito il. Questo è un errore di
battitura che troverai PyCharm già installato su tutte le macchine. Quindi ecco perché ti suggerisco di
iniziare nonostante l'interesse sarebbe abituato a questo ambiente. OK. Uh sì, penso che sia così. Per
questa parte iniziale per questa introduzione al corso di Big Data Analytics. Quindi hai qualche
domanda? È tutto chiaro? Oh, puoi anche fare la tua domanda in italiano. OK, non c'è problema. OK. OK,
quindi immagino che sia tutto chiaro. Ok, allora a questo punto. Ti chiedo gentilmente. Per usare i
quattro. Che ti sto dando in quella chat. Quindi se puoi, se puoi, per favore compila il modulo che ti sto
dando in chat solo per farmi sapere da quanti di voi siete, conosci ingegneria informatica, quanti
viewerda ingegneria dell'automazione manager, LinkedIn, ingegneria delle comunicazioni e ingegneria
dei sistemi medici? OK, questo è un tipo di sensori che interessa per i miei dischi. OK, quindi per
favore, subito dopo la fine di questa lezione, riempi questo modulo. Ok, prima di iniziare la lezione vera
e propria ho un favore da chiedere agli studenti di big data analytics già detto ieri agli studenti di
machine learning intelligente artificiale, ma vi chiedo gentilmente se voi. Se puoi, per favore aggiungi
una foto al tuo profilo in temi perché per me sai che vedo che qui vedo Kobela Giuseppe per esempio.
Ma invece della tua foto vedo che conosci un cerchio con CG. OK, quindi non Non voglio ricordarti come
CG, ma mi piacerebbe davvero ricordarti con la faccia. Quindi questo ovviamente è lo stesso per tutti
gli altri. Tutti gli altri studenti che frequentano questa classe. Quindi, come ti ho detto ieri, è piuttosto
difficile per gli altri. Insegnanti sta insegnando in questo modo online perché è molto personale, ma
cerchiamo di essere un po' di più. Attraverso cose un po' più normali aggiungendo queste informazioni,
quindi per favore aggiungi un'immagine al profilo della tua squadra in modo che io possa almeno vedere
la tua faccia quando parlo a uno schermo OK. Grazie. Ok, allora. Cominciamo con il. Con la lezione vera e
propria. Quindi permettetemi di condividere. Lasciami condividere di nuovo il tuo schermo. OK.
All'aperto. Mi dispiace, ma non riesco a trovare le diapositive. Destra? Hey. Per favore. Telefono. Ok
bene. Riesci a vedere lo schermo? Sì fratello sì. ok si ok ottimo. OK, allora cominciamo con questo,
introduzione delicata all'apprendimento automatico. Allora perché parliamo di machine learning? Bene?
Perché alla base della Big Data Analytics c'è il machine learning. L'analisi dei big data si occupa di
analizzare e lavorare con. Big data dove big data significa non solo che abbiamo molti dati, ma significa
anche che abbiamo, ad esempio, dati provenienti da Ethel Genius Services Data con una semantica
diversa, dati con una sintassi diversa e così via, e così via, ma il il punto è che una volta che abbiamo
tutti questi dati. Abbiamo bisogno di un modo per estrarre informazioni da questi dati, ok ieri.
L'abbiamo detto. Abbiamo bisogno di eseguire una sorta di ragionamento induttivo con il ragionamento
induttivo. Il ragionamento induttivo è quando si parte dai dati. Quindi parti dai fatti e parti dalle
informazioni che hai e cerchi di estrarre. Da questi dati, uh, una conoscenza generale che descriva tutti
i dati che hai a questa conoscenza generale deve essere in linea di principio in grado anche di
descrivere non solo i dati che hai, ma in linea di principio descrivere i dati che ancora non conosci, ma
loro, ma che potrebbe arrivare in futuro. OK, ecco perché se sono in grado di costruire
automaticamente questo tipo di modello, questo modello dovrebbe anche essere in grado di prevedere.
Dati futuri che non sono ancora nel mio repository ma che stanno arrivando. Bene, in realtà
l'apprendimento automatico può essere utilizzato per un numero enorme di applicazioni, quindi abbiamo
l'apprendimento automatico per il riconoscimento vocale. Abbiamo un apprendimento corrispondente
per il rilevamento dannoso di attacchi di diagnostica medica o rilevamento di volti o compravendita di
azioni di raccomandazione. Sai, qualunque cosa riguardi la gestione e l'elaborazione. I dati che cercano
di estrarre conoscenza da questi dati sono qualcosa che riguarda l'apprendimento automatico. OK,
vedremo che abbiamo diversi tipi di algoritmi e approcci di apprendimento automatico e, a seconda del
compito che vogliamo risolvere, lo faremo. Avremo un algoritmo diverso o diverso o un approccio diverso
o diverso. Ma cominciamo con il con il. Cercando di rispondere a questa domanda di base. Quindi cos'è
l'apprendimento automatico? Quindi la risposta è che è abbastanza facile se guardiamo a queste
definizioni. Quindi partiamo dalla definizione di apprendimento. Quindi senza la macchina e questa è la
definizione di Simon e Simon Dice che l'apprendimento è qualsiasi processo attraverso il quale è
l'esperienza del sistema. Siamo in grado di svolgere meglio in un compito OK. Quindi stiamo imparando.
Non so come leggere fondamentalmente se da. Resta a leggere sempre più libri. Permettere' Diciamo
che allora vediamo che siamo sempre più bravi a comprendere ciò che è scritto nei libri e siamo sempre
più bravi a leggere il libro, il che significa che possiamo leggere il libro più velocemente di prima, e così
via, e così via OK, quindi in questo caso. Quello che stiamo dicendo è che dobbiamo definire un qualche
tipo di prestazione e dobbiamo capire che la nostra prestazione. Il nostro miglioramento va bene quindi
se siamo in grado di dire questo e tu lo sai e questo è dovuto all'esperienza alla conoscenza delle
informazioni provenienti dall'esperienza. OK, quindi questo è valido per qualsiasi processo di
apprendimento. OK, non solo per un processo di apprendimento automatico. Ma il punto con Matthew, il
punto con l'apprendimento automatico è che in questo caso abbiamo programmi per computer OK.
Quindi è esattamente lo stesso concetto di prima, ma è applicato ai programmi per computer, quindi di
nuovo in questa definizione, sempre da Simon quindi abbiamo che l'apprendimento automatico riguarda
programmi per computer che migliorano automaticamente le loro prestazioni attraverso l'esperienza
OK, quindi è praticamente esattamente lo stesso della definizione precedente, ma in questo caso.
Parliamo di programmi per computer. OK, quindi il punto è che l'attenzione è sui programmi per
computer, ed ecco perché dobbiamo imparare a programmare. ehm? Un'altra definizione interessante è
questa definizione di Samuel. Quando abbiamo che l'apprendimento automatico è il campo di studio che
offre ai computer la capacità di apprendere senza essere programmati in modo esplicito. Quindi questo
è interessante. Questa è una definizione interessante perché in questo caso lo vediamo in modo diverso
da quello che già sappiamo. Non dobbiamo programmare esplicitamente in modo esplicito il
comportamento di un programma per computer, quindi questo significa che di solito sappiamo di avere
un algoritmo che abbiamo progettato questi algoritmi partendo da questo algoritmo scriviamo, scriviamo
il codice. Quindi iniziamo a scrivere il nostro programma. Ma se vogliamo cambiare un po' il
comportamento del nostro programma quindi dobbiamo cambiare un po' il codice che implementa
l'algoritmo e bla bla bla. OK, questo non è il caso dell'apprendimento automatico OK con
l'apprendimento automatico. Abbiamo che questo compito di apprendimento viene svolto
automaticamente, il che significa che data l'esperienza. Il programma è in grado di apprendere
dall'esperienza. Ed è in grado di cambiare il suo comportamento grazie a questa esperienza. E ora
abbiamo la definizione finale, che è quella più pratica di Tom Mitchell. E qui diciamo che il programma
per computer è triste imparare dall'esperienza con una certa classe di compiti e una misura delle
prestazioni se le sue prestazioni nei compiti in T misurate da P migliorano con E OK, quindi in questo
caso, lo capiamo per avere. Programma per computer. Questo è. Che si occupa di machine learning.
Dobbiamo identificare qual è l'esperienza. Qual è il compito o la classe di compiti in modo da poter
avere anche un insieme di compiti e qual è la misura delle prestazioni? OK, per esempio, quindi immagino
che abbiamo un esempio. Sì, quindi sì, sì, abbiamo un esempio dopo, quindi. La parte principale
dell'ultima definizione è che l'apprendimento migliora con l'esperienza in qualche compito. OK, quindi
miglioriamo su un'attività rispetto a una misura delle prestazioni basata sull'esperienza. OK, quindi cosa
si può sperimentare? L'esperienza può essere che conosci i dati che ottieni. L'esperienza può essere ad
esempio per OK per il tuo filtro antispam. In questo caso. OK, quindi diamo un'occhiata a questo
esempio. Quindi hai un programma di posta elettronica. Che controlla quali email fai o non contrassegni
come spam e in base a cosa? E in base a ciò impara a filtrare meglio lo spam. OK, questo è un classico
filtro antispam che abbiamo nei nostri nostri programmi di posta elettronica nei nostri nostri client di
posta elettronica. OK, quindi questo è un tipico processo di apprendimento perché il filtro. È in grado di
imparare sempre meglio? Quali maschi devono essere classificati come spam in cui le email non devono
essere classificate come parte OK. Così si apprende così nelle email che ieri non è stato classificato
come spam in base all'esperienza che abbiamo che il nostro programma. Ricevuto ieri, quindi oggi
quell'e-mail è ora classificata come spam, quindi il sistema sta imparando. OK, quindi in questo caso
proviamo a identificare l'attività. Permettere' s cerchiamo di identificare l'esperienza e proviamo a
identificare la performance. OK, quindi questa è una domanda che il tempo ti pone ora. Quindi dai
un'occhiata alle opzioni che hai nella parte inferiore della diapositiva. Quindi qual è il compito in questa
impostazione? Hai qualche idea, qualche idea? Può essere classificato in modo diverso. L'e-mail tra e
non spam. OK OK. Bravo Nickola, quindi in questo caso il compito che vogliamo risolvere è classificare le
email come spam o non spam. OK, quindi questo è il compito. OK, questo è ciò che vogliamo ottenere con
il nostro sistema. OK. Allora, qual è l'esperienza qui? Guardandoti etichettare le e-mail, penso di sì.
Corretto, grazie amico. Bene così in questo caso. Conosci le esperienze di questa, in modo che tu abbia il
tuo client di posta elettronica che guarda le e-mail che conosci nella tua casella di posta e guardando
queste e-mail di volta in volta, controlli un po' di email. Alcune e-mail come spam e non controlli altre e-
mail. Quindi, il tuo client di posta elettronica è in grado di comprendere e imparare da questa
esperienza, OK, quindi in questo caso. Questa è l'esperienza. OK, quindi grazie a questa esperienza, il
filtro antispam il filtro antispam è in grado di classificare sempre meglio le nostre email come spam o
meno. OK, qual è la prestazione in questo caso? Il numero di falsi positivi rispetto all'intera
popolazione, suppongo. In questo caso, la performance è il numero di email che sei in grado di inviare.
Classifica correttamente OK quindi grazie Giovanni. Quindi in questo caso cosa succede? Ad esempio,
abbiamo quello. Guardando l'esperienza che abbiamo, possiamo misurare il numero di email che siamo
stati in grado di classificare come spam ieri e il numero di email che siamo in grado di classificare. In
data odierna. Se abbiamo un miglioramento in questo numero, OK, allora le nostre prestazioni stanno
migliorando. OK, quindi in questo caso questo è un possibile modo per valutare le prestazioni del nostro
sistema. Ok, è chiaro? Sì, va bene. Quindi, per quanto riguarda gli approcci di apprendimento
automatico, possiamo avere diverse classificazioni. OK, allora partiamo da questa classificazione
iniziale. Quindi qui abbiamo l'apprendimento supervisionato, l'apprendimento non supervisionato per
rinforzo. E abbiamo anche consigliato un sistema che è qualcosa che mette più o meno tutto insieme. Ma
abbiamo anche qualche altra qualche altra classificazione, ma queste sono le principali le principali
fondamentalmente. Quindi diamo un'occhiata a queste diverse classi di algoritmi e iniziamo con
l'apprendimento supervisionato. Quindi con l'apprendimento supervisionato con l'apprendimento
supervisionato, cosa succede. Quindi, per quanto riguarda la classificazione delle email, abbiamo una
serie di dati, quindi abbiamo la prima e-mail e abbiamo un'etichetta che dice: OK, questo è spam, quindi
abbiamo un'altra e-mail e l'etichetta che dice Questo non è spam e così via. OK, quindi abbiamo i dati. E
abbiamo un'etichetta associata a questi dati, OK, quindi questa etichetta può essere un booleano può
essere qualsiasi tipo di etichetta. Puoi immaginare? Come può essere anche un numero ma il punto è che
abbiamo qualcosa associato ai miei dati? E questo qualcosa rappresenta la risposta giusta che il mio
sistema dovrebbe in linea di principio dare per uno specifico per i dati corrispondenti. OK, quindi questo
è quello che vedete in questa diapositiva è, ad esempio, un tipico problema di apprendimento
supervisionato. Quindi abbiamo questi dati relativi al. Alla dimensione della zona giorno della casa. E poi
abbiamo il prezzo. OK, quindi in questo caso l'etichetta è il prezzo. OK, quindi la risposta giusta alla
giusta è è il prezzo. OK, questi sono i dati, quindi puoi anche vedere questi dati. La trama di questi dati
qui. Quindi hai tutti questi punti qui. Nel qual è il compito che potremmo voler risolvere. Qui il compito
di apprendimento è dato da questo insieme di punti. Proviamo ad identificare un preservativo, un
comportamento comune tra questi punti tale da poter prevedere il prezzo per una nuova casa. Avere
una dimensione gnu per la zona giorno. OK, quindi per esempio qui guardando questo punto a un certo
punto ho una nuova casa in arrivo e questa nuova casa non lo so. Sono due 3000 piedi quadrati come zona
giorno. Quindi il punto è che non ho questi dati all'interno dei miei dati all'interno del mio set di dati.
Ma grazie al mio approccio supervisionato dall'apprendimento automatico, sono in grado di prevedere il
valore per il prezzo di questa casa. OK. Quindi questo è un esempio di apprendimento supervisionato,
quindi nell'apprendimento supervisionato e nei dati insieme all'etichetta. Questo è un altro
supervisionato. Apprendimento supervisionato. Compito e questo è il compito della classificazione. OK,
anche se mi dispiace, ho dimenticato di menzionare in questo caso iniziale con l'apprendimento
supervisionato in cui il compito finale è prevedere un valore in questo. In questo caso abbiamo un
problema di regressioni. OK, quindi ogni volta che vogliamo prevedere. Per prevedere il valore OK in un
ambiente supervisionato. Abbiamo un problema di regressione. D'altra parte, se vogliamo solo, ad
esempio, classificare un'e-mail come spam o non spam, allora anche in questo caso abbiamo un compito
di apprendimento supervisionato perché abbiamo questa etichetta spam non spam spam, non spam e il
compito finale viene assegnato a una nuova e-mail in arrivo per classificare automaticamente questa e-
mail come spam o non spam. OK quindi questo è il. Questa è l'idea quindi vogliamo assegnare
automaticamente l'etichetta alla nuova email appena arrivata OK e in questo caso. Abbiamo sempre un
algoritmo supervisionato. Ma in questo caso. Non abbiamo una regressione. Ma in questo caso abbiamo
un problema di classificazione. OK, puoi immaginare molti problemi di classificazione diversi e per e puoi
anche immaginare molti problemi di classificazione diversi in cui non hai solo due etichette come spam o
non spam. È vero o falso, ma puoi anche immaginare diversi problemi di classificazione in cui hai più di
due etichette OK, quindi vuoi classificare in classi diverse. Nuovi nuovi punti dati in arrivo
sostanzialmente. OK, allora proviamo a farlo. Per verificare se abbiamo capito la differenza tra
regressione e classificazione, diamo un'occhiata a questi due problemi. ehm, quindi andiamo al problema
uno. Quindi vuoi analizzare tutte le tue e-mail e prevedere il tempo in un'e-mail è spam e dovrebbe
essere consegnata nella cartella della posta indesiderata, quindi OK. Lo abbiamo già detto, ma che tipo
di problema è questa regressione o classificazione. Classificazione OK, questo è chiaramente un
problema di classificazione. OK, perché abbiamo due classi. Grazie, Filippo. Perché abbiamo due classi.
Abbiamo uno spam e non spam e quindi stiamo cercando di classificare le nuove email come spam o non
spam. Andiamo con lo strumento problema, quindi hai un ampio inventario di articoli identici e vuoi
prevedere quanti? Quanti di questi articoli verranno venduti nei prossimi tre mesi, OK, quindi che tipo
di problema è questa è questa classificazione è questa progressione. OK grazie, quindi questa è
regressione perché dobbiamo prevedere un nuovo valore. OK, quindi in questo caso abbiamo una
regressione. Quindi la risposta giusta è che il problema uno è un problema di classificazione e il
problema due è un problema di regressione. Ok va bene. Quindi abbiamo capito più o meno questa prima
classificazione iniziale. Uh, tra supervisionato e non supervisionato? Poi passiamo tra regressione e
classificazione. Poi abbiamo l'apprendimento non supervisionato. Con apprendimento non supervisionato.
Abbiamo solo, abbiamo solo dati senza etichetta. OK quindi abbiamo i dati e cerchiamo anche in questo
caso di identificare schemi comuni cerchiamo di identificare comportamenti comuni tra questi punti
dati OK. E il tipico compito di apprendimento senza supervisione. È quello del clustering? OK? Quindi
hai molti dati. E molti punti dati, ma vuoi raggruppare punti dati con un comune con caratteristiche
comuni. Ad esempio, OK, quindi con un comportamento comune. Quindi in questo caso provi a
raggruppare questo questo punto e raggruppando questi punti. Dici OK, questo set questo gruppo di
punti appartiene al cluster uno. Questo altro gruppo di punti appartiene al gruppo due e così via. OK,
quindi in questo caso provi solo a raggruppare all'interno di un cluster alcuni punti dati OK in questo. In
questo caso non abbiamo etichette e questo significa che quando creiamo il cluster uno o il cluster 2.
Quindi sappiamo che questi punti dati condividono qualcosa insieme perché abbiamo guardato i dati e
guardando i dati siamo stati in grado di capire automaticamente che questo delude. Condividi qualcosa
insieme, ma il vero problema qui è che non sappiamo qual è il nome di questo cluster. OK, non sappiamo
qual è la semantica di questo cluster. Come mai? Perché non abbiamo un'etichetta. OK, così possiamo
raggruppare i punti dati. Ma se non abbiamo alcuna conoscenza esterna, non possiamo dare un'etichetta
a questo a questo cluster. OK, quindi possiamo farlo e dato che non abbiamo etichette. Quindi in questo
caso abbiamo un apprendimento non supervisionato. Quindi abbiamo l'apprendimento per rinforzo.
L'apprendimento per rinforzo è un altro modo di apprendere in cui il sistema. Sai, cerca di comportarsi
in modo per tentativi ed errori. OK, quindi il sistema prova qualcosa e in base al feedback che riceve
dall'ambiente, ad esempio, il sistema ottiene una ricompensa e in base alla ricompensa. Quindi il sistema
è in grado di capire se l'azione eseguita è una buona azione o non OK, quindi questo è continuare. Prova
a provare a eseguire un'azione e capire cosa succede dopo che questa azione è stata eseguita. Ottieni
un feedback. Analizza il feedback e dato il feedback che hai. Che tu ottenga calcolare una ricompensa e
in base alla ricompensa capisci se questa è stata una buona scelta. Una buona azione o non va bene,
quindi abbiamo tonnellate di esempi sull'apprendimento per rinforzo. Quello che mi piace di più è che io,
come di più, sono quello su questo. Questo piccolo umano virtuale. C'è questo video su YouTube, quindi
se cerchi se cerchi apprendimento per rinforzo, cammina. Ricorda esattamente, ma se cerchi
l'apprendimento per rinforzo e la camminata, c'è questo video molto interessante. Se vedete che per
mezzo di rinforzi per mezzo di rapporti si intendeva imparare, è possibile addestrare un sistema per
imparare a camminare. OK, questo è davvero interessante, incredibile. Quindi ce ne sono molti altri.
Media altri esempi. Quindi qui vediamo un esempio con i videogiochi quando possiamo. Nell'addestrare
un'intelligenza artificiale per giocare con in un videogioco e per sapere vincere ancora
fondamentalmente. OK, e poi abbiamo il sistema di raccomandazione. Quindi i sistemi di
raccomandazione sono qualcosa tra il rinforzo dell'apprendimento supervisionato e non supervisionato.
Quindi significa che con il sistema di raccomandazione puoi utilizzare molti di questi approcci per
sviluppare il tuo sistema. OK, quindi i sistemi di raccomandazione sono qualcosa che potresti sapere
sono tutti i sistemi che hai nei tuoi luoghi Netflix, Spotify, Google e tutto il resto. E con i sistemi di
raccomandazione, quello che hai è che hai delle preferenze dagli utenti e quello che devi fare è dare la
preferenza del singolo utente e le preferenze degli altri utenti, cerca di capire quale potrebbe essere
la prossima preferenza che conosci per te fondamentalmente o cosa significa qual è il prossimo film che
sei disposto a guardare o qual è la prossima canzone che sei disposto ad ascoltare. E così via e così via.
OK, quindi questa era la classificazione iniziale che avevamo per l'apprendimento automatico. Quindi
ricordiamo che abbiamo supervisionato il rinforzo non supervisionato. E abbiamo anche dei sistemi di
raccomandazione fondamentalmente, ma abbiamo anche un'altra possibile classificazione e questa
classificazione riguarda un po' di probabilità. Quindi ora l'apprendimento automatico riguarda molto la
probabilità e in questo caso abbiamo. Questa classificazione è tra modelli discriminativi e generativi.
Così con il con il modello discriminativo. Quello che facciamo è avere un set iniziale di dati OK, quindi
inizieremo a chiamare questo set di dati OK. Quindi userò la parola set di dati per fare riferimento a
un set di dati OK, quindi dato questo set di dati. Alimentiamo il nostro algoritmo con questo set di dati
una volta che l'algoritmo è stato addestrato con questo set di dati. Quindi l'algoritmo è in grado. Per
stimare la probabilità condizionata. Di un certo punto dati, per avere un'etichetta. Quindi qui vediamo
la probabilità di Y dato X. OK, cos'è Y e cos'è X qui? Bene, quindi se ad esempio ricordiamo l'esempio
dei prezzi della casa OK, o anche l'esempio del filtro antispam, allora sono questi. Modelli discriminatori
perché in quel caso, ad esempio, per il prezzo della casa, quindi abbiamo che X è il. È la dimensione della
zona giorno? E perché il prezzo? Uh, quella casa avrà OK il prezzo previsto che quella casa avrà. OK,
quindi in quel caso stiamo calcolando. Qual è la probabilità che data una certa dimensione della zona
giorno, abbiamo un certo prezzo per quella casa? OK, o allo stesso tempo stiamo calcolando la
probabilità che data una nuova email, qual è la probabilità che questa email abbia un'etichetta così come
Y? Ehm, che è spam o non spam? OK, quindi in questo caso lo scopo è stimare questa probabilità
condizionata. Ci sono molti modelli discriminanti, e qui ne abbiamo pochissimi, quindi abbiamo la
regressione lineare generalizzata, la regressione logistica, i campi casuali condizionali delle macchine
vettoriali e le reti neurali, le foreste casuali e così via. E quindi abbiamo molti modelli diversi in questo.
In questa classificazione dei modelli discriminativi. Dall'altro lato abbiamo modelli generativi modelli
generativi. Sono un po' diversi da. Ci sono diversi da quelli discriminanti. Perché in questo caso, ciò che
fa il modello generativo è imparare. Il. Una distribuzione di probabilità dei dati. OK, quindi lo scopo di
questo modello è stimare la probabilità congiunta PX perché? Ma qual è PXYPXY è la distribuzione di
probabilità del mio set di dati OK? Quindi per esempio. Supponiamo che abbiano un set di dati di
immagini di volti OK. Quindi ho un set di dati di fasi. Un modello generativo è in grado di apprendere la
distribuzione di probabilità dei diversi pixel. Che hai per esempio, per le donne, per gli uomini, perché
non conosco quattro europei per l'America latina e così via. Un altro possibile tipo di persone. OK,
quindi il modello generativo è in grado di apprendere questa distribuzione. Il punto interessante qui è
che una volta imparata la distribuzione di probabilità. Di questo set di dati, sei anche in grado di
generare un nuovo punto dati, che è esattamente all'interno della stessa distribuzione di probabilità, e
se questo punto dati è esattamente all'interno della stessa distribuzione di probabilità, allora in linea di
principio possiamo considerare questo punto dati come parte del set di dati e non siamo come esseri
umani. Ad esempio, non siamo in grado. Quindi se andiamo, se torniamo all'esempio delle immagini, non
riusciamo a capire se. Un nuovo punto dati generato automaticamente dal mio sistema in qualcosa che è
già all'interno del set di dati o dell'OR è qualcosa di completamente nuovo. OK, perché ora il sistema è
in grado di generare qualcosa, un nuovo punto dati. Nel nostro caso una nuova immagine che è all'interno
della stessa distribuzione di probabilità ed è all'interno della stessa distribuzione di probabilità è
qualcosa che è molto molto molto molto. Molto simile a tutte le immagini che ci sono già. E questo
modello di visione generale è infatti alla base di tutte le applicazioni che tu che potresti conoscere.
Conosci tutte le applicazioni per i falsi profondi, ad esempio, o le applicazioni in cui c'era questa
applicazione in cui data un'immagine hai ottenuto la vecchia versione di questa immagine, e così via e
così via. Quindi in questo caso tutti questi sono modelli generativi. E anche generare compiti
fondamentalmente e anche in questo caso abbiamo molti possibili modelli generativi. Abbiamo i miei
pregiudizi, abbiamo modelli Markov nascosti, macchine boltzmann e bottoni. Inoltre abbiamo queste
reti generative avversarie che sono qualcosa di veramente sorprendente. Sai il modo in cui funziona
questo modello questo modello è qualcosa di davvero sorprendente. Sai che usiamo molto questo modello
all'interno. All'interno del nostro laboratorio per diverse attività ei risultati sono davvero davvero
interessanti. OK, quindi questa è la differenza tra un modello discriminativo e generativo OK. Hai
qualche domanda? Nessuna domanda. Ok, quindi se non hai domande, ci muoviamo. Uh passiamo al
prossimo passiamo al prossimo argomento. Che è regressione lineare. OK, quindi la regressione lineare è
il primo algoritmo di apprendimento automatico che vediamo. E, uh, è un algoritmo abbastanza semplice,
e forse ti sei già imbattuto in questo questo algoritmo hai già incontrato questo algoritmo in alcune
curve precedenti, ma vedremo questo algoritmo da una prospettiva di apprendimento automatico e
questo algoritmo sarà molto utile per introdurre molti . Tanti aspetti in tante corrette caratteristiche
delle Caratteristiche Generali degli algoritmi di machine learning che utilizzeremo anche per i prossimi
modelli che vedremo. OK, quindi qual è il punto qui? Quindi torniamo all'esempio dei prezzi delle case.
Ehm, e proviamo a costruire un modello in grado di prevedere il prezzo di una nuova casa. Date le
dimensioni della zona giorno. Ok allora. Quindi il punto qui è quali dati abbiamo OK? Abbiamo dati storici
in merito? Dimensione della superficie abitabile e prezzo delle vacche corrispondenti. Quale è? Il
valore che vogliamo prevedere in questo caso è un valore continuo quindi è un it? È un numero OK, ecco
perché in questo caso abbiamo, sappiamo già di avere un problema di regressione. OK, allora ci
presentiamo. Introduciamo un po' di notazione che useremo d'ora in poi. OK, quindi iniziamo dal set
iniziale di dati che usiamo per addestrare il nostro modello OK. Chiamiamo questi dati, impostiamo il
training set. OK, quindi il training set è l'insieme di dati che inizialmente utilizziamo per alimentare il
modello per farlo apprendere. Quindi nel nostro caso sai che abbiamo questa tabella qui. Quindi nella
formazione il training set è l'insieme di punti dati con la dimensione della dimensione della zona giorno e
il prezzo corrispondente. Quindi, come notazione, da ora in poi useremo M. Due indicano il numero di
esempi di allenamento. OK, quindi in altre parole, quanti punti dati abbiamo nella nostra tabella, quante
righe abbiamo nella nostra tabella, quindi questo sarà M OK. Useremo X per fare riferimento alla
variabile di input. OK, nel nostro caso la variabile di input è. Questa è l'area principale perché il
problema che vogliamo risolvere alla fine è data la dimensione. Prova a prevedere. OK, quindi gli input
che abbiamo. L'input che abbiamo in questo caso è la dimensione del Gary vivente OK, quindi questo
sarà sempre indicato come X. Ricorda sempre che quando ci riferiamo a queste variabili di input, li
chiamiamo anche caratteristiche. OK, quindi per il nostro problema lasciare l'area che è un valore di
input che è una variabile di input sarà. Una caratteristica per noi? OK, in questo caso avremo solo una
caratteristica che è la zona giorno. D'altra parte, d'altra parte, abbiamo la variabile di output e la
variabile di output è ciò che vogliamo prevedere. OK, quindi in questo caso, ciò che vogliamo prevedere è
il prezzo. Quindi in questo caso la variabile di output o la variabile target è il prezzo. Useremo XY per
rappresentare la tupla che rappresenta un esempio di training. OK, quindi nel nostro caso qui abbiamo
che X è solo un valore e Y è solo un valore. Ma possiamo anche affermare che X è un vettore e Y è un
vettore. OK, perché possiamo avere anche più di una caratteristica e in linea di principio possiamo
anche averne più di una. Quindi un valore che vogliamo prevedere allo stesso tempo. Useremo questa
notazione qui per. Per fare riferimento a un esempio di formazione, OK così. XI&YI indicheranno
l'esempio di allenamento specifico, quindi per esempio, qui nel nostro caso, abbiamo che X uno è questo
11656. X2 è 896. Mentre Y 1. È 215? OK. Trova. OK, quindi cosa vogliamo fare qui? Quindi quello che
vogliamo fare qui alla fine è farlo. Crea una funzione. Che ha dato un valore di X dell'input. Restituisce
qualsiasi stima per il valore di Y OK. Perché questa è una stima perché in linea di principio non sappiamo
qual è il valore effettivo di Y per quell'X OK, ecco perché? Quello che vogliamo fare è creare questa
funzione H, che sta per ipotesi. Che, dato un nuovo valore per X, è in grado di produrre un nuovo valore.
Uh, per stimare un valore e per prevedere un valore per Y. Come creiamo questa funzione di ipotesi?
Alimentando un algoritmo di apprendimento. Con il kit di allenamento. OK, quindi prendiamo il training
set prenderà il modello. E alimentiamo il modello con il mio set di addestramento e poi dopo un processo
di addestramento. Abbiamo alla fine il modello finale e il modello finale è questa funzione. Ecco questa
ipotesi questa funzione di età. Qualsiasi domanda. Nessuna domanda OK? Quindi no, quello che
dobbiamo chiederci è come può funzionare questa funzione? Come possiamo formulare questa funzione
OK Allora qual è la formulazione? Qual è la forma di questa funzione? Il. La funzione più semplice che
possiamo immaginare è una funzione lineare. OK, quindi nel nostro caso quello che abbiamo è questa
funzione H. Che è un'età di X dove X ricorda che i punti dati sono gli input che abbiamo in questa
funzione è una funzione con Theta 0 + T su One X questa è una tipica funzione lineare OK. Questa è una
funzione che rappresenta, ad esempio, una linea retta. È qualcosa che già sappiamo anche così, se
guardiamo alla trama. Di una possibile funzione, quindi potrebbe essere, per esempio questa retta. Ora
il punto è quello. Abbiamo punti dati Abbiamo questa funzione ma non sappiamo quali sono i valori di
questa funzione. I valori T a zero e Tita uno per questa funzione. Quindi il punto qui è che dobbiamo
farlo. Dobbiamo provare. ehm. Quello che dobbiamo fare è trovare i migliori valori per P a zero e tre a
uno in modo che questa linea retta. Approssima? Chiedi sai? Il. Approssima meglio i punti dati che
abbiamo, quindi il comportamento di questa linea retta qui. Deve essere il più vicino possibile al possibile
comportamento di questi punti dati che abbiamo. OK, in questo caso abbiamo appena introdotto il primo
modello di machine learning. Questo è il più semplice da un POV algoritmico, ma sai se vogliamo
approfondire con la con la con la regressione lineare. C'è molta letteratura sulla progressione lineare,
ma questa è la regressione lineare. È il più semplice, ehm? Algoritmo che possiamo avere con
l'apprendimento automatico. OK, questo è ovviamente un problema di regressione. Ehm, e anche in
questo caso vediamo che si tratta di un problema discriminativo. OK, perché quello che vogliamo
stabilire è la probabilità che data una dimensione della superficie abitabile, abbiamo un certo prezzo.
Uhm, in questo caso, dal momento che abbiamo solo una caratteristica. Abbiamo anche chiamato questa
regressione lineare regressione lineare univariata. OK, vedremo che possiamo avere anche più di una
caratteristica e poi. Quindi iniziamo con il. Vieni con qualche discussione su come scegliamo questo?
Questo valore di Theta 0 in un pozzo, prima di tutto, Diciamo che d'ora in poi faremo riferimento ai
dati 0 in uno come parametri del modello. OK, quindi ora il punto è, come possiamo trovare i valori
migliori per i parametri del mio modello? OK, quindi questo è il problema. Ho questi dati. E ho bisogno di
trovare, dati questi dati, il miglior valore per i dati di questo parametro 0 in 1. OK, quindi dato questo
set di allenamento. Ho bisogno di addestrare il mio modello per trovare i migliori parametri da 40 a 0
fino all'una. Questo è solo per darti un'idea, questi sono possibili grafici della stessa funzione per
diversi valori di Theta, quindi a seconda del valore che abbiamo da 40 a allora abbiamo questo
comportamento diverso del mio modello, quindi in questo caso. Se Tita Zero è 1,5 e tre a uno è 0. Quindi
abbiamo questo lotto qui nel caso in cui abbiamo Theta 0 uguale a 0 e sarà 1 uguale a 0,5 zero virgola 5.
Scusa. Quindi abbiamo quest'altro grafico e lo stesso è qui 40 a 0 uguale a 1 e tre a uno uguale a 0,5.
Quindi questo è solo per essere più chiari. Sul fatto che a seconda dei valori che noi diamo a questi
parametri, abbiamo un comportamento diverso del modello. OK, quindi dobbiamo trovare. Come ricordi.
Dobbiamo trovare una prestazione e dobbiamo trovare e dobbiamo valutare la prestazione. Ricordi,
quindi abbiamo il compito che il compito è prevedere. Il valore di oltre casa. Ma ora dobbiamo trovare la
prestazione e come valutare questa prestazione. Ok allora. Quale potrebbe essere una possibile
prestazione per questo problema? Riuscite a immaginare una possibile performance per questo
problema? Forse la performance è la distanza assoluta dall'indiretto. Ok. Ma il. Cosa intendi per
distanza assoluta? La distanza per il. Penso alla distanza media tra ciascun punto dati e la funzione
lineare. OK, bene, ma uh, OK, ma proviamo a elaborare un po' di più su questa risposta. Ok, grazie
Francesco. Quindi in questo caso sai che Francesco diceva che voglio minimizzare, sai questa distanza
qui, sai, per tutti i punti. OK, quindi voglio quella distanza. Tra i punti e il modello. È il più piccolo
possibile. Così. Una possibile esibizione questa, quindi potrebbe essere OK. Proviamo ad assegnare un
valore. Ai parametri sul mio modello e dato questo valore che vediamo sul grafico, guardiamo il grafico e
poi misuriamo la distanza di tutti i punti dal valore corrispondente sul grafico. OK, quindi per esempio,
in questo caso vediamo che il punto è esattamente sulla trama. Quindi diciamo l'errore di previsione per
quel punto specifico. È uguale a 0 giusto o molto vicino a 0? Ma l'errore di previsione qui. È molto più
alto. Per questo punto dati e lo stesso vale per questo punto dati, OK è molto più alto. Quindi l'idea
potrebbe essere questa, potrebbe andare bene. Proviamo ad assegnare un valore ai parametri. E
misuriamo. L'errore che ho per tutti i punti dati. E calcoliamo l'errore medio. Per tutti i punti dati. OK,
quindi questo potrebbe essere un possibile modo per valutare le prestazioni del mio modello. OK
durante l'apprendimento perché l'idea qui è OK? Um, data l'esperienza, e in questo caso l'esperienza è,
conosci i miei punti dati. Voglio misurare le prestazioni del mio sistema e nel caso in cui le prestazioni
del mio sistema siano misurate in termini di errore medio che ho tra il valore effettivo dei punti e
quello previsto. È chiaro? Qualsiasi domanda si. OK, qualsiasi domanda. Nessuna domanda OK? Quindi,
come lo formuliamo in modo matematico? Quindi formuliamo questo usando questa formula che conosci
abbastanza brutta e spaventosa, ma in realtà sai se quando implementeremo questa formula vedremo
che è qualcosa di molto facile molto facile da gestire e da capire quindi diamo un'occhiata a diamo
un'occhiata questa formula qui, quindi iniziamo dal lato sinistro. Quindi vogliamo trovare, quindi qual è il
significato di questo argomento? È uno zero a 1. Quindi il punto è che vogliamo trovare i valori per
Theta O&T a uno che minimizzi questa formula qui. OK, allora qual è questa formula? Questa formula è.
Per ogni punto dati. Calcoliamo il valore del modello così calcoliamo il valore di H. Peter su. Su XI. E
vediamo qual è la differenza tra il valore previsto, questo è il valore previsto e il valore effettivo. E
questo è l'errore. OK, questo è l'errore da HT a XI meno Yi è l'errore. Quello che facciamo è calcolare
la funzione di errore al quadrato. E lo vediamo, beh, in realtà. Se calcoliamo l'errore ma calcoliamo la
funzione dell'errore quadratico è fondamentalmente la stessa. Non cambia nulla di più o di meno,
perché se l'errore aumenta. Quindi la funzione di errore al quadrato al quadrato aumenta allo stesso
tempo nello stesso modo in cui l'errore. Diminuisce quindi anche la funzione dell'errore al quadrato
diminuisce. Quindi non abbiamo problemi con l'informatica. L'errore o l'errore al quadrato, OK Quindi
quello che facciamo è calcolare il quadrato. Freccia per ogni punto dati. Con Sam, tutti questi errori al
quadrato vanno bene per tutti i punti dati, e poi facciamo la media. OK, quindi questa formula è
fondamentalmente. L'errore quadratico medio calcolato per tutti i punti dati che abbiamo nel nostro
set di addestramento. OK. Domande. Spento Sì. Non ridere Internet. Non ho capito, dovrei essere
AMA. Uh, in realtà hai la tua funzione dell'età e la tua funzione dell'età è questa. OK, i miei dati 0.
Chow, No. Il punto con questo problema è quello di risolvere questo problema. Hai bisogno di trovare.
Questo è un problema di ottimizzazione. OK, quindi per risolvere questo problema devi trovare i valori
di Theta 0 in uno in modo che questo errore medio sia il più basso possibile. Come valore minimo. OK,
quindi quello che faremo ora è trovare una procedura per calcolare i valori di Theta 0 in uno tale che
this. L'errore quadratico medio è il valore minimo. OK. Ok, fratello, va bene. OK, quindi chiamiamo
questa funzione funzione di costo OK e scrivevamo questa funzione come J di Tita O& T a uno o lo sai a
breve. Lo chiamiamo semplicemente lo chiamiamo come J data. OK, dove i denti in questo caso sono un
vettore composto da due valori per 01. E usiamo anche questa notazione. Quando lo diciamo. La media di
feta è uguale a. Il valore di tita che minimizza la funzione di costo. Possiamo scrivere questo e possiamo
scrivere esattamente la stessa cosa in questo modo, OK, quindi questi sono tutti possibili modi
alternativi per scrivere esattamente la stessa cosa. OK, ora iniziamo dandovi qualche intuizione su
questa funzione di costo e poi vedremo come calcolare questi valori di Theta 0 tre a uno. OK, allora
iniziamo con il. Una versione semplice del problema in cui abbiamo un solo valore per Theta. OK,
supponiamo di avere i dati zero fissati a zero. OK, ma questo è solo per mostrarti qualcosa che ti dia
un'intuizione. OK, allora torneremo al caso in cui. Come puoi avere qualunque bambino. Quindi, nel caso
in cui abbiamo da tre a 0620, in questo caso abbiamo solo un parametro in questo parametro è ancora
uno e quindi abbiamo questo problema in cui la funzione di costo è una funzione di costo applicata solo a
uno e l'obiettivo è ridurre al minimo la mia funzione di costo rispetto al solo titolo uno di nuovo OK.
Questo è solo un esempio di giocattolo. Questo è solo per mostrarti e per darti un'intuizione. ehm?
Quindi, ma giusto per tornare alla risposta alla domanda di Alessandra Gas. È che abbiamo questo
problema? OK, quindi abbiamo un set di allenamento composto da soli tre punti dati. OK, quindi abbiamo
questo primo punto. Quindi abbiamo P1 che è uno 1.5. Quindi abbiamo P2 che è 2 e tre e poi abbiamo
questo è qualcosa che abbiamo già visto un paio di diapositive fa. Ma se proviamo a scrivere
esplicitamente questa funzione di costo, vediamo che alla fine questa funzione di costo è qualcosa che
conosci. Cosa va bene? Perché abbiamo che M è uguale a tre perché abbiamo solo tre punti dati. E se
consideriamo, ad esempio, la mia ipotesi. Viene calcolato per X1. Quindi ho che la mia ipotesi di
computer per X1 è tita 0 + 1. Per 3 a uno. Che se vogliamo calcolare l'errore per i singoli punti dati,
allora abbiamo calcolato HO in X 1 - y un quadrato OK e lo stesso è per l'altro punto dati, quindi questo
è l'errore al quadrato 4P2. Questo è l'errore al quadrato 43. Quindi, tutto sommato, alla fine della
giornata la mia funzione di costo è questa OK, quindi questa è la funzione di costo che voglio
minimizzare. OK, quindi questo è un problema di minimizzazione. Quindi questo è un problema di
ottimizzazione e quello che vogliamo fare è trovare il file. I migliori valori per Peter Ont. A uno tale
che tutta questa funzione qui. È ridotto al minimo. OK. Quindi per quali valori di Theta Zeropc per quali
valori di Theta Zero entità uno questa funzione ha il valore più basso. Quindi in linea di principio
iniziamo a capire che per questa funzione di costo le variabili effettive RT a 0 fino a uno. OK, quindi per
la mia funzione di costo alle variabili. Le variabili di solito sono qualcosa che non mi piace. Non so OK
sono alcuni segnaposto di cui non conosco il valore. Quindi in questo caso i segnaposto sono Theta 0 fino
a uno. Quindi per la funzione di costo le variabili sono tita Ont a uno. Quindi torniamo a. L'esempio per
l'esempio del giocattolo, abbiamo avuto prima. E in quel caso, ad esempio, se abbiamo questi tre punti
dati. Spiacenti, sono diversi dall'esempio precedente. Ma spero che sia chiaro. Questo è anche chiaro,
quindi supponiamo di avere tre punti dati, quindi abbiamo il .11. Abbiamo il punto a due. E abbiamo il .33.
OK, quindi in questo caso. Inoltre, supponendo che il dato zero sia uguale a 0. Se abbiamo quei dati uno
è uguale a 1. Questo è ciò che accade Quindi cosa succede qui? G di Theta, Uno che è uguale a questa
formula alla fine è uguale a questo valore qui, quindi è 1/2 * 3 perché abbiamo tre punti e quindi
abbiamo che l'errore tra la previsione e il valore effettivo è 0000. Quindi sembra che per questo punto
feta 1 uguale a 1 sia il valore migliore. Ok, ma se ci muoviamo. Quindi questo spazio dove questo spazio è
lo spazio. Dove tracciamo la funzione di costo dove, ad esempio, abbiamo il valore di Theta uno sull'asse
X e il valore della funzione di costo sull'asse Y. Quindi vediamo che 40 a uno. Sì. Qualsiasi domanda. OK
quindi 440 a 1 uguale a 1 dove abbiamo un valore della funzione di costo uguale a 0. OK. Quindi vediamo.
Cosa succede quando, ad esempio, per gli stessi tre punti? OK, quindi questo punto arancione? I punti
sono nel nostro set di allenamento? OK, quindi supponiamo che il titolo uno sia uguale a 0,5. Quindi cosa
succede qui, quindi di nuovo abbiamo risolto abbiamo risolto l'equazione e quindi abbiamo che il valore
finale è 3,5 / 6, che è uguale a 0,58, quindi se tracciamo. I, uh, i valori della funzione di costo. Quindi
abbiamo che prima 40 a 1 uguale a 1. La funzione di costo era uguale a 0, ora 40 a 1 uguale a 0,5.
Abbiamo un valore per la funzione di costo pari a 0,58. E ancora, se consideriamo, ad esempio, Tita 1
uguale a 0. Allora abbiamo quello. In questo caso possiamo vedere il grafico del modello OK. E possiamo
vedere che se sostituiamo Theta, uno con zero all'interno di questa equazione. Abbiamo questo valore
per l'errore, che è 14/6, che è uguale a 2,33, quindi se tracciamo di nuovo. Questo questo, questo
punto. Rispetto alla funzione di costo, allora abbiamo che 40 a 1 uguale a zero. Abbiamo questo valore
qui. OK. Quindi alla fine della giornata. Possiamo vedere che la mia funzione di costo. La funzione
quadratica è? Quindi è qualcosa che sappiamo più o meno OK, quindi se consideriamo la mia funzione di
costo rispetto a ciascuna variabile e alle sue variabili in questo caso, OK in questo caso, è solo tre a uno,
quindi vediamo che questo è un quadratico funzione. OK, quindi qual è il punto qui, il punto qui è trovare
il valore per la mia funzione quadratica? Tale che ha il valore minimo. E nel nostro caso, abbiamo visto
che il valore migliore in questo caso è 1 uguale a 1 perché 40 a 1 uguale a 1 potrebbe costare una
funzione uguale a 0. Quindi la soluzione al mio problema di minimizzazione in questo caso è Titolo 1
uguale a 1. OK. Quindi è chiaro? Quindi qui sul lato sinistro di questa luce siamo nello spazio del set di
dati del set di allenamento. Siamo nello spazio del modello. Qui siamo nello spazio della funzione di
costo, OK, quindi abbiamo diverse variabili e diversi grafici ovviamente. Qualsiasi domanda? No, è
chiaro OK. Spingilo. Nicasio Noi. Uomo. Un'altra domanda. Katia. K uh Lei non lo sa. Indossare. Vedremo
tra un po'. Quindi la domanda sono gli esempi finora. Gestire solo con una sola variabile con solo il titolo.
Uno Quindi cosa succede quando dobbiamo anche considerarlo come zero quindi Come possiamo
risolvere il problema OK la risposta è aspettare solo qualche diapositiva e vedremo? Quindi sì, questo
questo. Questo era solo un esempio per darvi un'intuizione di quello che sta succedendo. OK, ora
torniamo alla situazione generale in cui lo abbiamo. Anche tita O può avere valori diversi. OK, quindi solo
per ricapitolare tutto. Quindi abbiamo questa ipotesi. E questa ipotesi è un'ipotesi lineare. Poiché è una
funzione lineare, abbiamo questi due parametri. Noi Rispetto ai diversi valori che diamo allo 0 a uno che
abbiamo, possiamo avere diversi modelli. Ma Wendy a 0 è fisso. Abbiamo questo grafico bidimensionale
monodimensionale. Ma 20 a 0 non è fisso. Abbiamo questa trama tridimensionale. OK, quindi in questo
caso. Abbiamo di nuovo una funzione quadratica, ma in questo caso questa funzione quadratica è una
funzione quadratica con due variabili con la variabile a zero e il titolo della variabile uno OK, che è più o
meno qualcosa che abbiamo già visto qui. Se guardiamo questa uh questa equazione qui. OK, vediamo che
questa equazione qui è un'equazione quadratica dove sai, Theta Zero è al quadrato di un certo punto.
Tita uno è quadrato ad un certo punto, e sono anche moltiplicati. L'uno dall'altro. OK, ecco perché è
così. Questa è una funzione quadratica, ma in uno spazio tridimensionale. OK. Il punto positivo è che la
buona notizia qui è che questa funzione è una funzione convessa e vedremo perché questa è una buona
notizia. Quindi proviamo a tracciare di nuovo tutto. Ma ora consideriamo le due variabili. OK, quindi qui
invece di tracciare i tre, il modello tre della funzione quadratica, stiamo solo tracciando i contorni della
funzione OK, riesci a capire cos'è questo grafico? È solo una proiezione di questo, sì, è una proiezione
di questo fondamentalmente OK. Allora qual è l'idea qui? Quindi l'idea qui è che 20 a uno è uguale, per
esempio a. 66 Anti a 0 è uguale a 10.000. Questo è il modello che abbiamo. OK. Quindi questa è la trama
che abbiamo per la nostra ipotesi. Ma questa Ipotesi corrisponde a questo punto questo punto rosso.
Nello spazio della mia funzione di costo. Se abbiamo, ad esempio, Tita 1 uguale a 0 e T a 0 uguale a
questo valore qui, allora abbiamo un'altra ipotesi. E quest'altra ipotesi. Se osserviamo il valore
corrispondente nello spazio della funzione di costo, corrisponde a questo punto qui. OK, perché abbiamo
un certo valore da 40 a 0 e un certo valore da 40 a uno. E di nuovo abbiamo, abbiamo un'altra ipotesi.
Che corrispondono a quest'altra ipotesi, ea questo iPod più duro. Questo altro processo corrisponde a
quest'altro punto qui. Allora cosa noi? Quello che dobbiamo fare ora è trovare ipotesi che siano
fondamentalmente in questa regione del mio diagramma di contorno. OK, perché l'ipotesi? E questo in
questa regione della mia trama di contorno sono parte. Questo è con il valore più basso per la funzione
di costo. E il valore più basso per la funzione di costo significa che la mia ipotesi si adatta meglio ai miei
punti dati perché, in media, l'errore è inferiore. Ora la domanda è come possiamo trovare questi punti?
Come possiamo trovare questi valori di Theta Zero Anti a uno? OK. Ok, questo è solo un altro esempio.
Ma. OK, solo un altro modo per mostrare esattamente la stessa cosa. Quindi, ma ora la domanda è come
possiamo? Come possiamo trovare questo? Questi punti che sono che minimizzano il mio problema?
Bene, la risposta è con Quale è un algoritmo in grado di farlo? Sai, camminare, camminare sul. Per
lavorare sulla funzione di costo tridimensionale e camminando su questa funzione di costo 3
dimensionale 1 è possibile camminare verso il valore minimo di questa funzione di costo. Quindi qual è
l'idea quale potrebbe essere l'idea qui. L'idea sarebbe quella di inizializzarlo azir Ont su uno a qualche
valore casuale OK. Quindi noi, diciamo OK. Questo è un possibile valore casuale da 40 a 0 a 1 guardando
questo valore di Theta 0 a quello che possiamo calcolare il valore della catena in modo da poter
calcolare l'errore. OK. Ora il punto è che proviamo a cambiare un po'. Questo valore di Theta 0 in uno e
vediamo se siamo in grado di ridurre. Quindi andiamo bene, quindi cambiamo i valori di Theta 70 in uno.
E vediamo se possiamo cambiare e ridurre il valore di J. OK, quindi l'idea è di continuare a cambiare
Theta Zero a 1 per ridurre J per avvicinarsi al minimo e raggiungerlo. Quindi questo è. Questa questa
idea è un'idea generale che in linea di principio potrebbe funzionare per qualsiasi funzione OK, quindi in
questo caso. Ad esempio, se abbiamo questa funzione che non è una funzione convessa.di Theta 0 in uno.
Quindi possiamo provare a sapere spostarti verso il basso e raggiungere un minimo possibile per questo
per questo valore per questa funzione OK. Quindi in questo caso abbiamo diversi minimi locali, quindi
questo è a. Tutti i problemi complicati, quindi, vogliamo che vengano risolti, ma l'idea è questa, quindi
sappiamo che mettiamo a caso il nostro punto qui e poi noi, lo sai, cambiamo questi dati. Questo valori di
Theta 0 in uno cercando di spostarsi verso il verso il minimo della funzione. In realtà, a seconda del
modo in cui cambiamo questi valori, possiamo avere percorsi diversi in questo. In questo lavoro su
questa specifica funzione. C'è qualche? C'è un algoritmo per lavorare in questo modo e due? Anche
sapere. Questo è in grado di spostare il mio punto verso il minimo della funzione e la risposta è sì. Forse
conosci già questo algoritmo. E questo, questo, questo è il Questo è un algoritmo piuttosto importante e
famoso nell'apprendimento automatico dell'apprendimento automatico, che viene utilizzato
praticamente qualsiasi cosa, quindi non viene utilizzato solo nella regressione lineare. Ma vedremo che
viene utilizzato per la maggior parte degli algoritmi che utilizziamo. Ma questo non è l'unico a trovare
questo valore minimo, quindi questo algoritmo di discesa del gradiente funziona in questo modo. Quindi
fino a quando non avremo una convergenza. Ripetiamo questo passaggio, quindi aggiorniamo. Il valore del
mio parametro. Insieme a. Il valore precedente meno. Un termine che dipende dalla derivata. Della
funzione di costo rispetto al rispetto al parimetro stesso, ok? Questa è l'idea. Quindi nel nostro caso
abbiamo due parametri. Quindi quello che facciamo è aggiornare simultaneamente T a zero con questo
valore a 0 meno Alpha Volte la derivata rispetto a Theta Zero di J. E poi aggiorniamo i dati uno con il
valore precedente, meno Alpha Times, la derivata di J rispetto al titolo uno. Una cosa molto importante
qui è che, come puoi vedere con queste variabili temporanee. OK, perché il punto è che l'aggiornamento
deve essere simultaneo, il che significa che. Se io Se calcolo se voglio aggiornare i dati 0. Allora devo
aggiornare i dati 0, ma poi se voglio aggiornare i dati uno devo aggiornarlo uno ma in questa funzione di
costo devo mettere non il nuovo valore di Theta 0 ma quello precedente. OK, ecco perché ho bisogno di
queste variabili temporanee, in modo tale da calcolare questo valore di ritorno temporaneo e quindi
aggiorno entrambi i dati da zero a 1. Quindi, nel caso in cui non lo uso, uh questo uh questo approccio.
Sto attuando in modo sbagliato la discesa del gradiente. Quindi significa che, ad esempio, se considero
questa variabile temporanea e quindi l'aggiornamento è il vecchio valore di 000. OK, è chiaro? Sì. OK,
Alfa è. Quello che chiamiamo iperparametro è che lo chiameremo tasso di apprendimento. Ti dirò tra un
po' che cosa è in questo caso è un fattore di scala. OK, consideriamolo come un fattore di scala, ma
vedremo come impostare il fattore di scala. OK, c'è qualcosa o qualcosa che spiegheremo. Non va bene
OK, grazie per il punto interrogativo. Qualsiasi altra domanda. OK. Allora qual è l'intuizione? Di questo
gradiente di discesa, va bene così. Questo è. Questo è l'algoritmo. L'algoritmo come abbiamo appena
visto, e in questo caso ho appena detto che questo è Alpha, che è il tasso di apprendimento e questa è la
derivata parziale della mia funzione di costo rispetto a, conosci questo parametro TG. Allora qual è
l'idea? L'idea è che supponiamo che io sia qui con il mio valore di in questo caso, abbiamo solo un piccolo
OK, quindi stiamo solo considerando. Caso dimensionale, quindi supponiamo che io sia qui con il mio con il
mio tita one. Quindi questo è il valore che ho OK. Quindi in questo caso quello che faccio è un
aggiornamento dei dati uno e, nel caso ce l'abbia, il valore della derivata parziale di Theta uno è. È una
fine. In questo caso il valore della derivata parziale è maggiore o uguale a zero OK? Quello che voglio è
spostarmi con la mia T sullo zero dal lato destro a quello sinistro. Vuoi raggiungere il minimo? OK, quindi
quello che faccio è avere. Quello Questo. Questo ehm questo valore è tale che uno di Peter in questo
aggiornamento è inferiore al valore precedente di Theta, uno OK. Nel caso in cui questo sia un numero
positivo perché sono attivo, sai da questo lato della trama. Se sono dall'altra parte. Il punto è che
questo il valore di questa derivata parziale è un numero negativo. E poi in questo caso, ho il nuovo valore.
Di Peter One è meno Alpha volte e numero negativo, quindi quello che sto dicendo è che ITA. Uno è in
aumento in questo caso, OK perché meno Alpha per un numero negativo è un numero positivo, quindi
aggiungo qualcosa al titolo. Uno, ecco perché con i dati uno in questo caso. Mi sto spostando verso il lato
destro della trama. OK, quindi questo è il Questa è l'intuizione qui, quindi l'intuizione è che se lo siamo.
Se partiamo casualmente da questa parte della mia funzione di costo grazie al. Grazie a questa derivata
parziale, incapace di andare verso il minimo. Se parto da quest'altro lato. Anche grazie al valore della
derivata parziale mi sto muovendo verso quest'altro lato. OK. Qualsiasi domanda. OK, nessuna domanda.
Così. Diciamo qualcosa su questo valore di Alpha. Quindi se Alpha è molto molto molto piccolo. Gireremo
di sicuro. Raggiungeremo una convergenza. Quindi arriveremo al valore minimo della funzione micro, ma
il punto è che il processo sarà molto, molto, molto lento OK. Ma d'altra parte se Alpha è troppo grande,
allora quello che facciamo è che sì, ad esempio, supponiamo di partire da. Inizia da qui. Ok, allora
partiamo da questo punto. OK, quindi se partiamo da questo punto allora. Abbiamo quello. La derivata
parziale è negativa. Ci stiamo muovendo, sai, verso il lato destro. Ma se Alpha è molto, molto alto, allora
quello che facciamo è trasferirci qui. OK. Ma così abbiamo appena superato il minimo. Ma il punto è che
quando ora siamo qui, se Alpha è ancora lo stesso, Alpha è prima. Quindi è ancora un grande Alpha.
Allora anche in questo caso abbiamo un valore positivo per la derivata parziale. Quindi questo valore
positivo ci fa muovere verso sinistra all'interno della trama. Ma anche in questo caso se Alpha è troppo
alto allora. Possiamo attraversare di nuovo lo zero e il giusto qui e poi lo stesso abbiamo questa
situazione da ping pong e sai che il processo non convergerà mai. Ma in questo caso il processo diverge.
OK, quindi la selezione di Alpha del giusto valore per Alpha è qualcosa di cui dobbiamo occuparci. ehm?
Quindi, dato il numero di iterazioni, se vediamo che il valore di. Il valore della mia funzione di costo sta
diminuendo. OK, quindi dopo cinque iterazioni ho un valore per la funzione di costo che è inferiore ai
casi precedenti e quindi 10 iterazioni. 89 iterazione Sto diminuendo questo valore di J, quindi questo
significa che il valore di Alpha è un buon valore e il nostro algoritmo di discesa del gradiente funziona.
D'altra parte se abbiamo quello, mentre aumentiamo ciò che aumentiamo il numero di iterazioni. Inoltre,
il valore di J aumenta. Allora conosci il gradiente. La discesa non funziona e dobbiamo utilizzare un
valore inferiore di Alpha. In realtà, possiamo anche avere una situazione in cui abbiamo questo tipo di
oscillazioni tra valori tra valori e poi anche in questo caso non raggiungiamo mai una convergenza, quindi
troviamo una specie di loop e anche in questo caso dobbiamo usare un Alpha più piccolo OK. Ora la
domanda è. Quindi abbiamo appena visto che esiste un algoritmo in grado di calcolare il miglior valore
per Theta 0 in uno e poi c'è un algoritmo che è la discesa del gradiente. Che è in grado di trovare
automaticamente questi valori. Che dire di Alpha è possibile calcolare automaticamente Alpha bene. La
risposta è che in linea di principio sappiamo che ci sono approcci per calcolarlo. Questo questo valore
automaticamente, ma il punto è questo? Questo approccio è qualcosa, che è separato dall'approccio di
apprendimento dall'algoritmo di apprendimento OK, quindi in linea di principio scatteremo la melodia
Alpha manualmente, quindi dovremmo selezionare manualmente il valore di Alpha OK e quindi sai
controllando il comportamento dell'algoritmo, quindi provare a trovare valori migliori per Alpha. Ecco
perché diversamente da T a 0 in 1A si chiama Hyperparameter. Quindi Alpha non è un parametro
dell'algoritmo, ma è un iperparametro. OK, perché non è un parametro che viene calcolato dall'algoritmo
di apprendimento, ma è un parametro necessario all'algoritmo di apprendimento. OK. OK OK. Bene. OK,
ora proviamo a completare questo. Questa discussione sulla discesa del gradiente per la regressione
lineare e quindi per farlo, dobbiamo ricominciare dalle equazioni originali. OK, quindi data l'equazione
originale e la formula originale della mia funzione di costo del mio JT a 0 a uno, beh, in linea di principio
dobbiamo calcolare queste derivate parziali per questa funzione. OK, ora vediamo come farlo. Quindi,
se vogliamo calcolare. La derivata parziale di. La mia funzione di costo rispetto a TJ va bene. Dobbiamo
calcolare la derivata parziale di questa funzione J qui, che è in realtà se sostituiamo HT a con? La
formulazione effettiva con la formulazione lineare di HD a, quindi questa è la derivata parziale che
dobbiamo calcolare. OK, allora vediamo cosa succede quando J è uguale a 0. Quindi diciamo, diciamo' s
vediamo cosa succede quando calcoliamo la derivata parziale parziale rispetto a T a 0. Quindi in questo
caso abbiamo che. Uh, la derivata parziale rispetto a T a 0 è uguale a questa formula qui. Perché la
derivata parziale rispetto a Theta è uguale a questa formula qui? OK, allora. No, pensavo ci fosse
qualcosa di OK, possiamo. Possiamo facilmente capire il motivo per cui abbiamo questa formulazione. Ok
allora. Se noi se calcoliamo la derivata parziale rispetto a Theta Zero di questa formula. OK, quindi
vediamo che la derivata parziale di questa formula è. Dal momento che abbiamo un, abbiamo questo
strumento di potere. Qui è 2 volte questa formula. OK. Ma due volte questa formula. E' esatto. Quindi
mettiamo un 2 qui. E quindi rimuoviamo questo, uh, questo potere qui, sai, avrei bisogno di una lavagna.
non ho un. Non ho una tavola, io' sono spiacente. OK, lo calcolerò. È meglio se sai che ti mostrerò tutti i
passaggi nella prossima lezione, ok? Sai, ma al momento fidati di me che la derivata parziale rispetto a
Theta 0 è questa, e la derivata parziale rispetto a Theta uno. Questo va bene? È un calcolo molto, molto
semplice, ma è meglio mostrarti tutti i passaggi. OK. Quindi il punto è che il mio dato che il calcolo delle
derivate parziali è quello che abbiamo visto nella diapositiva precedente, quindi il mio algoritmo di
discesa del gradiente. È qualcosa del genere, quindi ripetiamo finché non abbiamo una convergenza.
Ripetiamo l'aggiornamento di T a zero e l'aggiornamento di dati uno. OK. Beh, in realtà dobbiamo ancora
dire che il significato è cosa' è il significato di ripetere fino alla convergenza? O cos'è la convergenza
qui? Ma sai che devi aspettare solo un po'. Ma ancora una volta, ricorda che questi aggiornamenti sono
simultanei. OK, quindi abbiamo aggiornamenti simultanei. Di questi due parametri. E questo è ciò che
accade sostanzialmente. Quindi partiamo da, per esempio, da questa situazione. Quindi scegliamo
casualmente questo punto di dati 0 in 1. E abbiamo questa ipotesi qui. OK, grazie alla discesa del
gradiente, ci muoviamo in questa direzione e poi vediamo che la nuova ipotesi è questa. Poi ci muoviamo e
vediamo che il processo è. Sai che è meglio di prima rispetto ai miei punti dati, e poi continuiamo il
nostro. L'applicazione di cui continuiamo la nostra iterazione dell'algoritmo di discesa del gradiente. E
poi ci spostiamo verso il valore minimo della funzione micros OK e questa è la migliore situazione che
possiamo avere. OK, quindi iniziamo da oops, partiamo da un punto casuale E uh grazie alla discesa del
gradiente. Siamo in grado di muoverci verso il valore minimo e quindi per ottenere il miglior valore
possibile. Beh, non è possibile, ma è il miglior modello che possiamo calcolare per questo per questo
training set. OK. Qualsiasi domanda?. OK. Honda A corpo era felice. Sei un po' più sveglio? Prossimo
corso algarita L'Alfa. Romano. Rischio qualità. No. Perché. Fine di tutto OK. Quasi così. Anche su. Sì,
quindi la domanda è, posso cambiare il valore dell'iperparametro in modo che la connessione sia il valore
di Alpha durante l'applicazione della discesa del gradiente in pratica. OK, quindi per esempio all'inizio
ho, sai, un valore di Alpha che è. Un grande valore di Alpha e poi riduco questo valore in modo che io
possa farti conoscere passi più grandi. E poi riduco questo valore di Alpha in modo da non iniziare la mia
situazione da ping pong. Sì, beh, la risposta è sì. Ma anche in questo caso abbiamo, sai, algoritmi in
grado di farlo. Vai a per modificare il valore di Alpha in modo adattivo. OK, quindi questo è un
miglioramento dell'algoritmo di base, quindi in linea di principio imposti il valore e vedi cosa succede. Ma
ci sono varianti di questo algoritmo che. Il tentativo di adattare il valore di Alpha mentre calcoli il tuo
gradiente. Fondamentalmente grazie per il punto interrogativo. il valore del gradiente. Qualsiasi altra
domanda. Fra. Sì. Abbiamo visto che questo è per la funzione di costo Sì, ma se usiamo un altro tipo di
funzione di costo, possiamo usare un altro approccio. Invece del merito del gradiente discendente, beh,
ok, quindi in linea di principio, cosa calcoli è sempre l'errore di previsione? OK, quindi puoi avere una
formulazione diversa, quindi hai sempre una sorta di funzione di costo. OK, quindi l'idea è che tu abbia
una funzione di costo. Quello eh. In qualche modo misura quanto ti stai comportando bene o male. E
quello che fai è minimizzare questa funzione di costo OK e minimizzare la funzione di costo è sempre
l'obiettivo principale di questo algoritmo di apprendimento, quindi la discesa del gradiente è. Uh, è
possibile un algoritmo per ridurre al minimo questa funzione di costo? Ok, ma vedremo. Abbiamo anche
altri possibili approcci per trovare la funzione per ridurre al minimo questa funzione di costo? OK,
quindi non so se ho se ho risposto alla tua domanda, ma la risposta in linea di principio è che puoi avere
diverse funzioni di costo. Quindi in questo caso abbiamo quello che stiamo vedendo quello che vediamo è
il quadrato che l'errore quadratico medio, ma in linea di principio puoi anche avere una funzione di costo
diversa, ma il punto è che si vuole sempre ridurre al minimo la funzione di costo. OK, quindi quello che
hai in altri approcci è una diversa formulazione della funzione di costo ma anche in questa diversa
formulazione delfunzione di costo. Si desidera ridurre al minimo questa funzione di costo con la discesa
del gradiente o con altri con altri approcci. OK. Mitel è questa la risposta, sì, ho ottenuto OK OK OK
grazie per la domanda. OK. Altre domande. OK.Venga. OK, ora quello che abbiamo visto finora è quello
che succede quando abbiamo solo una caratteristica. OK, quindi quando abbiamo solo una caratteristica
abbiamo che la nostra funzione è qualcosa come 0 + 1 * X, ma cosa succede? Quando abbiamo più di una
funzionalità, cosa succede quando abbiamo più funzionalità? Bene, in linea di principio il problema è
esattamente lo stesso. Non cambia nulla. Ah, quindi diamo un'occhiata a questo esempio, che è una
versione estesa del prezzo della casa. Esempio che noi, abbiamo visto prima. Ma ora non abbiamo solo
un'area leader. Ma abbiamo anche il numero di camere da letto e il numero di core, quindi abbiamo ad
esempio 3 funzionalità invece di una sola. ehm? Bene, ciò che cambia qui è che noi avevamo un po' più di
notazione e in questo caso diciamo che XJYX Ji. Spiacente è il valore della funzione J per l'esempio. Va
bene così per così per esempio, in questo caso. Abbiamo X10 quindi guardiamo la prima caratteristica e
l'esempio zero e poi abbiamo che è 16. 561 per esempio, X11 è il. Valore nella prima riga nella 2a riga in
questo caso rispetto alla prima caratteristica. Quindi è 896 e per esempio qui 4X23. Questo è il valore
per la seconda caratteristica, quindi il numero di camere da letto per la per. 4a riga e poi in questo caso
va bene. Quindi quello che cambia ora bene quello che cambia è che in precedenza avevamo questa
ipotesi con i dati 0 + 3 a uno per XI. In questo caso, abbiamo un numero di parametri, che è uguale al
numero di funzioni. Più uno. Quindi in uh, nel nostro caso precedente, invece di avere solo un T a 0 + 80
a uno per XI in questo caso abbiamo un dato 0 più. AT a uno XI, più tre a due X scusa Tito 1X1I più tre
a due X2 I più due a tre X3 I OK, quindi anche in questo caso. Questa è una funzione lineare, ma in
questo caso. Questa funzione lineare è un iperpiano OK. Quindi non è più una linea retta. Ma questo è un
iperpiano, ma è qualcosa che possiamo. Fine settimana con. Quindi, solo per rendere le cose più
compatte, possiamo riscrivere tutto in termini di vettori e matrici. Quindi in questo caso, se impostiamo
per comodità che abbiamo. Una caratteristica XO i cui valori sono tutti uguali a 1. Quindi possiamo
avere questa metrica. X con i vecchi valori per X0, che significa vecchio vecchio. Quindi abbiamo tutti i
valori per X per la funzione X1. Tutti i valori per la feature X2. Tutti i valori per la funzione XN, quindi
questa è una matrice. E allo stesso tempo, abbiamo qui un vettore in cui abbiamo Theta zero. Abbiamo
tre a uno, abbiamo tre a due e abbiamo la pizza, quindi OK, quindi questa è una possibile
rappresentazione vettoriale basata su metriche automatiche dello stesso problema. Quindi in questo
caso, uh, se vogliamo rappresentare la regressione lineare multivariata, allora in questo caso
consideriamo il vettore del feto. Quando consideriamo la porta sul retro di X OK e sai, e in questo caso,
questa è esattamente la stessa formulazione che abbiamo qui. Quindi questo è solo un modo diverso per
rappresentare esattamente la stessa cosa, quindi potresti ricordare che in questo caso hai che la riga
viene moltiplicata per la colonna. OK, quindi ogni volta che questo flusso viene moltiplicato per le
diverse colonne, è esattamente lo stesso. Quindi cosa cambia nel nostro? Discesa del gradiente
crepuscolare. Ok, cosa cambia adesso? È che abbiamo ovviamente più di uno più di due parametri
spiacenti, quindi non Non dobbiamo regolare Xerente su uno, ma abbiamo 0 in uno bla bla bla fino a
PETA N OK quindi di solito con M. Come Milano usiamo M per fare riferimento al numero di campioni
all'interno del set di allenamento. E usiamo N come Napoli per riferirci al numero di caratteristiche.
Kate. OK, quindi ehm. Per quanto riguarda la discesa del gradiente, quello che abbiamo visto prima è
questo? Partiamo da un punto dati iniziale e poi ripetiamo fino alla convergenza. Questo algoritmo quindi
continuiamo a iterare su tutti i valori su tutti i valori di of. Accedere. Ma possiamo avere
un'implementazione diversa della discesa del gradiente, che è la discesa del gradiente stocastica. ehm?
Quindi quello che succede qui è questo. Per ogni caso di formazione. Quindi per ogni punto dati. Quello
che faccio è un aggiornamento della mia parte della mia para Meters? OK, allora perché questa versione
è chiamata stocastica o incrementale? Bene perché. Uh, come ho appena detto, i parametri vengono
aggiornati per ogni singolo caso di addestramento, quindi per ogni singolo punto dati OK, quindi il
gradiente è un'approssimazione stocastica. Dei due del vero credito di costo. Ok, cosa succede in
questo caso? Bene, in questo caso quello che abbiamo è che raggiungiamo la convergenza. Più veloce ma
possiamo avere situazioni in cui l'algoritmo gira intorno al minimo senza mai raggiungere il valore
minimo. Ma se abbiamo un grande set di dati. Possiamo dire che la discesa del gradiente stocastico deve
essere preferita rispetto alla sua versione batch. E se sì, se osserviamo la rappresentazione di te,
conosci il percorso che le due versioni della discesa del gradiente. Segui quindi qui sul lato sinistro.
Abbiamo la versione batch e abbiamo questo salto verso il. Andando verso il valore minimo, ma in questo
caso abbiamo questo tipo di comportamento a zig zag che va verso il valore minimo, ma come ti ho detto
prima quindi possiamo avere una situazione in cui lo zigzag che conosci continua ad andare intorno al
valore minimo. Qual è il punto qui? Il punto qui è che per ogni passaggio devi iterare su tutti i campioni
di dati. OK, quindi per ogni passaggio nella discesa del gradiente batch. Quello che devi fare è calcolare
il è considerare tutti i campioni di dati OK e di solito i campioni di dati il numero di campioni di dati è
molto più alto del numero di caratteristiche. OK allora, per la discesa del gradiente batch per ogni
caratteristica. Ci scusiamo per ciascuno per ogni caratteristica, il che significa che per ogni parametro
che hai per ogni passaggio devi iterare su tutti i campioni di dati, quindi devi considerare l'intero set di
dati. Per ogni passo. Questo non è il caso della discesa del gradiente stocastico, dove per ogni passaggio
si considera un solo punto dati. Ecco perché il calcolo è molto più veloce. OK, anche se questo è un
approccio, questa è un'approssimazione del percorso effettivo del del. Della discesa del gradiente. Dal
punto di vista dell'attuazione. Se guardiamo a questo uh uh a questa implementazione di alto livello,
quindi con la discesa del gradiente batch. Quello che abbiamo è che iteriamo su tutti i parametri. OK,
ma quando operiamo su un singolo parametro, iteriamo su ogni singolo punto dati. Quindi abbiamo questo
per ogni ciclo qui. Che è per ogni ciclo sui parametri e poi sul numero di caratteristiche e poi all'interno
di questo ciclo abbiamo quest'altro ciclo che considera tutti i punti dati. Quindi dobbiamo considerare
questo ciclo su tutti questi punti dati e considerare che molto spesso i punti dati sono in termini di
possono anche avere milioni di punti dati. Quindi in linea di principio per ogni parametro e per ogni
passaggio. Dovresti considerare tutti i punti dati per ogni singola caratteristica. Nello stocastico.
Attuazione della discesa del gradiente. Hai questa iterazione sugli esempi di allenamento e qui hai il. In
Hai l'iterazione sui parametri dove il numero N di parametri è solitamente molto inferiore al numero di
dati, considera anche quell'altro ciclo che considera tutti i punti dati. Quindi dobbiamo considerare
questo ciclo su tutti questi punti dati e considerare che molto spesso i punti dati sono in termini di
possono anche avere milioni di punti dati. Quindi in linea di principio per ogni parametro e per ogni
passaggio. Dovresti considerare tutti i punti dati per ogni singola caratteristica. Nell'attuazione
stocastica della discesa del gradiente. Hai questa iterazione sugli esempi di allenamento e qui hai il. In
Hai l'iterazione sui parametri dove il numero N di parametri è solitamente molto inferiore al numero di
dati considera anche che il numero di parametri può essere anche qualche centinaio di parametri, OK,
quindi puoi anche avere diciamo 200 o parametri. Ma il punto è che questo numero è sempre molto
inferiore al numero di punti dati. OK, quindi non essere spaventato da questa implementazione,
specialmente per quelli di voi che non hanno molta familiarità con la programmazione, perché vedremo
l'effettiva implementazione in Python di questo di questo. Di questo algoritmo, così tutto sarà sarà
molto più chiaro. Dopo questo uh queste sessioni pratiche. OK. Quindi, um, abbiamo da un lato una
discesa del gradiente batch e dall'altro abbiamo una lettura stocastica e tutti hanno alcuni pro e alcuni
contro, quindi hanno punti a favore e punti contro. Quindi è possibile trovare qualcosa nel mezzo? La
risposta è sì, e in questo caso abbiamo la discesa del gradiente mini batch. Quindi cosa succede con la
discesa del gradiente mini batch? Bene, questo è un compromesso tra la discesa del gradiente
stocastico e batch. Quindi quello che succede qui è che non consideriamo non consideriamo l'intero set
di dati, quindi non consideriamo tutti i punti dati contemporaneamente. Ma consideriamo alcuni piccoli
lotti di punti dati, alcuni lotti più piccoli con una dimensione di B. Che è um, che è molto più piccolo di M.
E poi in questo caso possiamo avere questo tipo di Tu sai questo tipo di comportamento più veloce OK
ma senza questo, così zigzag pazzesco qui, OK, quindi in questo modo riduciamo la varianza degli
aggiornamenti del parametro e sai, raggiungiamo. Più robusto. Chiese. Ma ancora una volta vedremo
l'implementazione di questi algoritmi e vedremo le differenze nel loro comportamento. OK, quindi
alcune osservazioni finali sulla condizione di arresto, ovvero che te lo ricordi fino alla convergenza che
abbiamo visto finora. Quindi la condizione di arresto. Può essere una di queste possibili condizioni che
vediamo qui. Quindi abbiamo. Ad esempio, possiamo impostare un numero massimo di iterazioni. Quindi
diciamo che va bene dopo un numero fisso di iterazioni mi fermo e sto bene con quel modello che trovo.
Oppure possiamo impostare un valore assoluto per la funzione di costo e poi diciamo OK. io sono io mi
fermo quando raggiungo questo valore per la funzione di costo o, naturalmente, un valore più basso per
la funzione di costo. Tutto quello che possiamo considerare. Tolleranza relativa, nel senso che il
miglioramento che hanno da un passo dal. Il miglioramento che ho rispetto al passaggio precedente è
inferiore a un tasso fisso. OK, quindi se è inferiore al tasso fisso, il miglioramento è così piccolo che
non ha senso continuare. Oppure posso anche mettere una condizione sulla norma del gradiente OK e poi
ti ricordi il vettore normale. Ciò che è giusto, così posso calcolare la norma del gradiente e calcolando la
norma del gradiente posso dire OK. non voglio esserlo. Voglio essere inferiore a questo valore fisso. OK,
quindi queste sono possibili condizioni di arresto per i nostri algoritmi. OK. Questo è tutto per oggi.
spero che basti. Per me lo è. Quindi, naturalmente, se hai qualche domanda. Sai che possiamo iniziare le
prossime elezioni con il. Con la domanda puoi puoi avere. Sai, sentiti libero di contattarmi se hai qualche
dubbio o altro. E bene, per oggi è tutto. Ci vediamo giovedì prossimo in mattinata. Ok ciao ciao. Ciao ciao
grazie.

Potrebbero piacerti anche