[PT-BR] Por onde começar um projeto de Data Science?


Por onde começar um projeto de Data Science?

A primeira emoção que um cientista de dados iniciante sente ao começar um projeto é a famosa aflição, causada não pelo projeto em si (pelo menos não ainda), mas pela falta de orientações sobre por onde começar o projeto.

Já está estabelecido que o primeiro passo para entrar na área é começar os estudos sobre Aprendizagem de Máquina. Porém partir de um modelo de predição e implementar uma solução que atenda as necessidades de alguém é um caminho nada simples. Quando iniciamos um projeto temos quase certeza de pelo menos uma coisa: vamos precisar criar um modelo de predição. Mas que outras etapas são necessárias para implementar a solução?

Para responder esta pergunta vamos explorar uma metodologia base, que é independente da tecnologia utilizada, do volume de dados e da abordagem utilizada durante o desenvolvimento da solução (Foundational Methodology for Data Science). A metodologia possui similaridades com metodologias já existentes para mineração de dados, mas a metodologia que mostraremos aqui dá ênfase às novas práticas da área, incluindo a automatização de alguns processos (Rollings, 2016).

Metodologia para Data Science. Fonte: http://www-01.ibm.com/common/ssi/cgi-bin/ssialias?htmlfid=IMW14824USEN

A seguir temos uma descrição de cada etapa da metodologia:

  1. Entendimento do negócio — Todo projeto, independente do tamanho, precisa iniciar a partir do entendimento do negócio onde o problema está inserido. Nesta etapa, o objetivo é explorar o contexto a fim de entender melhor como a solução se moldará ao problema.
  2. Abordagem analítica — Neste estágio os cientistas de dados descrevem o problema em termos das técnicas de Aprendizagem de Máquina. É aqui onde se define entre a criação de um modelo de classificação ou um modelo de regressão, por exemplo.
  3. Requisitos dos dados — Esta etapa consiste na escolha dos requisitos dos dados, definidos a partir dos requisitos da etapa de Abordagem analítica. Em outras palavras, esta etapa busca responder a seguinte pergunta: que tipos de dados vamos precisar para resolver este problema?
  4. Coleta dos dados — Como o nome sugere, nesta etapa os cientistas de dados identificam as fontes e coletam os dados (que podem ser estruturados, não-estruturados ou semi-estruturados).
  5. Entendimento dos dados — Técnicas de visualização e análise descritiva dos dados são importantes para ajudar a entendê-los e descobrir insights.
  6. Preparação dos dados — A etapa de preparação dos dados consiste em todas as atividades utilizadas para a construção do dataset que será usado como entrada na etapa de criação de modelo. Limpar, combinar dados de múltiplas fontes e transformar os dados são exemplos de atividades contidas neste estágio. Esta é a etapa mais custosa em termos de tempo para o projeto. Normalmente de 70 a 90% do tempo é gasto aqui.
  7. Criação do modelo — A partir do dataset da etapa anterior, esta etapa foca em desenvolver o modelo de predição ou de descrição de acordo com a abordagem definida na etapa de Abordagem Analítica. O processo de criação do modelo é bastante iterativo.
  8. Avaliação — Nesta etapa os cientistas de dados avaliam a qualidade do modelo e se ele é capaz de suprir as necessidades do problema de forma apropriada.
  9. Deployment — Depois que um modelo satisfatório foi desenvolvido, o próximo passo é implantar a solução no ambiente de produção. Normalmente esta implantação é feita de forma limitada para que se possa fazer a avaliação da performance.
  10. Feedback — Os resultados coletados da etapa de Deployment são analisados para que o modelo seja refinado. A metodologia ilustra a natureza interativa do processo de desenvolvimento da solução. Os modelos não devem ser criados uma vez, colocados em produção e deixados lá sem que alguma mudança ou melhoria seja feita. Em vez disso, através do feedback o modelo poder ser continuamente refinado e adaptado às condições do problema, permitindo que tanto o modelo quanto o trabalho empregado na criação dele ofereçam valor para a organização.

Durante os projetos nem sempre as etapas vão ser seguidas na ordem apresentada pela metodologia. Porém ter esta visão macro do desenvolvimento da solução é fundamental para que o projeto flua sem tanto atrito (e sem tanta aflição).

Algo importante que pode ser extraído a partir da metodologia e que não se dá muita ênfase nos materiais direcionados para iniciantes na área é que você não simplesmente cria um modelo e nunca mais precisa mexer nele. O ideal é que os modelos sempre sejam refinados, e que a cada nova observação consigamos melhorá-los para que eles atendam melhor o problema.