Big Data Fundamentals with PySpark
Upendra Devisetty
Science Analyst, CyVerse
Machine learning is a scientific discipline that explores the construction and
study of algorithms that can learn from data
MLlib je komponenta Apache Spark pro strojové učení
Nástroje poskytované MLlib zahrnují:
Algoritmy ML: kolaborativní filtrování, klasifikace a shlukování
Featurizace: extrakce příznaků, transformace, redukce dimenzionality a výběr
Pipeliny: nástroje pro tvorbu, vyhodnocování a ladění ML pipelinů
Scikit-learn je populární Python knihovna pro dolování dat a strojové učení
Algoritmy Scikit-learn fungují pouze pro malé datové sady na jednom stroji
Algoritmy MLlib jsou navrženy pro paralelní zpracování na clusteru
Podporuje jazyky jako Scala, Java a R
Poskytuje vysokoúrovňové API pro tvorbu ML pipelinů
Klasifikace (binární a vícetřídní) a regrese: Lineární SVM, logistická regrese, rozhodovací stromy, náhodné lesy, stromy s gradientním posilováním, naivní Bayes, lineární metoda nejmenších čtverců, Lasso, hřebenová regrese, izotoická regrese
Kolaborativní filtrování: Střídavé nejmenší čtverce (ALS)
Shlukování: K-means, Gaussova směs, bisekující K-means a streamovací K-means
Kolaborativní filtrování (doporučovací systémy): Generuje doporučení
Klasifikace: Určuje, do které kategorie patří nové pozorování
Shlukování: Seskupuje data podle podobných vlastností
from pyspark.mllib.recommendation import ALS
from pyspark.mllib.classification import LogisticRegressionWithLBFGS
from pyspark.mllib.clustering import KMeans
Big Data Fundamentals with PySpark