• Nenhum resultado encontrado

3- FUNDAMENTAÇÃO TEÓRICA

3.1 ORGANIZAÇÃO E REPRESENTAÇÃO DA INFORMAÇÃO E DO CONHECIMENTO

3.1.3 Modelagem conceitual

Como o foco desta tese está na organização sistemática de metadados multimídia para representação de documentos desta natureza, a presente seção torna-se fundamental e oportuna para a elucidação dos aportes teóricos e metodológicos que circundam o assunto modelos e modelagem para representação. Deve-se ressaltar que nessa pesquisa considera-se a fase de modelagem conceitual, também denominada conceituação (FERNANDEZ, GOMEZ-PEREZ e JURISTO, 1997), como uma das mais importantes no processo de desenvolvimento de ontologias. Tal fase possibilita organizar de forma coerente os elementos ontológicos de um domínio. É na fase de modelagem que se torna possível determinar um conjunto de conceitos com compromissos ontológicos estabelecidos para a construção da conceituação para o domínio de interesse, que, nesta tese, é o domínio multimídia.

A atividade de modelagem conceitual vem sendo empregada na CI para amenizar os problemas na comunicação entre sistemas de informação e seus usuários (SAYÃO, 2001; CAMPOS, 2004). Pode-se obter por meio desta atividade um entendimento compartilhado do domínio de interesse ou do universo do discurso. Desta forma, a comunidade de usuários envolvida no domínio passa a ter uma linguagem comum através da qual o seu conhecimento possa ser expresso, facilitando a comunicação entre esta comunidade e o sistema. Na CC, a modelagem conceitual exerce um papel importante em áreas como banco de dados e projetos de sistemas de informação; engenharia de software e de domínio; projetos de sistemas baseados em conhecimento; engenharia de requisitos; integração de informação; interoperabilidade semântica; processamento de linguagem natural; modelagem de empresas; e ontologias formais no contexto da Web Semântica (GUIZZARDI, 2005).

Segundo Guizzardi (2005), a modelagem está intrinsecamente associada à representação das coisas do mundo, independente de projeto específico ou escolhas tecnológicas; objetiva entender (aprender), comunicar (entre os envolvidos no domínio) e raciocinar (resolver problemas) sobre uma porção da realidade. Sayão (2001) complementa, assinalando a importância da representação para a utilização de mecanismos de abstração para a construção de modelos. A abstração nesse caso constitui uma ferramenta poderosa no exercício de aquisição de conhecimento, no sentido de se compreender certa realidade. Para tal, é necessário selecionar os objetos ou entidades de maior relevância para o problema objeto de investigação. “Constroem-se, assim, esquemas abstratos da realidade, nos quais as coisas são reduzidas a seus perfis mais convenientes” (SAYÃO, 2001, p.82).

Ainda segundo Sayão (2001), nos modelos conceituais as abstrações semânticas tornam-se relevantes por considerar relações entre conceitos linguísticos que refletem diferenças de significados entre termos. Tais abstrações apenas conseguem atingir um grau aceitável de aproximação com o objeto referente a partir de um trabalho intelectual por parte do profissional que modela o sistema. Mylopoulos (1992, p.3) fornece uma definição sobre a disciplina de modelagem conceitual que vai ao encontro do que se defende nesta tese em relação à importância do entendimento comum (principalmente por usuários humanos) sobre a realidade de um domínio: “Modelagem conceitual é uma atividade que formalmente descreve alguns aspectos do mundo físico e social ao nosso redor para propósitos de entendimento e comunicação” 52; e “[...] as descrições que resultam da atividade de modelagem conceitual são destinadas principalmente para humanos, e não para máquinas”53.

52

Conceptual modelling is the activity of formally describing some aspects of the physical and social world around us for purposes of understanding and communication aspects of the physical and social world around us for purposes of understanding and communication.

53

54 As considerações sobre modelagem conceitual acima mencionadas podem ser visualizadas no esquema retratado na Figura 2 em que Guizzardi (2005) esclarece o relacionamento envolvendo um conjunto de conceitos de uma porção da realidade, abstrações mentais dos usuários, técnicas para capturar a semântica envolvida nestas abstrações e os artefatos resultantes.

Figura 2 - Relações entre conceituação, modelo, linguagem de modelagem e especificação

Fonte: adaptado de Guizzardi (2005, p.2).

Pode-se iniciar a elucidação do esquema da Figura 2 caracterizando uma conceituação (do inglês, conceptualization) como um conjunto de conceitos usado para abstrações acerca do estado das coisas (do inglês, state of affairs) em um dado domínio. Segundo Guarino (1998), uma conceituação pode ser vista também como determinante de todos os modelos possíveis admissíveis em um domínio.

O modelo em si apresenta-se como uma abstração de uma dada porção da realidade a partir da conceituação de um dado domínio. Essas conceituações e modelos são consideradas entidades abstratas que existem somente na mente de usuários ou uma comunidade de usuários que lidam com certa linguagem. Com o propósito de materializar o que de concreto existe no modelo mental desses usuários, as entidades precisam ser documentadas, comunicadas e analisadas e, para tal, precisam ser capturadas por meio de algum artefato. A representação desse modelo mental ou modelo conceitual é denominada de especificação de modelo, a qual necessita de uma linguagem

de modelagem para se tornar um artefato.

Finalmente, uma linguagem de modelagem deve ser suficientemente expressiva para caracterizar a conceituação de seu domínio. Para tal, a semântica envolvida nas especificações produzidas deve ser clara de modo a facilitar (para o projetista envolvido nas especificações) a

conexão entre os conceitos do domínio e os construtos da linguagem. Além disso, tais especificações devem proporcionar ao usuário um entendimento e raciocínio sobre o que está sendo representado. Segundo Guizzardi (2005), o problema de interoperabilidade semântica existe porque as comunidades divergem em suas conceituações. A viabilização no processo de comunicação entre a conceituação e a linguagem tanto do ponto de vista do tratamento pela máquina quanto para a compreensão do usuário é denominada de compromisso ontológico (GUARINO, 1998; GUIZZARDI, 2005). Ressalta-se que os conceitos de compromisso ontológico, linguagem de modelagem e conceituação serão explorados na seção dedicada ao assunto ontologias, cuja modelagem que as envolve é vista como um tipo especial de modelagem conceitual (GUIZZARDI, 2005).

Os estudos sobre concepção de modelos destinados à construção de sistemas para organização da informação e do conhecimento têm sido cada vez mais intensificados na busca de uma representação mais próxima da realidade. No campo da CC, destacam-se os modelos de representação associados à modelagem de dados, tais como o modelo relacional (CODD, 1970), o modelo entidade e relacionamento (CHEN, 1976) e o modelo orientado a objetos (BOOCH, JACOBSON e RUMBAUGH, 2006). Na área de inteligência artificial, os modelos para representação de conhecimento envolvem as redes semânticas (RESENDE, 2003; RUSSEL e NORVIG, 2004), os frames (MINSKY, 1975; MAIDA, 1987) e as declarações lógicas (COPI, 1981). As ontologias, apresentadas na seção 3.2, são também vistas como um tipo especial de modelo para representação de conhecimento. A importância do estudo de ontologias para a IA pode ser constatado pelo surgimento de uma nova área de trabalho conhecida como engenharia ontológica, um ramo da engenharia de conhecimento que se preocupa com o processo de construção de ontologias genéricas para fins de reúso em diferentes bases de conhecimento (GRUBER, 1993a). As contribuições advindas da CC e da IA são exibidas na seção 3.1.3.1.

A ciência da informação traz contribuições significativas para a modelagem de domínios em que teorias e metodologias já consolidadas no campo podem ajudar o modelizador em sua atividade de elaboração de modelos de representação para linguagens documentárias, sistemas computacionais, hipertextos e ontologias (CAMPOS, 2004); e ainda podem proporcionar benefícios no acesso, disseminação, compartilhamento e uso do conhecimento pelos usuários em potencial. Para tal, destacam-se propostas de categorias que auxiliam a estruturação de conhecimento presente nesses domínios (RANGANATHAN, 1967; DAHLBERG, 1978; GOMES, 1990; CAMPOS, GOMES e MOTTA, 2004); estudos sobre a natureza de relações conceituais e semânticas envolvidas em modelos de representação (DAHLBERG, 1978; HJÖRLAND, 2007; KHOO e NA, 2007); e modelos de referência enquanto recurso metodológico para auxiliar o processo de

56 organização de descrições de alto nível para o universo bibliográfico (IFLA, 1998; CROFTS, 2005). Tais contribuições são apresentadas na seção 3.1.3.2.

