Archive for the 'ontologias' Category

Master thesis

Estou aqui enlouquecendo trabalhando na minha dissertação (aqui em PT, tese) de mestrado e resolvi compartilhar um pouco dessa experiência. É um trabalho violento e árduo, mas espero que valha a pena.

Espero que depois que pronta eu consiga publicar (em conferências INTERNACIONAIS) e participar de concursos de dissertações de mestrado da SBC. Poderia ter feito isso já com o TCC da graduação aqui mas do ponto de vista de Recuperação de Informação o que eu fiz como estudo de caso foi muito pequeno (só prova de conceito, praticamente um toy example) e eu não dei prosseguimento ao sistema. Isso tudo feito às pressas pra conseguir o grau antes de ir pra Recife pro mestrado, apesar do 10 unânime de uma banca cabulosa lá da UFAL (modéstia à Marte).

Além disso, tive que aprender Recuperação de Informação (RI) e Aprendizagem de Máquina (AM) sozinho! Só por isso já mereço um prêmiozinho…

Nuvem de tags - ORGANIZE A WEB, MOTHAFUCKA

Nuvem de tags - ORGANIZE A WEB, MOTHAFUCKA

Bom, o assunto da dissertação: Folksonomias e Sugestão de tags. Construí (?) um sistema que extraiu dados do Delicious e depois usei técnicas de RI, AM e outras coisas. Usei como base da sugestão de tags pra páginas Web o conteúdo textual (implementado, preciso e lindo!), páginas vizinhas (inbound pages) (80% implementado) e informação do WordNet e ontologias (Aqui há dragões no código! Trabalhando nisso!). No final faço uma comparação entre as tags que sugeri e as tags do Delicious pra dar uma medida quantitativa do quanto o sistema é bom e uma análise do comportamento do usuário (p. ex. que tipo de tags o sistema NUNCA vai sugerir: “semweb” e “webdev” fica difícil).

Já passei do nível de loucura com esse sistema, o que pode ser melhor visto na quantidade de linhas de código da bagaça (inclui somente .java, código e testes). Mas vamo nessa, não desisto NUNCA!

Ia colocar o abstract aqui, mas como é um trabalho não-publicado (malditos revisores animais, alguns nem entenderam o sistema) vou deixar pra depois pra falar dos louros que consegui com o trabalho.

Boa noite, boa sorte (pra mim)!

Web Semântica e o efeito do Fax

Lendo o livro do Peter Mika, Web Semântica e Redes Sociais, na parte sobre a adoção da Web semântica, se fala do efeito do Fax, que emperra a adoção em larga escala de RDF e OWL, p. ex.

É mais ou menos assim: quando as primeiras máquinas de Fax entraram no mercado, tinham um preço alto e eram inúteis… Por quê? A utilidade delas vêm do fato de serem capazes de se comunicar com outras. Assim, seu valor de utilidade só emerge proporcionalmente a quantidade de usuários que adotam a novidade. Isso também acontece com tecnologias semânticas, que prometem um mundo de integração, reuso e inferência em dados distribuídos por muitos sítios na Web.

O efeito do Fax será superado!

O efeito do Fax será superado!

E quando é que a Web Semântica será uma tecnologia (1) atrativa, (2) interessante e finalmente (3) indispensável para que haja adoção? Veremos.

Um programador não vai ser um early adopter (1) de tecnologias semânticas caso o big boss não imponha dizendo que é uma ferramenta interessante (2) pra gerir e apresentar o conhecimento dos empregados sobre o domínio da aplicação. Empresas inovadoras estão na fase (1) – há boas idéias por aí e sítios começando. Estes vão fazer gerentes acharem as tecnologias aplicáveis nas empresas (2).

Se todas as empresas usam Fax, o problema pode ser financeiro (3). Clientes são perdidos porque não se adotou uma tecnologia, empresas podem fechar por não terem entrado no campeonato nas fase (1) ou (2). Hoje em dia, quem não faz absolutamente nada com AJAX, PERDE mercado. Quem perder mercado porque não tem um site semantic-aware, adotará a Web 3.0 (3!).

