Anteprima
Vedrai una selezione di 3 pagine su 6
Machine Learning - Appunti di teoria (introduzione e fondamenti) Pag. 1 Machine Learning - Appunti di teoria (introduzione e fondamenti) Pag. 2
Anteprima di 3 pagg. su 6.
Scarica il documento per vederlo tutto.
Machine Learning - Appunti di teoria (introduzione e fondamenti) Pag. 6
1 su 6
D/illustrazione/soddisfatti o rimborsati
Disdici quando
vuoi
Acquista con carta
o PayPal
Scarica i documenti
tutte le volte che vuoi
Estratto del documento

RIASSO MACHINE LEARNING

INTRODUZIONE

Differenza tra intelligenza e intelligenza artificiale

  • Pensare, generalizzare, elaborare modelli astratti della realtà
  • Ragionare

→ Riproduzione parziale dell'attività intellettuale dell'uomo Apprendere, riconoscere, scegliere

TIPOLOGIE DI RAGIONAMENTO

  • Deduttivo → La verità delle premesse garantisce quella della conclusione. (Aristotele) Fondamento di logica, dimostrazioni teoriche, matematici, non pratico in situazioni reali.
  • Induttivo → Le premesse (evidenze pratiche) permettono di sviluppare ma non garantiscono la verità della conclusione (generalizzazioni). Ragionamento quindi probabilistico, dipendenza dai rischi, generalizzazione. L'analogia è una forma di ragion. induttivo poco potente.
  • Abduttivo → Ragionamento probabilistico, come l'induttivo, ma non si generalizza! Si esegue: tutte gli indizi (evidenze) scorrono istantaneamente verso una unica spiegazione (verità).

MACHINE LEARNING

Sottoinsieme dell'I.A. (Intelligenza Artificiale) - apprendimento automatico. Apprendere da esempi (learning) e in grado di generalizzare (ragion. induttivo). Apprendere, migliorare, evolversi; esplorare e comprendere i dati senza programmazione esplicita.

BRUTE FORCE E WEAK AI

Forza Bruta (→ ricerca esaustiva) → Risolvere problema al calcolatore testando tutte le possibili alternative, spesso non applicabile a problemi complessi Sistemi capaci di risolvere problemi senza ragionamento e comprensione (weak AI).