3.1.3.1 Contribuições da CC e da IA

Edgar Frank Codd concebeu em 1970 o modelo relacional54 (CODD, 1970) adequado a ser subjacente a um sistema gerenciador de banco de dados (SGBD). Baseia-se no princípio em que todos os dados estão representados em relações matemáticas (ou tabelas) as quais podem ser tratadas por álgebra relacional que por sua vez é fundamentada na lógica de predicados e na teoria dos conjuntos. Alinhado ao projeto dos bancos de dados relacionais, Peter Chen introduziu na mesma década o modelo dos Diagramas de Entidade e Relacionamento (também chamado de DER) (CHEN, 1976), no qual foi refinado posteriormente por outros pesquisadores. Surgiu da necessidade dos projetistas de bancos de dados encontrarem uma maneira eficaz de estruturar tabelas, através do processo de normalização55, eliminando a redundância de dados e os problemas de atualização inconsistente nas tabelas. A análise semântica de Chen (1976) parte da formação de classes ou conjuntos de entidades e com base em alguma característica que distingue as entidades na classe, o modelo é estendido através de subclasses ou especializações.

A modelagem orientada a objetos vem sendo discutida e refinada desde a década de 70 com o propósito de identificar o melhor conjunto de objetos para descrever um sistema de software e reusá-los quando necessário em outras aplicações (RUMBAUGH e BLAHA, 2006). Um objeto pode ser considerado um conceito, uma abstração ou coisa que representa, através de sua identidade, algum significado para uma aplicação. Sua organização se dá em classes ou subclasses a partir de semelhanças e diferenças abstraídas da aplicação na qual faz parte. Cada classe determina o comportamento e estados possíveis (atributos) de seus objetos, assim como o relacionamento com outros objetos. Cada um desses objetos é chamado de instância de sua classe.

Segundo Rumbaugh e Blaha (2006), a subclasse herda as características de sua superclasse. E acrescentam que cada instância de uma subclasse é também uma instância da superclasse. Por isso da denominação “é um”, do inglês “is a”, para o relacionamento de generalização. Outras formas de organizar ou classificar objetos podem ser feitas através da agregação e da associação. Na agregação há níveis de abstração do tipo “parte de” em relação à classe. Exemplo: termostatos e compressores são partes de congeladores. Na associação, uma classe tem atributos que associam características comuns a outras classes diferentes. Nessa

54 Anteriormente a esse modelo de implementação, dois modelos já haviam sido propostos na década de 60: o modelo

em rede e o modelo hierárquico. A organização do modelo em rede se dá por um conjunto arbitrário de gráficos, já o modelo hierárquico através de estrutura em árvores. Essa organização limita a flexibilidade do modelo de dados, podendo ocorrer problemas de inconsistência no momento da manipulação dos dados.

55 Informações sobre normalização em bancos de dados relacionais podem ser conferidas em Silberschatz, Korth e

classificação, certas ideias promovem lembranças de outras ideias relacionadas, como por exemplo:

montanhas e pistas estão associadas a esquiar.

Na atividade de representação das classes, dos objetos e das relações, a comunidade de orientação a objetos vem desenvolvendo e refinando desde a década de 90 a linguagem de modelagem unificada - UML (do inglês, Unified Modeling Language) - como técnica de modelagem de sistemas. A linguagem é sucessora de um conjunto de métodos de análise e projetos baseados em objetos, criado pelos próprios autores da linguagem: Grady Booch, James Rumbaugh e Ivar Jacobson. A linguagem é adotada e recomendada pelo Object Management Group – OMG, um grupo responsável pelos padrões voltados ao paradigma de orientação a objetos. Por possuir uma notação gráfica simples e ser capaz de modelar aspectos estruturais e comportamentais de um sistema é amplamente consolidada na área de engenharia de software (PRESSMAN, 2002). Os principais diagramas da linguagem para modelar aspectos estruturais e comportamentais de um sistema, incluem os de classes, objetos, colaboração, sequência, casos de uso, estados e atividades (BOOCH, JACOBSON e RUMBAUGH, 2006).

