Quando usare cosa - Apprendimento automatico [chiuso]


39

Recentemente in una lezione di Machine Learning del professor Oriol Pujol presso UPC / Barcellona ha descritto gli algoritmi, i principi e i concetti più comuni da utilizzare per una vasta gamma di attività correlate all'apprendimento automatico. Qui li condivido con te e ti chiedo:

  • Esistono attività di abbinamento del framework complete con approcci o metodi relativi a diversi tipi di problemi relativi all'apprendimento automatico?

Come imparo un semplice gaussiano? Probabilità, variabili casuali, distribuzioni; stima, convergenza e asintotici, intervallo di confidenza.

Come imparo una miscela di gaussiani (MoG)? Probabilità, Expectation-Maximization (EM); generalizzazione, selezione del modello, convalida incrociata; k-significa, modelli markov nascosti (HMM)

Come imparo qualsiasi densità? Stima parametrica vs. non parametrica, Sobolev e altri spazi funzionali; 2 errore; Stima della densità del kernel (KDE), kernel ottimale, teoria di KDE

Come posso prevedere una variabile continua (regressione)? Regressione lineare, regolarizzazione, regressione della cresta e LASSO; regressione lineare locale; stima della densità condizionale.

Come posso prevedere una variabile discreta (classificazione)? Classificatore di Bayes, Bayes ingenuo, generativo vs. discriminativo; percezione, decadimento del peso, macchina vettore supporto lineare; classificatore e teoria del vicino più vicino

Quale funzione di perdita dovrei usare? Teoria della stima della massima verosimiglianza; stima l -2; Stima bayessiana; minimax e teoria delle decisioni, bayesianismo vs frequentismo

Quale modello dovrei usare? AIC e BIC; Teoria di Vapnik-Chervonenskis; teoria della validazione incrociata; bootstrapping; Teoria probabilmente approssimativamente corretta (PAC); Limiti derivati ​​da Hoeffding

Come posso imparare modelli più elaborati (combinati)? Teoria dell'apprendimento degli ensemble; aumentando; insaccamento; impilamento

Come posso imparare modelli più elaborati (non lineari)? Modelli lineari generalizzati, regressione logistica; Teorema di Kolmogorov, modelli additivi generalizzati; kernelization, riproduzione degli spazi del kernel Hilbert, SVM non lineare, regressione del processo gaussiana

Come posso imparare modelli più elaborati (compositivi)? Modelli ricorsivi, alberi decisionali, clustering gerarchico; reti neurali, propagazione della schiena, reti di credenze profonde; modelli grafici, miscele di HMM, campi casuali condizionali, reti Markov a margine massimo; modelli log-lineari; grammatiche

Come posso ridurre o mettere in relazione le funzionalità? Selezione delle funzioni vs riduzione della dimensionalità, metodi wrapper per la selezione delle funzioni; causalità vs correlazione, correlazione parziale, apprendimento della struttura della rete di Bayes

Come posso creare nuove funzionalità? analisi delle componenti principali (PCA), analisi delle componenti indipendenti (ICA), ridimensionamento multidimensionale, apprendimento multiforme, riduzione dimensionale supervisionata, apprendimento metrico

Come posso ridurre o mettere in relazione i dati? Clustering, bi-clustering, clustering vincolato; regole di associazione e analisi del paniere di mercato; classifica / regressione ordinale; analisi dei collegamenti; dati relazionali

Come posso trattare le serie storiche? ARMA; Filtri di Kalman e modelli stat-space, filtro antiparticolato; analisi dei dati funzionali; rilevamento del punto di cambio; convalida incrociata per serie storiche

Come posso trattare i dati non ideali? turno di covariata; squilibrio di classe; dati mancanti, dati campionati in modo irregolare, errori di misurazione; rilevazione anomalie, robustezza

Come ottimizzo i parametri? Ottimizzazione non vincolata vs vincolata / convessa, metodi senza derivati, metodi di primo e secondo ordine, backfitting; gradiente naturale; ottimizzazione rilegata ed EM

