A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

INTELIGÊNCIA ARTIFICIAL E SISTEMAS ESPECIALISTAS Professor Walcyr.

Apresentações semelhantes


Apresentação em tema: "INTELIGÊNCIA ARTIFICIAL E SISTEMAS ESPECIALISTAS Professor Walcyr."— Transcrição da apresentação:

1 INTELIGÊNCIA ARTIFICIAL E SISTEMAS ESPECIALISTAS Professor Walcyr

2 Foi somente a 50 anos que o computador digital ENIAC, abreviatura de Integrador e calculadora numérico-eletrônicos foi construído na Universidade da Pensilvânia. O ENIAC pesava 30 toneladas e ocupava 1.800 m2 de área. A informação era armazenada em 17 mil tubos a vácuo.

3 Para mantê-los funcionando havia 6 técnicos, tempo integral às voltas com o reparo das peças que explodiam como fogos de artifício. O ENIAC precisava ser "debugger" literalmente porque o brilho dos tubos atraia mariposas que deixavam os circuitos viscosos.

4 Em 1947, o transistor foi inventado nos Laboratórios Bell. Baseado na física de semicondutores como o silício e o germânio, o transistor era menor, mais leve, mais seguro, mais durável e gastava menos energia do que os tubos à vácuo, e não atraiam mariposas. Além de serem úteis à computação, foram usados na criação da rádios portáteis que passaram a ser vendidos em 1954.

5 Claro que a popularidade do rádio a transistor deve-se também ao Rock’n’Roll. No final dos anos 50, transistores e computador avançaram bastante quando foi inventado o circuito integrado ou microchip, um pedaço de silício que incorporava milhões de transistores acionando uma industria global multimilionária.

6 Em 1974, a INTEL introduziu um microchip com poder de cálculo suficiente para formar a memória do primeiro PC. O ALTAIR era difícil de montar, não funcionava perfeitamente, não tinha memória externa, impressora ou teclado. Tinha uma capacidade de memória limitada e para a entrada de dados usava-se pinos. Ainda assim o ALTAIR atraiu colecionadores, especialistas que percebiam que estavam prestes a participarem de uma revolução tecnológica.

7 Os especialistas estavam certos. Hoje, quase 30 anos após o ALTAIR, mais de 200 milhões de PCs foram vendidos somente nos EUA. Mesmo sendo mais rápidos processando dados como jamais conseguiram, ainda existe a frustração do computador não aprender, nem pensar como homem.

8 Inicialmente, o uso dos computadores foi dirigido a tarefas bem estruturadas e formalizadas, como cálculos numéricos e manipulação de grandes volumes de dados. São tipos de tarefas nas quais as máquinas apresentam um desempenho muito superior ao humano na resolução. Porém, quando estendeu-se a área de aplicação dos computadores a tarefas de natureza simbólica, que para os humanos são de resolução natural, como a compreensão de linguagens naturais e imagens, planejamento, dedução ou a solução de problemas que apresentam complexidade exponencial, o desempenho dos computadores foi muito baixo, devido a grande complexidade para a compreensão dessas tarefas e a formulação de uma solução computacional.

9 Criar uma máquina semelhante ao homem capaz de pensar, sempre foi um fascínio que vem atraindo cientistas do mundo obstinados à realização deste sonho. Os mais antigos escritores, já esboçavam robôs e andróides em suas obras de ficção. Hoje existem alguns sistemas e agentes capazes de simplificar, melhorar e aumentar a produtividade em tarefas outrora exclusivas a seres humanos. As máquinas denominadas inteligentes, já existem, entretanto estão restritas a laboratórios e centros de pesquisas e apesar de todos os avanços alcançados nesta área, os humanos estão ainda muito distantes da criação de uma máquina capaz de pensar, como estamos acostumados a ver nas obras literárias de ficção científica.

10 Desde o início dos anos oitenta, aplicações de Inteligência Artificial constituem um dos setores de maior crescimento no mercado de tecnologia de informática. A taxa de crescimento revela, não apenas a maturação da tecnologia, mas também a demanda de investimentos em hardware, software e recursos humanos de forma a criar uma infra-estrutura propícia ao desenvolvimento da área. Inteligência Artificial (IA) é simplesmente uma maneira de fazer o computador pensar inteligentemente.

11 COMO FUNCIONA A INTELIGÊNCIA HUMANA? Não sabemos ainda exatamente como a mente funciona, mas com os conhecimentos adquiridos pelos cientistas, podemos fazer certas suposições sobre como pensamos e aplicar essas suposições ao projeto dos programas de inteligência artificial.

12 OBJETIVOS Todo o pensamento nos ajuda a conseguir alguma coisa. Quando um despertador toca de manhã, um processo de pensamento deve ser empregado para guiar sua mão até ele e desligá-lo. Não é uma reação automática; buscou-se uma resposta específica para a solução de um determinado problema. Os resultados finais para os quais todos os nossos processos de pensamento estão dirigidos são chamados Objetivos. Uma vez tendo alcançado o objetivo de travar o despertador, sua mente imediatamente se confrontará com outros objetivos a serem alcançados, como, por exemplo, ir ao banheiro, escovar dentes, se vestir, preparar e tomar café da manhã e assim por diante.

13 OBJETIVOS Todos os objetivos alcançados podem levar à um objetivo maior, que é chegar ao trabalho na hora certa. Nenhum dos pensamentos que o guiam para esse resultado final é aleatório ou arbitrário. Eles foram ativados porque em cada etapa do caminho você tinha um objetivo específico em mente. Quando comprometida com a mais simples tarefa ou como a mais complexa atividade mental, a mente se concentra fortemente em um objetivo. Sem objetivos, não temos razão para pensar.

14 ALGUNS EXEMPLOS DE OBJETIVOS: 1.Traçar o menor cominho entre São Paulo e Rio de Janeiro. 2.Decidir o melhor tipo de vinho para se beber com um certo peixe. 3.Aprender a amarrar os sapatos. 4.Saber determinar se meu filho entende os conceitos de aritmética. Quando se projeta um sistema de IA, o objetivo do sistema deve sempre ser mantido em mente. Lembre-se: Não fazemos as coisas porque pensamos; pensamos porque existem coisas que temos que fazer.

