Trabalho de Conclusão de Curso. Mário Henrique Akihiko da Costa Adaniya. Web. Londrina

Tamanho: px
Começar a partir da página:

Download "Trabalho de Conclusão de Curso. Mário Henrique Akihiko da Costa Adaniya. Web. Londrina"

Transcrição

1 Trabalho de Conclusão de Curso Mário Henrique Akihiko da Costa Adaniya Técnicas de Extração de Informações da Web Londrina 2009

2 Mário Henrique Akihiko da Costa Adaniya Técnicas de Extração de Informações da Web Trabalho de Conclusão de Curso apresentado ao Curso de Graduação em Ciência da Computação da Universidade Estadual de Londrina, como requisito parcial à obtenção do grau de Bacharel. Orientador: Prof. Dr. Mario Lemes Proença Jr. Londrina 2009

3 Mário Henrique Akihiko da Costa Adaniya Técnicas de Extração de Informações da Web Trabalho de Conclusão de Curso apresentado ao Curso de Graduação em Ciência da Computação da Universidade Estadual de Londrina, como requisito parcial à obtenção do grau de Bacharel. COMISSÃO EXAMINADORA Prof. Dr. Mario Lemes Proença Jr. Universidade Estadual de Londrina Prof. Dr. Evandro Bacarin Universidade Estadual de Londrina Prof. Dr. Jacques Duílio Brancher Universidade Estadual de Londrina Londrina, de de 2009

4 Agradecimentos À Deus pelo desafio da vida. Aos meus pais, pelo apoio, carinho e compreensão em todos os momentos de minha vida. Aos meus irmãos, porque tive com quem brincar quando criança. Aos meus familiares, porque a família é a base de tudo. À minha Namoradinha, que por acaso gosta das mesmas coisas que eu. Ao professor e orientador Mario Lemes Proença Junior que sempre deu apoio e me ensinou a realizar uma pesquisa de forma correta. Aos professores do Dept. de Computação. Aos amigos. Colegas de curso.

5 Tudo vale a pena, Se a alma não é pequena. Fernando Pessoa

6 Resumo Com o acúmulo e o crescimento continuo das informações contidas na Web, nasceu a preocupação em tratar tanto os documentos quanto as informações contidas nestes documentos. Este trabalho objetiva uma sintese de algumas áreas relacionadas a extração e tratamento da informação. O campo de pesquisa em Recuperação de Informação se preocupa com a seleção de documentos, enquanto a Extração de Informação com a extração das informações contidas nestes. Web Mining é a utilização de um conjunto de técnicas destes campos, entre outros, para o tratamento e a utilização das informações de uma maneira útil e automatizada para nós. Palavras-Chaves: Recuperação de Informação, Extração de Informação, Web Mining.

7 Abstract The continued growth and accumulation of the information contained on the Web, has raised a concern in treating both the documents and the information contained in these documents. This paper aims at a synthesis of some areas related to extraction and processing of information. The field of research in Information Retrieval is concerned with the selection of documents, while the Information Extraction with the extraction of information contained in these. Web Mining is the use of a set of techniques from these fields, among others, for the treatment and use of information in a useful and automated for us.. Keywords: Information Retrieval, Information Extraction, Web Mining.

8 Sumário 1 Introdução p Organização do Trabalho p Recuperação de Informação p Modelos de Recuperação de Informação p Modelo Booleano p Modelo Booleano Estendido p Modelo Vetorial p Modelo Probabilístico p Modelo Difuso p Modelo de Indexação Semântica Latente p Modelo de Processamento de Linguagem Natural p Recuperação de Informação na WEB p Extração de Informação p Extração de Informação não é Recuperação de Informação p MUC - Message Understanding Conference p Conceitos Básicos p Abordagens p. 26

9 3.3.2 Tipos de Dado p Fluxo Geral p Avaliação p Mineração de Dados na WEB p Web Mining p Descoberta do Conhecimento p Identificação do Problema p Pré-Processamento p Extração de Padrões p Pós-Processamento p Utilização do Conhecimento p Etapas do Web Mining p Coleta de Documentos p Pré-Processamento p Extração de Padrões p Avaliação e Interpretação de Resultados p Categorias de WEB Mining p Mineração de Conteúdo p Mineração de Estrutura p Mineração de Uso p Web Semântica p Caso de Uso - Projeto Salus Cyted p. 57

10 5.1 Tecnologias Empregadas p Java p JavaCC p NameParser p Conclusão p. 63 Referências Bibliográficas p. 65

11 Lista de Tabelas 1 Conferências e seus temas p Exemplos de aparição de nomes p Exemplos de alguns termos extraidos p Resultados da extração p Regras e exemplos de nomes p. 62

12 Lista de Figuras 1 Principais módulos de um sistema de Extração de Informação p Homepage da Association Alzheimer com nomes extraidos p Etapas do processo KDD (REZENDE et al., 2003) p Etapas do processo de Web Mining p Taxonomia da Mineração na WEB p Camadas propostas pela W3C p Ilustração simples de uma semântica baseado em StarWars p Classes do projeto SalusParser p Declaração das regras de tokens p Declaração da regra do NOME COMPLETO p. 61

13 Lista de abreviaturas e siglas DAML DARPA EI GNU GPL HTML KDD LSI MUC NER OWL PLN RDF RI SVD URI W3C WB WWW XML DARPA Agent Markup Language Defense Advanced Research Projects Agency Extração de Informação GNU is Not Unix General Public License Hypertext Markup Language Knowledge Discovery Database Latent Semantic Indexing Message Understading Conference Named Entity Recognition Web Ontology Language Processamento de Linguagem Natural Resource Description Framework Recuperação de Informação Singular Value Decomposition Uniform Resource Identifier World Wide Web Consortium Web Mining World Wide Web Extensible Markup Language

14 14 1 Introdução Presenciamos atualmente grandes avanços que auxiliam para uma globalização e modernização do mundo como nunca antes previsto. As informações e como elas são tratadas também sofreram drásticas alterações, e podemos destacar como um grande fator o advento da Internet. Atualmente é improvável nos imaginarmos sem a Internet e suas facilidades, elevando a importância da Internet em nossas vidas num futuro próximo sendo tratada como a necessidade da energia elétrica, água e saneamento básico, entre outros serviços que tomamos como essenciais hoje (JR., 2005). Empresas têm prejuízos na casa dos bilhões por algumas horas sem Internet, tal qual, sua importância hoje. A World Wide Web (Web) é um meio de comunicação popular e interativo para disseminar informação atualmente (KOSALA; BLOCKEEL, 2000). E cada vez mais encontramos toda e qualquer informação disponíveis online. Tornando-se uma tendência que grandes editoras com revistas e publicações impressas estão aderindo, mantendo os impressos tradicionais e publicando virtualmente os mesmos conteúdos e adicionando outros exclusivos na edição online. Blogs surgem aos milhares com pessoas expressando suas idéias, opiniões e experiências. Sites de relacionamento, fóruns, Wikis armazenam conteúdos imensos dos mais diversificados assuntos. Todo dia, muitas páginas são indexadas pelos motores de buscas. E neste pandemônio, como encontrar o que realmente estamos procurando? E como avaliar se a informação recuperada é confiável? O acesso a Internet é muito mais fácil, e também é a publicação de qualquer conteúdo por qualquer pessoa, a busca por uma informação concreta de uma fonte segura torna-se importante. Para tal, é necessário buscar formas de pesquisa mais interessantes adicionais

15 1 Introdução 15 as pesquisas já exitentes. A busca pela informação correta se torna um assunto muito mais sério quando se trata de saúde, pois com o acesso facilitado, muitas pessoas ao primeiro sintoma de alguma doença buscam informação na Internet e tão logo, podem ter acesso a informações, tanto corretas quanto incompletas ou na pior das hipótese, informações erradas. A pessoa pode seguir conselhos equivocados e não procurar assistência médica, podendo agravar sua situação. Algumas áreas de estudos buscam soluções para este problema, destacamos a Recuperação de Informação (RI) e a Extração de Informação (EI). Obter apenas dados não possui relevância para o usuário e pesquisadores, importante também é o fato da utilização destes dados. Web Mining(WB) envolve inúmeras disciplinas como Recuperação da Informação, Extração de Informação, Estatística, Inteligência Artificial e Mineração de Dados. Procura extrair, avaliar, estudar e utilizar os dados em áreas de aplicação como o comércio, ou estudos para melhoria de algum serviço (ÁLVAREZ, 2007). Os estudos em Web Mining possibilita alguns sites de E-Commerce muito mais personalizados. Como grandes exemplos temos o Submarino 1 e Amazon.com 2, no mercado nacional e internacional. Podemos perceber isto quando efetuamos uma compra de algum livro ou outro produto pelo Submarino, e nas visitas posteriores ao site, ele nos indica gêneros literários semelhantes ao livro adquirido ou itens relacionados com a categoria do produto. O tratamento de informações no âmbito da saúde torna-se algo importante. Podese encontrar muitas informações corretas e erradas, e a publicação origina-se de fontes confiáveis e não confiáveis. Por este motivo a preocupação com a informação extraída e a sua confiabilidade, gera projetos como o Salus Cyted. 1 Submarino Amazon.com -

16 1.1 Organização do Trabalho Organização do Trabalho A monografia está organizada da seguinte maneira. No capítulo 2 são vistos alguns conceitos sobre Recuperação de Informação. A preocupação principal desta área é encontrar maneiras eficazes de selecionar documentos. Importante ressaltar que a informação contida não possui destaque na recuperação. A informação ganha uma conotação importante no capítulo 3, onde são abordados os conceitos sobre Extração de Informação. Com alguns destes conceitos fundamentados, analisamos a Web Mining no capítulo 4 onde encontramos características de RI e EI mas com um objetivo mais amplo além da seleção de documentos e informações. Para tornar a extração pálpavel, apresentamos um caso de uso simples de uma ferramenta de extração de nomes utilizada para o projeto Salus Cyted no capítulo 5. Ao final, uma conclusão sobre o trabalho pesquisado é feita, apontando a direção das pesquisas realizadas na área recentemente.

17 17 2 Recuperação de Informação Recuperação de Informação (RI) é a tarefa de encontrar documentos relevantes a partir de um corpus ou conjunto de textos em resposta a uma necessidade de informação de um usuário (SMEATON, 1997). Um dos maiores problemas enfrentados desde seu início, e que perpetua atualmente é a informação estar contida em linguagem natural. Quando a WWW foi concebida, a comunidade acadêmica que tratava de RI concentraram suas atenções para uma melhoria dos motores de busca, voltando a impulsionar o crescimento da RI. RI possui limites, e qualquer tarefa além de prover ao usuário os documentos, não é um sistema de recuperação de informação. A tecnologia de RI é quase sempre encontrada no núcleo de funcionalidades dos sistemas de busca de informações de uma maneira imperceptível para o usuário. Técnicas como: filtragem, roteamento, categorização e clusterização possuem em comum a busca e comparação dos documentos e as necessidades do usuário (SMEATON, 1997). filtragem - através do fluxo de documentos entre um certo perfil ou grupo de usuários, refletindo a informação desejada; categorização - é a tarefa de categorizar o documento em um conjunto predefinido de categorias; roteamento - divide a entrada de documentos para grupos ou usuários baseado no conteúdo; clusterização - é o agrupamento de documentos semelhantes para posterior busca ou outra utilização;

18 2.1 Modelos de Recuperação de Informação 18 Sistemas de RI são estruturados através da definição da fonte de informação com a qual se trabalha, ou seja, os tipos de documentos que serão indexados. Posteriormente, as operações que serão executadas no momento das buscas devem ser determinadas, estruturando os documentos de acordo com as tarefas a serem executadas. Em seguida, um índice com os termos contidos nos documentos é criado (BAEZA-YATES; RIBEIRO- NETO, 1999). Com uma consulta, o usuário descreve suas necessidades através de termos e o processo de RI é iniciado (BEPPLER, 2008). A operação de recuperação em sistemas de RI objetiva computar graus de coincidência entre a consulta do usuário e os documentos para ordenar cada documento. Smeaton (SMEATON, 1997) sugere algumas métricas heurísticas para tal ordenamento e enumera áreas onde a pesquisa de RI são bem ativas. O problema da aquisição de conhecimento de textos vêm sendo questionado pela comunidade de RI em função da rápida pulverização de informação impulsionada pela Internet. A pesquisa sobre atividades baseadas em corpus de textos têm sido encorajada, facilitando o desenvolvimento de soluções. 2.1 Modelos de Recuperação de Informação Greengrass (GREENGRASS, 2000) propõem duas categorias para os modelos de RI: semânticos e estátisticos. Os semânticos tem a preocupação de entender um texto em linguagem natural. Quanto aos modelos estátisticos, são atribuidos medidas estatísticas mensurando a comparação entre uma consulta e um documento. Na categoria estátistica enquandramos os modelos: Booleano, Booleano Estendido, Vetorial, Probabilístico, Difuso e Indexação Semântica Latente. O modelo de Processamento de Linguagem Natural representa a categoria semântica Modelo Booleano Utilizando-se da teoria dos conjuntos e álgebra booleana, as consultas são construidas através de expressões booleanas e conectores lógicos: AND, OR, NOT. A recuperação de

