Title Goes Here

Propaganda
Ferramenta para Análise de Acesso de Uso de Objetos de
Aprendizagem em Websites
Rafael Silveira da Silveiraa , Cristian Cechinelb e Sandro da Silva Camargoa
a
Curso de Engenharia de Computação – Campus Bagé
Universidade Federal do Pampa
Caixa Postal 07, 96413-170 Bagé (RS) Brasil
[email protected], [email protected]
b
Centro de Educação Aberta e a Distância
Universidade Federal de Pelotas
Felix da Cunha, 630 Centro, CEP 96010-000, Pelotas(RS), Brazil
[email protected]
Abstract. In this work is proposed a methodology for discovering patterns of access to Learning Objects, through data
mining of web usage, ie, data is extracted from logs of websites that store all the information on how the user is related to
Internet. The objective is to discover patterns of access to learning objects available on websites. The methodology used
is based on the concept of KDD (Knowledge Discovery in Databases), which consists of four steps: data gathering, preprocessing, data mining and post-processing. In the first step is recorded the log file of a website that stores the learning
objects. In pre-processing step was applied a filter in server logs, in order to extract only the necessary information and
format them to use in the tool used for such data mining step. The third step is responsible for mining the data that were
filtered and prepared in the previous step and the fourth and final step was responsible for analyzing the results generated
in the mining step. Through this methodology, which can be expanded to other sites, it was possible to discover the
behavior of users who make use of learning objects stored on the website.
Resumo. Nesse trabalho é proposta uma metodologia para descoberta de padrões de acesso a Objetos de Aprendizagem,
através de Mineração de dados de uso da web, ou seja, dados extraídos de logs de websites, que armazenam toda a
informação de como o usuário se relaciona com a Internet. O objetivo do trabalho é descobrir padrões de acessos a
Objetos de Aprendizagem disponibilizados em websites. A metodologia usada é baseada no conceito de KDD
(Knowledge Discovery in Databases) - Descoberta de Conhecimento em Base de Dados, a qual é constituída de 4 etapas:
coleta de dados, pré-processamento, mineração de dados e pós-processamento. Na primeira etapa é recolhido o arquivo
de log de um website, que armazena Objetos de Aprendizagem. Na etapa de pré-processamento foi aplicado um filtro nos
logs de servidores, para extrair somente as informações necessárias e deixá-los no formato da ferramenta utilizada para
etapa de mineração desses dados. A terceira etapa é responsável por minerar os dados que foram filtrados e preparados na
etapa anterior e a quarta e última etapa foi responsável por analisar os resultados gerados na etapa de mineração. Através
dessa metodologia, que pode ser expandida para outros sites, foi possível descobrir o comportamento dos usuários que
fazem uso dos Objetos de Aprendizagem armazenados no website.
Keywords: Mineração de dados; Objetos de Aprendizagem; Website; Arquivos de log
PACS: 01.50.H- Computers as Educational Aids
1. INTRODUÇÃO
Uma das maiores fontes de informações que se tem hoje é a WWW (World Wide Web), mas essas informações
não se encontram de uma forma organizada e muitas vezes é difícil achar o que realmente se está procurando. O
custo de pesquisar em grandes volumes de dados existentes na web estimulou a criação de ferramentas automáticas
para mineração e descoberta de informações existentes na mesma. A mineração na web pode ser amplamente
definida como a descoberta e análise de informações úteis a partir da www, podendo ser dividida em: 1) Mineração
de Conteúdo; 2) Mineração de Estrutura e 3) Mineração de Uso [1]. A mineração de conteúdo trabalha com a
descoberta de informações úteis a partir do conteúdo web. No entanto, os conteúdos da web não são apenas texto,
mas também dados em outros formatos como áudio, vídeo, imagens e também dados estruturados [2]. Um bom
exemplo de mineração de conteúdo é o que é realizado por sites de busca. A mineração de estrutura aborda as
relações das informações contidas entre os documentos da web, sendo que links apontando para um documento
indicam a popularidade do documento, enquanto as ligações saindo de um documento indicam a riqueza ou, talvez,
a variedade de temas abordados no mesmo [2], por exemplo, quando um trabalho é citado muitas vezes é sinal de
que ele é importante, ou ainda, se ele faz referência a muitos outros, indica que ele pode ter uma grande variedade de
tema. A mineração de uso é o processo de aplicação de técnicas de mineração de dados para a descoberta de padrões
de uso a partir de dados da web [3], ou seja, tenta descobrir como o usuário se relaciona com a Internet, descrevendo
quem acessou, quando e de onde veio o acesso, sendo utilizada por exemplo, em recomendações de produtos
baseadas em compras anteriores.
A mineração de dados de utilização da web (Web Usage Mining) é uma forma automática de descobrir padrões
de acessos de usuários em servidores web [2]. Uma das formas que pode ser usada para essa descoberta é analisando
arquivos de logs de servidores, que contem um grande volume de dados de todos os acessos ao servidor [4]. De
posse desses dados aplicam-se algoritmos de mineração para processar, analisar e extrair conhecimentos dos
mesmos [5]. Tal técnica é destinada a fornecer dados que ajudam a melhorar a qualidade do serviço de um website
através de ferramentas assistentes de navegação que ajudam a gerenciar os dados da web [6]. Arquivos de log
podem apresentar diferentes formatos em virtude da quantidade de servidores web existentes, mas é possível
configurar os servidores para gerar um arquivo de log de acordo com uma especificação única. Esta especificação é
o Common Logfile Format (CLF) tal qual detalhado pelo World Wide Web Consortium (W3C) [7]. A estrutura de
um arquivo de log de acordo com o CLF é a seguinte: Endereço IP da máquina remota; RFC 931; Data e hora da
requisição; Requisição solicitada pelo cliente; Código retornado para o cliente; Tamanho em bytes do arquivo
solicitado e o Link anterior à requisição.
Arquivos de logs são fontes valiosas de informações, pois, através deles, é possível descobrir como os usuários
interagem com sites da web, através de seus Navegadores. Analisando esses dados é possível encontrar padrões de
acesso e caminhos de navegação a determinados endereços eletrônicos, propiciando aos proprietários de tal endereço
rastrear e descobrir o comportamento de seus clientes para gerenciar o site de modo que o usuário tenha seu espaço
personalizado. Trabalhar com processamento de informações em logs está longe de ser uma tarefa simples, uma vez
que, apesar desses arquivos possuírem um padrão bem definido, é necessário aplicar uma série de filtros para extrair
a informação desejada.
O presente trabalho tem como objetivo descrever uma metodologia usada para extrair informações de logs de
acesso a Objetos de Aprendizagem disponíveis em um website.
Esse trabalho está estruturado da seguinte maneira: A seção 2 apresenta um breve conceito de Mineração de
Padrões de Sequência. A seção 3 descreve a metodologia adotada para a execução do trabalho. A seção 4 apresenta
os resultados obtidos. E por fim seção 5 apresenta a conclusão e o que pode ser feito futuramente com o trabalho.
2. MINERAÇÃO DE PADRÕES SEQUENCIAIS
Devido ao rápido aumento da quantidade de dados na Web e a heterogeneidade dos mesmos, a exploração e a
descoberta de conhecimento através de dados da Web tornaram-se um processo difícil para a maioria dos
utilizadores. Além disso, com a grande quantidade de transações comerciais feitas na Internet, aumenta o interesse
das empresas em oferecer um serviço mais personalizado para aumentar a satisfação do cliente. A personalização de
uma página Web pode ser definida como uma maneira de tentar melhorar a experiência do usuário com uma página
da Internet. Identificar a necessidade do usuário e adaptar-se a ele dinamicamente é o principal objetivo da
personalização [8]. Um dos métodos existentes para extrair informações de acesso a websites é a Mineração de logs
de servidores. Diferentes ferramentas para aplicações de Mineração de logs da web estão sendo desenvolvidas para
procurar padrões de navegação, pois, além de melhorar a estrutura do site, é importante na estratégia de marketing
[9]. Uma das técnicas usadas para criação dessas ferramentas é a Sequential pattern mining, que tem como objetivo
encontrar relações entre as ocorrências de eventos sequenciais para descobrir se existe uma ordem específica nessas
ocorrências. Um padrão de sequência pode ser definido como um conjunto de passos que ocorre frequentemente
numa ordem específica. Um dos fatores levados em consideração nessa metodologia é o tempo, pois, dados na web
mudam o tempo todo de forma dinâmica. Quando o tempo é analisado para avaliar um conjunto de dados, o
processo de extração da informação pode gerar resultados mais úteis e precisos [9]. Por exemplo, uma regra pode
ser: quem Compra A bbbCompra B, se o tempo não for levado em consideração, não tem como saber em quanto
tempo isso aconteceria. Se o tempo levado em consideração fosse de um mês, por exemplo, a regra seria mais
precisa, pois, saberíamos que o evento aconteceria dentro do prazo de um mês.
Existem algumas ferramentas disponíveis na web que aplicam a técnica de mineração de padrões sequenciais
para extrair padrões de sequências de determinados eventos. Uma delas é a SPMF (Sequential Pattern Mining
Framework), que tem como característica ser open-source (código aberto), escrita em Java e distribuída sob licensa
GPL v3. Além dessas características, a ferramenta oferece mais de cinquenta implementações de algoritmos de
Mineração de dados, entre eles, estão seis algoritmos específicos para Mineração de padrão de sequência (Em:
<http://www.philippe-fournier-viger.com/spmf/>. Acesso em: 08 de Novembro de 2012). Um dos pontos positivos
dessa ferramenta é o tipo de dado que serve como entrada. A figura 1 mostra o formato dos dados de entrada, que
corresponde a uma tabela com duas colunas, sendo uma coluna o identificador e a outra a sequência de passos
seguidos. Nesse caso cada linha da tabela corresponderá ao caminho percorrido por um IP diferente.
FIGURA 1. Formato dos dados de entrada para a ferramenta SPMF
3. METODOLOGIA
A metodologia do trabalho segue o conceito de KDD (Knowledge Discovery in Databases), ou seja, é um
processo de várias etapas, não trivial, interativo e iterativo, para identificação de padrões compreensíveis, válidos,
novos e potencialmente úteis a partir de grandes conjuntos de dados” [10]. Dentre as várias etapas desse processo,
pode-se destacar como sendo as principais:
a) Coleta de dados;
b) Pré – Processamento;
c) Mineração de Dados;
d) Pós – Processamento,
Ou seja, depois de recolhido o arquivo de log(coleta de dados), o mesmo passa por um processo de filtragem e
limpeza dos dados (pré-processamento). Na terceira é usada a ferramenta SPMF para Mineração dos dados. A quarta
e última etapa responsável pelo pós-processamento dos resultados obtidos na etapa de Mineração de dados. A figura
2 ilustra as etapas de desenvolvimento que compõem o trabalho.
O trabalho foi desenvolvido a partir das seguintes etapas: 1) Recolher os arquivos de logs; 2) Aplicar um filtro
nos arquivos para extrair as informações importantes e deixá-lo no formato da ferramenta SPMF; 3) Usar a
ferramenta SPMF com a finalidade de descobrir padrões de acesso a objetos de aprendizagem e 4) Fazer uma
interpretação dos resultados obtidos na etapa 3.
FIGURA 2. Etapas da Metodologia
3.1 Coleta de dados - Recolhimento dos arquivos de logs
O processo de recolhimento dos arquivos de log foi feita de maneira manual em um website que contem
diversos Objetos de Aprendizagens armazenados, com a finalidade de auxiliar o ensino da disciplina de Algoritmos
e Programação em linguagem de programação C. Esses Objetos de Aprendizagem possuem o formato de tutoriais
(vídeos em flash) e foram criados a partir de gravações do desktop do computador enquanto algum determinado
problema estava sendo programado[12]. Ao todo estão disponibilizados 24 (vinte e quatro) Objetos de
Aprendizagem que abordam desde conteúdos básicos até os mais avançados do currículo da disciplina de
Algoritmos e Programação. A Tabela 1 apresenta alguns dos conteúdos dos conteúdos abordados pelos tutoriais,
divididos em 3 níveis de dificuldade: Introdutórios, Intermediários e Avançados.
TABELA 1. Objetos de Aprendizagem disponibilizados no website
Nível
Introdutórios
Intermediários
Título - Objetivo
Conteúdos
Uso do Editor Kate (Para usar no
Linux) - Introduzir o editor Kate
como uma ferramenta para a
digitação e compilação de códigos
em C.
1) Formas de abrir o editor Kate no Linux; 2) Como
criar e salvar um arquivo; 3) As partes do editor
Kate; 4) Como acessar o terminal console no Kate.
Apostila de Algoritmos e
Programação
1) Todo conteúdo da disciplina de Algoritmos e
Programação.
Olá Mundo (usando a IDE Dev
C++ no Windows) - Desenvolver,
compilar e executar um programa Olá
Mundo em C.
1) Como criar e salvar um arquivo; 2) Delimitadores
de bloco; 3) Biblioteca Stdio.h; 4) Estrutura de um
programa em C; 5) Significado do main(void) e do
return; 6) Como escrever mensagens na tela. Como
pular de linha; 7) Como e onde compilar; 8) Como e
onde executar;
Leitura e Escrita - Apresentar os
tipos de variáveis int, float e char e
como são realizadas suas declarações
e introduzir o uso do comando de
leitura scanf().
1) Declaração de variáveis inteiras, reais e caracteres;
2) Solicitação de valores de entrada para o usuário; 3)
Uso do comando de leitura scanf(); 4) Formatação de
leitura de tipos de variáveis no C (%d %c %i).
Operadores Aritméticos e
Relacionais - Apresentar os
operadores aritméticos de divisão
inteira e resto de divisão inteira.
1) Operadores aritméticos para divisão inteira e resto
de divisão inteira; 2) Operadores relacionais > e <; 3)
Valores resultantes de operações relacionais.
Estrutura de Condição IF ELSE Introduzir o uso da estrutura de
condição IF ELSE e apontar a
necessidade de estruturas de condição
aninhadas.
1) Estrutura de condição IF ELSE; 2) Avaliação de
expressões na estrutura de condição IF ELSE; 3)
Escopo da estrutura IF ELSE (uso das chaves); 4)
Demonstração de qual cláusula (if ou else) é
executada dependendo dos valores de entrada.
Estrutura de Condição Switch Demonstrar o funcionamento da
estrutura de condição Switch no
desenvolvimento de um pequeno
menu de opções.
1) Estrutura de condição Switch; 2) Escopo da
estrutura Switch; 3) Restrições de uso da estrutura de
condição Switch (somente variáveis ordinais).
Estrutura de Repetição For Apresentar a estrutura de repetição
For.
Estrutura de Repetição WHILE Demonstrar a utilização da estrutura
de repetição While e compará-la com
a estrutura de repetição For.
1) Estrutura de repetição For; 2) Uso de contadores;
3) Incremento de um contador i pertencente ao laço
For.
1) Estrutura de repetição While; 2) Contadores; 3)
Inicialização de contadores.
Avançados
Vetores - Demonstrar o
funcionamento de vetores em C
1) Declaração de vetores; 2) Inicialização de vetores
no momento da declaração; 3) Índices de vetores.
Ponteiros - Explicar o conceito e o
funcionamento de ponteiros em C
1) Declaração de ponteiros; 2) Inicialização de
ponteiros; 3) Exemplos do uso de ponteiros
Funções - Explicar o conceito e a
importância de funções em C
1) Declaração de uma função; 2) Uso de uma função.
1) Todo conteúdo da disciplina de Algoritmos e
Programação.
3.2 Pré-processamento - Aplicação do filtro
O filtro foi desenvolvido, em Python, e será aplicado nos arquivos de logs. A finalidade do mesmo é fazer um
pré-processamento para extrair conteúdos que não serão relevantes para a ferramenta e gerar um novo arquivo de
texto com apenas as informações consideradas úteis para a aplicação, como: ip do usuário e endereço requisitado.
Foi escolhida a linguagem de programação Python, pois, a mesma possui uma biblioteca específica para se trabalhar
com Expressões Regulares, que facilitam muito na hora de se buscar por padrões de sequência de caracteres. A
metodologia adotada para filtrar o arquivo de log foi a de extrair do mesmo apenas as informações de: a) IP do
usuário e b) Requisição feita pelo usuário.
O filtro executa a seguinte sequência de ações durante a filtragem do log:
a) Faz uma varredura em todo arquivo linha por linha;
b) Verifica a cada linha se o IP atual é igual ao IP anterior;
b.1) enquanto o IP atual for igual ao IP anterior segue escrevendo, em um novo arquivo texto, a
requisição do usuário na mesma linha;
b.2) se o IP atual for diferente do IP anterior, escreve no novo arquivo, uma nova linha e depois a
requisição;
c) Após esse processo é feito uma verificação se o link solicitado pelo usuário possui a palavra-chave que
caracteriza uma solicitação de acesso a um Objeto de Aprendizagem;
c.1) no caso de o link possuir essa palavra-chave ele é mapeado para um número inteiro e escrito no
novo arquivo;
c.2) senão ele é descartado, pois, o usuário está acessando algum item do site que não é um Objeto de
Aprendizagem.
Com esse novo arquivo contendo apenas os acessos aos Objetos de Aprendizagem, onde cada linha representa o
caminho percorrido por um usuário diferente, a última etapa do filtro é deixá-lo no formato aceito para ser usado
como entrada na ferramenta SPMF. Esse formato é o seguinte: cada número inteiro (maior que zero), que representa
o Objeto de Aprendizagem correspondente é representado pelo número -1(menos um) e cada final de linha, que
representa o fim do caminho percorrido por um usuário, é representado pelo número -2(menos dois). Ao final da
aplicação do filtro o arquivo de log que estava no formato conforme a figura 3, fica no formato aceito pela
ferramenta SPMF conforme a figura 4.
FIGURA 3. Formato de um arquivo de log sem filtro
FIGURA 4. Formato de um arquivo de entrada aceito pela ferramenta SPMF
Como pode ser observado nas figuras 3 e 4, a figura 3 mostra o formato original de um arquivo de log, que
contem as seguintes informações:
a)
Nome do usuário remoto (IP) - uma identidade para o servidor conhecer o cliente que está solicitando
a requisição para poder mandar a resposta;
b)
Data e hora – Informa a data e a hora da requisição ao link;
c)
Usuário autenticado - Usado para uma maior segurança, neste campo ficam armazenados login e
senha do usuário;
d)
Link requisitado - Nome do arquivo requisitado ao servidor, o qual é composto por uma string que
contém, além do nome, o tipo de método que será usado na recuperação do mesmo, por exemplo,
GET;
e)
Status - código que informa ao cliente se a requisição pode ser atendida ou não;
f)
Tamanho em Bytes - retorna ao cliente o tamanho, em bytes, do arquivo solicitado;
g)
Link anterior – armazena a informação de onde o usuário estava antes de requisitar um novo arquivo
ao servidor.
A figura 4 mostra o arquivo filtrado, que contem apenas as informações de IP e link requisitado, onde cada
linha representa um IP com todo o caminho percorrido pelos Objetos de Aprendizagem, ou seja, a sequência usada
para acessar os Objetos. Para deixar o arquivo no formato de entrada da ferramenta SPMF, foi necessário separar
cada acesso por o número -1 (menos um) e acrescentar ao final de cada acesso, ou troca de IP, o número -2 (menos
2) que simboliza uma nova linha ou um novo usuário (ID).
3.2 Mineração de Dados – Uso da ferramenta SPMF
Como já foi dito anteriormente, a ferramenta SPMF possui mais de 50 (cinquenta) implementações de
algoritmos para descoberta de padrões de sequência. Esses algoritmos encontram-se divididos em 4 (quatro) grupos:
a) Sequential Patterm Mining Algorithms;
b) Sequencial Rule Mining Algorithms;
c) Frequent Itemset Mining Algorithms;
d) Association Rule Mining Algorithms.
Após várias simulações usando vários algoritmos de todos os grupos citados, o escolhido foi o PrefixSpan
Algorithm [13]. A escolha deve-se ao fato do mesmo apresentar um modelo de entrada de dados muito parecido com
o formato de um arquivo de log, onde se tem uma linha para cada identificador (IP) e duas colunas que representam
o IP e o caminho percorrido, facilitando a transformação do arquivo de log no arquivo que servirá como entrada de
dados da ferramenta. Os passos para o uso da ferramenta são os seguintes:
 Executa-se o arquivo Java spmf.jar;
 Na tela inicial (figura 5), escolhe-se o algoritmo que será usado na mineração, o arquivo que será
