Fondamenti di Big Data con PySpark
Upendra Devisetty
Science Analyst, CyVerse
Machine learning è una disciplina scientifica che studia la costruzione e
l'analisi di algoritmi che possono apprendere dai dati
MLlib è un componente di Apache Spark per il Machine Learning
MLlib offre vari strumenti, tra cui:
Algoritmi ML: collaborative filtering, classificazione e clustering
Featurization: estrazione, trasformazione, riduzione dimensionale e selezione delle feature
Pipeline: strumenti per creare, valutare e ottimizzare ML Pipelines
Scikit-learn è una popolare libreria Python per data mining e Machine Learning
Gli algoritmi di scikit-learn funzionano solo su piccoli insiemi di dati su una singola macchina
Gli algoritmi di MLlib sono progettati per l'elaborazione parallela su un cluster
Supporta linguaggi come Scala, Java e R
Fornisce un'API di alto livello per costruire pipeline di Machine Learning
Classificazione (binaria e multiclasse) e regressione: SVM lineari, regressione logistica, alberi decisionali, foreste casuali, alberi potenziati a gradiente, naive Bayes, minimi quadrati lineari, Lasso, ridge regression, regressione isotonica
Collaborative filtering: Alternating Least Squares (ALS)
Clustering: K-means, Gaussian mixture, Bisecting K-means e Streaming K-Means
Collaborative filtering (motori di raccomandazione): genera raccomandazioni
Classificazione: determina a quale categoria appartiene una nuova osservazione
Clustering: raggruppa i dati in base a caratteristiche simili
from pyspark.mllib.recommendation import ALS
from pyspark.mllib.classification import LogisticRegressionWithLBFGS
from pyspark.mllib.clustering import KMeans
Fondamenti di Big Data con PySpark