O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

O futuro chegou e as tecnologias de inteligência artificial e aprendizagem automática já estão a ser utilizadas com sucesso pelas suas lojas favoritas, empresas de transporte e até explorações de perus.

O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

E se existe algo, então já existe algo sobre isso na Internet... um projeto aberto! Veja como o Open Data Hub ajuda você a dimensionar novas tecnologias e evitar desafios de implementação.

Com todas as vantagens da inteligência artificial (IA) e do aprendizado de máquina (ML), as organizações muitas vezes têm dificuldade em dimensionar essas tecnologias. Os principais problemas neste caso são geralmente os seguintes:

  • Troca de informações e cooperação – é quase impossível trocar informações sem esforço e colaborar em iterações rápidas.
  • Acesso de dados – para cada tarefa ele precisa ser construído de novo e manualmente, o que leva muito tempo.
  • Acesso sob demanda – não há como obter acesso sob demanda a ferramentas e plataformas de aprendizado de máquina, bem como à infraestrutura de computação.
  • Produção – os modelos permanecem na fase de protótipo e não são levados para uso industrial.
  • Acompanhe e explique os resultados da IA – a reprodutibilidade, o rastreamento e a explicação dos resultados de IA/ML são difíceis.

Se não forem resolvidos, esses problemas impactam negativamente a velocidade, a eficiência e a produtividade de valiosos cientistas de dados. Isso leva à frustração e ao desapontamento com seu trabalho e, como resultado, as expectativas dos negócios em relação à IA/ML são desperdiçadas.

A responsabilidade pela solução desses problemas recai sobre os especialistas de TI, que devem fornecer aos analistas de dados – isso mesmo, algo como a nuvem. Mais detalhadamente, precisamos de uma plataforma que dê liberdade de escolha e tenha acesso fácil e conveniente. Ao mesmo tempo, é rápido, facilmente reconfigurável, escalável sob demanda e resistente a falhas. Construir essa plataforma com base em tecnologias de código aberto ajuda a evitar a dependência de fornecedores e a manter uma vantagem estratégica de longo prazo em termos de controle de custos.

Há alguns anos, algo semelhante estava acontecendo no desenvolvimento de aplicações e levou ao surgimento de microsserviços, nuvens híbridas, automação de TI e processos ágeis. Para lidar com tudo isso, os profissionais de TI recorreram a contêineres, Kubernetes e nuvens híbridas abertas.

Esta experiência está agora a ser aplicada para responder aos desafios de Al. É por isso que os profissionais de TI estão construindo plataformas baseadas em contêineres, que permitem a criação de serviços de IA/ML em processos ágeis, aceleram a inovação e são construídas com foco na nuvem híbrida.

O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

Começaremos a construir essa plataforma com o Red Hat OpenShift, nossa plataforma Kubernetes conteinerizada para a nuvem híbrida, que possui um ecossistema de soluções de ML de software e hardware em rápido crescimento (NVIDIA, H2O.ai, Starburst, PerceptiLabs, etc.). Alguns dos clientes da Red Hat, como BMW Group, ExxonMobil e outros, já implantaram conjuntos de ferramentas de ML em contêineres e processos DevOps na plataforma e em seu ecossistema para levar suas arquiteturas de ML à produção e acelerar o trabalho dos analistas de dados.

Outro motivo pelo qual lançamos o projeto Open Data Hub é demonstrar um exemplo de arquitetura baseada em diversos projetos de software de código aberto e mostrar como implementar todo o ciclo de vida de uma solução de ML baseada na plataforma OpenShift.

Projeto Open Data Hub

Este é um projeto de código aberto que é desenvolvido dentro da comunidade de desenvolvimento correspondente e implementa um ciclo completo de operações - desde o carregamento e transformação dos dados iniciais até a geração, treinamento e manutenção de um modelo - ao resolver problemas de IA/ML usando contêineres e Kubernetes no OpenShift plataforma. Este projeto pode ser considerado uma implementação de referência, um exemplo de como construir uma solução aberta de IA/ML como serviço baseada em OpenShift e ferramentas de código aberto relacionadas, como Tensorflow, JupyterHub, Spark e outras. É importante observar que a própria Red Hat usa este projeto para fornecer seus serviços de IA/ML. Além disso, o OpenShift se integra às principais soluções de ML de software e hardware da NVIDIA, Seldon, Starbust e outros fornecedores, facilitando a criação e a execução de seus próprios sistemas de aprendizado de máquina.

O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

O projeto Open Data Hub está focado nas seguintes categorias de usuários e casos de uso:

  • Analista de dados que precisa de uma solução para implementação de projetos de ML, organizada como uma nuvem com funções de autoatendimento.
  • Analista de dados que precisa de opções máximas entre as mais recentes ferramentas e plataformas de IA/ML de código aberto.
  • Analista de dados que precisa de acesso a fontes de dados ao treinar modelos.
  • Analista de dados que precisa de acesso a recursos computacionais (CPU, GPU, memória).
  • Analista de dados que requer a capacidade de colaborar e compartilhar trabalho com colegas, receber feedback e fazer melhorias em iteração rápida.
  • Um analista de dados que deseja interagir com desenvolvedores (e equipes de devops) para que seus modelos de ML e resultados de trabalho entrem em produção.
  • Engenheiro de dados que precisa fornecer a um analista de dados acesso a uma variedade de fontes de dados, ao mesmo tempo que cumpre os requisitos regulamentares e de segurança.
  • Administrador/operador de sistema de TI que requer a capacidade de controlar sem esforço o ciclo de vida (instalação, configuração, atualização) de componentes e tecnologias de código aberto. Precisamos também de ferramentas adequadas de gestão e de quotas.

