Skip to content

Instantly share code, notes, and snippets.

@fuadsaud
Created June 12, 2014 18:22
Show Gist options
  • Save fuadsaud/33755d774ba03ef41839 to your computer and use it in GitHub Desktop.
Save fuadsaud/33755d774ba03ef41839 to your computer and use it in GitHub Desktop.

Inteligencia Artificial

Sistemas Especialistas

1. O que sao sistemas especialistas?

Um sistema especialista e um sistema computacional que simula a habilidade de tomada de decisoes de um humano especialista em um determinado dominio. Sao projetados com intuito de resolver problemas complexos atraves de raciocionio realizado sobre uma base de conhecimento.

2. Quais elementos caracterizam um sistema especialista?

Um sistema especialista e composto fundamentalmente por uma base de conhecimento - que representa de forma estruturada fatos e regras do dominio em questao - e um motor de inferencia - que aplica regras logicas sobe a base de conhecimento com intuito de deduzir novos conhecimentos.

3. Cite alguns sistemas especialistas classicos que fizeram historia na IA e em que eles foram aplicados.

  • DENDRAL: Determinação automática da estrutura molecular de uma molécula desconhecida através de sua análise espectrográfica;
  • MYCIN: Procurou imitar um médico num consultório;
  • CATS-1: Treinamento de engenheiros novatos;
  • R1 (ou XCON): Configuração de computadores de VAX (Virtual Address eXtension), a partir de especificações dos clientes;

4. Qual o papel da base de conhecimento, da maquina de inferencia e do subsistema de explanacao em SE's?

A base de conhecimento armazena de forma estruturada fatos e regras sobre o dominio em questao. A maquina de inferencia interpreta as informacoes contidas na base de conhecimento por meio de raciocinios logicos, com intuito de inferir novos conhecimentos. O subsistema de explanacao e responsavel por explicar para o usuario os raciocinios utilizados para chegar em determinadas conclusoes.

5. Defina os papeis de cada personagem: Especialista, Engenheiro do Conhecimento e Usuario. Quais as responsabilidades de cada um?

  • Especialista: profundo conhecedor do dominio em questao, e responsavel pelo conhecimento a ser inserido na base do sistema.
  • Engenheiro do Conhecimento: transforma e formata o conhecimento do especialista em regras e estruturas que possam ser inseridas no sistema especialista.
  • Usuario: utiliza o sistema caracterizando problemas para obter uma solucao.

6. Especifique o ciclo exploratorio do desenvolvimento de um SE.

Especificacao do dominio do sistema e metas; levantamento de conhecimento atraves de um especialista; construcao do projeto e do prototipo; refinacao do sistema; verificacao de base de dados e possiveis resultados; teste final;

7. Cite vantagens e desvantagens de abordagens baseadas em regras utilizadas por SE's.

Vantagens: capacidade de usar diretamente o conhecimento experimental de especialistas, regras sao apropriadas para busca em espaco de estados, separacap entre conhecimento e controle, possibilidade de bom desempenho em dominios limitados, reecusros de explanacao.

Desvantagens: regras humanas altamente heurísticas não capturam o conhecimento funcional ou baseado em modelo do domínio, regras sao frageis (falta de informacao), rapida degradacao (dificuldade em tratar o inusitado), explanacao somente em nivel descritivo, altamente dependente da tarefa e do conhecimento.

8. Diferencie o raciocinio baseado em modelo do raciocinio baseado em casos para o desenvolvimento de SE's.

O raciocinio baseado em casos sse utiliza de problemas apassados para corrigir e resolver situacoes futuras, enquanto o raciocinio baseado em model utiliza de conhecimento robusto retirado diretamente de um modelo funcional ja existente.

Redes Neurais

1. O que sao Redes Neurais Artificias?

RNA sao modelos computacionais inspirados pelo sistema nervoso central de um animal que e capaz de realizar aprendizado de maquina bem como o reconhecimento de padroes. Sao geralmente apresentadas como sistemas de neuronios interconectados que podem computar valores de entradas.

Sao sistemas paralelos e distribuidos compostos por unidades simples de processamento - chamadas nos - responsaveis por realizar determinadas funcoes matematicas, geralmente nao lineares. Os nos estao dispostos em uma ou mais camadas e interligados por um numero significativo de conexoes, quase sempre unidericionais. A maioria dos modelos apresenta conexoes associadas a pesos que armazenam o conhecimento representado no modelo e servem para ponderar a entrada recebida da rede.

2. Quais elementos compoe o neuronio artificial e como eles se integram para produzir a saida do neuronio?

Um neuronio artificial e composto por sinais de entrada, pesos, funcao somatoria (bias), funcao de transferencia e saida. Os estimulos captados pelos sinais de entrada sao processados pela funcao somatoria - aplicando os pesos apropriadamente - e disparados pela funcao limiar (funcao de transferencia) produzindo a saida.

3. Quais as caracteristicas de uma rede neural Perceptron?

Redes neurais Perceptron simples sao compostas de duas camadas - entrada e saida -; utilizam uma funcao de limiar (degrau), ou "tudo ou nada"; sao uteis porem limitadas por tratar de problemas linearmente separaveis.

Redes neurais Perceptron multicamadas tem a peculiaridade de ter no minimo uma camada escondida entre a entrada e a saida e funcionam como uma solucao para problemas nao linearmente separaveis.

4. Quais os passos basicos do algoritmo Backpropagation para treinamento de uma rede MLP?

  1. Inicializacao dos pesos, bias, taxa de aprendizado, momento e definicao dos criterios de parada;
  2. Apresentacao para a rede dos exemplos de terinamento. Uma epoca e apresentada a rede e para cada exemplo do conjunto sao reaziados os passos 3 e 4;
  3. Propagacao: os sinais de entrada sao propagados pela rede, camada por camada ate que uma saida seja gerada;
  4. Retropropagacao: a saida obtida e comparada a saida desejada para esse padrao partucular, Se estas nao forem iguais, o erro e calculado. O erro e propagado a partira da camada de saida ate a camada de entrada e os pesos das conexoes das unidades da camada de saida e das camadas intermediarias vao sendo modificados conforme o erro e retropropagado;
  5. A iteracao descrita pelos passos 1 e 2 e repetida para epoca de exemplos de treinamento, ate que seja satisfeito o criterio de parada.

5. Descreva os elementos fundamentais para a definicao da arquitetura de RNA'sAA

  • Numero de camadas: define o numero de camadas de processamentos escondidas;
  • Conexoes de nos: define se os nos estao conectados de forma aciclica - ou seja, as conexoes nao formam ciclos direcionados (feedforward) -, ou de forma ciclica - quando ocorrem ciclos direcionados (feedback);
  • Conectividade da rede: define se todos os nos da rede de uma camada pra outra estao conectados ou nao.

6. Diferencie as duas formas de aprendizado de RNA's: supervisonado e nao supervisionado.

Aprendizado supervisionado consiste em fornecer dados de treinamento a rede e, comparando as saidas geradas com as saidas esperadas, ajustar o funcionamento da rede de acordo.

Aprendizado nao supervisonado ocorre pela tentativa de indentificao de padroes nas saidas geradas a partir das entradas dadas. Para tal sao usadas algumas tecnicas como analise de clustering, cadeias de Markov escondidas, etc.

  1. Diferencie as duas formas de aprendizado de RNAs: supervisionada e não supervisionada.
  2. Por que é importante o tratamento do tempo por RNAs?
  3. O que é uma época no treinamento de RNAs?
  4. Quais os 3 principais critérios de parada do algoritmo Backpropagation para treinamento de uma rede neural artificial?
  5. Descreva o que é uma Self-organizing Maps e o seu principio de funcionamento.
  6. Qual a principal característica de uma rede recorrente? Cite o nome de um modelo de rede com essa característica.
  7. Qual o papel do supervisor no treinamento supervisionado de redes neurais artificiais. Explique como ele atua no cálculo do erro para correção dos pesos da rede.
  8. Explique como podemos inserir memória numa rede neural para ela tratar problemas com dependências temporais?
  9. Explique em que consiste o processo de fuzzificação em Sistemas Fuzzy.
  10. Quais as 3 operações básicas da Lógica Fuzzy, explique os princípios de cada uma.
  11. Cite o nome de duas técnicas clássicas utilizadas no processo de defuzzyficação em Sistemas Fuzzy.
  12. Explique o ciclo básico de funcionamento de um algoritmo genético e cite quais os critérios que determinam a parada no processo de evolução de um algoritmo genético.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment