ML para todos: uma introdução à plataforma de ML da Nordstrom

(Ariana Bray) (17 de abril de 2020)

Nossa estratégia para habilitar o aprendizado de máquina de autoatendimento em escala

Foto de Pietro Jeng em Unsplash

Desde o gerenciamento da logística da cadeia de suprimentos até (criação de looks selecionados (recomendações de estilo digital) para milhões de clientes), mais e mais equipes da Nordstrom estão aproveitando poder do aprendizado de máquina (ML) para continuar a aprimorar a experiência do cliente. Desde a escolha de uma fonte de dados até a escolha de uma linguagem de programação, todo mundo faz isso de maneira diferente. Onde entra a equipe da plataforma de aprendizado de máquina da Nordstrom? Apresentando o Cerebro , uma plataforma de aprendizado de máquina para todos. Neste artigo, discutiremos nossa visão para o Cerebro, a necessidade de uma plataforma de aprendizado de máquina e os problemas que abordamos ao projetar o Cerebro.

Nossa visão

Nossa visão para O Cerebro era criar uma plataforma que capacitasse cientistas de dados, analistas e outros desenvolvedores de ML a criar soluções de ML escalonáveis ​​que gerassem impacto direto nos negócios – em outras palavras, nossa missão é permitir aprendizado de máquina de autoatendimento em escala Cerebro tem como objetivo fornecer aos usuários um conjunto unificado de ferramentas que eles podem usar para desenvolver rapidamente e implantar com segurança suas soluções de ML.

Em resumo, o objetivo principal do Cerebro é fornecer uma maneira fácil de gerenciar o ciclo de vida de um modelo. O Cerebro impacta diretamente toda a Nordstrom, não só permitindo que os modelos sejam colocados em produção com mais rapidez, mas também permitindo que outras equipes usem o SDK do Cerebro para substituir seus serviços por nossas soluções de ML. O Cerebro já foi usado por várias equipes da Nordstrom para atender aos seus projetos. Nossa plataforma tem sido usada para potencializar ferramentas internas, como previsão de modelo. Mantemos as seguintes diretrizes na vanguarda de nossas decisões de design:

Alcançamos essas metas usando automações para criar uma experiência de usuário confortável.

Automatizações para uma experiência confortável do usuário

A necessidade

Por muito tempo, os cientistas de dados da Nordstrom buscaram novas maneiras de resolver esta pergunta— como ativar um fluxo de trabalho de aprendizado de máquina de ponta a ponta de nível de produção .

O fluxo de trabalho também precisa incluir muitos aspectos do aprendizado de máquina.

Incorporar engenheiros de dados em cada equipe para criar soluções pontuais para essas necessidades simplesmente não é uma boa relação custo-benefício opção. Permitir que essas equipes de ciência de dados gerenciem todo o ciclo de vida do aprendizado de máquina (da ingestão de dados ao serviço de modelo) levaria uma quantidade de tempo inaceitável, desacelerando a organização como um todo. Resumindo, precisávamos de uma maneira de abstrair a engenharia do aprendizado de máquina.

As oportunidades

Existem problemas amplamente conhecidos que vêm com a implantação de um modelo para produção. Além desses problemas, a equipe da plataforma de ML também precisa enfrentar problemas específicos da Nordstrom:

  • Muitos modelos, muitos padrões : Nordstrom usa métricas de nível empresarial e soluções de registro – mas sem um ponto de contato para os resultados dessas métricas e registros, quão eficazes são eles? Quem é responsável por manter a integridade do serviço e o balanceador de carga? Quais são algumas métricas que devem ser monitoradas?
  • Escala : casos de uso de ciência de dados são limitados a um instância de computação única e autônoma. Devido à ausência de uma plataforma de ML de nível empresarial, a computação distribuída não é aproveitada.
  • Fluxo de trabalho : Na ausência de fluxos de trabalho de ML, as equipes de engenharia da Nordstrom geralmente precisam fazer ajustes significativos em um projeto liderado pela ciência de dados para torná-lo pronto para produção.
  • Aprendendo novas ferramentas: Na ausência de uma abstração entre ML e engenharia, aqueles que trabalham em projetos de ML devem aprender novas ferramentas e tecnologias. Esse esforço é demorado, requer suporte de engenharia e adiciona atrasos ao cronograma de criação de um modelo pronto para produção.

Por que não apenas usar uma plataforma existente?

Existem muitas lacunas nas ofertas de ML SaaS existentes:

  • Sem armazenamento de recursos centralizado
  • Sem suporte para todos os modelos e linguagens
  • Modelos específicos de software
  • Sem rastreamento de modelo; sem código → recurso → modelo linhagem
  • Ajuste de hiperparâmetros generalizado específico da estrutura
  • Desafios de integração com a infraestrutura existente
  • Modelos de assinatura caros

Decidimos construir uma plataforma que dá aos cientistas de dados o que eles precisam e preenche muitas das lacunas deixadas por outras soluções de plataforma de ML.

Por que estamos construindo o Cerebro

O Cerebro é uma plataforma que democratiza o aprendizado de máquina. Em sua essência, o Cerebro fortalece a parceria e faz a ponte entre a ciência de dados e a engenharia.

O Cerebro oferece aos usuários uma série de benefícios, alguns dos quais são destacados abaixo:

* Autoatendimento – a dependência do usuário de uma equipe de engenharia separada é reduzida;

