Fundamentele Big Data cu PySpark
Upendra Devisetty
Science Analyst, CyVerse
Machine learning este o disciplină științifică ce studiază algoritmi
capabili să învețe din date
MLlib este o componentă Apache Spark pentru machine learning
Instrumentele oferite de MLlib includ:
Algoritmi ML: filtrare colaborativă, clasificare și clustering
Featurizare: extracție, transformare, reducerea dimensionalității și selecție
Pipeline-uri: instrumente pentru construirea, evaluarea și ajustarea pipeline-urilor ML
Scikit-learn este o bibliotecă Python populară pentru data mining și machine learning
Algoritmii Scikit-learn funcționează doar pentru seturi mici de date, pe o singură mașină
Algoritmii MLlib din Spark sunt proiectați pentru procesare paralelă pe un cluster
Suportă limbaje precum Scala, Java și R
Oferă un API de nivel înalt pentru construirea pipeline-urilor de machine learning
Clasificare (binară și multiclasă) și regresie: SVM liniar, regresie logistică, arbori de decizie, păduri aleatoare, arbori gradient-boosted, Naive Bayes, cel mai mic pătrat liniar, Lasso, regresie ridge, regresie izotonă
Filtrare colaborativă: Alternating Least Squares (ALS)
Clustering: K-means, amestec gaussian, Bisecting K-means și Streaming K-Means
Filtrare colaborativă (motoare de recomandare): generează recomandări
Clasificare: determină categoria căreia îi aparține o nouă observație
Clustering: grupează datele pe baza caracteristicilor similare
from pyspark.mllib.recommendation import ALS
from pyspark.mllib.classification import LogisticRegressionWithLBFGS
from pyspark.mllib.clustering import KMeans
Fundamentele Big Data cu PySpark