19 2.1 Modelos de Recuperação de Informação 19 um determinado documento só é efetuada mediante um valor verdadeiro das expressões, no nosso caso, uma consulta. Devido a simplicidade e ao formalismo, temos um resultado não ordenado, acarretando também à recuperação de muitos ou poucos documentos (BAEZA- YATES; RIBEIRO-NETO, 1999) Modelo Booleano Estendido Este modelo é proposto com algumas melhorias em relação seu predescessor, implementando uma função de ordenação e a utilização de diferentes operadores. Este modelo atribui valores no intervalo [0, 1], que equivale ao grau de comparação de uma expressão com um documento (LEE, 1994) Modelo Vetorial Este modelo é representado por um vetor ou uma lista de termos ordenados. O grau de similaridade de um documento em relação a uma consulta é a avaliação entre os vetores que representam o documento e a consulta. Com isto, uma ordenação de acordo com o grau de similaridade é executada dada uma consulta (BAEZA-YATES; RIBEIRO-NETO, 1999) Modelo Probabilístico Fazendo-se uso de cálculos probabilísticos, o modelo calcula a probabilidade condicional em que um determinado documento é relevante a uma dada consulta. Consulta e documentos são representados por meio de um conjunto de termos, calculando-se a probabilidade de ocorrência dos termos de uma consulta em documentos relevante e nãorelevantes. A função probabilistica depende do modelo a ser usado, bem como os termos estão distribuidos entre os documentos (GREENGRASS, 2000).

20 2.1 Modelos de Recuperação de Informação Modelo Difuso É um modelo extendido do modelo booleano e possui uma função de ordenação cujo resultado da comparação entre um documento e uma consulta é aproximado. Como Zadeh redefiniu o intervalo fechado do conceito clássico da pertinência de [0,1] Z para o intervalo contínuo [0, 1] R (BAEZA-YATES; RIBEIRO-NETO, 1999). A aproximação considera que cada termo de uma consulta define um conjunto difuso e cada documento possui um grau de participação nesse conjunto. Muitas críticas são lançadas a este modelo por gerar medidas incorretas (LEE, 1994). A principal justificativa para o método difuso é a falta de informação frequente do usuário e do próprio sistema em saber se o documento possui a informação consultada ou não (LEE, 1994) Modelo de Indexação Semântica Latente A indexação semântica latente (LSI) é uma técnica automática que analisa as coocorências de termos em documentos textuais almejando descobrir relacionamentos entre eles. LSI é um modelo que consome processamento devido as estruturas escolhidas para a analise dos textos, no caso, uma matriz esparsa termo-documento. Utilizando a Decomposição de Valores Singulares (SVD), a matriz é decomposta em outras três matrizes. Este é um modelo que visa a captura de termos e suas dependências que podem ter um significado semântico Modelo de Processamento de Linguagem Natural O modelo que usa processamento em linguagem natural pode ser categorizado como modelo semântico, porque a estrutura e o significado dos documentos estão intimamente ligados ao modelo. Raramente são utilizadas em RI, mas geralmente são empregadas em conjunto com outros modelos estatísticos (GREENGRASS, 2000).

21 2.2 Recuperação de Informação na WEB 21 Smeaton (SMEATON, 1997) defende que as técnicas de processamento de linguagem natural adotadas na RI apenas auxiliam eficientemente quando utilizadas em pequenas quantidades de textos. Assim sendo, a complexidade de técnicas de PLN é oriunda das aplicações para a qual fora desenvolvida como tradução automática e interfaces de linguagem natural. 2.2 Recuperação de Informação na WEB Quando estamos lidando com a Web temos um cenário que contrasta com a chamada RI Clássica. Na RI Clássica temos um domínio e usuários definidos, quando na Web encontramos um cenário dinâmico e usuários consultando simultaneamente as informações (KOBAYASHI; TAKEDA, 2000). Muitas características devem ser levadas em conta quando estamos recuperando documentos na WEB (HUANG, 2000): Tamanho da Internet - O tamanho da Internet, segundo Zhang e seu grupo de pesquisa (ZHANG et al., 2008), estima-se que em Janeiro de 2008 a Internet continha hostnames ativos. De acordo com a pesquisa, a Lei de Moore 1 é observada, exceto que para a Internet, foi visto que a cada cinco anos, ela dobra de tamanho. Importante esclarecer que os dados do tamanho da Internet vária de acordo com grupos de pesquisa, mas todos chegam a resultados similares quanto ao crescimento exponencial; Dinamismo da Internet - As técnicas de Recuperação de Informação são geralmenta estática, enquanto a Web está em constante metamorfose; Duplicação - 30% do contéudo da Internet é uma cópia de algum conteúdo existente; 1 A Lei de Moore foi predita por um dos fundadores da Intel, Gordon Moore, e sugere que a cada dezoito meses a capacidade de transitores no CPU dobra. Apareceu em 1965 e se manteve como verdade por quase meio século, e costuma ser utilizada para prever modelos futuros de tecnologias.

22 2.2 Recuperação de Informação na WEB 22 Comportamentos específicos - É estimado que 85% dos usuários utilizam apenas a primeira página retornada das search engines, e 28% modificam sua consulta original; Multiplos tipos de usuário - Possui muitos tipos de usuários e cada usuário utiliza a Internet para uma tarefa específica; Idiomas - Como a Internet se tornou algo mundial, as páginas são encontradas em mais de 100 idiomas; Alta Linkagem (High Linkage) - Cada página contém aproximadamente oito links para outras páginas; Com estas características, podemos ter uma noção da dificuldade do campo de RI na Web. Se considerarmos a Web como uma grande base de dados, não temos uma aplicação efetiva das tarefa da RI Clássica de indexar, categorizar, organizar ou clusterizar, e as queries de busca de usuários distintos para uma mesma informação apresentam diferenças enormes.

23 23 3 Extração de Informação Não temos a capacidade de processar megabytes de texto todos os dias, e nesse volume de bytes, quantas oportunidades deixamos de aproveitar ou informações que estaríamos perdendo? Projetos em Processamento de Linguagem Natural (PLN) originaram a Extração da Informação. Extração de Informação (EI) tem como objetivo transformar a coleção de documentos, geralmente com o auxílio de um sistema de Recuperação de Informação, em informação que é facilmente analisada e digerida (COWIE; LEHNERT, 1996). Na EI, a compreensão do texto fonte não é obrigatória, pois a análise é feita com o objetivo de encontrar porções que contenham o quê deve ser extraído. A sáida de um sistema de Extração da Informação são informações relevantes para o domínio específico em um determinado formato pré-estabelecido de acordo com as orientações iniciais. A Extração da Informação é uma tarefa mais limitada do que a compreensão completa do texto. Na Extração da Informação, delimitamos o escopo, estabelecendo assim um limite de compreensão, assim, não necessitando analisar o texto completo e seu sentido (GRISHMAN, 1997). A Extração da Informação tem um potencial muito grande em extrair dados com maior precisão, existindo um interesse muito grande nas pesquisas, uma vez que encontramos uma enorme quantidade de informações em linguagem natural. O reconhecimento de palavras, análise de frases, compreensão do sentindo da frase ou de todo o documento são envolvidos nas pesquisas de processamento de linguagens, e aumentam a complexidade no desenvolvimento de um sistema de Extração da Informação.

24 3.1 Extração de Informação não é Recuperação de Informação Extração de Informação não é Recuperação de Informação Recuperação de Informação é uma tecnologia madura que perdura há muito mais tempo do que a Extração da Informação, que começou a poucas décadas. O objetivo da Recuperação de Informação é selecionar documentos relevantes de uma coleção de documentos de acordo com as necessidades do usuário e suas entradas, enquanto Extração de Informação extrai informações relevantes de documentos. Consequentemente, as duas técnicas se complementam, e usadas em combinação podem prover uma ferramenta poderosa (EIKVIL, 1999). 3.2 MUC - Message Understanding Conference Observamos dois fatores principais que impulsionaram os estudos em EI: o crescimento exponencial de informação conjuntamente com a popularização da internet e um grande alavancador nas pesquisas em EI, os congressos MUC (Message Understanding Conferences) (GAIZAUSKAS; WILKS, 1998). Eram congressos financiadas pelo DARPA 1, e foram assim batizados por tratar-se do processamento de entendimento de mensagens. Surgindo em meados dos anos noventa, ela instaurou métricas e algoritmos estatísticos para auxiliar o governo americano na avaliação de novos sistemas de Extração de Informação (LEHNERT; SUNDHEIM, 1991). Na avaliação dos MUC, uma descrição detalhada do cenário e quais informações a serem extraidas era dado aos participantes (formados por grupos de pesquisa acadêmicos e particulares), junto com um conjunto de documentos e o modelo a ser extraido dos documentos. Os participantes tinham um tempo limitado 2 para adaptar os sistemas para um novo cenário. Então uma nova coleção de documentos era passado para os participantes, e estes enviavam para os organizadores os resultados extraídos. E assim a avaliação era feita, comparando o gabarito com os resultados extraídos (APPELT; ISRAEL, 1999). 1 Defense Advanced Research Projects Agency Geralmente de 1 mês a 6 meses.

25 3.3 Conceitos Básicos 25 Podemos observar na tabela 1 as edições e o ano da conferências, bem como as fontes de texto a serem extraídas e os temas (cenários). Tab. 1: Conferências e seus temas Conferência Ano Fonte de Texto Tópico(Dominio) MUC Artigos Militares Operações de fuga MUC Artigos Militares Operações de fuga MUC Artigos de Jornais Atividades Terroristas na América Latina MUC Artigos de Jornais Atividades Terroristas na América Latina MUC Artigos de Jornais Corporate Joint Ventures MUC Artigos de Jornais Negotiation of Labor Disputes MUC Artigos de Jornais Acidente de aviões O formato de saída era livre na primeira edição da conferência, da segunda conferência em diante, o formato de saída era determinado pelo cômite organizador. Alguns campos típicos relacionados eram: causa, agente, lugar e tempo de um evento, consequências, etc. Existiam cinco tarefas importantes para a Extração de Informação dentro das MUC: Named Entity Recognition (NER), Coreference Resolution, Remplate Element Construction, Template Relation Construction e Scenario Template Production (CHANG et al., 2006). 3.3 Conceitos Básicos Extração de Informação deriva de Processamento de Linguagem Natural e tem como tarefa extrair informações especificas de documentos, muitas vezes encontrado em Linguagem Natural. Muitos sistemas de Extração de Informação seguem sequências de passos como analise léxica, semântica, morfologica, reconhecimento de nomes, entre outras tarefas (APPELT; ISRAEL, 1999). A meta de um sistema de Extração de Informação não é entender o texto do documento em si, e sim analisar porções do texto e extrair informações pertinentes. A pertinencia é determinada pelo domínio e cenário, na maioria das vezes, explicitada pelo usuário (EIKVIL, 1999). A Extração de Informação é útil para quando se tem um conjunto de documentos e existe a necessidade de extrair fatos específicos, como por exemplo, extrair nome de destinos para se viajar em blogs especializados em viagens.

26 3.3 Conceitos Básicos Abordagens Na Extração de Informação, observamos claramente a distinção de duas abordagens (APPELT; ISRAEL, 1999): Knowledge Engineering e Automatic Training. Em Knowledge Engineering o sistema é praticamente construido manualmente pelo knowledge engineer 3. Sua construção se baseia no conhecimento que o engenheiro possui do cenário e domínio com o qual vai se trabalhar. As habilidades do engenheiro que construirá o sistema é crucial para a perfomance da mesma. O processo de desenvolvimento é muito trabalhoso, geralmente, após feito a analise dos documentos e criada e aplicada as regras no sistema, o engenheiro executa o sistema sobre os textos de treino. De acordo com o resultado, ele modifica as regras do sistema e refaz o processo. A abordagem de automatic training não necessita de um especialista, mas alguém que tenha o conhecimento suficiente do domínio da aplicação. Uma vez que um conjunto de documentos foram anotados, um algoritmo de treino é executado, treinando o sistema para novos textos. Esta abordagem tem uma resposta mais eficaz, mas depende do conjunto de documentos selecionados para treino. Utilizam métodos estatísticos, e aprendem regras com a interação com o usuário. Nenhuma das duas abordagens é superior a outra, pois a extração depende de muitas variaveis, e muitas vezes, variaveis externas, logo, não podemos apontar nenhuma abordagem como completa. Ambas utilizadas em conjunto caminha para um sistema ideal Tipos de Dado A Extração de Informação se dá em documentos, e eles são categorizados em três tipos (EIKVIL, 1999): I. Documentos livre/sem estruturação : Texto livre é basicamente o texto onde não encontramos nenhuma forma de estrutura, e é o tipo mais encontrado. Origi- 3 É a pessoa mais familiarizada com o sistema de Extração de Informação, e conhece melhor o formalismo para expressar as regras para o sistema.

