segunda-feira, 21 de abril de 2014

A importância dos dados

Até agora temos falado das técnicas para analisar dados e extrair padrões destes. Mas além das técnicas, existe um detalhe muito importante, que deixa até de ser detalhe.
Tão importante quanto as técnicas a serem aplicadas aos dados, são os próprios dados.
Não há modelo ou algoritmo que "salve" dados ruins. Mas o quero dizer com 'dados ruins'? 'Dados ruins' não é uma expressão que se refere a dados que não apresentam o resultado que queremos, mas sim a dados que não representam a realidade como ela é.

Modelos são abstrações da realidade. Isso significa buscar identificar as características macro que definem o alvo analisado através de um conjunto de dados capaz de representar essa realidade. Logo, se o conjunto de dados apresentado for distorcido, a representação que o modelo fará será distorcida, de modo que em relação ao que se deseja analisar de fato, o modelo não terá valor ou significado algum.

Devido a isso, a etapa de entendimento dos dados se mostra como uma etapa bastante decisiva. As conclusões após essa etapa podem levar a desistir de criar um modelo, devido à possível inexistência de dados confiáveis, fidedignos. Isso porque, um modelo feito em dados distorcidos, vai apenas prejudicar o processo de decisão e descoberta, uma vez que levará a conclusões errôneas ou à descoberta de padrões irreais, que não terão efeito no mundo prático. Modelos feitos em dados não íntegros levam-nos a vieses e ao erro.

Vamos ver alguns pontos que valem a pena serem ressaltados a esse respeito:

Metadados

O básico na etapa de entendimento seria verificar se há um metadados disponível para ajudar a entender os dados. Entretanto, sabemos que muitas vezes este não existe, e acabamos tendo que fazer uma investigação mais longa, através de conversas com diversas pessoas envolvidas no processo de geração dos dados, ou analisando documentos que possam conter essas definições. Seja como for, é essencial garantir que não estamos interpretando os dados de forma incorreta, como por exemplo, considerar o campo de 'valor de parcela' como campo de 'valor não pago de parcela'.

Governança de dados

Algo que deve ser questionado é: o quanto podemos confiar no processo que gera os dados? Por exemplo, imagine que você está fazendo um modelo e um dos dados disponíveis é o 'salário'. Será que existe um processo de verificação do salário informado pelo cliente, ou o que é inserido no banco é apenas o que o cliente informa verbalmente? Caso não haja uma verificação, devemos pensar duas vezes antes de considerar esse dado no modelo.

Outros

Alguns campos dificilmente podem ser considerados, dado que a informação é inserida no cadastro manualmente. Um exemplo disso seria o campo 'profissão'. Muitas vezes num processo de cadastro, um atendente não entende ou não encontra a profissão informada pelo cliente e seleciona uma profissão que ele acredita ser similar. Além disso, ele pode definir a profissão como 'outros'. Desta forma duas coisas podem acontecer: pessoas serão classificadas em profissões inadequadas; o campo profissão terá uma grande porcentagem de pessoas em outros, e não será muito informativo.


Abraços miningnoobs!