O projeto Open Data Hub reúne uma gama de ferramentas de código aberto para implementar um ciclo completo de operações de IA/ML. O Jupyter Notebook é usado aqui como a principal ferramenta de trabalho para análise de dados. O kit de ferramentas é amplamente popular entre os cientistas de dados hoje, e o Open Data Hub permite que eles criem e gerenciem facilmente espaços de trabalho do Jupyter Notebook usando o JupyterHub integrado. Além de criar e importar notebooks Jupyter, o projeto Open Data Hub também contém vários notebooks prontos na forma de uma biblioteca de IA.

Esta biblioteca é uma coleção de componentes e soluções de aprendizado de máquina de código aberto para cenários comuns que simplificam a prototipagem rápida. O JupyterHub está integrado ao modelo de acesso RBAC do OpenShift, que permite usar contas OpenShift existentes e implementar logon único. Além disso, o JupyterHub oferece uma interface amigável chamada spawner, por meio da qual o usuário pode configurar facilmente a quantidade de recursos de computação (núcleos de CPU, memória, GPU) para o Jupyter Notebook selecionado.

Depois que o analista de dados cria e configura o laptop, todas as outras preocupações sobre ele são resolvidas pelo agendador Kubernetes, que faz parte do OpenShift. Os usuários só podem realizar seus experimentos, salvar e compartilhar os resultados de seu trabalho. Além disso, usuários avançados podem acessar diretamente o shell OpenShift CLI diretamente dos notebooks Jupyter para aproveitar os primitivos do Kubernetes, como Job ou funcionalidade OpenShift, como Tekton ou Knative. Ou para isso você pode usar a GUI conveniente do OpenShift, chamada de “console web OpenShift”.

O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

Passando para a próxima etapa, o Open Data Hub possibilita o gerenciamento de pipelines de dados. Para isso, é utilizado um objeto Ceph, que é fornecido como um objeto de armazenamento de dados compatível com S3. O Apache Spark permite transmitir dados de fontes externas ou armazenamento Ceph S3 integrado e também permite realizar transformações preliminares de dados. Apache Kafka fornece gerenciamento avançado de pipelines de dados (onde os dados podem ser carregados várias vezes, bem como operações de transformação, análise e persistência de dados).

Então, o analista de dados acessou os dados e construiu um modelo. Agora ele deseja compartilhar os resultados obtidos com colegas ou desenvolvedores de aplicativos e fornecer-lhes seu modelo sobre os princípios de um serviço. Isso requer um servidor de inferência, e o Open Data Hub possui esse servidor, chamado Seldon e permite publicar o modelo como um serviço RESTful.

Em algum momento, existem vários desses modelos no servidor Seldon e é necessário monitorar como eles são usados. Para conseguir isso, o Open Data Hub oferece uma coleção de métricas relevantes e um mecanismo de relatórios baseado nas ferramentas de monitoramento de código aberto amplamente utilizadas, Prometheus e Grafana. Como resultado, recebemos feedback para monitorar o uso de modelos de IA, principalmente em um ambiente de produção.

O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

Dessa forma, o Open Data Hub fornece uma abordagem semelhante à nuvem durante todo o ciclo de vida de IA/ML, desde o acesso e preparação de dados até o treinamento e produção de modelos.

Colocando tudo junto

Agora surge a questão de como organizar tudo isso para o administrador do OpenShift. E é aqui que entra em ação um operador especial do Kubernetes para projetos Open Data Hub.

O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

Este operador gerencia a instalação, configuração e ciclo de vida do projeto Open Data Hub, incluindo a implantação das ferramentas mencionadas como JupyterHub, Ceph, Spark, Kafka, Seldon, Prometheus e Grafana. O projeto Open Data Hub pode ser encontrado no console web OpenShift, na seção de operadores da comunidade. Assim, o administrador do OpenShift pode especificar que os projetos OpenShift correspondentes sejam categorizados como "projeto Open Data Hub". Isso é feito uma vez. Depois disso, o analista de dados faz login em seu espaço de projeto por meio do console web OpenShift e verifica se o operador Kubernetes correspondente está instalado e disponível para seus projetos. Ele então cria uma instância de projeto Open Data Hub com um clique e tem acesso imediato às ferramentas descritas acima. E tudo isso pode ser configurado em modo de alta disponibilidade e tolerância a falhas.

O projeto Open Data Hub é uma plataforma aberta de aprendizado de máquina baseada no Red Hat OpenShift

Se você quiser experimentar o projeto Open Data Hub por si mesmo, comece com instruções de instalação e tutorial introdutório. Detalhes técnicos da arquitetura Open Data Hub podem ser encontrados aqui, planos de desenvolvimento de projetos – aqui. No futuro, planejamos implementar integração adicional com Kubeflow, resolver uma série de problemas com regulação e segurança de dados e também organizar integração com sistemas baseados em regras Drools e Optaplanner. Expresse sua opinião e torne-se participante do projeto Hub de Dados Abertos possível na página comunidade.

Recapitulando: sérios desafios de expansão estão impedindo as organizações de aproveitarem todo o potencial da inteligência artificial e do aprendizado de máquina. O Red Hat OpenShift tem sido usado com sucesso há muito tempo para resolver problemas semelhantes na indústria de software. O projeto Open Data Hub, implementado na comunidade de desenvolvimento de código aberto, oferece uma arquitetura de referência para organizar um ciclo completo de operações de IA/ML com base na nuvem híbrida OpenShift. Temos um plano claro e bem pensado para o desenvolvimento deste projeto e levamos a sério a criação de uma comunidade ativa e frutífera em torno dele para o desenvolvimento de soluções abertas de IA na plataforma OpenShift.

Fonte: habr.com

Adicionar um comentário