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

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

Inteligência Artificial

Apresentações semelhantes


Apresentação em tema: "Inteligência Artificial"— Transcrição da apresentação:

1 Inteligência Artificial
Fabrício Enembreck

2 Estrutura da Apresentação
Introdução Problemas e Busca Representação de Conhecimento Aprendizado de Máquina Sistemas Especialistas Conclusões

3 Introdução IA: Computador Inteligente? Sistemático não é inteligente
Computador X Humano Comportamentos Humanos naturais são os mais difíceis de imitar: pensar, aprender, reconhecer, falar, etc... “Conjunto de técnicas que visam atribuir comportamentos inteligentes a sistemas e/ou computadores”

4 Histórico Décadas de 50 e 60: Grande expectativa em relação a IA
Encantamento de pesquisadores no desenvolvimento de Resolvedores Gerais de Problema: os computadores inteligentes Barreira da limitação do poder computacional Alternativa: separar o conhecimento do mecanismo de raciocínio resultaram nos Sistemas Especialistas

5 Histórico Décadas de 60 e 70: Meados dos anos 80/90
Grande frustação dos pesquisadores Poder computacional limitado Toda técnica é um modelo extremamente simplificado do comportamento humano Meados dos anos 80/90 Pesquisa em IA volta a despertar interesse com novas técnicas, maior poder computacional e, principalmente, ciente de suas limitações

6 Problemas e Busca

7 Definição do Problema Considerações:
Representação Computacional do problema Objetivo (o que se pretende alcançar) Onde Iniciar Como modificar os estados Como identificar modificações úteis na solução do problema View the program as a series of changes to the environment. Setup for describing state spaces and rules.

8 Problemas Difíceis Definições: Entendimento de Linguagem Natural.
Jogar Xadrez. Resolver Integrais Indefinidas. Prever o clima. Prever mudanças no estoque de uma loja We should not expect to be able to provide a general model for all problems. General models may be difficult to use in all situations, but are often useful for modeling part of a problem.

9 Definição do Problema como um Espaço de Estados (Cont.)
Uma possível estratégia para solução de problemas é listar todos os estados possíveis. A solução do problema consiste em percorrer o espaço de estados a partir do estado inicial até o estado meta. É necessário desenvolver um conjunto de operadores que modifique um estado para um outro estado. NDFSA as a description of a problem. Other examples of the notion of state robot - coordinates in the world what direction is facing speed of movement what is looking for parsing a sentence

10 Exemplo: Problema dos Jarros de Água
4 lt Sem limite de Água 3 lt No partial scale on jugs unlimited water from a pump. Can pour on the ground. Don’t known how much is left (unless empty). Could specify other goals, would like to develop state and operation definition that is not specific to a goal or start state. Not always so obvious that we are doing this (English vs.. klingon). Objetivo: 2 litros no jarro 4 lt Restrições: Cada jarro não pode conter mais água do que a sua capacidade; Os jarros não possuem marcas, logo quando a água é retirada de uma fonte o jarro fica cheio Quando água é jogada de um jarro ele precisa ficar vazio

11 Estados do Jarros de Água
Espaço de Busca (0,0) (3,0) (2,0) (1,0) (0,1) (0,2) (0,3) (4,0) (4,1) (3,1) (2,1) (1,1) (1,2) (1,3) (X,Y) (4,2) (3,2) (2,2) Explicit description of state space - usually not possible for interesting problems. Jarro 3 lt. Jarro 4 lt. (4,3) (3,3) (2,3) Estados Solução

12 Operações com Jarros de Água
Colocar 3 lt. no jarro 3 Colocar 4 lt. no jarro 4 Esvaziar jarro 3 Esvaziar jarro 4 Coloca o conteúdo do jarro 3 no jarro 4 Outros ??? (x,y) -> (x,3) (x,y) -> (4,y) (x,y) -> (x,0) (x,y) -> (0,y) (0,y) -> (y,0) A bunch of rules - the book also has others.

13 Restrições Regras de Produção podem ser utilizadas para modificar um estado As Regras implementam as restrições do problema (x,y), x<4 -> (x,0) (x,y), y<3 -> (0,y) (x,y), x>0,y=0 -> (y,0) Specifying when rules are applicable. Conditions that must be met before a rule is applied. Does not mean we try to describe rules that do not result in conflict or that there can never be a situation that does not match any rule. Development of a hierarchy of specificity is very useful in many domains. Default behaviors (operations)

14 Regras de Produção Reduzem o Espaço de Estados Geram a Árvore de Busca
(0,0) Encher jarra 3 (4,0) (0,3) Despejar conteúdo de 3 em4 (4,3) Sometimes it is useful to write rules that focus on the goal - general patterns that we embed into the rules that will allow the system to detect solutions when more than 1 step away. Sometimes we create backwards rules and attempt to move from the goal state to the start state (sometimes a mixture of the two). (0,0) (1,3) (4,3) (0,0) (3,0) Encher jarra 3 (2,0) (0,2) (4,2) (3,3) Despejar conteúdo de 3 em4 Esvaziar jarra 4 Encher jarra 4 com o conteúdo de 3

15 Estratégias de Busca Busca em Largura Busca em Profundidade d c b a g
h i k j f d c b a g e h i k j f Busca em Largura Busca em Profundidade

16 Outro Problema Problema do Caixeiro Viajante
Lista de cidades para visitar Lista de distâncias entre cada cidade Visite cada cidade apenas uma vez Encontre o menor trajeto Which would work better? Show how either BFS or DFS alone could not solve large problem instances. Number of different paths is (N-1)! Breadth first - assume the starting point does not matter: N-1 nodes at first level (N-1) * (N-2) at 2nd level … end up needing to generate O(N-2)! Nodes before ever considering a single solution! Depth First - if we are looking for minimal solution need to look at all possible tours. Branch-and-Bound - keep track of best path and don’t explore new paths that are worse than current best.

17 Busca Heurística Muitos problemas possuem espaços de busca que são muito grandes para serem examinados completamente. É possível construir estratégias que não prometem a melhor solução, mas que encontram uma “boa” resposta rapidamente. In some cases heuristic search can be complete (finds the best answer), in general we don’t assume this is the case. definition of “heuristic” and examples greedy heuristic greedy TSP Formal analysis is not always possible

18 Técnicas de Busca Heurística
Gerar-e-testar Subida da Encosta Busca Best-First

19 Repita até que a solução seja encontrada
Gerar e Testar Gerar e testar: Repita até que a solução seja encontrada Gere um próximo estado The term hill climbing assumes we are talking about finding a maximum, but the concepts apply to minimization problems as well. Remember that the heuristic is a rule of thumb or guess based on less than complete information. We assume that construction of a perfect heuristic is impossible (otherwise it would be the search).

20 Subida da Encosta Usa heurística para mudar para estados que são melhores que o estado corrente Sempre muda para o melhor estado quando possível O processo termina quando todos os operadores tiverem sido aplicados e nenhum dos estados resultantes são melhores que o estado corrente Always climb uphill whenever you can, without looking around. Climbing a mountain in the dark - test one direction and if it is uphill take a step in that direction. If you find that there is no uphill move in any direction you are done (at the top of the mountain).

21 Subida da Encosta Função de Otimização
y = f(x) y Assuming the heuristic can be viewed as a function of the current state, all heuristic search can be modeled as function optimization in which we wish to maximize/minimize the value of the heuristic function. NOTES: must define the operators! Small move left, big move left, large moves, etc. Change the order of operators and see what happens. “climbing” vs. “descending” - same problem. x

22 Recozimento Simulado (Cont.)
A busca inicialmente faz grandes saltos, explorando muitas regiões do espaço Os saltos são gradualmente reduzidos e a busca torna-se uma subida de encosta simples (busca por um ótimo local) Algorithm: use next operator to generate a new state. Evaluate the state (heuristic function) with probability p(t), move to the better state. P(t) is roughly exponentially decreasing with respect to time (number of steps).

23 Simulated Anneling Marble analogy - increased temperature means we are shaking the curve around so that it can bound out of troughs. As temperature decreases - bounces are not so high, so we get trapped by the largest peaks...

24 Busca Best-First Combina as vantagens das buscas em Largura e Profundidade Profundidade: segue um caminho único, não precisa gerar todos os possíveis caminhos Largura: não tem problemas com loops ou caminhos sem solução Busca Best First : explora o caminho mais promissor visto

25 Busca Best-First s n t g(n) h(n) f(n) = g(n) + h (n) f(n) é uma função que estima o valor heurístico do nó n. s é o nó inicial, t é uma solução

26 Representação de Conhecimento
Herança Lógica Matemática Redes Semânticas Frames

27 Representação de Conhecimento
Algumas tarefas exigem conhecimento do domínio Existem diversas técnicas mas nenhuma delas consegue representar exatamente a realidade Escolher uma boa representação faz grande diferença So far all knowledge we’ve discussed in part of the operators (rules) or part of the heuristic function. Even with this limited use of knowledge we can see how a good representation can make a big difference: Tic-Tac-Toe: - how the board was encoded can make a big difference in how long it takes to see whether or not a win is possible. Chess - how many board evaluations can be stored in a fixed chunk of memory? (transposition table).

28 Conhecimento e Mapeamentos
Conhecimento é uma coleção de fatos sobre o domínio É necessário uma representação de fatos que possa ser manipulada por um programa Envolve linguagem de representação e consulta Symbolic can include numeric domains, since the computer really just deals with symbols for everything (binary combinations). Mapping facts to symbols is clear (that is how we put knowledge into the program), but what about extracting facts from a program ? Sometimes this is the point of the program (theorem provers). One representation of facts is “The English Language”, natural language to be more general. It is often necessary to map from english to our representation.

29 Representação de Propriedades
Adequabilidade Representacional Adequabilidade Inferential Eficiência na Inferência Eficiência na Aquisição Representational Adequacy: must support representation of all kinds of knowledge required by the problem. Inferential Adequacy: must include mechanisms for manipulating the facts to solve the problem. Some representations are more easily manipulated than others (for example Logic vs. English). Inferential Efficiency: need to be able to make inferences (deductions), infer new things from the knowledge easily. The ability to incorporate additional information that can be used to focus the attention of the inference mechanisms to promising areas. Acquisitional Efficiency: can’t be too hard to acquire the initial set of facts, or to convert them to the representation.

30 Herança É, geralmente, utilizada para fornecer uma estrutura de representação que suporta diretamente mecanismos de inferência. Herança de Propriedades é um mecanismo de herança comum. Objetos pertencem a classes. Classes possuem propriedades que são herdadas por objetos que pertencem à classe. Inheritance is a simple inference mechanism we have already seen: spot is a dog, all dogs have tails so: by inference we also have the fact that spot has a tail.

31 Hierarquia de Classes Classes são organizadas em uma hierarquia, dessa forma algumas classes são membros de classes mais gerais. Há variedade em estratégia de representação usadas em IA que são baseadas em herança: regras de produção redes semânticas sistema de frames Frame Systems and Semantic Networks have common idea that objects are nodes in a graph arranged in a hierarchy and that links between nodes represent binary relations.

32 Lógica Usa dedução matemática para derivar novo conhecimento.
Lógica de Predicados é um poderoso esquema de representação para programas de IA. Lógica de Predicados é muito utilizada para como ferramenta de representação e inferência.

33 Representação de Fatos
Representação lógica é comum em programas de IA: Malhado é um cachorro cachorro(Malhado) Todos os cachorros têm rabo x:cachorro(x)->tem_rabo(x) Malhado tem rabo tem_rabo(Malhado) Given the 1st 2 facts, the last could be derived by a system that can do logical deduction (unlike most Jurys). English is not a good representation, and in fact the mapping from english to/from more useful representations is not always clear. For example, does what are the logic representations of the following facts: “All dogs have tails” “Every dog has a tail” more than 1 tail/dog ? Could all dogs share a single tail? IMPORTANT: The “mapping” is not necessarily 1-to-1, it is probably many-many, since there are clearly many ways to represent the same fact in a natural language and there may be many ways to represent any fact in our representational scheme.

34 Relações isa e ako O exemplo usa herança sem explicitamente ter predicados isa ou ako. É possível reescrever os fatos usando fatos isa e ako explicitamente: isa(Marcos,homem) isa(Marcos,Pompeu) ako(Pompeu,Romano)

35 Redes Semânticas Nós representam entidades e arcos representam relações entre nós. Rede de Herança é um bom exemplo. É possível transformar cada arco em um predicado binário que relaciona 2 nós. É possível, também, criar uma rede semântica para representar uma coleção de predicados.

36 Rede Semântica Pessoa Direita Chuta-com ako Adulto Mascul. Altura 1,75 ako 1,82 Altura Jogador Futebol Média de gols 0.56 Some objects are abstract and serve as organizational only (to supply default values for properties). Two attributes (relations) of note are: isa - which means class inclusion. instance - which denotes class membership Using isa and instance the inheritance inference mechanism can provideaccess to implicit facts (derived from those explicitly stored). Each object has a collection of properties which a re the values of attributes (either inherited or not). ako ako Média de gols Média de gols .034 Lateral Atacante 0.67 isa isa Palestra Carlos Pelé Santos Time Time

37 Casado(Marcos,Madonna) Transmite(Madonna,Marcos,Sarampo)
Predicados Homem(Marcos) Casado(Marcos,Madonna) Transmite(Madonna,Marcos,Sarampo) isa casado Homem Marcos Madonna Receptor Transmissor algo-transmitido isa Sarampo G17 Vírus

38 Múltipla Herança Redes Semânticas podem suportar múltipla herança, portanto, é possível revisar o algoritmo básico de herança. Pessoa auto-estima SIM ako ako Não auto-estima Estudante Pai isa isa Dave Dave tem auto-estima?

39 Frames (Cont.) Objetos pertencem a Classes
Um objeto pode pertencer a mais de uma classe Objetos podem estar dispostos em uma taxonomia que permite herança de propriedades Objetos podem possuir uma representação complexa

40 Proposta de Frames Criada em 1974 por Marvin Minsky
Objetivo de representar grandes quantidades de dados de forma estruturada Frames podem estar relacionados e compartilhar similaridades A disposição dos frames forma uma rede semântica

41 Estrutura dos Frames (Cont.)
Estrutura genérica de um frame

42 Estrutura dos Frames (Cont.)
Móvel Cadeira Madeira material um tipo de Branca cor 4 pernas Cadeira do João é um Rede de Semântica Cadeira valor : Móvel ako cor default: branca Móvel valor : RAIZ ako material default: madeira pernas tipo: inteiro default: 4 Cadeira de João valor : Cadeira isa

43 Representação de Frames em Prolog
Cadeira valor : Móvel ako cor default: branca Móvel valor : RAIZ ako material default: madeira pernas tipo: inteiro default: 4 movel(ako,valor,’RAIZ’). movel(material,default,madeira). movel(pernas,tipo,inteiro). movel(pernas,default,4). cadeira(ako,valor,movel). cadeira(cor,default,branca). cadeira_de_joao(isa,valor,cadeira). Cadeira de João valor : Cadeira isa Conjunto de fatos

44 Raciocinadores de Herança
Raciocinadores do Menor Caminho solução mais próxima na hierarquia Raciocinadores Crédulos escolhe arbitrariamente uma solução Raciocinadores Céticos nenhuma solução é escolhida Pacifista Quacker Republicano Nixon isa ako

45 Aprendizado de Máquina (Data Mining ou KDD)

46 Banco de Dados Estatística AM Inteligência Artificial

47 O que se pode fazer com Aprendizado
Dados Informação Conhecim. $ Valor Volume

48 Etapas do Processo de KDD
FAYYAD 1996 ? CONHECIMENTO PADRÕES DADO TRANSFORMADO DATA MINING INTERPRETAÇÃO/ AVALIAÇÃO DADOS SELEÇÃO PRÉ-PROCESSAMENTO ANALISADO PROCESSADO TRANSFORMAÇÃO

49 Aprendizado por Exemplos: Indução
Na estratégia de aprendizado por indução, o sistema adquire os conceitos através de inferências indutivas realizadas sobre fatos fornecidos ou observados.

50 Indução & Dedução Exemplo Dedução: Exemplo de Indução:
todos os homens são fortes Se Pedro é homem Então Pedro é forte Exemplo de Indução: A maioria dos homens é forte

51 Identificar a Tarefa Classificação Associação Clustering

52 Aprendizado por Indução: Classificação
O objetivo é associar a cada exemplo, ou observação, uma classe à qual ele pertence Os conceitos construídos estão representados na forma de um classificador Exemplos Algoritmo de Aprendizado Classificador

53 Aprendizado por Indução: Classificação (cont.)
O exemplo a ser classificado é submetido aos conceitos adquiridos, e uma decisão sobre a sua classe é devolvida pelo classificador Exemplo a ser classificado Sistema Classificador Decisão

54 Problemas com Classificação

55 Aprendizado - Árvores de Decisão (Cont.)
Exterior ensolarado chuvoso nublado umidade Não Pratica Pratica normal alta Algoritmo de Construção Entrada: Conjunto de Exemplos E Saída: Árvore de Decisão T

56 Outros métodos de Aprendizado por Exemplos
Redes Neurais também conhecidas como o modelos coneccionistas são redes interconectadas formadas por elementos computacionais muito simples baseadas no modelo de funcionamento do cérebro camadas intermediárias camada de saída camada de entrada conexões

57 Algoritmos Genéticos Seleção Cruzamento Mutação Nova População
110110 001101 010111 111101 000110 010100 101100 101111 32 24 20 Função de Adequabilidade Seleção Cruzamento Mutação 010110 101110 Nova População População Inicial

58 Clustering Exemplo: Agrupar clientes com comportamentos semelhantes A1

59 Regras de Associação Descobrir associações entre venda de produtos
Exemplos: Se Café e Pão então Manteiga Se Cerveja então Café Se CD e Jornal então Revista e Chocolate

60 Sistemas Especialistas

61 Sistemas Especialistas
Sistema substitui o Especialista Humano? Ferramenta de Apoio à tomada de decisão Aplicações: Diagnóstico Médico Sistemas de Controle de Qualidade Detecção de zonas petrolíferas etc.

62 Modelo dos Sistemas Especialistas
Pergunta ou Explicação Usuário Sistema Especialista Módulo Explicativo Módulo de Interface Resposta ou “Por quê?” Shell Mecanismo de Inferência Base de Conhecimento

63 Como criar uma base de conhecimento?
Engenheiro(s) de Conhecimento BC Especialistas ou BC Exemplos Sistema de AM

64 Ainda tem mais? Gerenciamento de Incerteza IA Distribuída
Case Base Reasoning Planning Processamento em Linguagem Natural etc...

65 Conclusões Puts, é muita coisa!
Identificar o problema e decidir por onde começar Poder computacional X Técnicas de IA X Comportamento Humano Matrix é uma Viagem Total!

66 Dúvidas, Críticas, Sugestões?


Carregar ppt "Inteligência Artificial"

Apresentações semelhantes


Anúncios Google