Inteligência Artificial - Guia Rápido

Inteligência Artificial - Visão Geral

Desde a invenção de computadores ou máquinas, sua capacidade de executar várias tarefas continuou crescendo exponencialmente. Os seres humanos desenvolveram o poder dos sistemas de computadores em termos de seus diversos domínios de trabalho, sua velocidade crescente e redução de tamanho em relação ao tempo.

Um ramo da Ciência da Computação chamado Inteligência Artificial busca criar computadores ou máquinas tão inteligentes quanto os seres humanos.

O que é inteligência artificial?

Segundo o pai da Inteligência Artificial, John McCarthy, é “a ciência e a engenharia de fabricação de máquinas inteligentes, especialmente programas de computador inteligentes”.

A inteligência artificial é uma maneira de fazer um computador, um robô controlado por computador ou um software pensar inteligentemente , da mesma maneira que os humanos inteligentes pensam.

A IA é realizada estudando como o cérebro humano pensa e como os humanos aprendem, decidem e trabalham enquanto tentam resolver um problema e, em seguida, usam os resultados deste estudo como base para o desenvolvimento de software e sistemas inteligentes.

Filosofia da IA

Enquanto explora o poder dos sistemas de computadores, a curiosidade do ser humano, leva-o a pensar: "Uma máquina pode pensar e se comportar como os humanos?"

Assim, o desenvolvimento da IA começou com a intenção de criar inteligência semelhante em máquinas que encontramos e consideramos alta em humanos.

Objetivos da IA

  • Para criar sistemas especialistas - Os sistemas que exibem comportamento inteligente, aprendem, demonstram, explicam e aconselham seus usuários.

  • Implementar inteligência humana em máquinas - Criando sistemas que entendem, pensam, aprendem e se comportam como seres humanos.

O que contribui para a IA?

A inteligência artificial é uma ciência e tecnologia baseada em disciplinas como Ciência da Computação, Biologia, Psicologia, Linguística, Matemática e Engenharia. Um grande impulso da IA está no desenvolvimento de funções de computador associadas à inteligência humana, como raciocínio, aprendizado e solução de problemas.

Das seguintes áreas, uma ou várias áreas podem contribuir para construir um sistema inteligente.

Componentes da IA

Programando sem e com IA

A programação sem e com IA é diferente das seguintes maneiras -

Programação sem IA Programando com AI
Um programa de computador sem IA pode responder a perguntas específicas que ele pretende solucionar. Um programa de computador com IA pode responder às perguntas genéricas que ele pretende solucionar.
A modificação no programa leva a mudanças em sua estrutura. Os programas de IA podem absorver novas modificações reunindo informações altamente independentes. Portanto, você pode modificar até mesmo uma pequena informação do programa sem afetar sua estrutura.
A modificação não é rápida e fácil. Isso pode afetar o programa adversamente. Modificação rápida e fácil do programa.

O que é a técnica da IA?

No mundo real, o conhecimento tem algumas propriedades indesejadas -

  • Seu volume é enorme, quase inimaginável.
  • Não é bem organizado ou bem formatado.
  • Ele continua mudando constantemente.

A técnica da IA é uma maneira de organizar e usar o conhecimento de maneira eficiente, de maneira que:

  • Deve ser percebido pelas pessoas que o fornecem.
  • Deve ser facilmente modificável para corrigir erros.
  • Deve ser útil em muitas situações, embora seja incompleto ou impreciso.

As técnicas de IA aumentam a velocidade de execução do programa complexo com o qual está equipado.

Aplicações de IA

A IA tem sido dominante em vários campos, como -

  • Jogos - A IA desempenha um papel crucial em jogos estratégicos como xadrez, pôquer, jogo da velha, etc., onde a máquina pode pensar em um grande número de posições possíveis com base no conhecimento heurístico.

  • Processamento de linguagem natural - É possível interagir com o computador que entende a linguagem natural falada pelos seres humanos.

  • Sistemas Especialistas - Existem alguns aplicativos que integram máquina, software e informações especiais para transmitir raciocínio e aconselhamento. Eles fornecem explicações e conselhos aos usuários.

  • Sistemas de visão - Esses sistemas entendem, interpretam e compreendem a entrada visual no computador. Por exemplo,

    • Um avião espião tira fotografias, que são usadas para descobrir informações espaciais ou mapas das áreas.

    • Os médicos usam o sistema especialista clínico para diagnosticar o paciente.

    • A polícia usa um software de computador capaz de reconhecer o rosto do criminoso com o retrato armazenado feito pelo artista forense.

  • Reconhecimento de fala - Alguns sistemas inteligentes são capazes de ouvir e compreender a linguagem em termos de sentenças e seus significados, enquanto um humano fala com ela. Ele pode lidar com diferentes sotaques, gírias, ruído de fundo, alteração no ruído humano devido ao frio, etc.

  • Reconhecimento de manuscrito - O software de reconhecimento de manuscrito lê o texto escrito em papel por uma caneta ou na tela por uma caneta. Ele pode reconhecer as formas das letras e convertê-las em texto editável.

  • Robôs Inteligentes - Os robôs são capazes de executar as tarefas dadas por um ser humano. Eles possuem sensores para detectar dados físicos do mundo real, como luz, calor, temperatura, movimento, som, impacto e pressão. Eles possuem processadores eficientes, múltiplos sensores e memória enorme, para exibir inteligência. Além disso, eles são capazes de aprender com seus erros e podem se adaptar ao novo ambiente.

História da IA

Aqui está a história da IA durante o século 20 -

Ano Marco / Inovação
1923

A peça de Karel Čapek, denominada “Rossum's Universal Robots” (RUR), abre em Londres, primeiro uso da palavra "robô" em inglês.

1943

Fundações para redes neurais estabelecidas.

1945

Isaac Asimov, um ex-aluno da Universidade de Columbia, cunhou o termo Robótica .

1950

Alan Turing introduziu o Teste de Turing para avaliação da inteligência e publicou Computing Machinery and Intelligence. Claude Shannon publicou uma Análise detalhada do jogo de xadrez como uma pesquisa.

1956

John McCarthy cunhou o termo Inteligência Artificial . Demonstração do primeiro programa de IA em execução na Carnegie Mellon University.

1958

John McCarthy inventa a linguagem de programação LISP para IA.

1964

A dissertação de Danny Bobrow no MIT mostrou que os computadores podem entender a linguagem natural suficientemente bem para resolver problemas de palavras de álgebra corretamente.

1965

Joseph Weizenbaum, do MIT, criou o ELIZA , um problema interativo que mantém um diálogo em inglês.

1969

Cientistas do Stanford Research Institute desenvolveram o Shakey , um robô equipado com locomoção, percepção e solução de problemas.

1973

O grupo Assembly Robotics da Universidade de Edimburgo construiu o Freddy , o famoso robô escocês, capaz de usar a visão para localizar e montar modelos.

1979

O primeiro veículo autônomo controlado por computador, Stanford Cart, foi construído.

1985

Harold Cohen criou e demonstrou o programa de desenho Aaron .

1990

Grandes avanços em todas as áreas da IA -

  • Demonstrações significativas em aprendizado de máquina
  • Raciocínio baseado em Casos
  • Planejamento multi-agente
  • Agendamento
  • Mineração de dados, rastreador da Web
  • compreensão e tradução de linguagem natural
  • Visão, Realidade Virtual
  • Jogos
1997

O programa Deep Blue Chess vence o então campeão mundial de xadrez, Garry Kasparov.

2000

Animais de estimação robôs interativos ficam disponíveis comercialmente. O MIT exibe o Kismet , um robô com um rosto que expressa emoções. O robô Nomad explora regiões remotas da Antártica e localiza meteoritos.

Inteligência Artificial - Sistemas Inteligentes

Enquanto estuda artificialmente a inteligência, você precisa saber o que é inteligência. Este capítulo aborda a idéia de inteligência, tipos e componentes de inteligência.

O que é inteligência?

A capacidade de um sistema de calcular, raciocinar, perceber relacionamentos e analogias, aprender com a experiência, armazenar e recuperar informações da memória, resolver problemas, compreender idéias complexas, usar a linguagem natural com fluência, classificar, generalizar e adaptar novas situações.

Tipos de Inteligência

Conforme descrito por Howard Gardner, psicólogo americano do desenvolvimento, o Intelligence vem em múltiplas

Inteligência Descrição Exemplo
Inteligência linguística A capacidade de falar, reconhecer e usar mecanismos de fonologia (sons da fala), sintaxe (gramática) e semântica (significado). Narradores, Oradores
Inteligência musical A capacidade de criar, comunicar e entender significados feitos de som, compreensão de tom, ritmo. Músicos, Cantores, Compositores
Inteligência lógico-matemática A capacidade de usar e entender relacionamentos na ausência de ação ou objetos. Compreendendo idéias complexas e abstratas. Matemáticos, Cientistas
Inteligência espacial A capacidade de perceber informações visuais ou espaciais, alterá-las e recriar imagens visuais sem referência aos objetos, construir imagens 3D e movê-las e girá-las. Leitores de mapas, Astronautas, Físicos
Inteligência corporal-cinestésica A capacidade de usar todo ou parte do corpo para resolver problemas ou produtos da moda, controlar as habilidades motoras finas e grosseiras e manipular os objetos. Jogadores, Dançarinos
Inteligência intra-pessoal A capacidade de distinguir entre os próprios sentimentos, intenções e motivações. Gautam Buddhha
Inteligência interpessoal A capacidade de reconhecer e fazer distinções entre os sentimentos, crenças e intenções de outras pessoas. Comunicadores de Massa, Entrevistadores

Você pode dizer que uma máquina ou um sistema é artificialmente inteligente quando equipado com pelo menos uma e no máximo todas as inteligências nela.

Do que é composta a inteligência?

A inteligência é intangível. É composto por -

  • Raciocínio
  • Aprendendo
  • Solução de problemas
  • Percepção
  • Inteligência Linguística
Componentes da inteligência

Vamos analisar brevemente todos os componentes -

  • Raciocínio - É o conjunto de processos que nos permite fornecer base para julgamento, tomada de decisões e previsão. Existem amplamente dois tipos -

