Casa Finanza personale Machine Learning con Mahout in Hadoop - dummies

Machine Learning con Mahout in Hadoop - dummies

Sommario:

Video: Introduction to Apache Mahout 2024

Video: Introduction to Apache Mahout 2024
Anonim

Apprendimento automatico si riferisce a una branca di tecniche di intelligenza artificiale che fornisce strumenti che consentono ai computer di migliorare la propria analisi in base agli eventi precedenti. Questi sistemi informatici sfruttano i dati storici di precedenti tentativi di risoluzione di un compito al fine di migliorare le prestazioni di futuri tentativi in ​​attività simili.

In termini di risultati attesi, l'apprendimento automatico può sembrare molto simile a quell'altra parola d'ordine "data mining"; tuttavia, il primo si concentra sulla previsione attraverso l'analisi dei dati di addestramento preparati , il secondo riguarda la scoperta della conoscenza da dati grezzi non elaborati. Per questo motivo, l'apprendimento automatico dipende in gran parte dalle tecniche di modellizzazione statistica e attinge dalle aree della teoria della probabilità e del riconoscimento del modello.

Mahout è un progetto open source di Apache che offre librerie Java per algoritmi di apprendimento automatico distribuiti o altrimenti scalabili.

Questi algoritmi coprono attività di apprendimento automatico classiche come classificazione, clustering, analisi delle regole di associazione e raccomandazioni. Sebbene le librerie Mahout siano progettate per funzionare all'interno di un contesto Apache Hadoop, sono anche compatibili con qualsiasi sistema che supporti il ​​framework MapReduce. Ad esempio, Mahout fornisce librerie Java per raccolte Java e operazioni matematiche comuni (algebra lineare e statistiche) che possono essere utilizzate senza Hadoop.

Come puoi vedere, le librerie Mahout sono implementate in Java MapReduce ed eseguite sul tuo cluster come raccolte di lavori MapReduce su YARN (con MapReduce v2) o MapReduce v1.

Mahout è un progetto in evoluzione con più contributori. Al momento della stesura di questo libro, la raccolta di algoritmi disponibili nelle librerie Mahout non è affatto completa; tuttavia, la raccolta di algoritmi implementati per l'uso continua ad espandersi nel tempo.

Esistono tre categorie principali di algoritmi di Mahout per supportare l'analisi statistica: filtraggio collaborativo, clustering e classificazione.

Filtro collaborativo

Mahout è stato specificamente progettato per servire come motore di raccomandazione, utilizzando il cosiddetto algoritmo di filtro di collaborazione . Mahout combina la ricchezza degli algoritmi di clustering e di classificazione a sua disposizione per produrre raccomandazioni più precise basate sui dati di input.

Questi consigli vengono spesso applicati contro le preferenze dell'utente, tenendo conto del comportamento dell'utente. Confrontando le selezioni precedenti di un utente, è possibile identificare i vicini più vicini (persone con una storia di decisione simile) a quell'utente e prevedere le selezioni future in base al comportamento dei vicini.

Prendi in considerazione un motore di "profilo di gusto" come Netflix, un motore che raccomanda valutazioni basate sul precedente punteggio e sulle abitudini di visualizzazione dell'utente. In questo esempio, i modelli comportamentali per un utente vengono confrontati con la cronologia dell'utente e le tendenze degli utenti con gusti simili appartenenti alla stessa comunità Netflix per generare una raccomandazione per il contenuto non ancora visualizzato dall'utente in questione.

Clustering

Diversamente dal metodo di apprendimento supervisionato per la funzione del motore di raccomandazione di Mahout, il clustering è una forma di apprendimento non supervisionato - dove le etichette per i punti dati sono sconosciute in anticipo e devono essere dedotte dai dati senza input umano (la parte supervisionata ). Generalmente, gli oggetti all'interno di un cluster dovrebbero essere simili; gli oggetti provenienti da diversi cluster dovrebbero essere dissimili. Le decisioni prese in anticipo sul numero di cluster da generare, i criteri per misurare la "somiglianza" e la rappresentazione degli oggetti avranno un impatto sull'etichettatura prodotta dagli algoritmi di clustering.