A percepção da relação do modelo orientado a objetos para com as ontologias torna-se clara na medida em que ambos buscam representar semanticamente um domínio de conhecimento. O primeiro modelo busca classificar o domínio através de classes e objetos, possibilitando o reúso dos mesmos em outras aplicações. Tais princípios também são empregados nas ontologias quando concebidas para fins de modelagem de domínio. Dada a similaridade entre os modelos orientados a objetos e as ontologias, a comunidade de orientação a objetos tem despertado para o uso de ontologias através da UML em conjunto com a sua linguagem de restrição de objetos denominada OCL56- Object Constraint Language (CRANEFIELD e PURVIS, 1999; GUIZZARDI, 2005). Pesquisa recente envolveu a extensão da UML com o propósito de se tornar uma linguagem de modelagem conceitual ontologicamente bem fundamentada (GUIZZARDI, 2005). Para tal, utilizou- se uma ontologia de fundamentação denominada UFO-A como base para a avaliação semântica do metamodelo UML 2.0 resultando numa versão ontologicamente bem fundamentada da UML.

O modelo relacional em conexão com o modelo entidade e relacionamento e o modelo orientado a objetos, com sua linguagem de modelagem unificada, buscam representar os principais processos envolvidos em um domínio específico, servir de instrumento de comunicação e construir um sistema de informação automatizado. Tais modelos apresentam similaridades com a estrutura de uma ontologia ao tratarem de questões relacionadas à semântica envolvida na representação de seus conteúdos. Contudo, em relação à semântica, observa-se uma diferença entre os dois modelos e as ontologias. O modelo relacional e o modelo orientado a objetos encontram-se em um nível epistemológico, ou seja, estabelecem apenas significados particulares de estruturação de seus

58 objetos ou entidades. Já as ontologias classificam-se em um nível ontológico com sistematizações axiomáticas para seus conceitos e relações e buscam representar conhecimento acerca de um domínio por meio de técnicas oriundas da área de engenharia do conhecimento. Desse modo, a ontologia está mais preocupada com os significados dos conceitos do que com sua estrutura.

A engenharia do conhecimento é uma área interessada em projetar e construir sistemas baseados em conhecimento57 (SBCs). Segundo Rezende (2003), os SBCs são apontados como um requisito indispensável na resolução de problemas complexos e se diferenciam dos tradicionais sistemas de processamento de dados na forma em que os dados são organizados, armazenados e manipulados, conforme pode ser visto no Quadro 3.

Quadro 3 - Diferenças entre sistemas convencionais e sistemas baseados em conhecimento

Sistemas Convencionais Sistemas Baseados em Conhecimento

Estrutura de dados Representação do Conhecimento

Dados e Relações entre Dados Conceitos, Relações entre Conceitos e Regras Tipicamente usa algoritmos determinísticos Busca Heurística

Conhecimento embutido no código do programa Conhecimento representado explicitamente e separado do programa que o manipula e interpreta

Explicação do raciocínio é difícil Podem e devem explicar seu raciocínio Fonte: Rezende (2003, p.18).

A diferença em destaque aqui é relativa à forma em que os dados são organizados. Nos sistemas convencionais, os dados são organizados através de estruturas de dados, que representam os dados e suas relações. Os modelos para bancos de dados relacionais e os modelos orientados a objetos se enquadram nesses tipos de sistemas, conforme foi visto. Já nos sistemas baseados em conhecimento, os dados são organizados por meio de representação de conhecimento, que explicitam os conceitos do domínio do problema, suas relações e as regras de inferência, originando uma ontologia.

Um SBC utiliza uma base de conhecimento, na qual se pode construir sentenças em uma linguagem de representação, modelando o problema que se deseja resolver. A ontologia, nesse caso, está associada à base de conhecimento no sentido de explicitar os conceitos e as relações entre conceitos, buscando representar todo o conhecimento relevante para a resolução do problema, além de apresentar definições sobre os significados dos conceitos e relações. Além da base de

57 Pesquisados desde a década de 70 pela comunidade de IA, juntamente com os sistemas especialistas. Estes, por sua

vez, foram e ainda são dedicados em áreas que demandam tomadas de decisões de especialistas, como a área de diagnóstico médico (RUSSELL e NORVIG, 2004, p.24).

conhecimento, um SBC58 possui um módulo separado da base, conhecido como mecanismo de inferência, capaz de realizar inferências sobre a base de conhecimento e obter conclusões a partir desse conhecimento.