Raciocínio indutivo Raciocínio dedutivo
Conduz observações específicas para fazer declarações gerais amplas. Começa com uma declaração geral e examina as possibilidades de chegar a uma conclusão lógica e específica.
Mesmo que todas as premissas sejam verdadeiras em uma afirmação, o raciocínio indutivo permite que a conclusão seja falsa. Se algo é verdadeiro para uma classe de coisas em geral, também é verdade para todos os membros dessa classe.
Exemplo - "Nita é professora. Nita é estudiosa. Portanto, todos os professores são estudiosos". Exemplo - "Todas as mulheres acima de 60 anos são avós. Shalini tem 65 anos. Portanto, Shalini é avó."
  • Aprendizagem - é a atividade de adquirir conhecimento ou habilidade estudando, praticando, sendo ensinado ou experimentando alguma coisa. A aprendizagem aprimora a conscientização dos sujeitos do estudo.

    A capacidade de aprender é possuída por humanos, alguns animais e sistemas habilitados para IA. A aprendizagem é categorizada como -

    • Aprendizagem auditiva - é aprender ouvindo e ouvindo. Por exemplo, alunos ouvindo palestras em áudio gravadas.

    • Aprendizagem episódica - Aprender lembrando sequências de eventos que alguém testemunhou ou experimentou. Isso é linear e ordenado.

    • Aprendizagem Motora - É a aprendizagem pelo movimento preciso dos músculos. Por exemplo, escolher objetos, escrever etc.

    • Aprendizagem Observacional - Aprender observando e imitando outras pessoas. Por exemplo, a criança tenta aprender imitando os pais.

    • Aprendizagem Perceptual - É aprender a reconhecer estímulos que já se viu antes. Por exemplo, identificando e classificando objetos e situações.

    • Aprendizagem relacional - envolve aprender a diferenciar entre vários estímulos com base em propriedades relacionais, em vez de propriedades absolutas. Por exemplo, a adição de 'pouco menos' de sal na hora de cozinhar batatas que vieram salgadas da última vez, quando cozidas com adição, digamos, uma colher de sopa de sal.

    • Aprendizagem espacial - é a aprendizagem através de estímulos visuais, como imagens, cores, mapas, etc. Por exemplo, uma pessoa pode criar um roteiro em mente antes de realmente seguir a estrada.

    • Aprendizagem com resposta a estímulos - é aprender a executar um comportamento específico quando um determinado estímulo está presente. Por exemplo, um cão levanta a orelha ao ouvir a campainha.

  • Solução de problemas - É o processo no qual alguém percebe e tenta chegar a uma solução desejada a partir de uma situação atual, seguindo algum caminho que é bloqueado por obstáculos conhecidos ou desconhecidos.

    A solução de problemas também inclui a tomada de decisões , que é o processo de selecionar a melhor alternativa adequada dentre várias alternativas para alcançar a meta desejada.

  • Percepção - É o processo de aquisição, interpretação, seleção e organização de informações sensoriais.

    A percepção pressupõe sensoriamento . Nos seres humanos, a percepção é auxiliada por órgãos sensoriais. No domínio da IA, o mecanismo de percepção reúne os dados adquiridos pelos sensores de maneira significativa.

  • Inteligência Linguística - É a capacidade de alguém usar, compreender, falar e escrever a linguagem verbal e escrita. É importante na comunicação interpessoal.

Diferença entre inteligência humana e máquina

  • Os seres humanos percebem por padrões, enquanto as máquinas percebem por conjunto de regras e dados.

  • Os seres humanos armazenam e recuperam informações por padrões, as máquinas fazem isso pesquisando algoritmos. Por exemplo, o número 40404040 é fácil de lembrar, armazenar e recuperar, pois seu padrão é simples.

  • Os seres humanos podem descobrir o objeto completo, mesmo que alguma parte dele esteja ausente ou distorcida; enquanto as máquinas não podem fazê-lo corretamente.

Inteligência Artificial - Áreas de Pesquisa

O domínio da inteligência artificial é enorme em largura e largura. Ao prosseguir, consideramos as áreas de pesquisa amplamente comuns e prósperas no domínio da IA -

Áreas de Pesquisa em Inteligência

Reconhecimento de Voz e Voz

Esses dois termos são comuns em robótica, sistemas especializados e processamento de linguagem natural. Embora esses termos sejam usados de forma intercambiável, seus objetivos são diferentes.

Reconhecimento de fala Reconhecimento de voz
O reconhecimento de fala visa compreender e compreender o que foi falado. O objetivo do reconhecimento de voz é reconhecer quem está falando.
É usado na computação com mãos livres, mapa ou navegação de menu. É usado para identificar uma pessoa analisando seu tom, tom de voz, sotaque etc.
A máquina não precisa de treinamento para reconhecimento de fala, pois não depende do alto-falante. Este sistema de reconhecimento precisa de treinamento, pois é orientado para a pessoa.
Os sistemas de reconhecimento de fala independentes do orador são difíceis de desenvolver. Os sistemas de reconhecimento de fala dependentes do alto-falante são comparativamente fáceis de desenvolver.

Trabalho de sistemas de reconhecimento de voz e voz

A entrada do usuário falada no microfone vai para a placa de som do sistema. O conversor transforma o sinal analógico em sinal digital equivalente para o processamento de fala. O banco de dados é usado para comparar os padrões de som para reconhecer as palavras. Finalmente, um feedback reverso é dado ao banco de dados.

Esse texto no idioma de origem se torna entrada no mecanismo de tradução, que o converte no texto no idioma de destino. Eles são suportados com GUI interativa, grande banco de dados de vocabulário, etc.

Aplicações na vida real das áreas de pesquisa

Há uma grande variedade de aplicativos em que a IA serve pessoas comuns no dia a dia -

Sr. Não. Áreas de Pesquisa Aplicação na vida real
1

Sistemas especializados

Exemplos - sistemas de rastreamento de vôo, sistemas clínicos.

Aplicação de Sistemas Especializados
2

Processamento de linguagem natural

Exemplos: recurso do Google Now, reconhecimento de voz, saída de voz automática.

Aplicativo PNL
3

Redes neurais

Exemplos - Sistemas de reconhecimento de padrões, como reconhecimento facial, reconhecimento de caracteres e reconhecimento de escrita manual.

Aplicação de redes neurais
4

Robótica

Exemplos - Robôs industriais para movimentação, pulverização, pintura, verificação de precisão, perfuração, limpeza, revestimento, escultura, etc.

Aplicação de robótica
5

Sistemas lógicos difusos

Exemplos - eletrônicos de consumo, automóveis, etc.

Aplicação lógica difusa

Classificação da tarefa da IA

O domínio da IA é classificado em tarefas formais, tarefas mundanas e tarefas especializadas.

Domínios de tarefas da IA
Domínios de tarefas de inteligência artificial
Tarefas mundanas (comuns) Tarefas formais Tarefas especializadas
Percepção
  • Visão por Computador
  • Fala, Voz
  • Matemática
  • Geometria
  • Lógica
  • Integração e Diferenciação
  • Engenharia
  • Detecção de avarias
  • Fabricação
  • Monitoramento
Processamento de linguagem natural
  • Compreensão
  • Geração de idiomas
  • Tradução de idiomas
Jogos
  • Ir
  • Xadrez (azul profundo)
  • Ckeckers
Análise Científica
Senso comum Verificação Analise financeira
Raciocínio Prova do Teorema Diagnóstico médico
Planeamento Criatividade
Robótica
  • Locomotiva

Os seres humanos aprendem tarefas mundanas (comuns) desde o nascimento. Eles aprendem pela percepção, falando, usando a linguagem e locomotivas. Eles aprendem tarefas formais e tarefas especializadas mais tarde, nessa ordem.

Para os humanos, as tarefas mundanas são mais fáceis de aprender. O mesmo foi considerado verdadeiro antes de tentar implementar tarefas mundanas em máquinas. Antes, todo o trabalho de IA estava concentrado no domínio das tarefas mundanas.

Mais tarde, descobriu-se que a máquina requer mais conhecimento, representação complexa do conhecimento e algoritmos complicados para lidar com tarefas mundanas. Essa é a razão pela qual o trabalho de IA está mais prosperando no domínio Tarefas especializadas agora, pois o domínio de tarefas especializadas precisa de conhecimento especializado sem bom senso, o que pode ser mais fácil de representar e manipular.

AI - Agentes e ambientes

Um sistema de IA é composto por um agente e seu ambiente. Os agentes atuam em seu ambiente. O ambiente pode conter outros agentes.

O que são agente e ambiente?

Um agente é qualquer coisa que possa perceber seu ambiente através de sensores e agir sobre esse ambiente através de efetores.

  • Um agente humano possui órgãos sensoriais, como olhos, ouvidos, nariz, língua e pele paralelos aos sensores, e outros órgãos, como mãos, pernas, boca, para efetores.

  • Um agente robótico substitui câmeras e telêmetros infravermelhos pelos sensores e vários motores e atuadores pelos efetores.

  • Um agente de software codificou cadeias de bits como seus programas e ações.

Agente e ambiente

Terminologia do agente

  • Medida de desempenho do agente - é o critério que determina o sucesso de um agente.

  • Comportamento do agente - É a ação que o agente executa após qualquer sequência de percepções.

  • Percepção - São as entradas perceptivas do agente em uma determinada instância.

  • Percept Sequence - É a história de tudo que um agente percebeu até a data.

  • Função do agente - É um mapa da sequência de preceitos para uma ação.

Racionalidade

A racionalidade nada mais é do que o status de ser razoável, sensível e ter bom senso de julgamento.

A racionalidade está relacionada às ações e resultados esperados, dependendo do que o agente percebeu. Realizar ações com o objetivo de obter informações úteis é uma parte importante da racionalidade.

O que é o Rational Agent Ideal?

Um agente racional ideal é aquele que é capaz de executar as ações esperadas para maximizar sua medida de desempenho, com base em:

  • Sua sequência de percepção
  • Sua base de conhecimento integrada

A racionalidade de um agente depende do seguinte -

  • As medidas de desempenho , que determinam o grau de sucesso.

  • Sequência de percepção do agente até agora.

  • O conhecimento prévio do agente sobre o meio ambiente .

  • As ações que o agente pode executar.

Um agente racional sempre executa a ação correta, onde a ação correta significa a ação que faz com que o agente seja mais bem-sucedido na sequência de percepção fornecida. O problema que o agente resolve é caracterizado por Medida de desempenho, ambiente, atuadores e sensores (PEAS).

A estrutura dos agentes inteligentes