15 FATOS E REGRAS Todos sabemos que a mente humana possui um amplo estoque de conhecimentos relacionados a uma incontável lista de objetos e idéias. Nossa sobrevivência depende de nossa habilidade em aplicar esses conhecimentos em qualquer situação que apareça e aprender continuamente com as novas experiências, para que sejamos capazes de responder a situações similares no futuro. Aquilo que geralmente é considerado “inteligência” pode ser dividido em uma coleção de fatos e um meio de se utilizar esses fatos para alcançar os objetivos. Isto é feito em parte pela formulação de conjuntos de regras relacionadas a todos os fatos armazenados no cérebro.

16 EXEMPLOS DE FATOS E REGRAS Fato/regra conjunto 1: Fato 1: Um forno aceso fica quente. Regra 1: SE eu puser minha mão em um forno aceso, ENTÃO eu vou me queimar. Fato/regra conjunto 2: Fato 2: Durante a hora do rush as ruas ficam repletas de carros. Regra 2: SE eu tentar atravessar uma avenida a pé durante a hora do rush, ENTÃO eu posso ser atropelado por um carro.

17 EXEMPLOS DE FATOS E REGRAS Fato/regra conjunto 3: Fato 3a: Ruas escuras e pouco movimentada são perigosas. Fato 3b: Pessoas de idade geralmente não cometem crimes violentos. Fato 3c: A polícia protege as pessoas contra o crime. Regra 3a: SE eu estou em uma rua escura e pouco movimentada e vejo uma pessoa idosa, ENTÃO eu não devo ficar particularmente preocupado com minha segurança. Regra 3b: SE eu estou em uma rua escura e pouco movimentada e vejo um policial, ENTÃO eu devo me sentir seguro. Fato/regra conjunto 4: Fato 4: Quando fazemos adição de dois dígitos cuja soma é maior que nove, usamos o procedimento do transporte (ou vai-um). Regra 4: SE eu tiver de somar uma coluna de dígitos e a soma for maior que nove, ENTÃO eu tenho de fazer referência ao fato 4 para saber como concluir a adição.

18 EXEMPLOS DE FATOS E REGRAS Note que nos exemplos que acabamos de dar, todas as regras são expressas numa relação SE-ENTÃO, ou relação condicional. Ou seja, SE uma certa condição existe ENTÃO ocorrerá uma ação ou outra resposta. Alguns fatos são obviamente mais complicados que outros, e algumas regras dizem respeito a mais de um fato. Em geral os seres humanos têm a capacidade de relacionar conjuntos de regras e fatos muito complexos na tentativa de alcançar alguns objetivos complicados.

19 PODA Quando a mente humana parte para a solução, até mesmo de um problema simples, ela tem uma vasta quantidade de informações a serem coletadas para determinar o curso de ação a ser tomada. Vamos voltar ao exemplo que usamos anteriormente. Você sai de casa para o trabalho e anda até a esquina. Enquanto você espera para atravessar a rua, seu cérebro é bombardeado com todos os tipos de dados. A velocidade e o volume do tráfego, a distância até a outra calçada, os semáforos no cruzamento – todos esses fatores devem ser considerados antes de você faça qualquer movimento.

20 PODA Além disso, um número enorme de impressões sensoriais que são totalmente irrelevantes para o problema de cruzar a rua também está sendo processado ao mesmo tempo – condições do tempo, a cor e o modelo dos carros que passam a sua frente, o tipo e a altura da árvores na calçada, a aparência das construções próximas. Sem dúvida você também está pensando aonde está indo, com que rapidez quer chegar lá, quem vai ver quando chegar e assim por diante. Como você pode notar, se tivesse de lidar com essa enormidade de fatos diretamente relacionados, indiretamente relacionados ou totalmente sem relação antes de colocar o pé fora da calçada, você poderia demorar alguns anos para atravessar a rua.

21 PODA Se realmente temos tantos fatos e regras a processar todo o tempo, como é que a mente extrai rapidamente o conjunto certo de regras para se adaptar a uma determinada situação? Quando você quer atravessar a rua, como é que a mente sabe aplicar, entre outros, o fato/regra conjunto 2, que diz respeito ao tráfego, e não ao fato/regra conjunto 4, que diz respeito à aritmética? Existe um sistema mais sofisticado que guia a seleção de uma resposta adequada a uma situação específica. Este processo é chamado de poda (pruning). Como o próprio nome sugere, o processo de poda elimina os caminhos de pensamento que não são relevantes para o objetivo imediato de se alcançar uma meta.

22 MECANISMOS DE INFERÊNCIA Quando alcançamos um objetivo, não estamos apenas resolvendo um problema imediato; estamos também adquirindo novos conhecimentos ao mesmo tempo. Considere a seguinte informação: 1. Os pais de Jim são João e Maria. 2. Os pais de Jane são João e Maria. O objetivo é determinar o parentesco entre Jim e Jane. O mecanismo de poda se concentra em uma regra guardada em segurança no cérebro, que acaba com o mistério instantaneamente: SE uma pessoa do sexo masculino e uma pessoa do sexo feminino têm os mesmos pais, ENTÃO eles são irmãos.

23 MECANISMOS DE INFERÊNCIA Alcançamos nosso objetivo inferindo a resposta da pergunta sobre o parentesco entre Jim e Jane da regra que já havíamos aprendido anteriormente. E no processo de alcançar o objetivo, um novo fato é deduzido: Jim e Jane são irmãos. A parte da inteligência que nos ajudou a chegar a esse novo fato é chamada de mecanismo de inferência. Ele é central em nossa habilidade de aprender com a experiência porque nos permite gerar novos fatos a partir dos já existentes aplicando o conhecimento adquirido em novas situações.

