Publicado em 09 de julho de 2018
Nos últimos anos o uso de técnicas de Machine Learning tem gerado enormes benefícios a empresas de diversos segmentos, seja através de análises descritivas, preditivas ou prescritivas que utilizam dados históricos para identificar padrões e anomalias. No entanto, com a rápida proliferação de tecnologias, modelos e métodos, um aspecto fundamental deste tipo de análise tem sido negligenciado, a qualidade dos dados.
Não é de hoje que a expressão “lixo entra, lixo sai” tem sua importância em analytics. Contudo, quando se fala em métodos de Machine Learning o problema se torna ainda mais crítico, seja para dados de treinamento do modelo ou novos dados que são utilizados para fazer previsões futuras. A complexidade crescente dos problemas tratados em projetos de Machine Learning demanda cada vez mais não apenas mais dados, mas também dados mais diversos e compreensíveis, e com isso surgem os problemas de qualidade.
Uma pesquisa publicada pelo Harvard Business Review feita com executivos de grandes apontou que apenas 3% dos dados dessas empresas atendem aos requisitos básicos de qualidade. As razões apontadas pelo estudo para a baixa qualidade dos dados variam desde o fato dos criadores dos dados não entenderem o que é esperado dos dados até motivos que incluem processos complexos nas empresas e erro humano.
Em termos financeiros o mercado de Big Data movimenta cerca de 136 milhões de dólares ao ano no mundo todo, de acordo com pesquisa de mercado realizada pela IDC. No entanto a IBM estima que o custo anual da baixa qualidade de dados custa às empresas cerca de 3.1 trilhões de dólares apenas nos Estados Unidos. Apesar de os números não serem comparáveis, ambos apontam que melhorar qualidade dos dados é de longe a maior oportunidade em dados.
Para compensar os erros encontrados, cientistas de dados tem que dedicar enorme tempo em preparar estes dados para treinamento do modelo. Um processo que dura em média 60% do tempo e esforço do time de ciência de dados durante o projeto. Dependendo dos dados, o cientista precisa formatar, filtrar, manipular e criar os dados de acordo com o modelo a ser utilizado. Cada problema a ser resolvido na etapa de preparação dos dados tem aspectos únicos que geralmente tem sua origem no processo de aquisição dos dados.
Mesmo com todo esforço e tempo dedicado pelo time de cientistas de dados na preparação dos dados é impossível detectar e corrigir todos os erros, e pior, não há como entender o impacto destes erros na qualidade do modelo preditivo. O problema só aumenta quando conforme as tecnologias de Machine Learning penetram ainda mais nas empresas e, a saída de um modelo preditivo se torna a entrada para outro modelo, e a saída deste se torna entrada para um terceiro modelo e assim sucessivamente. O risco associado é que uma pequena distorção nos dados no início pode gerar uma cascata de erros, causando mais erros e crescendo em magnitude durante todo o processo.
Para solucionar tais problemas faz-se necessário que seja adotado um programa de qualidade que seja bem executado e agressivo o suficiente para garantir altos padrões de confiança nos dados em todas as partes do processo envolvido. O primeiro passo na implementação desse programa de qualidade envolve entender seus objetivos com os dados e verificar se você possui os dados necessários para atingir os objetivos. Quando não é possível atingir os objetivos almejados com os dados que a empresa possui deve-se procurar por fonte de dados externas ou repensar os objetivos identificados.
Em seguida, reserve tempo necessário desde a concepção do projeto de analytics para executar tarefas fundamentais de qualidade. Para cada hora de implementação reserve quatro horas para atividades de qualidade, que incluem medir níveis de qualidade, verificar fonte de dados, checar por dados duplicados e limpar os dados de treinamento. Pois é melhor eliminar as causas de erros desta forma minimizando a quantidade de horas dedicadas à limpeza dos dados durante o projeto de analytics.
É um exemplo de boas práticas em qualidade de dados, registrar todos os passos e modificações feitas nos dados bem como criar uma cópia original dos mesmos. Tal prática tanto ajuda a realizar melhorias no processo de qualidade de dados como ajuda a entender as limitações e biases do modelo treinado.
No programa de qualidade de dados deve haver uma pessoa ou um time responsável não apenas por atender os requisitos básicos de qualidade, mas também de manter níveis aceitáveis de qualidade no decorrer do projeto, em especial durante a fase de release do modelo. Manter qualidade dos dados não é um trabalho pontual e sim uma prática recorrente que deve ser reforçada diariamente.
Por fim, como forma de garantir qualidade dos dados de maneira imparcial, obtenha auditorias externas de grupos não relacionados à empresa ou ao projeto com relação à qualidade de dados. Não necessariamente este grupo precisa ser externo à organização, mas sim externo ao grupo de analytics que desenvolve o projeto.
Vale a pena salientar que mesmo depois de implementar um programa de qualidade de dados, os dados não serão perfeitos. Mas certamente você terá minimizado os riscos associados aos erros que permaneceram. E com relação a estes erros utilize sempre uma abordagem multidisciplinar trazendo pessoas do negócio junto com cientistas de dados sempre que possível, pois pessoas de negócio têm lidado com dados ruins há algum tempo e os cientistas de dados precisam de suas expertises para solucionar problemas como, por exemplo, valores faltando e qual técnica de imputação deve ser escolhida.
Tenha em mente que dados que não atendem a padrões de qualidade acabam gerando desperdício de tempo, aumento nos custos, enfraquecem a tomada de decisão, deixam clientes decepcionados e ainda tornam mais difícil executar qualquer tipo de estratégia de dados da sua empresa.
No entanto Machine Learning tem um poder e potencial incríveis de alavancar qualquer modelo de negócio de todo tipo de empresa, e todos precisam descobrir esse poder. Dados com baixa qualidade podem fazer com que esse potencial seja atrasado, negado ou até mal utilizado, dessa forma justificando cada segundo de esforço que é dedicado em melhoria da qualidade dos dados.
Quer fazer um projeto de Machine Learning confiável e relevante para a sua empresa ou o seu negócio? Fale conosco!
Texto escrito pelo nosso Cientista de Dados e crossfiteiro Douglas Oliveira.