Ad esempio, un motore di cluster che viene fornito un elenco di articoli di notizie dovrebbe essere in grado di definire gruppi di articoli all'interno di quella raccolta che discutono argomenti simili.

Supponiamo che una serie di articoli su Canada, Francia, Cina, silvicoltura, petrolio e vino debbano essere raggruppati. Se il numero massimo di cluster era impostato su 2, il tuo algoritmo potrebbe produrre categorie come "regioni" e "industrie". "Le modifiche al numero di cluster produrranno diverse categorizzazioni; ad esempio, la selezione per 3 cluster può comportare raggruppamenti a coppie delle categorie dell'industria nazionale.

Classificazioni

Gli algoritmi di classificazione fanno uso di insiemi di dati di addestramento con etichetta umana, in cui la classificazione e classificazione di tutti gli input futuri è regolata da queste etichette note. Questi classificatori implementano ciò che è noto come

apprendimento supervisionato nel mondo del machine learning. Le regole di classificazione, impostate dai dati di addestramento, che sono state precedentemente etichettate dagli esperti di dominio, vengono quindi applicate a dati grezzi e non elaborati per determinare al meglio la loro etichettatura appropriata.

Queste tecniche sono spesso utilizzate dai servizi di posta elettronica che tentano di classificare la posta indesiderata prima che attraversino la posta in arrivo. Specificamente, dato un messaggio di posta elettronica contenente un insieme di frasi note per verificarsi comunemente insieme in una certa classe di posta spam - fornita da un indirizzo appartenente a una botnet conosciuta - l'algoritmo di classificazione è in grado di identificare in modo affidabile l'e-mail come dannosa.

Oltre alla ricchezza di algoritmi statistici forniti da Mahout in modo nativo, è disponibile anche un modulo

User Defined Algorithms (UDA) di supporto. Gli utenti possono sovrascrivere gli algoritmi esistenti o implementarne di propri tramite il modulo UDA. Questa solida personalizzazione consente la regolazione delle prestazioni degli algoritmi di Mahout nativi e la flessibilità nell'affrontare sfide uniche di analisi statistica. Se Mahout può essere visto come un'estensione statistica analitica per Hadoop, l'UDA dovrebbe essere vista come un'estensione delle capacità statistiche di Mahout.

Le tradizionali applicazioni di analisi statistica (come SAS, SPSS e R) sono dotate di potenti strumenti per generare flussi di lavoro. Queste applicazioni utilizzano interfacce utente grafiche intuitive che consentono una migliore visualizzazione dei dati. Gli script di Mahout seguono uno schema simile a questi altri strumenti per generare flussi di lavoro di analisi statistica.

Durante la fase finale di esplorazione e visualizzazione dei dati, gli utenti possono esportare in formati leggibili dall'uomo (JSON, CSV) o sfruttare gli strumenti di visualizzazione come Tableau Desktop.

L'architettura di Mahout si trova in cima alla piattaforma Hadoop. Hadoop alleggerisce il programmatore separando il compito di programmare i lavori MapReduce dalla complessa contabilità necessaria per gestire il parallelismo tra i file system distribuiti. Nello stesso spirito, Mahout fornisce astrazioni facili da programmare di complessi algoritmi statistici, pronti per l'implementazione con il framework Hadoop.

Machine Learning con Mahout in Hadoop - dummies

Scelta dell'editore

Scattare foto digitali con uno zoom ottico - dummy

Scattare foto digitali con uno zoom ottico - dummy

La fotocamera digitale potrebbe avere uno zoom ottico, che è un Obiettivo zoom attuale vecchio stile (al contrario di uno zoom digitale). Per utilizzare lo zoom ottico della fotocamera digitale per scatti ravvicinati, segui questi passaggi di preparazione delle immagini prima di attivare il pulsante o lo switch di zoom:

