Computazione per l interazione naturale: classificazione probabilistica

Documenti analoghi
Computazione per l interazione naturale: classificazione probabilistica

Computazione per l interazione naturale: classificazione supervisionata

Computazione per l interazione naturale: regressione logistica Bayesiana

Classificazione. Apprendimento supervisionato //Classificazione. Corso di Sistemi di Elaborazione dell Informazione

Computazione per l interazione naturale: Regressione probabilistica

Computazione per l interazione naturale: Regressione probabilistica

Computazione per l interazione naturale: Regressione lineare

Computazione per l interazione naturale: macchine che apprendono

Regressione. Apprendimento supervisionato //Regressione. Corso di Sistemi di Elaborazione dell Informazione

Computazione per l interazione naturale: fondamenti probabilistici (2)

Computazione per l interazione naturale: modelli a variabili latenti (clustering e riduzione di dimensionalità)

Computazione per l interazione naturale: processi gaussiani

Computazione per l interazione naturale: Modelli dinamici

Computazione per l interazione naturale: fondamenti probabilistici (2)

Modelli Probabilistici per la Computazione Affettiva: Learning/Inferenza parametri

Computazione per l interazione naturale: fondamenti probabilistici

Computazione per l interazione naturale: fondamenti probabilistici

Computazione per l interazione naturale: clustering e riduzione di dimensionalità

Riconoscimento e recupero dell informazione per bioinformatica

Computazione per l interazione naturale: fondamenti probabilistici (1)

Riduzione di dimensionalità

Regressione Lineare. Corso di Intelligenza Artificiale, a.a Prof. Francesco Trovò

Regressione Lineare e Regressione Logistica

Modelli Grafici Probabilistici (1): concetti generali

Apprendimento Automatico

Minimi quadrati e massima verosimiglianza

Computazione per l interazione naturale: Richiami di ottimizzazione (3) (e primi esempi di Machine Learning)

Computazione per l interazione naturale: Richiami di ottimizzazione (3) (e primi esempi di Machine Learning)

Gaussian processes (GP)

Analisi Discriminante Strumenti quantitativi per la gestione

1 PROCESSI STOCASTICI... 11

Riconoscimento e recupero dell informazione per bioinformatica

Algoritmi di classificazione supervisionati

Tecniche di riconoscimento statistico

Teoria delle Decisioni Bayesiana

Apprendimento Automatico

Classificazione Mario Guarracino Data Mining a.a. 2010/2011

Machine Learning: apprendimento, generalizzazione e stima dell errore di generalizzazione

Cenni di apprendimento in Reti Bayesiane

Kernel Methods. Corso di Intelligenza Artificiale, a.a Prof. Francesco Trovò

Luigi Santoro. Hyperphar Group S.p.A., MIlano

Modelli Probabilistici per la Computazione Affettiva: Reti Bayesiane

STATISTICA MULTIVARIATA SSD MAT/06

Apprendimento statistico (Statistical Learning)

Apprendimento statistico (Statistical Learning)

0 altimenti 1 soggetto trova lavoroentro 6 mesi}

Tecniche di riconoscimento statistico

Computazione per l interazione naturale: macchine che apprendono

Modelli Probabilistici per la Computazione Affettiva: Inferenza approssimata con Monte Carlo

Approccio statistico alla classificazione

Presentazione dell edizione italiana

Statistica multivariata 27/09/2016. D.Rodi, 2016

Computazione per l interazione naturale: macchine che apprendono

Tecniche di riconoscimento statistico

Bayes, PDF, CDF. Renato Mainetti

Sequenze (Sistemi) di Variabili Aleatorie Se consideriamo un numero di variabili aleatorie, generalmente dipendenti si parla equivalentemente di:

Introduzione alla Regressione Logistica

Campionamento. Una grandezza fisica e' distribuita secondo una certa PDF

Metodi supervisionati di classificazione

Rilevazione di messaggi spam con algoritmo Naive-Bayes

Statistica e analisi dei dati Data: 14 Marzo Lezione 7. Figura 1: Spazio campionario relativo al problema della diagnosi

Classificazione Bayesiana

La Decisione Statistica Campione aleatorio: risultato dell osservazione di un fenomeno soggetto a fluttuazioni casuali.

Teoria e Tecniche del Riconoscimento

Apprendimento Bayesiano