Só não vai atrás da Nova Web quem já morreu!

Só não vai atrás da Nova Web quem já morreu!

O que acontece é: Empresas querem produtividade e talvez só adotem (ou briguem por) uma coisa nova quando o Martin Fowler ou algum guru disser que é bom! Ou quando doer no bolso!

Infelizmente, há ainda muitos gaps na infra-estrutura da Web Semântica: API’s, ferramentas de autoria de ontologias, integração de bancos de dados legados, etc. Pra mim, o que falta são as Killer Applications, que podem surgir a despeito dos gaps. Afinal, nenhum guru iria dizer que “redes socias isso, redes sociais aquilo” se não aparecessem Orkut, Wikipédia, YouTube, Flickr, Del.icio.us, etc.

Há muito para se percorrer, muitos entrarão no meio da competição, que sim, JÁ COMEÇOU. Mas quem não largar na frente pode perder a maratona!

O jogo dos (meta)dados

Houve uma discussão sobre a burocracia da Web Semântica num post anterior. Precisamos rolar os dados… Devem haver métodos FÁCEIS (user-friendly), xuxu beleza, dinâmicos, sociais, etc (ao quadrado) para representar conhecimento (dados e metadados) de forma organizada e processável. Não precisa ser tão burocrático!

Só assim a Web pode ser semântica numa escala tão grande como ela agora ou ela daqui a 1 ano, 1 segundo. Mas para garantir semântica precisamos de algumas estruturas (e ontologia é apenas uma delas, porém, a mais completa, formal e bem estudada) para organizar a bagunça.

Duas formas de fazer isso que levam muito em consideração o que a Web 2.0 trouxe, sem precisar editar OWL e saber Lógica de Descrição: folksonomias e Wikis Semânticos. Folksonomias já foram explicadas. Wikis Semânticos são ambientes de edição Wiki onde atributos como relações entre páginas, suas categorias e hierarquias podem ser descritas “in a Wiki way”, facinho como editar um artigo da Wikipédia. Uma grande feature de um Wiki Semântico são os links tipados. É só colocar um rótulo no link, é só dizer o que este link significa. Soa fácil né? Pois é! Veja aí a figura. É do artigo sobre a extensão semântica do MediaWiki (software que a Wikipédia usa debaixo dos panos).

Links tipados no SemanticMediaWiki

Links tipados no SemanticMediaWiki

Um usuário comum e saltitante quer tarefas fáceis, produzir ontologias não é uma delas. Eles querem fazer como os times do Renato Gaúcho, BRINCAR! Assim, o conhecimento deles precisa ser capturado com interfaces analfabetas como caixinhas de texto para tags. Até mesmo tipar links pode ser impeditivo. E agora? Vamos precisar dos “engenheiros de conhecimento” da época dos sistemas especialistas e da “I.A. de papai” pra produzir todas as ontologias? I don’t think so.

Com estruturas de semântica fraca como folksonomias temos dados capturados de qualquer tipo de usuário. Podemos então usar técnicas de estatística, processamento de linguagem natural e análise de redes sociais para a inferência de conhecimento mais formal, que pode servir tanto pra melhorar a propria folksonomia ou para agregar serviços ao site que faz uso do sistema de social tagging. Podemos fazer com que isso convirja para uma ontologia!

Além disso, metadados servem para fazer anotação semântica, ou seja, informação numa página que é processada por agentes com conhecimento de ontologias. Por exemplo, usar metadados dublin core para especificar autor, título e outros dados pessoais numa página, de maneira formalizada, é um começo.

Á-RRAI! I-HI! Web Semântica vale UM MILHÃO!

Á-RRAI! I-HI! Web Semântica vale UM MILHÃO!

Finalmente… vamos usar estruturas com semântica formal bem definida como ontologias ou estruturas de semântica leve e depois extrair essas informações? Eis a pergunta que vale 1 milhão de reais, e talvez não precisemos tanto da ajuda dos universitários, MÁ ÔI!

Aprendizagem de Ontologias

