Fundamentos de big data con PySpark
Upendra Devisetty
Science Analyst, CyVerse
El aprendizaje automático es una disciplina científica que estudia y construye
algoritmos que pueden aprender de los datos
MLlib es un componente de Apache Spark para aprendizaje automático
MLlib ofrece varias herramientas:
Algoritmos de ML: filtrado colaborativo, clasificación y clustering
Featurización: extracción de características, transformación, reducción y selección de dimensionalidad
Pipelines: herramientas para crear, evaluar y ajustar pipelines de ML
Scikit-learn es una librería popular de Python para minería de datos y aprendizaje automático
Los algoritmos de scikit-learn solo funcionan con datasets pequeños en una sola máquina
Los algoritmos de MLlib en Spark están diseñados para procesamiento paralelo en un clúster
Soporta lenguajes como Scala, Java y R
Proporciona una API de alto nivel para crear pipelines de ML
Clasificación (binaria y multiclase) y regresión: SVM lineales, regresión logística, árboles de decisión, random forests, gradient-boosted trees, naive Bayes, mínimos cuadrados, Lasso, ridge, regresión isotónica
Filtrado colaborativo: Alternating Least Squares (ALS)
Clustering: K-means, mezcla gaussiana, K-means biseccionado y Streaming K-Means
Filtrado colaborativo (motores de recomendación): genera recomendaciones
Clasificación: identifica a qué categoría pertenece una nueva observación
Clustering: agrupa datos por características similares
from pyspark.mllib.recommendation import ALS
from pyspark.mllib.classification import LogisticRegressionWithLBFGS
from pyspark.mllib.clustering import KMeans
Fundamentos de big data con PySpark