24 RESUMO 1.Um objetivo específico coloca nosso processo de pensamento em ação. 2.Uma vasta coleção de fatos e as regras que a eles se relacionam esperam ser chamados para ajudar a alcançar um objetivo. 3.A poda nos ajuda a realizar uma procura rápida e eficiente apenas das regras que dizem respeito a um objetivo imediato. 4.O mecanismo de inferência completa o processo fazendo inferências a partir das regras que foram chamadas pelo mecanismo de poda e gerando novos fatos que instantaneamente se tornam parte de nosso depósito de conhecimento.

25 DESENVOLVENDO UM SISTEMA DE INTELIGÊNCIA ARTIFICAL Todos os elementos nos quais consiste o processo humano de tomada de decisão – objetivos, fatos, regras, mecanismos de inferência e poda – devem ser reunidos em um programa de computador para que ele possa ser realmente qualificado como um programa que possui inteligência artificial. Definindo os objetivos Definindo fatos Definindo a solução Obtendo dados Obtendo novos objetivos via regras e inferências O mecanismo de inferência obtém novos fatos para verificar se os objetivos foram encontrados corretamente “Componentes de um sistema de IA baseado em regras”

26 DEFININDO OS OBJETIVOS Como o alcance dos objetivos é a meta de qualquer sistema IA, a primeira etapa no planejamento deste sistema é definir um conjunto de objetivos. Precisamos saber que tipo de problema queremos solucionar e ser capaz de descrevê-los em termos concretos antes de começar a criar um programa para resolvê-los. Vamos voltar ao nosso exemplo anterior cujo objetivo era chegar ao trabalho. Assumiremos que seu sistema de inteligência humana lindamente projetado guiou-o com segurança e rapidez ao atravessar a rua. Agora você está no ponto de ônibus e tem apenas um minuto ou dois para resolver qual dos dois ônibus que passam neste ponto é o melhor para você.

27 DEFININDO OS OBJETIVOS A meio quarteirão de distância está o ônibus que pára em todos os pontos, e ele está se aproximando rapidamente. Você quer pegar esse ônibus ou esperar o ônibus expresso? Esta decisão – que ônibus será melhor – é o objetivo. Há um número de fatos essenciais a ser pesado antes que a decisão possa ser somada, todos eles baseados na experiência anterior de pegar ônibus para ir trabalhar.

28 DEFININDO OS OBJETIVOS Por exemplo, quanto tempo vai demorar para o ônibus expresso chegar? Em qual dos dois ônibus será mais provável eu viajar sentado? Algumas regras entram também em jogo, graças à poda, como “SE eu tiver de esperar mais de 10 minutos pelo ônibus expresso, ENTÃO demorará mais para eu chegar ao trabalho do que se eu tomar o ônibus que pára em todos os pontos”. As regras estão funcionando todo o tempo, mesmo aquelas dentro do mecanismo de poda, que supervisiona todos os processos de pensamento localizando as regras específicas que são necessárias para tomar os processos de pensamento localizando as regras específicas que são necessárias para tomar a decisão imediatamente.

29 DEFININDO OS OBJETIVOS Vamos focalizar outro objetivo que é determinar se uma pessoa tem problemas de aprendizado em aritmética. Nosso novo objetivo pode ser dividido em diferentes áreas da aritmética: Será que PESSOA tem problema de aprendizado com a ADIÇÃO? Será que PESSOA tem problema de aprendizado com a SUBTRAÇÃO? Será que PESSOA tem problema de aprendizado com a MULTIPLICAÇÃO? Será que PESSOA tem problema de aprendizado com a DIVISÃO?

30 DEFININDO OS OBJETIVOS O objeto PESSOA é conhecido como uma variável, porque não representa um indivíduo específico, mas qualquer indivíduo. Fizemos de PESSOA uma variável para podermos usar os mesmos objetivos na avaliação de várias pessoas diferentes. O modo de representar a variável como uma pessoa real é substituí-la pelo nome da pessoa.

31 DEFININDO OS OBJETIVOS A maneira de representar uma variável com uma pessoa em um computador usando a linguagem : INPUT “DIGITE O NOME DA PESSOA QUE ESTÁ SENDO AVALIADA :”;PESSOA Quando essa sentença é executada pelo computador, você vê o seguinte na tela: DIGITE O NOME DA PESSOA QUE ESTÁ SENDO AVALIADA : Você digita o nome da pessoa – André Costa – em resposta à pergunta do computador. Sempre que fizer agora referência à variável PESSOA, em qualquer lugar, nos fatos, regras ou objetivos, o nome André Costa aparecerá em seu lugar. Quando se atribuir um valor específico à uma variável, ela será chamada de instanciada. Podemos dizer agora que nosso objetivo é descobrir se o indivíduo André Costa tem um problema de aprendizado em alguma ou todas as áreas da aritmética.

32 DEFININDO OS FATOS Os fatos são um ingrediente essencial em um sistema de IA. Sem eles não haveria jeito de se alcançar os objetivos. Para alcançar o objetivo de decidir qual ônibus tomar; alguns fatos de apoio específicos daquela situação foram necessários. Obviamente como toda a situação tem seu cenário particular, todo objetivo tem seus próprios fatos. Vamos nos concentrar em apenas um dos objetivos aritméticos para ver como o uso dos fatos é implementado: Será que PESSOA tem problema de aprendizado em SUBTRAÇÃO?

33 DEFININDO OS FATOS A subtração é uma função que requer certas habilidades matemáticas, que são os fatos que apóiam o objetivo, alguns dos quais se seguem. Para subtrair, uma pessoa deve ser capaz de 1.Subtrair dois números sem emprestar (2) 2.Subtrair dois números emprestando em uma única coluna (1) 3.Subtrair dois números emprestando em várias colunas (1) Os números entre parênteses no final dos fatos representam a importância relativa de um em relação ao outro em nossa avaliação do problema de aprendizado do indivíduo.