27 3.3 Conceitos Básicos 27 nalmente o objetivo de EI era desenvolver sistemas capazes de extrair informações chaves de textos em linguagem natural. O estado da arte em Extração da Informação em textos livres muito comumente utiliza técnicas de Processamento de Linguagens Naturais, e as regras de extração são tipicamente baseada em padrões envolvendo o aspecto sintático e semântico. A capacidade do homem de processamento ainda é melhor, mas resultados expressivos vem sendo obtidos no processamento em textos sem estrutura. O entendimento de textos sem restrição em Linguagem Natural ainda está longe de ser resolvido por completo, entretanto, métodos de EI funcionam porque dependem de restrições e padrões que desejamos extrair dos textos (SODERLAND, 1999). II. Documentos semi-estruturados : Não são textos totalmente livres de estrutura, mas também as estrutura existente não é tão rígida, encontram-se no intermédio. Técnicas de PLN concebem regras para a extração de textos livres, contudo, estas regras funcionam perfeitamente para gramáticas livre de contexto onde encontramos sentenças inteiras para analisar, fato que nem sempre ocorre em textos semiestruturados. Regras muito simples utilizadas em textos puramente estruturados não serão eficientes também. O pesquisador Sergel Abiteboul diferencia dentro do contexto de semi-estruturados, em cinco categorias (ABITEBOUL, 1997), (SILVEIRA, 2001): Estrutura Irregular - Quando uma informação está disposta de mais de uma maneira na estruturação do documento,e.g., o campo de endereço, o qual poderiamos encontrar como uma única string representando todo o endereço, ou vários campos como string para o nome da rua, um campo de inteiro para o número do logradouro, etc.; Estrutura Implícita - A estrutura existe, mas não é algo natural e possivelmente necessita de algum processamento, e a representação lógica dos dados não é de imediato obtida. Podemos configurar as páginas em HTML nesta categoria, que é puramente texto, mesmo contendo tags, não deixa de ser um

28 3.3 Conceitos Básicos 28 documento semi-estruturado de puro texto, onde é necessário um processamento de suas tags para a obtenção de alguma informação preliminar.; Estrutura Parcial - Identificamos parte da estrutura de dados, mas a outra parte, muitas vezes não é necessária ou não é passível de identificação, necessitando uma extração; Estrutura Indicativa - Quando encontramos os dados indicados,e.g., o dado de endereço já possui uma estrutura definida, podendo assumir outras formas, mas geram transtorno para a modificação do esquema adotado. Muito utilizado quando ocorre uma padronização dos dados (ABITEBOUL, 1997); Estrutura Flexível - A instância do objeto consegue assumir outras formas de dados, sendo isso nativo da estrutura em si. Algumas ferramentas pioneiras em pequisas de dados semi-estruturados na Web foram: Yahoo 4 e Altavista 5. Utilizam uma técnica chamada full text search, que desconsidera a semântica, comparando o texto completo com as entradas do usuário (SILVEIRA, 2001). Entretanto, como apresenta um mínino de estruturação, alguns padrões podem ser construidos, limitando sua utilização na extração. III. Documentos estruturados : Informações textuais contidas em banco de dados ou qualquer outro gênero de documento com uma estruturação rigída, são a base de textos estruturados. Como seguem uma moldura sem grandes diferenças de um documento para outro, sua informação é facilmente extraida Fluxo Geral A estrutução de um sistema de EI basea-se em alguns passos: Tokenização, Processamento Léxico e Morfológico, Análise Sintática e Análise do Domínio. O sistema pode possuir apenas algumas das etapas, e não necessariamente deve cobrir todas as etapas 4 Yahoo Altavista -

29 3.3 Conceitos Básicos 29 para ser considerado um sistema de EI. As necessidades da aplicação que direcionam as diretrizes dos passos os quais o sistema deve cobrir. Na figura 1 ilustramos os quatro principais módulos (APPELT; ISRAEL, 1999). Fig. 1: Principais módulos de um sistema de Extração de Informação Para melhor ilustrar o processo de Extração, vamos exemplificar aplicando sobre a sentença O dia é belo as quatro etapas do processo. Tokenização é a etapa onde dividimos os textos em tokens. Em EI, comumente adotase a definição de um token sendo as palavra separadas por espaço, e.g., na frase O dia é belo, obtemos quatro tokens: O, dia, é e belo. Este exemplo ilutra o processo de Tokenização. Em alguns idimas este processo é simples, mas em outros idiomas não o é, pela falta de estruturação e uma não distinção clara dos limites de uma palavra, e.g., Japonês, Chinês. O Processamento Morfológico e Léxico, adiciona informações através de tags classificando léxica ou morfológicamente os tokens para posterior utilização, e.g., O artigo, dia substantivo, é verbo e belo ad jetivo. Neste exemplo, aplicamos regras gramáticais da língua Portuguesa, mas podemos adotar outras regras como: tamanho da palavra, maiúsculas e minuscúlas ou outras criadas a partir do problema a ser resolvido. Muitos sistemas de Extração de Informação são construídos sobre a língua inglesa, que não necessita uma análise morfológica muito aprofundada onde uma lista com as variações

30 3.3 Conceitos Básicos 30 das palavras seria o suficiente. O idioma alemão por sua vez, é essencial fazer uma análise morfológica, pois é composto por palavras aglutinadas (APPELT; ISRAEL, 1999). A maior parte da análise do texto é feita através de um conjunto de expressões regulares (GRISHMAN, 1997). A Análise Sintática objetiva estudar a função que as palavras desempenham. Para muitos domínios, o simples processo de obtenção de sujeitos, predicados e argumentos resolvem a maioria das sentenças. Se a expressão encontrada estiver inserida no conjunto de expressões regulares, tão logo ela receberá um marcador, e dependendo do sistema, outros recursos. Com isto dividimos nossa sentença original em Odia Su jeito e ébelo Predicado. Para demonstrar a Análise de Domínio, tomamos como regra, a obtenção dos substantivos dos sujeitos. Com isto, conseguimos extrair dia de nossa sentença original. E finalizamos o processo de extração. O processo de Extração de Informação pode ser abstraído em duas grandes partes. Primeiramente a extração de fatos individuais do texto através de uma análise textual. Então, a integração destes fatos, aumentando os fatos já obtidos ou criando fatos novos. E por fim, os fatos pertinentes ao cenário, nós transformamos para o formato de saída (GRISHMAN, 1997). Para isto, o processo passa por algumas complexidades que se relacionam diretamente com os módulos que utilizaremos. Fatores de complexidade Como a Extração de Informação trabalha com textos, enfrentamos dificuldades como a língua na qual é escrita, o gênero do documento, propriedades e a própria tarefa que efetuaremos sobre o documento (APPELT; ISRAEL, 1999). Idioma Os documentos se encontram escritos em algum idioma, tão logo nos defrontamos com nossa primeira dificuldade. Algumas línguas necessitam de tratamento morfológico, espaçamento entre palavras e segmentação de palavras.

31 3.3 Conceitos Básicos 31 Gênero O gênero do documento com o qual se vai trabalhar influência também. Se limitarmos nossa ferramenta a textos de anúncios de jornais, não é o mesmo que extrairmos informações de artigos científicos. Como consequência, o uso da linguagem formal ou informal é extremamente ligada ao documento também. Propriedades Os textos podem conter tabelas, imagens, gráficos entre outros tipos de informação não textual que necessitam de formas especiais de tratamento. Tarefas As tarefas efetuadas pelo sistema também entram na nossa análise de complexidade. Uma ferramenta que apenas procura entidades, possui uma abordagem diferente de uma que procura propriedades a mais de um entidade. Sistemas de Extração de Informação trabalham com o processamento de muitos documentos e um espaço muito curto de tempo. Então, para não prejudicar o desempenho, utiliza-se máquinas de estado finito em abundância. O alvo da extração de uma Extração de Informação pode ser uma relação de n-tuplas ou muito mais complexa considerando a hierarquia e organização dos dados. Programas que realizam a tarefa de Extração de Informação são usualmente chamados de extratores ou wrappers. Um wrapper geralmente executa a tarefa de encontrar padrões, e estes dependem de um conjunto de regras. Adaptar um sistema de Extração de Informação tem muitos pontos a serem observados: tipo de texto, domínio, cenário, conjunto de regras (CHANG et al., 2006). O Reconhecimento de Nomes em um texto é uma tarefa de destaque, uma vez que nomes aparecem frequentemente em todos os tipos de texto, e de muitas maneiras. Os nomes aparecem em um conjunto de padrão, podendo conter prefixo ou sufixo, estar escrito com letras maíusculas, facilitando assim sua extração. Observando a tabela 2, temos algumas maneiras de como o nome João José da Silva Pereira Junior pode aparecer em um texto. Alguns sistemas não tem fases distintas para léxica e sintatica, outros implementam

32 3.4 Avaliação 32 Tab. 2: Exemplos de aparição de nomes Exemplos de aparição de nomes João José da Silva Pereira Junior João José da Silva Pereira Jr. João J. da Silva Pereira Jr. João J. S. P. Jr. Sr. João Pereira Jr. JOÃO JOSÉ DA SILVA PEREIRA JUNIOR JUNIOR, João J. S. P. um parser para a sentença inteira. Em geral, os sistemas utilizam partes que possuem certeza sobre sua construção, tanto sintaticamente quanto semanticamente. Na analise sintática, podemos ainda ter muitas interpretações ambíguas, para tal, a semântica e o domínio especifico da aplicação eliminam outras interpretações do dados extraídos. Construir uma estrutura completa de análise sintática é extremamente complicada. Algumas decisões são particularmente difíceis e dependem do contexto. Parsers que buscam avaliar sentenças inteiras pecam no aspecto das decisões locais, pois procuram ser generalistas para não excluirem algumas opções, acarretando em extrair conteúdos a mais sem muito significado para o domínio. Se as relações sintaticas forem corretamente extraidas, a interpretação dos modelos de cenário serão mais simples e corretas. 3.4 Avaliação Os critérios de avaliação consistem em: quanta informação foi extraída (recall), quanto da informação extraída é correta (precision) e quanto da informação extraída é supérflua (overgeneration) (LEHNERT; SUNDHEIM, 1991). As conferências MUC possuem um papel fundamental na definição dessas medidas, na necessidade de avaliar os sistemas de Extração de Informação. Inicialmente as medidas de precisão e cobertura foram herdadas do sistema de avaliação de Recuperação de Informação. Como as técnicas de Extração e Recuperação são distintas, os nomes foram mantidos, porém as definições das medidas foram alteradas (GAIZAUSKAS; WILKS, 1998).

33 3.4 Avaliação 33 Cobertura ou Abrangência(Recall) : Quanto da informação extraída é relevante. Ou seja, é medida através da informação corretamente extraída (N extraido correto ) sobre a informação relevante na página (N total extraidos ). Representada pela fórmula 3.1 Cobertura = N extraido correto N total extraidos (3.1) Precisão(Precision) : Quanto da informação extraída é correta. É obtida através da informação corretamente extraída (N extraido corretos ) sobre a informações extraídas (N resposta ). Preciso = N extraido correto N resposta (3.2) Importante ressaltar que N total extraido e N resposta são inversamente proporcionais, isto é, quando a Cobertura aumenta, a Precisão tende a diminuir e vice-cersa. Precisão e Cobertura estão sempre no intervalo de [0,1], sendo 0 o pior resultado e 1 o melhor. F-measure : A F-measure mede considerando a precisão e a cobertura. O parâmetro β controla o balanceamento entre a cobertura e a precisão. F measure = (β 2 + 1) Cobertura Preciso β 2 (Cobertura + Preciso) (3.3) β = Cobertura/Preciso, onde encontramos a F-measure sendo orientada para cobertura quando β > 1 e orientada para a precisão quando β < 1. Por este motivo, geralmente utiliza-se β = 1, balanceando assim as duas medidas, e aplicando na fórmula 3.3 temos: F 1 = 2 Cobertura Preciso (Cobertura + Preciso) (3.4) Para ilustrar melhor os cálculos, utilizando-se da ferramenta em desenvolvimento pelo autor criada para o projeto Salus Cyted, que será discutida no capitulo 5. A ferramenta

34 3.4 Avaliação 34 NameParser será aplicada na página Association Alzheimer 6, vista na figura 2 como nossa fonte de dados. Fig. 2: Homepage da Association Alzheimer com nomes extraidos. A regra criada para a extração de nome tem como base as definições da gramática, sendo considerado um nome uma palavra que começa com uma letra maiúscula seguida de letras minúsculas. Como os nomes estão sendo extraídos de páginas Web, e elas não possuem uma regra quanto a sua estética, podemos encontrar muitas palavras que não são necessariamente um nome. E isto realmente acontece, como podemos observar na tabela 3. 6 Association Alzheimer -

35 3.4 Avaliação 35 Tab. 3: Exemplos de alguns termos extraidos Termos extraídos Medical President Alzheimer Scientific About Anual Report Plan Ralph Nixon Samuel Lennart Michigan Chicago National Office Para esclarecer um pouco mais o conceito de Precisão e Cobertura, utilizando-se da tabela 3, temos o total de 16 termos extraídos. Desses 16 termos, apenas 4 são nomes corretos e esperávamos no total 8 nomes, então nossa Precisão é de 50%. Resultando em uma precisão média. A Cobertura são os nomes extraídos corretamente sobre o total de termos que extraímos, resultando em apenas 25%. Isso significa que de toda informação extraída, apenas 25% é relevante para o domínio do sistema. Note que extraimos nomes como Michigan e Chicago, que estão corretos do ponto de vista de serem nomes, mas são nomes de lugares, e o foco é nome de pessoas. Para a avaliação real da performance temos a tabela 4 como resultante do processo de extração dos nomes na pagina Association Alzheimer. Podemos analisar que a ferramenta possui uma precisão altíssima, conseguindo encontrar todos os nomes com êxito. Em contrapartida, extrai muitos dados irrelevantes para o contexto da pesquisa que se enquadram nas regras descritas como nomes. Tab. 4: Resultados da extração Página Nomes presentes 16 Nomes identificados pelo programa (usando expressões) 83 Nomes corretamente identificados (usando expressões) 16 Precisão/Precision 100% Cobertura/Recall 19% O processo de avaliação é muitas vezes efetuada manualmente ou semi-automatizada. Em algum ponto do processo de avaliação é necessária a intervenção do usuário. Para o sistema saber se um dado termo extraido é um nome, o usuário que possui esse conhecimento passa de alguma maneira para o sistema.

36 3.4 Avaliação 36 Devemos lembrar também que o domínio atribuido ao resultado é muito importante, por exemplo, se encontrarmos um nome pela metade, devemos considerá-lo errado ou correto? Quando o nome se repete ao longo do página, devemos conta-lo apenas uma vez ou mais vezes? Questões assim dificultam o critério e devem ser relevadas para uma melhor interpretação dos dados.

37 37 4 Mineração de Dados na WEB No inicio, a Web continha páginas estáticas objetivando um acesso cômodo as informações. Muitas páginas eram manualmente implementadas, sem contemplar muito a interação com o usuário. Geralmente seguiam a direção servidor-usuário. Com a expansão e o acesso crescente, as páginas começaram a evoluir, assim como a Web. Tornando-se dinâmica, onde encontramos páginas construídas interagindo-se com o usuário. Nos encontramos neste estágio evolutivo, e caminhamos para um futuro muito mais brilhante. E como a evolução não tem fim, estamos observando a concepção da Web Semântica, discutida na seção Onde apenas apresentar as informações para o usuário não é o suficiente, como é preciso, expressar de uma forma semântica também para o entendimento das máquinas. Alguns problemas podem ser encontrados pelos usuários quando interagem com a Web (KOSALA; BLOCKEEL, 2000): a. Achar informações relevantes - Os usuários quando utilizam serviços de pesquisa, procuram através de palavras-chaves alguma informação na Web. O resultado da busca, as vezes, é enorme e com isso temos: resultados relevantes, pouco relevantes ou sem relevância; b. Personalização da informação - Usuários diferentes, interagem diferentemente e querem conteúdos diferentes, logo, temos o problema no lado do usuário e do próprio provedor; A Web Mining foi concebida devido aos estudos nas mais diversas linhas de pesquisa:

38 4.1 Web Mining 38 extração de informação, inteligência artificial, banco de dados, recuperação de informação e entre outras áreas. Ela faz parte de um todo, que auxiliam de uma maneira para a resolução dos problemas acimas citados. 4.1 Web Mining Web Mining é o uso das técnicas de Mineração de Dados para descobrir e extrair automaticamente a informação de documentos na Web (ETZIONE, 1996). A Mineração de Dados refere-se ao processo não trivial de identificação de padrões válidos, previamente desconhecidos e potencialmente úteis de dados (FRAWLEY; PIATETSKY-SHAPIRO; MATHEUS, 1992). Seguindo o conceito de Etzione, que utiliza da Descoberta do Conhecimento (KDD - Knowledge Discovery Database) como base, ele decompõe a Web Mining em quatro tarefas: Resource finding (Coleta de Documentos), Information selection and pre-processing (Pré-processamento), Generalization (Extração de Padrões) e Analysis (Análise). É importante ressaltar que Web Mining é diferente de Recuperação da Informação e Extração da Informação. Mas uma combinação das técnicas em si são utilizadas nas etapas do Web Mining. 4.2 Descoberta do Conhecimento Muitas são as definições que os pesquisadores adotam para KDD ou Mineração de Dados, a mais difundida e adotada é encontrada nos trabalhos de Fayyad e seu grupo de pesquisa (FAYYAD; PIATETSKY-SHAPIRO; SMYTH, 1996a): Knowledge Discovery Database é o processo não trivial de identificação de padrões válidos, novos, potencialmente úteis e compreensiveis que estejam presentes nos dados. Tomamos como definição que: os dados são um conjunto de fatos, e padrões são definidos em uma linguagem e descrevem um subconjunto dos dados ou um modelo aplicável aquele conjunto.

39 4.2 Descoberta do Conhecimento 39 O processo de Knowledge Discovery Database é um processo interativo e iterativo, composto por algumas etapas, resultando na extração de padrões. As etapas sofreram mudanças no decorrer de seus estudos, alcançando nove etapas (FAYYAD; PIATETSKY- SHAPIRO; SMYTH, 1996b), sendo reduzida para quatro (WEISS; INDURKHYA, 1998) e maturando-se num ciclo (REZENDE et al., 2003). Atualmente, este ciclo se divide em: Identificação do problema, Pré-Processamento, Extração de Padrões, Pós-Processamento e Utilização do Conhecimento (ÁLVAREZ, 2007). A figura 3 ilustra a última abordagem utilizada. Fig. 3: Etapas do processo KDD (REZENDE et al., 2003) Identificação do Problema Para iniciarmos todo o processo, precisamos ter um conhecimento mínimo que seja do domínio com o qual iremos trabalhar, e devemos ter claro o objetivo que almejamos. Nesta fase, construímos nosso conhecimento e todas as etapas posteriores são dependentes de uma análise que cubra as metas, objetivos e restrições. Criamos o conceito de útil para o sistema e para o usúario nesta fase.

40 4.2 Descoberta do Conhecimento Pré-Processamento Muitas vezes os dados não se encontram formatados adequadamente para a utilização na etapa de extração de padrões, ou outras características limitam a aplicação. Para adequá-los alguma tarefas podem ser inseridas no Pré-Processamento: Integração, Transformação, Limpeza e Redução de Dados. Integração: Os dados muitas vezes são provenientes de diversas fontes, precisando uma unificação. Obtemos nesta fase, uma fonte única de dados para utilizar nas etapas posteriores (ÁLVAREZ, 2007). Transformação: Para minimizar as diferenças encontradas nos dados para melhorar sua extração, algumas transformações aplicadas são: normalização, transformação de tipo, discretização de atributos quantitativos, entre outros (BATISTA, 2003). Limpeza: Com o conhecimento adquirido no passo de Identificação do problema, temos um embasamento melhor para remover dados indesejáveis. Alguns atributos podem estar preenchidos incorretamente (ÁLVAREZ, 2007). Redução: Muitas vezes somos obrigados a limitar nossa ação diretamente ligados a inúmeros fatores. O volume pode ultrapassar a capacidade de processamento, sendo isto observado quando executamos muitas vezes os experimentos (WEISS; INDURKHYA, 1998) Extração de Padrões Os objetivos definidos na Identificação do Problema direcionam este passo. A execução deste passo pode ser necessária muitas vezes para procurar o resultado mais perto do objetivo. As tarefas de Mineração de Dados como classificação, clustering e regras de associação são empregadas nesta etapa de acordo com o modelo escolhido para ser gerado (ÁLVAREZ, 2007).

41 4.3 Etapas do Web Mining Pós-Processamento Depois de extraídos os padrões, o ciclo do processo ainda não é fechado, pois se apresentarmos todos os padrões ao usuário como extraimos, podemos mostrar padrões muito complicados ou que fujam dos objetivos. Com a qualidade questionável podemos executar novamente algumas etapas ou o processo inteiro. Para mensurar a qualidade temos alguns artificios como interessabilidade, compreensibilidade, precisão, cobertura e taxa de erro (ÁLVAREZ, 2007) Utilização do Conhecimento Última fase do processo é onde expomos o conhecimento extraído para o usuário, ou ocorre a integração a um sistema. A utilização dos termos Mineração de Dados ou Knowledge Discovery Database na literatura é muito nebulosa. Alguns autores consideram como sendo processos distintos, outros processos que se complementam ou nomeia o mesmo processo. Adoto neste trabalho como sendo tarefas complementares. 4.3 Etapas do Web Mining Basicamente utilizamos os mesmos conceitos de Knowledge Discovery Database alterando a fonte de dados. Como nossa única fonte, utilizamos a World Wide Web. No inicio das pesquisas muitos acreditavam, e ainda acreditam, que a Web é muito instável como fonte de dados, devido a suas proporções e falta de estruturação. Muitas informações são encontradas em Linguagem Natural pois o público-alvo são os humanos. Alguns defenderam a posição de transformar a Web em um banco de dados, mas foram vencidos pelo temperamento caótico e dinâmico (ETZIONE, 1996).

42 4.3 Etapas do Web Mining Coleta de Documentos Fig. 4: Etapas do processo de Web Mining A Coleta de Documentos é uma etapa essencial para todo o processo. Definimos com quais documentos o trabalho sera efetuado. Em algumas situações os documentos fazem parte do problema como um todo, logo estarão disponiveis de inicio. Porém, em outras situações, é necessário o processo de Coleta de Documentos (ÁLVAREZ, 2007). Na grande rede mundial interligando computadores, desde seu inicio, houve uma comoção para facilitar a busca de documentos. Dois grandes grupos são observados na construção de indexadores: Motor de Busca e Diretório WWW (BAEZA-YATES, 1998). Motor de Busca(Search Engine): Este grupo são formados por motores de busca que utilizam abordagens baseados em rôbos, mega-indexadores, entre outras abordagens automatizadas. O índice criado é centralizado para responder consultas do mundo inteiro. Em 1998, os indexadores que cobriam a maior área eram: Hot- Bot 1, AltaVista 2, Nothern Light 3 (LAWRENCE; GILES, 1998). Atualmente, o ran- 1 HotBot AltaVista Nothern Light -

43 4.3 Etapas do Web Mining 43 king é composto por: Google 4, AlltheWeb 5, AltaVista (VAUGHAN; THELWALL, 2004). Alguns search engines se especializam em tópicos, como o SearchBroker 6. Neste grupo, incluimos também os metaseachers, que são serviços disponiveis que coletam respostas de diversos search engines e unificam. Como exemplos, temos o MetaCrawler 7 e SavvySearch 8 (BAEZA-YATES, 1998). Diretório WWW: Utiliza uma classificação próxima do conhecimento humano, na representação de diretórios de assunto, que se estruturam como árvores. Uma grande vantagem desta técnica é a resposta ser, na maiora dos casos, útil. A desvantagem é a falta de especialização e volume de páginas classificadas, esta última desvantagem se deve ao crescimento exponencial de informações que são inseridas na WWW todos os dias. Um grande exemplo deste grupo é o Yahoo! 9 (BAEZA-YATES, 1998). Um ponto muito importante nesta etapa, é que os documentos coletados estarão na sua maioria em muitos formatos, sendo necessário um tratamento para unificar um padrão Pré-Processamento Após a coleta de todos os documentos possiveis, na etapa anterior, partimos para o pré-processamento destes documentos. É nesta etapa que transformamos uma coleção de documentos em uma representação estruturada adequada. O custo computacional é elevado. Constantemente é adotado a representação de um documento como um conjunto de palavras, chamado de abordagem bag-of-words (ÁLVAREZ, 2007). Representação de Documentos A abordagem bag-of-words consiste em representar cada documento da coleção como um vetor de termos contidos no mesmo. Cada termo que ocorre no documento pode ser composto por apenas uma palavra ou várias palavras. Para 4 Google AlltheWeb SearchBroker MetaCrawler SavvySearch Yahoo! -

44 4.3 Etapas do Web Mining 44 identificar todos os termos presentes, é efetuado uma tokenização dos termos (ÁLVAREZ, 2007). Redução de Representação Feita a representação, podemos ter em mãos um volume enorme para processar, e as vezes, somos limitados no processamento e armazenamento de tanta informação. Com esta finalidade, utilizamos algumas técnicas para auxiliar na redução: Filtragem Na filtragem, almejamos a remoção de termos com pouca ou nenhuma relevância para a análise. Em geral, removemos artigos, preposições e conjunções. Podemos também supor que termos que aparecem muitas vezes no documento, não revelam muitas informações sobre o documeto. Analogamente, termos que aparecem pouco também podem ser excluidos (YANG; PEDERSEN, 1997). Stemming Nos documentos, as palavras podem ser encontradas flexionadas em diversas formas e as vezes compartilham a mesma raiz semântica. O processo de steamming consiste em reduzir estas formas encontradas na raiz (stem). Podemos citas Porter (PORTER, 1997) e Lovins (LOVINS, 1968) como grandes pesquisadores nesta área. Para a lingua portuguesa, temos o STEMBR : A stemming algorithm for the brazilian portuguese language. Filtragem e Stemming são apenas algumas das técnicas envolvidas no Pré-Processamento, podemos adotar muitas outras que trabalham no âmbito semântico, hierarquico, com atributos relevantes, etc. Pré-processamento Linguístico Esta etapa é essencial em cenários onde a mineração tem como objetivo o reconhecimento de nomes próprios, lugares e organizações, e se faz necessário um pré-processamento linguístico. As seguintes tarefas são adotadas no processo:

