LinkedIn oferece Feathr em código aberto para gerenciamento de recursos de ML

Por que integrar o Linkedin Feathr em seu stack? Esta ferramenta pode ser realmente útil para automatizar e melhorar seu gerenciamento de recursos de uma maneira fácil.

Como foi explicado em outro artigo, a engenharia de recursos (Feature Engineering) é “a preparação de dados brutos a ser usados em um modelo de Machine Learning (ML)”. Neste caso, o sucesso de um modelo depende da qualidade dos dados que o alimentam. Os cientistas de dados gastam a maior parte de seu tempo de trabalho em tarefas relacionadas à preparação de dados. No entanto, conseguir isso de forma eficiente apresenta diferentes desafios: alimentar dados de qualidade, limpar e organizar arquivos, escolher o algoritmo e o modelo certos, criar as melhores funcionalidades, gerar resultados e muito mais.

Existem várias técnicas de Feature Engineering para ajudar nesta tarefa. Quando essas técnicas são combinadas com as ferramentas corretas, podem fazer uma enorme diferença ao trabalhar com qualquer projeto de ML. Precisamente, o LinkedIn agora oferece o Feathr em código aberto e promete ser “um arquivo de recursos que construímos para simplificar o gerenciamento de recursos de ML e melhorar a produtividade do desenvolvedor”.

O que é Feathr?

Para os cientistas de dados do LinkedIn, preparar e gerenciar recursos era uma das tarefas mais demoradas. Além disso, dificultava a escala das aplicações de ML, porque ter processos, frameworks e maneiras não diferentes de desenvolver projetos significava dificuldades para compartilhar ou reutilizar o trabalho.

Pensando nessas limitações, a equipe criou e lançou o Feathr em 2017. É “uma camada de abstração que fornece um namespace de recursos comuns para definir recursos e uma plataforma comum para computar, servir e acessá-los ‘pelo nome’ de dentro de fluxos de trabalho ML”, de acordo com o LinkedIn. O Feathr também é categorizado como um “arquivo de recursos” (feature store), um termo recente “para descrever sistemas que gerenciam e servem dados de recursos de ML”.

A solução: Feathr feature store. Fonte.

Um “produtor” (producer) pode definir e registrar recursos no Feathr, e os “consumidores” (consumers) podem acessar esses recursos e incorporá-los em seus fluxos de trabalho de modelo de ML. Isso permite reduzir o tempo e os recursos necessários, mas também padronizar a maneira como os recursos são criados. “Para o treinamento de modelos, os recursos são computados e unidos aos tags de entrada (input) de maneira correta e no tempo certo. Para a inferência de modelos, os recursos são pré-materializados e implantados em armazenamentos de dados online para atendimento online de baixa latência. Recursos definidos por diferentes equipes e projetos podem ser facilmente utilizados em conjunto, possibilitando a colaboração e a reutilização.”, explica a empresa.

Este post do blog Datanami acrescenta: “em vez de trabalhar manualmente com recursos como parte de um pipeline de dados individual, o Feathr automatiza e padroniza a interação com o tipo de dados, que é usado nos estágios de treinamento e inferência de ML.”

Hoje em dia, o LinkedIn usa o Feathr para diferentes e grandes projetos de ML, bem como dezenas de aplicativos implantados envolvendo funcionalidades essenciais, como busca, feed de postagens e anúncios. 

Características do Feathr

Com Feathr, você pode:

  • Definir recursos com base em fontes de dados sem processar.
  • Criar recursos para diferentes cenários. Por exemplo: modelo de treinamento ou modelo de serviço.
  • Usar APIs baseadas em Python.
  • Compartilhar os recursos com toda a sua equipe para reutilizá-los.
  • Usar recursos criados por outros membros da equipe em seus pipelines e projetos.
  • Conectar fontes de dados off-line para transformá-las em recursos.
  • Integrar outras ferramentas, como Databricks e Azure Synapse, de forma nativa.

Capacidades do Feathr

Este artigo no GitHub destaca algumas das principais capacidades do Feathr:

  • O Feathr “fornece uma interface do usuário intuitiva para que você possa buscar e explorar todos os recursos disponíveis e suas linhagens correspondentes.”
  • Suporte a UDF: “O Feathr tem UDFs altamente personalizáveis com integração nativa de PySpark e Spark SQL para reduzir a curva de aprendizado para cientistas de dados.”
  • Determina os recursos de agregação de janelas com correção pontual.
  • Define recursos em cima de outros recursos – Recursos Derivados.
  • Define recursos de streaming.
  • Point in Time Joins.

Além disso, o gráfico a seguir mostra como as integrações e a arquitetura da nuvem funcionam com o Feathr:

Feathr: Integrações e arquitetura em nuvem. Fonte.

Como foi explicado anteriormente, o Feathr pode ser integrado a outras ferramentas, incluindo o catálogo do Azure. Feathr tem diferentes componentes que estão disponíveis para trabalhar com essas ferramentas, em diferentes tarefas e fases de seus projetos: armazenamento de objetos, streaming, governança, motor de computação, credenciais e muito mais.

Uma ferramenta de código aberto

Uma das principais vantagens do Feathr: agora é open source. Desde abril de 2022, o Feathr está disponível para desenvolvedores, cientistas de dados e qualquer profissional de ML. O projeto também é parte da LF AI & Data Foundation. “Nosso objetivo é apoiar ao Feathr a expandir sua base de usuários, expandir sua comunidade de desenvolvedores, tornar-se líder dentro de sua própria categoria e permitir oportunidades de colaboração e integração com outros projetos. Estamos ansiosos pelo crescimento e sucesso contínuos do projeto como parte da LF AI & Data”, disse Ibrahim Haddad, Gerente Geral da Fundação.

Como instalar o Feathr

Para instalar o cliente Feathr em um ambiente python, use este comando:

pip install feathr

Ou use o código mais recente do GitHub: 

pip install

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

Para obter mais informações e detalhes, visite este repositório no GitHub ou assista a este tutorial sobre a construção de um modelo de ML usando o Feathr.

Scroll to Top