34 OBTENDO DADOS PESSOA consegue subtrair dois números sem emprestar? PESSOA consegue subtrair dois números emprestando em uma coluna? PESSOA consegue subtrair dois números emprestando em várias colunas? Uma vez que os fatos que usaremos para alcançar o objetivo foram definidos, precisamos adquirir os dados necessários instanciar as variáveis, ou seja, estabelecer o que as pessoas em geral devem saber para fazer uma subtração. Mas agora precisamos descobrir quanto o nosso sujeito, André Costa, sabe. Para fazer isto, os fatos devem primeiro ser convertidos em perguntas; as respostas que recebermos são os dados que poderemos usar à medida que nos deslocarmos em direção ao nosso objetivo:

35 OBTENDO DADOS Assim como substituímos a variável PESSOA pelo nome André Costa, substituímos os fatos, representados por essas perguntas, pelas respostas. Os fatos instanciados tornam-se dados. Em termos simples, as respostas sim e não que receberemos são os dados que estamos atribuindo aos fatos. Esses dados são então colocados em um banco de dados para poderem ser analisados durante nossa avaliação do possível problema de aprendizado de André Costa. Precisamos de um programa de computador que faça essas perguntas e acumule os dados necessários.

36 OBTENDO DADOS Programa: 5REM a variável PESSOA conterá o nome da 7REM pessoa que está sendo avaliada 10INPUT “Digite o nome da pessoa que está sendo avaliada”;PESSOA 15REM S1$ conterá uma resposta sim ou não à seguinte pergunta 20PRINT PESSOA; “consegue subtrair dois números sem emprestar?” 25INPUT S1$ 30REM S2$ conterá uma resposta sim ou não à seguinte pergunta 35PRINT PESSOA; “consegue subtrair dois números emprestando em uma coluna?” 40INPUT S2$ 45REM S3$ conterá uma resposta sim ou não à seguinte pergunta 50PRINT PESSOA; “consegue subtrair dois números emprestando em várias colunas?” 55 INPUT S3$

37 OBTENDO DADOS Quando esse programa é executado, aparece na tela do computador um diálogo que formula perguntas que irão fornecer os dados relevantes ao problema de aprendizado em subtração de um indivíduo: DIGITE NOME DA PESSOA QUE ESTÁ SENDO AVALIADA. andré costa ANDRÉ COSTA CONSEGUE SUBTRAIR DOIS NÚMEROS SEM EMPRESTAR? sim ANDRÉ COSTA CONSEGUE SUBTRAIR DOIS NÚMEROS EMPRESTANDO EM UMA COLUNA? não ANDRÉ COSTA CONSEGUE SUBTRAIR DOIS NÚMEROS EMPRESTANDO EM VÁRIAS COLUNAS? não

38 OBTENDO DADOS Computador Pessoal Pessoa S1$ (2) S2$ (1) S3$ (1) Banco de Dados Sim Não André Costa Definimos alguns fatos necessários para o entendimento da subtração, desenvolvemos um programa de computador para fazer as perguntas relevantes pertinentes a esses fatos e depois armazenamos as respostas para poderem ser analisadas. Isto é equivalente ao que nosso cérebro faz quando tenta decidir que ônibus tomar.

39 OBTENDO DADOS Uma resposta “não” a qualquer uma das perguntas indica que André Costa tem um problema com a técnica de subtração representada pelo fato; uma resposta “sim” indica que André possui aquela habilidade. Obtendo a soma de todos os fatores de peso associados às respostas “não”, podemos ter uma indicação da gravidade do problema que André tem em relação à subtração: S1$ (2) sim0 S2$ (1) não1 S3$ (1) não1 Soma do fator peso2 A soma máxima dos fatores de peso neste exemplo, que indicaria um problema sério em subtração, seria obtida se todas as respostas tivessem sido “não”. Neste caso seria igual a 4.

40 REGRAS E INFERÊNCIAS As regras em nosso sistema de IA devem ser planejadas para nos ajudar a avaliar os dados de forma que possamos alcançar o objetivo de descobrir se uma pessoa tem problema de aprendizado em aritmética. Selecionamos a subtração, por isso vamos estabelecer uma regra relacionada ao objetivo da subtração e chamá-la de regra da subtração e tem o seguinte enunciado: SE a soma dos fatores de peso da subtração for maior que 1, ENTÃO PESSOA tem um problema de aprendizado em subtração. Como a soma dos fatores de peso de André Costa é 2, podemos usar a regra da subtração para inferir que ele realmente tem um problema com relação à subtração. A regra forneceu uma aplicação prática dos dados que acumulamos. O valor 1 na regra é chamado de limiar do nível de decisão.

41 REGRAS E INFERÊNCIAS A inteligência artificial torna a programação mais fácil e flexível; vamos ver como. Em vez de estabelecer a regra da subtração, poderíamos ter usado um conjunto de fatos que teriam coberto todas as maneiras possíveis de a soma dos fatores de peso ser maior que 1. Apresentamos os fatos que precisaríamos para cobrir todas as contingências possíveis e seus fatores de peso. Um problema de aprendizado em subtração existe quando: 1.(S1$=não) e (S2$=sim) e (S3$=sim) - soma do fator peso = 2 2.(S1$=não) e (S2$=sim) e (S3$=não) - soma do fator peso = 3 3.(S1$=não) e (S2$=não) e (S3$=sim) - soma do fator peso = 3 4.(S1$=não) e (S2$=não) e (S3$=não) - soma do fator peso = 4 5.(S1$=sim) e (S2$=não) e (S3$=não) - soma do fator peso = 2