45 4.3 Etapas do Web Mining 45 Etiquetagem morfossintática (Part-Of-Speech Tagging) No texto, encontramos palavras, símbolos, fórmulas matematicas, entre outros termos. A etiquetagem morfossintática tem como tarefa atribuir uma etiqueta para cada termo encontrado de acordo com sua categoria. Reconhecimento de frases Com o agrupamento de termos, analisando o documento, tem como objetivo formar sentenças (WEISS; INDURKHYA, 1998). Desambiguação no sentido de palavras A ambiguidade pode gerar transtornos em análises futuras, por isto, procura-se eliminar qualquer ambiguidade no sentido das palavras. Em algumas linguas essa eliminação é facilmente alcançada, porém, outras precisam de um conhecimento muito mais aprofundado na própria lingua e o dominio da aplicação. Parsing Com a geração da árvore sintática de uma sentença, criamos a possibilidade de analisarmos a relação existente entre as palavras da sentença. Podemos extrair o sujeito, objeto, entre outros, analisando a função exercida pela palavra no contexto da senteça (ÁLVAREZ, 2007). As técnicas são frequentemente utilizadas visando uma melhoria para a utilização na Mineração de Dados Extração de Padrões Após o tratamento dos documentos e seus dados, temos como resultado um conjunto em formatos que terão um aproveitamento melhor para a Extração de Padrões. Com a aplicação da Extração de Padrões a obtenção de um conhecimento útil e interessante para o usuário será possivel. Algumas tarefas relacionadas com a Mineração de Dados, utilizam muitos algoritmos de Aprendizado de Maquiná, que também são utilizados na Extração de Padrões.

46 4.3 Etapas do Web Mining 46 Clustering de Documentos Com a coleção de documentos em mão, o processo de agrupar os documentos similares, agrupando assim documentos com conteúdos relativamente similares. Estes grupos recebem o nome de cluster, e o processo de Clustering de Documentos. No final deste processo, teremos cluster com documentos similares, mas clusters distintos entre si (ZHONG; GHOSH, 2003). Categorização A partir de um conjunto de classificação pré-definido, com um documento novo induzimos um classificador a enquadra-lo numa categoria. Muitas dificuldades são encontradas, pois o documento pode pertencer a nenhum, uma ou mais categorias (YANG; PEDERSEN, 1997). Extração de Informação Como Wilks define, Extração de Informação, extrai informação de textos em documentos, utilizando computadores numa velocidade alta, e normalmente encontrada de fontes eletrônicas. Prece de uma fase de Recuperação de Informação, que seleciona um conjunto apropriado para a extração (WILKS, 1997). Extração de Informação é discutido no capítulo 3. Sumarização O processo de Sumarização consiste em construir um terceiro documento contendo um sumário com as informações mais importantes do documento análisado, buscando sempre que este sumário contenha metade ou menos do tamanho do documento original. Identificar partes importantes no documento continuam sendo um grande desafio nesta área (RADEV; HOVY; MCKEOWN, 2002). Extração de Informação e Mineração de Dados partilham algumas dificuldades como a estruturação do documento, a língua e o estilo de linguagem utilizada na formatação do documento, e o próprio conteúdo do documento Avaliação e Interpretação de Resultados Para concluirmos o ciclo ou refazer algumas etapas, avaliamos o quanto o processo se aproximou do objetivo almejado. A avaliação pode ser feita pelos usuários finais ou

47 4.4 Categorias de WEB Mining 47 especialistas, que possuem um conhecimento profundo do dominio (ÁLVAREZ, 2007). Algumas das métricas são compartilhadas com a Extração de Informação, como Precisão, Cobertura ou F-measure. Elas são abordadas no capitulo 3 na seção 3.4. A ilustração dos dados em elementos gráficos pode, e muito, auxiliar a análise e compreensão dos dados por seres-humanos. Conseguimos interpretar, armazenar muito mais informações gráficas do que tabelas, diferentemente das máquinas. Podemos trabalhar com dados muito mais complexos através de gráficos, podendo assim interagir com decisões muito mais rápidas. O tipo de gráfico empregado para a visualização é de extrema importância, uma vez que se escolhermos gráficos que sejam difíceis de interpretar, em nada ajudarão na avaliação (KEIM; SOCIETY, 2002). 4.4 Categorias de WEB Mining Com o crescimento exponencial das fontes de informação disponiveis na World Wide Web ao nosso redor, cresce a necessidade de automatizar ferramentas que busquem as informações desejadas e corretamente. Ferramentas mais eficazes no rastreamento, tanto do lado dos servidores como dos clientes, são comumente alvos de pesquisas e projetos na busca de uma mineração de dados. Do lado dos servidores, temos extensas listas de logs, registros de usuários ou perfil de usuário, entre outros itens que podem ser análisados (COOLEY; MOBASHER; SRIVASTAVA, 1997b). Na figura 5 podemos observar um esboço da taxonomia. Esta taxonomia pode ser montada através da junção dos trabalhos de Cooley (COO- LEY; MOBASHER; SRIVASTAVA, 1997b) e Kolari (KOLARI; JOSHI, 2004) Mineração de Conteúdo A falta de estruturação que domina as fontes de informação na Internet dificulta a organização, administração, manutenção e busca automatizada de informação. As search engines são ferramentas que provêm algum conforto, mas geralmente não filtram, interpre-

48 4.4 Categorias de WEB Mining 48 Fig. 5: Taxonomia da Mineração na WEB tam os documentos que retornam nas buscas (COOLEY; MOBASHER; SRIVASTAVA, 1997b). A Mineração de Conteúdo e a Recuperação de Informação são muitas vezes utilizadas em conjunto. Enquanto uma realiza a mineração diretamente do conteúdo dos documentos a outra incrementa o poder de busca de outras ferramentas e serviços. Áudio, vídeo, dados simbólicos, metadados e vínculos de hipertexto fazem parte do conteúdo de documentos da Web atualmente, e como tal, na mineração de conteúdos também são analisados. Existem áreas de pesquisas destinadas a mineração de dados multimídias, entretanto, como uma enorme parte da Web é constituída de texto e hipertexto, permanecendo assim o foco em dados de texto. Com o continuo crescimento da Web, as pesquisas voltadas para ferramentas mais eficazes, melhorias nas técnicas de mineração e extração de dados se desenvolveram. Podemos observar duas grandes abordagens quando tratamos de Mineração de Conteúdo: Baseado em Agente (Agent-Based) e Banco de Dados (Database). Baseado em Agente (Agent-Based) Esta abordagem de mineração de dados trabalha diretamente com o campo de Inteligência Artificial, provendo um sistema autônomo ou semi-autônomo, que trabalha para a coleta de conhecimento e organização das informações na WEB delimitado pelo escopo do sistema. Dentro desta abordagem, temos as seguintes categorias:

49 4.4 Categorias de WEB Mining 49 Agentes de Busca Inteligentes (Intelligent Search Agents) Muitos sistemas de Agentes Inteligentes utilizam informações caracteristicas de um domínio para organizar e interpretar essas informações de uma forma totalmente autônoma. Como exemplo, temos alguns trabalhos como o Harvest (BOWMAN et al., 1995), FAQ-Finder (HAMMOND; BURKE; SCHMITT, 1994), OCCAM (KWOK; WELD, 1996) e ParaSite (SPERTUS, 1997) que extraem e interpretam documentos através de um dominio específico. Outros agente como ShopBot (DOORENBOS; ETZIONI; WELD, 1997) e ILA (Internet Learning Agent) (ETZIONI; PERKOWITZ; ETZIONI, 1995) através de estruturas de fontes de informação não familiares tentam através da interação, aprender novos comportamentos. ShopBot coleta informações de produtos em vários sites de venda utilizando apenas informações gerais dos produtos, enquanto o ILA aprende com os modelos e traduz para um conceito interno do sistema (COOLEY; MOBASHER; SRIVASTAVA, 1997b). Categorização e Filtragem de Informação Muitos agentes Web utilizam tecnicas de Recuperação de Informação para automaticamente filtrar e categorizar documentos da Web. O BO (Bookmark Organizer) combina técnicas de clustering e interação com o usuário para orgazinar o conjunto de documentos baseado em informação conceitual (MAAREK; SHAUL, 1996). O HyPursuit usa informação semântica embutida nos links e no conteúdo em si dos documentos para criar uma hierarquia de cluster de hipertextosm e estruturar as informações (WEISS et al., 1996). Google News 10 atualmente é uma das ferramentas mais populares que classifica noticias de mais de fontes (KOLARI; JOSHI, 2004). Personalização Outra categoria de agentes Web incluem aqueles que obtêm ou aprendem as preferencias do usuário e procuram fontes de informação na Web que correspondam aquelas preferências, e possivelmente, utilizando filtragem colaborativa, procuram interesses similares. Exemplos que utilizam esta abordagem são WebWatcher (ARMS- TRONG et al., 1995), PAINT (OOSTENDORP; PUNCH; WIGGINS, 1994), Firefly 10 GoogleNews -

50 4.4 Categorias de WEB Mining 50 (SHARDANAND; MAES, 1995) e Syskill&Webert (PAZZANI; MURAMATSU; BILL- SUS, 1996). Banco de Dados (Database) A abordagem de Banco de Dados, como o nome pressupõem, trabalha com a organização e integração dos documentos semi-estruturados para um documento estruturado, como em um banco de dados relacional, usando inclusive consultas e mecanismos de banco de dados para acesso e analise das informações. Banco de Dados em Multiníveis Uma organização das informações em multiníveis é proposto por muitos pesquisadores. No nível principal são encontrados informações armazenadas de forma semi-estruturadas em vários repositórios na Web. Em níveis acima do principal, encontramos meta-dados ou generalizações que são extraídas das camadas abaixo e organizadas de forma com uma estrutura rigida como um modelo relacional ou orientado objeto (COOLEY; MOBASHER; SRIVASTAVA, 1997b). Em uma das pesquisas desenvolvidas por Han e seu grupo de pesquisa, utilizam um banco de dados de multicamadas onde cada camada é obtida com operações de transformações e generalização das camadas inferiores (ZAïANE; HAN, 1995). O sistema ARANEUS extrai informações relevantes de documentos de hipertexto e integra em documentos derivados de hipertexto que são generalizações de views de banco de dados (ATZENI; MECCA; MERIALDO, 1997). Sistemas de Consulta Web (Web Query Systems) Nesta abordagem, a utilização de queries são utilizadas procurando uma aproximação das linguagens de consulta como SQL. Cria-se uma abstração para o usuário final que consulta como se estivesse consultado um banco de dados, quando na realidade existe uma estruturação semântica em cima da semi-estruturada Web. Como exemplo, podemos citar WebLog (LAKSHMA- NAN; SADRI; SUBRAMANIAN, 1996) que utiliza uma linguagem de consulta baseado em lógica para reconstruir a informação extraida das fontes na Web. Seguindo a mesma vertente, temos o WebSQL (MENDELZON; MIHAILA; MILO, 1996).

51 4.4 Categorias de WEB Mining 51 A área de mineração de textos está bem esclarecida, com muitas técnicas, uma das quais seria reestruturar o documento para uma linguagem entendida pela maquina. Uma mineração que vem ganhando destaque em pesquisas é a mineração em serviços da Web tais como grupo de noticias, grupos de s, lista de discussão. Outro conceito é introduzido por estes pesquisadores, chamado de Web Intelligence, que promete transformar os serviços da Web em entidades inteligentes, de forma que elas possam interagir e se comunicar através de uma linguagem comum Mineração de Estrutura Como o próprio nome descreve, nesta categoria de mineração estamos preocupados com a estrutura dos documentos Web e como estes estão ligados entre si. Os vínculos de ligação de hipertexto são os principais objetos de estudos nesta categoria. Podemos visualizar a Web como um grafo orientado, onde os nós representam páginas e as setas entre os pares de nós representam os vínculos entre as paginas. Como ocorre em citações bibliográficas quando um artigo é bastante citado indicando que provavelmente este artigo tem um peso importante perante outros que abordam o mesmo tema, o mesmo pode ser observado entre os documentos Web. Podemos drasticamente comparar que se uma pagina contém muitas setas entrando, ela teria certa relevância quanto ao seu conteúdo ser confiável. Hyperlink-induced topic search (HITS) é um algoritmo para mapear a Web e identifica os hubs e authorities. Authorities são páginas bem rankeadas sobre um determinado tópico, e hubs são páginas com links para os authorities. Como exemplo fundamental, temos que citar o PageRank (PAGE et al., 1999) largamente difundido graças ao Google Mineração de Uso A mineração de uso utiliza os dados secundários provindos de logs de servidores, logs de browsers, perfis de usuário, cookies, seções ou transações de usuários, pasta favoritos, consultas do usuário, cliques de mouse e qualquer outro dado gerado pela interação do

