26
Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas -> http://rogerio.in

Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Embed Size (px)

Citation preview

Page 1: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Introdução ao Aprendizado de Máquina

Prof. Dr. Rogério Vargas-> http://rogerio.in

Page 2: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Por que é necessário o aprendizado de máquina?

Em geral, é difícil articular o conhecimento que precisamos para

construir um sistema de IA

Na verdade, algumas vezes, não temos nem este conhecimento

Em alguns casos, podemos construir sistemas em que eles mesmos aprendem o conhecimento necessário

Page 3: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

O que é Aprendizado?

Memorizar alguma coisa

Aprender fatos por meio de observação e exploração

Melhorar habilidades motoras/cognitivas por meio de prática

Organizar novo conhecimento em representações efetivas e gerais

Page 4: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Aprendizado de Máquina

Principal preocupação

• Construção de programas de computador que melhoram seu desempenho por meio de experiência

Técnicas orientadas a dados

• Aprendem automaticamente a partir de grandes volumes de dados

• Geração de hipóteses a partir dos dados

Page 5: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Inferência Indutiva

Indução

• Um processo de raciocínio para uma conclusão sobre todos os membros de uma classe por meio do exame de apenas uns poucos membros da classe

• De maneira geral, raciocínio do particular para o geral

• Por exemplo, se eu noto que:

• Todos os pacientes com Déficit de Atenção atendidos em 1986 sofriam de Ansiedade

• Todos os pacientes com Déficit de Atenção atendidos em 1987 sofriam de Ansiedade

• ...

• Posso inferir logicamente que Todos os pacientes que sofrem de Déficit de Atenção também sofrem de Ansiedade

• Isto pode ser ou não verdade, mas propicia uma boa generalização

Page 6: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Aprendizado de Máquina - uma definição

Um programa aprende a partir da experiência E, em relação a uma classe de tarefas T, com me-dida de desempenho P, se seu desempenho em T, medido por P, melhora com E

Mitchell, 1997

Também chamado de Aprendizado Indutivo

Page 7: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Aprendizado de Máquina - Exemplo

Detecção de bons clientes para um cartão de crédito

• Tarefa T: classificar potenciais novos clientes como bons ou maus pagadores

• Medida de Desempenho P: porcentagem de clientes classificados corretamente

• Experiência de Treinamento E: uma base de dados histórica em que os clientes já conhecidos são previamente classificados como bons ou maus pagadores

Page 8: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Tipos de Aprendizado de Máquina (1/3)

Aprendizado Supervisionado

• O algoritmo de aprendizado (indutor) recebe um conjunto de exemplos de treinamento para os quais os rótulos da classe associada são conhecidos

• Cada exemplo (instância ou padrão) é descrito por um vetor de valores (atributos) e pelo rótulo da classe associada

• O objetivo do indutor é construir um classificador que possa determinar corretamente a classe de novos exemplos ainda não rotulados

Page 9: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Tipos de Aprendizado de Máquina (2/3)

Aprendizado Não-Supervisionado

• O indutor analisa os exemplos fornecidos e tenta determinar se alguns deles podem ser agrupados de alguma maneira, formando agrupamentos ou clusters

• Após a determinação dos agrupamentos, em geral, é necessário uma análise para determinar o que cada agrupamento significa no contexto problema sendo analisado

Page 10: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Tipos de Aprendizado de Máquina (3/3)

AM

SupervisionadoNão-

Supervisionado

Classificação Regressão

k-NNÁrvores de DecisãoNaive BayesPerceptron/AdalineMulti-Layer Perceptron

k-NNAdalineMulti-Layer Perceptron

k-meansMetódos HierárquicosSOM

Page 11: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Tópicos

Terminologia

O que é um Conceito?

• Classificação, associação, agrupamento, previsão numérica

O que é um exemplo?

• Relações, flat files (estrutura unidimencional), recursão

O que é um atributo?

• Nominal, ordinal, intervalar, razão

Preparação da entrada

• ARFF, atributos, valores perdidos, ...

Page 12: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Terminologia

Componentes da Entrada

• Conceitos• “Coisas” que podem ser aprendidas

• Instâncias• Exemplos individuais e independentes de um conceito

• Formas mais complicadas também são possíveis

• Atributos• Medidas de características de uma instância

Page 13: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

O que é um Conceito?

Tipos de Aprendizado de Máquina (Objetivos da Mineração de Dados)

• Aprendizado supervisionado (Atividades de Predição)

• Classificação: previsão de classes discretas pré-definidas

• Regressão: previsão de um valor numérico contínuo• Aprendizado não-supervisionado (Atividades de Descrição)

• Agrupamentos: agrupar instâncias similares em aglomerados• Regras de associação (Atividades de Descrição)

• Detecção de associações entre atributos

• Mais geral que a Classificação: qualquer associação entre atributos, não apenas com uma classe específica

Conceito: coisa a ser aprendida

Descrição do conceito: saída do algoritmo (esquema) de aprendizado

Page 14: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

O que é uma Instância?

Definições

• Objeto a ser classificado, associado ou agrupado

• Exemplo individual e independente do conceito a ser aprendido

• Carecterizada por um conjunto pré-determinado de atributos

Entrada para o indutor (algoritmo ou esquema de aprendizado): conjunto de instâncias ou conjunto de dados