Come ottimizzo le funzioni lineari? algebra lineare computazionale, inversione di matrice per regressione, decomposizione di valore singolare (SVD) per riduzione di dimensionalità

Come posso ottimizzare con i vincoli? Convessità, moltiplicatori di Lagrange, condizioni di Karush-Kuhn-Tucker, metodi di punti interni, algoritmo SMO per SVM

Come posso valutare somme profondamente annidate? Inferenza del modello grafico esatto, limiti variazionali sulle somme, inferenza del modello grafico approssimativa, propagazione delle aspettative

Come posso valutare ingenti somme e ricerche? Problemi generalizzati a corpo N (PNL), strutture gerarchiche di dati, ricerca dei vicini più vicini, metodo multiplo veloce; Integrazione Monte Carlo, Markov Chain Monte Carlo, Monte Carlo SVD

Come posso trattare problemi ancora più grandi? EM parallelo / distribuito, GNP parallelo / distribuito; metodi di laurea stocastica, apprendimento online

Come posso applicare tutto questo nel mondo reale? Panoramica delle parti del ML, scelta tra i metodi da utilizzare per ciascun compito, conoscenza preliminare e ipotesi; analisi esplorativa dei dati e visualizzazione delle informazioni; valutazione e interpretazione, utilizzando intervalli di confidenza e test di ipotesi, curve ROC; dove sono i problemi di ricerca in ML


Davvero ampio. Penso che ogni sottointerrogazione debba essere una domanda separata per avere una risposta significativa.
Amir Ali Akbari,

2
Questa domanda potrebbe essere qualificata come troppo ampia o non troppo ampia, a seconda di come la vedi. Se la domanda implichi una descrizione dettagliata di compiti e metodi, sarebbe sicuramente ampia non solo per una domanda, ma anche per un singolo libro. Tuttavia, non penso che questa domanda implichi tale interpretazione . Credo che questa domanda cerchi un quadro o una tassonomia , abbinando compiti con approcci o metodi ( algoritmi e concetti dovrebbero essere ignorati a causa di problemi di granularità). Da quel punto di vista, questa risposta non è troppo ampia e, quindi, è valida per IMHO.
Aleksandr Blekh

@AleksandrBlekh Esattamente un quadro del tipo che menzioni è l'intenzione della domanda. Lo sto modificando per chiarire. Grazie
Javierfdr,

@Javierfdr: Prego.
Aleksandr Blekh,

@SeanOwen Ho modificato la domanda principale. Ti prego, dimmi se è ancora ampio e avrei bisogno di renderlo più nitido. Grazie!
Javierfdr,

Risposte:


6

