Visão geral do PySpark MLlib

Fundamentos de Big Data com PySpark

Upendra Devisetty

Science Analyst, CyVerse

O que é o PySpark MLlib?

Aprendizado de máquina é uma disciplina que estuda a construção e
análise de algoritmos que aprendem com dados
  • MLlib é um componente do Apache Spark para aprendizado de máquina

  • As ferramentas do MLlib incluem:

    • Algoritmos de ML: filtragem colaborativa, classificação e clusterização

    • Featurização: extração, transformação, redução e seleção de features

    • Pipelines: ferramentas para criar, avaliar e ajustar Pipelines de ML

1 https://en.wikipedia.org/wiki/Machine_learning
Fundamentos de Big Data com PySpark

Por que PySpark MLlib?

  • Scikit-learn é uma biblioteca Python popular para mineração de dados e ML

  • Os algoritmos do scikit-learn funcionam só para datasets pequenos em uma única máquina

  • Os algoritmos do MLlib do Spark são feitos para processamento paralelo em cluster

  • Suporta linguagens como Scala, Java e R

  • Fornece uma API de alto nível para construir pipelines de ML

Fundamentos de Big Data com PySpark

Algoritmos do PySpark MLlib

  • Classificação (binária e multiclasse) e regressão: SVM linear, regressão logística, árvores de decisão, florestas aleatórias, árvores com boosting, ingênuo de Bayes, mínimos quadrados lineares, Lasso, ridge, regressão isotônica

  • Filtragem colaborativa: Alternating Least Squares (ALS)

  • Clusterização: K-means, mistura gaussiana, K-means bissecionado e Streaming K-Means

Fundamentos de Big Data com PySpark

Os três Cs de ML no PySpark MLlib

  • Filtragem colaborativa (recomendação): gera recomendações

  • Classificação: identifica a qual categoria uma nova observação pertence

  • Clusterização: agrupa dados por características semelhantes

Fundamentos de Big Data com PySpark

Imports do PySpark MLlib

  • Filtragem colaborativa
from pyspark.mllib.recommendation import ALS
  • Classificação
from pyspark.mllib.classification import LogisticRegressionWithLBFGS
  • Clusterização
from pyspark.mllib.clustering import KMeans
Fundamentos de Big Data com PySpark

Vamos praticar!

Fundamentos de Big Data com PySpark

Preparing Video For Download...