• Representado como uma única relação (flat file)

Forma bastante restrita de entrada

• Não representa relações entre objetos

Page 15: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

O que é um atributo?

Cada instância é descrita por um conjunto fixo pré-determinado de características - Atributos

• Na prática, porém, o número de atributos pode variar

• Solução possível: uma sinalizador de “valor irrelevante”• Problema relacionado: a existência de um atributo pode depender do

valor de um outro

Tipos possíveis de atributos (escalas de medidas)

• Escalas não-métricas (qualitativas)

• Nominal e Ordinal• Escalas métricas (quantitativos)

• Intervalar e Razão

Page 16: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Escala Nominal ou Categórica

Valores são símbolos distintos que servem apenas para rotular ou identificar

• Atributo “Sexo”: Masculino e Feminino

• Atributo “Religião”: Católica, Protestante, Budismo,...

• Atributo “Partido Político”: PT, PFL, PSDB, ...

Não existem relações entre valores nominais - ordenação ou distância

• Não faz sentido o teste “Masculino > Feminino”

Apenas testes de igualdade podem ser feitos

• “Sexo” = Masculino

Page 17: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Escala Ordinal

Os valores podem ser ordenados os ranqueados

• Toda subclasse pode ser comparada com uma outra em termos de uma relação da forma “maior que” ou “menor que”

• Atributo “Temperatura”: Quente > Morno > Frio (no entanto, não faz sentido “Quente + Frio” ou “2*Morno”)

• Distinção entre Nominal e Ordinal não é sempre clara• Atributo “Tempo”: Ensolarado, Nublado, Chuvoso

Page 18: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Escala de Razão

• Todas as operações matemáticas são possíveis com medidas em escala de razão

• Números reais

• Atributo “Distância”: a distância entre um objeto e ele mesmo é zero

• Atributo “Peso”: os aparelhos usados para medir peso têm um ponto zero absoluto

Page 19: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Para que tipos específicos de atributos?

Compreender os diferentes tipos de escalas de medidas é importante por duas razões

• O pesquisador deve identificar a escala de medida de cada atributo usado, de forma que dados não-métricos não sejam incorretamente usados como dados métricos e vice-versa

• “Partido Político” > PFL não faz sentido, enquanto que“Temperatura” > Frio ou“Peso” < 38 fazem

• A escala de medida é crítica ao determinar que algoritmos de aprendizado de máquina são mais apropriados

Page 20: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Preparação da Entrada

Poblema: fontes diferentes de dados (ex., departamento de vendas, departamento de cobrança, ...)

• Diferenças: estilos de manter os registros, convenções, períodos de tempo, agregação dos dados, chaves primárias, erros

• Os dados precisam ser integrados e limpos

• Data warehouse

Denormalização não é o único problema

Dados externos podem ser necessários

Page 21: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

O formato ARFF

%% ARFF file for weather data with some numeric features%@relation weather

@attribute outlook {sunny, overcast, rainy}@attribute temperature numeric@attribute humidity numeric@attribute windy {true, false}@attribute play? {yes, no}

@datasunny, 85, 85, false, nosunny, 80, 90, true, noovercast, 83, 86, false, yes...

Page 22: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Tipos de Atributos no WEKA

ARFF trabalha com atributos numéricos e nominais

Interpretação depende do algoritmo de aprendizado

• Atributos numéricos são interpretados como:• Escala ordinal se são usadas comparações do tipo “menor-que” e

“maior-que”

• Escala de razão se cálculos de disntâncias são efetuados (normalização e padronização podem ser necessárias)

• Algoritmos baseados em instâncias definem distância entre valores nominais (0 se o valores são iguais, 1 caso contrário)

Page 23: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Valores Perdidos (Missing Values)

Em geral, indicados por valores fora do escopo

• Tipos: desconhecidos, não registrados, irrelevantes

• Razões• Mau-funcionamento do equipamento

• Mudanças na definição do experimento

• Incapazidade de mesuração

Valores perdidos podem, de fato, significarem alguma coisa

• A maioria dos métodos de aprendizado não assumem isto

• No entanto, este tipo de informação pode ser codificado como um valor adicional

Page 24: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Valores Imprecisos

Razões: os dados não foram obtidos para mineração

Resultado: erros e omissões que não afetam o objetivo original dos dados (ex., idade do cliente)

Erros tipográficos em atributos nominais -> valores devem ser checados para verificar consistência

Erros tipográficos de mesuração em atributos numéricos -> observações atípicas (outliers) devem ser identificados

Erros podem ser deliberados (e.g., código postal)

Outros problemas: duplicação, ...

Page 25: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Se familiarizando com os dados

Ferramentas simples de visualização são muito úteis

• Atributos nominais: histogramas (a distribuição é consistente com o conhecimento do domínio?)

• Atributos numéricos: gráficos (alguma observação atípica óbvia?)

• Gráficos bi e tri-dimensionais mostram dependências

• Necessidade de consultar um especialista do domínio

• Muitos dados a inspecionar? Faz uma amostragem!

Page 26: Introdução ao Aprendizado de Máquina Prof. Dr. Rogério Vargas ->

Referências

Material editado dos slides da Professora Anne Magály de Paula Canuto, disponível em: www.cin.ufpe.br/~mcps/IA/IA2004.1/IA-am-anne.ppt