Universidade Federal de Campina Grande Departamento de Sistemas e Computação Curso de Bacharelado em Ciência da Computação Inteligência Artificial I Aprendizagem (Parte I) Prof.a Joseana Macêdo Fechine [email protected] Carga Horária: 60 horas DSC/CCT/UFC G Aprendizagem Tópicos Aprendizagem – Conceitos Básicos 2 DSC/CCT/UFCG Aprendizagem “Aprendizagem é o processo pelo qual uma entidade adquire conhecimento”. Rich, 1983. “Aprendizagem é uma forma de inferência que objetiva começar com informações sobre o domínio e então, estendê-las de alguma forma”. Ginsberg, 1993. Para Russel e Norvig: "Aprender significa se comportar melhor ao adquirir experiência. Todo aprendizado aprende a representação de uma função." 3 DSC/CCT/UFCG Aprendizagem Processos aquisição de novos conhecimentos; desenvolvimento de técnicas motoras e cognitivas por meio de instrução ou prática; generalização de conhecimentos adquiridos; representação do conhecimento; descoberta de novos fatos/teorias. 4 DSC/CCT/UFCG Aprendizagem Objetivos eliminação do elemento humano no processo de aquisição de conhecimento; desenvolvimento de teorias gerais de aprendizagem; ensino assistido por computador. 5 DSC/CCT/UFCG Agente de aprendizagem Elemento de desempenho: decide que ações executar. Elemento de aprendizagem: modifica o elemento de desempenho para que este tome decisões melhores. O projeto é afetado por três questões importantes: Os componentes que devem ser aprendidos; A realimentação que estará disponível para aprender esses componentes; A representação que será usada para os componentes. 6 DSC/CCT/UFCG Aprendizagem Aprendizagem (realimentação - feedback): Aprendizagem supervisionada Aprendizagem não supervisionada Aprendizagem por reforço 7 DSC/CCT/UFCG Aprendizagem Aprendizagem Supervisionada: Ocorre nas situações em que é possível perceber tanto as entradas como as saídas; Freqüentemente as saídas são fornecidas por um supervisor(especialista) humano; Envolve aprendizagem de uma função a partir de exemplos de suas entradas e saídas. Aprendizagem Não-Supervisionada: Envolve a aprendizagem de padrões na entrada, quando não são fornecidos valores de saída específicos. Aprendizagem por Reforço: DSC/CCT/UFCG O agente deve aprender a partir do reforço (recompensa). 8 Aprendizagem Tipos Segundo Ginsberg(1993), aprendizagem pode ser dividida em: Aprendizagem por Descoberta; Aprendizagem por Generalização; Aprendizagem Dedutiva; Aprendizagem Indutiva 9 DSC/CCT/UFCG Aprendizagem DSC/CCT/UFCG Por Descoberta: é uma forma restrita de aprendizado em que uma entidade adquire conhecimento, sem o auxílio de alguém que já o possua. Exemplos de Sistemas computacionais de descoberta AM - sistema para modelagem de aspectos da pesquisa em Matemática Elementar, descobrindo novos conceitos guiado por uma grande gama de heurísticas; BACON – modelo de descoberta dirigida por dados; GLAUBER – sistema para descoberta de leis qualitativas em Química; BOOLE – gera conhecimentos científicos simbolizáveis. 10 Aprendizagem Aprendizagem Dedutiva: Aprendizagem de novas informações que são conseqüências válidas de algo já conhecido. Aprendizagem Indutiva: Inferência indutiva de fatos providos por um professor ou ambiente. O estudo e modelagem desta forma de aprendizagem é um dos tópicos centrais de aprendizagem de máquina. Em aprendizagem indutiva, um programa aprende a classificar objetos baseados nos rótulos que lhe são apresentados. Deve tentar recuperar a função desconhecida ou uma aproximação. 11 DSC/CCT/UFCG Aprendizagem indutiva Dada uma coleção de exemplos de f, retornar uma função h que se aproxime de f. A função h é chamada hipótese Não é fácil saber se uma h específica é uma boa aproximação de f Uma boa h irá generalizar bem – prever corretamente exemplos ainda não vistos Esse é o problema fundamental da indução 12 DSC/CCT/UFCG Aprendizagem Indutiva Atividade de um agente = função f (percepção) ação Idéia: aprender, a partir de exemplos (x,f(x)), representação de uma função h que aproxima f Métodos redes neurais, algoritmos genéticos, etc. 13 DSC/CCT/UFCG Aprendizagem Indutiva Exemplo: Ajustar uma função de uma única variável a alguns pontos de dados Exemplos são pares (x, f(x)) de números reais 14 DSC/CCT/UFCG Aprendizagem Indutiva Exemplo: 15 DSC/CCT/UFCG Aprendizagem Indutiva Exemplo: 16 DSC/CCT/UFCG Aprendizagem Indutiva Exemplo: 17 DSC/CCT/UFCG Aprendizagem Indutiva Exemplo: A verdadeira f é desconhecida, mas existem muitas opções para h. Sem contar com mais conhecimento, não há razão que nos faça preferir uma das opções. DSC/CCT/UFCG 18 Aprendizagem Aprendizagem Indutiva - Estratégia de controle Botton-up (dirigido a dados) - processam os eventos de entrada um de cada vez, generalizando gradualmente o conjunto corrente de descrições até que uma generalização conjuntiva seja computada; Direção: bottom-up (específico geral) Top-down (dirigida a modelo) - conjunto de possíveis generalizações na tentativa de encontrar as melhores hipóteses que satisfaçam certos requerimentos; Direção: top-down (geral específico) Mista 19 DSC/CCT/UFCG Questões: on-line x off-line Aprender de uma vez ou aos poucos? Incremental (on-line): atualiza hipótese a cada novo exemplo mais flexível, ... porém ordem de apresentação é importante (backtracking) é difícil revisar as crenças não incremental (off-line): gera h a partir de todo conjunto de exemplos mais eficiente e prática mais usado! 20 DSC/CCT/UFCG Modelo do Agente Aprendiz (on-line) Agente t+1 sensores ambiente t crítico avaliação trocas elemento ator elemento de conhecimento aprendizagem objetivos de aprendizagem efetuadores Gerador de problemas 21 DSC/CCT/UFCG Algoritmo de Aprendizagem exemplos conhecimento ambiente Uso Treinamento Modelo do Agente Aprendiz (off-line) sensores elemento ator efetuadores 22 DSC/CCT/UFCG Por que a aprendizagem funciona? “É quase certo que qualquer hipótese que esteja seriamente errada será "desmascarada" com alta probabilidade após um pequeno número de exemplos, por que fará uma previsão incorreta. Desse modo, qualquer hipótese que seja consistente com um conjunto bastante grande de exemplos de treinamento terá pouca probabilidade de estar seriamente errada: isto é, ela deve estar provavelmente aproximadamente correta (aprendizagem PAC). Para tanto, os conjuntos de treinamento e teste devem ser extraídos ao acaso e de forma independente da população de exemplos com a mesma distribuição de probabilidade suposição de hipótese de estacionariedade.” (Russel e Norvig) 23 DSC/CCT/UFCG