Acasă Finanțe personale Mașină Învățarea cu Mahout în Hadoop - manechine

Mașină Învățarea cu Mahout în Hadoop - manechine

Cuprins:

Video: O mica lectie de condus - Incepatoare la volan. 2024

Video: O mica lectie de condus - Incepatoare la volan. 2024
Anonim

Învățarea în mașină se referă la o ramură a tehnicilor de inteligență artificială care oferă instrumente care permit calculatoarelor să își îmbunătățească analiza pe baza evenimentelor anterioare. Aceste sisteme informatice utilizează date istorice din încercările anterioare de rezolvare a unei sarcini pentru a îmbunătăți performanțele viitoarelor încercări în sarcini similare.

În ceea ce privește rezultatele așteptate, învățarea în mașină poate suna foarte mult ca și celălalt cuvânt cheie "data mining"; cu toate acestea, primul se concentrează pe predicție prin analiza datelor de formare pregătite , acesta din urmă fiind preocupat de descoperirea cunoștințelor de la date neprelucrate brute. Din acest motiv, învățarea în mașină depinde în mare măsură de tehnicile de modelare statistică și atrage din domeniile teoriei probabilității și recunoașterii modelului.

Mahout este un proiect open source de la Apache, oferind biblioteci Java pentru algoritmi distribuiți sau scalabili de învățare a mașinilor.

Aceste algoritmi acoperă sarcini clasice de învățare a mașinilor, cum ar fi clasificarea, gruparea, analiza regulilor de asociere și recomandări. Deși bibliotecile Mahout sunt proiectate să funcționeze în contextul Apache Hadoop, ele sunt, de asemenea, compatibile cu orice sistem care suportă cadrul MapReduce. De exemplu, Mahout oferă biblioteci Java pentru colecții Java și operații matematice comune (algebră liniară și statistici) care pot fi utilizate fără Hadoop.

Mahout este un proiect în curs de dezvoltare, cu participanți multipli. În momentul acestei scrieri, colecția de algoritmi disponibili în bibliotecile Mahout nu este în nici un caz completă; totuși, colecția de algoritmi implementați pentru utilizare continuă să se extindă cu timpul.

Există trei categorii principale de algoritmi Mahout pentru susținerea analizei statistice: filtrarea colaborativă, gruparea și clasificarea.

Filtrarea colaborativă

Mahout a fost proiectat special pentru a servi drept motor de recomandare, folosind algoritmul

de filtrare colaborativă . Mahout combină bogăția de algoritmi de clasificare și clasificare la dispoziția sa pentru a produce recomandări mai precise pe baza datelor de intrare. Aceste recomandări sunt adesea aplicate împotriva preferințelor utilizatorilor, ținând cont de comportamentul utilizatorului. Prin compararea selecțiilor anterioare ale unui utilizator, este posibil să se identifice cei mai apropiați vecini (persoane cu un istoric de decizie similar) pentru acel utilizator și să se prezică selecții viitoare bazate pe comportamentul vecinilor.

Luați în considerare un motor "de tip gust", cum ar fi Netflix - un motor care recomandă evaluări bazate pe obiceiurile de notare și vizualizare anterioare ale acelui utilizator. În acest exemplu, modelele de comportament pentru un utilizator sunt comparate cu istoricul utilizatorilor - și cu tendințele utilizatorilor cu gusturi similare aparținând aceleiași comunități Netflix - pentru a genera o recomandare pentru conținut care nu este încă vizualizat de utilizatorul în cauză.

Clustering

Spre deosebire de metoda de învățare supravegheată pentru caracteristica de recomandare a lui Mahout, gruparea este o formă de învățare

nesupravegheată - unde etichetele pentru punctele de date sunt necunoscute înainte și trebuie deduse din date fără intrare umană (partea supravegheată ). În general, obiectele dintr-un grup ar trebui să fie similare; obiecte din grupuri diferite ar trebui să fie diferite. Deciziile făcute anticipat cu privire la numărul de clustere de generat, criteriile pentru măsurarea "asemănării" și reprezentarea obiectelor vor avea impact asupra etichetării produse de algoritmi de grupare.

De exemplu, un motor de grupare care oferă o listă de articole de știri ar trebui să poată defini clustere de articole din acea colecție care discută subiecte similare.

Să presupunem că un set de articole despre Canada, Franța, China, silvicultură, petrol și vin ar trebui să fie grupate. Dacă numărul maxim de clustere a fost setat la 2, algoritmul dvs. ar putea produce categorii precum "regiuni" și "industrii. "Ajustările numărului de clustere vor produce diferite categorii; de exemplu, selectarea a 3 clustere poate avea ca rezultat gruparea în perechi a categoriilor naționale-industrie.

Clasificări

Algoritmii de clasificare utilizează seturi de date de antrenament cu etichete umane, unde clasificarea și clasificarea tuturor intrărilor viitoare este guvernată de aceste etichete cunoscute. Acești clasificatori implementează ceea ce este cunoscut ca

învățarea supravegheată în lumea învățării mașinilor. Regulile de clasificare - stabilite de datele de antrenament, care au fost etichetate înainte de experții domeniului - sunt apoi aplicate împotriva datelor brute, neprelucrate, pentru a determina cel mai bine etichetarea lor corespunzătoare.

Aceste tehnici sunt adesea folosite de serviciile de e-mail care încearcă să clasifice mesajele de e-mail spam înainte de a trece vreodată în căsuța de e-mail. În mod specific, dat fiind un e-mail care conține un set de expresii despre care se știe că se întâlnesc împreună într-o anumită clasă de e-mail spam - livrat de la o adresă aparținând unui botnet cunoscut - algoritmul dvs. de clasificare este capabil să identifice în mod fiabil e-mailul ca fiind rău intenționat.