A estrutura do agente pode ser vista como -

  • Agente = Arquitetura + Programa do Agente
  • Arquitetura = o mecanismo em que um agente executa.
  • Programa do Agente = uma implementação de uma função do agente.

Simple Reflex Agents

  • Eles escolhem ações apenas com base na percepção atual.
  • Eles são racionais somente se uma decisão correta for tomada apenas com base no preceito atual.
  • Seu ambiente é completamente observável.

Regra de Condição-Ação - É uma regra que mapeia um estado (condição) para uma ação.

Simple Reflex Agent

Agentes Reflexos Baseados em Modelos

Eles usam um modelo do mundo para escolher suas ações. Eles mantêm um estado interno.

Modelo - conhecimento sobre "como as coisas acontecem no mundo".

Estado Interno - É uma representação de aspectos não observados do estado atual, dependendo do histórico de percepção.

A atualização do estado requer as informações sobre -

  • Como o mundo evolui.
  • Como as ações do agente afetam o mundo.
Agentes Reflexos Baseados em Modelos

Agentes com base em metas

Eles escolhem suas ações para atingir objetivos. A abordagem baseada em objetivos é mais flexível que o agente reflexo, pois o conhecimento que sustenta uma decisão é explicitamente modelado, permitindo modificações.

Objetivo - É a descrição das situações desejáveis.

Agentes de reflexo baseados em objetivos

Agentes baseados em utilitários

Eles escolhem ações com base em uma preferência (utilitário) para cada estado.

Os objetivos são inadequados quando -

  • Existem objetivos conflitantes, dos quais apenas alguns podem ser alcançados.

  • Os objetivos têm alguma incerteza de serem alcançados e você precisa avaliar a probabilidade de sucesso com a importância de um objetivo.

Agentes baseados em utilitários

A natureza dos ambientes

Alguns programas operam em um ambiente totalmente artificial confinado à entrada do teclado, banco de dados, sistemas de arquivos de computador e saída de caracteres em uma tela.

Por outro lado, alguns agentes de software (robôs de software ou softbots) existem em domínios ricos e ilimitados de softbots. O simulador possui um ambiente muito detalhado e complexo . O agente de software precisa escolher entre uma longa variedade de ações em tempo real. Um softbot projetado para verificar as preferências on-line do cliente e mostrar itens interessantes para o cliente trabalhar no ambiente real e artificial .

O ambiente artificial mais famoso é o ambiente do Teste de Turing , no qual um agente real e outros agentes artificiais são testados em igualdade de condições. Este é um ambiente muito desafiador, pois é altamente difícil para um agente de software executar tanto quanto um ser humano.

Teste de Turing

O sucesso de um comportamento inteligente de um sistema pode ser medido com o Teste de Turing.

Duas pessoas e uma máquina a ser avaliada participam do teste. Das duas pessoas, uma desempenha o papel de testador. Cada um deles fica em salas diferentes. O testador não sabe quem é a máquina e quem é humano. Ele interroga as perguntas digitando e enviando-as para as duas inteligências, às quais recebe respostas digitadas.

Este teste visa enganar o testador. Se o testador falhar em determinar a resposta da máquina a partir da resposta humana, diz-se que a máquina é inteligente.

Propriedades do ambiente

O ambiente possui propriedades múltiplas -

  • Discreto / Contínuo - Se houver um número limitado de estados distintos, claramente definidos, do ambiente, o ambiente será discreto (por exemplo, xadrez); caso contrário, é contínuo (por exemplo, dirigir).

  • Observável / Parcialmente Observável - Se for possível determinar o estado completo do ambiente a cada momento, a partir das percepções, é observável; caso contrário, é apenas parcialmente observável.

  • Estático / Dinâmico - Se o ambiente não mudar enquanto um agente estiver atuando, ele será estático; caso contrário, é dinâmico.

  • Agente único / Vários agentes - O ambiente pode conter outros agentes que podem ser do mesmo ou de um tipo diferente daquele do agente.

  • Acessível / Inacessível - Se o aparelho sensorial do agente puder ter acesso ao estado completo do ambiente, o ambiente estará acessível para esse agente.

  • Determinístico / Não determinístico - Se o próximo estado do ambiente for completamente determinado pelo estado atual e pelas ações do agente, o ambiente será determinístico; caso contrário, é não determinístico.

  • Episódico / Não episódico - Em um ambiente episódico, cada episódio consiste no agente que percebe e depois age. A qualidade de sua ação depende apenas do episódio em si. Os episódios subsequentes não dependem das ações dos episódios anteriores. Os ambientes episódicos são muito mais simples porque o agente não precisa pensar no futuro.

AI - Algoritmos de Pesquisa Popular

A pesquisa é a técnica universal de resolução de problemas na IA. Existem alguns jogos para um jogador, como jogos de peças, Sudoku, palavras cruzadas, etc. Os algoritmos de busca ajudam você a procurar uma posição específica nesses jogos.

Problemas de localização de agente único

Jogos como quebra-cabeças 3X3 de oito peças, 4X4 quinze e 5X5 e vinte e quatro peças são desafios de encontrar um único agente. Eles consistem em uma matriz de ladrilhos com um ladrilho em branco. É necessário que o jogador organize as peças deslizando uma peça vertical ou horizontalmente em um espaço em branco, com o objetivo de atingir algum objetivo.

Os outros exemplos de problemas de localização de agente único são o Problema do Vendedor em Viagem, o Cubo de Rubik e a Prova de Teoremas.

Terminologia de pesquisa

  • Espaço do problema - é o ambiente em que a pesquisa ocorre. (Um conjunto de estados e um conjunto de operadores para alterar esses estados)

  • Instância do problema - É o estado inicial + o objetivo.

  • Gráfico de Espaço do Problema - Representa o estado do problema. Estados são mostrados por nós e operadores são mostrados por arestas.

  • Profundidade de um problema - Comprimento de um caminho mais curto ou de uma sequência mais curta de operadores, do estado inicial ao estado do objetivo.

  • Complexidade do espaço - O número máximo de nós armazenados na memória.

  • Complexidade de tempo - O número máximo de nós que são criados.

  • Admissibilidade - Uma propriedade de um algoritmo para sempre encontrar uma solução ideal.

  • Fator de ramificação - O número médio de nós filhos no gráfico de espaço problemático.

  • Profundidade - comprimento do caminho mais curto do estado inicial ao estado do objetivo.

Estratégias de busca por força bruta

Eles são mais simples, pois não precisam de nenhum conhecimento específico de domínio. Eles funcionam bem com um pequeno número de estados possíveis.

Requisitos -

  • Descrição do estado
  • Um conjunto de operadores válidos
  • Estado inicial
  • Descrição do estado da meta

Primeira pesquisa de largura

Ele começa no nó raiz, explora primeiro os nós vizinhos e passa para os vizinhos de próximo nível. Ele gera uma árvore por vez até que a solução seja encontrada. Ele pode ser implementado usando a estrutura de dados da fila FIFO. Este método fornece o caminho mais curto para a solução.

Se fator de ramificação (número médio de nós filhos para um determinado nó) = be profundidade = d, número de nós no nível d = b d .

O número total de nós criados no pior caso é b + b 2 + b 3 +… + b d .

Desvantagem - Como cada nível de nós é salvo para criar o próximo, ele consome muito espaço na memória. O requisito de espaço para armazenar nós é exponencial.

Sua complexidade depende do número de nós. Pode verificar nós duplicados.

Primeira Pesquisa de Largura

Pesquisa em profundidade

É implementado em recursão com a estrutura de dados da pilha LIFO. Ele cria o mesmo conjunto de nós que o método Largura primeiro, apenas na ordem diferente.

Como os nós no caminho único são armazenados em cada iteração do nó raiz para o folha, o requisito de espaço para armazenar nós é linear. Com o fator de ramificação be profundidade como m , o espaço de armazenamento é bm.

Desvantagem - Este algoritmo pode não terminar e continuar infinitamente em um caminho. A solução para esse problema é escolher uma profundidade de corte. Se o corte ideal for d , e se o corte escolhido for menor que d , esse algoritmo poderá falhar. Se o corte escolhido for maior que d , o tempo de execução aumentará.

Sua complexidade depende do número de caminhos. Não pode verificar nós duplicados.

Primeira pesquisa de profundidade

Pesquisa Bidirecional

Ele pesquisa para frente do estado inicial e para trás do estado do objetivo até que ambos se encontrem para identificar um estado comum.

O caminho do estado inicial é concatenado com o caminho inverso do estado do objetivo. Cada pesquisa é feita apenas até a metade do caminho total.

Pesquisa uniforme de custos

A classificação é feita no aumento do custo do caminho para um nó. Ele sempre expande o nó de menor custo. É idêntico à pesquisa de largura em primeiro lugar se cada transição tiver o mesmo custo.

Explora caminhos na ordem crescente de custo.

Desvantagem - pode haver vários caminhos longos com o custo ≤ C *. A pesquisa de custo uniforme deve explorar todos eles.

Busca aprofundada iterativa de profundidade

Ele realiza a pesquisa de profundidade até o nível 1, recomeça, executa uma pesquisa completa de profundidade até o nível 2 e continua dessa maneira até que a solução seja encontrada.

Ele nunca cria um nó até que todos os nós inferiores sejam gerados. Ele salva apenas uma pilha de nós. O algoritmo termina quando encontra uma solução em profundidade d . O número de nós criados na profundidade d é b d e na profundidade d-1 é b d-1.

Pesquisa DF aprofundada interativa

Comparação de várias complexidades de algoritmos

Vamos ver o desempenho de algoritmos com base em vários critérios -

Critério Largura primeiro Profundidade em primeiro lugar Bidirecional Custo uniforme Aprofundamento interativo
Tempo b d b m b d / 2 b d b d
Espaço b d b m b d / 2 b d b d
Optimalidade sim Não sim sim sim
Completude sim Não sim sim sim

Estratégias de pesquisa informadas (heurísticas)

Para resolver grandes problemas com grande número de estados possíveis, é necessário adicionar conhecimento específico ao problema para aumentar a eficiência dos algoritmos de pesquisa.

Funções de avaliação heurística

Eles calculam o custo do caminho ideal entre dois estados. Uma função heurística para jogos de blocos deslizantes é calculada contando o número de movimentos que cada bloco faz a partir do seu objetivo e adicionando esse número de movimentos a todos os blocos.

Pesquisa pura heurística