Università degli Studi di Bergamo Intelligenza Artificiale (Codice: 38066) Secondo Parziale - 11 Giugno 2018

Calcolo delle Probabilità 2

Statistica Metodologica Avanzato Test 1: Concetti base di inferenza

Calcolo applicato alla Statistica Maximum Likelihood

Classificazione introduzione

Naïve Bayesian Classification

Sequenze (Sistemi) di Variabili Aleatorie Se consideriamo un numero di variabili aleatorie, generalmente dipendenti si parla equivalentemente di:

Identificazione dei Modelli e Analisi dei Dati 6/5/1993

SUPPORT VECTOR MACHINES. a practical guide

I Componenti del processo decisionale 7

METODI DI CLASSIFICAZIONE. Federico Marini

A Quick Intro to Machine Learning. The field of study that gives computers the ability to learn without being explicitly programmed

Statistica multivariata

Statistica multivariata

VIII Indice 2.6 Esperimenti Dicotomici Ripetuti: Binomiale ed Ipergeometrica Processi Stocastici: Bernoul

Introduzione al calcolo delle probabilità - II

e applicazioni al dominio del Contact Management Andrea Brunello Università degli Studi di Udine

Regressione logistica. Strumenti quantitativi per la gestione

Modelli tradizionali e statistici applicati alla percezione (2/2) Francesco Panerai

Teoria dei Fenomeni Aleatori AA 2012/13

Riconoscimento e recupero dell informazione per bioinformatica

Introduzione alle Reti Neurali

Sistemi ottici come sistemi lineari

Parte I. Apprendimento supervisionato

Generazione di Numeri Casuali- Parte 2

Metodi di classificazione

Statistica 2 parte ARGOMENTI

Corsi di Laurea in Scienze Biologiche Prova scritta di Informatica e Statistica Generale (A). 19/05/2009

Metodi di Monte Carlo: un'applicazione

Transcript:

Computazione per l interazione naturale: classificazione probabilistica Corso di Interazione Naturale Prof. Giuseppe Boccignone Dipartimento di Informatica Università di Milano boccignone@di.unimi.it boccignone.di.unimi.it/in_2016.html Classificazione probabilistica Classificazione di genere

Classificazione probabilistica Classificazione di genere altezza Classificazione probabilistica Predire il genere dall altezza: Dati osservati (likelihood) Prob. a priori Prob. a posteriori (Bayes) Regione di separazione

Classificazione probabilistica Date le probabilità a posteriori: Classifichiamo Regione di separazione se: Possiamo Trovare f : X {1,...,K} (funzione discriminante) che mappa ogni input x in una classe Ci (con i = f(x)) Classificazione probabilistica Classifichiamo se: Possiamo Trovare f : X {1,...,K} (funzione discriminante) che mappa ogni input x in una classe Ci (con i = f(x)) Esempio: Regione di separazione

Metodologia generale: modelli discriminativi Discriminativi non probabilistici: Trovare f : X {1,...,K} (funzione discriminante) che mappa ogni input x in una classe Ci (con i = f(x)) Esempio: SVM (Support Vector Machine) Funzioni di discriminazione //lineari e lineari generalizzate Cos è un classificatore lineare? La classificazione è intrinsecamente non lineare Semplicemente: la parte adattiva del classificatore (ad esempio i pesi) è lineare (come per la regressione) parte adattiva lineare decisione non lineare Casi possibili: non linearità fissata a valle della parte adattiva (decisione sigmoidale) non linearità fissata a monte della parte adattiva (funzioni di base non lineari)

Funzioni di discriminazione //lineari e lineari generalizzate non linearità fissata a monte della parte adattiva (funzioni di base non lineari) Funzioni di discriminazione //lineari e lineari generalizzate Consentono di assegnare ogni input x a una classe Definiscono una partizione dello spazio degli input in regioni Ri tali che se x Ri allora x viene assegnato alla classe Ci Modello lineare: Modello lineare generalizzato (GLM): funzione di attivazione, non lineare funzione di attivazione, non lineare