42 REGRAS E INFERÊNCIAS Como pudemos observar, a soma dos fatores de peso para cada conjunto de fatos é maior que 1. Nessa lista existem apenas cinco conjuntos diferentes de fatos. A regra de subtração, porém, cobre todos esses fatos e faz com que sua programação seja desnecessária. É obviamente muito mais fácil programar uma única regra totalmente abrangente do que vários fatos especializados, que são muito mais limitados em suas aplicações. Sem regras, você ainda estaria esperando para atravessar a rua, assaltado por um batalhão de fatos e dados associados mas sem meios de processá-los. Você não precisaria se preocupar com o ônibus, porque jamais conseguiria chegar até o ponto! Até agora o projeto de nosso programa incluiu: 1.Definição de objetivos. 2.Definição de fatos para apoiar os objetivos. 3.Obtenção de dados que correspondem aos fatos e são específicos de uma determinada situação ou sujeito. 4.Avaliação dos dados por meio de regras e inferências.

43 REGRAS E INFERÊNCIAS Definindo os objetivos Definindo fatos Definindo a solução Obtendo dados Obtendo novos objetivos via regras e inferências O mecanismo de inferência obtém novos fatos para verificar se os objetivos foram encontrados corretamente “Componentes de um sistema de IA baseado em regras” O Processo de se alcançar os objetivos da maneira apresentada é conhecido como encadeamento para a frente, isto é, o uso dos dados para se chegar a uma conclusão. Ele nos permite prosseguir de uma maneira lógica de uma etapa para outra, como mostra a figura abaixo.

44 VERIFICAÇÃO POR MEIO DO MECANISMO DE INFERÊNCIA Vamos à um outro exemplo para ilustrar como as inferências são verificadas. Suponha que um assassinato tenha sido cometido; uma pessoa é encontrada trancada em um apartamento, com três tiros. O médico-legista exclui a possibilidade de suicídio por causa do ângulo dos ferimentos (processo de poda em ação), e a polícia começa a trabalhar no caso imediatamente. A primeira coisa que analisam é quem mais, além da vizinha, tinha a chave do apartamento. Interroga o proprietário do apartamento e vários vizinhos, que dizem que a pessoa assassinada tinha um amigo que freqüentava o apartamento. Investigações posteriores revelam que os dois discutiram muito recentemente. A polícia tem agora um suspeito. Eles são capazes de inferir, a partir de dados dos interrogatórios, que o amigo da vítima é provavelmente o assassino (encadeamento para frente), mas precisam de algumas evidências concretas para arrematar o caso.

45 VERIFICAÇÃO POR MEIO DO MECANISMO DE INFERÊNCIA A melhor chance que eles tem para apanhar o suspeito em flagrante é encontrar a arma do crime. Obtém então um mandato de busca para o apartamento do amigo da vítima e procuram em todos os seus pertences, mas é inútil. Finalmente um detetive encontra um revólver dentro de uma lata de lixo num beco das proximidades. Um exame das impressões digitais comprova que o revólver foi realmente manuseado pelo amigo, e um teste de balística estabelece que aquela é a arma do crime. Caso resolvido. Obtendo novos dados e vendo se eles eram consistentes com a conclusão original, a polícia atingiu o objetivo de identificar o assassino. O processo de usar uma conclusão para procurar por dados que a sustentem é conhecido como encadeamento para trás. Neste caso a conclusão é o suspeito e os dados, a arma.

46 VERIFICAÇÃO POR MEIO DO MECANISMO DE INFERÊNCIA Em um programa de IA, o objetivo também é comprovado por meio de um processo similar. Será que estávamos certos quando concluímos anteriormente que André Costa tem um problema de aprendizado em relação à subtração? O objetivo foi atingido, mas, para determinar se ele foi atingido corretamente, precisamos abordar o problema novamente, com novos dados e regras. Uma regra que comprovaria se um indivíduo tem um problema de aprendizado em relação à subtração poderia ser: SE uma pessoa em um teste comum de subtração obtém um total de pontos abaixo da média, ENTÃO essa pessoa obterá fatores de peso em subtração maiores que 1 (ou seja, a pessoa tem um problema no campo da subtração).

47 VERIFICAÇÃO POR MEIO DO MECANISMO DE INFERÊNCIA Tudo o que precisamos fazer para confirmar se alcançamos o objetivo de identificar um problema de aprendizado em relação à subtração é verificar se o número de pontos conseguidos em um teste comum de subtração está abaixo da média. O programa abaixo faz exatamente isto: 5REM média do teste de subtração 10INPUT “Digite a média do teste de subtração”;GT 15REM nota do aluno 20INPUT “Digite a nota do aluno”;GS 25G = GT – GS 30 IF G > 0 THEN VER = 1

48 VERIFICAÇÃO POR MEIO DO MECANISMO DE INFERÊNCIA Pegando os novos dados derivados do mecanismo de inferência, que assume que a conclusão está correta, e comparando-os com os dados originais para efeito de verificação, teremos um outro exemplo de encadeamento para trás. Como o nome indica, o encadeamento para trás anda na direção oposta do encadeamento para frente. Em lugar de se deslocar na direção de um objetivo definindo fatos e obtendo dados, o encadeamento para trás começa depois que o objetivo tiver sido inicialmente alcançado. Dado Obtendo dados Obtendo novos objetivos via fatos, regras e inferências O mecanismo de inferência obtém novos fatos para verificar se os objetivos foram alcançados corretamente Encadeamento para trás Encadeamento para frente Configuração e operação de um programa de IA

49 VERIFICAÇÃO POR MEIO DO MECANISMO DE INFERÊNCIA Se for determinado que André Costa tem um problema no campo da subtração, o mecanismo de inferência verificará se ele também recebeu notas baixas nos testes de subtração na escola. Se isto realmente ocorreu, assume-se que o objetivo foi atingido de maneira correta. Se as notas de seus testes não foram baixas, então os dados para sustentar o alcance do objetivo são insuficientes, e novos passos deverão ser dados para recomprovar o objetivo. Isto é, precisamos resolver o conflito entre o fato de André Costa ter deficiências em certas técnicas de subtração e o fato de suas notas, em um teste comum de subtração, terem alcançado a média exigida.

