MLOps
O MLOps ou ML Ops é um paradigma que visa implantar e manter modelos de aprendizado de máquina em produção de forma confiável e eficaz.[1] A expressão é uma combinação de "machine learning" e da prática de desenvolvimento contínuo DevOps na área de software. Os modelos de aprendizado de máquina são testados em ambientes isolados experimentais. Quando um algoritmo está pronto para ser lançado, ocorre a prática de MLOps entre cientistas de dados, e engenheiros de DevOps e de aprendizado de máquina para efetuar a transição do algoritmo para sistemas de produção.[2] De forma similar às abordagens de DevOps ou DataOps, o MLOps busca aumentar a automação e melhorar a qualidade dos modelos de produção, ao mesmo tempo em que foca em exigências de negócio e regulatórias. Embora o MLOps tenha começado como um conjunto de melhores práticas, ele está evoluindo lentamente para uma abordagem independente para o gerenciamento do ciclo de vida de ML. O MLOps se aplica ao ciclo de vida completo - da integração com a geração de modelo (ciclo de desenvolvimento de software, integração contínua/entrega contínua), orquestração, e distribuição, para métricas de saúde, diagnóstico, governança, e negócio. De acordo com a Gartner, o MLOps é um subconjunto de ModelOps. O MLOps é focado na operacionalização de modelos de ML, enquanto que ModelOps cobre a operacionalização de todos os tipos de modelos de AI.[3]
Definição
editarO MLOps é um paradigma que inclui aspectos como boas práticas, conjuntos de conceitos, bem como uma cultura de desenvolvimento no que diz respeito à conceitualização, implementação, monitoramento, distribuição, e escalabilidade de produtos de aprendizado de máquina. No geral, é uma prática de engenharia que se aproveita de três disciplinas de apoio: aprendizado de máquina, engenharia de software (especialmente DevOps), e engenharia de dados. O MLOps foca no processo de colocar em produção sistemas de aprendizado de máquina fazendo a ponte entre desenvolvimento (Dev) e operações (Ops). Essencialmente, o MLOps visa facilitar a criação de produtos de aprendizado de máquina tirando vantagem dos seguintes princípios: automação de CI/CD, orquestração de fluxo, reprodutibilidade; versionamento de dados, modelos, e código; colaboração; treinamento e avaliação contínuos de ML; rastreamento e log de metadados de ML; monitoramento contínuo; e ciclos de feedback.[4]
História
editarOs desafios do uso continuado de aprendizado de máquina em aplicações foi destacado em um artigo de 2015.[5] O crescimento previsto em aprendizado de máquina incluía uma duplicação nos pilotos e implementações de aprendizado de máquina de 2017 a 2018, e novamente de 2018 a 2020.[6]
Os relatórios mostram que a maioria (até 88%) das iniciativas de aprendizado de máquina enfrenta dificuldades para avançar além dos estágios de teste.[4] No entanto, aquelas organizações que realmente colocaram aprendizado de máquina em produção observaram aumentos de 3-15% na margem de lucros.[7] O valor do mercado de MLOps foi estimado em $23.2 bilhões em 2019 e projeta-se que alcançará $126 bilhões até 2025 devido a rápida adoção.[8]
Arquitetura
editarOs sistemas de aprendizado de máquina podem ser categorizados em oito categorias diferentes: coleta de dados, tratamento de dados, engenharia de características, rotulagem de dados, projeto de modelo, treinamento e otimização de modelos, implantação de endpoint e monitoramento de endpoint. Cada etapa do ciclo de vida do aprendizado de máquina é construída em seu próprio sistema, mas elas precisam ser conectadas. Esse é o mínimo de sistemas que as empresas precisam para dimensionar o aprendizado de máquina em sua organização.
Objetivos
editarHá uma série de objetivos que as empresas desejam alcançar por meio de sistemas MLOps implementando aprendizado de máquina com sucesso em toda a empresa, incluindo:[9]
- Implantação e automação[10]
- Reprodutibilidade de modelos e previsões[11]
- Diagnóstico[11]
- Governança e conformidade regulatória[12]
- Escalabilidade[13]
- Colaboração[14]
- Usos comerciais[15]
- Monitoramento e gestão[16]
Uma prática padrão, como o MLOps, leva em consideração cada uma das áreas mencionadas acima, o que pode ajudar as empresas a otimizar fluxos de trabalho e evitar problemas durante a implementação.
Uma arquitetura comum de um sistema MLOps incluiria plataformas de ciência de dados onde os modelos são construídos e os mecanismos analíticos onde os cálculos são realizados, juntamente com a ferramenta MLOps orquestrando a movimentação de modelos de aprendizado de máquina, dados e resultados entre os sistemas.[9]
Ver também
editar- ModelOps, de acordo com o Gartner, MLOps é um subconjunto de ModelOps. O MLOps está focado na operacionalização de modelos de ML, enquanto ModelOps cobre a operacionalização de todos os tipos de modelos de IA.[3]
- AIOps, um conceito com nome semelhante, mas diferente - usando IA (ML) em TI e Operações.
Referências
editar- ↑ a b Breuel, Cristiano. «ML Ops: Machine Learning as an Engineering Discipline». Towards Data Science (em inglês). Consultado em 6 de julho de 2021
- ↑ Talagala, Nisha. «Why MLOps (and not just ML) is your Business' New Competitive Frontier». AITrends. Consultado em 30 de janeiro de 2018
- ↑ a b Vashisth, Shubhangi; Brethenoux, Erick; Choudhary, Farhan; Hare, Jim. «Use Gartner's 3-Stage MLOps Framework to Successfully Operationalize Machine Learning Projects». Gartner. Consultado em 30 de outubro de 2020
- ↑ a b Kreuzberger, Dominik; Kühl, Niklas; Hirschl, Sebastian (2023). «Machine Learning Operations (MLOps): Overview, Definition, and Architecture». IEEE Access. 11: 31866–31879. ISSN 2169-3536. arXiv:2205.02302 . doi:10.1109/ACCESS.2023.3262138
- ↑ Sculley, D.; Holt, Gary; Golovin, Daniel; Davydov, Eugene; Phillips, Todd; Ebner, Dietmar; Chaudhary, Vinay; Young, Michael; Crespo, Jean-Francois (7 de dezembro de 2015). «Hidden Technical Debt in Machine Learning Systems» (PDF). NIPS Proceedings (2015). Consultado em 14 de novembro de 2017
- ↑ Sallomi, Paul; Lee, Paul. «Deloitte Technology, Media and Telecommunications Predictions 2018» (PDF). Deloitte. Consultado em 13 de outubro de 2017
- ↑ Bughin, Jacques; Hazan, Eric; Ramaswamy, Sree; Chui, Michael; Allas, Tera; Dahlström, Peter; Henke, Nicolaus; Trench, Monica. «Artificial Intelligence The Next Digital Frontier?». McKinsey. McKinsey Global Institute. Consultado em 1 de junho de 2017
- ↑ «2021 MLOps Platforms Vendor Analysis Report». Neu.ro. Consultado em 10 de agosto de 2021
- ↑ a b Walsh, Nick. «The Rise of Quant-Oriented Devs & The Need for Standardized MLOps». Slides. Nick Walsh. Consultado em 1 de janeiro de 2018
- ↑ «Code to production-ready machine learning in 4 steps». DAGsHub Blog (em inglês). 3 de fevereiro de 2021. Consultado em 19 de fevereiro de 2021
- ↑ a b Warden, Pete. «The Machine Learning Reproducibility Crisis». Pete Warden's Blog. Pete Warden. Consultado em 19 de março de 2018
- ↑ Vaughan, Jack. «Machine learning algorithms meet data governance». SearchDataManagement. TechTarget. Consultado em 1 de setembro de 2017
- ↑ Lorica, Ben. «How to train and deploy deep learning at scale». O'Reilly. Consultado em 15 de março de 2018
- ↑ Garda, Natalie. «IoT and Machine Learning: Why Collaboration is Key». IoT Tech Expo. Encore Media Group. Consultado em 12 de outubro de 2017
- ↑ Manyika, James. «What's now and next in analytics, AI, and automation». McKinsey. McKinsey Global Institute. Consultado em 1 de maio de 2017
- ↑ Haviv, Yaron. «MLOps Challenges, Solutions and Future Trends». Iguazio. Consultado em 19 de fevereiro de 2020