Expande os nós na ordem de seus valores heurísticos. Ele cria duas listas, uma lista fechada para os nós já expandidos e uma lista aberta para os nós criados, mas não expandidos.

Em cada iteração, um nó com um valor heurístico mínimo é expandido, todos os seus nós filhos são criados e colocados na lista fechada. Em seguida, a função heurística é aplicada aos nós filhos e eles são colocados na lista aberta de acordo com seu valor heurístico. Os caminhos mais curtos são salvos e os mais longos são descartados.

Uma pesquisa

É a forma mais conhecida de pesquisa pela primeira vez. Evita a expansão de caminhos que já são caros, mas expande os caminhos mais promissores primeiro.

f (n) = g (n) + h (n), em que

  • g (n) o custo (até agora) para alcançar o nó
  • h (n) custo estimado para ir do nó à meta
  • f (n) custo total estimado do caminho até n à meta. É implementado usando a fila de prioridade aumentando f (n).

Greedy Melhor Primeira Pesquisa

Ele expande o nó estimado para ser o mais próximo da meta. Expande nós com base em f (n) = h (n). É implementado usando a fila de prioridade.

Desvantagem - Pode ficar preso em loops. Não é o ideal.

Algoritmos de pesquisa local

Eles partem de uma solução em potencial e depois passam para uma solução vizinha. Eles podem retornar uma solução válida, mesmo que seja interrompida a qualquer momento antes de terminar.

Pesquisa de escalada

É um algoritmo iterativo que começa com uma solução arbitrária para um problema e tenta encontrar uma solução melhor alterando gradualmente um único elemento da solução. Se a mudança produz uma solução melhor, uma mudança incremental é tomada como uma nova solução. Esse processo é repetido até que não haja mais melhorias.

função Hill-Climbing (problema), retorna um estado que é um máximo local.

inputs: problem, a problem
local variables: current, a node
                 neighbor, a node
current <-Make_Node(Initial-State[problem])
loop
   do neighbor <- a highest_valued successor of current
      if Value[neighbor] ≤ Value[current] then
      return State[current]
      current <- neighbor				  
	
end

Desvantagem - Esse algoritmo não é completo nem ideal.

Pesquisa de vigas locais

Neste algoritmo, ele contém k número de estados a qualquer momento. No início, esses estados são gerados aleatoriamente. Os sucessores desses k estados são calculados com a ajuda da função objetivo. Se algum desses sucessores for o valor máximo da função objetivo, o algoritmo será interrompido.

Caso contrário, os estados (k estados iniciais e número de sucessores dos estados = 2k) são colocados em um pool. O pool é então classificado numericamente. Os k estados mais altos são selecionados como novos estados iniciais. Esse processo continua até que um valor máximo seja atingido.

A função BeamSearch ( problema, k ), retorna um estado de solução.

start with k randomly generated states
loop
   generate all successors of all k states
   if any of the states = solution, then return the state
   else select the k best successors
end

Recozimento simulado

O recozimento é o processo de aquecimento e resfriamento de um metal para alterar sua estrutura interna e modificar suas propriedades físicas. Quando o metal esfria, sua nova estrutura é apreendida e o metal mantém suas propriedades recém-obtidas. No processo de recozimento simulado, a temperatura é mantida variável.

Inicialmente, definimos a temperatura alta e depois permitimos que ela "esfrie" lentamente à medida que o algoritmo prossegue. Quando a temperatura é alta, o algoritmo pode aceitar soluções piores com alta frequência.

Começar

  • Inicialize k = 0; L = número inteiro de variáveis;
  • Em i → j, pesquise a diferença de desempenho Δ.
  • Se Δ <= 0, então aceite else se exp (-Δ / T (k))> random (0,1) então aceite;
  • Repita as etapas 1 e 2 para as etapas L (k).
  • k = k + 1;

Repita as etapas de 1 a 4 até que os critérios sejam atendidos.

Fim

Problema do Vendedor Viajante

Nesse algoritmo, o objetivo é encontrar um passeio de baixo custo que comece em uma cidade, visite todas as cidades em rota exatamente uma vez e termine na mesma cidade inicial.

Start
   Find out all (n -1)! Possible solutions, where n is the total number of cities.
   Determine the minimum cost by finding out the cost of each of these (n -1)! solutions.
   Finally, keep the one with the minimum cost.
end
Problema do Vendedor Viajante

Inteligência Artificial - Sistemas Lógicos Difusos

Os Sistemas Lógicos Difusos (FLS) produzem resultados aceitáveis, mas definidos, em resposta a entradas incompletas, ambíguas, distorcidas ou imprecisas (nebulosas).

O que é lógica difusa?

A lógica difusa (FL) é um método de raciocínio que se assemelha ao raciocínio humano. A abordagem da FL imita o modo de tomada de decisão em humanos que envolve todas as possibilidades intermediárias entre os valores digitais SIM e NÃO.

O bloco lógico convencional que um computador pode entender exige uma entrada precisa e produz uma saída definida como VERDADEIRO ou FALSO, que é equivalente ao SIM ou NÃO do ser humano.

O inventor da lógica nebulosa, Lotfi Zadeh, observou que, diferentemente dos computadores, a tomada de decisão humana inclui uma gama de possibilidades entre SIM e NÃO, como:

CERTAMENTE SIM
POSSÍVEL SIM
NÃO POSSO DIZER
POSSÍVEL NÃO
CERTAMENTE NÃO

A lógica difusa trabalha nos níveis de possibilidades de entrada para alcançar a saída definida.

Implementação

  • Ele pode ser implementado em sistemas com vários tamanhos e capacidades, desde pequenos microcontroladores a grandes sistemas de controle em rede, baseados em estações de trabalho.

  • Pode ser implementado em hardware, software ou uma combinação de ambos.

Por que lógica difusa?

A lógica difusa é útil para fins comerciais e práticos.

  • Pode controlar máquinas e produtos de consumo.
  • Pode não fornecer um raciocínio preciso, mas um raciocínio aceitável.
  • A lógica difusa ajuda a lidar com a incerteza na engenharia.

Arquitetura de sistemas lógicos difusos

Ele tem quatro partes principais, como mostrado -

  • Módulo de Fuzzification - Transforma as entradas do sistema, que são números nítidos, em conjuntos difusos. Ele divide o sinal de entrada em cinco etapas, como -

LP x é positivo grande
MP x é positivo médio
S x é pequeno
MN x é negativo médio
LN x é negativo grande
  • Base de conhecimento - Armazena regras IF-THEN fornecidas por especialistas.

  • Mecanismo de inferência - Simula o processo de raciocínio humano, fazendo inferência nebulosa nas entradas e nas regras IF-THEN.

  • Módulo de desfiguração - Transforma o conjunto difuso obtido pelo mecanismo de inferência em um valor nítido.

Sistema lógico difuso

As funções de associação funcionam em conjuntos difusos de variáveis.

Função de membro

As funções de associação permitem quantificar termos linguísticos e representar graficamente um conjunto confuso. Uma função de associação para um conjunto difuso A no universo do discurso X é definida como μ A : X → [0,1].

Aqui, cada elemento de X é mapeado para um valor entre 0 e 1. É chamado valor da associação ou grau de associação . Quantifica o grau de associação do elemento em X ao conjunto difuso A.

  • O eixo x representa o universo do discurso.
  • O eixo y representa os graus de associação no intervalo [0, 1].

Pode haver várias funções de associação aplicáveis para distorcer um valor numérico. Funções simples de associação são usadas, pois o uso de funções complexas não adiciona mais precisão à saída.

Todas as funções de associação para LP, MP, S, MN e LN são mostradas abaixo -

Funções de associação FL

As formas de função de associação triangular são mais comuns entre várias outras formas de função de associação, como trapezoidal, singleton e gaussiana.

Aqui, a entrada para o fuzzifier de 5 níveis varia de -10 volts a +10 volts. Portanto, a saída correspondente também muda.

Exemplo de um sistema lógico difuso

Vamos considerar um sistema de ar condicionado com um sistema lógico difuso de 5 níveis. Este sistema ajusta a temperatura do ar condicionado comparando a temperatura ambiente e o valor da temperatura alvo.

Sistema CA de lógica difusa

Algoritmo

  • Definir variáveis linguísticas e termos (início)
  • Construa funções de associação para eles. (começar)
  • Construir base de conhecimento de regras (início)
  • Converta dados nítidos em conjuntos de dados difusos usando funções de associação. (fuzzification)
  • Avalie regras na base de regras. (Motor de inferência)
  • Combine resultados de cada regra. (Motor de inferência)
  • Converta dados de saída em valores não difusos. (defuzzification)

Desenvolvimento

Etapa 1 - Definir variáveis e termos lingüísticos

Variáveis linguísticas são variáveis de entrada e saída na forma de palavras ou frases simples. Para temperatura ambiente, frio, quente, quente, etc., são termos linguísticos.

Temperatura (t) = {muito frio, frio, quente, muito quente, quente}

Cada membro deste conjunto é um termo linguístico e pode cobrir uma parte dos valores gerais de temperatura.

Etapa 2 - Construa funções de associação para elas

As funções de associação da variável de temperatura são mostradas -

MF do sistema CA

Etapa 3 - Construir regras da base de conhecimento

Crie uma matriz de valores de temperatura ambiente versus valores de temperatura alvo que um sistema de ar condicionado deve fornecer.

Temperatura ambiente. /Alvo Muito frio Frio Caloroso Quente Muito quente
Muito frio No_Change Calor Calor Calor Calor
Frio Legal No_Change Calor Calor Calor
Caloroso Legal Legal No_Change Calor Calor
Quente Legal Legal Legal No_Change Calor
Muito quente Legal Legal Legal Legal No_Change

Crie um conjunto de regras na base de conhecimento na forma de estruturas IF-THEN-ELSE.

Sr. Não. Condição Açao
1 SE temperatura = (frio OU muito frio) E alvo = quente ENTÃO Calor
2 SE temperatura = (Quente OU Muito_Hot) E alvo = Quente ENTÃO Legal
3 SE (temperatura = Quente) E (alvo = Quente) ENTÃO No_Change

Etapa 4 - Obter valor difuso

Operações de conjunto difuso executam avaliação de regras. As operações usadas para OR e AND são Max e Min, respectivamente. Combine todos os resultados da avaliação para formar um resultado final. Este resultado é um valor difuso.

Etapa 5 - Execute a desfiguração

A desfiguração é realizada de acordo com a função de associação para a variável de saída.

Valor confundido

Áreas de aplicação da lógica difusa

As principais áreas de aplicação da lógica nebulosa são as seguintes:

Sistemas Automotivos

  • Caixas de velocidades automáticas
  • Direção nas quatro rodas
  • Controle do ambiente do veículo

Bens eletrônicos de consumo

  • Sistemas Hi-Fi
  • Fotocopiadoras
  • Câmeras fotográficas e de vídeo
  • Televisão

Artigos domésticos

  • Fornos de microondas
  • Geladeiras
  • Torradeiras
  • Aspirador de pó
  • Máquinas de lavar roupas

Controle do ambiente

  • Ar Condicionado / Secador / Aquecedor
  • Umidificadores

Vantagens dos FLSs

  • Os conceitos matemáticos do raciocínio nebuloso são muito simples.

  • Você pode modificar um FLS apenas adicionando ou excluindo regras devido à flexibilidade da lógica difusa.

  • Sistemas lógicos difusos podem receber informações de entrada imprecisas, distorcidas e com ruído.

  • FLSs são fáceis de construir e entender.

  • A lógica difusa é uma solução para problemas complexos em todos os campos da vida, incluindo a medicina, pois se assemelha ao raciocínio humano e à tomada de decisão.

Desvantagens dos FLSs

  • Não existe uma abordagem sistemática para o design de sistemas difusos.
  • Eles são compreensíveis apenas quando simples.
  • Eles são adequados para os problemas que não precisam de alta precisão.

AI - Processamento de linguagem natural

O Processamento de linguagem natural (PNL) refere-se ao método de IA de comunicação com sistemas inteligentes usando um idioma natural como o inglês.

O processamento da linguagem natural é necessário quando você deseja que um sistema inteligente como o robô execute conforme suas instruções, quando deseja ouvir a decisão de um sistema de especialistas clínicos baseado em diálogo, etc.

O campo da PNL envolve fabricar computadores para executar tarefas úteis com as linguagens naturais que os humanos usam. A entrada e saída de um sistema PNL pode ser -

  • Discurso
  • Texto escrito

Componentes da PNL

Existem dois componentes da PNL, conforme indicado -

Entendimento de linguagem natural (NLU)

O entendimento envolve as seguintes tarefas -

  • Mapeando a entrada fornecida em linguagem natural em representações úteis.
  • Analisando diferentes aspectos da linguagem.

Geração de linguagem natural (NLG)

É o processo de produção de frases e frases significativas na forma de linguagem natural a partir de alguma representação interna.

Envolve -

  • Planejamento de texto - inclui a recuperação do conteúdo relevante da base de conhecimento.

  • Planejamento de sentenças - Inclui a escolha de palavras necessárias, a formação de frases significativas e o ajuste do tom da sentença.

  • Realização de texto - está mapeando o plano de sentenças na estrutura da frase.

O NLU é mais difícil que o NLG.

Dificuldades em NLU

NL tem uma forma e estrutura extremamente rica.

É muito ambíguo. Pode haver diferentes níveis de ambiguidade -

  • Ambiguidade lexical - está no nível muito primitivo, como no nível das palavras.

  • Por exemplo, tratando a palavra "quadro" como substantivo ou verbo?

  • Ambiguidade de nível de sintaxe - Uma frase pode ser analisada de diferentes maneiras.

  • Por exemplo, “Ele levantou o besouro com tampa vermelha.” - Ele usou a tampa para levantar o besouro ou ele levantou um besouro com tampa vermelha?

  • Ambiguidade referencial - Referindo-se a algo usando pronomes. Por exemplo, Rima foi para Gauri. Ela disse: "Estou cansado." - Exatamente quem está cansado?

  • Uma entrada pode significar significados diferentes.

  • Muitas entradas podem significar a mesma coisa.

Terminologia da PNL

  • Fonologia - É um estudo de organização sistemática do som.

  • Morfologia - É um estudo da construção de palavras a partir de unidades significativas primitivas.

  • Morfema - É a unidade primitiva de significado em um idioma.

  • Sintaxe - Refere-se a organizar as palavras para formar uma frase. Também envolve determinar o papel estrutural das palavras na frase e nas frases.

  • Semântica - preocupa-se com o significado das palavras e como combinar as palavras em frases e sentenças significativas.

  • Pragmática - trata do uso e compreensão de sentenças em diferentes situações e de como a interpretação da sentença é afetada.

  • Discurso - Trata de como a sentença imediatamente anterior pode afetar a interpretação da próxima sentença.

  • Conhecimento Mundial - Inclui o conhecimento geral sobre o mundo.

Etapas na PNL

Existem cinco etapas gerais -

  • Análise Lexical - Envolve identificar e analisar a estrutura das palavras. Léxico de um idioma significa a coleção de palavras e frases em um idioma. A análise lexical está dividindo todo o pedaço de texto em parágrafos, sentenças e palavras.

  • Análise sintática (análise) - envolve a análise de palavras na frase para gramática e o arranjo de palavras de uma maneira que mostre a relação entre as palavras. A frase como "A escola vai para o garoto" é rejeitada pelo analisador sintático inglês.

Etapas da PNL
  • Análise Semântica - Desenha o significado exato ou o significado do dicionário do texto. O texto é verificado quanto a significado. Isso é feito através do mapeamento de estruturas e objetos sintáticos no domínio da tarefa. O analisador semântico desconsidera sentenças como "sorvete quente".

  • Integração de Discurso - O significado de qualquer sentença depende do significado da sentença logo antes dela. Além disso, também traz o significado da sentença imediatamente seguinte.

  • Análise Pragmática - Durante isso, o que foi dito é reinterpretado sobre o que realmente significava. Envolve derivar os aspectos da linguagem que requerem conhecimento do mundo real.

Aspectos de implementação da análise sintática

Existem vários algoritmos que os pesquisadores desenvolveram para análise sintática, mas consideramos apenas os seguintes métodos simples:

  • Gramática livre de contexto
  • Analisador de cima para baixo

Vamos vê-los em detalhes -

Gramática livre de contexto

É a gramática que consiste em regras com um único símbolo no lado esquerdo das regras de reescrita. Vamos criar gramática para analisar uma frase -

"O pássaro bica os grãos"

Artigos (DET) - a | um | a

Substantivos - pássaro | pássaros grão | grãos

Substantivo (NP) - Artigo + Substantivo | Artigo + Adjetivo + Substantivo

= DET N | DET ADJ N

Verbos - becks | bicando | bicado

Frase verbal (VP) - NP V | V NP

Adjetivos (ADJ) - lindos | pequeno | chilrear

A árvore de análise divide a sentença em partes estruturadas para que o computador possa entendê-lo e processá-lo facilmente. Para que o algoritmo de análise construa essa árvore de análise, um conjunto de regras de reescrita, que descrevem quais estruturas de árvore são legais, precisa ser construído.

Essas regras dizem que um determinado símbolo pode ser expandido na árvore por uma sequência de outros símbolos. De acordo com a regra lógica de primeira ordem, se houver duas strings Substantivo (NP) e Verbo (VP), a sequência combinada por NP seguida por VP será uma sentença. As regras de reescrita da sentença são as seguintes -

S → NP VP

NP → DET N | DET ADJ N

VP → V NP

Lexocon -

DET → a | a

ADJ → linda | empoleirar-se

N → pássaro | pássaros grão | grãos

V → beijinho | bicadas | bicando

A árvore de análise pode ser criada como mostrado -

Etapas da PNL

Agora considere as regras de reescrita acima. Como V pode ser substituído por ambos, "bicar" ou "bicar", frases como "O pássaro bica nos grãos" podem ser erroneamente permitidas. isto é, o erro de concordância sujeito-verbo é aprovado como correto.

Mérito - O estilo mais simples de gramática, portanto, amplamente utilizado.

Deméritos -

  • Eles não são altamente precisos. Por exemplo, “Os grãos bicam o pássaro”, é sintaticamente correto de acordo com o analisador, mas mesmo que não faça sentido, o analisador toma como sentença correta.

  • Para trazer alta precisão, vários conjuntos de gramática precisam ser preparados. Pode exigir um conjunto de regras completamente diferente para analisar variações singulares e plurais, sentenças passivas, etc., o que pode levar à criação de um conjunto enorme de regras incontroláveis.

Analisador de cima para baixo

Aqui, o analisador começa com o símbolo S e tenta reescrevê-lo em uma sequência de símbolos terminais que corresponde às classes das palavras na sentença de entrada até que ele consista inteiramente em símbolos terminais.

Eles são verificados com a sentença de entrada para ver se ela corresponde. Caso contrário, o processo será iniciado novamente com um conjunto de regras diferente. Isso é repetido até que seja encontrada uma regra específica que descreva a estrutura da sentença.

Mérito - É simples de implementar.

Deméritos -

  • É ineficiente, pois o processo de pesquisa precisa ser repetido se ocorrer um erro.
  • Baixa velocidade de trabalho.

Inteligência Artificial - Sistemas Especialistas

Sistemas especialistas (ES) são um dos domínios de pesquisa de destaque da IA. É introduzido pelos pesquisadores da Universidade de Stanford, Departamento de Ciência da Computação.

O que são sistemas especialistas?

Os sistemas especialistas são os aplicativos de computador desenvolvidos para resolver problemas complexos em um domínio específico, no nível de inteligência e conhecimento humanos extraordinários.

Características dos sistemas especialistas

  • Alta performance
  • Compreensível
  • Confiável
  • Altamente responsivo

Capacidades de sistemas especialistas

Os sistemas especialistas são capazes de -

  • Avisando
  • Instruir e auxiliar o ser humano na tomada de decisões
  • Demonstrando
  • Derivando uma solução
  • Diagnosticando
  • Explicando
  • Interpretando entrada
  • Previsão de resultados
  • Justificando a conclusão
  • Sugerindo opções alternativas para um problema

Eles são incapazes de -

  • Substituindo tomadores de decisão humanos
  • Possuindo capacidades humanas
  • Produzindo resultados precisos para uma base de conhecimento inadequada
  • Refinando seu próprio conhecimento

Componentes de sistemas especialistas

Os componentes do ES incluem -

  • Base de Conhecimento
  • Motor de inferência
  • Interface de usuário

Vamos vê-los um por um brevemente -

Sistema inteligente

Base de Conhecimento

Ele contém conhecimentos específicos de domínio e de alta qualidade.