52 4.4 Categorias de WEB Mining 52 usuário com a Web. As aplicações da mineração de dados de uso são classificadas em duas categorias: aprendizado de perfil de usuário (modelagem em interfaces adaptativas) e aprendizado de padrões de navegação de usuário. Talvez umas das técnicas em mais utilização atualmente, devido ao grande número de E-Commerce, pois com isto podemos adaptar sites de acordo com o cliente, recomendar produtos de acordo com compras passadas ou baseadas nas similaridades entre perfis de usuários. As organizações estão confiando e conduzindo muitos negócios através da Internet e como tal, é necessário técnicas diferentes das tradicionais, pois estas precisam ser revistas. O volume de dados operados diariamente é enorme, tanto dentro quanto fora da empresa. Muito destes dados são gerados automaticamente, e analisar tudo manualmente é um trabalho muito dispendioso, e ao mesmo tempo crucial, pois dados muito importantes estão contidos e podem ser essenciais para uma tomada de decisão para a empresa quanto a estratégia de mercado. Analisando estes dados, as oganizações conseguem estipular vida útil e valor de um determinado produto ao consumidor, estratégias de marketing, campanhas promocionais, entre outros. Dentro das organizações também auxiliam na produtividade, melhorando a comunicação entre os diversos setores através da analise dos dados de intranet (COOLEY; MOBASHER; SRIVASTAVA, 1997b). As ferramentas para análise da Web praticamente nasceram com elas, tendo mecanismos para medir as atividades do servidor desde os famigerados contadores de visitação. Atualmente, estas ferramentas acoplaram muito mais tarefas como determinar o tempo e o intervalo de visitas além de determinar o número de acessos. Pode-se descobrir quais são os arquivos mais acessados, podendo assim mapear um fluxo de navegação dentro de um determinado domínio (COOLEY; MOBASHER; SRIVASTAVA, 1997b). Ferramentas de Descobrimento de Padrões (Pattern Discovery Tools) Com uma combinação sofisticada de muitas áreas como Inteligência Artificial, Mineração de Dados, Psicologia, Teoria da Informação, Economia, Estatística para a mineração do conhecimento e interpretação em um conjunto de dados. Como exemplo, temos a ferramenta WEBMINER (COOLEY; MOBASHER; SRIVASTAVA, 1997a) (MOBASHER et

53 4.4 Categorias de WEB Mining 53 al., 1996) que descobre automaticamente regras e sequência de padrões através de logs de acesso do servidor. Ferramentas de Análise de Padrões (Pattern Analysis Tools) Uma vez descobertos os padrões, é necessário uma análise sobre os dados extraidos para um aproveitamento do conhecimento obtido. Muitas dessas ferramentas utilizam técnicas onde analistas podem visualizar, interpretar e entender estes dados. A ferramenta WEBMI- NER possui um mecanismo de consulta no estilo da linguagem SQL, pois além de extrair o padrão, acopla em suas funcionalidades algumas possibilidades de visualização dos dados extraídos. Mas outras ferramentas como o WebViz (PITKOW; BHARAT, 1994) tem um dos pontos fundamentais para a interação com o usuário apresentando os resultados gráficamente. A personalização é um dos pontos chaves na Mineração de Uso. Como exemplo, podemos visualizar grandes sites de E-Commerce que sempre buscam personalizar seu site de acordo com as preferências de cada cliente, e.g., se eu sempre procuro livros de informática, o site sempre procura me mostrar ofertas em livros de informática e afins. Web sites que demonstram um comportamento de mudar a organização de seu conteúdo e apresentação de acordo com as preferências do usuário são chamados sites adaptativos (KOLARI; JOSHI, 2004) Web Semântica A Web Semântica é uma extensão da web já existente, onde a informação ganha melhores significados, proporcionando aos humanos trabalhar melhor em conjunto com os computadores (BERNERS-LEE; HENDLER; LASSILA, 2001). Acredita-se muito que a Web Semântica será o próximo passo evolutivo da Web, pois possui uma linguagem semântica muito rica, e.g., Web Ontology Language 11. Como somos expostos a muitas informações de diversas maneiras, não sabemos lidar com o que exatamente é correto ou útil para nós, resultando em uma sobrecarga de in- 11 Web Ontology Language -

54 4.4 Categorias de WEB Mining 54 formação. Observamos duas características importantes para este fenômeno: demasiado volume e a falta de uma definição semântica interpretável por programas e sistemas (??). Algumas áreas estudadas na Inteligência Artificial casou muito bem, pelo fato de serem mecânismos que captam a semântica do contéudo e se ajustam de acordo com as necessidades. Uma das abordagens propostas era de dotar a Internet de inteligência própria, construindo páginas mais elaboradas e ricas semânticamente e onde agentes pudessem raciocinar sobre semântica, logo, modelando uma Web Semântica. A semântica é obtida através de ontologias, que são modelos de dados representando o conhecimento adquirido sobre um mundo ou parte deste em um conjunto de conceitos existentes em um dominio e os relacionamentos entre estes. As ontologias descrevem geralmente: indivíduos, classes, atributos e relacionamentos. Camadas da Web Semântica O orgão W3C (World-Wide Web Consortium) tem contribuido na questão de manter padrões para a World-Wide Web, inclusive para a Web Semântica. Tem padronizado linguagens para definição de ontologias. A figura 6 é uma ilustração das camadas propostas pela W3C para a Web Semântica. Fig. 6: Camadas propostas pela W3C CAMADA UNICODE/URI Primeira cada temos o Unicode e o URI. Unicode para a padronização dos conjuntos de caracteres e o URI para a identificação e

55 4.4 Categorias de WEB Mining 55 localização de páginas. CAMADA XML Na segunda camada, encontramos o XML. É uma meta-linguagem de editoração, permitindo a representação de outras linguagens padronizadas. CAMADA RDF Na terceira camada é adicionada mais semântica a um documento, descrevendo recursos da Web sem se referir a estruturação. Descreve os recursos por meio de sentenças. Os recursos podem ser partes de um documento ou dados, geralmente descritos como um trio com sujeito-predicato-objeto (recursoatributo-valor do atributo). Comumente são ilustradas como um grafo direto rotulado ou através de XML. CAMADA de ONTOLOGIA É a camada responsável pela expressividade e representação das ontologias através da extensibilidade do RDF. Existem algumas linguagens padronizadas: DAML, OWL, entre outras. Permitem definir propriedades como: listas, restrições, cardinalidades, tipos de dados, etc CAMADA de LÓGICA, PROVA e CONFIANÇA Esta camada ainda não possui características certas, pois ainda estão sendo estudadas. A parte lógica tem como objetivo especificar regras que atuam sobre instâncias e recursos. A camada de prova executa e a camada de confiança verifica se a prova está correta ou não. Alguns protótipos disponíveis são DAML-L e RuleML. Teoricamente, podemos dar um exemplo simples de como a Web Semântica funcionaria em nossas vidas. Por exemplo, assistindo ao filme Star Wars I na sessão da tarde, ficamos nostalgiados e gostariamos de comprar a coleção completa dos filmes. Uma ilustração de uma pequena parte da ontologia do universo de Star Wars pode ser observada na figura 7. A Web Semântica nos auxiliaria da seguinte maneira: em vários sites teriamos os dados já existentes para nós, seres humanos, lermos e metadados para os computadores tratarem. Com os metadados e todas as camadas acima explicadas, toda a rede estaria

56 4.4 Categorias de WEB Mining 56 escrita através de regras, RDF e tags de XML. Então poderiamos utilizar um aplicativo e este nos retornaria lojas onde os preços estariam baratos, ou ainda mais, ele próprio avaliaria seguindo um critério custo-beneficio descrito pelo usuário, realizaria a compra e debitaria em nossa conta. Fig. 7: Ilustração simples de uma semântica baseado em StarWars. Muitos problemas são enfrentados nesta área de estudo, mas grandes avanços vem ocorrendo. Como fazer a ontologia chegar ao usuário comum sem ser tão complicado, como assegurar que o conteúdo será sempre preciso e claro, padrões ontológicos, entre outros são as discussões atualmente direcionando as pesquisas nesta área.

57 57 5 Caso de Uso - Projeto Salus Cyted O Projeto Salus Cyted nasceu com o objetivo de estimular a participação coletiva e estruturar uma sólida cooperação entre os grupos participantes, para a discussão e criação de instrumentos para avaliação de sites da área de saúde visando fornecer a usuários com perfis distintos indicativos de qualidade dos sites. Para tanto, as atividades foram centralizadas em um ambiente específico: um Portal Web com acesso adaptável aos diferentes usuários em função de seu nível cultural e peculiaridades regionais. Além disso, definiu-se que o foco de estudo seria Doença de Alzheimer e que a língua utilizada para busca de sites/páginas que tratam sobre doença de Alzheimer seria o inglês. A ferramenta descrita neste capítulo visa a extração de nomes de autores. Procuramos indentificar os autores do conteúdo explicitado na página. Posteriormente ocorre uma integração e um enquandramento do autor com uma ontologia que está em dicussão, para posterior classificação do conteúdo e o grau de confiabilidade. 5.1 Tecnologias Empregadas Um Parser é um programa de computador (ou apenas um componente de um programa) que serve para analisar a estrutura gramatical de uma entrada, manipulando os tokens, que são segmentos de texto ou símbolos que podem ser manipulados. A ferramenta para a implementação do NameParser foi o JavaCC (Java Compiler Compiler[tm]). É um gerador de parser open-source inicialmente desenvolvido pela Sun. Utiliza uma sintaxe próxima do Java, e trabalha top-down. Parser - é um componente de um programa que analisa a estrutura léxica de uma

58 5.1 Tecnologias Empregadas 58 entrada de acordo com regras pré-definidas. E para a implementação do NameParser foi utilizado o JavaCC que utiliza o Java como linguagem Java A linguagem Java foi concebida na década de 90, quando Patrick Naughton, Mike Sheridan e James Gosling projetaram uma linguagem de programação orientada a objetos na qual a intenção verdadeira era antecipar novas tendências em tecnologia. Eles preconizavam um futuro onde computadores estariam embutidos em eletrodomésticos e outros aparelhos dentro dos lares, sendo utilizados no cotidiano. Um protótipo desta da utopia almejada foi o StarSeven ou *7, um controle remoto com interface touchscreen. A linguagem utilizada para este protótipo foi batizada por seu inventor James Gosling de Oak. Tentaram vender a idéia, mas sem muito sucesso, pois como muitas invenções, aquela nasceu no tempo errado, pois a infraestutura da época não permitia os serviços disponibilizados pelo StarSeven. Não muito por acaso, na mesma época, a Internet teve seu boom. Como a rede que a Internet funcionava era exatamente a infra-estrutura que o StarSeven procurava, Gosling teve a tarefa de adaptar o Oak para Internet, e em Janeiro de 1995 nascia o Java. Sua disseminação pelo mundo afora deve-se também ao crescimento da Internet. A linguagem tem as seguintes caracteristicas: Orientação a objeto; Portabilidade, independência de plataforma; Recursos de Rede Segurança Sintaxe similar a linguagens conhecidas como C/C++; Garbage Collector;

59 5.2 NameParser 59 Por estas e muitas outras características, Java foi tão bem aceita pela comunidade e grandes empresas. A Sun Microsystems tornou a maior parte do Java um software livre sob os termos da GNU/GPL, apenas as partes que a Sun não possui direitos está fora dos termos de uso. Atualmente Java ainda é um standard mantida pela comunidade JCP(Java Community Process) JavaCC JavaCC (Java Compiler Compiler) é um gerador de analisador sintático, similar ao yacc (COLLABNET, 2007). O formalismo tratado é o Backus-Naur Estendido, e a saída gerada é na linguagem Java. Um limitante do JavaCC é a geração de analisadores sintáticos descendentes, limitando a contrução apenas para as gramáticas analisadas (LL(k)). JavaCC é comumente utilizado quando precisamos tratar outras linguagens, mas não é seu único uso. O programador necessita especificar uma coleção de expressões regulares que serão as regras utilizadas para a leitura e quebra dos tokens. O analisador consome a sequência de tokens, analisa a estrutura e como resultado produz o que o programador especificou, e assim gera o analisador em Java. 5.2 NameParser A aplicação funciona da seguinte maneira: 1. É executado uma varredura do HtmlParser na página escolhida, e obtemos como resultado uma arvore da página; 2. Analisamos nós que possuem nós filhos textos, onde temos maior probabilidade de encontrar nomes; 3. Sob o conteúdo destes nós textos, executamos o NameParser para a extração de possiveis nomes;