Baader et al. (1992, p.2) enfatiza que os serviços de inferência devem permitir responder algumas questões sobre a base que podem ajudar no raciocínio e resolução de problemas de um dado domínio como: i) o significado de um conceito é significativo para todos? (satisfatoriedade); ii) onde exatamente o conceito está situado na hierarquia de conceitos? (classificação); iii) quais fatos são dedutíveis a partir do conhecimento? (instanciação); iv) de quais conceitos um objeto é instância? (compreensão); v) quais são as instâncias de um determinado conceito? (recuperação).

De modo que a base de conhecimento possa ser criada e o mecanismo de inferência possa processar eficientemente a base torna-se necessária a adoção de métodos e técnicas para a construção de um SBC, visto não ser uma atividade trivial (REZENDE, 2003). Para tal, a área de engenharia do conhecimento emprega processos constituídos de fases que vão desde a identificação da classe do problema que o SBC deverá resolver até a implementação da base em uma linguagem de representação. As linguagens de modelagem frequentemente usadas são as redes semânticas, os

frames e as declarações lógicas que são brevemente elucidadas a seguir.

A utilização de nodos e arcos para a representação de conhecimento foi proposta na década de 60 por M. Ross Quilliam59, que propôs um modelo computacional da memória humana denominado memória semântica. A partir daí as redes semânticas foram sendo desenvolvidas na área de IA como uma forma de capturar o conhecimento de um domínio. Rezende (2003) define uma rede semântica como um grafo rotulado60 formado por: i) objetos que podem ser indivíduos, coisas e conceitos de um domínio, também denominados nós e ii) um esquema de arcos ou arestas, também denominado links. A Figura 3 mostra um exemplo de uma rede semântica composta de categorias (Mamíferos, Pessoas, Pessoas Femininas e Pessoas Masculinas) e nomes de objetos (Maria e João) representados por elipses e as relações entre eles representadas por arcos rotulados.

58 Informações adicionais sobre a estrutura de um SBC podem ser encontradas em Rezende (2003, p.23). No que tange

às ontologias apenas os componentes base de conhecimento e mecanismo de inferências são relevantes de serem apresentados no contexto dessa pesquisa.

59 Informação obtida em http://en.wikipedia.org/wiki/Semantic_network

60

Figura 3 - Uma rede semântica com dois objetos e quatro categorias

Fonte: adaptado de Russell e Norvig (2004, p.340).

Russel e Norvig (2004) afirmam que a organização de objetos em categorias é uma atividade importante da representação do conhecimento, pois serve para organizar e simplificar a base de conhecimento por herança. Assim, como na orientação a objetos, as redes semânticas podem produzir dois tipos de relações: “é um” (is a), na qual as relações encontram-se numa taxonomia hierárquica; e “parte-de” (part-of), na qual um objeto é componente de outro.

Uma das vantagens desse instrumento de representação de conhecimento, apontada por Rezende (2003), é o poder que os mecanismos de inferência têm de derivar as propriedades de objetos mais gerais para os mais específicos (procedimento esse chamado de herança de propriedades). No exemplo da Figura 3, o objeto Maria recebe as propriedades da categoria Pessoas Femininas da qual faz parte, que por sua vez herda as propriedades das categorias Pessoas e Mamíferos. Russel e Norvig (2004) complementam dizendo que as redes semânticas oferecem gráficos que ajudam na visualização da base de conhecimento e algoritmos eficientes para dedução de propriedades de objetos de acordo com suas categorias. Entretanto, as representações gráficas impõem limitações expressivas pela falta de semântica formal que podem restringir o uso da linguagem (DONINI, LENZERINI e NARDI, 1997; REZENDE, 2003).

Os fundamentos das redes semânticas foram direcionados para alguns modelos de representação como os mapas conceituais (NOVAK e CAÑAS, 2008) que utilizam links para definir relacionamentos entre conceitos. A UML também faz uso dos fundamentos das redes semânticas quando representa os diagramas de classes e de objetos através de associações semânticas entre eles. A linguagem KL-One (BRACHMAN e SCHMOLZE, 1985) foi concebida no final da década de 70 para representar uma rede semântica formal e precede as linguagens da Web

Mamíferos Pessoas Subconjunto de Pessoas Femininas Pessoas Masculinas Maria João Subconjunto de Subconjunto de Irmã de Elemento de Elemento de

Semântica como OIL, DAML, DAML+OIL, RDFS, OWL; seus modelos baseados em grafo fundamentam-se nas redes semânticas.

Como derivação das redes semânticas, surge na década de 70 o conceito de Frames a