Chronon - a plataforma open source de features de ML lançada pelo Airbnb
(github.com/airbnb)- Plataforma open source de features end-to-end que permite criar, implantar, gerenciar e monitorar facilmente pipelines de dados para machine learning
- Atualmente usada em todas as principais aplicações de ML dentro do Airbnb e em casos de uso importantes da Stripe
Principais recursos
- Coleta de dados a partir de várias fontes: streams de eventos, snapshots de tabelas de banco de dados, streams de change data, endpoints de serviços, tabelas de warehouse etc., que podem ser modelados e usados como dimensões lentamente mutáveis, fatos ou tabelas de dimensão
- Geração de resultados em contextos online e offline: no online, como endpoints escaláveis de baixa latência; no offline, como tabelas Hive para geração de dados de treinamento
- Possibilidade de escolher entre precisão em tempo real ou em batch:
- Os resultados podem ser configurados com precisão Temporal ou Snapshot
- Temporal significa atualizar os valores das features em tempo real no contexto online e gerar features adequadas a um ponto específico no tempo no contexto offline
- Precisão Snapshot significa que as features são atualizadas uma vez por dia, à meia-noite
- Possibilidade de fazer backfill de datasets de treinamento a partir de dados brutos: sem precisar esperar meses até acumular logs de features para treinar modelos
- API Python robusta: oferece abstrações em nível de API para tipo de fonte de dados, atualização, contexto etc., combinando elementos básicos intuitivos de SQL como
group-by,join,selectcom recursos avançados - Monitoramento automatizado de features: possibilidade de gerar automaticamente pipelines de monitoramento para entender a qualidade dos dados de treinamento, medir divergência entre treinamento e serving, monitorar drift de features etc.
Contexto de desenvolvimento
- O Chronon foi desenvolvido para resolver uma dor comum em que profissionais de ML gastam a maior parte do tempo gerenciando os dados que alimentam os modelos, em vez de focar na modelagem em si
Limitações das abordagens existentes
-
Abordagem de replicação offline-online
- Profissionais de ML treinam modelos com dados do data warehouse e depois procuram uma forma de replicar essas features no ambiente online
- Vantagens: permite aproveitar ao máximo o data warehouse, incluindo fontes de dados e ferramentas robustas para transformações de dados em larga escala
- Desvantagens: não há uma forma clara de fornecer as features do modelo para inferência online, o que causa inconsistências e vazamento de rótulos, afetando seriamente o desempenho do modelo
-
Abordagem de logging e espera
- Profissionais de ML começam com os dados disponíveis no ambiente de serving online onde a inferência do modelo será executada e registram as features relevantes no data warehouse
- Quando dados suficientes são acumulados, treinam o modelo a partir dos logs e fazem o serving com os mesmos dados
- Vantagens: a consistência é garantida e a possibilidade de vazamento é baixa
- Desvantagens: o longo tempo de espera dificulta responder rapidamente a mudanças no comportamento dos usuários
Abordagem do Chronon
- O Chronon permite que profissionais de ML definam uma feature apenas uma vez para alimentar tanto o fluxo offline de treinamento do modelo quanto o fluxo online de inferência
- Além disso, oferece ferramentas robustas para encadeamento de features, observabilidade, qualidade de dados, compartilhamento e gestão de features
- Com isso, torna possível aproveitar as vantagens das abordagens existentes enquanto compensa suas desvantagens
Ainda não há comentários.