60 5.2 NameParser Com os possiveis nomes extraidos, eliminamos aqueles que estão presentes no dicionário; 5. Lista final com os nomes extraidos pela aplicação. O projeto SalusParser contem seus pacotes listados na figura 8, sendo o nameparser o pacote da implementação do parser própriamente dito, contendo o código para o JavaCC com as regras e as classes geradas no mesmo pacote. Fig. 8: Classes do projeto SalusParser Como no nosso cenário, utilizamos páginas Web como documentos para extração, no pacote htmlparser contém o parser de HtmlParser que implementa uma classe para o tratamento das tags HTML. Não implementamos o parser html em si, pois utilizamos um HTML Parser 1 implementado e que possui uma gama de funções, inclusive o retorno de uma página na estruturação de uma arvore, estrutura que facilita para uma posterior analise de dados. Implementamos o NameParser a partir das regras que criamos e que podem ser vistas nas figuras 9 e 10. Criamos alguns tokens para tratar letras minusculas, maiusculas, 1 HtmlParser -

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

Organizaçãoe Recuperação de Informação GSI521. Prof. Rodrigo Sanches Miani FACOM/UFU

Organizaçãoe Recuperação de Informação GSI521. Prof. Rodrigo Sanches Miani FACOM/UFU Organizaçãoe Recuperação de Informação GSI521 Prof. Rodrigo Sanches Miani FACOM/UFU Introdução Organização e Recuperação de Informação(GSI521) Tópicos Recuperação de informação (RI); Breve histórico; O

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS VINICIUS DA SILVEIRA SEGALIN FLORIANÓPOLIS OUTUBRO/2013 Sumário

Leia mais

Administração de dados - Conceitos, técnicas, ferramentas e aplicações de Data Mining para gerar conhecimento a partir de bases de dados

Administração de dados - Conceitos, técnicas, ferramentas e aplicações de Data Mining para gerar conhecimento a partir de bases de dados Universidade Federal de Pernambuco Graduação em Ciência da Computação Centro de Informática 2006.2 Administração de dados - Conceitos, técnicas, ferramentas e aplicações de Data Mining para gerar conhecimento

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Centro Universitário de Volta Redonda - UniFOA Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática

Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática Pesquisa com Professores de Escolas e com Alunos da Graduação em Matemática Rene Baltazar Introdução Serão abordados, neste trabalho, significados e características de Professor Pesquisador e as conseqüências,

Leia mais

Semântica para Sharepoint. Busca semântica utilizando ontologias

Semântica para Sharepoint. Busca semântica utilizando ontologias Semântica para Sharepoint Busca semântica utilizando ontologias Índice 1 Introdução... 2 2 Arquitetura... 3 3 Componentes do Produto... 4 3.1 OntoBroker... 4 3.2 OntoStudio... 4 3.3 SemanticCore para SharePoint...

Leia mais

5 Extraindo listas de produtos em sites de comércio eletrônico

5 Extraindo listas de produtos em sites de comércio eletrônico 5 Extraindo listas de produtos em sites de comércio eletrônico Existem diversos trabalhos direcionadas à detecção de listas e tabelas na literatura como (Liu et. al., 2003, Tengli et. al., 2004, Krüpl

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

ADM041 / EPR806 Sistemas de Informação

ADM041 / EPR806 Sistemas de Informação ADM041 / EPR806 Sistemas de Informação UNIFEI Universidade Federal de Itajubá Prof. Dr. Alexandre Ferreira de Pinho 1 Sistemas de Apoio à Decisão (SAD) Tipos de SAD Orientados por modelos: Criação de diferentes

Leia mais

1. Conceitos de sistemas. Conceitos da Teoria de Sistemas. Conceitos de sistemas extraídos do dicionário Aurélio:

1. Conceitos de sistemas. Conceitos da Teoria de Sistemas. Conceitos de sistemas extraídos do dicionário Aurélio: 1. Conceitos de sistemas Conceitos da Teoria de Sistemas OPTNER: É um conjunto de objetos com um determinado conjunto de relações entre seus objetos e seus atributos. TILLES: É um conjunto de partes inter-relacionadas.

Leia mais

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling DIMENSIONANDO PROJETOS DE WEB-ENABLING Uma aplicação da Análise de Pontos de Função Dimensionando projetos de Web- Enabling Índice INTRODUÇÃO...3 FRONTEIRA DA APLICAÇÃO E TIPO DE CONTAGEM...3 ESCOPO DA

Leia mais

Extração de Requisitos

Extração de Requisitos Extração de Requisitos Extração de requisitos é o processo de transformação das idéias que estão na mente dos usuários (a entrada) em um documento formal (saída). Pode se entender também como o processo

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

3.1 Definições Uma classe é a descrição de um tipo de objeto.

3.1 Definições Uma classe é a descrição de um tipo de objeto. Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Classes Autoria:Aristófanes Corrêa Silva Adaptação:

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

Sistema de mineração de dados para descobertas de regras e padrões em dados médicos

Sistema de mineração de dados para descobertas de regras e padrões em dados médicos Sistema de mineração de dados para descobertas de regras e padrões em dados médicos Pollyanna Carolina BARBOSA¹; Thiago MAGELA² 1Aluna do Curso Superior Tecnólogo em Análise e Desenvolvimento de Sistemas

Leia mais

Extração de Conhecimento & Mineração de Dados

Extração de Conhecimento & Mineração de Dados Extração de Conhecimento & Mineração de Dados Nesta apresentação é dada uma breve introdução à Extração de Conhecimento e Mineração de Dados José Augusto Baranauskas Departamento de Física e Matemática

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

TÉCNICAS DE PROGRAMAÇÃO

TÉCNICAS DE PROGRAMAÇÃO TÉCNICAS DE PROGRAMAÇÃO (Adaptado do texto do prof. Adair Santa Catarina) ALGORITMOS COM QUALIDADE MÁXIMAS DE PROGRAMAÇÃO 1) Algoritmos devem ser feitos para serem lidos por seres humanos: Tenha em mente

Leia mais

O que é a ciência de dados (data science). Discussão do conceito. Luís Borges Gouveia Universidade Fernando Pessoa Versão 1.

O que é a ciência de dados (data science). Discussão do conceito. Luís Borges Gouveia Universidade Fernando Pessoa Versão 1. O que é a ciência de dados (data science). Discussão do conceito Luís Borges Gouveia Universidade Fernando Pessoa Versão 1.3, Outubro, 2015 Nota prévia Esta apresentação tem por objetivo, proporcionar

Leia mais

Ajuda ao SciEn-Produção 1. 1. O Artigo Científico da Pesquisa Experimental

Ajuda ao SciEn-Produção 1. 1. O Artigo Científico da Pesquisa Experimental Ajuda ao SciEn-Produção 1 Este texto de ajuda contém três partes: a parte 1 indica em linhas gerais o que deve ser esclarecido em cada uma das seções da estrutura de um artigo cientifico relatando uma

Leia mais

21/03/2012. WorkFlow. Gestão Eletrônica de Documentos. Workflow HISTÓRICO

21/03/2012. WorkFlow. Gestão Eletrônica de Documentos. Workflow HISTÓRICO WorkFlow Gestão Eletrônica de Documentos Workflow HISTÓRICO 1 CSCW - Computer-supported CooperativeWork trabalho cooperativo auxiliado por computador Estudo dos conceitos que definem e desenvolvem o trabalho

Leia mais

DATA WAREHOUSE. Introdução

DATA WAREHOUSE. Introdução DATA WAREHOUSE Introdução O grande crescimento do ambiente de negócios, médias e grandes empresas armazenam também um alto volume de informações, onde que juntamente com a tecnologia da informação, a correta

Leia mais

INTRODUÇÃO A PORTAIS CORPORATIVOS

INTRODUÇÃO A PORTAIS CORPORATIVOS INTRODUÇÃO A PORTAIS CORPORATIVOS Conectt i3 Portais Corporativos Há cinco anos, as empresas vêm apostando em Intranet. Hoje estão na terceira geração, a mais interativa de todas. Souvenir Zalla Revista

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

2. Representação Numérica

2. Representação Numérica 2. Representação Numérica 2.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos

Leia mais

GUIA DE REDAÇÃO PARA TRABALHO DE EM974

GUIA DE REDAÇÃO PARA TRABALHO DE EM974 GUIA DE REDAÇÃO PARA TRABALHO DE EM974 CONSIDERAÇÕES GERAIS O objetivo deste documento é informar a estrutura e a informação esperadas num texto de Trabalho de Graduação. O conteúdo do texto deverá ser

Leia mais

Processos Técnicos - Aulas 4 e 5

Processos Técnicos - Aulas 4 e 5 Processos Técnicos - Aulas 4 e 5 Trabalho / PEM Tema: Frameworks Públicos Grupo: equipe do TCC Entrega: versão digital, 1ª semana de Abril (de 31/03 a 04/04), no e-mail do professor (rodrigues.yuri@yahoo.com.br)

Leia mais

Introdução à Computação

Introdução à Computação Aspectos Importantes - Desenvolvimento de Software Motivação A economia de todos países dependem do uso de software. Cada vez mais, o controle dos processos tem sido feito por software. Atualmente, os

Leia mais

Módulo 4: Gerenciamento de Dados

Módulo 4: Gerenciamento de Dados Módulo 4: Gerenciamento de Dados 1 1. CONCEITOS Os dados são um recurso organizacional decisivo que precisa ser administrado como outros importantes ativos das empresas. A maioria das organizações não

Leia mais

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR Novell Teaming - Guia de início rápido Novell Teaming 1.0 Julho de 2007 INTRODUÇÃO RÁPIDA www.novell.com Novell Teaming O termo Novell Teaming neste documento se aplica a todas as versões do Novell Teaming,

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

RECUPERAÇÃO DE DOCUMENTOS TEXTO USANDO MODELOS PROBABILISTICOS ESTENDIDOS

RECUPERAÇÃO DE DOCUMENTOS TEXTO USANDO MODELOS PROBABILISTICOS ESTENDIDOS ISBN 978-85-61091-05-7 Encontro Internacional de Produção Científica Cesumar 27 a 30 de outubro de 2009 RECUPERAÇÃO DE DOCUMENTOS TEXTO USANDO MODELOS PROBABILISTICOS ESTENDIDOS Marcello Erick Bonfim 1

Leia mais

Artur Petean Bove Júnior Tecnologia SJC

Artur Petean Bove Júnior Tecnologia SJC Artur Petean Bove Júnior Tecnologia SJC Objetivo O objetivo do projeto é especificar o desenvolvimento de um software livre com a finalidade de automatizar a criação de WEBSITES através do armazenamento

Leia mais

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela Aula 01 - Formatações prontas e Sumário Formatar como Tabela Formatar como Tabela (cont.) Alterando as formatações aplicadas e adicionando novos itens Removendo a formatação de tabela aplicada Formatação

Leia mais

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 1.1 Introdução... 2 1.2 Estrutura do IP... 3 1.3 Tipos de IP... 3 1.4 Classes de IP... 4 1.5 Máscara de Sub-Rede... 6 1.6 Atribuindo um IP ao computador... 7 2

Leia mais

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento

Leia mais

A Grande Importância da Mineração de Dados nas Organizações

A Grande Importância da Mineração de Dados nas Organizações A Grande Importância da Mineração de Dados nas Organizações Amarildo Aparecido Ferreira Junior¹, Késsia Rita da Costa Marchi¹, Jaime Willian Dias¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil

Leia mais

Web 2.0. Amanda Ponce Armelin RA 052202

Web 2.0. Amanda Ponce Armelin RA 052202 Amanda Ponce Armelin RA 052202 Americana, 2007 Tópicos Introdução Web 1.0 Definição Comparativo Web1.0 x Web2.0 Web 3.0 Definição Conclusão Definição Principais características Discórdia Termos Essenciais

Leia mais

Mídias sociais como apoio aos negócios B2C

Mídias sociais como apoio aos negócios B2C Mídias sociais como apoio aos negócios B2C A tecnologia e a informação caminham paralelas à globalização. No mercado atual é simples interagir, aproximar pessoas, expandir e aperfeiçoar os negócios dentro

Leia mais

Gestão do Conhecimento A Chave para o Sucesso Empresarial. José Renato Sátiro Santiago Jr.

Gestão do Conhecimento A Chave para o Sucesso Empresarial. José Renato Sátiro Santiago Jr. A Chave para o Sucesso Empresarial José Renato Sátiro Santiago Jr. Capítulo 1 O Novo Cenário Corporativo O cenário organizacional, sem dúvida alguma, sofreu muitas alterações nos últimos anos. Estas mudanças

Leia mais

3 Estratégia para o enriquecimento de informações

3 Estratégia para o enriquecimento de informações 34 3 Estratégia para o enriquecimento de informações Podemos resumir o processo de enriquecimento de informações em duas grandes etapas, a saber, busca e incorporação de dados, como ilustrado na Figura

Leia mais

Projeto Você pede, eu registro.