Sono d'accordo con @geogaffer. Questa è davvero un'ottima lista. Tuttavia, vedo alcuni problemi con questo elenco in quanto è attualmente formulato. Ad esempio, un problema è che le soluzioni suggerite hanno livelli di granularità diversi - alcuni rappresentano approcci , alcuni - metodi , alcuni - algoritmi e altri - solo concetti (in altre parole, termini all'interno della terminologia di dominio di un argomento). Inoltre, e credo che ciò sia molto più importante di quanto sopra, penso che sarebbe molto prezioso se tutte quelle soluzioni nell'elenco fossero organizzate in un quadro statistico tematico unificato. Questa idea è stata ispirata dalla lettura di un eccellente libro di Lisa Harlow "L'essenza del pensiero multivariato". Quindi, recentemente ho avviato una corrispondente discussione , anche se al momento un po 'limitata, sul sito Cross Validated di StackExchange . Non lasciare che il titolo ti confonda: la mia intenzione e speranza implicita è quella di costruire un quadro unificato , come menzionato sopra.


Quel quadro che hai citato sarebbe una grande cosa da avere! C'è qualcosa di simile scritto?
Javierfdr,

@Javierfdr: Nulla di cui sono a conoscenza. Tuttavia, continuo a cercare.
Aleksandr Blekh,

@AleksandrBlekh più ci penso e più penso che la ricerca di un quadro statistico sia sbagliata. Vedi la risposta di Frank Harrell sulla tua domanda e la mia risposta a questa. Ma il libro di Harlow sembra davvero interessante e lo prenderò in biblioteca questa settimana.
Shadowtalker,

1
@ssdecontrol: non sono d'accordo con rispetto. Supponendo che tale quadro non esista (cosa che molto probabilmente è il caso attuale) e rendendomi conto che non è un compito facile crearne uno, credo fermamente che sia molto possibile, tuttavia. Per quanto riguarda le risposte che hai citato (le leggo sempre tutte), ho letto entrambe le cose, ma non dimostrano che la creazione di un tale framework sia impossibile - solo difficile, come ho già detto. Non è qualcosa che dovrebbe impedire alle persone di pensarci e persino di lavorare per quello. Goditi il ​​libro di Harlow.
Aleksandr Blekh,

3

Questa è una buona lista che copre molto. Ho usato alcuni di questi metodi da prima che qualsiasi cosa si chiamasse machine learning e penso che vedrai alcuni dei metodi che elenchi entrare e uscire nel tempo. Se un metodo non è stato favorito per troppo tempo, potrebbe essere il momento di rivisitare. Alcuni metodi possono offuscare dietro nomi diversi risultanti da diversi campi di studio.

Una delle principali aree in cui ho utilizzato questi metodi è la modellizzazione del potenziale minerale, che è geospaziale e per sostenere che è possibile aggiungere alcune categorie aggiuntive relative ai metodi di dati spaziali e orientati.

Portando la tua ampia domanda in campi specifici sarà probabilmente dove troverai altri esempi di metodi non nel tuo elenco completo. Ad esempio, due metodi che ho visto nel potenziale minerale sono stati la regressione graduale all'indietro e la modellizzazione dei pesi dell'evidenza. Non sono uno statistico; forse questi sarebbero considerati coperti nell'elenco sotto regressione lineare e metodi bayesiani.


1

Penso che il tuo approccio sia un po 'arretrato.

"Qual è la media di una distribuzione gaussiana adattata a questi dati?" non è mai l'affermazione del problema, quindi "come posso adattarmi a un gaussiano?" non è mai il problema che vuoi veramente risolvere.

La differenza è più che semantica. Considera la domanda "Come posso costruire nuove funzionalità?" Se il tuo obiettivo è sviluppare un indice, potresti utilizzare un qualche tipo di analisi fattoriale. Se il tuo obiettivo è semplicemente ridurre lo spazio delle caratteristiche prima di adattare un modello lineare, potresti saltare completamente il passaggio e utilizzare invece la regressione della rete elastica.

Un approccio migliore sarebbe quello di compilare un elenco di attività di analisi dei dati reali che vorresti essere in grado di affrontare . Domande come:

Come posso prevedere se i clienti torneranno al mio sito Web di shopping?

Come faccio a sapere quanti modelli di acquisto "principali" per i consumatori ci sono e quali sono?

Come faccio a costruire un indice di "volatilità" per diversi articoli nel mio negozio online?

Anche la tua lista in questo momento include un'enorme quantità di materiale; troppo per "rivedere" e ottenere più di una comprensione a livello di superficie. Avere in mente uno scopo reale può aiutarti a risolvere le tue priorità.


Capisco quello che dici @ssdecontrol, in realtà avere un elenco completo di soluzioni ai problemi tipici, come dici, potrebbe anche essere molto utile. Ora, la differenza principale tra i due approcci è che ciò che sto proponendo è direttamente collegato alle domande tecniche che potresti porti quando stai già provando alternative, e in quel punto hai già fatto alcune ipotesi. Quindi, se hai assunto che le tue funzionalità non sono gaussiane, dovrei usare PCA per ridurre la dimensionalità? No. Il tuo approccio è più ampio: cosa usare per dim. riduzione -> PCA, ma assume le caratteristiche gaussiane. Thx
Javierfdr

@Javierfdr il mio punto è che le domande tecniche sono una distrazione se non hai in mente una domanda sostanziale.
Shadowtalker,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.