Panoramica di PySpark MLlib

Fondamenti di Big Data con PySpark

Upendra Devisetty

Science Analyst, CyVerse

Che cos'è PySpark MLlib?

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

1 https://en.wikipedia.org/wiki/Machine_learning
Fondamenti di Big Data con PySpark

Perché PySpark MLlib?

  • 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

Fondamenti di Big Data con PySpark

Algoritmi di PySpark MLlib

  • 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

Fondamenti di Big Data con PySpark

Le tre C del Machine Learning in PySpark MLlib

  • 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

Fondamenti di Big Data con PySpark

Import di PySpark MLlib

  • Collaborative filtering
from pyspark.mllib.recommendation import ALS
  • Classificazione
from pyspark.mllib.classification import LogisticRegressionWithLBFGS
  • Clustering
from pyspark.mllib.clustering import KMeans
Fondamenti di Big Data con PySpark

Esercitiamoci!

Fondamenti di Big Data con PySpark

Preparing Video For Download...