Projeto Você pede, eu registro. Projeto Você pede, eu registro. 1) IDENTIFICAÇÃO 1.1) Título do Projeto: Você pede eu registro. 1.2) Equipe responsável pela coordenação do projeto: Pedro Paulo Braga Bolzani Subsecretario de TI Antonio

Leia mais

Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3

Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3 Introdução ao Aplicativo de Programação LEGO MINDSTORMS Education EV3 A LEGO Education tem o prazer de trazer até você a edição para tablet do Software LEGO MINDSTORMS Education EV3 - um jeito divertido

Leia mais

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS

MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS MÓDULO 9 METODOLOGIAS DE DESENVOLVIMENTO DE SISTEMAS O termo metodologia não possui uma definição amplamente aceita, sendo entendido na maioria das vezes como um conjunto de passos e procedimentos que

Leia mais

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi

XML e Banco de Dados de Internet. Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi XML e Banco de Dados de Internet Tópicos Especiais em Tecnologia da Informação Profa. Késsia R. C. Marchi Motivação Diversas aplicações Web utilizam Fontes de Dados (BD); Arquitetura Cliente-Servidor (2

Leia mais

Ambiente de Aprendizagem Moodle FPD Manual do Aluno

Ambiente de Aprendizagem Moodle FPD Manual do Aluno Ambiente de Aprendizagem Moodle FPD Manual do Aluno Maio 2008 Conteúdo 1 Primeiros passos...4 1.1 Tornando-se um usuário...4 1.2 Acessando o ambiente Moodle...4 1.3 O ambiente Moodle...4 1.4 Cadastrando-se

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

2 Fundamentação Conceitual

2 Fundamentação Conceitual 2 Fundamentação Conceitual 2.1 Computação Pervasiva Mark Weiser define pela primeira vez o termo Computação Ubíqua ou Computação Pervasiva (Ubiquitous Computing) em (10). O autor inicia o trabalho com

Leia mais

Prof. Dr. Guanis de Barros Vilela Junior

Prof. Dr. Guanis de Barros Vilela Junior Prof. Dr. Guanis de Barros Vilela Junior INTRODUÇÃO O que é pesquisa? Pesquisar significa, de forma bem simples, procurar respostas para indagações propostas. INTRODUÇÃO Minayo (1993, p. 23), vendo por

Leia mais

Solitaire Interglobal

Solitaire Interglobal Solitaire Interglobal POWERLINUX OU WINDOWS PARA IMPLANTAÇÃO SAP Escolher entre as plataformas concorrentes de sistema operacional Linux e Windows para SAP pode ser uma tarefa confusa para as organizações.

Leia mais

Laboratório de Mídias Sociais

Laboratório de Mídias Sociais Laboratório de Mídias Sociais Aula 02 Análise Textual de Mídias Sociais parte I Prof. Dalton Martins dmartins@gmail.com Gestão da Informação Universidade Federal de Goiás O que é Análise Textual? Análise

Leia mais

Processos de gerenciamento de projetos em um projeto

Processos de gerenciamento de projetos em um projeto Processos de gerenciamento de projetos em um projeto O gerenciamento de projetos é a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de cumprir seus requisitos.

Leia mais

T U T O R I A I S WEB OF SCIENCE TUTORIAL. Biblioteca da Escola de Engenharia da UFRGS. WEB OF SCIENCE - Tutorial

T U T O R I A I S WEB OF SCIENCE TUTORIAL. Biblioteca da Escola de Engenharia da UFRGS. WEB OF SCIENCE - Tutorial T U T O R I A I S WEB OF SCIENCE TUTORIAL Biblioteca da Escola de Engenharia da UFRGS WEB OF SCIENCE - Tutorial O que é? O Web of Science é uma base de dados que disponibiliza acesso a mais de 9.200 títulos

Leia mais

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE MÓDULO 6 INTRODUÇÃO À PROBBILIDDE Quando estudamos algum fenômeno através do método estatístico, na maior parte das vezes é preciso estabelecer uma distinção entre o modelo matemático que construímos para

Leia mais

MINERAÇÃO DE DADOS EDUCACIONAIS: UM ESTUDO DE CASO APLICADO AO PROCESSO SELETIVO DO IFSULDEMINAS CÂMPUS MUZAMBINHO

MINERAÇÃO DE DADOS EDUCACIONAIS: UM ESTUDO DE CASO APLICADO AO PROCESSO SELETIVO DO IFSULDEMINAS CÂMPUS MUZAMBINHO MINERAÇÃO DE DADOS EDUCACIONAIS: UM ESTUDO DE CASO APLICADO AO PROCESSO SELETIVO DO IFSULDEMINAS CÂMPUS MUZAMBINHO Fernanda Delizete Madeira 1 ; Aracele Garcia de Oliveira Fassbinder 2 INTRODUÇÃO Data

Leia mais

3 Qualidade de Software

3 Qualidade de Software 3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo

Leia mais

Big Data. Como utilizar melhor e mais rápido seus dados e informações utilizando metodologias e tecnologias GED/ECM

Big Data. Como utilizar melhor e mais rápido seus dados e informações utilizando metodologias e tecnologias GED/ECM Big Data Como utilizar melhor e mais rápido seus dados e informações utilizando metodologias e tecnologias GED/ECM Irineu Granato, CDIA+ CBPP, AIIM (ECMp, ECMs, IOAp, BPMs, ERMs) AIIM Professional Member

Leia mais

Técnicas e Instrumentos Utilizados na Pesquisa Científica Cavalcanti

Técnicas e Instrumentos Utilizados na Pesquisa Científica Cavalcanti Técnicas e Instrumentos Utilizados na Pesquisa Científica Técnicas de Pesquisa Técnica: Conjunto de preceitos ou processos de que se serve uma ciência. Toda ciência utiliza inúmeras técnicas na obtenção

Leia mais

Utilizando a ferramenta de criação de aulas

Utilizando a ferramenta de criação de aulas http://portaldoprofessor.mec.gov.br/ 04 Roteiro Utilizando a ferramenta de criação de aulas Ministério da Educação Utilizando a ferramenta de criação de aulas Para criar uma sugestão de aula é necessário

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 13 Web Services Web Services

Leia mais

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA INTRODUÇÃO O projeto de um banco de dados é realizado sob um processo sistemático denominado metodologia de projeto. O processo do

Leia mais

Capítulo 9. Gerenciamento de rede

Capítulo 9. Gerenciamento de rede 1 Capítulo 9 Gerenciamento de rede 2 Redes de computadores I Prof.: Leandro Soares de Sousa E-mail: leandro.uff.puro@gmail.com Site: http://www.ic.uff.br/~lsousa Não deixem a matéria acumular!!! Datas

Leia mais

MANUAL DO ALUNO MOODLE

MANUAL DO ALUNO MOODLE MANUAL DO ALUNO MOODLE 1. Primeiros passos 1.1. Tornando-se um usuário No ambiente Moodle alunos e tutores são usuários do sistema. Assim, o primeiro passo, para todos, é tornar-se usuário. Este manual

Leia mais

Manual do Usuário 2013

Manual do Usuário 2013 Manual do Usuário 2013 MANUAL DO USUÁRIO 2013 Introdução Um ambiente virtual de aprendizagem é um programa para computador que permite que a sala de aula migre para a Internet. Simula muitos dos recursos

Leia mais

textos documentos semi-estruturado

textos documentos semi-estruturado 1 Mineração de Textos Os estudos em Aprendizado de Máquina normalmente trabalham com dados estruturados Entretanto, uma grande quantidade de informação é armazenada em textos, que são dados semiestruturados

Leia mais

Modelo Cascata ou Clássico

Modelo Cascata ou Clássico Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação

Leia mais

CAPÍTULO 2 MATEMÁTICA FINANCEIRA

CAPÍTULO 2 MATEMÁTICA FINANCEIRA CAPÍTULO 2 MATEMÁTICA FINANCEIRA A Matemática Financeira se preocupa com o valor do dinheiro no tempo. E pode-se iniciar o estudo sobre o tema com a seguinte frase: NÃO SE SOMA OU SUBTRAI QUANTIAS EM DINHEIRO

Leia mais

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001 47 5 Redes Neurais O trabalho em redes neurais artificiais, usualmente denominadas redes neurais ou RNA, tem sido motivado desde o começo pelo reconhecimento de que o cérebro humano processa informações

Leia mais

Planejamento Estratégico de TI. Prof.: Fernando Ascani

Planejamento Estratégico de TI. Prof.: Fernando Ascani Planejamento Estratégico de TI Prof.: Fernando Ascani BI Business Intelligence A inteligência Empresarial, ou Business Intelligence, é um termo do Gartner Group. O conceito surgiu na década de 80 e descreve

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE

DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE Mariane Alves Gomes da Silva Eliana Zandonade 1. INTRODUÇÃO Um aspecto fundamental de um levantamento

Leia mais

Matemática Financeira II

Matemática Financeira II Módulo 3 Unidade 28 Matemática Financeira II Para início de conversa... Notícias como essas são encontradas em jornais com bastante frequência atualmente. Essas situações de aumentos e outras como financiamentos

Leia mais

TUTORIAL DO ALUNO. Olá, bem vindo à plataforma de cursos a distância da Uniapae!!!

TUTORIAL DO ALUNO. Olá, bem vindo à plataforma de cursos a distância da Uniapae!!! TUTORIAL DO ALUNO Olá, bem vindo à plataforma de cursos a distância da Uniapae!!! O Moodle é a plataforma de ensino a distância utilizada pela Uniapae sendo a unidade de ensino para rápida capacitação

Leia mais

Importância da normalização para as Micro e Pequenas Empresas 1. Normas só são importantes para as grandes empresas...

Importância da normalização para as Micro e Pequenas Empresas 1. Normas só são importantes para as grandes empresas... APRESENTAÇÃO O incremento da competitividade é um fator decisivo para a maior inserção das Micro e Pequenas Empresas (MPE), em mercados externos cada vez mais globalizados. Internamente, as MPE estão inseridas

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá. INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,

Leia mais

No mundo atual, globalizado e competitivo, as organizações têm buscado cada vez mais, meios de se destacar no mercado. Uma estratégia para o

No mundo atual, globalizado e competitivo, as organizações têm buscado cada vez mais, meios de se destacar no mercado. Uma estratégia para o DATABASE MARKETING No mundo atual, globalizado e competitivo, as organizações têm buscado cada vez mais, meios de se destacar no mercado. Uma estratégia para o empresário obter sucesso em seu negócio é

Leia mais

Introdução ao EBSCOhost 2.0

Introdução ao EBSCOhost 2.0 Introdução ao EBSCOhost 2.0 Tutorial support.ebsco.com O que é? O EBSCO Host é um poderoso sistema de referência on-line acessível através da Internet, e oferece uma variedade de bases de dados de texto

Leia mais

Informática. Dicas de busca utilizando a Internet. Informatica. na Escola

Informática. Dicas de busca utilizando a Internet. Informatica. na Escola Dicas de busca utilizando a Internet Seja para fins acadêmicos ou profissionais, é importante aprendermos a utilizar a Internet como uma ferramenta de pesquisa, pois ela é uma inesgotável fonte de informações

Leia mais

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR 6LPXODomR GH6LVWHPDV )HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR #5,6. Simulador voltado para análise de risco financeiro 3RQWRV IRUWHV Fácil de usar. Funciona integrado a ferramentas já bastante conhecidas,

Leia mais

PARANÁ GOVERNO DO ESTADO

PARANÁ GOVERNO DO ESTADO PARANÁ GOVERNO DO ESTADO COLÉGIO ESTADUAL DE PARANAVAÍ ENSINO FUNDAMENTAL, MÉDIO, NORMAL E PROFISSIONAL CURSO TÉCNICO EM INFORMÁTICA DISCIPLINA: INTERNET E PROGRAMAÇÃO WEB 1º MÓDULO SUBSEQUENTE MECANISMOS

Leia mais

Manual de configuração do sistema

Manual de configuração do sistema Manual de configuração do sistema (v.1.5.x Beta) Rua México, 119 Sala 2004 Centro Rio de Janeiro, RJ www.doctors-solution.com.br www.simdoctor.com.br contato@simdoctor.com.br Sumário 1. Fazendo seu primeiro

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

Unidade 7: Panes no Excel

Unidade 7: Panes no Excel Unidade 7: Panes no Excel 7.0 Introdução A maioria das pessoas que usam o Excel já deve ter passado por redução no desempenho, congelamento e aquelas temidas palavras "O Microsoft Excel encontrou um problema

Leia mais

6 Construção de Cenários

6 Construção de Cenários 6 Construção de Cenários Neste capítulo será mostrada a metodologia utilizada para mensuração dos parâmetros estocásticos (ou incertos) e construção dos cenários com respectivas probabilidades de ocorrência.

Leia mais

Núcleo de Pós Graduação Pitágoras

Núcleo de Pós Graduação Pitágoras Núcleo de Pós Graduação Pitágoras Professor: Fernando Zaidan Disciplina: Arquitetura da Informática e Automação MBA Gestão em Tecnologia 1 da Informaçao 2 Figura: Tela do IBM Mainframe Fonte: Arquivo próprio

Leia mais