segunda-feira, 19 de janeiro de 2015

Métodos de desenvolvimento de KBSs: RLM e CRLM

O RLM pode ser caracterizado como uma ferramenta (Shell) de desenvolvimento de Engenharia do Conhecimento. Onde esta ferramenta contém a implementação de um PSM específico.

A estrutura predefinida de base de conhecimento de enfoque RLM pode ser usada para orientar o processo de aquisição de conhecimento, pois o tipos de conhecimento que dedem ser fornecidos pelo especialista de domínio são especificados apriori.

UM PSM complexo pode ser decomposto em varias subtarefas, estas podem ser resolvidas por métodos alternativos. 

Como tarefas podem possuir subtarefas em comum, o CRLM disponibiliza um conjunto pré-definido de diferentes métodos para resolver diferentes subtarefas (pode ser configurado pela seleção de um método para cada subtarefa identificada).

Referência:Knowledge Engineering: Principles and Methods, Ronny A. Caytano Terán  e Dalvir Maguerroski

Engenharia do Conhecimento e Cálculo Probabilístico para Apoio ao Diagnóstico

Nas buscas sobre novas informações sobre a aplicação da Engenharia do Conhecimento, achei muito interessante o seu uso para apoio ao diagnóstico, segue abaixo trecho do artigo:


O avanço tecnológico ocorrido nos últimos anos tem impulsionado o desenvolvimento de Sistemas
Baseados em Conhecimento (SBC) que utilizam a inteligência computacional para auxiliar nas tarefas intensivas em conhecimento (ZHAO, YANXIANG & HUI, 2005; RODRÍGUEZ et al., 2009a). Entretanto, alavancar o potencial destas aplicações, em relação ao processo de diagnóstico, tem sido uma ação crítica e desafiadora no tocante à confiabilidade destes sistemas (GARCÍA-CRESPO et al., 2010).

Vários modelos correlatos têm sido propostos para auxiliar o profissional no processo de diagnóstico
tais como: Modelo SOMKS, proposto por Minchin et al. (2006); Modelo FENZA proposto por Fenza et al. (2008); Modelo ODDIN, proposto por García-Crespo et al. (2010), porém, a precisão e a eficiência ainda são metas a serem alcançadas (GARCÍA-CRESPO et al., 2010).

O diagnóstico, de uma forma geral é sempre um processo complexo que exige elevado nível de conhecimento e, tendo uma grande quantidade de variáveis a serem consideradas, muitas vezes dificulta o seu desempenho (SHORTLIFFE et al., 2001).

Portanto, um grande desafio tem sido como apoiar este processo, onde os sistemas são projetados
e desenvolvidos baseados em precisão e certeza. Eles proveem soluções irreais baseados em um ambiente fechado e para a maioria das aplicações reais as incertezas são inevitáveis e não podem ser ignoradas (YANG,2007).

A Engenharia do Conhecimento (EC) é uma área que pode auxiliar este processo através de um conjunto de métodos, técnicas e ferramentas que oferecem suporte à Gestão do Conhecimento (GC) para a formalização e explicitação das atividades intensivas em conhecimento (SCHREIBER et al., 2002).

Um destes instrumentos é a metodologia CommonKADS (Knowledge Acquisition and Documentation Struturing), que fornece um conjunto de etapas para o desenvolvimento de SBC (SCHREIBER et al., 2002). No nível de contexto, o Modelo de Organização desta metodologia suporta a maioria dos recursos da organização para descobrir problemas e oportunidades, estabelecendo sua viabilidade e avaliando os possíveis impactos do desenvolvimento destes sistemas.

No nível de conceito, o Modelo de Conhecimento desta metodologia procura especificar tarefas
intensivas de conhecimento, explicando em detalhes o tipo e a estrutura do conhecimento usado na execução de uma tarefa. Já ao nível de artefato, o Modelo de Projeto tem o objetivo de apresentar todos os detalhamentos necessários para a construção de um Sistema de Conhecimento (SCHREIBER et al., 2002).

Algumas das etapas desta metodologia podem ser auxiliadas e aprimoradas utilizando a modelagem
proposta por Bunge (2003) através do modelo CESM (Composition – Environment – Structure-Mechanism),o qual proporciona uma visão sistêmica e pode contribuir, significativamente, para a geração, elicitação e estruturação do conhecimento em um domínio específico.

No processo de geração do conhecimento, Calhoun e Starbuck (2003) comentam que esta pode ocorrer por meio da organização de conhecimento anterior em novas formas, da combinação de informações relevantes,ou mesmo de insigths acerca da aplicação de conhecimento existente em novos contextos.

Gómez-Pérez (1999), dentro do processo de elicitação do conhecimento, destaca a técnica da
ontologia como forma eficiente de representar o conhecimento através de um conjunto de termos ordenados hierarquicamente para descrever um domínio que pode ser usado como um esqueleto para uma base de conhecimento.

Uma das principais características da ontologia é a sua excelente capacidade de representar a estrutura organizacional de um grande domínio complexo e raciocinar sobre ela. Porém, sua aplicação é limitada devido à inabilidade de lidar com incertezas (KOLLER e PFEFFER, 1998; COSTA et al., 2009). Esta deficiência pode ser contornada através do cálculo probabilístico que fornece um tratamento adequado às variáveis (YANG e CALMET, 2005).

As redes Bayesianas, fundamentadas no cálculo probabilístico, são amplamente usadas para trabalhar
com incerteza devido à sua excelente expressividade gráfica e poder computacional; entretanto, são inadequadaspara representar o conhecimento em domínios grandes e complexos (MAHONEY e LASKEY, 1996).

Portanto, tem-se na ontologia associada às redes Bayesianas uma estrutura adequada complementar
que possibilita aproveitar a potencialidade de cada uma delas no apoio ao processo de diagnóstico (YANG e CALMET, 2005).

A construção de um modelo de engenharia do conhecimento, envolvendo os conceitos e técnicas de
representação de conhecimento, principalmente pelo uso de ontologias e do cálculo probabilístico, possibilita trabalhar dentro de um domínio do conhecimento equacionando as incertezas de forma a apoiar o processo do diagnóstico.