50 PODA No cérebro, o mecanismo de poda guia a pesquisa por regras adicionais que comprovam o objetivo até que todos os caminhos possíveis tenham sido esgotados. Como o cérebro possui uma imensa quantidade de informações armazenadas, podem existir várias regras a serem aplicadas no alcance ou comprovação de um único objetivo, sendo que algumas ou todas elas podem ser chamadas em um determinado momento. A poda permite que o computador pule ou processe qualquer parte do banco de conhecimentos de acordo com sua relevância para um determinado objetivo. Se André Costa se sair extremamente bem em um teste comum de aritmética, o mecanismo de poda passará por cima da parte do banco de conhecimentos que avalia os dados relativos às habilidades aritméticas. Por outro lado, se o resultado desse mesmo teste for fraco, o mecanismo de poda guiará o programa no sentido de processar aquela seção. Isto elimina o processamento de percursos que não ajudarão a alcançar nosso objetivo.

51 PODA Já falamos como a poda pode ser expressa como um conjunto de regras. O mecanismo de poda faz uso de suas próprias regras especiais para tomar decisões. Uma regra de poda pertinente ao exemplo da subtração: SE os pontos obtidos no teste de subtração excederem o grau do aluno em dois anos ou mais, ENTÃO pule a parte do programa que insere dados sobre a subtração e os avalia. Em linhas de código: 110 INPUT “Resultado do teste de subtração”; SS 115 INPUT ”Grau do aluno”; GL 120 REM se o resultado do teste de subtração estiver dois 121 REM anos ou mais acima do nível do aluno, pule a seção 122 REM que avalia problema de aprendizado com a subtração 125 G = SS – (GL + 2) 130 IF G >= 0 THEN GOTO 140 135 GOSUB 1500 140 REM próximo problema de aprendizado 145.... 1500 REM secção de avaliação de problema de aprendizado em subtração

52 PODA A poda simplesmente anula as considerações desnecessárias e irrelevantes tanto no cérebro como em um sistema de inteligência artificial. Uma regra de poda para nosso exemplo de como chegar ao trabalho poderia ser: SE estiver chovendo muito forte, ENTÃO ignore todas as informações relativas ao ônibus, expresso ou não, e pegue o primeiro ônibus que passar.

53 DEFININDO SISTEMAS ESPECIALISTAS Vimos até o momento como os objetivos podem ser atingidos em um sistema de inteligência artificial por meio de fatos, de regras, de um mecanismo inferência e de poda. As áreas de interesse específico para as quais podemos desenhar um sistema de IA, como, por exemplo, diagnosticar problemas de aprendizagem e tomar ônibus, são chamadas de domínios. Se você estiver pensando agora que pode criar um programa de IA que cubra qualquer domínio imaginável, vai se deparar com sérios problemas. Em primeiro lugar, os fatos e as regras necessários para se alcançar todos os objetivos em todos os domínios são virtualmente infinitos.

54 DEFININDO SISTEMAS ESPECIALISTAS Levará muito tempo para que se consiga registrar a imensa quantidade de informações exigidas para que se cumpra tal tarefa, e talvez isto seja até mesmo impossível. Além do mais, ainda não foi inventado o computador que possa armazenar ou processar qualquer coisa que se assemelhe a essa quantidade de informação. O que temos de fazer é nos confinar naquelas áreas que contém apenas informações suficientes que podem ser moldadas em um programa de computador. Por motivos práticos, precisamos escolher para trabalhar domínios que contenham uma quantidade administrável de informações.

55 DEFININDO SISTEMAS ESPECIALISTAS Um sistema de inteligência artificial criado para resolver problemas em um determinado domínio é chamado de sistema especialista. Todo o conhecimento em um sistema especialista é fornecido por pessoas que são especialistas naquele domínio. Os fatores de pesos que atribuímos às técnicas de subtração, não foram criados arbitrariamente; eles representam um conhecimento que vem de pesquisas em um campo de estudo.

56 DEFININDO SISTEMAS ESPECIALISTAS Todos os sistemas especialistas são baseados em informações atuais e precisas sobre um determinado domínio: 2. 1. 2. 3. Cozinhar Obter ENTÃO... SE... Como resolver um problema elétrico em carros Como cozinhar uma comida chinesa Como nadar Alguns domínios administráveis

57 DEFININDO SISTEMAS ESPECIALISTAS REGRAS HEURÍSTICAS Suponha que um grupo de especialistas seja chamado para resolver este problema: há um derramamento de óleo em um rio, e qualquer uma das várias indústrias situadas ao longo da margem do rio pode ser o agente causador do derramamento. O objetivo é determinar exatamente de onde o óleo está vindo, para que ele seja detido. Um sistema especialista para a solução desse tipo de problema conterá antes de mais nada um mecanismo para a efetuação de cálculos. Por exemplo, a taxa de dispersão do óleo na água, a direção e a velocidade da corrente do rio, e outros fatores que podem ser empregados para localizar aproximadamente o local do derramamento.

58 DEFININDO SISTEMAS ESPECIALISTAS REGRAS HEURÍSTICAS Quando essas informações tiverem sido coletadas e a determinação do local do derramamento tiver sido feita, digamos, com uma precisão de 1 quilômetro, um conjunto de regras especiais será usado para acharmos a localização exata da fábrica, conforme mostra a definição das regras H1 e H2 a seguir. Essas regras são chamadas de regras heurísticas, e diferem das regras que discutimos anteriormente em um ponto fundamental: as regras heurísticas não são formuladas como resultado de um conhecimento comum e reconhecido por todos; elas são regras que apenas um especialista conhece. Regra H1: SE existe uma fábrica ao longo do rio a uma distância de 1 quilômetro da localização calculada do derramamento, ENTÃO assuma que esta é a fábrica que causou o derramamento. Regra H2: SE existe mais de uma fábrica a uma distância de 1 quilômetro da localização calculada do derramamento, ENTÃO assuma como primeira opção a fábrica que usa mais óleo em suas operações.

