Detecção de Aliciamento de Crianças e Adolescentes em Salas de bate-papo Arion Ruiz Ribas, Luiz Melo Romão Departamento de Informática – Universidade da Região de Joinville (UNIVILLE) Joinville – SC – Brasil [email protected], [email protected] Abstract. With the growing number of children attend chat rooms, the identification of grooming by persons in this environment, became a unfeasible task. The present work has with motivation, facilitate the form how are performed detections of grooming children in chat rooms. The objective is run an experiment to analyzing the performance of text mining algorithms that will be implemented in the future tool. This paper will analyze the algorithms JRip, NaiveBayes and J48 by Weka tool and for evaluation of the results will be used as precision and recall Metrics for measuring the performance of each algorithm. Resumo. Com o crescente número de crianças que frequentam salas de bate papo, a identificação de um ato de aliciamento por pessoas neste ambiente tornou-se uma tarefa inviável. O presente trabalho tem como motivação facilitar a forma como são realizadas as detecções de aliciamento infantil em salas de bate papo. O objetivo é realizar um experimento para analisar o desempenho dos algoritmos de mineração de textos que possam ser implementados em uma ferramenta futura. Neste trabalho, serão analisados os algoritmos JRip, J48 e NaiveBayes, através da ferramenta WEKA e como forma de avaliação dos resultados serão utilizadas as métricas de precision e recall, medindo o desempenho de cada algoritmo. 1. Introdução O número de dispositivos com acesso a internet vem crescendo a cada dia, tornando-se parte da vida de muitas pessoas e famílias. A facilidade de acesso à tecnologia e internet cria uma tendência, onde as crianças começam cada vez mais cedo a utilizar estes dispositivos tecnológicos. De acordo com a pesquisa TIC Kids Online Brasil (BRASIL, 2014), 67% da população brasileira entre 10 e 15 anos utilizam a internet e 44% dos entrevistados acessaram a internet pela primeira vez com idade inferior a 10 anos. Entre esse grande número de pessoas que utilizam a internet, muitas a utilizam como forma de comunicação. Esta pesquisa ainda mostra que 53% dos usuários utilizam a internet para redes sociais ou troca de mensagens e 23% afirmam já ter se encontrado com pessoas desconhecidas que conheceram pela internet e, somente em 1% destes casos, os pais ficaram sabendo do encontro. Com isso, surge um “novo mundo” onde pessoas com segundas intenções podem se aproveitar de outras pessoas para cometer crimes, como o aliciamento de crianças e adolescentes. 69 O aliciamento pode ocorrer de diferentes formas, geralmente, uma pessoa tenta seduzir outra, aproveitando-se de uma determinada situação para marcar encontros e cometer crimes como abuso sexual e pornografia infantil. Estes tipos de crimes estão tornando-se cada vez mais comuns, entretanto a identificação desses indivíduos é um problema (MORRIS, 2012). Com base nisso, surge a necessidade de se criar maneiras automatizadas para facilitar a identificação destes criminosos, como por exemplo, através da verificação das mensagens trocadas nas redes sociais utilizando técnicas de mineração de texto. A mineração de texto é utilizada para descobrir e extrair automaticamente informações relevantes dos documentos e serviços ligados a internet. Porém, esta busca por informações relevantes da internet não é uma tarefa trivial e existe uma série de dificuldades para analisar estas mensagens utilizando apenas os métodos e ferramentas tradicionais. Nos trabalhos de (SANTIN, 2013), (MORRIS, 2012) e (KONTOSTATHIS, 2009), são mostrados estudos para desenvolver novas ferramentas e métodos para detecção de aliciadores na internet, adaptando técnicas e ferramentas existentes para realizar uma análise mais precisa do perfil de mensagens de aliciadores, através de classificadores que determinem um grupo de mensagens suspeitas com maior exatidão. Dentre as técnicas utilizadas para classificação de texto são utilizados algoritmos de AM (aprendizado de máquina) como redes neurais, SVM (Support Vector Machine), LSA (Latent Semantic Analysis), classificadores bayesianos entre outros. Porém, a classificação não é o único problema, como as informações analisadas não são estruturadas como em um banco de dados, existe uma dificuldade ainda maior em extrair conhecimento destes dados (SANTIN, 2013). Os dados analisados via internet podem ser classificados como do tipo semiestruturado ou não estruturado. Os dados semiestruturados são uma forma de dado estruturado que não está de acordo com a estrutura formal dos modelos de dados associados com bancos de dados relacionais ou outras formas de tabelas de dados, mas que contém tags ou outros marcadores para separar elementos semânticos e impor hierarquias de registros e campos dentro dos dados, podendo ser documentos no formato HTML ou XML. Documentos que não possuem nenhum tipo de estrutura, como textos, são ditos não estruturados. As mensagens de texto em salas de bate papo, podem se apresentar tanto semiestruturadas quanto não estruturadas, havendo a necessidade de técnicas específicas para recuperar os dados em ambos os casos. Após recuperar estes dados é necessário descobrir um padrão de similaridade nesses arquivos, para então classificá-los. Com isso, este trabalho tem como objetivo criar uma base de dados com trechos de conversas retiradas de salas de bate-papo a fim de identificar possíveis aliciadores de menores. Para a análise dos dados e descoberta de padrões de aliciamento infantil, serão utilizados os algoritmos JRip, J48 e Naive Bayes e os resultados serão avaliados através de métricas de desempenho. Além desta parte introdutória, este artigo está dividido na seguinte forma: na Seção 2 é apresentada a fundamentação teórica com os principais conceitos utilizados na pesquisa, na Seção 3 são definidos os procedimentos metodológicos que foram realizados na execução do artigo. A Seção 4 mostra a análise e discussão dos resultados obtidos e na Seção 5 são apresentadas as considerações finais do artigo. 70 2. Fundamentação Teórica A Mineração de Textos foi criada para realizar a extração de conhecimento de estruturas de dados do tipo não estruturadas (MONTEIRO, 2006). Dados não estruturados podem ser representados por documentos de texto, tais como: e-mails; arquivos em diferentes formatos (pdf, doc, txt); páginas Web; campos textuais em bancos de dados; textos eletrônicos digitalizados a partir de papéis (MORAIS, 2007). Segundo Lopes (2004), a Mineração de Textos pode ser definida como “um conjunto de técnicas e processos que se prestam a descobrir conhecimento inovador nos textos”. A Mineração de Textos é composta por tarefas oriundas da Mineração de Dados, e seu processo é baseado no Knowledge Discovery from Text (KDT) (MORAIS, 2007). De modo geral, as principais etapas do processo de Mineração de Textos são: Seleção dos dados; Preparação dos dados, Aplicação de Tarefas de Mineração de Texto e Pós-Processamento dos Dados. Na figura 1, é mostrado o esquema básico para o processo de Mineração de Textos. Figura 1: Etapas da Mineração de Textos (LOPES, 2004) A primeira etapa em um processo de Mineração de Textos consiste em selecionar a base de dados, ou os documentos disponíveis que serão utilizados, definir o problema, os resultados esperados, as restrições existentes e os algoritmos de mineração mais apropriadas para o problema. Assim como na mineração de dados, a escolha da base de dados deve ser realizada de acordo com o problema a ser resolvido. A escolha de uma base com conteúdo relevante em relação ao problema, é de suma importância para se obter um resultado final satisfatório (LOPES, 2004). A maioria das bases de dados possui uma grande quantidade de informações irrelevantes ou estão em formatos que dificultam a análise e identificação de padrões nos arquivos de dados, havendo a necessidade de realizar um tratamento nos arquivos de dados e identificar os termos relevantes e irrelevante. A etapa de preparação dos dados é responsável por realizar o tratamento dessas informações. A fase de preparação dos dados consiste em realizar os devidos tratamentos nos documentos selecionados. Esta fase é responsável por realizar as transformações necessárias nos termos, descoberta dos termos relevantes e remoção dos termos irrelevantes. De acordo com Corrêa (2012), a técnica de identificação de termos 71 relevantes, tem como propósito identificar os termos que são relevantes e padronizar os termos da base de dados. Os termos encontrados, podem ser simples ou compostos. Termos simples possuem um significado, independente do contexto que é utilizado, já termos compostos devem ser analisados dependendo do contexto utilizado. Os termos encontrados nos documentos de texto podem conter diferentes tipos de letra (maiúscula ou minúscula), dificultando a comparação de termos iguais. Para isso, pode ser utilizada uma técnica de case folding, que consiste em transformar as palavras para um mesmo tipo de letra, podendo ser maiúscula ou minúscula (LOPES, 2004). Após a utilização do case folding, todos os termos do texto são separados em vetores, para que os termos possam ser analisados individualmente. As vírgulas e espaços são removidos, pois são considerados irrelevantes; os acentos podem ser removidos utilizando técnicas de Processamento de Linguagem Natural (PLN) (CAMILO, 2009). De acordo com Camilo (2009), também é possível eliminar os termos que possuem pouca relevância no texto através da técnica chamada de stopwords. Os termos irrelevantes dependem do idioma que está a base de dados. No idioma português por exemplo, palavras que pertencem a certas classes gramaticas, como preposições, pronomes, artigos, advérbios e numerais, são consideradas irrelevantes na identificação do sentido de um texto, e, portanto, podem ser removidas. A remoção de stopwords pode ser realizada com o auxilio de um dicionário de dados, que contém uma lista de termos que não são úteis. Outra técnica que pode ser utilizada nesta fase é o stemming ou normalização, que tem como propósito realizar a redução dos termos para a sua origem ou radical. Esta redução facilita a identificação das palavras e seus sentidos (WIVES, 2002). A técnica de stemming realiza a remoção dos prefixos, sufixos, gênero, número e grau de um termo, transformando várias palavras em um único termo. De certa forma, essa transformação acaba reduzindo significativamente o número de termos a serem analisados, facilitando a descoberta de termos similares, porém, isso reduz a precisão na classificação de documentos, pois os termos serão analisados de forma genérica (MORAIS, 2007). Após a aplicação destas técnicas, o resultado é um conjunto de termos que possuem relevância para a identificação do sentido do texto. Com isso, é realizado o cálculo de relevância dos termos. O cálculo de relevância dos termos, determina quais termos possuem maior grau de prioridade dentro de um texto, podendo ser medido através da frequência absoluta, frequência relativa e frequência inversa de documentos, dentre outras mais complexas. Conforme Wives (2002), a frequência absoluta é realizada através da contagem do número de ocorrências dentro do texto, ou seja, a quantidade de vezes que o termo aparece em um documento. Já a frequência relativa, tem como objetivo realizar a contagem dos termos e determinar sua prioridade baseando no tamanho do documento, visto que a frequência de um termo em um documento grande é diferente da frequência em um documento pequeno. A frequência inversa de documento utiliza a frequência absoluta e a frequência relativa, para medir o peso de um determinado termo, com relação ao seu grau de aparição em diferentes documentos. Após o cálculo de relevância e com o conjunto de termos relevantes, inicia-se a fase de extração do conhecimento com o uso de técnicas de mineração de textos. 72 As técnicas utilizadas em mineração de textos são oriundas de diferentes áreas, tais como: inteligência artificial, mineração de dados, entre outras. A aplicação de uma técnica de mineração de textos deve levar em consideração a definição do problema e o objetivo do processo a ser realizado, sendo necessário definir claramente o que se deseja extrair a partir dos arquivos de texto (LOPES, 2004). Dentre as técnicas mineração de textos, a classificação de dados é utilizada para realizar classificação de documentos de texto. A tarefa de classificação dispõe de diversos algoritmos como: Classificadores de Árvore de Decisão, Redes Neurais, Classificadores baseados em exemplos, Classificadores Probabilísticos, Classificadores baseados em Support Vector Machines (SVM), entre outros (LOPES, 2004). A última fase no processo de Mineração de Textos é chamada de PósProcessamento dos dados, e consiste em realizar a validação do conhecimento descoberto, através de métricas de avaliação e ferramentas de visualização. 3. Procedimentos metodológicos Para realizar os experimentos, foram utilizadas 10 transcrições de conversas em um total de 17745 linhas divididas em partes iguais de agressores (aliciadores) e vítimas, retiradas do site Perverted-Justice. O Perverted-Justice é um site onde voluntários cadastrados iniciam uma conversa com possíveis aliciadores, passando-se por crianças e em parceria com a polícia dos Estados Unidos, é armado um flagrante. As conversas e o perfil do aliciador são disponibilizados no site para futuras pesquisas. Estas conversas foram agrupadas em uma única base. Nessa base, foram aplicados diferentes técnicas para a preparação e análise dos dados. Na primeira etapa de preparação dos dados, foram removidas as pontuações, números e caracteres irrelevantes existentes, e o texto foi convertido em um conjunto de palavras. Neste conjunto de palavras, com a ajuda de um dicionário de dados, foram substituídos todos os termos informais utilizados em bate-papo para termos formais, como por exemplo a palavra 2day foi transformada em today. Ainda foi aplicado um algoritmo baseado em Lógica Fuzzy para converter todos os termos escritos errados, em termos corretos. Ao final desta etapa, obteve-se um conjunto de termos formais, e então com o uso da técnica de stemming, foram removidos todos os sufixos desses termos. Após estas etapas, obteve-se uma lista com todos os termos coloquiais utilizados nas conversas, com o auxílio de uma stopList, ainda foram removidos todos os termos considerados irrelevantes. Ao final foi realizado o cálculo de relevância dos termos através do uso da frequência absoluta. Com isso, obteve-se uma lista com todos os termos relevantes da conversa e sua frequência, onde cada termo foi identificado pela classe agressor ou vítima. Está lista foi então convertida para uma base de dados no formato ARFF, formato padrão da ferramenta Weka utilizada no experimento. Para a descoberta de padrões de aliciamento na base de dados foram utilizados os algoritmos J48, JRip e Naive Bayes, que representam três diferentes tipos de modelos de classificadores. O J48 é uma implementação do algoritmo C.4.5 usado para gerar uma árvore de decisão baseado num conjunto de dados de treinamento, sendo que esse modelo é utilizado para classificar as instâncias do conjunto de teste. O algoritmo JRip representa o método direto de criação de regras e implementa uma aprendizagem 73 baseada em regra proposicional. Já o algoritmo Naive Bayes é um algoritmo estatístico que computa a probabilidade de um documento pertencer a determinada classe a partir da probabilidade a priori de um documento ser desta classe e da probabilidade condicional de um termo ocorrer em um documento da mesma classe. Para a análise dos resultados, foram utilizadas as métricas de precision, recall (sensitividade) e a taxa de acerto de cada algoritmo. Na precision é analisada a porcentagem de documentos recuperados que de fato são relevantes. Já o valor do recall mostra a porcentagem de documentos que são relevantes e foram, de fato, recuperados. Conforme as fórmulas a seguir: Onde, n_recuperados_relevantes: é o número de documentos relevantes recuperados. n_possíveis_relevantes: é o número total de documentos relevantes do sistema. n_total_recuperados: é o número total de documentos do sistema 4. Análise de Dados e Discussão do Resultados Após realizar todas as etapas para descoberta de termos que distinguem agressor e vitima dentro de uma conversa de sala de bate-papo e descobertos os termos com maior relevância, foram aplicados os algoritmos de classificação J48, JRip e NaiveBayes para a descoberta de padrões de aliciamento. Os experimentos foram realizados utilizando como procedimento o método de validação cruzada fator 10 e os resultados são descritos como valores-médios. A Tabela 1 mostra os resultados obtidos por cada classificador. Tabela 1: Resultados dos Classificadores Taxa de Acerto Precision Recall JRip 57,05% 0,57 0,571 J48 58,91% 0,588 0,589 NaiveBayes 56,09% 0,562 0,561 Após analisar os resultados, observou-se que os valores apresentados em taxa de acerto, precision e recall foram muito similares entre os algoritmos. Levando em consideração a taxa de acerto, o algoritmo J48 obteve um resultado um pouco melhor com relação aos outros. Entretanto como forma de visualizar os padrões de aliciamento, o algoritmo JRip, por apresentar seus resultados através de um conjunto de regras, torna 74 o seu entendimento mais compreensível do que outros modelos. Com isso, foi possível identificar que quando existe um aliciamento as palavras BOILING, SEXY, MOM, DISH, EYE, são as mais comuns utilizadas por agressores. A etapa de preparação dos dados mostrou-se de fundamental importância para os baixos resultados obtidos, devido ao fato das conversas estarem na língua inglesa, tevese um pouco de dificuldade para gerar o conjunto de termos finais, principalmente pela complexidade de interpretação dos termos informais utilizados. Para obter melhores resultados pretende-se gerar uma base com termos no português, afim de se obter uma análise mais abrangente dos resultados. 5. Considerações Finais Este trabalho propôs realizar um experimento para analisar o desempenho de algoritmos para descoberta de modelos de detecção de aliciamento, utilizando palavras oriundas de conversas de salas de bate-papo. No decorrer do trabalho foi optado pela utilização dos algoritmos J48, JRip e NaiveBayes, pois vieram apresentando melhores resultados na classificação de textos em outros artigos e por pertencerem a grupos de classificação distintos. Ao final do experimento observou-se similaridade nos resultados, e foi possível gerar diferentes modelos de palavras que caracterizam aliciamento. Este artigo se mostra de grande utilidade para futuras pesquisas na área, visto que são poucas as pesquisas encontradas na literatura até o determinado momento. O presente artigo visa auxiliar na implementação de uma futura ferramenta para detecção de aliciamento infantil em salas de bate-papo. Referências Brasil, Comitê Gestor da Internet no Brasil. Pesquisa sobre o uso da internet por Crianças e Adolescentes no Brasil. Disponível em: <http://www.cetic.br/publicacoes/2012/tic-kids-online-2012.pdf>. Acesso em: 15 abr. 2014. Camilo, C. O; Silva, J. C. Mineração de Dados: Conceitos, Tarefas, Métodos e Ferramentas. Relatório Técnico, Universidade Federal de Goiás, 2009. Corrêa, G. N; Marcacini, R. M; Rezende, S. O. Uso da mineração de textos na análise exploratória de artigos científicos. Relatório Técnico, Instituto de Ciências Matemáticas e de Computação-USP, 2012. Kontostathis, A. ChatCoder: Toward the Tracking and Categorization of Internet Predators. SPARKS: Proc. Text Mining Workshop 2009 Held in Conjunction with the ninth Siam International Conference on Data Mining, 2009. Lopes, M. C. S. Mineração de Dados Textuais Utilizando Técnicas de Clustering para o Idioma Português, Tese Doutorado em Engenharia Civil, Universidade Federal do Rio de Janeiro, 2004. Monteiro, L. O.; Gomes, I. R.; Oliveira, T. Etapas do processo de mineração de textos: uma abordagem aplicada a textos em português do Brasil, Anais do 75 XXVI Congresso da SBC, I Workshop de Computação e Aplicações, (pp. 78-81). Campo Grande, MS, 2006. Morais, E. A. M; Ambrósio, A. P. L. Mineração de Textos. Relatório Técnico, Universidade Federal de Goiás, 2007. Morris, C.; Hirst, G. Identifying Sexual Predators by SVM Classification with Lexical and Behavioral Features, CLEF (Online Working Notes/Labs/Workshop), 2012. Santin, P. L. L Análise Automática de Textos de Mensagens Instantâneas para Detecção de Aliciamento Sexual de Crianças e Adolescentes. Dissertação Mestrado em Informática, Universidade Católica do Paraná, Curitiba, 2013 Weiss, S. M.; Indurkhya, N. Predictive Datamining: a pratical guide, Morgan Kaufmann Publishers Inc. San Francisco, CA, USA, 1998. Wives, L. K. Tecnologias de descoberta de conhecimento em textos aplicadas à inteligência competitiva. Exame de Qualificação EQ-069, PPGC-UFRGS, 2002. 76