La reflex digitale e la sensibilità alla luce - dummy

La reflex digitale e la sensibilità alla luce - dummy

La tua reflex digitale ha un'opzione per determinare la sensibilità del sensore della fotocamera è alla luce. Le fotocamere digitali sono le stesse delle fotocamere a pellicola in quanto la sensibilità alla luce è determinata dalla valutazione ISO. Il vantaggio di una fotocamera digitale è che non è necessario cambiare pellicola per modificare le valutazioni ISO. Quando aumenti ...

Scatti grandangolari con obiettivi standard - manichini

Scatti grandangolari con obiettivi standard - manichini

Fotografia grandangolare con un angolo di campo maggiore rispetto alla lunghezza focale normale o teleobiettivo. A volte si percepiscono le foto come molto espansive. Altre volte, a malapena lo si nota. Dipende tutto dal soggetto e da come si inquadra la scena. Questa figura mostra una scena di terreni agricoli che è stata scattata utilizzando un Sony APS-C ...

Scelta dell'editore

Come usare il meta tag DESCRIPTION - dummies

Come usare il meta tag DESCRIPTION - dummies

I meta tag sono tag HTML speciali che puoi utilizzare per trasportare informazioni, che i browser o altri programmi possono quindi leggere. Quando i motori di ricerca di Internet furono creati per la prima volta, i webmaster includevano i meta tag nelle loro pagine per rendere più facile per i motori di ricerca determinare le pagine. I motori di ricerca hanno utilizzato anche questi meta ...

Come scrivere un grande tag Title Web Marketing - dummies

Come scrivere un grande tag Title Web Marketing - dummies

Scrivere un tag title è fondamentale per il successo del web marketing e coinvolge più che mettere le parole chiave prima. I motori di ricerca mostrano il tag parola chiave nella parte superiore di ciascun elemento nelle pagine dei risultati dei motori di ricerca (SERP). Un tag del titolo ben scritto potrebbe aumentare le probabilità che un cliente in ricerca faccia clic sul tuo annuncio. Se ...

In che modo Yahoo! Cerca negli elenchi di Internet e dei ranghi - dummies

In che modo Yahoo! Cerca negli elenchi di Internet e dei ranghi - dummies

Quando le persone effettuano ricerche sul Web utilizzando Yahoo! , ottengono una combinazione di risultati organici e pagati. Se lavori per una società più grande, potresti provare Yahoo! La ricerca inoltra Pro per ottenere un vantaggio rispetto alla concorrenza e puoi persino registrare il tuo sito con Yahoo! Directory. Yahoo! I risultati di ricerca organica ...

Scelta dell'editore

Di Spotify su ShareMyPlaylists. it Funzionalità del sito - dummies

Di Spotify su ShareMyPlaylists. it Funzionalità del sito - dummies

ShareMyPlaylists (o SMP, in breve) è stato uno dei primi siti di condivisione di playlist Spotify e continua a innovare e offrire nuove funzionalità ai visitatori. Il mantra del sito è "Long Live the Mixtape", e qui troverai tantissime creazioni accuratamente compilate da migliaia di utenti. Dopo aver creato una playlist Spotify piena di ...

Spotify Unlimited - dummies

Spotify Unlimited - dummies

Spotify Unlimited è un modo brillante per ascoltare tutta la musica che vuoi senza limiti. È come una persona speciale che ti compra da mangiare e da bere tutta la sera per non doverti preoccupare del conto. È come essere in grado di dormire nel weekend senza preoccuparsi del lavoro o se ...

I generi di Spotify - dummies

I generi di Spotify - dummies

Che si tratti di hard rock, techno, pop, jazz, industrial, indie pop, folk , classico, heavy metal, valzer o qualsiasi altra cosa ti piaccia, Spotify ha il genere o il tipo di musica coperto. Puoi cercare i generi comuni da Spotify. Sebbene Spotify abbia pubblicato un elenco di quasi 1, 000 generi noti, non tutti saranno in grado di offrire ...