usado como entrada, um nome e diretório para o arquivo de saída gerado pela ferramenta e o percentual
de acerto que a ferramenta trabalhará;
 Após preencher todos os campos, clica-se no botão Run Algorithm e a ferramenta irá gerar um
arquivo de acordo com a figura 6.
FIGURA 5. Tela inicial da ferramenta SPMF
FIGURA 6. Arquivo de saída da ferramenta SPMF
O arquivo de saída mostra na primeira coluna o número inteiro que representa um Objeto de Aprendizagem
mapeado, na segunda coluna o número -1(menos um) que representa um espaço e depois o número de vezes que tal
sequência, ou apenas um Objeto, foi acessado. Como pode ser observado na figura 6 – linha 1, o Objeto de
Aprendizagem 1(um) foi acessado 50 (cinquenta) vezes de forma isolada (sem nenhum acesso seqüencial a um outro
Objeto de Aprendizagem). Ainda na linha 2 é possível observar que o acesso seqüencial aos Objetos de
Aprendizagem 1 e 7 aconteceu 10 vezes.
4. RESULTADOS ENCONTRADOS
Ao serem analisados os dados gerados pela ferramenta SPMF, em uma análise de 12 arquivos de log em
diferentes meses do ano, é possível observar que a apostila de Algoritmos e programação é o Objeto mais acessado
do site seguido do tutorial de uso do Dev C++, que é considerado um tutorial introdutório. Um fato relevante
encontrado é que os tutoriais introdutórios são muito acessados, mas geralmente de forma isolada, ou seja, o usuário
usa o tutorial e sai do site. Nos tutoriais mais avançados, percebe-se um menor uso, mas diferentemente dos
introdutórios, o usuário interage com outros tutoriais também mais avançados. Outra observação feita foi o grande
número de usuários que repetem o uso dos tutoriais 3 e 18 (uso do Dev C++ e Estrutura de Repetição while,
respectivamente). O tutorial 17 (estrutura de Repetição while (sem contadores)), foi o que apresentou maior
potencial de levar os usuários a acessarem outros tutoriais, o acesso ao tutorial 17 levou os usuários a acessarem
também os tutoriais 16 (Estrutura de Repetição FOR – contagem crescente), 20 (Uso de Vetores) e 22 (Uso de
Funções). Levando em consideração o número de acesso a um determinado tutorial e o número de vezes que, a partir
dele, chega-se em outro tutorial pode-se afirmar que:
a)
Os caminhos percorridos que mais se repetiram foram dos usuários que acessaram o tutorial
11(Estrutura de Condição If Else Aninhada) e também acessaram os tutoriais 13 (Estrutura de
Condição Switch) e 17 (Estrutura de Repetição While – sem contadores) (cerca de 29%);
b) Dos que acessaram o tutorial 16 e também acessaram o tutorial 20 (cerca de 28%).
c)
Com aproximadamente 20%, aparece a sequência de acesso que leva do tutorial 13 ao tutorial 17;
d) Aproximadamente 10%, dos usuários que acessam o tutorial 20, também acessam o tutorial 3(Olá
Mundo – DEV C++). Esse foi o único caso encontrado em que o uso de um tutorial considerado
avançado levou ao uso de um tutorial considerado introdutório.
A figura7 exemplifica, através do arquivo gerado pela ferramenta SPMF, os resultados obtidos através de uma
análise de um log com acessos aos tutoriais no período de um mês.
FIGURA 7. Arquivo de saída da ferramenta SPMF com comentáros
5. CONCLUSÕES
A metodologia descrita pelo presente trabalho, que visa procurar padrões de acesso a Objetos de Aprendizagem,
pode ser expandida para demais sites, uma vez que, o formato do arquivo de log possui uma especificação única
chamada de Common Logfile Format (CLF) tal qual detalhado pelo World Wide Web Consortium (W3C).
Descobrir como os usuários se relacionam com os Objetos de Aprendizagem, ou outros itens de um site, pode ser
útil na hora de tentar aumentar o número de acesso ao site. Usando o presente trabalho como exemplo, se o foco
fosse aumentar o número de visitas ao site, seria interessante criar mais Objetos com conteúdo mais introdutório.
Caso o foco fosse aumentar o tempo que cada usuário permanece no site, a criação de Objetos de Aprendizagem
com conteúdo mais avançado, seria mais interessante.
Com trabalhos futuros, é possível calcular o tempo médio que cada usuário gasta quando acessa o site, pois, a
data e hora de cada acesso ficam registradas no arquivo de log. Além disso, pode ser usada a informação
armazenada no campo Link anterior, do arquivo de log, para descobrir como cada usuário chega ao site com os
Objetos armazenados, por exemplo, por sites de busca ou ferramentas como o Moodle. Outra consideração
importante que deve ser levada em conta é a forma como são obtidos os IPs dos usuários, uma vez que, os acessos
são sequenciais e em tempo real, um usuário pode ter sua sequencia de uso interrompida por outro usuário que está
acessando o site no mesmo momento. Da mesma forma pode-se encontrar problemas como, por exemplo, tratar
como usuários distintos uma mesma pessoa acessando os Objetos do seu Notebook e de seu Tablet. O filtro
desenvolvido para extrair os Ips dos arquivos de log não trata esses problemas, o que pode ser feito também com
trabalhos futuros.
8. AGRADECIMENTOS
Este trabalho faz parte dos resultados do projeto IGUAL - Innovation for Equality in Latin American University
(code DCIALA/19.09.01/10/21526/245-315/ALFAHI (2010)123) que é financiado pelo programa ALFA III da
Comissão Européia.
7. REFERENCIAS
K. P. Sankar, “Web Mining in Soft Computing Framework: Relevant, State of the Art and Future Directions” in IEEE
Transactions on Neura Networks, v. 13, no. 5, Setembro 2002 .
2. R. Cooley, B. Mobasher and J. Sravastava, “Web mining: information and pattern Discovery on the World Wide Web” in
Proceedings of the 9th IEEE International Conference on Tools with Artificial Intelligence, 1997.
3. J. Sravastava, Cooley R., M. Deshpand and T. Pang-Ning, Web usage mining: “Discovery and applications of usage patterns
from Web data”. ACM SIGKDD Explorations, v.1, n.2, Janeiro de 2000.
4. G. R. Santos, “Utilização de técnicas data mining na busca de conhecimento na web”. 2000. 119. Monografia – Universidade
Federal de Pelotas. Curso de Bacharelado em Informática do Instituto de Física e Matemática, Universidade Federal de
Pelotas , Pelotas. 2001.
5. J. S. R. Baker, B. J. M. A. Carvalho and S. Isotani, “Mineração de Dados Educacionais: Oportunidades para o Brasil” in
Revista Brasileira de Informática na Educação , v. 10, n. 2, 2011, pp. 45-57.
6. J. Borges, M. Levene, A Data Mining Model to Capture User Web Navigation Patterns. In: WBBKDD'99 - WORKSHOP ON
WEB USAGE ANALYSIS AND USER PROFILING. San Diego, CA, USA. 1999.
7. A. G. Dias, “Avaliação do Acesso a Periódicos Eletrônicos na Web” in Ciência da Informação, v. 31, no. 1, 2002, pp.7-12.
8. D. Vora and S. Bojewar, “Design of a Tool Using Statistical Approach for Personalization and Usability Improvement” in
ICWET 2011 - International Conference and Workshop on Emerging Trends in Technology . Mumbai, India. 2011.
9. Z. Qiankun, S. B. Sourav, “Sequential Pattern Mining: A Survey”. Nanyang Technological University. Singapure. 2003.
10. R. Goldschmidt and E. Passos, “Data Mining: Um guia prático”. Rio de Janeiro: Campus, 2005. 261 pp.
11. Y. Fu, K. Sandhu and M. Shih, “Clustering of web users based on access patterns” in: PROCEEDINGS OF THE 1999 KDD
WORKSHOP ON WEB MINING, 2009.
12. C. Cechinel, A. V. Silveira, R. S. Silveira, E. Nunes, A. A. Moreira, G. B. Cogo, C. M. Betemps, and R. N. Tavares,
“Desenvolvimento de Objetos de Aprendizagem parao o Apoio à Disciplina de Algoritmos e Programação,” in Anais do
Workshop Ambientes de Apoio à Aprendizagem de Algoritmos e Programação - XIX Simpósio Brasileiro de Informática na
Educação, 2008.
13. J. Pei, J. Han, J. Wang and H. Pinto, “Mining Sequential Patterns by Pattern-Growth: The PrefixSpan Approach” in IEEE
TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING, Vol. 16, No. 10, Outubro 2004.
14. SEQUENTIAL PATTERN MINING FRAMEWORK.. SPMF is an open-source data mining mining platform written in Java.
Disponível em: http://www.philippe-fournier-viger.com/spmf/. Acesso em: 08 de nov. 2012
1.
Download