2 pontos por GN⁺ 2025-01-29 | 1 comentários | Compartilhar no WhatsApp

Curso de produção de machine learning da Carnegie Mellon University

  • Visão geral do curso

    • Este curso aborda como construir, implantar e manter modelos de machine learning como produtos de software.
    • Cobre todo o ciclo de vida, incluindo IA responsável, MLOps, segurança operacional, segurança, justiça e explicabilidade.
    • É voltado a estudantes com experiência em ciência de dados e habilidades básicas de programação.
  • Objetivos do curso

    • Aprender como transformar modelos de machine learning em produtos, garantir qualidade e operá-los e mantê-los em escala.
    • Promover a colaboração entre engenheiros de software e cientistas de dados, construindo o entendimento mútuo necessário para desenvolver sistemas de ML.
    • É adequado para estudantes que consideram uma carreira como engenheiros de ML.
  • Principais tópicos

    • Como projetar para previsões incorretas e garantir segurança operacional e segurança.
    • Projeto de interfaces de usuário e sistemas que possam funcionar em ambientes reais.
    • Como implantar e atualizar modelos de forma confiável.
    • Como detectar problemas de qualidade de dados, concept drift e loops de feedback.
    • Como projetar e testar sistemas de ML em grande escala.
    • Como identificar e medir requisitos de qualidade importantes além da precisão preditiva do modelo, como justiça, explicabilidade, privacidade, robustez e segurança operacional.
  • Resultados de aprendizagem

    • Analisar trade-offs ao projetar sistemas de produção com componentes de ML.
    • Planejar para os erros dos componentes de ML e implementar sistemas robustos.
    • Projetar infraestrutura de dados e sistemas para experimentação.
    • Garantir a qualidade de todo o pipeline de ML.
    • Considerar requisitos em nível de sistema ao construir produtos de ML complexos.
    • Comunicar-se de forma eficaz em equipes multidisciplinares.
  • Prática e projeto

    • Os estudantes participam de um projeto para construir, implantar, avaliar e manter um serviço de recomendação de filmes voltado a 1 milhão de usuários.
  • Aulas e práticas

    • As aulas acontecem às segundas e quartas-feiras, e as práticas acontecem às sextas-feiras em diferentes horários.
    • É possível participar das atividades em aula via Slack, e as gravações das aulas são disponibilizadas no Canvas.
  • Avaliação e tarefas

    • A avaliação é composta por tarefas individuais, projeto em grupo, prova intermediária, participação, práticas e quizzes de leitura.
    • Cada tarefa fornece especificações claras e distribuição de pontuação para que os estudantes tenham expectativas bem definidas.
  • Trabalho em equipe e colaboração

    • O projeto em equipe é realizado em grupos de 3 a 5 estudantes, e o trabalho em equipe é essencial.
    • As equipes trabalham de forma independente, e a colaboração dentro da equipe é incentivada.
  • Outras informações

    • Avisos importantes são enviados pelo Slack, e dúvidas podem ser feitas por e-mail e Slack.
    • Os materiais da disciplina estão disponíveis publicamente no GitHub e também são oferecidos a estudantes que desejam estudar por conta própria.

Este curso oferece habilidades e conhecimentos essenciais para estudantes interessados no desenvolvimento de produtos de software com machine learning, além de proporcionar oportunidades de adquirir experiência prática por meio de diversos casos reais e projetos.

1 comentários

 
GN⁺ 2025-01-29
Comentários no Hacker News
  • Kafka, Docker, Kubernetes e Jenkins são ferramentas padrão da indústria, e o foco em MLOps é algo revigorante. É bom que o curso não pare na construção de modelos e trate da conexão com sistemas reais de produção. Também é impressionante que cubra explicabilidade, equidade e monitoramento

    • Será que é de nível iniciante? Pelo que vejo nas atividades práticas, parece haver muito conteúdo que um engenheiro de software de nível intermediário ou um iniciante bem motivado pode aprender por meio de tutoriais. Git, Flask e orquestração de contêineres são úteis, mas para quem já trabalhou em produção isso é básico. Desafios mais profundos, como otimização de rede para treinamento distribuído ou gestão de inferência em larga escala, parecem receber menos atenção. Fico curioso se isso será tratado no projeto em grupo
    • Também fico curioso sobre a relevância de longo prazo das ferramentas usadas. Jenkins está em todo lugar, mas não faria sentido apresentar algo mais moderno para CI/CD, como GitHub Actions ou ArgoCD? Kubernetes obviamente é algo que se deve conhecer, mas e quanto a alternativas ou ferramentas complementares para implantação em edge ou sistemas serverless? Parece haver uma oportunidade de ir um pouco mais em direção ao futuro
  • Quase não há conteúdo sobre qualidade de dados, e isso aparece só no capítulo 16... Fico me perguntando quanta experiência prática na indústria os autores realmente têm. Qualidade e limpeza de dados consomem 90% do tempo

  • Alguém conhece literatura ou cursos sobre construção de infraestrutura de cluster para machine learning? Tenho interesse principalmente em abordagens para construção e escalabilidade de infraestrutura de armazenamento, além de redes e agendamento

  • Fico curioso se existe algum lugar para acompanhar isso junto com outras pessoas que não sejam estudantes

  • Fico curioso se qualquer pessoa pode se inscrever ou se é preciso ser admitido em um dos principais programas de ciência da computação do país

  • É bom ver este curso aqui. Christian é uma pessoa excelente e faz um ótimo trabalho. Conheço a origem deste curso e do livro, e posso recomendá-los fortemente

  • Trabalho há 9,5 anos com plataformas e sistemas de ML, em todas as escalas. O material parece excelente

  • Interessante; dei uma olhada nas atividades práticas e, como desenvolvedor full-stack sem muita experiência com LLM, já estou familiarizado com metade disso (git, flask, kafka, kubernetes); o resto é só código. Não há matemática complexa relacionada a ML

    • Será que isso significa que ML ops é uma área não tão difícil para desenvolvedores comuns acessarem sem um PhD?
  • Gosto da ideia de aprender um único "Kubernetis"

  • Talvez eu esteja subestimando a complexidade do curso, mas isso soa como um curso introdutório. Até as ferramentas de explicação de modelos, sinceramente, quase tudo parece bem simples. Acho bom que estejam usando ferramentas padrão da indústria para a maioria dos casos de uso