gens Computacionais
As abordagens computacionais de an´alise da qualidade dos dados contam com numero- sas e importantes contribui¸c˜oes provenientes das ´areas de bancos de dados, da estat´ıstica e da minera¸c˜ao de dados. Tal fato marca a presen¸ca de um conjunto diversificado de t´ecnicas de identifica¸c˜ao de padr˜oes que podem remeter a defeitos nos dados.
Tradicionalmente, tais abordagens operam por meio do exame extensivo dos dados e podem ser separadas em duas categorias principais: a baseada em asser¸c˜oes e a base- ada em m´etodos quantitativos [Loshin, 2010]. Os representantes da primeira categoria
aplicam procedimentos para determinar o grau de conformidade dos dados as asser¸c˜oes previamente estabelecidas. Em contraste, a segunda categoria denota o uso de t´ecnicas estat´ısticas - incluindo a distribui¸c˜ao gaussiana e an´alise multivariada -, de minera¸c˜ao de dados1 ou aprendizado de m´aquina - do inglˆes Machine Learning - para a extra¸c˜ao de
assinaturas matem´aticas dos dados.
As se¸c˜oes subsequentes sintetizam as caracter´ısticas e limites de duas solu¸c˜oes repre- sentativas das categorias supracitadas, quais sejam a categoriza¸c˜ao de dados e a minera¸c˜ao de dados, respectivamente. Embora n˜ao abordado, cumpre ressaltar que o aprendizado de m´aquina e a minera¸c˜ao de dados compartilham similaridades relacionadas a abordagem, ao arcabou¸co e as limita¸c˜oes.
A categoriza¸c˜ao de dados e a minera¸c˜ao de dados apresentam decis˜oes distintas de projeto que implicam em diferentes limites no apoio ao pAQD. De modo a retratar sin- teticamente os referidos limites, o presente trabalho analisou os seguintes aspectos: i) a capacidade de manipula¸c˜ao de grandes volumes de dados, ii) o grau de favorecimento a supervis˜ao humana, iii) os obst´aculos para confirmar ou refutar a presen¸ca de defeitos nos dados.
Todos os referidos aspectos s˜ao ub´ıquos ao pAQD - Se¸c˜ao 2.2.3.1 -, bem como permitem situar a contribui¸c˜ao da visualiza¸c˜ao de dados no dom´ınio da avalia¸c˜ao da qualidade de dados.
3.2.1
Categoriza¸c˜ao de dados
3.2.1.1 Caracter´ısticas
A categoriza¸c˜ao de dados - do inglˆes Data Profiling - ´e uma solu¸c˜ao que disponibiliza um conjunto variado de informa¸c˜oes emp´ıricas sobre os dados por meio da aplica¸c˜ao de diferentes algoritmos de an´alise. Al´em de apoiar o pAQD, a categoriza¸c˜ao tamb´em ´e uti- lizada em necessidades envolvendo migra¸c˜oes de esquemas de bancos de dados, processos de integra¸c˜ao de dados, constru¸c˜ao da arquitetura empresarial de dados, dentre outros [Do, 2009; Loshin, 2010].
A categoriza¸c˜ao de dados pode operar no modo de valida¸c˜ao ou explora¸c˜ao. O objetivo do primeiro modo ´e revelar n˜ao conformidades dos dados frente a asser¸c˜oes definidas com base em metadados ou defini¸c˜oes de especialistas do UdD [Olson, 2003]. Em contrapartida, o modo de explora¸c˜ao produz uma cole¸c˜ao de informa¸c˜oes relativas aos dados mediante an´alises reversas. Essas an´alises ocorrem em n´ıveis de granularidades distintos, quais sejam atributos isolados, cruzamento entre atributos da mesma rela¸c˜ao e inter-rela¸c˜oes [Loshin, 2010; Olson, 2003].
1
Neste texto, o termo minera¸c˜ao de dados remete a m´etodos n˜ao supervisionados de aprendizagem de m´aquina. Por outro lado o termo aprendizagem de m´aquina remete a m´etodos supervisionados de aprendizagem.
A an´alise de atributos isolados aplica t´ecnicas da estat´ıstica descritiva e de sum´ario textual - como Minhash Signature e Approximate String [Do, 2009] - para expor diferentes caracter´ısticas dos dados, incluindo aquelas relativas a unicidade, a nulidade e a frequˆencia de valores. Por sua vez, a an´alise cruzada de atributos usa outro conjunto de t´ecnicas - como Approximate Keys [Do, 2009] - para revelar atributos candidatos a chave prim´aria, inferir dependˆencias funcionais e indicar tuplas potencialmente duplicadas. Por ´ultimo, a an´alise de inter-rela¸c˜oes identifica quest˜oes inerentes ao relacionamento entre rela¸c˜oes, incluindo tuplas ´orf˜as e cardinalidade.
3.2.1.2 Limites
A caracter´ıstica central da categoriza¸c˜ao de dados ´e a capacidade de parametrizar e aplicar diferentes algoritmos de an´alise dos dados. Contudo, a natureza n˜ao supervisio- nada desses algoritmos impede a an´alise de resultados intermedi´arios e a calibragem de parˆametros. Al´em disso, a parametriza¸c˜ao ´e um ato complexo que requer profissionais es- pecializados com raros conhecimentos sobre o contexto dos dados [Naumann, 2014]. Esse afastamento entre quem aplica a avalia¸c˜ao nos dados e quem analisa os resultados da avalia¸c˜ao afeta o desempenho e os resultados da atividade de avalia¸c˜ao dos dados.
Outro ponto de aten¸c˜ao da categoriza¸c˜ao dos dados remete ao formato de comunica¸c˜ao dos respectivos resultados. Usualmente, esses resultados s˜ao apresentados na forma de re- lat´orios tabulares est´aticos baseados em texto ou em pain´eis de indicadores sint´eticos - dashboards - com reduzida interatividade. Tais op¸c˜oes de visualiza¸c˜ao dificultam a ex- plora¸c˜ao e a interpreta¸c˜ao do conte´udo informacional gerado pela categoriza¸c˜ao de dados. Por fim, essa solu¸c˜ao apresenta restrita escalabilidade em raz˜ao de uma arquitetura baseada na disponibilidade de dados em mem´oria. Essa premissa estabelece uma oposi¸c˜ao pr´atica entre os requisitos de agilidade na entrega dos resultados e o volume de dados analisados [Naumann, 2014]. O processamento em lote e a amostragem dos dados s˜ao os recursos que contornam parcialmente a referida situa¸c˜ao [Loshin, 2010].
3.2.2
Minera¸c˜ao de Dados
3.2.2.1 Caracter´ısticas
A minera¸c˜ao de dados ´e conhecida pela capacidade de extrair propriedades desco- nhecidas de grandes volumes de dados, inclusive aquelas relacionadas a poss´ıveis defeitos nos dados. A detec¸c˜ao de anomalia - do inglˆes Anomaly Detection - compreende t´ecnicas de minera¸c˜ao aplicadas na identifica¸c˜ao de objetos com comportamentos que destoam daquele esperado: os at´ıpicos [Chandola et al., 2009].
As t´ecnicas baseadas em proximidade e densidade pontuam cada objeto de acordo com sua distˆancia aos k -´esimos objetos vizinhos considerados globalmente ou circunscritos em
um raio, respectivamente [Tan et al., 2006]. Por sua vez, t´ecnicas estat´ısticas inferem a aderˆencia probabil´ıstica dos objetos frente a um modelo de distribui¸c˜ao dos dados. J´a as t´ecnicas baseadas em agrupamentos - do inglˆes clustering - identificam objetos n˜ao fortemente relacionados aos demais segundo seu grau de isolamento ou por meio de fun¸c˜oes objetivas que determinam o relacionamento de pertinˆencia de um objeto a um agrupamento [Chandola et al., 2009; Tan et al., 2006].
Abordagens adicionais combinam a minera¸c˜ao de dados a outras t´ecnicas para revelar outros defeitos nos dados. Como exemplo, t´ecnicas de agrupamento e de l´ogica difusa - do inglˆes fuzzy logic - s˜ao aplicadas para determinar o grau de acur´acia das tuplas de uma rela¸c˜ao [Khosravani, 2012]. Outra abordagem adota uma estrat´egia semi-supervisionada que mescla o agrupamento de subespa¸co - do inglˆes sub-space clustering - e a t´ecnica de classifica¸c˜ao [Januzaj e Januzaj, 2009]. Nessa abordagem cada intera¸c˜ao representa o agrupamento dos dados por um novo atributo at´e a determina¸c˜ao do agrupamento mais adequado, segundo o julgamento do agente avaliador da qualidade. Esse agrupamento ´e base para a aplica¸c˜ao de uma fun¸c˜ao de classifica¸c˜ao que pode determinar os atributos vazios, os atributos incorretos - conte´udo igual a zero - e as tuplas duplicadas.
3.2.2.2 Limites
A minera¸c˜ao de dados realiza a simplifica¸c˜ao e abstra¸c˜ao dos dados por meio de arca- bou¸co matem´atico-estat´ıstico que exclui a capacidade de an´alise de um agente avaliador da qualidade [Tan et al., 2006], sendo os limites similares `aqueles apresentados para a categoriza¸c˜ao de dados - Se¸c˜ao 3.2.1.2. O conhecimento humano ´e restrito a sele¸c˜ao dos algoritmos mais apropriados a detec¸c˜ao de um defeito particular, a calibragem dos respec- tivos parˆametros e a an´alise dos padr˜oes revelados pelos referidos algoritmos [Dasu, 2013; Dasu e Johnson, 2003]. Inclusive, essa ´ultima opera¸c˜ao estimulou o uso dos recursos da visualiza¸c˜ao de dados para alavancar a compreens˜ao dos referidos padr˜oes - Visual Data Mining [Keim, 2002].
O arcabou¸co de minera¸c˜ao de dados compreende conhecimentos matem´aticos e es- tat´ısticos - de certa complexidade - utilizados de maneiras diferentes por diversos algo- ritmos mineradores [Dasu, 2013]. Tal diversidade torna a sele¸c˜ao e a parametriza¸c˜ao dos algoritmos mineradores para conjuntos de dados de caracter´ısticas distintas um desa- fio [Rahm e Do, 2000]. Usualmente, esse procedimento pode envolve v´arias calibragens at´e atingir a parametriza¸c˜ao ideal de certo algoritmo para um dado conjunto de dados [Dasu e Johnson, 2003].
Certos algoritmos de minera¸c˜ao de dados apresentam tempo e espa¸co de mem´oria na ordem de O(N2), fato que delimita o volume de dados manipulado. Contudo, a literatura
provˆe v´arias t´ecnicas que permitem a minera¸c˜ao de grandes volumes de dados, incluindo t´ecnicas de redu¸c˜ao do n´umero de atributos - como FastMap, ISOMAP e PCA [Tan et al., 2006] -, de redu¸c˜ao de c´alculos de proximidade - como k-d tree [Tan et al., 2006] - e de
processamento distribu´ıdo ou paralelo - como Peer-to-Peer e algoritmos baseados em GPU [Zeng et al., 2012].