În plus față de bogăția algoritmilor statistici pe care Mahout le oferă nativ, este disponibil și un modul de asistență

Algoritmi definite de utilizator (UDA). Utilizatorii pot suprascrie algoritmii existenți sau pot implementa propriile lor prin modulul UDA. Această personalizare robustă permite ajustarea performanțelor algoritmilor Mahout nativi și flexibilitatea în abordarea provocărilor de analiză statistică unică. Dacă Mahout poate fi privit ca o extensie de analiză statistică la Hadoop, UDA ar trebui văzută ca o extensie a capacităților statistice Mahout.

Aplicațiile tradiționale de analiză statistică (cum ar fi SAS, SPSS și R) vin cu instrumente puternice pentru generarea de fluxuri de lucru. Aceste aplicații utilizează interfețe grafice de utilizator intuitive care permit o vizualizare mai bună a datelor. Scripturile Mahout urmează un model similar cu celelalte instrumente pentru generarea fluxurilor de lucru de analiză statistică.

În timpul etapei finale de explorare și vizualizare a datelor, utilizatorii pot exporta în formate personalizabile (JSON, CSV) sau pot beneficia de instrumente de vizualizare, cum ar fi Tableau Desktop.

Arhitectura lui Mahout se află pe platforma Hadoop. Hadoop deblochează programatorul separând sarcina programării joburilor MapReduce de la contabilitatea complexă necesară pentru a gestiona paralelismul între sistemele de fișiere distribuite. În același spirit, Mahout oferă abstracții programabile pentru algoritmi statistici complexe, gata pentru implementare cu cadrul Hadoop.

Mașină Învățarea cu Mahout în Hadoop - manechine

Alegerea editorilor

Evaluarea Vizualizărilor de date - dummies

Evaluarea Vizualizărilor de date - dummies

Vizualizările de date pot fi foarte colorate și impresionante. Dar amintiți-vă că cheia pentru crearea unor vizualizări eficiente de date nu depinde de faptul dacă este interesantă, ci mai degrabă de faptul dacă descoperă problemele reale de afaceri care trebuie abordate. O foaie de lucru vă ajută să creați propriile vizualizări de date sau să evaluați creațiile altora. Aici ...

Determinarea programului care funcționează cel mai bine pentru nevoile tale informatice

Determinarea programului care funcționează cel mai bine pentru nevoile tale informatice

Să lucreze mai bine decât celălalt. În timp, veți dezvolta un sentiment dacă Illustrator sau Photoshop se potrivesc mai bine pentru diverse sarcini. Până atunci, iată un exemplu despre modul în care fiecare program gestionează diferite elemente ale lucrării de design grafic. Graphing Photoshop nu este un program de grafic. Tu ...

Infografice nevergreen: Închirierea obiectelor Build - dummies

Infografice nevergreen: Închirierea obiectelor Build - dummies

Infografics evergreen nu sunt legate de niciun eveniment sau persoană în știri . Ele nu au o componentă sezonieră și nu sunt legate de ceva în timp util. O infographic despre cum se fac CD-urile se va aplica pentru că este vorba de muzică, dar nu este specifică nici unui artist sau gen. Cu infografiile veșnic verzi, ignorați complet evenimentele curente și explorați ideile ...

Alegerea editorilor

Utilizați Zoom în Adobe Photoshop CS5 - manechine

Utilizați Zoom în Adobe Photoshop CS5 - manechine

Adobe Creative Suite 5 oferă scurtături pentru Zooming în Photoshop. Imaginile care arată bine la un nivel de zoom pot părea extrem de proaste la altul. Veți mări și micșora destul de des în timp ce lucrați la imagini în Photoshop. Puteți găsi opțiuni de meniu pentru zoom în meniul Vizualizare; o modalitate mai rapidă de a mări este ...

Text în Photoshop CC - dummies

Text în Photoshop CC - dummies

Când editați o imagine cu text în Photoshop CC, puteți schimba linia care fluxul dvs. de tip fie folosind funcția Warp Text sau tastând pe o cale. Tipul de deformare utilizează forme predefinite la care se formează tipul dvs. (și poate fi utilizat atât cu tipul de punct, cât și cu paragraful) și tastând ...

Alegerea editorilor

Cum se adaugă Biblioteca RegEx în C ++ - dummies

Cum se adaugă Biblioteca RegEx în C ++ - dummies

Cea mai mare parte a bibliotecii Boost funcționează bine adăugând la codul aplicației. Cu toate acestea, câteva componente, cum ar fi RegEx, necesită o bibliotecă. Înainte de a putea folosi o bibliotecă, trebuie să o construiți. După ce ați construit biblioteca, trebuie să o adăugați în aplicație. Există două tehnici de adăugare a ...

Cum Heap Works în C ++ - dummies

Cum Heap Works în C ++ - dummies

Halda este un bloc amorf de memorie pe care programul C ++ îl poate accesa după cum este necesar. Aflați de ce există și cum se utilizează. Așa cum este posibil să treci un pointer la o funcție, este posibil ca o funcție să returneze un pointer. O funcție care returnează adresa ...

Cum să evitați codul de injectare în C ++ - dummies

Cum să evitați codul de injectare în C ++ - dummies

Prima regulă de evitare a codului injectat în programele C ++ , permiterea prelucrării datelor de către un interpret de limbă cu scop general. O eroare obișnuită cu SQL-injectarea este că programul acceptă intrarea utilizatorului ca și cum ar fi fost întotdeauna acceptabilă și îl inserează într-o interogare SQL pe care o trimite apoi la ...