LE STAGIONI DELL'AI

  • 1940-1974 (nascita e anni d'oro) → previsioni troppo ottimistiche! Parti calcolatori + test su neuroni artificiali generano entusiasmo
  • 1974-1980 (primo inverno) → Esplode con l'accelerare delle aspettative, scarsa capacità computazionale, elaborazione non infantibile, esperienze teoriche/dominarie e non tratturali.
  • 1980-1987 (nuova primavera) → Nascita dei sistemi esperti, algortimi backpropagation x reti neurali, finanziamenti governo significativi (Giappone, EU, USA vocali di calcolatori).
  • 1987-1993 (secondo inverno) → Flop 5° gen. (potenza) finanziamenti rete neurali non scalano
  • 1993-2011 (tempi moderni) → hardware potente, classificatori robusti, sistemi specifici per lo scopo, Watson, guida automatica successi in test discipline.
  • 2011-Oggi → Deep Learning, CNN (Convolutional Neural Networks) ora molto utili e potenti, passi in avanti nella computer vision riconoscimento del parlato, traduzione lingua.

SINGOLARITÀ TECNOLOGICA

Punto, previste nello sviluppo di una civiltà dove il progresso tecnologico accelera oltre le capacità di comprensione e di previsione; per il calcolatore e intelligenza dell'essere umano. Sviluppo esponenziale

FONDAMENTI

★ Dati Essenziali nel ML (Machine Learning) → comportamento degli algoritmi non descritto da dataset. Dati → Pattern.

★ Pattern Un volto, un carattere scritto a mano,...

Il termine pattern senso usato per riconoscere dati in varie categorie:

  • Numerici: Valori associati a caratteri misurabili, concetti rappresentabili come numeri (Es. nella PCA in multidimensionale, spesso va ordinato. Es. età di una persona, ecc...)
  • Categorici: Valori associati a caratteri qualitativi e (sistema valori a volte discreti) Usato per ordinamento e preordinamento. Es. Sens → Clustering (Es. sesso, colore occhi, ecc...)
  • Sequenze: Pattern sequenziali con relazioni spaziali e temporali. Es. stream audio, video, frasi, ecc... Spesso lunga variabilità, unione nella sequenza importante - Matriali per tener conto del passato. Allineamento spaziale/temporale
  • Altri dati strutturati: Output organizzato in strutture complesse quali alberi e grafi. - Natural Language Processing, riconoscimento di parlato, ecc... Approcci: structured SVMs, HMM, ecc...

★ Classificazione: = Riconoscimento Assegna una classe a un pattern. Necessario apprendere una funzione - il mapping dallo spazio dei pattern - space delle classi. 2 sole classi → Binary Classification. Più di 2 classi → Multi-Class Classification. La classe = l'insieme dei pattern aventi caratteristiche comuni. 2 classi per distinguere cane da gatto - 21 classi per riconoscimenti delle lettere dell'alfabeto italiano.

★ Regressione Assegna un valore continuo ad un pattern. Necessario apprendere una funzione approssimando delle coppie input, output → date utili → predizione di valori continui. Es. statura altezze di una persona in base ai peso.

★ Clustering Individua gruppi di pattern con caratteri simili, più complesso della classificazione. Le classi non sono note a priori e i pattern non etichettati. Spesso mettendo il numero di cluster noto a priori. 2 cluster individuati, possono far fungeere da classi. (Es. raggruppare individui in base all'analisi del DNA, operazioni non supervisionate).

★ Riduzione di dimensionalità Riduce il numero di dimensioni dei pattern di input. Necessario un mapping da Rd a Rk con Kd. Operazione corretta perdita non informazione, bisogna conservare quelle importanti. Le linee a scalto usandidati e/o unsabili.

★ Representation Learning → Feature learning Apprendimento automatico di features efficaci per la rappresentazione del pattern. Permette di rinvenire pattern grezzi (raw data). Usate tecniche di deep learning → multi livelli di apprendimento.

★ Problemi nel dominio della visione

  1. Classification → Descrimina la classe dell'oggetto.
  2. Classification/Localization → Assegna, la localizzazione (Bounding Box) dell'oggetto.
  3. Detection → Per ogni classe e assegna classi + bounding box.
  4. Segmentation → Segmenta determine regioni, assegnazione classi e etichette.
  5. Instance Segmentation → Identifica Istanze concrete dell'oggetto della classe (es. persone in immagini).

Esempio

Anche le etichette (in classificazione) o i valori target (in regressione). La funzione train_test_split di scikit-learn automatizza questa fase.

Selezione automatica degli iperparametri

Automatizzazione di ricerca degli iperparametri.

  • Grid Search
    • Se non performa, si definisce un insieme di valori da provare. Si provano tutte le combinazioni di tutti gli iperparametri. Funziona incertezza dei valori può essere eso. Attenzione: il numero di combinazioni possibile può essere alto: 10^k. Il sistema selezionato è il più performante
  • Randot Search
  • Si eseguono casualmente valori di iperparametri da range!! Distribuzioni specificate, eseguendo un n. Int. pressato di iterazioni.

Convergenza

Durante l'addestramento si cerca convergenza su training set. Si ha convergenza quando:

  • il loss (output della loss-function) ha andamento decrescente
  • l'accuratezza ha andamento crescente. 100%

Possibili problemi

  • il loss non decresce o oscilla: sul iperparam. sono fuori range metodi di ottimizz. non efficace, ecc.
  • il loss decresce ma l'accuratezza non cresce: scelta loss-function errata (acc.)
  • l'accuratezza non si avvicina al 100%. Sul train: i gradi di libertà del classifical. sono sempre sufficiente x gestire la complessità del problema.

Generalizzazione Overfitting

Per generalizzazione s'intende la capacità di trasferire l'elevata accuratezza aggiunta su train a valid. Se i gradi di libertà dei classificatori sono eccessivi -> alta accur. su train ma non su valid (c'è scarsa generalizzazione) -> overfitting su train.

  • 100%
  • accurat. (train)
  • accurat. (valid)

    È consigliabile arrestare l'addestramento nel punto ideale: controllo dell'overfitting x migliorare la generalizzazione.

    Punto ideale Iterazioni

Dettagli
Publisher
A.A. 2018-2019
6 pagine
3 download
SSD Scienze matematiche e informatiche INF/01 Informatica

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Nikwanted di informazioni apprese con la frequenza delle lezioni di Machine learning e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università degli Studi di Bologna o del prof Maltoni Davide.