É necessário conhecimento para exibir inteligência. O sucesso de qualquer ES depende principalmente da coleta de conhecimento altamente preciso e preciso.

O que é conhecimento?

Os dados são coleção de fatos. As informações são organizadas como dados e fatos sobre o domínio da tarefa. Dados, informações e experiências passadas combinados são denominados conhecimento.

Componentes da Base de Conhecimento

A base de conhecimento de um SE é uma reserva de conhecimento factual e heurístico.

  • Conhecimento factual - é a informação amplamente aceita pelos engenheiros e estudiosos do conhecimento no domínio da tarefa.

  • Conhecimento Heurístico - Trata-se de prática, julgamento preciso, capacidade de avaliação e adivinhação.

Representação do conhecimento

É o método usado para organizar e formalizar o conhecimento na base de conhecimento. É na forma de regras IF-THEN-ELSE.

Aquisição de conhecimento

O sucesso de qualquer sistema especialista depende principalmente da qualidade, integridade e precisão das informações armazenadas na base de conhecimento.

A base de conhecimento é formada por leituras de vários especialistas, estudiosos e engenheiros do conhecimento . O engenheiro do conhecimento é uma pessoa com as qualidades de empatia, aprendizado rápido e habilidades de análise de caso.

Ele obtém informações do especialista, gravando, entrevistando e observando-o no trabalho, etc. Ele então categoriza e organiza as informações de maneira significativa, na forma de regras IF-THEN-ELSE, a serem usadas pela máquina de interferência. O engenheiro do conhecimento também monitora o desenvolvimento do ES.

Motor de inferência

O uso de procedimentos e regras eficientes pelo Inference Engine é essencial para deduzir uma solução correta e sem falhas.

No caso de ES baseado no conhecimento, o Inference Engine adquire e manipula o conhecimento da base de conhecimento para chegar a uma solução específica.

No caso de ES baseado em regras, ele -

  • Aplica regras repetidamente aos fatos, obtidos de aplicativos de regras anteriores.

  • Adiciona novo conhecimento à base de conhecimento, se necessário.

  • Resolve conflitos de regras quando várias regras são aplicáveis a um caso específico.

Para recomendar uma solução, o Inference Engine usa as seguintes estratégias -

  • Encadeamento
  • Encadeamento inverso

Encadeamento

É uma estratégia de um sistema especialista para responder à pergunta "O que pode acontecer a seguir?"

Aqui, o Inference Engine segue a cadeia de condições e derivações e finalmente deduz o resultado. Ele considera todos os fatos e regras e os classifica antes de concluir uma solução.

Essa estratégia é seguida para trabalhar na conclusão, resultado ou efeito. Por exemplo, previsão do status do mercado de ações como efeito de alterações nas taxas de juros.

Encadeamento

Encadeamento inverso

Com essa estratégia, um sistema especialista descobre a resposta para a pergunta "Por que isso aconteceu?"

Com base no que já aconteceu, o Inference Engine tenta descobrir quais condições poderiam ter acontecido no passado para esse resultado. Essa estratégia é seguida para descobrir causa ou razão. Por exemplo, diagnóstico de câncer de sangue em humanos.

Encadeamento inverso

Interface de usuário

A interface do usuário fornece interação entre o usuário do ES e o próprio ES. Geralmente, é o Processamento de linguagem natural, para ser usado pelo usuário versado no domínio da tarefa. O usuário do ES não precisa necessariamente ser um especialista em Inteligência Artificial.

Explica como o ES chegou a uma recomendação específica. A explicação pode aparecer nas seguintes formas -

  • Idioma natural exibido na tela.
  • Narrações verbais em linguagem natural.
  • Lista de números de regra exibidos na tela.

A interface do usuário facilita o rastreamento da credibilidade das deduções.

Requisitos da interface de usuário eficiente do ES

  • Isso deve ajudar os usuários a atingir seus objetivos da maneira mais curta possível.

  • Ele deve ser projetado para funcionar de acordo com as práticas de trabalho existentes ou desejadas do usuário.

  • Sua tecnologia deve ser adaptável aos requisitos do usuário; Não o contrário.

  • Deve fazer uso eficiente da entrada do usuário.

Limitações de sistemas especialistas

Nenhuma tecnologia pode oferecer uma solução fácil e completa. Sistemas grandes são caros, exigem tempo de desenvolvimento significativo e recursos de computador. Os ESs têm suas limitações que incluem -

  • Limitações da tecnologia
  • Difícil aquisição de conhecimento
  • ES são difíceis de manter
  • Altos custos de desenvolvimento

Aplicações do Sistema Especialista

A tabela a seguir mostra onde o ES pode ser aplicado.

Inscrição Descrição
Domínio de design Design de lente de câmera, design de automóvel.
Domínio Médico Sistemas de diagnóstico para deduzir a causa da doença a partir dos dados observados, conduzindo operações médicas em seres humanos.
Sistemas de Monitoramento Comparação contínua de dados com o sistema observado ou com o comportamento prescrito, como monitoramento de vazamentos em oleodutos longos.
Sistemas de Controle de Processo Controlando um processo físico com base no monitoramento.
Domínio do Conhecimento Descobrir falhas em veículos, computadores.
Finanças / Comércio Detecção de possíveis fraudes, transações suspeitas, negociação no mercado de ações, programação de linhas aéreas, programação de carga.

Expert System Technology

Existem vários níveis de tecnologias ES disponíveis. As tecnologias de sistemas especializadas incluem -

  • Ambiente de desenvolvimento de sistema especialista - O ambiente de desenvolvimento de ES inclui hardware e ferramentas. Eles são -

    • Estações de trabalho, minicomputadores, mainframes.

    • Linguagens de programação simbólica de alto nível, como a programação LIS t P (LISP) e a programação PRO en LOG ique (PROLOG).

    • Grandes bancos de dados.

  • Ferramentas - Eles reduzem o esforço e os custos envolvidos no desenvolvimento de um sistema especialista em grande medida.

    • Poderosos editores e ferramentas de depuração com várias janelas.

    • Eles fornecem prototipagem rápida

    • Ter definições embutidas de modelo, representação de conhecimento e design de inferência.

  • Shell - Um shell nada mais é do que um sistema especialista sem base de conhecimento. Um shell fornece aos desenvolvedores aquisição de conhecimento, mecanismo de inferência, interface com o usuário e facilidade de explicação. Por exemplo, poucas conchas são fornecidas abaixo -

    • Java Expert System Shell (JESS) que fornece API Java totalmente desenvolvida para criar um sistema especialista.

    • Vidwan , um shell desenvolvido no Centro Nacional de Tecnologia de Software, Mumbai, em 1993. Ele permite a codificação de conhecimento na forma de regras IF-THEN.

Desenvolvimento de sistemas especialistas: etapas gerais

O processo de desenvolvimento de ES é iterativo. As etapas no desenvolvimento do SE incluem:

Identifique o domínio do problema

  • O problema deve ser adequado para um sistema especialista para resolvê-lo.
  • Encontre os especialistas no domínio da tarefa para o projeto ES.
  • Estabeleça a relação custo-benefício do sistema.

Projetar o sistema

  • Identifique a tecnologia ES

  • Conhecer e estabelecer o grau de integração com os outros sistemas e bancos de dados.

  • Perceba como os conceitos podem representar melhor o conhecimento do domínio.

Desenvolver o protótipo

Da Base de Conhecimento: O engenheiro de conhecimento trabalha para -

  • Adquira conhecimento de domínio do especialista.
  • Representá-lo na forma de regras If-THEN-ELSE.

Teste e refine o protótipo

  • O engenheiro de conhecimento usa casos de amostra para testar o protótipo quanto a quaisquer deficiências no desempenho.

  • Os usuários finais testam os protótipos do ES.

Desenvolver e concluir o ES

  • Teste e garanta a interação do ES com todos os elementos de seu ambiente, incluindo usuários finais, bancos de dados e outros sistemas de informação.

  • Documente bem o projeto de ES.

  • Treine o usuário para usar o ES.

Manter o sistema

  • Mantenha a base de conhecimento atualizada por revisão e atualização regulares.

  • Atenda a novas interfaces com outros sistemas de informação, à medida que esses sistemas evoluem.

Benefícios dos sistemas especialistas

  • Disponibilidade - Eles estão facilmente disponíveis devido à produção em massa de software.

  • Menos custo de produção - o custo de produção é razoável. Isso os torna acessíveis.

  • Velocidade - Eles oferecem grande velocidade. Eles reduzem a quantidade de trabalho que um indivíduo realiza.

  • Menor taxa de erro - a taxa de erro é baixa em comparação com erros humanos.

  • Redução de risco - Eles podem trabalhar em ambientes perigosos para os seres humanos.

  • Resposta constante - Eles trabalham de forma constante, sem serem motivados, tensos ou cansados.

Inteligência Artificial - Robótica

A robótica é um domínio da inteligência artificial que lida com o estudo da criação de robôs inteligentes e eficientes.

O que são robôs?

Os robôs são os agentes artificiais que atuam no ambiente do mundo real.

Objetivo

Os robôs visam manipular os objetos, percebendo, pegando, movendo, modificando as propriedades físicas do objeto, destruindo-o ou produzindo um efeito que libera a mão-de-obra de executar funções repetitivas sem ficar entediada, distraída ou exausta.

O que é robótica?

A robótica é um ramo da IA, que é composto por engenharia elétrica, engenharia mecânica e ciência da computação para projetar, construir e aplicar robôs.

Aspectos da Robótica

  • Os robôs têm construção , forma ou formato mecânico projetados para realizar uma tarefa específica.

  • Eles possuem componentes elétricos que acionam e controlam as máquinas.

  • Eles contêm algum nível de programa de computador que determina o que, quando e como um robô faz alguma coisa.

Diferença no sistema de robô e outro programa de IA

Aqui está a diferença entre os dois -

Programas de IA Robôs
Eles geralmente operam em mundos estimulados por computador. Eles operam no mundo físico real
A entrada para um programa de IA está em símbolos e regras. Entradas para robôs é sinal analógico na forma de forma de onda de fala ou imagens
Eles precisam de computadores de uso geral para operar. Eles precisam de hardware especial com sensores e efetores.

Locomoção de robô

Locomoção é o mecanismo que torna um robô capaz de se mover em seu ambiente. Existem vários tipos de locomoção -

  • Pernas
  • Com rodas
  • Combinação de locomotivas com pernas e rodas
  • Escorregamento / derrapagem

Locomoção com pernas

  • Esse tipo de locomoção consome mais energia enquanto demonstra caminhada, salto, trote, salto, subir ou descer, etc.

  • Requer mais número de motores para realizar um movimento. É adequado para terrenos irregulares e lisos, onde superfícies irregulares ou muito lisas fazem com que consuma mais energia para uma locomoção com rodas. É pouco difícil de implementar devido a problemas de estabilidade.

  • Ele vem com a variedade de uma, duas, quatro e seis pernas. Se um robô tem várias pernas, é necessária a coordenação das pernas para a locomoção.

O número total de andamentos possíveis (uma sequência periódica de eventos de elevação e liberação de cada perna total) que um robô pode percorrer depende do número de pernas.

Se um robô tiver k pernas, então o número de eventos possíveis N = (2k-1) !.

No caso de um robô de duas pernas (k = 2), o número de eventos possíveis é N = (2k-1)! = (2 * 2-1)! = 3! = 6

Portanto, existem seis possíveis eventos diferentes -

  • Levantando a perna esquerda
  • Liberando a perna esquerda
  • Levantando a perna direita
  • Liberando a perna direita
  • Levantando as duas pernas juntas
  • Liberando as duas pernas juntas

No caso de k = 6 pernas, existem 39916800 eventos possíveis. Portanto, a complexidade dos robôs é diretamente proporcional ao número de pernas.

Locomoção com pernas

Locomoção com Rodas

Requer menos número de motores para realizar um movimento. É pouco fácil de implementar, pois há menos problemas de estabilidade em caso de maior número de rodas. É eficiente em termos de energia em comparação com a locomoção com pernas.

  • Roda padrão - gira em torno do eixo da roda e em torno do contato

  • Roda de rodízio - gira em torno do eixo da roda e da junta de direção deslocada.

  • Rodas sueca de 45 o e sueca de 90 o - Omni-wheel, gira em torno do ponto de contato, em torno do eixo da roda e em torno dos rolos.

  • Roda esférica ou esférica - roda omnidirecional, tecnicamente difícil de implementar.

Locomoção com Rodas

Locomoção de deslizamento / derrapagem

Nesse tipo, os veículos usam faixas como em um tanque. O robô é dirigido movendo as esteiras com velocidades diferentes na mesma direção ou no sentido oposto. Oferece estabilidade por causa da grande área de contato da pista e do solo.

Robô rastreado

Componentes de um robô

Os robôs são construídos com o seguinte -

  • Fonte de alimentação - Os robôs são alimentados por baterias, energia solar, fontes de energia hidráulica ou pneumática.

  • Atuadores - Eles convertem energia em movimento.

  • Motores elétricos (CA / CC) - São necessários para o movimento rotacional.

  • Músculos pneumáticos do ar - Eles contraem quase 40% quando o ar é sugado por eles.

  • Fios musculares - Eles se contraem em 5% quando a corrente elétrica passa por eles.

  • Motores piezoelétricos e ultrassônicos - Melhor para robôs industriais.

  • Sensores - Eles fornecem conhecimento de informações em tempo real no ambiente de tarefas. Os robôs estão equipados com sensores de visão para calcular a profundidade do ambiente. Um sensor tátil imita as propriedades mecânicas dos receptores de toque das pontas dos dedos humanos.

Visão por Computador

Esta é uma tecnologia de IA com a qual os robôs podem ver. A visão computacional desempenha papel vital nos domínios de segurança, proteção, saúde, acesso e entretenimento.

A visão computacional extrai, analisa e compreende automaticamente informações úteis de uma única imagem ou de uma série de imagens. Esse processo envolve o desenvolvimento de algoritmos para obter compreensão visual automática.

Hardware do sistema de visão computacional

Isso envolve -

  • Fonte de energia
  • Dispositivo de aquisição de imagem como câmera
  • Um processador
  • Um software
  • Um dispositivo de exibição para monitorar o sistema
  • Acessórios como suportes de câmera, cabos e conectores

Tarefas de visão computacional

  • OCR - No domínio dos computadores, o Optical Character Reader, um software para converter documentos digitalizados em texto editável, que acompanha um scanner.

  • Detecção de rosto - Muitas câmeras de última geração vêm com esse recurso, que permite ler o rosto e tirar a foto dessa expressão perfeita. É usado para permitir que um usuário acesse o software na correspondência correta.

  • Reconhecimento de objetos - Eles são instalados em supermercados, câmeras, carros sofisticados, como BMW, GM e Volvo.

  • Estimando a Posição - Estima a posição de um objeto em relação à câmera, como na posição do tumor no corpo humano.

Domínios de aplicação da visão computacional

  • Agricultura
  • Veículos autônomos
  • Biometria
  • Reconhecimento de caracteres
  • Forense, segurança e vigilância
  • Inspeção de qualidade industrial
  • Reconhecimento de rosto
  • Análise de gestos
  • Geociência
  • Imagens médicas
  • Monitoramento da poluição
  • Controle do processo
  • Sensoriamento remoto
  • Robótica
  • Transporte

Aplicações de Robótica

A robótica tem sido fundamental em vários domínios, como -

  • Indústrias - Os robôs são usados para manusear materiais, cortar, soldar, revestir cores, perfurar, polir etc.

  • Militar - Robôs autônomos podem alcançar zonas inacessíveis e perigosas durante a guerra. Um robô chamado Daksh , desenvolvido pela Organização de Pesquisa e Desenvolvimento de Defesa (DRDO), funciona para destruir objetos com risco de vida com segurança.

  • Medicina - Os robôs são capazes de realizar centenas de testes clínicos simultaneamente, reabilitar permanentemente pessoas com deficiência e realizar cirurgias complexas, como tumores cerebrais.

  • Exploração - Os escaladores robóticos usados para exploração espacial, os drones subaquáticos usados para exploração oceânica são apenas alguns.

  • Entretenimento - Os engenheiros da Disney criaram centenas de robôs para fazer filmes.

Inteligência Artificial - Redes Neurais

Ainda outra área de pesquisa em IA, redes neurais, é inspirada na rede neural natural do sistema nervoso humano.

O que são redes neurais artificiais (RNAs)?

O inventor do primeiro neurocomputador, Dr. Robert Hecht-Nielsen, define uma rede neural como -

"... um sistema de computação composto de vários elementos de processamento simples e altamente interconectados, que processam informações por sua resposta dinâmica de estado a entradas externas".

Estrutura básica das RNAs

A idéia das RNAs é baseada na crença de que o funcionamento do cérebro humano, fazendo as conexões certas, pode ser imitado usando silício e fios como neurônios e dendritos vivos.

O cérebro humano é composto por 86 bilhões de células nervosas chamadas neurônios. Eles estão conectados a outras mil células pelos axônios. Estímulos do ambiente externo ou insumos de órgãos sensoriais são aceitos pelos dendritos. Essas entradas criam impulsos elétricos, que viajam rapidamente através da rede neural. Um neurônio pode então enviar a mensagem para outro neurônio para lidar com o problema ou não o envia adiante.

Estrutura do neurônio

As RNAs são compostas por múltiplos nós , que imitam os neurônios biológicos do cérebro humano. Os neurônios são conectados por links e interagem entre si. Os nós podem receber dados de entrada e executar operações simples nos dados. O resultado dessas operações é passado para outros neurônios. A saída em cada nó é chamada de ativação ou valor do nó.

Cada link está associado ao peso. As RNAs são capazes de aprender, o que ocorre alterando os valores de peso. A ilustração a seguir mostra uma simples RNA -

Uma RNA típica

Tipos de redes neurais artificiais

Existem duas topologias de redes neurais artificiais - FeedForward e Feedback.

FeedForward ANN

Nesta RNA, o fluxo de informações é unidirecional. Uma unidade envia informações para outra unidade da qual não recebe nenhuma informação. Não há loops de feedback. Eles são usados na geração / reconhecimento / classificação de padrões. Eles têm entradas e saídas fixas.

FeedForward ANN

FeedBack ANN

Aqui, loops de feedback são permitidos. Eles são usados em memórias endereçáveis de conteúdo.

FeedBack ANN

Trabalho de RNAs

Nos diagramas de topologia mostrados, cada seta representa uma conexão entre dois neurônios e indica o caminho para o fluxo de informações. Cada conexão tem um peso, um número inteiro que controla o sinal entre os dois neurônios.

Se a rede gerar uma saída "boa ou desejada", não há necessidade de ajustar os pesos. No entanto, se a rede gerar uma saída "ruim ou indesejada" ou um erro, o sistema altera os pesos para melhorar os resultados subsequentes.

Aprendizado de Máquina em RNAs

As RNAs são capazes de aprender e precisam ser treinadas. Existem várias estratégias de aprendizado -

  • Aprendizado supervisionado - Envolve um professor que é um estudioso do que a própria RNA. Por exemplo, o professor fornece alguns exemplos de dados sobre os quais o professor já conhece as respostas.

    Por exemplo, reconhecimento de padrões. A RNA apresenta suposições enquanto reconhece. Em seguida, o professor fornece à RNA as respostas. A rede então a compara com as respostas "corretas" do professor e faz os ajustes de acordo com os erros.

  • Aprendizagem não supervisionada - é necessária quando não há um conjunto de dados de exemplo com respostas conhecidas. Por exemplo, procurando por um padrão oculto. Nesse caso, o agrupamento, ou seja, a divisão de um conjunto de elementos em grupos de acordo com algum padrão desconhecido, é realizado com base nos conjuntos de dados existentes.

  • Aprendizado por Reforço - Essa estratégia foi construída com base na observação. A RNA toma uma decisão observando seu ambiente. Se a observação for negativa, a rede ajustará seus pesos para poder tomar uma decisão necessária diferente na próxima vez.

Voltar Algoritmo de Propagação

É o algoritmo de treinamento ou aprendizado. Aprende pelo exemplo. Se você enviar ao algoritmo o exemplo do que deseja que a rede faça, ele altera os pesos da rede para que possa produzir a saída desejada para uma entrada específica ao concluir o treinamento.

As redes de propagação traseira são ideais para tarefas simples de reconhecimento de padrões e mapeamento.

Redes Bayesianas (BN)

Estas são as estruturas gráficas usadas para representar a relação probabilística entre um conjunto de variáveis aleatórias. As redes Bayesianas também são chamadas de Redes de Crenças ou Redes Bayes. Os BNs argumentam sobre domínio incerto.

Nessas redes, cada nó representa uma variável aleatória com proposições específicas. Por exemplo, em um domínio de diagnóstico médico, o nó Câncer representa a proposição de que um paciente tem câncer.

As arestas que conectam os nós representam dependências probabilísticas entre essas variáveis aleatórias. Se dentre dois nós, um está afetando o outro, eles devem ser conectados diretamente nas direções do efeito. A força do relacionamento entre variáveis é quantificada pela probabilidade associada a cada nó.

Existe uma única restrição nos arcos em um BN que você não pode retornar a um nó simplesmente seguindo os arcos direcionados. Portanto, os BNs são chamados de gráficos acíclicos direcionados (DAGs).

Os BNs são capazes de manipular variáveis de valores múltiplos simultaneamente. As variáveis BN são compostas de duas dimensões -

  • Gama de preposições
  • Probabilidade atribuída a cada uma das preposições.

Considere um conjunto finito X = {X 1 , X 2 ,…, X n } de variáveis aleatórias discretas, em que cada variável X i pode receber valores de um conjunto finito, indicado por Val (X i ). Se houver um link direcionado da variável X i para a variável X j , a variável X i será a mãe da variável X j, mostrando dependências diretas entre as variáveis.

A estrutura do BN é ideal para combinar conhecimento prévio e dados observados. O BN pode ser usado para aprender as relações causais e entender vários domínios problemáticos e prever eventos futuros, mesmo em caso de dados ausentes.

Construindo uma rede bayesiana

Um engenheiro de conhecimento pode construir uma rede bayesiana. Existem várias etapas que o engenheiro de conhecimento precisa seguir ao construí-lo.

Problema de exemplo - câncer de pulmão. Um paciente está sofrendo de falta de ar. Ele visita o médico, suspeitando que ele tenha câncer de pulmão. O médico sabe que, com exceção do câncer de pulmão, existem várias outras possíveis doenças que o paciente pode ter, como tuberculose e bronquite.

Reunir informações relevantes do problema

  • O paciente é fumante? Se sim, então grandes chances de câncer e bronquite.
  • O paciente está exposto à poluição do ar? Se sim, que tipo de poluição do ar?
  • Fazer um raio-X positivo indica uma TB ou câncer de pulmão.

Identificar variáveis interessantes

O engenheiro do conhecimento tenta responder às perguntas -

  • Quais nós representar?
  • Que valores eles podem assumir? Em que estado eles podem estar?

Por enquanto, vamos considerar nós, com apenas valores discretos. A variável deve assumir exatamente um desses valores por vez.

Tipos comuns de nós discretos são -

  • Nós booleanos - Eles representam proposições, assumindo os valores binários TRUE (T) e FALSE (F).

  • Valores ordenados - Um nó Poluição pode representar e obter valores de {baixo, médio, alto}, descrevendo o grau de exposição de um paciente à poluição.

  • Valores integrais - Um nó chamado Idade pode representar a idade do paciente com valores possíveis de 1 a 120. Mesmo neste estágio inicial, as escolhas de modelagem estão sendo feitas.

Nós e valores possíveis para o exemplo de câncer de pulmão -

Nome do Nó Tipo Valor Criação de nós
Poluição Binário {BAIXO, ALTO, MÉDIO} Criação de Nó BNN
Fumante boleano {VERDADEIRO, FÁCIL}
Câncer de pulmão boleano {VERDADEIRO, FÁCIL}
Raio X Binário {Positivo negativo}

Criar arcos entre nós

A topologia da rede deve capturar relacionamentos qualitativos entre variáveis.

Por exemplo, o que faz com que um paciente tenha câncer de pulmão? - Poluição e tabagismo. Em seguida, adicione arcos do nó Poluição e do fumante ao nó Câncer de pulmão.

Da mesma forma, se o paciente tiver câncer de pulmão, o resultado dos raios X será positivo. Em seguida, adicione arcos do nó Lung-Cancer ao nó X-Ray.

Criação de Arco BNN

Especificar topologia

Convencionalmente, os BNs são dispostos de modo que os arcos apontem de cima para baixo. O conjunto de nós pais de um nó X é fornecido por Pais (X).

O nó Câncer de Pulmão possui dois pais (razões ou causas): Poluição e Fumante , enquanto o nó Fumante é um ancestral do nó Raio-X . Da mesma forma, o raio X é um filho (consequência ou efeitos) do nó Câncer de Pulmão e sucessor dos nós Fumante e Poluição.

Probabilidades condicionais

Agora quantifique os relacionamentos entre os nós conectados: isso é feito especificando uma distribuição de probabilidade condicional para cada nó. Como apenas variáveis discretas são consideradas aqui, isso assume a forma de uma Tabela de Probabilidade Condicional (CPT).

Primeiro, para cada nó, precisamos examinar todas as combinações possíveis de valores desses nós pais. Cada combinação é chamada de instanciação do conjunto pai. Para cada instanciação distinta dos valores do nó pai, precisamos especificar a probabilidade que o filho terá.

Por exemplo, os pais do nó Câncer de Pulmão são Poluição e Fumo. Eles assumem os valores possíveis = {(H, T), (H, F), (L, T), (L, F)}. O CPT especifica a probabilidade de câncer para cada um desses casos como <0,05, 0,02, 0,03, 0,001> respectivamente.

Cada nó terá probabilidade condicional associada da seguinte forma:

Probabilidades

Aplicações de redes neurais

Eles podem executar tarefas fáceis para um ser humano, mas difíceis para uma máquina -

  • Aeroespacial - aeronaves de piloto automático, detecção de falhas de aeronaves.

  • Automotivo - sistemas de orientação de automóveis.

  • Militar - Orientação e direção de armas, rastreamento de alvos, discriminação de objetos, reconhecimento facial, identificação de sinal / imagem.

  • Eletrônica - previsão de sequência de código, layout de chip IC, análise de falha de chip, visão de máquina, síntese de voz.

  • Financeiro - Avaliação de imóveis, consultor de empréstimos, triagem de hipotecas, classificação de títulos corporativos, programa de negociação de portfólio, análise financeira corporativa, previsão de valor da moeda, leitores de documentos, avaliadores de aplicativos de crédito.

  • Industrial - Controle de processo de fabricação, design e análise de produtos, sistemas de inspeção de qualidade, análise de qualidade de soldagem, previsão de qualidade de papel, análise de design de produtos químicos, modelagem dinâmica de sistemas de processos químicos, análise de manutenção de máquinas, licitação, planejamento e gerenciamento de projetos.

  • Médico - análise de células cancerígenas, análise de EEG e ECG, desenho protético, otimizador de tempo de transplante.

  • Fala - Reconhecimento de fala, classificação de fala, conversão de texto em fala.

  • Telecomunicações - Compactação de imagens e dados, serviços de informações automatizadas, tradução em tempo real de idiomas.

  • Transporte - Diagnóstico do sistema de freio a caminhão, programação de veículos, sistemas de roteamento.

  • Software - Reconhecimento de padrões no reconhecimento facial, reconhecimento óptico de caracteres, etc.

  • Previsão de séries temporais - as RNAs são usadas para fazer previsões sobre ações e calamidades naturais.

  • Processamento de sinal - As redes neurais podem ser treinadas para processar um sinal de áudio e filtrá-lo adequadamente nos aparelhos auditivos.

  • Controle - as RNAs são frequentemente usadas para tomar decisões de direção de veículos físicos.

  • Detecção de anomalias - como as RNAs são especialistas em reconhecer padrões, elas também podem ser treinadas para gerar uma saída quando ocorrer algo incomum que não se adequa ao padrão.

Inteligência Artificial - Problemas

A IA está se desenvolvendo com uma velocidade incrível, às vezes parece mágica. Existe uma opinião entre pesquisadores e desenvolvedores de que a IA pode crescer tão imensamente forte que seria difícil para os humanos controlar.

Os humanos desenvolveram sistemas de IA introduzindo neles toda a inteligência possível, para a qual os próprios humanos agora parecem ameaçados.

Ameaça à privacidade

Um programa de IA que reconhece a fala e entende a linguagem natural é teoricamente capaz de entender cada conversa em e-mails e telefones.

Ameaça à dignidade humana

Os sistemas de IA já começaram a substituir os seres humanos em poucas indústrias. Não deve substituir as pessoas nos setores em que ocupam cargos dignos relacionados à ética, como enfermagem, cirurgião, juiz, policial etc.

Ameaça à segurança

Os sistemas de IA de auto-aperfeiçoamento podem se tornar tão poderosos que os seres humanos que podem ser muito difíceis de impedir de atingir seus objetivos, o que pode levar a consequências não intencionais.

Inteligência Artificial - Terminologia

Aqui está a lista de termos usados com frequência no domínio da AI -

Sr. Não Termo & Significado
1

Agente

Os agentes são sistemas ou programas de software capazes de serem autônomos, propositais e de raciocínio direcionados a um ou mais objetivos. Eles também são chamados de assistentes, corretores, bots, dróides, agentes inteligentes e agentes de software.

2

Robô Autônomo

Robô livre de controle ou influência externa e capaz de se controlar de forma independente.

3

Encadeamento inverso

Estratégia de trabalhar para trás por Razão / Causa de um problema.

4

Quadro-negro

É a memória interna do computador, usada para comunicação entre os sistemas especialistas que colaboraram.

5

Meio Ambiente

É a parte do mundo real ou computacional habitado pelo agente.

6

Encadeamento

Estratégia de avançar para a conclusão / solução de um problema.

7

Heurísticas

É o conhecimento baseado em Tentativa e erro, avaliações e experimentação.

8

Engenharia do conhecimento

Adquirir conhecimento de especialistas humanos e outros recursos.

9

Percebe

É o formato no qual o agente obtém informações sobre o ambiente.

10

Poda

Substituindo considerações desnecessárias e irrelevantes nos sistemas de IA.

11

Regra

É um formato de representação da base de conhecimento no Expert System. É na forma de IF-THEN-ELSE.

12

Concha

Um shell é um software que ajuda a projetar o mecanismo de inferência, a base de conhecimento e a interface do usuário de um sistema especialista.

13

Tarefa

É o objetivo que o agente tenta alcançar.

14

Teste de Turing

Um teste desenvolvido por Allan Turing para testar a inteligência de uma máquina em comparação com a inteligência humana.