59 DEFININDO SISTEMAS ESPECIALISTAS REGRAS HEURÍSTICAS Vimos como o mecanismo de poda torna nossos processos de pensamento mais eficientes na medida em que reduz o número de considerações que precisamos fazer antes de começarmos a pensar seriamente em alcançar um objetivo. Em um sistema especialista, um mecanismo de poda que utiliza regra heurísticas é chamado de mecanismo de pesquisa heurística, que pode ser representado mais ou menos como o mecanismo de poda: Dado Mecanismo de pesquisa heurística SE condição A ENTÃO regras para A SE condição B ENTÃO regras para B

60 DEFININDO SISTEMAS ESPECIALISTAS REGRAS HEURÍSTICAS Quando o mecanismo de pesquisa heurística tiver concentrado sua atenção na fábrica que mais provavelmente está causando o derramamento, o sistema especialista poderá então aplicar um outro conjunto de regras para verificar se a fábrica X é a fonte. Por exemplo, certos pontos vulneráveis do sistema de encanamento de óleo da fábrica seriam provavelmente analisados primeiro. Abaixo uma regra heurística que poderia ser útil nessa situação: SE a pressão do óleo na localização 1 da fábrica for menor que a pressão da água do rio ao redor, ENTÃO examine a localização 32 do encanamento. Apenas uma pessoa acostumada com esses problemas naquela fábrica saberia essa regra. Ela é uma regra prática, ou uma regra heurística.

61 DEFININDO SISTEMAS ESPECIALISTAS QUADRO NEGRO Não é raro o caso de um problema ser tão complexo que um sistema especialista sozinho não consiga resolver. Em nosso problema da mancha de óleo, por exemplo, um sistema especialista foi capaz de encontrar a localização do derramamento, mas, se quiséssemos conter o derramamento, uma outra técnica seria necessária. O sistema especialista chamado para a contenção necessitaria de certas informações incluídas no sistema especialista que encontrou a localização do derramamento. Então o segundo sistema especialista traria seus cálculos e seu mecanismo de pesquisa heurística para analisar o problema e poderia por fim recomendar que um certo produto químico seria o mais adequado para neutralizar óleo daquela categoria naquelas circunstâncias.

62 DEFININDO SISTEMAS ESPECIALISTAS QUADRO NEGRO A comunicação das informações entre os sistemas especialistas é feita por um mecanismo chamado quadro-negro. O quadro negro é um lugar dentro da memória do computador no qual as informações armazenadas em um sistema especialista são “afixadas” para que qualquer outro sistema especialista possa usá-lo se precisar das informações lá contidas para alcançar seus objetivos. O quadro-negro é uma estrutura que contém informações que podem ser examinadas por sistemas especialistas cooperativos. O que esses sistemas fazem com essas informações depende da aplicação. Você nunca entrou em uma sala de aula e viu um aviso no quadro-negro dizendo que aquela turma mudou de sala? Esse aviso poderia ter sido escrito pela secretária da escola que foi informada de que o professor estaria ausente naquele dia; por isso surgiu a necessidade de combinar turmas similares com um só professor. A secretária estava atenta a essa situação e reagiu de acordo. O conceito de quadro-negro para afixar, modificar e observar mudanças é muito importante para os sistemas cooperativos.

63 DEFININDO SISTEMAS ESPECIALISTAS VOCÊ PODE FAZÊ-LO Para criar um sistema especialista, um grupo formado por um especialista e um engenheiro de conhecimentos coleta os dados, as regras e as regras heurísticas e os organiza em um programa de inteligência artificial. Você deve estar pensando: “Mas eu não sou engenheiro de conhecimentos; como é que tudo isto se aplica a meu caso?”. O entendimento que você obteve sobre inteligência artificial até agora, já começou a fazer de você um engenheiro de conhecimentos. Se você souber programar um computador dessa maneira, já terá progredido muito. Se você souber consertar carros, preparar comidas chinesas ou nadar, poderá ser o engenheiro de conhecimentos que desenha um sistema especialista em qualquer um desses domínios, ou em domínios equivalentes.

64 PROCESSAMENTO DE LINGUAGEM NATURAL A comunicação entre pessoas e computadores é uma área na qual está sendo feita uma imensa quantidade de pesquisas. O objetivo final – já não muito distante – é permitir que o usuário “fale” com o computador em uma linguagem humana, como o inglês ou o português, e fazer com que o computador responda na mesma língua. Uma verdadeira inteligência artificial deve ser capaz de explicar a tarefa que querem que seja executada e o computador seja capaz de responder a contento. Isso pode parecer uma coisa muito simples, pois você tem falado e ouvido a linguagem humana desde que era criança, e por isso toma como inteiramente certas a maioria de suas características mais complexas. Se você já trabalhou com alguma linguagem de computador, sabe a precisão com que deve escrever um programa para que o computador faça exatamente o que você quer.

65 PROCESSAMENTO DE LINGUAGEM NATURAL A inteligência dos computadores depende das pessoas que os fazem; como eles não conseguem “pensar” por si, temos de lhes dar instruções muito específicas para cada função a ser executada. Os seres humanos vêm ao mundo “programados” para aprender a falar; metade do trabalho já está feito. Para fazer um computador entender uma língua, não apenas temos de dividir essa língua em seus elementos básicos e inserir esses dados ao computador, como temos também de desenhar computadores e programas de computadores que em primeiro lugar aceitem essas informações. A criação desse tipo de sistema de comunicação entre pessoas e computadores é chamada de processamento de linguagem natural.

66 PROCESSAMENTO DE LINGUAGEM NATURAL Se você tivesse um robô com inteligência artificial que soubesse consertar coisas, poderia dar a ele uma das seguintes ordens: 1.Arrume o carro ao lado da casa com um pneu furado. 2.Arrume o carro ao lado da casa com cortinas vermelhas. Embora a sentença 1 esteja gramaticalmente incorreta, qualquer pessoa consegue entendê-la – todos nós sabemos que uma casa não pode ter um pneu furado. Conseguimos reconhecer o erro e, o mais importante, o corrigimos instantaneamente em nossas mentes; ou seja, obviamente é o carro que tem um pneu furado e não a casa. O robô teria de saber não só o significado das palavras mas também o relacionamento entre elas, ou então seria muito provável que ele tentasse encontrar uma casa com pneu furado em algum lugar.