Metodologia generale: modelli discriminativi Discriminativi non probabilistici: Trovare f : X {1,...,K} (funzione discriminante) che mappa ogni input x in una classe Ci (con i = f(x)) già visti (SVM) Discriminativi probabilistici: Effettuare direttamente una stima di p( y x, T) dal training set questo approccio è detto discriminativo, perchè, a partire da T, viene derivata una caratterizzazione dell output in funzione delle features, in modo tale da discriminare, dato un elemento, il più probabile tra i possibili valori dell output Esempio: regressione logistica (LR) y x Metodologia generale: modelli generativi In un approccio generativo, viene derivato, per ogni possibile output, un modello (sotto forma di distribuzione di probabilità) degli elementi associati a quell output Descrizione completa della situazione: distribuzione di probabilità congiunta p(x, y T), derivata a partire dal training set p(x, y T)= p(y x, T) p(x T) Parte generativa y x Inferire la probabilità a posteriori mediante regola di Bayes p( y x, T) = p(x, y T) / p(x T) Parte discriminativa y x

Modelli discriminativi probabilistici Discriminativi probabilistici: Effettuare direttamente una stima di p( y x, T) dal training set questo approccio è detto discriminativo, perchè, a partire da T, viene derivata una caratterizzazione dell output in funzione delle features, in modo tale da discriminare, dato un elemento, il più probabile tra i possibili valori dell output y x Modelli discriminativi probabilistici //Regressione Logistica Trasformiamo il dato di input Usiamo un modello lineare per descrivere la log-likelihood ratio usando M funzioni di base non linearità a monte Funzione Logistica Poichè

Modelli discriminativi probabilistici //regressione logistica: funzione logistica Logistica Proprietà di simmetria La funzione inversa è la funzione logit Derivata Modelli discriminativi probabilistici //Regressione Logistica Algoritmo di base: Step 1. Calcolo la funzione logit con una regressione Step 2. Inverto la logit ottenendo la logistica, cioè la posteriori

Modelli discriminativi probabilistici //regressione logistica: esempio a 2 classi function EsempioLogisticRegression() %dati di training x = [0.0 0.1 0.7 1.0 1.1 1.3 1.4 1.7 2.1 2.2]'; y = [0 0 1 0 0 0 1 1 1 1]'; %fitting con generalized linear model dello Statistical %Toolbox w = glmfit(x,[y ones(10,1)],'binomial','link','logit') C0 %predizione lineare %z = w(1) + x * (w(2)) %applicazione della funzione logistica alla componente %lineare z = Logistic(w(1) + x * (w(2))) figure(1) plot(x,y,'o', x,z,'-', 'LineWidth',2) end function Output = Logistic(Input) Output = 1./ (1 + exp(-input)); end Modelli discriminativi probabilistici //regressione logistica: forma completa Scriviamo la probabilità congiunta a priori likelihood Funzione di likelihood (iid): I target tn sono binari e seguono una distribuzione di Bernoulli C1

Modelli discriminativi probabilistici //regressione logistica: forma completa Scriviamo la probabilità congiunta a priori likelihood Funzione di likelihood (iid): I target tn sono binari e seguono una distribuzione di Bernoulli Modelli discriminativi probabilistici //regressione logistica: forma completa Scriviamo la probabilità congiunta a priori likelihood Funzione di likelihood (iid): I target tn sono binari e seguono una distribuzione di Bernoulli

Modelli discriminativi probabilistici //regressione logistica: forma completa Modelli discriminativi probabilistici //regressione logistica: forma completa Funzione di verosimiglianza sotto l ipotesi i.i.d: =

Modelli discriminativi probabilistici //regressione logistica: forma completa = per semplificare Modelli discriminativi probabilistici //regressione logistica: forma completa = non ha soluzione in forma chiusa! Ottimizzazione con metodo di Newton

Modelli discriminativi probabilistici //regressione logistica: forma completa = Modelli discriminativi probabilistici //regressione logistica Estensione a più classi: uso la decisione con funzione softmax La logistica è un caso particolare di softmax a due classi

Modelli discriminativi probabilistici //regressione logistica Estensione a più classi: Modelli discriminativi probabilistici //regressione logistica Estensione a più classi: Ottimizzazione con metodo di Newton

Modelli discriminativi probabilistici //regressione logistica: e dopo? Modelli generativi di classificazione In un approccio generativo, viene derivato, per ogni possibile output, un modello (sotto forma di distribuzione di probabilità) degli elementi associati a quell output Descrizione completa della situazione: distribuzione di probabilità congiunta p(x, y T), derivata a partire dal training set y p(x, y T)= p(y x, T) p(x T) x Inferire la probabilità a posteriori mediante regola di Bayes p( y x, T) = p(x, y T) / p(x T) y x

