Download - Apresentação SIMCOP - SIMCOP – Framework para Análise de Similaridade em Sequências de Contextos
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
SIMCOP – Um Framework para Análise de Similaridade em Sequências de Contextos
Programa Interdisciplinar de Pós-Graduação em
Computação Aplicada
Mestrado Acadêmico
Disciplina Tópicos Avançados e Sistemas Distribuídos
Professor Dr. Cristiano André da Costa
Tiago Wiedemann, Jorge L. V. Barbosa, Sandro J. Rigo Universidade do Vale do Rio dos Sinos (UNISINOS)
Av. Unisinos, 950 - São Leopoldo - RS – Brazil
1
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 2
Roteiro • Introdução :
Motivação;
Definição do Problema;
Objetivos;
Definições;
• Trabalhos Relacionados;
• Apresentação do Modelo :
Comparação de duas sequências de contextos;
Diagramação;
• Implementação e Avaliação :
Protótipo SIMCOP;
REBASS;
U-LIBRARY;
• Conclusões e Trabalhos Futuros;
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
2
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
2
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 3
Introdução - Motivação
• Desenvolvimento de técnicas que visam integrar a TI ao cotidiano das pessoas. (WEISER, 1991).
• Possibilidade de desenvolvimento de aplicações Sensíveis ao Contexto.
Qualquer informação que permita caracterizar a situação de entidades que sejam importantes na interação: USUÁRIO -> PACIENTE.
• Atender ao requisito de agir de forma pró-ativa, possuir recursos para reconhecimento de contexto atual. (SATYANARAYANAN, 2001).
Necessidade de representar os contextos e armazená-los, gerando diversas bases de dados que armazenam as sequências de contextos obtidos com o decorrer do tempo.
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
3
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
3
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 4
Introdução – Definição do Problema
• A análise de similaridade em sequências de contextos torna-se uma questão desafiadora para pesquisas nas áreas: Computação Ubíqua e Engenharia de Software.
• Inúmeros problemas devem ser tratados em softwares que necessitem deste tipo de análise:
I. É possível quantificar a similaridade ?
II. Qual a melhor métrica de similaridade para cada caso ?
III. Existe uma métrica única de similaridade que trate todos os casos ?
IV. Como lidar com a natureza heterogênea dos dados contextuais ?
V. Como tratar as variações dos dados contextuais ao longo do tempo, para se chegar a um valor de similaridade global entre duas sequências ?
VI. Como utilizar as ontologias para determinação de similariade semânticas ?
VII. Como identificar quais informações são mais relevantes para análise de similaridade ?
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
4
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
4
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 5
Introdução – Objetivos
• Todas essas dificuldades justificam a especificação de um framework extensível e adaptável/configurável, capaz de encapsular diferentes técnicas de análise de similaridade entre sequências de contextos e oferecer uma interface unificada para aplicações.
• Foram definidos os 5 objetivos específicos para a implementação:
I. Avaliar os fundamentos teóricos da área;
II. Identificar e comparar os trabalhos relacionados;
III. Especificar o modelo do framework;
IV. Implementar um protótipo do framework;
V. Validar o modelo a partir do protótipo;
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
5
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
5
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 6
Introdução – Definições
• Figura mostra o relacionamento entre os conceitos estudados para o embasamento da especificação do modelo proposto: SIMCOP.
1 – Computação Ubíqua;
2 – Aplicações Sensíveis ao Contexto;
3 – Sequências de Contextos;
4 – Representação de Contextos;
5 – Ontologias;
5 – Relacionamentos Semânticos;
6 – Séries Temporais;
6 – Variáveis Quantificáveis;
7 – Similaridade
8 – Temas Abordados;
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
6
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
6
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 7
Introdução – Definições
2 – Aplicações Sensíveis ao Contexto:
• Funcionamento orientado pelo contexto atual do usuário;
• Divididas em contínuas ou discretas:
Contínuas as informações apresentadas ao usuário são atualizadas constantemente;
Discretas são diferentes contextos, exibidos sempre que o usuário entra em um novo contexto;
“Qualquer informação que possa ser usada para caracterizar a situação de entidades consideradas importantes para a interação USUÁRIO -> PACIENTE.
São tipicamente: Localização, identidade, estado de pessoas, grupos e objetos físicos e computacionais.”
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
7
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
7
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 8
Introdução – Definições
3 – Trilhas, Históricos ou Sequências de Contextos:
4 – Representação de Contextos:
• DRIVER, CLARKE (2004) – “Uma coleção de localização acompanhadas de informações associadas e uma ordem recomendada de visitação”
• Na dissertação foi utilizado o termo “sequências de contextos” para se referir a qualquer contexto que foram ou serão visitados. O termo “trilha” refere-se a qualquer sequência de itens, documentos, e o foco da dissertação é em trilhas de contextos. O termo “histórico” implica análise de eventos ocorridos no passado.
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
8
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
8
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 9
Introdução – Definições
5 – Ontologias:
• GRUBER (2008) “Um conjunto de primitivas representacionais com as quais é póssível modelar o conhecimento ou discurso.” Primitivas correspondem as: classes, atributos e relacionamentos entre classes.
5.1 – Relacionamentos Semânticos:
• A linguagem OWL (Web Ontology Language) é um padrão formal de ontologias, criado pelo W3C e baseado em linguagem DAML + OIL.
• A OWL possui 3 linguagens: OWL Lite, OWL DL, OWL FULL.
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
9
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
9
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 10
Introdução – Definições
6 – Séries Temporais:
• Conjuntos de observações ordenadas cronologicamente, como por exemplo: medição de variáveis durante um período de tempo, isso leva a criação destes conjuntos.
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
10
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
10
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 11
Introdução – Definições
7 – Similaridade:
• DTW (Dynamic Time Warping) possui aplicações na análise e similaridade em diversos tipos de séries temporais. Exemplo: Reconhecimento da fala, onde é mapeado ondas sonoras e feito o reconhecimento de palavras comparando a similaridade com palavras já armazenadas.
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
11
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
11
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 12
Trabalhos Relacionados
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
12
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
12
• Existem duas posssibilidades para análise de similaridade:
I. Comparar diretamente o nome das categorias em cada momento;
II. Utilizar ontologia que descreva relações entre as categorias, permitindo avaliar o grau de semelhança entre duas categorias distintas.
• Nas pesquisas realizadas não foram encontrados trabalhos que fizessem uso de ontologias para avaliar a similaridade semântica entre duas sequências de contextos.
• Inicialmente foram selecionados os trabalhos das linhas de pesquisa discutidas nos parágrafos anteriores que aparentavam possuir relação com a proposta. A lista completa dos trabalhos analisados está descrita no Apêndice A. Trabalhos cujo foco não era a análise de similaridade foram descartados, e trabalhos que abordavam similaridade de forma geral e não especificamente sobre similaridade em sequências de contextos foram considerados como possíveis referências para a fundamentação teórica.
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 13
Trabalhos Relacionados
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
13
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
13
Trabalhos Linha
de Pesquisa
Foco não era:
Análise Similaridade
Abordagem Geral
Similaridade
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 14
Apresentação do Modelo - Comparação Sequências Contexto
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
14
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
14
• Especificação de um framework para auxiliar o desenvolvimento de aplicações que necessitem analisar similaridade entre sequências de contextos.
• Aluno (Entidade A) e Professor (Entidade B). As linhas no mapa correspondem ao percurso (position) percorrido por ambas as entidades dentro do campus da Unisinos. Os pontos em cada linha correspondem a Places of Interest (POI) visitados por cada entidade durante o percurso (location), o horário (time) da visitação e a atividade (situation) na qual a entidade estava envolvida.
• Ocorrem três similaridades entre as sequências: I. A primeira é o ponto de início de cada sequência, onde apesar da posição e
do horário serem diferentes, as atividades são as mesmas e são exercidas por ambas as entidades no mesmo tipo de POI (Estacionamento). Considerando-se este cenário, é possível inferir que ambas as entidades, ao chegarem ao campus, estacionam os seus veículos em um estacionamento.
II. A segunda similaridade ocorre às 19:00, onde ambas as entidades estão jantando, no mesmo local, e fisicamente próximas.
III. A terceira similaridade ocorre às 19:30, onde ambas as entidades estão, ao mesmo tempo, em um mesmo tipo de POI, no caso uma sala de aula, embora estejam em atividades diferentes e fisicamente distantes.
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 15
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
15
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
15
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 16
Apresentação do Modelo – Diagrama de Domínio
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
16
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
16
• Cada sequência de contextos pertence a uma entidade, que por sua vez deve ter uma identificação única durante o processo de análise de similaridade, e é descrita por um nome e uma lista de atributos.
• Cada registro pode descrever os dados contextuais em quatro dimensões:
TimeDescription: Tempo informado nos campos start e end;
Location: Identifica posição geográfica (latitude, longitude e elevação) e localização (Casa, Trabalho, Escola);
Situation: Lista de variáveis que descrevem o estado, situação ou atividade atual, apontados por um registro.
ExtendedData: Informações adicionais, que podem ser úteis em algumas análises;
Diagrama de Domínio - SIMCOP
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 17
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
17
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
17
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 18
Apresentação do Modelo – Diagrama de Casos de Uso
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
18
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
18
• Os desenvolvedores “clientes” devem inicialmente desenvolver uma classe que implemente a interface “Sequence-Source”. Está é responsável por acessar os dados originais da aplicação. Independente do local onde estes estiverem armazenados.
Diagrama de Casos de Uso - SIMCOP
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 19
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
19
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
19
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 20
Apresentação do Modelo – Componentes Interface - SIMCOP
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
20
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
20
• Responsáveis por fornecer a interface para as aplicações clientes, gerenciar a configuração de parâmetros operacionais, carregar os dados das sequências de contextos, executar tarefas de pré e pós processamento e executar a análise da similaridade.
Componentes Interface - SIMCOP
Eder, Marcelo, Paulo, Rodrigo 21
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
21
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
21
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 22
Apresentação do Modelo – Diagrama de Sequências - SIMCOP
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
22
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
22
• Mostra o funcionamento das classes responsáveis por executar a seleção e carga das sequências de contextos. A aplicação (cliente) deve implementar a interface “SequenceSource”.
• 5 métodos que devem ser implementados:
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 23
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
23
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
23
Diagrama de Sequência de Análise Similaridade:
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 24
Apresentação do Modelo – Implementação e Avaliação
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
24
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
24
• O SIMCOP foi desenvolvido em JAVA;
• O que precisei baixar ?
• Código Fonte:
• Framework - SIMCOP
• https://docs.google.com/file/d/0ByCLHNkDtJbMWnc3T0NjTmliQ28/edit
• Por ser uma biblioteca deve utilizar outras aplicações:
• CityMovement
• https://docs.google.com/file/d/0ByCLHNkDtJbMUFNETUdCWk9FVUU/edit
• Analisar similaridade sobre uma base de dados:
• Crawdad – Base de Dados
• http://crawdad.cs.dartmouth.edu/~crawdad/rice/ad_hoc_city/
• Foram desenvolvidos duas aplicações para avaliação do modelo:
I. REBASS – Um sistema de recomendação de objetos de aprendizagem baseado em similaridade de sessões;
II. Um componente de Filtragem Colaborativa para o modelo U-Library; (Biblioteca Ubíqua implementado para avaliação na UNIVATES)
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 25
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
25
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 26
Modelo Proposto
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
26
• Para calcular a função de distância entre os OA foi desenvolvida uma técnica que compara a área temática de cada objeto, retornando valor entre 0 e 1.
• X e Y neste caso são os OA a serem comparados.
• O objetivo é reduzir a quantidade de falsos positivos durante a comparação.
Ciências
Física
Teoria Atômica
Objeto X
Ciências
História da Ciência
Teoria Atômica
Objeto Y
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
26
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 27
Modelo Proposto
• Definida Função distância, Utiliza a DTW para calcular a similaridade das sequências. Nesse caso, bom limitar quantidade de sessões comparadas, pegando as mais recentes ou as com perfis de usuários mais similares. Retorna as sessões mais similares à sessão atual com relação a sequência de OA consultados. Obtêm uma lista de OA similares e faz a recomendação ao usuário.
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
27
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
27
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 28
Implementação e Avaliação
• O protótipo desenvolvido em JAVA.
• Banco de Dados PostgreSQL.
• E a técnica do DTW foi utilizado o framework OpenSource FastDTW.
• Os dados para realização do experimento foram obtidos a partir dos logs de acesso ao sistema Moodle do curso de Sistemas de Informação das Faculdades Integradas de Taquara/RS. Agosto/2012 a Agosto/2013.
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
28
Curso
Módulo do
Curso
Criando uma hierarquia para identificação da área
temática de cada OA.
Alunos
Identificador
de Sessão
Usuário
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
28
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 29
Implementação e Avaliação
• 11.039 sessões de usuários (eixo X) EM 33.778 registros de acessos a OA (eixo Y)
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
29
Maior sessão
154 registros
Maioria com
menos 25
registros
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
29
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 30
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
30
11.039 Sessões
400 a 500 por segundo.
Similar sessão corrente
Valor distância 2.0 DTW
Objeto recomendado
Área temática
Sessão
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
30
Eder, Marcelo, Paulo, Rodrigo
Simulation analysis of lot streaming in job shops
with transportation queue disciplines 31
Conclusões e Trabalhos Futuros
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
31
• Um modelo totalmente adaptável, configurável;
• Permite definir processos de análise de similaridade independente da aplicação.
• Desenvolvimento e validações de outras ideias já propostas e muito importantes;
• Trabalhos futuros:
I. Uso de Ontologias;
II. Outras visões quanto a análise de similaridade;
III. Aperfeiçoar o tempo de resposta do framework;
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
31
Apresentação: Paulo Henrique Santini
REeBaSS: Recomendação Baseada em Similaridade de Sessões.
Um Modelo para Recomendação de Objetos de Aprendizagem Baseado em Similaridade de Sessões -
REBASS Tiago Wiedemann, Jorge L. V. Barbosa, Sandro J. Rigo
Universidade do Vale do Rio dos Sinos (UNISINOS) Av. Unisinos, 950 - São Leopoldo - RS - Brazil
32
Obrigado pela atenção !
Apresentação: Paulo Henrique Santini
SIMCOP:
Um Framework para Análise de Similaridade em Sequências de Contextos
32