Engenharia de Software para Ciência de Dados: Um guia de boas práticas com ênfase na construção de sistemas de Machine Learning em Python. Kalinowski, M., Escovedo, T., Villamizar, H., & Lopes, H. Casa do Código, 2023. Finalist for Brazil's most prestigious academic literature award - Jabuti Acadêmico - by the Brazilian Book Chamber (Câmara Brasileira do Livro).
Engenharia de Software para Ciência de Dados: Um guia de boas práticas com ênfase na construção de sistemas de Machine Learning em Python [link]Paper  abstract   bibtex   10 downloads  
Os avanços recentes na área de Ciência de Dados — em especial em Machine Learning — e a disponibilidade de grandes quantidades de dados têm tornado viável e de relevância prática a incorporação de componentes de Machine Learning em sistemas de software. Esses componentes permitem às soluções de software aprender a partir dos dados e realizar predições inteligentes. Entretanto, sistemas que envolvem este tipo de componente muitas vezes são construídos sem considerar boas práticas da área de Engenharia de Software, levando muitos projetos de Ciência de Dados ao fracasso, com soluções que acabam não sendo implantadas na prática por não atenderem às necessidades dos clientes. Com isso em vista, este livro foi cuidadosamente elaborado a partir de evidências científicas e experiências práticas dos autores em diversos projetos. O objetivo desta obra é estabelecer uma referência sobre Engenharia de Software para Ciência de Dados, compartilhando conhecimento (até então não consolidado) para capacitar profissionais interessados ou atuantes em Ciência de Dados na construção de sistemas baseados em Machine Learning, mostrando como construir esses sistemas end-to-end, adaptando e aplicando as melhores práticas da Engenharia de Software para esse contexto. Você aprenderá a aplicar abordagens ágeis para a engenharia de sistemas inteligentes e a especificar e desenvolver sistemas baseados em Machine Learning na prática em Python, utilizando os principais algoritmos de classificação e regressão, seguindo princípios de projeto e boas práticas de codificação. Você aprenderá, ainda, a realizar o controle da qualidade de sistemas inteligentes, conhecerá alternativas para a arquitetura desses sistemas e diferentes formas de implantação de modelos. Por fim, conhecerá conceitos de gerência de configuração, DevOps e MLOps, comumente empregados nesse tipo de projeto. O livro compila a vasta experiência dos autores envolvendo a entrega de dezenas de projetos de sistemas de software inteligentes na prática para diversas empresas, realizados por meio da iniciativa ExACTa PUC-Rio, incluindo soluções com pedidos de patente depositados e premiados (Reconhecimento à Inovação CENPES 2021, Inventor Petrobras 2022, entre outros). Os autores são pesquisadores consolidados nas áreas de Engenharia de Software e Ciência de Dados e pioneiros na interseção entre essas áreas, sendo protagonistas no estabelecimento da Engenharia de Software para Ciência de Dados no Brasil. Em 2021, os autores criaram o primeiro curso de extensão em Engenharia de Software para Ciência de Dados do país, formando centenas de alunos em diversas turmas oferecidas pela PUC-Rio, tanto abertas quanto in-company. Atualmente, a disciplina faz parte do currículo das pós-graduações lato sensu em Ciência de Dados e Analytics e em Engenharia de Software e do elenco de disciplinas da pós-graduação stricto sensu (mestrado e doutorado) do Departamento de Informática da PUC-Rio. Além de auxiliar profissionais da área, este livro pode ser utilizado como referência bibliográfica para disciplinas com propósito similar em outras instituições.
@book{KalinowskiEVL23,
  title={Engenharia de Software para Ci{\^e}ncia de Dados: Um guia de boas pr{\'a}ticas com {\^e}nfase na constru{\c{c}}{\~a}o de sistemas de Machine Learning em Python},
  author={Kalinowski, Marcos and Escovedo, Tatiana and Villamizar, Hugo and Lopes, H{\'e}lio},
  abstract  = {Os avan{\c{c}}os recentes na {\'a}rea de Ci{\^e}ncia de Dados — em especial em Machine Learning — e a disponibilidade de grandes quantidades de dados t{\^e}m tornado vi{\'a}vel e de relev{\^a}ncia pr{\'a}tica a incorpora{\c{c}}{\~a}o de componentes de Machine Learning em sistemas de software. Esses componentes permitem às solu{\c{c}}ões de software aprender a partir dos dados e realizar predi{\c{c}}ões inteligentes. Entretanto, sistemas que envolvem este tipo de componente muitas vezes s{\~a}o construídos sem considerar boas pr{\'a}ticas da {\'a}rea de Engenharia de Software, levando muitos projetos de Ci{\^e}ncia de Dados ao fracasso, com solu{\c{c}}ões que acabam n{\~a}o sendo implantadas na pr{\'a}tica por n{\~a}o atenderem às necessidades dos clientes. Com isso em vista, este livro foi cuidadosamente elaborado a partir de evid{\^e}ncias científicas e experi{\^e}ncias pr{\'a}ticas dos autores em diversos projetos. O objetivo desta obra {\'e} estabelecer uma refer{\^e}ncia sobre Engenharia de Software para Ci{\^e}ncia de Dados, compartilhando conhecimento (at{\'e} ent{\~a}o n{\~a}o consolidado) para capacitar profissionais interessados ou atuantes em Ci{\^e}ncia de Dados na constru{\c{c}}{\~a}o de sistemas baseados em Machine Learning, mostrando como construir esses sistemas end-to-end, adaptando e aplicando as melhores pr{\'a}ticas da Engenharia de Software para esse contexto. Voc{\^e} aprender{\'a} a aplicar abordagens {\'a}geis para a engenharia de sistemas inteligentes e a especificar e desenvolver sistemas baseados em Machine Learning na pr{\'a}tica em Python, utilizando os principais algoritmos de classifica{\c{c}}{\~a}o e regress{\~a}o, seguindo princípios de projeto e boas pr{\'a}ticas de codifica{\c{c}}{\~a}o. Voc{\^e} aprender{\'a}, ainda, a realizar o controle da qualidade de sistemas inteligentes, conhecer{\'a} alternativas para a arquitetura desses sistemas e diferentes formas de implanta{\c{c}}{\~a}o de modelos. Por fim, conhecer{\'a} conceitos de ger{\^e}ncia de configura{\c{c}}{\~a}o, DevOps e MLOps, comumente empregados nesse tipo de projeto. O livro compila a vasta experi{\^e}ncia dos autores envolvendo a entrega de dezenas de projetos de sistemas de software inteligentes na pr{\'a}tica para diversas empresas, realizados por meio da iniciativa ExACTa PUC-Rio, incluindo solu{\c{c}}ões com pedidos de patente depositados e premiados (Reconhecimento à Inova{\c{c}}{\~a}o CENPES 2021, Inventor Petrobras 2022, entre outros). Os autores s{\~a}o pesquisadores consolidados nas {\'a}reas de Engenharia de Software e Ci{\^e}ncia de Dados e pioneiros na interse{\c{c}}{\~a}o entre essas {\'a}reas, sendo protagonistas no estabelecimento da Engenharia de Software para Ci{\^e}ncia de Dados no Brasil. Em 2021, os autores criaram o primeiro curso de extens{\~a}o em Engenharia de Software para Ci{\^e}ncia de Dados do país, formando centenas de alunos em diversas turmas oferecidas pela PUC-Rio, tanto abertas quanto in-company. Atualmente, a disciplina faz parte do currículo das pós-gradua{\c{c}}ões lato sensu em Ci{\^e}ncia de Dados e Analytics e em Engenharia de Software e do elenco de disciplinas da pós-gradua{\c{c}}{\~a}o stricto sensu (mestrado e doutorado) do Departamento de Inform{\'a}tica da PUC-Rio. Al{\'e}m de auxiliar profissionais da {\'a}rea, este livro pode ser utilizado como refer{\^e}ncia bibliogr{\'a}fica para disciplinas com propósito similar em outras institui{\c{c}}ões.},
  note = {<font color="red">Finalist for Brazil's most prestigious academic literature award - <i>Jabuti Acad&ecirc;mico</i> - by the Brazilian Book Chamber (C&acirc;mara Brasileira do Livro).</font>},
  pages     = {1-476},
  year={2023},
  publisher={Casa do C{\'o}digo},
  url = {https://www.casadocodigo.com.br/products/livro-escd}
}

Downloads: 10