MLDB – Machine Learning Database

Um dos principais problemas em Machine Learning é a respeito do tempo para consolidar e transformar informações em um formato simples para que a parte de aplicação dos algoritmos seja feita de forma de que ocorra o gasto de tempo mais para a análise do que para o pré-processamento.

O MLDB vem resolver o problema relativo a parte de consolidação de dados para e de quebra vem com um modelo para geração de modelos utilizando uma API Rest.

A forma de utilização mimetiza as suítes de data mining da Oracle e da Microsoft, em que tem-se uma sintaxe específica para realizar o processamento, ajuste de modelo e predição em lotes. 

MLDB – Machine Learning Database

Para os cientistas de Big-Data “Trabalho de Limpeza dos Dados” é principal obstáculo para Insights

Essa matéria do NYT fala a respeito do principal gargalo que os “analistas de Big Data” enfrentam que é a parte de limpeza dos dados.

Quem está acompanhando, estudando ou mesmo comentando a mais de 2 anos sobre as áreas de Mineração de Dados, Machine Learning, e KDD sabe que o trabalho de tratamento dos dados representa 80% de todo esforço em análise de dados.

Por tanto, falando em termos computacionais, aplicar 80% de esforço em uma tarefa não é um problema mas sim uma característica tratando-se de processos sérios de KDD.

Com o fenômeno do “Big Data” muitos dos “analistas de dados” esqueceram-se de que uma das partes mais significativas de todo trabalho de análise está por trás do fato que gerou aquela informação, e não a análise por sí só. Isto é, quem compreende a estrutura e a conceitualização na qual aquele aquela informação é criada e posteriormente persistida, tem por definição lógica mais conhecimento sobre o dado do que quem apenas está fazendo o quarteto Treino – Cross Validation – Teste – Validação.

Realizando um exercício de alegoria, se realizássemos uma transposição de Big Data para Big Food  com os mesmos 3V (Volume, Velocidade, e Variedade), seria algo como falássemos somente sobre as características nutricionais dos alimentos (quantidade proteínas, carboidratos, gorduras) com todo o academicismo para passarmos uma ilusão de erudição; mas esquecendo que essas concentrações estão estritamente relacionadas a forma de criação/plantio desses insumos (e.g. esteroides para bovinos e aves, modificações genéticas para as sementes, etc.) o que obviamente pode indicar que a métrica final de análise (no caso as informações nutricionais) não passam de uma ilusão.

 Para saber mais sobre o porque o Big Data está criando analistas iludidos (como alguns do NYT) leiam essas referências aqui, aqui, aqui, aqui, aqui, aqui, e finalmente aqui.

Para os cientistas de Big-Data “Trabalho de Limpeza dos Dados” é principal obstáculo para Insights

Qualidade de Dados

No WK abaixo é apresentado um método para lidar com dados não-estruturados:

This paper addresses the repeated acquisition of labels for data items when the labeling is imperfect. We examine the improvement (or lack thereof) in data quality via repeated labeling, and focus especially on the improvement of training labels for supervised induction. With the outsourcing of small tasks becoming easier, for example via Rent-A-Coder or Amazon’s Mechanical Turk, it often is possible to obtain less-than-expert labeling at low cost. With low-cost labeling, preparing the unlabeled part of the data can become considerably more expensive than labeling. We present repeated-labeling strategies of increasing complexity, and show several main results. (i) Repeated-labeling can improve label quality and model quality, but not always. (ii) When labels are noisy, repeated labeling can be preferable to single labeling even in the traditional setting where labels are not particularly cheap. (iii) As soon as the cost of processing the unlabeled data is not free, even the simple strategy of labeling everything multiple times can give considerable advantage. (iv) Repeatedly labeling a carefully chosen set of points is generally preferable, and we present a robust technique that combines different notions of uncertainty to select data points for which quality should be improved. The bottom line: the results show clearly that when labeling is not perfect, selective acquisition of multiple labels is a strategy that data miners should have in their repertoire; for certain label-quality/cost regimes, the benefit is substantial.

Qualidade de Dados

Pré-Processamento de Dados: Trabalhando com Outliers

Um dos problemas mais comuns em análise de dados, mas especificamente na fase de pré-processamento de dados numéricos contínuos é a ocorrência de outliers dentro do conjunto de dados.

Muito do que é explicado na literatura de mineração de dados e banco de dados sobre a análise de outilers (que não seja somente a detecção) é que as anomalias dos dados, devem, a priori, ser removidas dos conjuntos de dados; seja com a remoção da instância por completo, ou utilizando técnicas como binning (aproximação pelo vizinho mais próximo em linhas gerais).

Da mesma forma que uma base com anomalias podem enviesar o resultado e conseqüentemente apresentar distorções; a remoção dos mesmos pode também levar a um resultado igualmente tendencioso, no qual trabalha somente com o ‘melhor dos mundos’ em termos de pré-processamento dos dados. Essa pode não ser a abordagem mais inteligente em termos de análise de dados, pois uma anomalia pode ter relação direta com outro conjunto de variáveis (correlação ou casualidade) que poderiam entrar na amostra e que possivelmente poderiam  explicar a sua ocorrência.

Uma alternativa bem interessante nesse sentido seria no momento o pré-processamento realizar a marcação dos dados (e.g. uma flag binária) com as indicações utilizando o seguinte processo:

Rodar estatísticas relativas à análise exploratória dos dados (Média, Desvio Padrão, Variância, Análise de Inter-Quartis, etc);

Com essa informação determinar ranges relativos à base de dados realizando uma atribuição classificatória dentro do espectro de ranges, e aos outliers (Extremo Baixo, Baixo, Médio, Alto, Extremo Alto, e indicações de Outlier (Baixo) e Outlier (Alto)) .

É uma idéia simples na qual, não há a perca de dados; e que deixa o conjunto de dado apto para análise das correlações (se houverem) sobre as anomalias dentro do conjunto dos dados.

Pré-Processamento de Dados: Trabalhando com Outliers