¿Qué es Spark MLlib en Apache Spark?

Autor: | Última modificación: 18 de abril de 2024 | Tiempo de Lectura: 3 minutos
Temas en este post:

Algunos de nuestros reconocimientos:

Premios KeepCoding

¿Qué es Spark MLlib?

Spark MLlib en Apache Spark es una librería de este reconocido sistema de computación. De manera que su campo de desarrollo se encuentra en el aprovechamiento de los macrodatos como parte fundamental para una evolución e innovación de determinada organización.

En efecto, conocer esta Spark MLlib, que trabaja con el Machine Learning, se ha convertido en un pilar fundamental para el conocimiento y desarrollo del flujo de datos en Spark. Por ello, en este post te exponemos qué es Spark MLlib en Apache Spark para el manejo de los macrodatos.

¿Qué es Apache Spark?

En primer lugar, antes de ver qué es Spark MLlib, es necesario recordar que Apache Spark es un sistema de computación basado en Hadoop Map Reduce. Su principal objetivo es permitir dividir y paralelizar los jobs, de forma que estos trabajen con los datos de manera distribuida.

Por otra parte, Apache Spark proporciona distintas APIs (Interfaz de programación de aplicaciones) para funcionar, como son Core, SQL, Streaming, Graph o Machine Learning. De igual forma, Spark es un multilenguaje que se puede desarrollar en sistemas como Scala, Java, Lenguaje JVM (Máquina virtual Java), Python o R.

¿Qué es Spark MLlib en Apache Spark?

Spark MLlib en Apache Spark es una librería dentro de este sistema de computación que te permite hacer jobs de Machine Learning en un modo distribuido.
Por otra parte, Spark MLlib proporciona a tu procesamiento de macrodatos los siguientes elementos:

  • ML Algortihms: permite la clasificación, la regresión, el clusterizado y los filtros colaborativos.
  • Featurization: consiste en la extracción de features, transformaciones, reducción de dimensiones, etc.
  • Pipelines: son herramientas para construir, evaluar y tunear modelos de ML.
  • Persistence: te facilita salvar y guardar modelos y pipelines.
  • Utilidades: de esta manera podrás trabajar con datos, estadísticas, álgebra lineal, etc.
  • Spark MLlib: funciona utilizando el API de DataFrame.

Principales funciones de Spark MLlib en Apache Spark

A continuación te compartimos cuáles son las principales funciones que emplea Spark MLlib en Apache Spark:

Pipelines

Los pipelines son flujos de trabajo que combinan múltiples algoritmos operaciones. Para su uso, debes tener en cuenta los siguientes conceptos:

  • DataFrame: la API de ML usa DataFrame de SparkSQL, en estos se preparan los datos para los modelos y se obtienen los resultados.
  • Transformer: transformar un DataFrame en otro DataFrame; por ejemplo, transformar un DataFrame de features a uno de predicciones.
  • Estimator: algoritmos que se puede entrenar y produce un transformer.
  • Pipeline: conjunto encadenado de transformers y estimators.
  • Parameter: parámetros asociados a los transformers y estimators.
¿Qué es Spark MLlib en Apache Spark?
¿Qué es Spark MLlib en Apache Spark?

Algoritmos (algorithms)

Estos se encargan de la clasificación y el clustering. En efecto, dentro de estos podrás encontrar:

  • Clustering
  • Collaborative Filtering
  • Frequent Pattern Mining

Tunear (tunning)

Spark MLlib en Apache Spark te permite tunear los algoritmos realizando pruebas basadas en
parámetros de entrada. Para ello debes:

  • Indicar qué parámetros de entrada quieres probar.
  • Indicar el estimador que vas a usar (algoritmo o pipeline).
  • Indicar un evaluador (evaluator) para verificar los resultados.

A partir de allí, Apache Spark automáticamente genera distintas muestras de train/test del DataFrame de datos y empieza a ejecutar el tunning. Finalmente, con el evaluator como base, selecciona el modelo con los mejor resultados.

Conoce más sobre el Big Data

Por medio de este post, te has acercado un poco más al desenvolvimiento de Spark MLlib en Apache Spark. No obstante, debes tener en cuenta que este variará según la organización, sus prioridades e intereses; por ello, te aconsejamos ajustar este conocimiento a tu desenvolvimiento laboral.

De hecho, para hacerlo más en profundidad, desde KeepCoding te ofrecemos nuestro Bootcamp Full Stack Big Data, Inteligencia Artificial & Machine Learning. Gracias a esta formación intensiva, podrás aprender todo lo relacionado con las herramientas y lenguajes actuales y populares para el manejo de los macrodatos. ¡Inscríbete ya!

¡CONVOCATORIA ABIERTA!

Big Data, IA & Machine Learning

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado