Inteligência Artificial Computação Neural Inteligência Computacional • Solução de problemas reproduzindo mecanismos dos seres biologicamente inteligentes. Inteligência Computacional (IC) Computação Nebulosa (Fuzzy) (CF) Computação Neural (CN) Computação Evolutiva (CE) Computação Neural • Utiliza uma forma de programação não algorítmica • Processamento distribuído paralelo de suas unidades: os neurônios artificiais. • Estas unidades são inspiradas nas células que constituem o cérebro Computação Neural • Um ser humano nasce com bilhões de neurônios, cada um deles interconectado com outros milhares, formando uma imensa rede de processamento distribuído. • A criação, eliminação e modificação dessas conexões garante ao homem a capacidade de aprender, armazenar e utilizar conhecimentos através da experiência. Neurônio Biológico Neurônio Biológico • Cada célula neural possui seus receptores, os dendritos, o corpo celular e um transmissor, o axônio. • A propagação de sinais entre um axônio de um neurônio e o dendrito de outro é realizada através das sinapes. • A sinapse pode amplificar ou atenuar o sinal que transmite. A capacidade de adaptar-se ao meio ambiente, através de aprendizado, é obtida através da criação ou modificação destas sinapses Neurônio Artificial • Neurônio artificial Neurônio Artificial • Este neurônio é identificado por k em um conjunto de neurônios. • As entradas, estão representadas pelos sinais xj. • As ligações sinápticas entre o axônio dos outros neurônios e os dendritos do neurônio k são representadas pelos pesos w(k,j), que podem assumir valores negativos ou positivos. Potencial de Ativação • Em um neurônio artificial típico (de correlação), o cálculo do potencial de ativação vk, envolve uma somatória dos sinais de entrada ponderados pelos seus respectivos pesos, somados com o bias bk Função de Ativação • Finalmente, uma função de ativação φ(.) é aplicada para restringir a saída a um valor finito, em geral normalizado para um intervalo [0,1] ou [-1,1]: Função de Ativação • Pode-se utilizar um grande número de funções para a ativação dos neurônios. • Função Identidade: • Função de Limiar: Função de Ativação • Função Limiar por Partes: • Função Sigmóide: Redes Neurais Artificiais (RNAs) • RNAs são formadas por neurônios artificiais interconectados, com o objetivo de simular a estrutura cerebral. — Processamento distribuído: o processamento realizado pelas RNAs é paralelo, cada neurônio artificial constitui uma unidade de processamento autônoma. — Representação distribuída: o conhecimento da rede se encontra distribuído entre seus neurônios. — Aprendizado: a RNA pode ser construída com a capacidade de alterar os pesos das conexões entre seus neurônios. Redes Neurais Artificiais (RNAs) • RNAs são classificadas normalmente por algumas de suas características: — Função de ativação: determina a forma da função executada pela rede como um todo. — Topologia: a maneira como os neurônios são conectados, que o comportamento da rede: – Redes alimentadas diretamente (feedforward) ou recorrentes (feedback). – Redes completamente conectadas ou não. – Redes de uma camada ou de múltiplas camadas. Redes Neurais Artificiais (RNAs) • RNAs são classificadas normalmente por algumas de suas características: — Algoritmo de aprendizado: o método que realiza a alteração dos parâmetros da rede. – Supervisionado – Não supervisionado – Por reforço — Aplicações: – – – – Reconhecimento de padrões Memórias Compactação Otimização Perceptron • Uma das primeiras de RNA. Suas características: — Função de ativação: função de limiar. — Topologia: a rede é feedforward e as entradas são conectadas diretamente aos neurônios. — Algoritmo de aprendizagem: supervisionado, através da correção de erro da saída esperada com a obtida. — Aplicações: pode ser utilizado para classificação de padrões linearmente separáveis. • Dois estados de operação: classificação e aprendizado. Perceptron - Aprendizado • Primeiramente, deve-se obter o erro: — sendo d a saída desejada e y a saída obtida. • A alteração do peso j de um dado neurônio é dada por: • Sendo o delta (diferença) calculado por: — sendo o a taxa de aprendizagem e x a entrada relativa ao peso w em questão. Perceptron - Evolução • Embora tenha causado grande entusiasmo, o Perceptron é muito limitado e encontrava dificuldade em resolver problemas simples da vida real. • Perceptrons com várias camadas poderiam ser a saída, mas ajustar os pesos de várias camadas era impossível. • Essas limitações expostas em vários trabalhos fizeram com que a área de redes neurais congelasse por cerca de 20 anos. • Até o método Backpropagation.