* Consistente – nossa abordagem se alinha aos fluxos de trabalho de ML existentes usados ​​pela comunidade de ciência de dados;

* Menos novas tecnologias – a necessidade de um usuário aprender novas tecnologias é reduzida ao mínimo absoluto porque fornecemos abstração por meio de nossas interfaces;

* Fácil de usar – Cerebro não retarda o processo de produção de modelos.

Em vez de contratar mais engenheiros para dar suporte aos casos de uso de ciência de dados em constante expansão , construímos uma plataforma que pode ser dimensionada para permitir esses casos de uso. Em vez de tomar decisões baseadas em software de terceiros, queremos tomar decisões baseadas em algoritmos personalizados.

Benefícios do uso do Cerebro

Venha como você está: abstrações para um fluxo de trabalho padronizado

Nossa equipe não queria adotar uma abordagem prescritiva e pedir a cada equipe que usasse as mesmas ferramentas e tecnologias. Em vez disso, desenvolvemos abstrações que ajudam a criar um fluxo de trabalho padronizado – a calma sobre a tempestade. Os usuários têm uma variedade de maneiras de criar, desenvolver e implantar seus projetos.

Sem tecnologia proprietária

Não estamos introduzindo nenhuma tecnologia que seja proprietária de qualquer empresa ou organização – portanto, não temos custos de licenciamento.

Não há novo Infraestrutura de computação necessária

Estamos aproveitando as plataformas de computação já estabelecidas na Nordstrom, não configurando nenhuma nova.

Escolha a sua própria Fonte de dados

Em vez de pedir a cada equipe para usar uma fonte de dados específica, o Cerebro permite que os usuários se conectem com segurança a vários dos bancos de dados e armazéns de dados mais populares. Conforme a plataforma amadurece, permitiremos conexões com ainda mais fontes de dados.

Agnóstico do provedor de nuvem

Embora o Cerebro tenha algumas dependências de provedores de nuvem específicos, estamos construindo para uma solução independente de nuvem que pode ser facilmente estendida para oferecer suporte a várias ofertas de nuvem.

Sem restrições nas estruturas de treinamento de modelo suportadas

O Cerebro oferece suporte à maioria dos frameworks de ML mais populares. Qualquer estrutura que um cientista de dados queira usar pode ter suporte com o mínimo ou nenhuma alteração.

Linhagem entre código, dados e modelo

Com metadados valiosos disponíveis em cada etapa, o Cerebro oferece uma maneira de unir o código escrito → os dados usados ​​→ e os modelo . Os usuários podem obter informações sobre como o modelo é veiculado e também ativar a medição de desempenho / eficácia do modelo.

Teste e controle de qualidade

O Cerebro torna mais fácil testar perfeitamente a lógica como parte do processo de integração contínua. A qualidade dos dados é garantida em cada etapa.

One-Stop Shop

O Cerebro pode cuidar de tudo. Os usuários podem:

  • criar um projeto de aprendizado de máquina com seu próprio repositório Gitlab
  • realizar desenvolvimento local
  • servir modelos offline e online
  • orquestrar o projeto com Kubernetes ou Apache Spark no Kubernetes
  • gerenciar pipelines de projeto com software de código aberto de nível empresarial

A Tale of Two Users

Se um usuário não se importa com as abstrações, ele não precisa usá-las. No entanto, a grande maioria dos usuários gosta de usar nossas abstrações para concluir seus projetos.

À medida que a equipe da plataforma de aprendizado de máquina continua a construir o Cerebro, os princípios aos quais nos comprometemos servem como lembretes importantes de nosso objetivo final.

Nossos princípios

  • Modularidade : Cerebro é muito mais do que apenas um ponto final que os cientistas de dados aprovam em modelos into – desenvolvemos um SDK e temos vários projetos de demonstração para que os cientistas de dados possam ver o melhor caso de uso para seus projetos. Ao aplicar as melhores práticas em nosso SDK, nossos usuários podem independentemente usar nossa plataforma com o mínimo de ajuda da equipe MLP e ter a confiança que as ferramentas que eles usam em cada estágio do ciclo de vida do modelo são as corretas.
  • Comunicação aberta : Não adianta construir nada se ninguém usar – para esse fim, nossa equipe tem horário comercial duas vezes por semana, onde qualquer pessoa pode aparecer para solucionar questões mais detalhadas que não podem ser resolvidas por meio de mensagens. Além disso, a equipe realiza reuniões quinzenais com equipes de ciência de dados para entender suas necessidades e evitar desvios do curso. Visto que entregamos novos recursos a cada dois meses, essa comunicação constante é crucial.
  • Alta adoção : Nós estamos trabalhando na integração de nosso SDK com ferramentas Nordstrom amplamente utilizadas, como o NordyPy , permitindo uma experiência de usuário confortável. À medida que a plataforma se desenvolve, a barreira à entrada ficará cada vez menor. Isso permite que os consumidores da plataforma venham da Nordstrom – não apenas ciência de dados e engenharia .

O que vem a seguir?

No futuro artigos, discutiremos o futuro do Cerebro, os próximos recursos e o potencial de código aberto da plataforma.

Gostaríamos de agradecer a Nate Lee – outro engenheiro da plataforma de ML que ajudou a escrever este artigo – bem como Rizky Ramdhani, Xingtai Li e Owais Malik, membros da equipe da plataforma de ML que forneceram feedback valioso.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *