Robotização Aplicada à Mineração de Dados

Qual o real valor de uma tecnologia não invasiva?
11 de janeiro de 2019
Automação nas Nuvens: um exemplo de tecnologia de “peso leve”
25 de junho de 2019

Data Mining ou mineração de dados é um processo iterativo no qual o progresso é definido pela descoberta de conhecimento em um conjunto normalmente volumoso de dados, geralmente a partir de informações não triviais neles dispersas. Dois objetivos principais da mineração de dados tendem a ser a predição de determinados valores a partir de variáveis contidas no conjunto de dados e a descrição, que envolve a descoberta de padrões descritores dos dados, que podem, então, ser interpretados por seres humanos.(1)

As formas mais básicas de aplicação da mineração de dados se concentram em bancos de dados transacionais, ou, principalmente, nos chamados data warehouse – bancos de dados voltados para análise multidimensional dos fatos de interesse definidos (p. e., vendas), com otimização das consultas sobre grandes volumes de registros. A mineração também pode ser aplicada a outras fontes e formatos de dados, como grafos, dados espaciais, dados textuais (p. e., em formato doc. ou PDF) e multimídia.(2) Por meio de técnicas avançadas, ainda, é possível minerar dados na web, o que desponta, na atualidade, como recurso de altíssima estima para os negócios, pesquisa e planejamento, dentre outras aplicações que importem descoberta de dados, correlações e padrões no acervo inesgotável da rede mundial de computadores.

Web scraping corresponde ao conjunto de técnicas de extração de dados de diferentes sites para uma base de dados única, com propósito de análise ou visualização.(3) Desafios de qualquer atividade de mineração de dados, da qual web scraping é uma metodologia, consistem basicamente na enorme quantidade e cobertura de informação disponível – muitas vezes poluída –, na variedade de tipos dos dados, na redundância da informação e na dinamicidade da web.

Dado que a informação disponível na web é acessível com base em diversos formatos e interfaces, são cada vez mais necessárias técnicas que sejam capazes de converter dados não estruturados, especialmente textos dispersos, em objetos passíveis de análise para extração de sentido ou insights. Exemplos dessas técnicas são correspondências via Regex, métodos HTTP, HTML e DOM parsing, reconhecedores de anotações semânticas e analisadores de visão computacional.

O emprego de Regex permite a aplicação de máscaras como filtro para extração de sintagmas ou textos pré-determinados. Métodos HTTP facilitam, por exemplo, a obtenção de arquivos HTML. DOM é um objeto hierárquico em formato de árvore gerado por um analisador sintático (parser) comumente associado à manipulação de marcações como XML. Anotações semânticas dizem respeito a meta-dados ou marcações encapsulados nas páginas mineradas ou em camadas semânticas, que podem ser usados para localizar trechos específicos de dados. Por fim, os analisadores de visão computacional aplicam algoritmos de machine-learning para, por exemplo, reconhecer padrões em imagens de texto, permitindo, então, a manipulação do texto respectivo por diferentes linguagens.

Tipo específico de web mining é a web content mining, que tem como objetivo extrair o conteúdo propriamente dito de páginas de websites. Exemplos desse conteúdo, com potencial valor agregado, são posts, reviews – objetos de análise de sentimento –, tópicos de pesquisa relevantes, entre outros.

A atividade de content mining inclui não apenas extração de dados, mas também identificação, correspondência, integração de dados semanticamente similares, hierarquia de conceitos, ontologias e integração de conhecimento.(4)

Divide-se, quanto à extração dos dados, na abordagem não estruturada e na abordagem semiestruturada ou estruturada. A primeira se aplica, por exemplo, a textos livres, que requerem uma série de técnicas(5) oriundas do campo de pesquisa da Descoberta de Conhecimento em Textos (Knowledge Discovery in Texts – KDT). Análises mais avançadas nesse campo incluem categorização de textos e processamento de linguagem natural. Já a segunda abordagem se relaciona com algoritmos aplicados, por exemplo, a linguagens de marcação, como XML, e tabelas relacionais de dados.(6)

E como a tecnologia de RPA se encaixa nesse contexto de mineração de dados? Em primeiro lugar, plataformas de robotização mais robustas oferecem instrumentos e atividades suficientes para integrar as principais técnicas de web scraping, tratadas neste artigo. Pode-se, por exemplo, acessar automaticamente um website, extrair dados abrangidos em múltiplas páginas, filtrá-los e transformá-los em formatos diversos e integrá-los em outras aplicações ou webservices. Muitas soluções de robotização podem extrair dados aos quais a maioria das ferramentas dedicadas de web scraping teriam difícil acesso.

Conforme estudos comparativos, a maioria dos web scrapers são “demasiado genéricos e majoritariamente projetados para desempenhar tarefas comuns e simples […] parecem não ser tão flexíveis e universais como se esperaria”.(7) RPA resolve esse problema, na medida em que permite minerar praticamente todos os tipos de páginas, com suporte a diversas atividades.

De acordo com a literatura, web scraping seria a segunda fase de um procedimento bifásico: a primeira corresponderia à aprendizagem de um padrão a ser aplicado na mineração. Assim, se o conjunto de páginas não for suficientemente grande, a mineração se mostra incompleta.(8) E os métodos tradicionais, sozinhos (sem uma solução robótica que os integre), podem não dar conta de mapear determinadas páginas, seja por falta de padrões identificados, ou porque as peculiaridades da página não são alcançáveis por uma metodologia única.

Agrega-se, portanto, mais um ganho com a tecnologia de RPA, a qual pode inclusive prover substrato analítico, por exemplo, sobre o número de transações efetuadas em páginas por robôs e seu tempo respectivo, bem como o número e tipos de exceções encontradas. Conforme o relatório da Digital Intelligence Systems, a possibilidade de otimização de tarefas e tomada de decisão bem informada, a partir da conversão de dados brutos em padrões relevantes, é um aspecto chave da tecnologia de RPA.(9)

 
 

Referências:

1 KANTARDZIC, Mehmed. Data Mining: Concepts, Models, Methods, and Algorithms. New Jersey: Wiley; IEEE, 2011, p. 2.
2 HAN, J; KAMBER, M; PEI, J. Data Mining: Concepts and Techniques. 3rd. Edition. Elsevier; MK, p. 18.
3 Cf. MOENS, M.F. Information Extraction: Algorithms and Prospects in a Retrieval. Context. In: The Information Retrieval, Series 21, Springer, New York, 2006.
4 HERROUZ, Abdelhakim; KHENTOUT, Chabane; DJOUDI, Mahieddine. Overview of Web Content Mining Tools. In: The International Journal of Engineering And Science (IJES), Volume 2, Issue 6, 2013.
5 Cf. GAIKWAD, Sonali Vijay; CHAUGULE, Archana; PATIL, Pramod. Text Mining Methods and Techniques. In: International Journal of Computer Applications, Volume 85, N. 17, January 2014.
6 Cf. JOHNSON, F; GUPTA, S.K.. Web Content Minings Techniques: A Survey. International Journal of Computer Application. Volume 47, N.11, June, 2012.
7 SIRISURIYA, S. Proceedings of 8th International Research Conference, KDU, November 2015.
8 CORDING, Patrick Hagge. Algorithms for Web Scraping
9 Disponível em https://www.disys.com/wp-content/uploads/2016/03/Robotics-Process-Automation.pdf.