Leia a artigo completo (http://www.uff.br/sg/index.php/sg/article/download/V6N3A4/V6N3A4)

Referência: Revista Eletrônica Sistemas e Gestão , volume 6, número 3, 2011 , pp 272-293.

terça-feira, 13 de janeiro de 2015

A gestão do conhecimento hoje no Brasil

Empresas brasileiras evoluíram bastante este ano no sentido de adotar práticas de gestão do conhecimento. Veja o que está sendo feito, embora ainda exista um longo caminho a ser percorrido.
A abordagem da Gestão do Conhecimento nas organizações tem tido ênfase no compartilhamento de conhecimentos e na formação de memória organizacional, principalmente visando captar, reter e disseminar o conhecimento tácito nas organizações. Mas não paramos por aí.
Existem as outras correntes de pensamento, que visam trabalhar competências, com mais foco nas pessoas do que nos métodos de como fazer este tal compartilhamento acontecer.
Além destes, existem os grupos de pensamento que apostam na tecnologia de informação como suporte à gestão do conhecimento, entre outros apoios. A idéia deste relato é explicitar algumas idéias com relação à gestão do conhecimento e como essa abordagem tem evoluído.
Há anos atrás, muito pouco se lia e ouvia sobre a importância do conhecimento nas organizações. No início da década de 90, ouvia–se falar muito pouco de gestão do conhecimento e afins, afinal as empresas estavam terminando aquelas dores de downsizing e reengenharia e voltadas para seus programas de qualidade total.
Na segunda metade da década de 90 já começamos a ter mais referências sobre os temas gestão de conhecimento, capital intelectual, inteligência competitiva. Em 1998 tivemos um recorde de bibliografias sobre o tema conhecimento. A questão do tratamento dos ativos intangíveis parece que começou a ser melhor discutida deste ponto para cá e hoje, nos parece, se não está resolvida, está bem encaminhada.
Vimos em muitos artigos e livros relatos sobre gerar vantagem competitiva através do uso intensivo de conhecimento nos processos de negócio nos processos produtivos, o que já teria sido internalizado pelas organizações.
Tento me convencer disto lendo alguns dados estatísticos e livros mais consolidados e, certas vezes, vou mesmo me convencendo de que isso realmente já foi internalizado, já foi aceito e entendido pelas organizações.
Pesquisa feita pela Fundação Getúlio Vargas com as 500 maiores empresas brasileiras identificou que 81% dos executivos entrevistados acreditavam na importância da utilização da gestão do conhecimento dentro das corporações.
Mais ainda, 15% das empresas dos entrevistados possuem sistemas de gestão do conhecimento implantados e outros 34% em processo de criação de seus sistemas. A pesquisa aponta que a maioria, cerca de 80%, dos que desenvolveram projetos, o fizeram internamente, o que mostra que as empresas possuem massa crítica para tal.
Metade do público entrevistado acredita que o maior ganho da gestão do conhecimento é a transferência de conhecimento para toda a empresa e a minoria, 15%, acredita que a gestão do conhecimento tem como maior objetivo a redução de tempo nas decisões.
São dados realmente contundentes, o quais procuro comparar diariamente com a realidade em empresas que visito, em conversas informais, em prospecções e projetos que realizo. E isso tudo parece uma situação muito paradoxal.
A gestão do conhecimento no discurso tem sido muito mais bonita do que a realizada nas empresas, embora tenhamos evoluído bastante neste tema nos últimos anos. Vamos ao que as empresas mais têm feito neste tema.
Gestão de competências. Esta tem sido uma fonte de preocupação em diversas organizações públicas e privadas, onde surgiram perguntas que gestores não conseguiam responder. Por exemplo: Você conhece o potencial de seus colaboradores? Caso precise preencher uma vaga em sua empresa, poderá indicar um profissional interno com as competências necessárias? Os programas de treinamento oferecidos aos seus colaboradores têm trazido resultados significativos e contribuído para tornar sua empresa mais competitiva?
O momento das empresas brasileiras exige cada vez mais a melhoria na capacidade de obter resultados através das pessoas. Investimentos em tecnologias de última geração, inovação nas metodologias de trabalho ou melhoria nos processos podem ser realizados por toda e qualquer empresa, mas se as pessoas ? que fazem a organização andar ? não estiverem sendo capacitadas, não adiantará muito o esforço. Montar um ?Banco de Talentos Internos?, através da identificação de potenciais tem sido um belíssimo exemplo de como começar a realizar gestão do conhecimento: a idéia é conhecer o que o colaborador conhece! Empresas como Eletrobrás, Ericsson e Siemens realizam atividades similares há bastante tempo.
Memória organizacional. Mesmo nos dias atuais, com toda a abordagem de gestão do conhecimento à disposição, há informações e dados não disponíveis, isolamento entre unidades de negócios, ineficiência na comunicação organizacional, desperdício de práticas e experiências e não–compartilhamento e falta de registro de informações.
Segundo pesquisa da consultoria PriceWaterhouse Coopers, 60% do tempo dos executivos é gasto na recuperação de informações já processadas e disponíveis em algum ponto da empresa. Empresas como Natura Cosméticos, O Globo e Sebrae já experimentam estas iniciativas para não sofrerem o que sofreram as empresas participantes de pesquisa realizada pela Korn Ferry International, que constatou que 90% das informações e conhecimentos não são compartilhadas internamente. Isso significa, que as empresas não possuem memória organizacional.
A empresa que possui um banco de dados com informações sobre os processos adotados durante todo o período de gerenciamento de um projeto, por exemplo, evita retrabalho, repetição de erros e desenvolvimento de projetos simultâneos. Uma memória organizacional bem planejada pode trazer vantagens reais à empresa, como reutilização de soluções, armazenamento de histórico de projetos anteriores, bancos de problemas e soluções, perguntas e respostas, bibliotecas virtuais, materiais didáticos, entre outras.
Inteligência empresarial. Possuir bancos de dados e bases informativas, as empresas já possuem. Se procurarmos bem, existem dados e informações por todos os locais das empresas. É preciso um passo seguinte – fazer bom uso das informações para gerar algum tipo de vantagem para a empresa. Neste sentido, é necessário existir um ciclo onde a empresa:
a. defina as suas necessidades de informação

b. defina as fontes de informação

c. estabeleça um processo de coleta de informações

d. estabeleça um processo de análise e contextualização das informações e

e. Realize um processo contínuo de disseminação de informações
Pode não adiantar muito também parar neste estágio. É necessário que haja (re)utilização das informações para gerar alguma vantagem real. Por exemplo, “meu concorrente direto acaba de iniciar um programa de relacionamento com clientes, o que devo fazer?” Ou “a tecnologia que utilizamos em nossa operadora de telecom está obsoleta e nosso concorrente acaba de adotar um padrão bem mais moderno…?” Ou até mesmo “vou ganhar um novo concorrente este ano?” Tudo isto pode acontecer, com uso de inteligência empresarial ou não. Mas se a sua empresa possui processos estabelecidos para que consiga “conhecer” estes fatores antes de ser apanhada de surpresa, as coisas ficam melhores.
Comunidades de prática. Talvez o advento da web tenha sido o grande impulsionador e viabilizador do crescimento acelerado das comunidades de prática. É claro que podemos ter comunidades de prática sem um pingo de tecnologia, mas seria complicado. Para empresas multisite, a web e as comunidades de prática têm sido grandes impulsionadores e mecanismos para que o compartilhamento de conhecimento aconteça.
Mapeamento de processos. Existem alguns passos para “preparar” uma empresa no sentido de receber iniciativas e estratégias de gestão do conhecimento, mas talvez o mapeamento dos processos seja o alicerce. Uma empresa precisa conhecer como funciona. A organização precisa ter bem mapeadas suas operações, seus negócios, suas atividades.
Diversas outras iniciativas vêm sendo implantadas em empresas no Brasil de maneira crescente, o que aponta um crescimento representativo da utilização e aperfeiçoamento de conceitos de gestão do conhecimento. Os portais corporativos, por exemplo, têm sido amplamente utilizados. Mesmo que muitos websites corporativos sejam chamados indevidamente de portais corporativos, estas empresas já estão caminhando neste sentido.
As iniciativas de CRM e gestão de relacionamento com clientes foram em 2003 o maior alvo de investimentos, segundo pesquisa realizada pela IBM Consulting Services nas áreas de TI das empresas. Se olharmos sob o prisma de que o cliente é uma das pontas onde a organização deve reter e utilizar conhecimento, este é um bom indicativo.
Outras iniciativas como GED (gestão eletrônica de documentos), e–learning, mudança organizacional, intranets e aprendizagem organizacional também têm tido bastante crescimento de utilização.
Apesar de interessante, este panorama no Brasil precisa passar por boas melhorias. Alguns acadêmicos norte–americanos e algumas instituições apontam em estudos um chamado segundo ciclo da gestão do conhecimento. Este será o alvo de nossa próxima escrita. Até lá.
FONTE:http://webinsider.com.br/2003/10/22/a-gestao-do-conhecimento-hoje-no-brasil/

terça-feira, 6 de janeiro de 2015

Gestão do Conhecimento e Capital Intelectual como o valor de uma empresa mudo com a valorização do conhecimento

CommonKads: Modelo de Conhecimento 3

Esta é a ultima postagem sobre o aprofundamento do Modelo de Conhecimento. Falaremos sobre o Nível de conhecimento de tarefa.


O texto abaixo pode ser encontrado no artigo produzido por Mara Abel. O link estará no final da postagem.

Conhecimento de Tarefa
            Definem como serão executadas as tarefas no domínio, de acordo com os objetivos da tarefa e às atividades necessárias para atingir esses objetivos. A definição das tarefas é feita através de um componente declarativo, que define os papéis e pré-requisitos da tarefa, e outro procedural, que descreve como os objetivos serão alcançados.
            Em Common KADS, uma tarefa é definida pelos seus objetivos, papéis de entrada e saída, especificação e corpo da tarefa. Os papéis de entrada e saída, definem quais porções do conhecimento do domínio serão utilizados para resolver a tarefa e como essas porções serão modificadas para gerar as saídas. A especificação da tarefa descreve as dependências entre os papéis envolvidos (o que fica invariante, o que deve ser verdadeiro após a execução da tarefa, etc.). O corpo da tarefa é definido com base em subobjetivos e estrutura de controle das subtarefas, ou seja, em que ordem e em que condições os subobjetivos devem ser alcançados.

FONTE:

ABEL,M. Estudo da Perícia em Petrografia Sedimentar e sua Importância para a Engenharia de Conhecimento. Disponível em < http://www.inf.ufrgs.br/bdi/wp-content/uploads/TeseMara.pdf>

CommonKads: Modelo de Conhecimento 2

Dando continuidade ao aprofundamento no modelo de conhecimento dos CommonKads, falaremos sobre o nível de inferência.



O texto abaixo pode ser encontrado no artigo produzido por Mara Abel. O link estará no final da postagem.

Conhecimento de inferência
                Enquanto o conhecimento do domínio é descrito como uma estrutura de informação ou conhecimento estático da aplicação, o conhecimento de inferência descreve como essas estruturas estáticas podem ser utilizadas para suportar o processo de raciocínio. O conhecimento de inferência é descrito através da primitivas de inferência, papéis do conhecimento e funções de transferência (SCHREIBER et al., 1999).
                Uma primitiva de inferência corresponde a um passo atômico (no sentido de indivisível) de raciocínio, aplicado para derivar uma nova informação a partir das instâncias do conhecimento contidas na base de conhecimento e também das instâncias entradas pelo usuário. De acordo com a metodologia Common KADS, utilizada para descrever o conhecimento, "uma inferência é completamente descrita através de uma especificação declarativa de suas entradas e saídas. O processo interno de como essa inferência transforma aquela entrada na respectiva saída não é relevante no nível do conhecimento". (SCHREIBER et al., 1999)
Uma inferência em Common KADS pode ser pensada como um mini- sistema baseado em conhecimento com uma finalidade bastante limitada e específica. Recebe uma porção do conhecimento do domínio ou do problema como entrada e gera uma saída, que é uma transformação desse conhecimento. As entradas e saídas das inferências são conhecidas como papéis, que são associados dinamicamente ao conhecimento do domínio. Um determinado conhecimento pode exercer o papel de uma hipótese em uma determinada sequência de raciocínio, ou de uma solução em outra sequência, dependendo que qual forma de solução de problemas é utilizada. Os papéis do conhecimento podem ser estáticos ou dinâmicos.
                Os papéis dinâmicos do conhecimento referem-se às entradas e saídas das inferências, instanciadas no momento da execução, normalmente com os dados do usuário. Os papéis estáticos são mais estáveis ao longo do tempo. Definem quais as expressões de conhecimento do domínio aplicadas para realizar a inferência. Referem-se as regras ou taxonomias de domínio representadas no modelo e instanciadas de acordo com as necessidades da inferência.
                Juntas, as inferências formam os blocos construtores do raciocínio de uma sistema. O conjunto das inferências pode ser representado graficamente, de forma a explicitar as relações de dependência entre os passos de inferência. As estruturas de inferência assim construídas, quando definem métodos de solução abstratos e reusáveis em outros domínios, constituem-se em métodos de solução de problemas  ou PSM.   
                O uso de métodos de solução de problemas associados a modelos declarativos, dos quais ontologias tem se mostrado o mais adequado, permite definir módulos de solução para diferentes problemas que utilizam conhecimento do mesmo domínio. O sistema pode ser desenvolvido de modo incremental e os métodos de solução podem migrar entre diferentes domínios.
                Assim, uma base de conhecimento que suporte diagnóstico de falhas em equipamentos utilizando um método de solução de problemas (de diagnóstico) pode também ser utilizada para projeto, com outro método de solução de problemas. Da mesma forma, métodos de diagnóstico, projeto ou planejamento podem ser aplicados a diferentes domínios, cujas ontologias baseiam-se nas mesmas primitivas.
                Os princípios que norteiam essa forma de desenvolvimento:
                • base de conhecimento que contenha toda a informação do domínio, mesmo aquela não imediatamente necessária à inferência e

                • métodos de solução propostos de forma abstrata e independente para diferentes problemas vêm de encontro às necessidades de bancos de dados inteligentes, de manter a independência entre o conhecimento e métodos de inferência, e a modularidade dos componentes de inferência. 



FONTE:

ABEL,M. Estudo da Perícia em Petrografia Sedimentar e sua Importância para a Engenharia de Conhecimento. Disponível em < http://www.inf.ufrgs.br/bdi/wp-content/uploads/TeseMara.pdf>

CommonKads: Modelo de Conhecimento 1

Já falamos sobre CommonKads aqui. Mas agora faremos um aprofundamento em um de seus modelos:  O modelo de conhecimento. Apresentando os três níveis  existentes: conhecimento de domínio, inferência, tarefa. 

Para a postagem não ficar tão longa trataremos apenas do conhecimento de domínio.

O texto abaixo pode ser encontrado no artigo produzido por Mara Abel. O link estará no final da postagem.

O  modelo do conhecimento separa o conhecimento da aplicação e o conhecimento para solução de problemas (ou metaconhecimento da aplicação). São definidos utilizando-se das mesmas primitivas, porém enquanto o conhecimento da aplicação se refere aos objetos do mundo sobre o qual se deseja raciocinar, o conhecimento para solução de problemas tem por objeto o próprio conhecimento da aplicação. O modelo do conhecimento é descrito em três categorias epistemológicas:
                • Conhecimento do domínio, que descreve o conhecimento declarativo e inferencial do domínio da aplicação;
                • conhecimento de inferência, que descreve os passos básicos de raciocínio que o sistema deve realizar para resolver o problema;
                • conhecimento da tarefa, que descreve quais os objetivos que devem ser alcançados, que informações ou conhecimentos devem ser obtidos para alcançá- los e quais inferências devem ser feitas para atingir esse objetivo.
              
 Conhecimento do domínio
                Descreve as informações estáticas do domínio e os objetos do conhecimento para uma determinada aplicação. O domínio do conhecimento é construído por dois componentes: as estruturas do domínio e as bases de conhecimento (SCHREIBER et al., 1999). As estruturas do domínios descrevem de forma esquemática os tipos abstratos do domínio e como eles se organizam através de hierarquias e relacionamentos. As bases de conhecimento contém as instâncias do conhecimento desses tipos abstratos.
                Diferentemente de modelos de dados, que representam unicamente tipos abstratos que serão instanciados unicamente pelo usuário, um modelo de conhecimento necessita representar determinadas porções do conhecimento que realmente correspondem a instâncias do modelo. Essas instâncias não são instâncias do usuário do sistema, mas instâncias do especialista.
                O conhecimento do domínio refere-se ao conhecimento estático do domínio, ou conhecimento declarativo (como definido no Capítulo de Introdução deste trabalho).
                Descreve os objetos, suas propriedades, e os relacionamentos que compõem a base sobre a qual uma tarefa raciocina.
                As estruturas do domínio são definidas através de três construtos: conceito, relação e tipo-regra.
                • Os conceitos descrevem os objetos ou entidades do domínio da aplicação. São definidos através de seus atributos e valores, sendo que os valores de um atributos são definidos em termos de tipos e de domínio de valores.
                • As relações definem a forma como os conceitos se associam, se agrupam, de dividem ou influenciam uns aos outros. As relações de especialização e  generalização são utilizadas para construir a taxonomia do domínio. Em Common KADS, as relações têm cardinalidade e podem ter atributos associados.
• O  tipo-regra descreve um tipo especial de relação: aquela que descreve as dependências entre instâncias de conceitos com determinados atributos e valores, definindo os caminhos possíveis de inferência do modelo.
                As instâncias dos conceitos do domínio, devidamente valoradas são descritas como expressões do domínio. São também expressões de domínio, as combinações dessas instâncias através de operadores lógicos (E, OU, NÃO) ou aritméticos (<, >, =, +, etc.).
               
                Uma forma usual de descrever esquemas de domínios é através de ontologias de domínio.  Ontologias foram definidas por (STUDER, BENJAMINS e FENSEL, 1998) como (i) um vocabulário de conceitos, que são os termos do domínio; (ii) os tipos que esses conceitos podem ser e que valores podem assumir, ou a tipologia do domínio; (iii) a estrutura de relacionamento entre os termos, especialmente as relações de classe ou partes, ou seja, a taxonomia ou partonomia do domínio. A ontologia do domínio permite definir formalmente um universo compartilhado, sobre o qual todas as operações vão acontecer.
                Ontologias de domínio e métodos de solução de problemas parecem ser as ferramentas adequadas para introduzir funções de inferências em sistemas de gerência de bancos de dados. A representação de ontologias em bancos de dados e a definição de métodos de solução de problemas como primitivas associadas por papéis a essa representação pode permitir a definição de inferências abstratas e independentes de domínio, implementáveis como bibliotecas nos sistemas de bancos de dados. Essas possibilidades vêm sendo discutidas por (GÓMEZ-PÉREZ e BENJAMINS, 1999).
                As bases de conhecimento contém as instâncias dos tipos do conhecimento de uma determinada aplicação, ou seja, dos conceitos, das relações e das regras. Ao contrário dos bancos de dados, as instâncias do conhecimento do domínio, não são instâncias do usuário do sistema, mas instâncias do próprio domínio, como nome de peças, de componentes, regras de diagnóstico, etc. As bases de conhecimento são construídas a partir das expressões do domínio, que descrevem o modelo de domínio, de uma forma potencialmente útil de ser aplicada pelos métodos de solução de problemas. São construídas com o vocabulário do domínio e respeitando as restrições definidas pela conhecimento do domínio. As expressões do domínio podem definir propriedades de objetos, relacionamentos, ou relações entre outras expressões.
 

FONTE:

ABEL,M. Estudo da Perícia em Petrografia Sedimentar e sua Importância para a Engenharia de Conhecimento. Disponível em < http://www.inf.ufrgs.br/bdi/wp-content/uploads/TeseMara.pdf>
 

Exemplos de tentativas que tentam aplicar a engenharia do conhecimento .

A Gestão de Conhecimento demanda métodos de aquisição de conhecimento
para identificar e capturar o conhecimento em suas diferentes fontes. Os modelos
conceituais e formalismos de representação, mesmo quando estão desvinculados de
projetos de sistemas de informação e de conhecimento, oferecem opções para
documentação do conhecimento e sua apropriação.
Por sua vez, a construção de sistemas que apliquem conhecimento humano na
solução de problemas que envolvem alta perícia ainda requer técnicas e ferramentas
mais adequadas para a eliciação, modelagem e formalização do conhecimento do que
as disponíveis atualmente e continua impulsionando a pesquisa na área. A mudança
de abordagem da Engenharia do Conhecimento, acontecida nos anos 90, permite hoje
um melhor domínio no processo de engenharia destes sistemas, quando o
conhecimento envolvido não requer tratamentos de incertezas sofisticados, como
aqueles utilizados pelos sistemas das décadas de 70 e 80. Modelos de conhecimento
mais simples dão suporte a sistemas cuja qualidade e abrangência da solução é muito
inferior à humana, porém permitem a disseminação desse conhecimento a custos
aceitáveis. Dessa forma, um número cada vez maior de aplicações de sistemas de
conhecimento convive no dia a dia das empresas e dão fôlego a uma crescente
indústria de software dedicada a este segmento.Um exemplo disso e descrito logo abaixo.
Projeto de Gestão de Conhecimento para monitoração de processo
contínuo em indústria de papel
A produção de papéis filtrantes desenvolve-se através de um processo
contínuo que exige permanente monitoração dos indicadores de manufatura,
enquanto bobinas de papel são geradas à velocidade de 300 a 400 metros de papel
por minuto. Durante a produção, são monitorados os parâmetros de composição da
massa de celulose, umidade, calor, espessura, entre outras e realizadas ações
corretivas para manter o processo dentro do padrão definido. No final da produção, o
papel produzido é testado a intervalos regulares quanto à gramatura, umidade,
porosidade, direção das fibras, alvura, espessura, presença de marcas no papel. Os resultados desses parâmetros medidos em laboratório definem a classe do papel
produzido, de acordo com uma tabela padrão da indústria.
As deficiências identificadas no estudo deste processo mostraram (Dummer
2003):
 Um pequeno número de técnicos tinham conhecimento do processo de
monitoração expondo a empresa a problemas com o turnover de recursos
humanos;
 As ações de correção do processo eram realizadas de maneira ad hoc pelos
técnicos responsáveis, a empresa não tinha domínio sobre o processo de
monitoração;
 Os padrões de classificação do papel produzido estavam desatualizados, a
definição da classe do papel produzido era uma decisão subjetiva do
laboratorista;
 A qualidade do papel produzido mostrava-se muito abaixo do desejável,
gerando perdas de produto.
O projeto se desenvolveu em duas fases: a eliciação do conhecimento dos
técnicos de monitoração e laboratoristas, e a análise dos resultados para geração de
um conjunto de normas de ações de reparo e uma nova tabela de classificação de
papel, com padrões definidos pela empresa.
A aquisição de conhecimento foi realizada com os quatro técnicos
responsáveis pela monitoração do processo durante os quatro turnos, para evidenciar
modificações das ações de reparo nos turnos diurnos e noturnos. Para cada um dos
técnicos foram aplicadas as técnicas de observação sem intervenção e depois
entrevistas concorrentes, solicitando que fossem justificada as ações de reparo. De
posse dos resultados das entrevistas, foram elencadas as ações de reparo e aplicada à
técnica de grade de repertórios, como mostrado na Tabela 1. A grade de repertórios
(Kelly 1955) é uma técnica de aquisição de conhecimento que relaciona problemas e
ações corretivas, solicitando ao agente que indique a eficiência destas ações. Os
valores que preenchem a tabela indicam a prioridade de aplicação da ação para
corrigir o indicador listado a cada linha (0 para baixa prioridade, 5 para mais alta
prioridade). A grade de repertório permitiu homogeneizar os procedimentos
corretivos e garantir maior cobertura ao modelo de domínio, uma vez que nem todas
as ações possíveis foram aplicadas durante as entrevistas realizadas. O resultado da
aplicação da técnica foi uma tabela única definindo as ações de reparo necessárias a
cada um dos cenários identificados no processo.

Paralelamente, foram entrevistados os laboratoristas (chefe e um dos
membros da equipe) responsáveis pela classificação do papel, somente nos turnos
diurnos. Neste caso foram aplicadas as técnicas de observação e entrevistas
concorrentes, seguidas de entrevistas estruturadas, onde os dados obtidos de
entrevistas anteriores são utilizados para planejar métodos indiretos de extração de
conhecimento. O objetivo era verificar a adequação dos padrões utilizados e de que
forma eram ajustados pelos laboratoristas. O resultado do processo foi um estudo e
redefinição dos padrões a serem utilizados na empresa.
O relatório do projeto de Gestão de Conhecimento descreve o mapeamento
dos insumos de conhecimento utilizados no processo de produção e a nova definição
dos padrões e controles de qualidade para a organização. Uma reengenharia das
tarefas dos trabalhadores de conhecimento responsáveis pela qualidade do papel
produzido (técnicos monitores do processo, laboratoristas de análise dos parâmetros
de qualidade do papel produzido e classificadores dos tipos de papel) permitiu
alinhar o controle do processo com as medidas de qualidade esperada. Como produto
maior, a organização apropriou-se do processo de controle de qualidade diminuindo
a fragilidade associada à dependência dos especialistas do processo.

http://www.posc.org  5

Fornte : Int. J. Knowl. Eng. Manage., ISSN 2316-6517, Florianópolis, v. 2, n. 2, p. 1-35, mar./maio, 2013. 25

ETAPAS NA CONSTRUÇÃO DE BASES DE CONHECIMENTO 3 ( final)

Representação do Conhecimento
Embora modelos conceituais possam ser criados para diferentes finalidades, o
processamento por computador requer que o conhecimento seja descrito em uma
representação formal, ou seja, uma representação não-ambígua e processável por
computador. Para isso, existem as linguagens de representação de conhecimento.
Elas disponibilizam primitivas de representação que buscam capturar e estruturar
conceitos de um determinado domínio, ao mesmo tempo em que retém a sua
representatividade semântica.
As principais linguagens de representação de conhecimento são baseadas em
dois paradigmas dominantes. O paradigma de frames, proposto originalmente por
Marvin Minsky (Minsky, 1975; Brachman e Levesque, 2004) se assemelha em parte
à modelagem orientada a objetos. Nesse paradigma, as entidades do domínio são
representadas na forma de conceitos, propriedades, restrições e instâncias, além de
incluir conceitos como herança e demons sobre propriedades. Já no paradigma de
Lógica de Descrição (DL, do inglês Description Logics) (Baader, Calvanese et al.,
2004), o conhecimento é capturado e formalizado como axiomas lógicos, onde
conceitos são representados por suas propriedades necessárias e suficientes. Em
geral, DL é mais flexível, pois permite combinar conceitos em construções mais
sofisticadas e de maior valor semântico. Uma das principais características da DL são
as suas propriedades computacionais (completude, complexidade, computabilidade)
já bastante exploradas e delimitadas pela literatura científica. Linguagens baseadas
no paradigma DL exploram essas características a fim de apresentar um arcabouço
de modelagem e inferência mais consistente e robusto.
Entre a década de 80 e o início da década de 90 diversas linguagens de
representação foram desenvolvidas tendo como base os paradigmas de frames e DL.
As linguagens CycL (Lenat e Guha, 1990), Ontolingua (Farquhar, Fikes et al., 1997)
e FLogic (Kifer, Lausen et al., 1995) se basearam em uma combinação de frames
com lógica de primeira ordem. Já as linguagens LOOM (Macgregor, 1991)e KL-
Int. J. Knowl. Eng. Manage., ISSN 2316-6517, Florianópolis, v. 2, n. 2, p. 1-35, mar./maio, 2013. 19ONE (Brachman e Schmolze, 1985) utilizavam o paradigma de DL. Embora essas
linguagens atendessem o problema de representação semântica, a sintaxe ainda era
um desafio. Por exemplo, sistemas de conhecimento de maior porte eventualmente
exigiam que se acoplassem subsistemas usando modelos formalizados em linguagens
distintas. O desafio de integrar bases de conhecimento heterogêneas levou ao
desenvolvimento de iniciativas como o protocolo OKBC (K.Chaudhri, Farquhar et
al., 1998). O protocolo OKBC (do inglês, Open Knowledge Base Connectivity)
buscava fornecer um meio eficiente de integração de bases de conhecimento
heterogêneas buscando a integração sintática e semântica dos seus formalismos de
representação. Por exemplo, as linguagens LOOM, CycL e Ontolingua eram
compatíveis com o protocolo OKBC (Gómez-Perez, 2003).
Juntamente com o surgimento da Web surgiram também as linguagens de
marcação, como HTML (Raggett, Hors et al., 1999) e XML (Bray, J. Paoli et al.,
2006). Essas linguagens representavam uma padronização na sintaxe para
representação de informações através dos diversos repositórios de dados existentes
na rede. Por outro lado, a linguagem e a marcação careciam de uma representação
que agregasse semântica aos dados. Essa necessidade deu origem ao conceito de Web
Semântica (Berners-Lee, Hendler et al., 2001) e à segunda geração de linguagens
para representação de conhecimento. Essas linguagens foram definidas com base em
sintaxes padrão (predominantemente XML) e, por isso, resolviam em grande parte o
problema de integração existente nas linguagens de primeira geração. A primeira das
novas linguagens a ter um maior destaque foi o RDF (Beckett, 2004), introduzido
pela W3C (World Wide Web Consortium) em 1999. O RDF é equivalente ao
paradigma de redes semânticas, o que lhe garante bastante flexibilidade de
representação. Em 2002, a W3C propôs a uma extensão de RDF que abarcava
também primitivas do paradigma de frames, denominada RDF Schema (Brickley e
Guha, 2004). Essas primitivas permitem a representação explicita de classes,
propriedades e restrições. A junção de RDF e RDF Schema é conhecida como
RDF(S).
Três outras linguagens foram derivaram de RDF(S): OIL, DAML+OIL e
OWL. A linguagem OIL (Fensel e Motta, 2001) estendeu a capacidade de expressão
Int. J. Knowl. Eng. Manage., ISSN 2316-6517, Florianópolis, v. 2, n. 2, p. 1-35, mar./maio, 2013. 20de RDF(S) com outras primitivas de frames e uma semântica baseada em DL.
DAML-OIL (Horrocks, 2002) incrementou a especificação de OIL com outras
primitivas de representação de conhecimento DL. As experiências com o
desenvolvimento destas duas linguagens levou a criação da linguagem OWL
(Bechhofer, Harmelen et al., 2004), recomendada pela W3C como uma extensão de
RDF(S) para representação de ontologias na Web. Atualmente, OWL é uma das
linguagens de representação de ontologias mais populares. Contribui para isso a
existência de ferramentas livres para criação de ontologias 2 , suporte para persistência
em banco de dados 3 e pacotes para manipulação de OWL por linguagens de
programação 4 ,
Grande parte do esforço por trás do desenvolvimento do OWL foi preservar
algumas propriedades computacionais da DL, como completude computacional e
decidibilidade – desejáveis em mecanismos de classificação –, sem que se perdesse
muito da expressividade semântica da linguagem. A especificação da W3C define
três subconjuntos da linguagem OWL baseado na sua capacidade de representação e
propriedades formais: OWL Lite, OWL-DL e OWL Full. OWL Lite é o subconjunto
com menor expressividade. Possui construtos para representação de taxonomias
simples e algumas restrições sobre propriedades. O OWL-DL estende ao máximo a
expressividade da OWL Lite, mantendo as suas propriedades computacionais de
complexidade e decidibilidade. O conjunto mais completo, OWL Full, permite o
maior nível de representatividade de OWL, permitindo construções de meta-
modelagem. No entanto, em OWL Full não há garantias computacionais para
máquinas de inferência.
Algumas linguagens de representação possuem primitivas para representação
também de conhecimento inferencial. A linguagem CML, por exemplo, que faz parte
da metodologia CommonKADS (Schreiber, Akkermans et al., 2000), dispõe de um
arcabouço para representação de conhecimento declarativo e também de raciocínio.
Enquanto o componente declarativo é representado em um modelo baseado em

frames, o conhecimento inferencial é modelado como métodos de raciocínio
genéricos e reutilizáveis, com uma linguagem procedural de alto nível.
Atualmente, a linguagem OWL tem sido a mais utilizada para aplicações da
WEB Semântica e para formalização de ontologias, embora tenha construtos ainda
limitados para a representação do significado dos conceitos. A consolidação de
ferramentas como PROTÉGÉ, que auxilia o processo de construção e formalização
dos modelos, tem auxiliado grandemente na sua disseminação. CommonKADS e
suas ferramentas, por sua vez, têm sido adotadas no meio empresarial como suporte
a engenharia de software de sistemas de conhecimento.
Paralelamente, os estudos sobre Ontologias de Fundamentação têm requerido
linguagens mais expressivas e com ancoramento simbólico mais restrito do que as
acima descritas. O desafio do estado da arte em representação de conhecimento é a
definição de linguagens ontológicas mais expressivas e de maior granularidade nos
seus construtos de representação, porem que garantam a computabilidade e
decidibilidade da DL e suas linguagens derivadas.
2
Protégé Ontology Editor (http://protege.stanford.edu/)
Jena (http://jena.sourceforge.net/)
4
OWL API (http://owlapi.sourceforge.net/) e LinqToRdf (http://code.google.com/p/linqtordf/)
3

Fonte:Int. J. Knowl. Eng. Manage., ISSN 2316-6517, Florianópolis, v. 2, n. 2, p. 1-35, mar./maio, 2013. 2

ETAPAS NA CONSTRUÇÃO DE BASES DE CONHECIMENTO 2

 Modelagem conceitual
O resultado do estudo do domínio e da aplicação das técnicas de aquisição de
conhecimento é um conjunto de conceitos, relacionamentos, regras, procedimentos e
métodos, além de requisitos de sistemas. Essas informações geram relatórios não
estruturados que irão compor a documentação total do projeto. Os conceitos,
relacionamentos, regras e métodos, por sua vez darão origem ao modelo conceitual,
no nível do conhecimento, que será posteriormente formalizado através de uma ou
mais abordagens de representação, no nível simbólico. A modelagem conceitual se
refere, portanto, a captura semântica do domínio, ou a construção da
conceitualização ontológica.
A construção do modelo conceitual é a etapa-chave da construção de um
modelo de conhecimento ou de uma ontologia de domínio. O engenheiro de
conhecimento irá definir quais porções do domínio devem ser modeladas e quais
permanecem para etapas futuras ou apenas como documentação. Os conhecimentos
selecionados serão então aproximados às primitivas (ou construtos) de representação
que mais expressam seu significado.
As primitivas de representação são construtos semânticos universais ou semi-
universais a todas as linguagens de representação e devem possuir uma relação única
com os elementos da sintaxe das linguagens. Os principais construtos utilizados para
modelagem conceitual (Gruber, 1995; Guarino, 1995) podem ser resumidos por:

onde

descreve o conjunto de classes ou conceitos que representam elementos de
um domínio e que preservam uma relação 1:1 com objetos a serem modelados. Seja
um conjunto de atributos e
um conjunto de codomínios de valores que um
atributo pode assumir em um dado modelo, é possível definir que para cada
tem-se que
{(
) |
} .
,
é um conjunto de relações que
representam tipos de associações entre elementos do domínio. é um conjunto de
relações especiais que mapeiam um ou mais elementos do domínio para um único
elemento e para as quais podemos atribuir semântica específica. Funções podem
modelar regras para dar suporte a inferência. O conjunto
agrupa axiomas que
permitem definir declarações sobre os demais elementos do modelo que restringem o
domínio. Por fim,
é um conjunto de instâncias que representam os indivíduos do
domínio a ser modelado, normalmente mantendo uma relação 1:1 com os objetos
existentes no mundo real, sejam eles concretos ou não.
Os relacionamentos podem ser estruturais (que auxiliam na organização do
próprio domínio) ou eventuais, que descrevem relacionamentos entre algumas
classes apenas. Os relacionamentos estruturais mais importantes são os taxonômicos
(classe-subclasse) e os mereológicos ou partonômicos (classe-componente)
(Fernández-Breis e Martínez-Béjar, 2002). Associações são relacionamentos que
podem ter semântica definida pelo modelador.
Além dessas primitivas, diferentes autores estudam novas primitivas de
modelagem de conhecimento. Mastella em (Mastella, Abel et al., 2005) estendeu o
conjunto de primitivas para modelar características espaço temporais do domínio,
definindo, incluindo primitivas tais como eventos, para identificar acontecimentos
que alteram o domínio; relações temporais, que descrevem as relações de ordem
entre os eventos (antes, depois, durante, etc); e relações espaciais, que descrevem as
relações de posição espacial entre as classes do modelo.
A construção de um modelo capaz de capturar conhecimento baseia-se
fortemente na escolha correta dos construtos de modelagem capazes de expressar o
conhecimento do domínio e perfeita compreensão do seu significado. A intensa
pesquisa de novas primitivas de modelagem e sua tradução para linguagens de
representação demonstram as dificuldades em expressar objetos cognitivos de
maneira formal. Os maiores avanços têm acontecido no estudo e proposição de
Ontologias de Fundamentação que tem inovado em duas frentes:
(1) através
da
especialização
das
primitivas
de
modelagem
que
tradicionalmente tem definido as linguagens de representação;
(2) pela restrição das possibilidades de ancoramento simbólico dessas
primitivas aos objetos do mundo, ao definir as propriedades essenciais
que esses objetos devem possuir para serem por ela representados.
Nessa linha, são notáveis os trabalhos de Guarino e Welty (Guarino e Welty,
2002; Guarino e Welty, 2004) ao definirem a metodologia http://www.ontoclean.org/ . A
metodologia oferece um guia para a escolha das primitivas de modelagem com base
em noções filosóficas de análise metafísica e que, por sua vez, definem
metapropriedades que impõem restrições para a construção dos modelos. Os autores
definem as metapropriedades de essência, rigidez, identidade e unidade para a análise
dos conceitos e de suas representações, desta forma, auxiliando na separação da
noção de objetos concretos (estátua) e de sua substância (cerâmica), de objetos com
identidade própria (pessoa) de outros que tem sua identidade criada por outros
objetos (um estudante é um conceito que depende da existência de uma escola e de
uma pessoa para existir).
As metapropriedades definidas por Guarino e Welty propiciaram o
aperfeiçoamento das linguagens de ontologias, ao permitir a especialização das
primitivas de representação em construtos mais precisos e de significado mais
restritos. A Unified Foundational Ontology (UFO) definida por Giancarlo Guizzardi
(Guizzardi, 2005) cria uma hierarquia de metaconstrutos de representação de objetos,
relações e propriedades especializando esses construtos a partir de noções filosóficas
de propriedades ontológicas. A UFO(A) define os construtos para a representação de
objetos que persistem no mundo (continuantes), enquanto a UFO(B) permite a
representação de objetos temporais (ocorrentes), tais como eventos, participantes e
relações temporais, e a UFO(C) representa os objetos sociais e suas relações (por
exemplo, organizações e contratos).
Mesmo não dotada de linguagem de
representação passível de compilação, a UFO tem influenciado um grande numero de
trabalhos de pesquisa em ontologias no Brasil.
A Figura 3 apresenta uma representação diagramática de um modelo
conceitual parcial de uma loja de ferragen baseado na UFO(A). Os retângulos
rotulados com kind representam objetos com identidade ontológica enquanto aqueles
com role indicam conceitos cujas instâncias são instâncias de algum kind. Enquanto
os arcos representam relações, os retângulos rotulados com relator materializam os
conceitos que dão significado e aridade a essas relações. Um modelo conceitual
presume a especificação completa do conjunto dos atributos e domínios dos
conceitos, portanto o conjunto de duplas atributo/domínio para cada um dos
conceitos, não representado no diagrama, deve ser descrito como parte do modelo.
Um modelo conceitual, por outro lado, não é dependente da escolha de sua
apresentação. Utilizar representações diagramáticas ou textuais, ou mesmo ambas,
depende da conveniência do modelador.
Figura 3 – Representação diagramática de uma parte de modelo conceitual para uma ferragem baseada
na UFO(A).
Modelos conceituais não têm por objetivo apenas a descrição abstrata do
conhecimento declarativo. Novas abordagens buscam a representação do
conhecimento inferencial com modelos conceituais no nível do conhecimento. Entre
as mais promissoras estão as estruturas de inferência de Common KADS (Schreiber,
Akkermans et al. 2000), os padrões cognitivos de Gardner (Gardner, 1998) e os
Métodos de Solução de Problemas (Gómez-Pérez e Benjamins 1999; (Fensel e
Motta, 2001)}. As três abordagens têm em comum a proposição de uma
representação diagramática de uma sequência abstrata de passos de inferência sobre
conceitos do domínio. Métodos de Solução de Problemas atingiram uma maior
especificação nos modelos ao incluir na definição dos métodos a competência (o quê
o método pode realizar); a descrição operacional do método em termos dos papéis do
conhecimento associados aos conceitos, as ações de inferência e a especificação de
controle; e os requisitos e suposições de aplicação do método. Cada uma das
abordagens busca definir um padrão de raciocínio específico a uma classe de
problemas, porem genérico em relação a reusabilidade em diferentes domínios. Silva
em (Silva, 2001) detalha a definição e aplicação de um método de solução de
problemas para interpretação de ambientes diagenéticos de rochas siliciclásticas.

Fonte: Int. J. Knowl. Eng. Manage., ISSN 2316-6517, Florianópolis, v. 2, n. 2, p. 1-35, mar./maio, 2013. 2

ETAPAS NA CONSTRUÇÃO DE BASES DE CONHECIMENTO 1


Embora a Engenharia de Conhecimento se preocupe com todos os aspectos
do desenvolvimento de um sistema de conhecimento, a construção de bases de
conhecimento mostra-se o maior desafio. Uma base de conhecimento materializa a
apropriação do conhecimento de solução de problemas de uma organização e,
portanto, tem valor per si.
Bases de conhecimento podem ser desenvolvidas para formalizar o
conhecimento e capturá-lo, permitir o compartilhamento de experiências e
habilidades em uma organização ou dar suporte ao raciocínio de sistemas
especialistas.
A construção de uma base de conhecimento se dá através de três etapas: a
aquisição do conhecimento, a modelagem conceitual e a representação do
conhecimento. Essas etapas não são estanques e independentes, mas desenvolvem-se
na forma de uma espiral de resultados crescentes. A aquisição se refere à
compreensão do domínio e da cognição, a segunda implica em escolhas de visões e
porções do conhecimento a ser capturado, enquanto a terceira se refere à conexão dos
modelos no nível do conhecimento para aqueles do nível simbólico.

  Aquisição de conhecimento
A aquisição de conhecimento é o processo de extrair, estruturar e organizar o
conhecimento de uma ou mais fontes. É a atividade inicial do processo de engenharia
de conhecimento, realizada por um engenheiro de conhecimento, que é o agente que
exerce o duplo papel de compreender o domínio da informação e de ser capaz de
fazer julgamentos em relação às limitações de implementação do sistema. É a tarefa
mais crítica de um projeto de Gestão de Conhecimento, pois ainda não existe uma
metodologia confiável de aplicação que resulte em um modelo do domínio e dos
processos cognitivos de seus agentes. Mesmo assim, é uma tarefa indispensável para
que as informações essenciais sejam coletadas e o conhecimento-chave fique
disponível para ser organizado, representado, implementado e validado através de
um sistema.
Mastella em (Mastella, 2004) separa as técnicas de aquisição de
conhecimento de acordo com as fontes do conhecimento, sejam elas não-
documentadas ou documentadas (livros, documentos, mapas, diagramas, sistemas,
filmes); de acordo com o uso ou não do suporte do computador ao processo de
aquisição (Boose, 1991); e de acordo com o tipo do conhecimento a ser adquirido. O
termo eliciação é utilizando quando o conhecimento é não-documentado e deve ser
adquirido de fontes humanas, basicamente através de entrevistas, análise de
protocolos (registros de discursos, diálogos, etc) ou com suporte de computador
(Cooke 1994). A aquisição de conhecimento de fontes documentadas pode ser feita
utilizando diferentes abordagens, como análise manual de documentos, ou técnicas
semi-automáticas ou automáticas, como algoritmos de extração de conteúdo de
documentos, mineração de dados, raciocínio baseado em casos, aprendizado de
máquina, entre outras. Cada uma dessas abordagens constitui uma área de pesquisa
em si, enquanto a eliciação de conhecimento é tópico de estudo inserido na
Engenharia de Conhecimento e da Ciência da Cognição.

Fonte:Int. J. Knowl. Eng. Manage., ISSN 2316-6517, Florianópolis, v. 2, n. 2, p. 1-35, mar./maio, 2013. 2

OntoKEM

    Como já mencionado em outras postagens sabemos que na computação ontologia é definida como “uma especificação formal e explícita de uma conceitualização compartilhada” (GRUBER, 1993; BORST, 1997). E que a pesquisa sobre esta área foi incorporada à Engenharia do Conhecimento (EC), visto o seu potencial de aplicação como meio de formalizar, representar, utilizar e compartilhar
conhecimento. Os campos da integração de informação, recuparação de informação na web e gestão do conhecimento são alguns dos favorecidos pelo uso de ontologias(STUDER et al, 1998).
    Apesar de em diversos estudos propostas para a metodologias de construção de ontologias Fernandez-López & Gómez-Peréz (2002) comentam que não há metodologia completamente madura para o propósito de construção de ontologias. Em cada metodologia existem atividades que deixam de estar compreendidas. Sendo assim os autores afirmam que uma combinação de metodologias se tornaria para a construção de ontologias. 

Esse conceito/ideia se tornou o pilar do ontoKEM como ferramenta de Engenharia do Conhecimento para construção de ontologias, baseado-se nas metodologias 101 (NOY & MCGUINNESS, 2008), On-to-Knowledge (FENSEL & HERMELEN, 2008) e METHONTOLOGY (GOMÉZ-PERÉZ et al, 2004). A seguir enumera-se as
contribuições de cada metodologia ao ontoKEM relacionada por um grupo de pesquisa da UFSC:
·         On-to-Knowledge: metodologia que utiliza questões de competência como
modo simples e direto para determinar o escopo de uma ontologia e permite
identificar conceitos, propriedades, relações e instâncias. O ontoKEM faz uso de
questões de competência na compreensão da aplicabilidade da ontologia, e
disponibiliza um artefato para documentá-las.
• METHONTOLOGY: metodologia que formaliza a construção de ontologias
através de uma rica gama de artefatos de documentação (documentos-texto e
quadros). Estes artefatos são usados como modelos de documentos no
ontoKEM.
• Guia 101: metodologia que prega a construção de ontologias num processo
iterativo de sete passos (determinar o escopo da ontologia, considerar o reuso,
listar termos, definir classes, definir propriedades, definir restrições e criar

instâncias). Este processo iterativo é adotado no ontoKEM.


Os pesquisadores ainda afirmam que "o grande apelo de utilização do ontoKEM reside no seu processo de desenvolvimento e principalmente na gama de artefatos de documentação (relatórios e gráficos) que a ferramenta gera para a aquisição e formalização do conhecimento. Este fato é de grande valia, principalmente, atestado pelos engenheiros do conhecimento e engenheiros elétricos envolvidos no atual projeto de pesquisa para o desenvolvimento da ontologia de domínio para a gestão da média tensão. Ressalta-se ainda que ontoKEM oferece a opção Exportar versão gera o arquivo OWL da ontologia para fases posteriores. Assim, é possível realizar implementação/utilização emoutras ferramentas computacionais, como por exemplo, a API Jena e Protégé. "

Para ler sobre os resultados obtidos por este grupo de pesquisa, você pode ler clicando aqui que redireciona para o artigo produzido por eles.

FONTE: 
RAUTENBERG, S. ; GAUTHIER, F. A. O. ; LOTTIN, P. ; DUARTE, C. E. J. ; TODESCO, J. L. OntoKEM: uma ferramenta para construção e documentação de ontologias. Disponível em <http://www.lbd.dcc.ufmg.br/colecoes/ontobras/2008/0014.pdf>



Definição das ferramentas da Engenharia do Conhecimento


Como ja visto anteriormente, o Data Warehouse é uma das ferramentas utilizadas na Egenharia do Conhecimento. Abordaremos agora algumas outras ferramentas importantes:

Knowledge-Discovery in Databases (KDD)

A partir da necessidade de uma análise mais apurada da informação gerada surgiu na década de 90 o conceito de descoberta de conhecimento e os processos que possam conduzir a isso. A descoberta de conhecimento pode ser dividida em duas vertentes: KDD e KDT. Esta divisão tem como base o conteúdo que será analisado, em que, se o conteúdo foi previamente organizado e estruturado o processo de descoberta utilizado será o KDD. Caso o conteúdo encontre-se disperso em documentos textuais o processo utilizado será o KDT.

Estes processos evidenciam informações que provavelmente não seriam observadas sem a utilização dos mesmos. O processo de descoberta do conhecimento pode se dar através de técnicas de descoberta de conhecimento em bases de dados, ou KDD. A chamada sociedade moderna, inegavelmente, produz uma grande quantidade de informações, que são armazenadas em bases de dados. As técnicas de KDD são, portanto, responsáveis pelo processo de "seleção, pré-processamento e a transformação dos dados, bem como a aplicação de algoritmos, a interpretação dos resultados e a geração de conhecimento" com vistas à "descobrir padrões relevantes na crescente massa de dados" (GONÇALVES et al, 2001, p. 2). [23]

Figura 1 - Etapas do KDD



Fonte: GONÇALVES et al, 2001, p. 3.

Trata-se de um processo interativo, podendo ser executado quantas vezes forem necessárias para a obtenção de conhecimento. As três primeiras fases dizem respeito à qualidade dos dados, sendo elas: (1) Seleção: Captura do conjunto ou amostra de dados a serem manipulados; (2) Pré-processamento: Limpeza dos dados, tais como ruídos, inconsistências,dados inexistentes ou incompletos, que podem gerar padrões distorcidos; (3) Transformação: Eliminação de atributos redundantes, padronização do conjunto de valores de domínio das variáveis. Estas fases convergem para a formação de uma base de dados concisa, em que dados de diferentes fontes e em diferentes formatos sejam coletados e armazenados em um único conjunto de dados. (4) Mineração de Dados: trata-se da aplicação de algoritmos para extração de padrões de relacionamento entre os dados. Finalizando o processo é aplicada a fase (5) Interpretação/Avaliação dos resultados por especialistas no negócio, que avaliam os padrões identificados em função dos objetivos iniciais. [24]

 Knowledge Discovery in Text (KDT)

A descoberta de conhecimento em textos (KDT) pode ser entendida como o estudo e a prática de extrair informações, a partir de bases textuais, usando os princípios da linguística computacional. [25] A KDT é composta por diversas atividades, como pré-processamento (classificação) dos documentos, extração de informação, reconhecimento de entidades, extração de relacionamentos, agrupamento de textos, geração de hipóteses, entre outras. Grande parte dessas atividades é desenvolvida com o uso das técnicas de Processamento de Linguagem Natural (PLN) e análise estatística.[26] A figura a seguir permite visualizar o processo de KDT:




Figura 2 - Processos do KDT [27]


Pode-se observar então que o processo de KDT é semelhante ao KDD, inclusive nas fases de mineração e interpretação/avaliação, porém os passos do KDT possuem pequenas adaptações para que possa ser aplicado em informações não estruturadas, sendo que as principais diferenças ocorrem nas etapas de extração de informações e no pré-processamento. [27]

Algoritmos Genéticos

Os Algoritmos Genéticos (AG) são modelos computacionais que utilizam os conceitos de Munakata (2008 apud RAUTENBERG, 2009) sobre a teoria da evolução das espécies, onde os seres mais adaptados ao seu ambiente tendem a se perpetuar através dos seus descendentes. Nos Algoritmos Genéticos a seleção ocorre na qualidade das respostas aos problemas, podendo até existir a mutações de soluções. Assim, o algoritmo privilegia as possíveis soluções ótimas no conjunto de soluções possíveis. Esse algoritmo é bastante utilizado nos problemas de alocação de recursos. [28]

O AG é um método da Computação Evolucionária, foi concebido e desenvolvido por John Holland na década de 70, e popularizado por David Goldberg, em 1989. Com base nos trabalhos de John Holland, John Koza na década de 90 desenvolveu, como extensão do AG, a teoria da Programação Genética (PG).

A Computação Evolucionária é uma área da ciência da computação inspirada nos princípios da evolução natural, de Charles Darwin (1859), em seu livro “A Origem das Espécies”. Os princípios da Teoria da Evolução são usados para pesquisar soluções aproximadas para a solução de problemas usando o computador. O principal requisito para a aplicação da computação evolucionária é que a qualidade da possível solução possa ser calculada. Assim, poderia ser possível classificar algumas possíveis soluções visando à qualidade da solução e se a solução resolve o problema. [29]

O AG apresenta um grupo de soluções candidatas, denominado população, na região de soluções. Por meio de mecanismos como a seleção natural e o uso de operadores genéticos, tais como a mutação e o cruzamento, os cromossomos com melhor aptidão são encontrados. A seleção natural garante que os cromossomos mais aptos gerem descendentes nas populações futuras. Os operadores de cruzamento combinam genes de dois ou mais cromossomos de pais previamente selecionados para formar novos cromossomos, os quais têm grande possibilidade de serem mais aptos que os seus genitores. [30] Um algoritmo genético elementar realiza a seguinte seqüência de operações: [31] Passo 1: Gerar a população inicial após escolher o tipo de codificação do cromossomo;

Passo 2: Calcular a função objetivo de cada indivíduo da população;

Passo 3: Implementar a Seleção;

Passo 4: Implementar a Recombinação ou Cruzamento;

Passo 5: Implementar a Mutação;

Passo 6: Avaliar os indivíduos sobreviventes;

Passo 7: Se o critério de parada não for satisfeito, repetir os passos dois a seis.

A PG evolui uma população de programas de computador, que são possíveis soluções para um problema de otimização, usando o princípio darwinista da sobrevivência dos mais aptos. Ela usa as operações biologicamente inspiradas, como reprodução, cruzamento e mutação. Cada programa ou indivíduo na população (cromossomo) é geralmente representado como uma estrutura de dados do tipo árvore, composta de funções e terminais adequados para o domínio do problema. Cada gene é representado por uma informação que pode ser um atributo ou o valor do atributo. [32] A Linguagem de Programação LISP ou LISt Processing, concebida por John McCarthy em 1958, tornou-se a principal linguagem dos estudos em Inteligência Artificial, sendo também a linguagem original da programação genética. O algoritmo da PG é simples, semelhante ao do AG e pode ser resumido, conforme Koza (1992), como mostrado a seguir: [33] 1. Gerar uma população inicial de composição randômica de funções e terminais do problema (programas de computador);

2. Iterativamente realizar os seguintes passos até que o critério de terminação seja satisfeito;

2.1. Executar cada programa da população e atribui-lhe um valor de fitness, que expressa o quanto ele resolve o problema;

2.2. Criar uma nova população de programas de computador e aplicar as operações genéticas nos indivíduos escolhidos com probabilidade baseada na fitness:

2.2.1. Copiar os programas de computador existentes para a nova população;

2.2.2. Criar novos programas de computador pela recombinação genética de partes escolhidas de dois programas existentes;

3. O melhor programa de computador que apareceu em qualquer geração é designado como o resultado da programação genética. Este resultado pode ser uma solução (ou uma solução aproximada) para o problema.

Redes Neurais Artificias

Redes neurais artificiais (RNAs), também denominadas de Redes Neuronais, são modelos computacionais inspirados em estruturas neurais biológicas e formadas pela interconexão e processamento (conjunto e paralelizável) de muitos elementos computacionais, denominados de neurônios artificiais.

RNAs são baseadas no paradigma conexionista de Inteligência Artificial e representam sistemas extremamente simples, quando comparadas às redes neurais biológicas. No entanto, de acordo com (HAYKIN, 1999)[34], a semelhança de RNAs com o cérebro biológico se dá na medida em que o conhecimento é adquirido do ambiente através de um processo de aprendizado e as forças conectivas entre os neurônios são utilizadas para armazená-lo.

Em termos gerais, uma RNA aprende um modelo do ambiente de dados, sendo que estes dados são processados pela rede de neurônios com adaptação de seus parâmetros internos para representar as características observadas/aprendidas do ambiente. Os sinais de entrada processados e transmitidos entre os neurônios artificiais obedecem a um algoritmo de aprendizado que realiza o ajuste dos pesos na rede, representando o “conhecimento” utilizado para produzir as respostas de saída. O denominado "conhecimento adquirido" pela RNA pode ser interpretado como um modelo codificado por meio do processo de aprendizado e utilizado para responder aos novos dados de entrada do ambiente ou domínio de atuação.


De forma simplificada, segundo (FAUSETT, 1994)[35] RNAs têm sido desenvolvidas, com base nas seguintes suposições:
o processamento da informação em uma RNA ocorre em muitos elementos simples, denominados de neurônios;
a transmissão de sinais entre os neurônios é feita por meio de conexões
cada conexão possui um peso associado que, em uma RNA típica, multiplica o sinal transmitido
cada neurônio aplica uma função de ativação (usualmente, não-linear) ao somatório de suas entradas ponderadas para determinar o seu sinal de saída.

Ressalta-se que estas são suposições gerais e que existem diversas configurações para RNAs que diferem em relação aos aspectos acima.


Uma RNA pode ser descrita conforme:
estrutura, camadas de neurônios, número de neurônios por camada, conectividade entre os neurônios componentes, direção de propagação dos sinais
o cômputo de funções que ocorre em cada neurônio
o paradigma de aprendizado adotado, sendo que os mais comuns são o Aprendizado supervisionado e o Aprendizado não-supervisionado
o tipo de aprendizado para ajuste de pesos que é incorporado ao algoritmo da RNA: baseado na regra de Hebb; baseado em memória; aprendizado de Boltzmann; aprendizado por correção de erro e aprendizado competitivo (HAYKIN, 1999)[34].

Para implementação de uma rede neural são definidos, inicialmente, os requisitos da aplicação e levantadas as características do ambiente de dados para definição dos conjuntos de dados a serem utilizados. Tradicionalmente, o projeto de uma RNA envolve um processo de treinamento e a realização dos testes para verificação de desempenho conforme critérios definidos. Os dados apresentados à rede são divididos em um conjunto de treinamento e um conjunto de teste (podendo ser utilizado um conjunto adicional para validação), sendo estes conjuntos de dados independentes entre si para verificação da capacidade de generalização da rede diante de dados novos do domínio. O conhecimento prévio disponível do domínio pode ser utilizado para um pré-processamento dos dados e orientar um pós-processamento das saídas da rede. A tarefa a ser executada (aproximação de funções, predição, classificação, formação de agrupamentos, otimização, controle) orienta a escolha por um modelo básico de rede, conforme o paradigma e tipo de aprendizado, conectividade e estrutura básica da rede, tipos de neurônios e funções de ativação, e modo de operação requerido (off-line ou on-line). A composição do vetor de entrada e forma de representação dos dados de entrada e de saída, a forma de interpretação das respostas da rede, os critérios e medidas para avaliação de desempenho são aspectos dependentes da aplicação.

As classes de problemas para aplicações de RNAs podem ser divididas em: classificação de padrões, predições sequenciais, reconhecimento de padrões, aproximação de funções, memórias associativas, otimização, formação de agrupamentos (clustering), identificação e controle de sistemas(FAUSETT, 1994)[35]; (HAYKIN, 1999) [34]. Existe uma diversidade [35], [34] de modelos de RNAs (com suas arquiteturas e algoritmos básicos) e as características de cada modelo determinam seu grau de adequação a cada classe de problema. Como exemplos de RNAs podem ser citadas algumas: Redes Multicamadas (Multilayer Perceptrons - MLP) treinadas com Algoritmo Backpropagation; Mapas auto-organizáveis SOM de Kohonen; redes RBF (Radial-Basis Function); LVQ (Learning Vector Quantization); redes ART e ARTMAP; redes de Elman e Jordan; rede de Hopfield; redes recorrentes treinadas por meio de Backpropagation.

RNAs podem ser, também, integradas com outras técnicas e abordagens de inteligência artificial, como algoritmos genéticos, lógica fuzzy (ZADEH, 1965) [36]; (KLIR e YUAN, 1995) [37], métodos simbólicos, sistemas especialistas e raciocínio baseado em casos, formando sistemas híbridos capazes de maior eficiência e eficácia diante de determinados problemas.

Named Entity Recognition (NER)

Segundo Zhu, Gonçalves e Uren (2005)[38], reconhecimento de entidades nomeadas – em inglês Named Entity Recognition (NER) – é uma técnica da área de extração de informação (EI) que tem como função reconhecer entidades em textos de diferentes tipos e de diferentes domínios.

Nédellec e Nazarenko (2005)[39] afirmam que a utilização de sistemas de extração de informação pode ser usada para popular ontologias. Textos são uma fonte de conhecimento para desenhar e enriquecer ontologias, em que os termos extraídos da base de documentos podem ser possíveis instâncias e classes das ontologias. Uma das técnicas usadas para extrair termos de documentos é a de reconhecimento de entidades nomeadas (em inglês Named Entity Recognition – NER).

Ceci et al. (2010)[40] explicam que existem muitas técnicas automáticas que podem auxiliar no processo de reconhecimento de entidades, tais como a aplicação de expressões regulares (técnica muito usada para identificar datas, e-mails, etc.), o uso de dicionários (thesauros), as heurísticas, que são regras conforme o padrão léxico e sintático do idioma, os modelos estatísticos e também o uso de ontologias.

Para Negri e Magnini (2004)[41], NER tem como tarefa identificar e categorizar entidades mencionadas (pessoas, organizações, locais), expressões temporais (hora e data) e alguns tipos de expressão numérica (percentual e valor monetário) escritos em um texto. Segundo Kozareva (2006)[42], a tarefa de identificar as entidades consiste em determinar suas fronteiras, ou seja, qual o seu início e seu fim. Isso é importante para entidades compostas de mais de uma palavra, como, por exemplo, “Universidade Federal de Santa Catarina”. A técnica de extração de entidades pode ser vista como um problema de classificação em que as palavras são assinadas para uma ou mais classes semânticas. Quando a entidade encontrada não pode ser assinada para uma classe específica, é atribuída a uma classe “geral” (KONCHADY, 2006, p. 156-157)[43].