67 PROCESSAMENTO DE LINGUAGEM NATURAL Como ambas as sentenças têm estruturas idênticas, o robô deve não apenas possuir conhecimentos de gramática mas deve também ser capaz de associar descrições e objetos. É importante ter em mente que nossas regras de linguagem fazem sentido apenas para nós, o robô precisa de suas próprias regras especiais para entender o que estamos falando. Uma inteligência artificial, como o robô, também deve estar apta a analisar sentenças em relação a outras sentenças. Exemplo: 1.João bebeu o leite. 2.Depois ele vestiu o casaco. O “ele” na sentença 2 naturalmente se refere a “João” da sentença 1. Sem a sentença 1, a sentença 2 teria pouco significado.

68 PROCESSAMENTO DE LINGUAGEM NATURAL Todas as linguagens humanas são classificadas como sensíveis ao contexto. Ou seja, a sentença 2 precisou da sentença 1, para ser interpretada em sua totalidade. Uma linguagem cuja interpretação de sentenças pode ser conseguida sem o conhecimento de outras sentenças é chamada de “livre de contexto”, isto é, livre do que aconteceu antes ou do que acontecerá depois. O processo empregado para se fazer um computador entender sentenças é composto de programas que juntos formam o “analisador de linguagem natural”. As três divisões básicas da análise da linguagem são: 1.Análise léxica (análise das palavras) 2.Análise sintática (análise da colocação das palavras em uma sentença, incluindo as regras da gramática). 3.Análise semântica (análise do significado de uma sentença em si e em relação a outras sentenças).

69 PROCESSAMENTO DE LINGUAGEM NATURAL ANÁLISE LÉXICA A análise léxica é a que considera a palavra em si (classe de palavras, flexão, elementos mórficos, terminação, grafia etc.). Por exemplo, uma palavra simples, como “caixote”, pode ser subdividida em: caix (raiz)ote (sufixo) A palavra “reluzir” consiste em: re (prefixo)luz (tema)ir (desinência) Um dicionário define as palavras, mas fazer o computador entendê-las no contexto é uma tarefa consideravelmente mais difícil. Desinência = extremidade gramatical dando significado de gênero, número e pessoa.

70 PROCESSAMENTO DE LINGUAGEM NATURAL ANÁLISE SINTÁTICA A análise sintática é a que considera a palavra com relação às outras que estão na mesma oração. E como a divisão de uma sentença em seus componentes é uma etapa vital para se conseguir que o computador compreenda a linguagem, é preciso que sejamos capazes de traduzir as regras da gramática para uma forma que ele possa manipular. Uma sentença (S) é geralmente composta de uma frase nominal (FN) (sintagma nominal) e de uma frase verbal (FV) (sintagma verbal), e pode ser representada da seguinte forma: S  FN,FV Uma frase nominal pode ser geralmente dividida em um determinante (como um artigo, um pronome etc,) e um substantivo, representado por: FN  DET,SUB

71 PROCESSAMENTO DE LINGUAGEM NATURAL ANÁLISE SINTÁTICA Uma frase verbal pode ser dividida ainda mais em um verbo seguido de uma outra frase nominal, como: FV  V,FN Uma frase nominal, porém, pode também ser simplesmente um substantivo: FN  SUB Uma maneira comum de se dividir uma sentença é criar uma árvore, que é representação esquemática da estrutura sintática de uma sentença. A sentença O menino comeu banana poderia ter a estrutura mostrada a seguir.

72 PROCESSAMENTO DE LINGUAGEM NATURAL ANÁLISE SINTÁTICA Sentença FN(FN)FV DETSUB V FN SUB comeubananameninoO Estrutura em árvore de análise gramatical de uma sentença.

73 PROCESSAMENTO DE LINGUAGEM NATURAL ANÁLISE SEMÂNTICA Depois de a sentença ser dividida, ela sofre uma análise semântica, processo pelo qual o computador tente compreender seu sentido. Em um sistema de inteligência artificial, aplicaríamos um conjunto de regras para estabelecer o significado de uma maneira que o computador pudesse usá-lo. Vejamos a sentença anterior como exemplo: DETSUB V SUB O menino comeu banana O analisador semântico poderia ter o seguinte conjunto de regras em seu banco de conhecimentos para interpretar a sentença: Regra 1: SE um determinante for a primeira parte de uma sentença e for seguido por um substantivo, ENTÂO o substantivo é conhecido como o sujeito.

74 PROCESSAMENTO DE LINGUAGEM NATURAL ANÁLISE SEMÂNTICA Regra 2: SE um verbo segue o sujeito, ENTÃO o verbo nos diz o que o sujeito fez. Regra 3: SE um substantivo segue o sujeito e o verbo nessa ordem, ENTÃO o substantivo é um objeto. Regra 4: SE uma sentença tem a forma sujeito, verbo, objeto, ENTÃO sabemos o que o sujeito fez (verbo) em relação ao objeto.

75 PROCESSAMENTO DE LINGUAGEM NATURAL ANÁLISE SEMÂNTICA Um processador de linguagem natural pode ser usado na frente de um outro sistema de inteligência artificial, permitindo que os dados sejam passados de forma verbal: Encontre o que... Processador de linguagem natural Inteligência artificial Sujeito (menino) Objeto (banana) Verbo (comeu) Processador de linguagem natural Essencialmente, o processamento de linguagem natural pode libertar o usuário do computador da limitação e da complexidade das linguagens dos computadores. Quando os programas que capacitarão o computador a nos entender e “falar” conosco em nossa língua-mãe ficarem prontos, teremos dado um passo muito importante em direção à obtenção de um computador genuinamente “inteligente”.


Carregar ppt "INTELIGÊNCIA ARTIFICIAL E SISTEMAS ESPECIALISTAS Professor Walcyr."

Apresentações semelhantes


Anúncios Google