Well,

Tô aqui com umas matrizes de 40000×1600 chorando (e elas vão aumentar!), portanto, sem tempo de terminar o post sobre Ontologias x Folksonomias e as discussões a(o)ntológicas sobre isso. Então aí vai um seminário que apresentei mês passado aqui no mestrado, é uma apresentação sobre Aprendizagem de Ontologias (A presentation about Ontology Learning by Ícaro Medeiros – semantic web 2.0 3.0 ontologies engineering paris hilton barak obama). O link gigante é só um cata-corno google, HOHO!

Tá em inglês porque ia um tal francês no mesmo dia da aula apresentar uma palestra, acabei deixando (foi bom fazer isso!). Não sabe inglês? Mude de profissão urgente e NUNCA (eu disse NUNCA!) me mostre um código com nome de método do tipo isVAZIO(), cambada de vagabundos!

Briefing sobre o assunto… Aprendizagem de ontologias são um conjunto de processos e técnicas para:

  • Construir uma ontologia do zero;
  • Enriquecer, adaptar ou popular ontologias já existentes.

Isso é feito de maneira semi-automática a partir de dados como texto (principalmente), schemas XML, bancos de dados e até folksonomias (_o/ EU, EU) sobre o domínio a ser formalizado. A figurinha (que desafia a inteligência de qualquer um!) diz tudo.

Aprendizagem de Ontologias == Reserve Engineering

Aprendizagem de Ontologias == Engenharia Reversa **

  1. No pontapé inicial, especialistas do domínio escrevem artigos, relatórios técnicos, livros, etc.
  2. Isso tá lá em texto (é seu corpus)… É processado. Vai o meio campo tocando.
  3. Depois de alguns passes pra lá e pra cá, o camisa 10 dá aquele passe milimétrico e … ÉÉÉÉÉÉ, mais um goool brasileeeeeeiro meu povo. Foi, foi, foi ela. A Aprendizagem! Temos uma conceitualização do domínio numa ontologia (seja ela uma hierarquiazinha barata ou uma ontologia com relacionamentos e axiomas).
  4. As definições que estão na ontologia representam uma síntese da opinião consensual dos especialistas sobre aquele domínio. Os especialistas ou os usuários da aplicação usando a ontologia (que podem ser outros especialistas) podem melhorar a ontologia depois, e esse refinamento ajuda os próprios métodos de aprendizagem. Cria-se então uma linha de passe (ciclo) em (2,3,4) – não tá representado aí na figura. Depois de algumas rodadas, a ontologia pode ganhar um troféuzinho.

Isso pode ser visto como uma tarefa de áreas como Extração de Informação e Mineração de Texto. Outros nomes tratam do mesmo assunto com nomes diferentes como (Extração | Emergência | Geração | Aquisição | Descoberta | População | Enriquecimento) de (Ontologias | Ontológica), com algumas diferenças bem sutis. Pra mim o nome mesmo é Aprendizagem de Ontologias (Ontology Learning).

That’s all Folks. Fica um exercíciozinho e pano pra manga nos comentários…

** Por que será que isso pode ser visto como um processo de engenharia reversa?

Saiba mais (Wikipedia, in English). E mais (Ferramenta e plug-in Protége OntoLT) ! Quer fazer Ciência?? Comece aqui (Artigo famoso) e aqui (Curso muito abrangente e bem COMPLETO).

===

===

Obs pra LARISSA (que eu sei que vc vai ler!): Dei um fora em você no comentário do outro post e você vai procurar erros de inglês na apresentação, faça isso não, a vingança nunca é plena! Fale comigo no MSN e comente à parte depois because i will need English next year, therefore, i neeeeed you as a teacher).


posts por mês

assine esse blog

minhas tuitadas

Erro: o Twitter não respondeu. Por favor, aguarde alguns minutos e atualize esta página.

favoritos@del.icio.us

eu uso





Powered by FeedBurner

estatística

  • 16,177 acessos
agosto 2017
S T Q Q S S D
« dez    
 123456
78910111213
14151617181920
21222324252627
28293031