Os dados possuem um ciclo, do seu nascimento à visualização. Para um projeto de Ciência de Dados ter sucesso, é necessário primeiramente que os dados sejam confiáveis e estejam disponíveis em um repositório de dados. Existem diversos tipos de repositórios, tanto na nuvem como on-premisse, estruturados e não estruturados. É importante que esses dados estejam disponíveis no menor número de fontes possíveis e sejam confiáveis, principalmente para garantir rapidez ao projeto. A pessoa responsável pelo trabalho de estruturar esse repositório é o Engenheiro de Dados. Exemplos de repositórios são: Amazon S3, banco de dados SQL, Azure Blob Storage, Data Lakes, Data Warehouses, etc.

O trabalho do cientista começa com a exploração desse repositório de dados, criado pelo engenheiro. Portanto, os dados já devem estar disponíveis para consulta. Ele pode enriquecer suas análises e modelos com dados de fontes externas, como o clima, propriedades de mapas, APIs (Application Programming Interface). O resultado do seu trabalho será um modelo matemático, que ajudará na tomada de decisão, mas para isso, o modelo deverá ser operacionalizado, trabalho que está em uma “gray area” entre as duas áreas. Esse modelo poderá entrar em operação de diversas maneiras. Mais informações estão contidas no nosso documento específico sobre operacionalização de modelos.

Um diagrama desse processo pode ser visto abaixo:

Atividades em um projeto de Ciência de Dados

Segundo um Paper escrito por profissionais do Google, referência em utilização de algoritmos de Machine Learning, o tempo gasto para o desenvolvimento do algoritmo é pequeno se comparado à infraestrutura, como pode ser observado na imagem abaixo, onde o tamanho de cada processo é proporcional ao tempo necessário para desenvolvê-lo.

Fonte: D. Sculley, Gary Holt, Daniel Golovin, Eugene Davydov, Todd Phillips, Dietmar Ebner, Vinay Chaudhary, Michael Young, Jean-Francois Crespo, and Dan Dennison. 2015. Hidden technical debt in Machine learning systems.

Pode-se observar no gráfico que o maior tempo gasto em um projeto de ciência de dados é devido à manipulação dos dados e à infraestrutura que dará suporte ao modelo. Tendo como foco somente a atuação de um cientista de dados no projeto, o processo de ciência de dados tem a seguinte distribuição de tempo:

É possível ver que as etapas de Feature Engineering, Seleção de Modelos e Treinamento de Modelos têm um tempo em conjunto. Isso se deve ao fato desse processo ser cíclico e de testes, onde o cientista de dados obterá os resultados do treinamento do modelo para desenvolver novas features (variáveis) com o objetivo de aumentar a acurácia do modelo.

Desenvolvendo um projeto de Ciência de Dados

Para desenvolver um projeto de ciência de dados, tendo como exemplo o cronograma utilizado pela Tenbu, temos as seguintes fases:

Pós-produção

Após colocados em produção, os modelos devem ser monitorados; além de acompanhar suas respostas, é necessário retreiná-los. A grande vantagem dos modelos de Machine Learning é aprender com os dados; quanto mais dados, mais acurado fica o algoritmo. Esse é o primeiro motivo para justificar o retreino: expor o modelo aos novos dados, que podem possuir novos padrões e adicionam mais informação para o algoritmo. Isso leva ao segundo motivo: deterioração. Modelos deterioram com o tempo, pois a sociedade e processos não são estáticos; ambos estão em constante mudança. Ter um modelo não atualizado significa ter modelado o passado e expô-lo ao futuro. Aconselhamos a sempre buscar alguém (interna ou externamente) para auxiliar com retreino de modelos e acompanhamento dos mesmos de acordo com as necessidades do negócio.


Comentários: 0

Ainda não há comentários neste post. Seja você o primeiro a comentar!

Deixar um comentário