Modelli generativi di classificazione Prima (non generativo) modello diretto della pdf a posteriori Adesso definiamo una funzione discriminante che tiene conto degli a priori sulle classi modello della distribuzione a priori modello della likelihood Modelli generativi di classificazione Adesso definiamo una funzione discriminante che tiene conto degli a priori sulle classi modello della distribuzione a priori Un opzione semplice: dato il training set, conto il numero di target appartenenti alla classe k

Modelli generativi di classificazione // Modello Gaussiano (GDA) Adesso definiamo una funzione discriminante che tiene conto degli a priori sulle classi Funzione di verosimiglianza Gaussiana: modello della likelihood Modelli generativi di classificazione // Modello Gaussiano (GDA) %% Stima dei parametri (ML) class_var = []; for c = 1:length(cl) pos = find(t==cl(c)); % Medie class_mean(c,:) = mean(x(pos,:)); % Matrici di covarianza class_var(:,:,c) = cov(x(pos,:),1); end %% Probabilità predittive [Xv,Yv] = meshgrid(-3:0.1:7,-6:0.1:6); Probs = []; for c = 1:length(cl) temp = [Xv(:)-class_mean(c,1) Yv(:)-class_mean(c,2)]; sigma_k = class_var(:,:,c); const = -log(2*pi) - log(det(sigma_k)); Probs(:,:,c) = reshape(exp(const - 0.5*diag(temp*inv(sigma_k)*temp')),size(Xv));; end Probs = Probs./repmat(sum(Probs,3),[1,1,3]);

Modelli generativi di classificazione // Modello Gaussiano (GDA) Che forma ha la funzione discriminante (la curva di separazione? Forma quadratica Forma lineare: se le matrici di covarianza sono uguali Modelli generativi di classificazione // Modello Gaussiano (GDA) %% Load dei dati load bc_data % Plot dei dati cl = unique(t); col = {'ko','kd','ks'} fcol = {[1 0 0],[0 1 0],[0 0 1]}; figure(1); title('dati originali') hold off for c = 1:length(cl) pos = find(t==cl(c)); plot(x(pos,1),x(pos,2),col{c},... 'markersize',10,'linewidth',2,... 'markerfacecolor',fcol{c}); hold on end xlim([-3 7]) ylim([-6 6])

Modelli generativi di classificazione // Modello Gaussiano (GDA) classe 1 classe 2 classe 3 Modelli generativi di classificazione // Naive Bayes (Bayes degli idioti) Adesso definiamo una funzione discriminante che tiene conto degli a priori sulle classi Funzione di verosimiglianza Gaussiana: modello della likelihood Matrice di covarianza diagonale

Modelli generativi di classificazione // Naive Bayes (Bayes degli idioti) % Stima con l'ipotesi Naive for c = 1:length(cl) pos = find(t==cl(c)); % Find the means class_mean(c,:) = mean(x(pos,:)); class_var(c,:) = var(x(pos,:),1); end %% Probabilità predittive [Xv,Yv] = meshgrid(-3:0.1:7,-6:0.1:6); Probs = []; for c = 1:length(cl) temp = [Xv(:)-class_mean(c,1) Yv(:)-class_mean(c,2)]; sigma_k = diag(class_var(c,:)); const = -log(2*pi) - log(det(sigma_k)); Probs(:,:,c) = reshape(exp(const - 0.5*diag(temp*inv(sigma_k)*temp')),size(Xv));; end Probs = Probs./repmat(sum(Probs,3),[1,1,3]); Modelli generativi di classificazione // Modello Gaussiano vs Gaussiano Naive classe 1 classe 2 classe 3

Modelli generativi di classificazione // Naive Bayes (Bayes degli idioti) Caso non Gaussiano: Feature binarie Ipotesi: features indipendenti, data la classe Regola di decisione: Per il fitting è ancora un GLM Lineare in x Esempio: classificazione di documenti (Information Retrieval) Esempio reale //Naive Bayes: Sebe et al. (2002)

Esempio reale //Naive Bayes: Sebe et al. (2002) Esempio reale //Naive Bayes: Sebe et al. (2002)