LinkedIn ofrece Feathr en código abierto para gestión de atributos de ML

¿Por qué integrar Feathr de Linkedin en tu stack? Esta herramienta puede ser realmente útil para automatizar y mejorar tu gestión de atributos de una manera fácil.

Como explicamos en otro artículo, la ingeniería de atributos (Feature Engineering) es “la preparación de datos brutos que se utilizarán en un modelo de Machine Learning (ML), o aprendizaje automático”. En este sentido, el éxito de un modelo depende de la calidad de los datos que lo alimentan. Los científicos de datos pasan la mayor parte de su tiempo de trabajo en tareas relacionadas con la preparación de datos. Sin embargo, lograr esto de manera eficiente plantea diferentes desafíos: usar datos de calidad, limpiar y organizar archivos, elegir el algoritmo y el modelo correctos, crear las mejores funcionalidades, generar resultados y más.

Hay varias técnicas de Feature Engineering para ayudar en esta tarea. Cuando estas técnicas se combinan con las herramientas adecuadas, pueden hacer una gran diferencia al trabajar con cualquier proyecto de ML. Precisamente, LinkedIn ahora ofrece Feathr en código abierto y promete ser “un archivo de atributos que construimos para simplificar la gestión de de ML y mejorar la productividad de los desarrolladores”.

¿Qué es Feathr?

Para los científicos de datos de LinkedIn, preparar y gestionar los atributos era una de las tareas que consumía más tiempo. Además, esto hacía difícil escalar las aplicaciones de ML, ya que al tener procesos, frameworks y formas de desarrollar proyectos diferentes significaba dificultades para compartir o reutilizar el trabajo.

Pensando en estas limitaciones, el equipo creó y lanzó Feathr en 2017. Es “una capa de abstracción que proporciona un namespace de atributos comunes para definir atributos y una plataforma común para computar, servir y acceder a ellos ‘por nombre’ desde los flujos de trabajo de ML”, según LinkedIn. Feathr también se considera un “archivo de atributos” (feature store), un término reciente “para describir sistemas que gestionan y sirven datos de atributos de ML”.

La solución: Feathr feature store. Fuente.

Un “productor” (producer) puede definir y registrar atributos en Feathr, y los “consumidores” (consumers) pueden acceder a esos atributos e incorporarlos en sus flujos de trabajo del modelo de ML. Esto permite reducir el tiempo y los recursos necesarios, pero también estandarizar la forma en que se crean los atributos. “Para el entrenamiento de modelos, los atributos se calculan y se unen a las etiquetas de entrada (input) de una manera correcta y en el tiempo justo. Para la inferencia de modelos, los atributos se pre-materializan y se implementan en los almacenes de datos en línea para un servicio en línea de baja latencia. Los atributos definidos por diferentes equipos y proyectos se pueden usar juntos fácilmente, lo que permite la colaboración y su reutilización”, explica la compañía.

Esta publicación del blog de Datanami agrega: “en lugar de trabajar manualmente con atributos como parte de un pipeline de datos individual, Feathr automatiza y estandariza la interacción con el tipo de datos, que se utiliza tanto en las etapas de entrenamiento como de inferencia de ML”.

Hoy en día, LinkedIn utiliza Feathr para diferentes y grandes proyectos de ML, así como docenas de aplicaciones implementadas que involucran funcionalidades básicas, como búsqueda, feed de publicaciones y anuncios. 

Características de Feathr

Con Feathr, puedes:

  • Definir atributos basados en fuentes de datos sin procesar.
  • Crear atributos para diferentes escenarios. Por ejemplo: entrenamiento del modelo o implementación del modelo.
  • Usar API basadas en Python.
  • Compartir los atributos con todo tu equipo para reutilizarlos.
  • Utilizar los atributos creados por otros miembros del equipo en tus pipelines y proyectos.
  • Conectar las fuentes de datos sin conexión para transformarlas en atributos.
  • Integrar otras herramientas, como Databricks y Azure Synapse, de forma nativa.

Capacidades de Feathr

Este artículo en GitHub destaca algunas de las principales capacidades de Feathr:

  • Feathr “proporciona una interfaz de usuario intuitiva para que puedas buscar y explorar todos los atributos disponibles y sus correspondientes linajes”.
  • Compatibilidad con UDF: “Feathr tiene UDF altamente personalizables con integración nativa de PySpark y Spark SQL para reducir la curva de aprendizaje de los científicos de datos”.
  • Determina los atributos de agregación de ventanas con factor de ajuste en tiempo.
  • Define atributos sobre otros atributos – Atributos derivados.
  • Define atributos de streaming.
  • Point in Time Joins.

Además, este gráfico muestra cómo funcionan las integraciones y la arquitectura de la nube con Feathr:

Feathr: Integraciones y arquitectura en la nube. Fuente

Como se explicó anteriormente, Feathr se puede integrar con otras herramientas, que incluyen el catálogo de Azure. Feathr tiene un montón de componentes que están disponibles para trabajar con cualquiera de esas herramientas, en diferentes tareas y fases de tus proyectos: almacenamiento de objetos, streaming, gobernanza, motor de computación, credenciales y más.

Una herramienta de código abierto

Una de las principales ventajas de Feathr: ahora es de código abierto. Desde abril de 2022, Feathr está disponible para desarrolladores, científicos de datos y cualquier profesional de ML. El proyecto también es parte de la LF AI & Data Foundation. “Nuestro objetivo es apoyar a Feathr para que amplíe su base de usuarios, haga crecer su comunidad de desarrolladores, se convierta en un líder dentro de su propia categoría y permita oportunidades de colaboración e integración con otros proyectos. Esperamos con interés el crecimiento continuo y el éxito del proyecto como parte de la fundación”, dijo Ibrahim Haddad, gerente general de la Fundación.

Cómo instalar Feathr

Para instalar el cliente Feathr en un entorno python, usa el siguiente comando:

pip install feathr

O usa el código más reciente de GitHub:

pip install

git+https://github.com/feathr-ai/feathr.git#subdirectory=feathr_project

Para obtener más información y detalles, visita este repositorio en GitHub o este tutorial sobre la construcción de un modelo de ML usando Feathr.

Scroll to Top