Universidade Estadual do Ceará Laboratório de Redes de Computadores e Segurança - LARCES

Tamanho: px
Começar a partir da página:

Download "Universidade Estadual do Ceará Laboratório de Redes de Computadores e Segurança - LARCES"

Transcrição

1 Universidade Estadual do Ceará Laboratório de Redes de Computadores e Segurança - LARCES Máquinas de Aprendizagem Árvores de Decisão Felipe de Almeida Xavier João Gonçalves Filho FORTALEZA 2011

2 1 Sumário 1 Introdução O que é aprendizagem de máquina? Exemplos de abordagens de aprendizagem de máquina Aprendizagem por associação Aprendizagem por reforço Aprendizado supervisionado Aprendizado não supervisionado Onde aprendizagem de máquina é aplicada? Finalizando Aprendizagem de Conceito Notação Aprendizagem de Conceito como Busca Find-S Árvores de Decisão Representação de Árvores de Decisão Problemas Apropriados Para Árvores de Decisão Um Algoritmo Básico Para Árvores de Decisão, o ID Entropia dos Dados GAIN: Medida de Ganho de um Atributo Pseudo-Código Básico Para o Algoritmo ID Exemplo Ilustrativo do Algoritmo ID Evitando Overfitting Conclusões Referências

3 1 Introdução 2 1 Introdução 1.1 O que é aprendizagem de máquina? De uma forma direta aprendizagem de máquina é um sub-campo da inteligência artificial que visa desenvolver algoritmos e técnicas para que a máquina possa aprender, assim por exemplo ela pode melhorar o seu desempenho quando for executar uma mesma tarefa pela segunda vez ou tarefas similares. Para entermos melhor, suponha que temos a tarefa de definir o menor caminho entre duas cidades, para este caso podemos usar o algoritmo de Dijkstra recebendo como entrada um grafo e jogando para saída o menor caminho encontrado. Mas também existem certas tarefas a qual não conseguimos definir um algoritmo para que ela seja resolvida. Suponha agora que temos a tarefa de dizer se um recebido é um spam, sabemos que a entrada consiste em um e a saída é simplesmente dizer sim ou não, mas o problema é que não conseguimos transformar a entrada na saída devido a seguinte pergunta: que tipo de pode ser considerado um spam para um determinado indivíduo? Neste caso podemos passar para máquina um conjunto de s a qual já sabemos que é um spam, esse conjunto é chamado de dados de treinamento e por meio deles a máquina irá tirar um padrão para poder classificar novos s. É bem verdade que ela não consegue dar uma precisão em 100% dos casos, o objetivo é se aproximar ao máximo de um função que nos diga corretamente sim ou não. Aplicação dos metódos de aprendizagem de máquina para largos bancos de dados é chamado de mineração de dados, mas aprendizagem de máquinas não resolve apenas problemas de banco de dados, ele é inteligente, o sistema que esta em mudança de ambiente deve ter a habilidade de aprender e se adaptar com tais mudanças. É interessante também que aprendizagem de máquina usa a teoria da estatísticas na construção dos modelos matemáticos, pois a tarefa central é inferir algo a partir de amostras. 1.2 Exemplos de abordagens de aprendizagem de máquina Nessa seção segue algumas dos tipos de abordagens que são usadas nas técnicas de aprendizagem de máquina Aprendizagem por associação Em mineração de dados e aprendizado de tratamento, regras de associação são usadas para descobrir elementos que ocorrem em comum dentro de um determinado conjunto de dados. Analisando uma aplicação para análises para cestas básicas que busca encontrar associações entre os produtos comprados pelos clientes, se um cliente que compra um produto X além disso compra também um produto Y e existe um outro cliente que compra X, mas não compra Y. Procurando uma regra de associação, estamos interessados em aprender a probabilidade condicional da forma P(Y X),onde Y é o produto que gostariamos com condição em X, que é o produto ou o conjunto de produtos que sabemos

4 1 Introdução 3 que o cliente já comprou. Suponha que analisando os dados, calculamos que P(refrigerante batatas fritas) = 0, 7, podemos definir a regra que diz que 70% dos clientes que compram refrigerante também compram batas fritas. Podemos além disso querer distinguir entre os clientes, para isto estimamos P(Y X,D), onde D é um conjunto de atributos do cliente, podendo ser sexo,idade,estado civil, entre outros. Assumindo é claro que temos acesso à essas informações no banco de dados do supermercado Aprendizagem por reforço Em algumas aplicações a saída do sistema é um conjunto de ações, em tais sistemas uma ação por si só não é importante, o que interessa é estabelecer uma política que consiga dizer qual é a melhor sequência de ações para alcançar um determinado objetivo. Em tais casos o programa de aprendizagem deve ser apto a aprender a gerar uma política a partir de boa sequência de ações. Esse metódo é chamado de aprendizagem por reforço. Podemos tirar como exemplo um programa que queria aprender a jogar xadrez, ele precisa receber um boa sequências de ações e estabelecer uma política(estratégia) para poder ganhar algum jogo posterior Aprendizado supervisionado Nesta abordagem o objetivo é induzir conceitos a partir de exemplos que já estão pré-classificados, eles já estão rotulados em classes a qual já conhecemos, por exemplo quando temos o seguinte dados de treinamentos: Fig. 1: A partir deles devemos induzir uma regra para outros exemplos, no caso o exemplo 5 da figura seria sim ou não? Quando os valores das classes são discretos o problema é dito classificação, já quando ele possui valores contínuos é chamado de regressão. Um dos problemas enfrentados nessa abordagem diz respeito a ruídos que podem existir nos dados de treinamento sendo eles de dois tipos: o primeiro tipo ocorre no valor alvo, no caso da nossa figura, ele incorretamente diz sim ao invés de não, o outro tipo de ruído pode ocorrer nos

5 1 Introdução 4 valores dos atributos podendo causar uma incorreta classificação. As técninas de aprendizagem de máquina devem ser aptas a tratar esses ruídos. Quando queremos medir a perfomance da função induzida, geralmente é separado um conjunto de dados para que possamos checar se a função corretamente classifica esse conjunto de dados, quanto mais acertos ele fizer, maior é considerado a sua perfomance. Uma das técnincas que utiliza esse tipo abordagem é árvore de decisão, que será vista mais na frente Aprendizado não supervisionado Em aprendizagem supervisionado o objetivo é aprender a mapear da entrada uma saída, cuja o valor correto é dado por um supervisor. Já na não supervisionada temos apenas os dados de entrada, temos então a tarefa de encontrar um regularidade nesses dados. Na figura abaixo, como se poderia dividir esses conjuntos de dados? Fig. 2: No conjunto (a) enxergamos claramente duas classes de conjuntos, enquanto na (b) parece ser difícil conseguir alguma divisão de classes, a (c) é problemática, pois não sabemos se os conjuntos de dados estão juntos ou separados. Aprendizagem não supervisionada utiliza procedimentos que tentam encontrar partições naturais de padrões. Existem duas fases: Formar uma partição de R vias de um conjunto de padrões de formação E não rotulados (onde o valor de R, em si, pode ter de ser induzido a

6 2 Aprendizagem de Conceito 5 partir dos padrões). A partição separa E em R subconjuntos mutuamente exclusivos e exaustivos, E1,..., ER, chamados clusters. Conceber um classificador baseado nos rótulos atribuídos aos padrões de formação pela partição. Dentre os Clustering Methods, temos o da distância Euclidiana e o metódo baseado em probabilidades. Uma interessante aplicação é a compressão de imangens onde as instâncias de entrada são os pixels de uma imagem em valores RGB, um programa de agrupamento(clustering) deve agrupar cores similares em um mesmo grupo e tais grupos correspondem a cores que frequentemente ocorrem na imagem. 1.3 Onde aprendizagem de máquina é aplicada? Em diversas áreas aprendizagem de máquina esta sendo aplicada, entre elas podemos incluir: Visão por computador Processamento de linguagem natural Reconhecimento de padrões sintáticos Motores de busca Diagnóstico médico Bioinformática Entre outras. 1.4 Finalizando Nessa primeira parte foi visto brevemente o que consiste aprendizagem de máquina, assim como também algumas das abordagens utilizadas nas técnicas de aprendizagem de máquina. O que pode ser visto em um contexto geral é que na maioria dos problemas de aprendizagem, os dados disponíveis não são suficientes para garantir a generalização ótima, por isso os algoritmos de aprendizagem de máquinas são heurísticas que variam nos seus objetivos, na disponibilidade de dados de treinamento, nas estratégias de aprendizagem e na representação do conhecimento. Na próxima parte veremos aprendizagem de conceito que serve como base para entendermos melhor sobre árvores de decisão. 2 Aprendizagem de Conceito A aprendizagem envolve adquirir conceitos gerais de exemplos específicos de treinamento. Pessoas, por exemplo, estão sempre aprendendo conceitos gerais ou categorias como casas, passaros, etc. Cada conceito pode ser pensado

7 2 Aprendizagem de Conceito 6 como uma função de valor booleano sobre um conjunto maior (pássaros, cujo valor é verdadeiro, pertencem ao conjunto dos animais, enquanto casas não). Assim temos a aprendizagem de conceito: inferir uma função de valor booleano apartir de exemplos de treinamento, com entradas e saídas. Consideremos o exemplo para aprender o conceito alvo dias nos quais o vizinho sai para praticar esporte. A figura 3 mostra um conjunto de exemplos de dias, cada qual representado por um conjunto de atributos. O atributo EnjoySport indica se o vizinho foi ou não jogar seu esporte naquele dia. A tarefa é aprender a predizer o valor de EnjoySport de um dia arbitrário baseado nos valores dos seus outros atributos. A representação de hipótese fornecida ao aprendiz se consiste em uma conjunção de restrições sobre os atributos de entrada: <Sky, AirTemp, Humidity,Wind, Water, Forecast> Para cada atributo, a hipótese: indicará com um? que qualquer valor é aceitável para esse atributo;, indicará que nenhum valor é aceitável; Especificará um valor único necessário para o atributo (ex. Warm). Se alguma instância x satisfizer todas as restrições da hipótese h, então h classifica x como um exemplo positivo: h(x) = 1 (ou seja, Yes). Agora, se uma instância x não satisfizer todas as restrições da hipótese h, então h classifica x como um exemplo negativo: h(x) = 0 (ou seja, No) A tarefa de aprendizagem do conceito EnjoySport requer a aprendizagem do conjunto de dias para os quais EnjoySport = Y es, descrevendo este conjunto por uma conjunção de restrições sobre os atributos da instância (entrada). Fig. 3: Exemplos de treinamento positivos e negativos para o conceito alvo EnjoySport 2.1 Notação Consideremos o conjunto de itens sobre o qual o conceito é definido como sendo o conjunto de instâncias que são denotadas por X. No nosso exemplo, X é o conjunto de todos os possíveis dias, cada um representado pelos atributos: Sky, AirTemp, Humidity, Wind, Water e Forecast. O conceito ou função a ser aprendida é chamado de conceito alvo, que é denotado por c. Em geral, c pode ser qualquer função de valor booleano definida sobre as instâncias X.

8 2 Aprendizagem de Conceito 7 No nosso caso, o conceito alvo corresponde ao valor do atributo EnjoySport. (c(x) = 1 se EnjoySport = Y es, e c(x) = 0 se EnjoySport = No) Dado o conjunto de exemplos de treinamento do conceito alvo c, o problema encarado pelo aprendiz é estimar c. Chamaremos de H o conjunto de todas as hipóteses possíveis que o aprendiz pode considerar em relação à identidade do conceito alvo. O objetivo do aprendiz é encontrar uma hipótese h em H tal que h(x) = c(x) para todo x em X. Em uma tarefa de aprendizagem de conceito são fornecidos: Instâncias X: possíveis dias, cada uma descrita pelos atributos: Sky (com possíveis valores Sunny, Cloudy, e Rainy), AirTemp (com valores Warm e Cold), Humidity (com valores Normal e High), Wind (com valores Strong e Weak), Water (com valores Warm e Cool), Forecast (com valores Same e Change). Hipóteses H: cada hipótese é definida por uma conjunção de restrições nos atributos. As restrições podem ser?,, ou um valor específico. Conceito alvo c : EnjoySport : X {0, 1}. Exemplos de treinamento D: Exemplos positivos e negativos da função alvo. 2.2 Aprendizagem de Conceito como Busca A aprendizagem de conceito pode ser vista como uma tarefa de busca através de um espaço amplo de hipóteses implicitamente definidas pela representação de hipóteses. O objetivo dessa busca é encontrar uma hipótese que melhor se enquadra com os exemplos de treinamento. O problema do nosso exemplo é considerado relativamente simples, pois tem um número finito de hipóteses. No entanto, os problemas reais geralmente são muito mais complexos envolvendo, as vezes, um espaço de hipóteses infinito. Muitos algoritmos de aprendizagem de conceito organizam a busca no espaço de hipóteses baseando se em uma estrutura chamada ordenação das hipóteses de hipóteses mais gerais a hipóteses mais específicas. Para termos uma noção, consideremos essas duas hipóteses: h 1 = (Sunny,?,?, Strong,?,?) h 2 = (Sunny,?,?,?,?,?) Agora considere o conjunto de instâncias que são classificadas positivas por h 1 e por h 2. Como h 2 possui menos restrições na instância, ela classifica mais intâncias como positivas do que h 1.

9 2 Aprendizagem de Conceito 8 Sabendo disso, podemos observar a seguinte definição: Sejam h j e h k funções de valores booleanos definidos sobre X, então h j é mais geral do que ou igual a h k se e somente se, 2.3 Find-S ( xɛx)[(h k (x) = 1) (h j (x) = 1)] Como podemos usar a ordenação parcial mais geral do que para organizar a busca por hipóteses consistentes com os exemplos de treinamento observados? Uma forma é usar a hipótese mais específica de H e então generalizá-la cada vez que a hipótese falhar ao cobrir um exemplo de treinamento positivo. Vamos dizer que uma hipótese é consistente com os exemplos de treinamento se ela classifica corretamente esses exemplos. Para ser mais preciso, observe o algoritmo Find-S abaixo: 1 Inicialize h para ser a hipotese mais especifica em H 2 Para cada instancia x positiva de treinamento 3 Para cada atributo de restricao i em h 4 Se a restricao i e satisfeita por x 5 Entao faca nada 6 Senao Arrume i em h para ser a proxima restricao mais geral que e satisfeita por x 7 retorne a hipotese h Para ilustrar o algoritmo, assuma que é dado ao aprendiz a sequência de exemplos de treinamento da figura 3 para a tarefa EnjoySport. O primeiro passo do Find-S é encontrar a hipótese h mais específica em H. h <,,,,, > Para o primeiro exemplo de treinamento da figura 1, se torna claro que essa hipótese é muito específica, por causa disso, as restrições da hipótese se tornam um pouco mais gerais, para os valores dos atributos se adequarem ao exemplo de treinamento. h < Sunny, W arm, Normal, Strong, W arm, Same > Esse h é ainda muito específico. Ele afirma que todas as instâncias são negativas exceto a primeira. Em seguida, o próximo exemplo de treinamento também é positivo, fazendo assim a hipótese se generalizar mais. h < Sunny, W arm,?, Strong, W arm, Same > Ao encontrar o terceiro exemplo de treinamento negativo, o algoritmo não altera nada em h, já que ele ignora todos os exemplos negativos. Assim, continuando com o algoritmo, pegamos o último exemplo de treinamento positivo, que faz a hipótese h se o mais geral possível.

10 3 Árvores de Decisão 9 h < Sunny, W arm,?, Strong,?,? > O algoritmo Find-S garante que é encontrado a hipótese mais específica de H que é consistente com os exemplos de treinamento positivos e os negativos. Mas é importante também saber existem quetões ainda não respondidas por esse algoritmo: O aprendiz convergiu para o conceito alvo correto? Embora o Find-S encontre uma hipótese consistente com os dados de treinamento, não tem como determinar se ele encontrou a única hipótese consistente com os dados ou se existem outras hipóteses consistentes também. Porquê preferir a hipótese mais específica? No caso de existirem muitas hipóteses consistentes com os exemplos de treinamento, o Find-S encontrará a mais específica. Não é claro caso queiramos hipóteses mais genéricas ou entre os extremos. Os exemplos de treinamento são consistentes? Na maioria dos problemas práticos de aprendizagem, existem chances de que os exemplos de treinamento contenham alguns erros ou ruídos. Tal conjunto inconsistentes de exemplos de treinamento pode severamente confundir o Find-S, dado o fato que ele ignora os exemplos negativos. Deveríamos preferir algoritmos que pudessem ao menos detectar quando existe um dado de treinamento inconsistente e preferencialmente se acomodar a tais erros. 3 Árvores de Decisão O metódo de aprendizagem por árvores de decisão é um dos mais utilizados para metódos de inferência indutiva, diferente do metódo anterior, ele possui algoritmos robustos contra ruídos nos dados e também pode utilizar expressões disjuntas de aprendizagem. Veremos o algoritmo ID3 para montar uma árvore de decisão. 3.1 Representação de Árvores de Decisão Na figura 4 temos uma árvore aprendida para o conceito jogar tênis, cada nó interno testa um atributo, cada ramo corresponde a um valor de um atributo e os nós folha atribuem uma classificação. Para entender como ele avalia uma instância suponha que temos que classificar a seguinte: <Outlook = Sunny, Temperature = Hot, Humidity = High, Wind = Strong> Descemos pelo ramo mais a esquerda que é o Sunny, depois disso checamos que a Humidity = High, então árvore classifica essa instância como negativa, ou

11 3 Árvores de Decisão 10 Fig. 4: seja nessa dia a pessoa não irá jogar. Em geral árvores de decisão são representadas por disjunções de conjunções das restrições dos valores dos atributos das instâncias. Cada caminho do root até o nó folha corresponde a uma conjunção de testes de atributos. Por exemplo, podemos representar essa árvores da seguinte forma: (Outlook = Sunny Humidity = Normal) (Outlook = Overcast) (Outlook = Rain Wind = Weak) 3.2 Problemas Apropriados Para Árvores de Decisão Podemos caracterizar os seguintes problemas como sendo adequados para árvores de decisão: Instâncias são representadas pelo par atributo-valor. Nesse caso instâncias são descritos por conjuntos de atributos(exemplo temperatura) e seus valores(exemplo quente). A situação mais fácil para construção de uma árvore de decisão ocorre quando um atributo possui poucos valores discretos(quente,médio,frio). No entanto podemos extender o algoritmo básico para que ele trate também valores reais. A função alvo possui valores discretos. Na árvore que mostramos acima, a classificação que ela nos retorna é simplesmente sim ou não, mas em algoritmos de árvores de decisão podem ser facilmente extendidas para

12 3 Árvores de Decisão 11 mais de dois valores, também é possível valores reais,mas mas são menos utilizados em árvores de decisão na prática. Os dados de treinamentos contém erros. Metódos de árvores de decisão são robustos aos erros causados por ruídos nos dados. 3.3 Um Algoritmo Básico Para Árvores de Decisão, o ID3 A maioria dos algoritmos que foram desenvolvidos para a aprendizagem de árvore de decisão são variações de um algoritmo principal que emprega uma pesquisa top-down, gulosa através dos espaços de árvores de decisão possíveis. Essa abordagem é exemplificada no algoritmo ID3(Iterative Dichotomiser 3) que foi inventado por Ross Quinlan 1986 e o ID3 foi precursor do C4.5(Quinlan 1993 ). Iremos tratar aqui do algoritmo básico do ID3. A construção da árvore é feito numa abordagem top-down, mas de imediato temos o problema de saber escolher qual dos atributos será escolhido para ser o root da árvore. Para isso precisamos de uma medida que indique qual é a melhor escolha, tendo feito essa escolha um ramo do root é então criado para cada valor possível desse atributo, e os exemplos de treinamento são classificados apenas para o nó descendente apropriado (ou seja, abaixo do ramo correspondente ao valor do exemplo para este atributo). Em seguida apresentamos a medida usada para escolher os atributos para cada nó interno de decisão Entropia dos Dados Várias técnicas têm sido tentadas para estabelecer uma ordem nos testes nas árvores, porém o mais popular é, em cada fase selecionar e testar o que reduz ao máximo uma medida chamada entropia. Podemos definir entropia como sendo o grau de impuridade de um conjunto de dados de treinamento. Suponha que temos um valor booleano para função alvo, definimos positivo + e negativo dado um conjunto de dados S a entropia relativa é dada por: Entropia(S) = p + log 2 p + - p log 2 p Onde p + e p são a proporção de exemplos positivos e negativos respectivamente, podemos também enxergar que p + é a probabilidade de dado um exemplo qualquer em S, ele ser positivo. Para ilustrar suponha que que o conjuto S possui 14 exemplos e a função alvo possui valores booleanos que incluem 9 valores positivos e 4 negativos, então temos que: Entropia([9+, 5 ]) = (9/14)log 2 (9/14) (5/14)log 2 (5/14) = 0,940 Note que quando todos os exemplos são de uma mesma classe, temos que a entropia será 0, ou seja não existe impuridade nos dados, visto que todos são de uma mesma classe, já quando temos um número igual de exemplos entre as classes, temos que entropia será 1. Observe o gráfico da figura 5 onde p + varia entre 0 e 1: A entropia dada acima foi para casos em que a função alvo tinha apenas dois valores, para o caso de c valores:

13 3 Árvores de Decisão 12 Fig. 5: Entropia(S) = c i=1, p ilog 2 p i Onde p i é a proporção da classe i no conjunto S. Observe o logaritmo é ainda base 2 porque a entropia é uma medida do comprimento de codificação esperado medido em bits(teoria da Informação). Note também que se o atributo alvo pode assumir c valores possíveis, a entropia pode ser tão grande como log 2 c GAIN: Medida de Ganho de um Atributo Essa é a medida usada para saber qual atributo deve ser escolhido em um derminado nó interno de decisão da árvore, podemos definir Gain da seguinte forma: dado um conjunto de dados S e um de seus atributos A o Gain(S,A) é simplesmente a redução esperada na entropia causado pela partição dos exemplos de acordo com esse atributo. Mais precisamente: Gain(S,A) = Entropia(S) - vɛv alores(a) S v S Entropia(S v) que é número de elementos de S v sobre o número de elementos de S. Para ilustrar, suponha temos um conjunto de dados de treinamento S descritos por atributos que incluem o Vento que possui os valores Fraco e Forte. Assumimos que S possui 14 exemplos [+9, 5], suponha também que temos 6 Onde V alores(a) é o conjunto de todos os valores possíveis de A, e S v é o subconjunto de S para que o atributo A tenha valor v (i.e, S v = sɛs A(s) = v). O segundo termo da equação é o somatório das entropias de todos os subconjuntos S v ponderado pela fração Sv S

14 3 Árvores de Decisão 13 exemplos positivos e 2 negativos a qual o Vento é Fraco e que 3 positivos e 3 negativos são Forte, o valor de Gain(S, V ento) é calculado da seguinte forma: V alores(v ento) = F raco, F orte S F raco [6+, 2 ] S F orte [3+, 3 ] Gain(S, V ento) = Entropia(S) vɛf raco,f orte S v S Entropia(S v) = Entropia(S) (8/14)Entropia(S F raco) (6/14)Entropia(S F orte) = 0, 940 (8/14)0, 811 (6/14)1, 00 = 0, Pseudo-Código Básico Para o Algoritmo ID3 Essa uma versão simples, onde a função alvo possui apenas dos valores, nesse caso + e, segue o código: 1 ID3 ( Exemplos, Atributo -Alvo, Atributos ) 2 /* Exemplos : Sao os dados treinamento. 3 Atributo - Alvo : E o atributo cujo o valor e predito pela arvore. 4 Atributos : E a lista de atributos que devem ser testados pela arvore de decisao. 5 Retorna : a arvore que corretamente classifica os dados de treinamento. 6 */ 7 Criar o no raiz para a arvore 8 se todos os exemplos sao positivos : 9 retorne um unico no raiz da arvore, como rotulo + 10 se todos os exemplos sao negativos : 11 retorne um unico no raiz da arvore, como rotulo - 12 se os atributos estao vazios : 13 retorne um unico no raiz com rotulo = ao valor mais comun de atributo - alvo em exemplos 14 senao : 15 A = o atributo que possuir maior Gain em cima dos exemplos 16 root = A( O atributo de decisao para o root ) 17 Para cada possivel valor vi, de A, 18 adicione um novo ramo abaixo do root, correspondente do teste A = vi 19 seja Exemplosvi, o subconjunto de Exemplos que possuem valor vi para A 20 se Exemplosvi, e vazio entao : 21 abaixo desse novo ramo adicione um no folha com rotulo = valor mais comun do atributo - alvo em Exemplos

15 3 Árvores de Decisão senao : 23 adicione abaixo desse novo ramo a subarvore 24 ID3 ( Exemplosvi, Atributo -Alvo, Atributos -{A}) 25 retorne root Ao iniciar o algoritmo na linha 7, criamos o nó root e depois 3 checagens básicas: A primeira checagem é que todos os exemplos são positivos, isso ocorre por exemplo se temos um conjunto S v cujo todos os exemplos estão rotulados como +, nesse caso não é mais necessário criar ramos, então temos um nó folha com valor alvo positivo. A segunda checagem é semalhante a primeira, só que nesse caso todos são negativos. A terceira ocorre quando não temos mais atributos para gerar novos ramos, nesse caso devemos retornar o atributo-alvo mais comun,ou seja o que mais aparece em Exemplos. Se nenhum desses casos ocorrem, poderemos criar então um novo ramo. Na linha 15 A recebe o atributo com maior Gain e logo ele virá um nó interno de decisão. Depois diso para cada valor do atributo A, temos um subconjunto Exemplos v i que contém todos os exemplos cujo o atributo A possui valor v i, se esse conjunto é vazio, então criamos um nó folha com o valor alvo mais comum no conjunto Exemplos, caso não seja adicionamos um novo ramo com o conjunto Exemplos v i, desconsiderando agora o atributo A. Como podemos ver o ID3 usa todos os dados de treinamento em cada passo do algoritmo em constraste com FINDS, isso dimunui os problemas causados por ruídos em casos isolados dos dados de treinamento. O ID3 pode ser facilmente estendido para lidar com dados de treinamento ruidosos, modificando o seu critério de rescisão para aceitar hipóteses que se encaixam imperfeitamente com os dados de treinamento Exemplo Ilustrativo do Algoritmo ID3 Usaremos o exemplo da figura abaixo para mostrar o funcionamento do algoritmo ID3 Primeiramente, precisamos descobrir que atributo ficará como primeiro nó da árvore. Como o ID3 utiliza o Information Gain dos atributos, Outlook, T emperature, Humidity e W ind, para fazer a escolha, seguimos:

16 3 Árvores de Decisão 15 Gain(S, Outlook) = Entropia(S) - vɛ{sunny,overcast,rain} S v S Entropia(S v) S [9+, 5 ] S s [2+, 3 ] S o [4+, 0 ] S r [3+, 2 ] Entropy(S s ) = 2/5 log 2 2/5 3/5 log 2 3/5 = 0.4( 1.321) 0.6( 0.736) = = Entropy(S o ) = 4/4 log 2 4/4 0/4 log 2 0/4 = 0.0 Entropy(S r ) = 2/5 log 2 2/5 3/5 log 2 3/5 = Gain(S, Outlook) = [(5/14) (4/14)0 + (5/14)0.970] = ( ) = = 0.248

17 3 Árvores de Decisão 16 Gain(S, Temperature) = Entropia(S) - vɛ{hot,mild,cool} S v S Entropia(S v) S [9+, 5 ] S h [2+, 2 ] S m [4+, 2 ] S c [3+, 1 ] Entropy(S h ) = 2/4 log 2 2/4 2/4 log 2 2/4 = 0.5( 1) 0.5( 1) = = 1.0 Entropy(S m ) = 4/6 log 2 4/6 2/6 log 2 2/6 = 0.666( 0.585) 0.333( 1.585) = = Entropy(S c ) = 3/4 log 2 3/4 1/4 log 2 1/4 = 0.75( 0.415) 0.25( 2) = = Gain(S, Temperature) = [(4/14)1 + (6/14) (4/14)0.811] = ( ) = = 0.030

18 3 Árvores de Decisão 17 Gain(S, Humidity) = Entropia(S) - vɛ{high,normal} S v S Entropia(S v) S [9+, 5 ] S h [3+, 4 ] S n [6+, 1 ] Entropy(S h ) = 3/7 log 2 3/7 4/7 log 2 4/7 = 0.428( 1.222) 0.571( 0.807) = = Entropy(S n ) = 6/7 log 2 6/7 1/7 log 2 1/7 = 0.857( 0.222) 0.143( 2.807) = = Gain(S, Humidity) = [(7/14) (7/14)0.591] = ( ) = = 0.153

19 3 Árvores de Decisão 18 Gain(S, Wind) = Entropia(S) - vɛ{w eak,strong} S v S Entropia(S v) S [9+, 5 ] S w [6+, 2 ] S s [3+, 3 ] Entropy(S w ) = 6/8 log 2 6/8 2/8 log 2 2/8 = 0.75( 0.415) 0.25( 2) = = Entropy(S w ) = 3/6 log 2 3/6 3/6 log 2 3/6 = 0.5( 1) 0.5( 1) = = 1.0 Gain(S, Wind) = [(8/14) (6/14)1] = ( ) = = 0.049

20 3 Árvores de Decisão 19 Com o resultado dessas contas, temos agora como obter o primeiro atributo para ser a raiz da árvore, figura 6. Assim, consultando os resultados podemos ver que o atributo Outlook foi o que obteve maior Gain. Gain(S, Outlook) = Gain(S, T emperature) = Gain(S, Humidity) = Gain(S, W ind) = Fig. 6: Agora, continuando o algoritmo, entramos na recursão com não mais o conjunto inteiro de exemplos de treinamento, dessa vez, é passado o conjunto dos exemplos cujo valor do Outlook é Sunny Sunny = {D1, D2, D8, D9, D11} Repetindo o processo para o conjunto Sunny, temos os demais atributos, T emperature, Humidity e W ind

21 3 Árvores de Decisão 20 Gain(S S, Temperature) = Entropia(S S ) - vɛ{hot,mild,cool} S v S S Entropia(S v) S S [2+, 3 ] S h [0+, 2 ] S m [1+, 1 ] S c [1+, 0 ] Entropy(S h ) = 0/2 log 2 0/2 2/2 log 2 2/2 = 0.0(log 2 0/2) 1(0.0) = = 0.0 Entropy(S m ) = 1/2 log 2 1/2 1/2 log 2 1/2 = 0.5( 1) 0.5( 1) = = 1.0 Entropy(S c ) = 1/1 log 2 1/1 0/1 log 2 0/1 = 1(0.0) 0.0( log 2 0/1) = = 0.0 Gain(S S, Temperature) = [(2/5)0.0 + (2/5)1.0 + (1/5)0.0] = /5 = 0.570

22 3 Árvores de Decisão 21 Gain(S S, Humidity) = Entropia(S S ) - vɛ{high,normal} S v S S Entropia(S v) S S [2+, 3 ] S h [0+, 3 ] S n [2+, 0 ] Entropy(S h ) = 0/3 log 2 0/3 3/3 log 2 3/3 = 0.0( log 2 0/3) 1( 0.0) = = 0.0 Entropy(S n ) = 2/2 log 2 2/2 0/2 log 2 0/2 = 1( 0.0) 0.0( log 2 0/2) = = 0.0 Gain(S S, Humidity) = [(3/5)0.0 + (2/5)0.0] = = Gain(S S, Wind) = Entropia(S S ) - vɛ{high,normal} S v S S Entropia(S v) S S [2+, 3 ] S w [1+, 2 ] S s [1+, 1 ] Entropy(S w ) = 1/3 log 2 1/3 2/3 log 2 2/3 = 0.333( 1.585) 0.666( 0.585) = = 0.918

Algoritmos Indutores de Árvores de

Algoritmos Indutores de Árvores de Algoritmos Indutores de Árvores de Decisão Fabrício J. Barth Sistemas Inteligentes Análise e Desenvolvimento de Sistemas Faculdades de Tecnologia Bandeirantes Abril de 2013 Problema: Diagnóstico para uso

Leia mais

O Processo de KDD. Data Mining SUMÁRIO - AULA1. O processo de KDD. Interpretação e Avaliação. Seleção e Pré-processamento. Consolidação de dados

O Processo de KDD. Data Mining SUMÁRIO - AULA1. O processo de KDD. Interpretação e Avaliação. Seleção e Pré-processamento. Consolidação de dados SUMÁRIO - AULA1 O Processo de KDD O processo de KDD Interpretação e Avaliação Consolidação de dados Seleção e Pré-processamento Warehouse Data Mining Dados Preparados p(x)=0.02 Padrões & Modelos Conhecimento

Leia mais

Introdução. Capítulo 1

Introdução. Capítulo 1 Capítulo 1 Introdução Em computação, muitos problemas são resolvidos por meio da escrita de um algoritmo que especifica, passo a passo, como resolver um problema. No entanto, não é fácil escrever um programa

Leia mais

Aprendizagem de Máquina. Ivan Medeiros Monteiro

Aprendizagem de Máquina. Ivan Medeiros Monteiro Aprendizagem de Máquina Ivan Medeiros Monteiro Definindo aprendizagem Dizemos que um sistema aprende se o mesmo é capaz de melhorar o seu desempenho a partir de suas experiências anteriores. O aprendizado

Leia mais

KDD. Fases limpeza etc. Datamining OBJETIVOS PRIMÁRIOS. Conceitos o que é?

KDD. Fases limpeza etc. Datamining OBJETIVOS PRIMÁRIOS. Conceitos o que é? KDD Conceitos o que é? Fases limpeza etc Datamining OBJETIVOS PRIMÁRIOS TAREFAS PRIMÁRIAS Classificação Regressão Clusterização OBJETIVOS PRIMÁRIOS NA PRÁTICA SÃO DESCRIÇÃO E PREDIÇÃO Descrição Wizrule

Leia mais

Prof. Msc. Paulo Muniz de Ávila

Prof. Msc. Paulo Muniz de Ávila Prof. Msc. Paulo Muniz de Ávila O que é Data Mining? Mineração de dados (descoberta de conhecimento em bases de dados): Extração de informação interessante (não-trivial, implícita, previamente desconhecida

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Introdução Aprendizagem de Máquina Alessandro L. Koerich Introdução Desde que os computadores foram inventados temos nos perguntado: Eles são capazes de aprender? Se pudéssemos programá-los para aprender

Leia mais

Técnicas de Seleção de Atributos utilizando Paradigmas de Algoritmos Disciplina de Projeto e Análise de Algoritmos

Técnicas de Seleção de Atributos utilizando Paradigmas de Algoritmos Disciplina de Projeto e Análise de Algoritmos Técnicas de Seleção de Atributos utilizando Paradigmas de Algoritmos Disciplina de Projeto e Análise de Algoritmos Theo Silva Lins, Luiz Henrique de Campos Merschmann PPGCC - Programa de Pós-Graduação

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 12 Aprendizado de Máquina Agentes Vistos Anteriormente Agentes baseados em busca: Busca cega Busca heurística Busca local

Leia mais

O objetivo da Mineração de Dados é extrair ou minerar conhecimento de grandes volumes de

O objetivo da Mineração de Dados é extrair ou minerar conhecimento de grandes volumes de MINERAÇÃO DE DADOS MINERAÇÃO DE DADOS O objetivo da Mineração de Dados é extrair ou minerar conhecimento de grandes volumes de dados. A mineração de dados é formada por um conjunto de ferramentas e técnicas

Leia mais

MINERAÇÃO DE DADOS APLICADA. Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br

MINERAÇÃO DE DADOS APLICADA. Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br MINERAÇÃO DE DADOS APLICADA Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br Processo Weka uma Ferramenta Livre para Data Mining O que é Weka? Weka é um Software livre do tipo open source para

Leia mais

Classificação: Definição. Classificação: conceitos básicos e árvores de decisão. Exemplos de Tarefas de Classificação

Classificação: Definição. Classificação: conceitos básicos e árvores de decisão. Exemplos de Tarefas de Classificação Classificação: Definição Mineração de dados Classificação: conceitos básicos e árvores de decisão Apresentação adaptada do material de apoio do livro: Introduction to Data Mining Tan, Steinbach, Kumar

Leia mais

A Preparação dos Dados

A Preparação dos Dados A Preparação dos Dados Escolhas Básicas Objetos, casos, instâncias Objetos do mundo real: carros, arvores, etc Ponto de vista da mineração: um objeto é descrito por uma coleção de características sobre

Leia mais

3 Metodologia de Previsão de Padrões de Falha

3 Metodologia de Previsão de Padrões de Falha 3 Metodologia de Previsão de Padrões de Falha Antes da ocorrência de uma falha em um equipamento, ele entra em um regime de operação diferente do regime nominal, como descrito em [8-11]. Para detectar

Leia mais

Web Data mining com R: aprendizagem de máquina

Web Data mining com R: aprendizagem de máquina Web Data mining com R: aprendizagem de máquina Fabrício Jailson Barth Faculdade BandTec e VAGAS Tecnologia Junho de 2013 Sumário O que é Aprendizagem de Máquina? Hierarquia de aprendizado. Exemplos de

Leia mais

Data, Text and Web Mining

Data, Text and Web Mining Data, Text and Web Mining Fabrício J. Barth TerraForum Consultores Junho de 2010 Objetivo Apresentar a importância do tema, os conceitos relacionados e alguns exemplos de aplicações. Data, Text and Web

Leia mais

Complemento II Noções Introdutória em Redes Neurais

Complemento II Noções Introdutória em Redes Neurais Complemento II Noções Introdutória em Redes Neurais Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações

Leia mais

1 Tipos de dados em Análise de Clusters

1 Tipos de dados em Análise de Clusters Curso de Data Mining Sandra de Amo Aula 13 - Análise de Clusters - Introdução Análise de Clusters é o processo de agrupar um conjunto de objetos físicos ou abstratos em classes de objetos similares Um

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Professor: Rosalvo Ferreira de Oliveira Neto Disciplina: Inteligência Artificial Tópicos 1. Definições 2. Tipos de aprendizagem 3. Paradigmas de aprendizagem 4. Modos de aprendizagem

Leia mais

Classificação - avaliação de resultados - 1. Mineração de Dados 2013

Classificação - avaliação de resultados - 1. Mineração de Dados 2013 Classificação - avaliação de resultados - 1 Mineração de Dados 2013 Luís Rato (Capítulo 4 do livro Introduction to Data Mining ) Universidade de Évora, Mineração de dados / Data Mining 1 Desempenho Desempenho

Leia mais

Taxonomia da aprendizagem

Taxonomia da aprendizagem Taxonomia da aprendizagem Taxonomia de Bloom Desde 1948, um grupo de educadores assumiu a tarefa de classificar metas e objetivos educacionais. Eles propuseram-se a desenvolver um sistema de classificação

Leia mais

Aula 11: Análise Dinâmica - 2a. parte

Aula 11: Análise Dinâmica - 2a. parte Aula 11: Análise Dinâmica - 2a. parte Nesta aula, continuaremos nossa discussão a respeito da análise dinâmica, focando na atividade de teste. Iremos dar uma breve olhada em algumas das noções básicas

Leia mais

Lista de Exercícios Tratamento de Incerteza baseado em Probabilidade

Lista de Exercícios Tratamento de Incerteza baseado em Probabilidade Lista de Exercícios Tratamento de Incerteza baseado em Probabilidade 1) Explique o termo probabilidade subjetiva no contexto de um agente que raciocina sobre incerteza baseando em probabilidade. 2) Explique

Leia mais

Agrupamento de dados

Agrupamento de dados Organização e Recuperação de Informação: Agrupamento de dados Marcelo K. A. Faculdade de Computação - UFU Agrupamento de dados / 7 Overview Agrupamento: introdução Agrupamento em ORI 3 K-médias 4 Avaliação

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Alessandro L. Koerich Programa de Pós-Graduação em Informática Pontifícia Universidade Católica do Paraná (PUCPR) Horários Aulas Sala [quinta-feira, 7:30 12:00] Atendimento Segunda

Leia mais

Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan

Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan Faculdade INED Curso Superior de Tecnologia em Banco de Dados Disciplina: Projeto de Banco de Dados Relacional II Prof.: Fernando Hadad Zaidan 1 Unidade 4.5 2 1 BI BUSINESS INTELLIGENCE BI CARLOS BARBIERI

Leia mais

Hierarquia de modelos e Aprendizagem de Máquina

Hierarquia de modelos e Aprendizagem de Máquina Hierarquia de modelos e Aprendizagem de Máquina Fabrício Jailson Barth BandTec Maio de 2015 Sumário Introdução: hierarquia de modelos e aprendizagem de máquina. O que é Aprendizagem de Máquina? Hierarquia

Leia mais

Inteligência Computacional [2COP229]

Inteligência Computacional [2COP229] Inteligência Computacional [2COP229] Mestrado em Ciência da Computação Sylvio Barbon Jr barbon@uel.br (2/24) Tema Aula 1 Introdução ao Reconhecimento de Padrões 1 Introdução 2 Componentes clássicos da

Leia mais

Extração de Árvores de Decisão com a Ferramenta de Data Mining Weka

Extração de Árvores de Decisão com a Ferramenta de Data Mining Weka Extração de Árvores de Decisão com a Ferramenta de Data Mining Weka 1 Introdução A mineração de dados (data mining) pode ser definida como o processo automático de descoberta de conhecimento em bases de

Leia mais

Sistemas de Apoio à Decisão Árvores de decisão V 1.2, V.Lobo, EN/ISEGI, 2010

Sistemas de Apoio à Decisão Árvores de decisão V 1.2, V.Lobo, EN/ISEGI, 2010 V., V.Lobo, EN/ISEGI, O que é a árvore de decisão? Arvores de decisão Victor Lobo Algorítmo para tomar decisões (ou classificar) Modo de representar conhecimento Tem penas? Nós (testes, ou conceitos) Comprimento

Leia mais

Redes Neuronais e Aprendizagem Automática 1

Redes Neuronais e Aprendizagem Automática 1 Redes Neuronais e Aprendizagem Automática 2005/2006 17 a aula Fernando.Silva@ist.utl.pt Instituto Superior Técnico Redes Neuronais e Aprendizagem Automática 1 Sumário Árvores de decisão (continuação) Entropia.

Leia mais

Tarefas e Técnicas de Mineração de Dados TAREFAS E TÉCNICAS DE MINERAÇÃO DE DADOS

Tarefas e Técnicas de Mineração de Dados TAREFAS E TÉCNICAS DE MINERAÇÃO DE DADOS Tarefas e Técnicas de Mineração de Dados TAREFAS E TÉCNICAS DE MINERAÇÃO DE DADOS Sumário Conceitos / Autores chave... 3 1. Introdução... 3 2. Tarefas desempenhadas por Técnicas de 4 Mineração de Dados...

Leia mais

4.1. Introdução. 4.2. Layout do DNS

4.1. Introdução. 4.2. Layout do DNS MIT 18.996 Tópico da Teoria da Ciência da Computação: Problemas de Pesquisa na Internet Segundo Trimestre 2002 Aula 4 27de fevereiro de 2002 Palestrantes: T. Leighton, D. Shaw, R. Sudaran Redatores: K.

Leia mais

Data Mining Software Weka. Software Weka. Software Weka 30/10/2012

Data Mining Software Weka. Software Weka. Software Weka 30/10/2012 Data Mining Software Weka Prof. Luiz Antonio do Nascimento Software Weka Ferramenta para mineração de dados. Weka é um Software livre desenvolvido em Java. Weka é um É um pássaro típico da Nova Zelândia.

Leia mais

Satisfação de Restrições. Capítulo 5 (disponível online)

Satisfação de Restrições. Capítulo 5 (disponível online) Satisfação de Restrições Capítulo 5 (disponível online) Sumário Problemas de Satisfação de Restrições (CSPs) Procura com Retrocesso para CSPs Procura Local para CSPs Estrutura dos CSPs Problemas de Satisfação

Leia mais

Inteligência Artificial Prof. Marcos Quinet Pólo Universitário de Rio das Ostras PURO Universidade Federal Fluminense UFF

Inteligência Artificial Prof. Marcos Quinet Pólo Universitário de Rio das Ostras PURO Universidade Federal Fluminense UFF Inteligência Artificial Prof. Marcos Quinet Pólo Universitário de Rio das Ostras PURO Universidade Federal Fluminense UFF No capítulo anterior... Estratégias de busca auxiliadas por heurísticas (A*, BRPM)

Leia mais

Indução de Árvores de Decisão para a Inferência de Redes Gênicas

Indução de Árvores de Decisão para a Inferência de Redes Gênicas PR UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Ministério da Educação Universidade Tecnológica Federal do Paraná Pró-Reitoria de Pesquisa e Pós-Graduação Relatório Final de Atividades Indução de Árvores

Leia mais

3 Aprendizado de Máquina em Jogos Eletrônicos

3 Aprendizado de Máquina em Jogos Eletrônicos 3 Aprendizado de Máquina em Jogos Eletrônicos Jogos populares como xadrez e dama foram um dos pioneiros a utilizarem técnicas de Aprendizado de Máquina (AM), também denominada na literatura como Machine

Leia mais

Árvores de Decisão. Índice

Árvores de Decisão. Índice Árvores de Decisão Índice 1. Introdução... 2 2. Árvores de decisão e a tarefa de classificação... 6 3. Principais conceitos vinculados à indução de árvores de decisão... 15 3.1 Top-Down Induction of Decision

Leia mais

Avaliando o que foi Aprendido

Avaliando o que foi Aprendido Avaliando o que foi Aprendido Treinamento, teste, validação Predição da performance: Limites de confiança Holdout, cross-validation, bootstrap Comparando algoritmos: o teste-t Predecindo probabilidades:função

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Professor: Rosalvo Ferreira de Oliveira Neto Disciplina: Inteligência Artificial Tópicos 1. Definições 2. Tipos de aprendizagem 3. Paradigmas de aprendizagem 4. Modos de aprendizagem

Leia mais

MLP (Multi Layer Perceptron)

MLP (Multi Layer Perceptron) MLP (Multi Layer Perceptron) André Tavares da Silva andre.silva@udesc.br Roteiro Rede neural com mais de uma camada Codificação de entradas e saídas Decorar x generalizar Perceptron Multi-Camada (MLP -

Leia mais

tipos de métodos, técnicas de inteligência artificial e técnicas de otimização. Por fim, concluise com as considerações finais.

tipos de métodos, técnicas de inteligência artificial e técnicas de otimização. Por fim, concluise com as considerações finais. 1. Introdução A previsão de vendas é fundamental para as organizações uma vez que permite melhorar o planejamento e a tomada de decisão sobre o futuro da empresa. Contudo toda previsão carrega consigo

Leia mais

Projeto de Redes Neurais e MATLAB

Projeto de Redes Neurais e MATLAB Projeto de Redes Neurais e MATLAB Centro de Informática Universidade Federal de Pernambuco Sistemas Inteligentes IF684 Arley Ristar arrr2@cin.ufpe.br Thiago Miotto tma@cin.ufpe.br Baseado na apresentação

Leia mais

UTILIZANDO O SOFTWARE WEKA

UTILIZANDO O SOFTWARE WEKA UTILIZANDO O SOFTWARE WEKA O que é 2 Weka: software livre para mineração de dados Desenvolvido por um grupo de pesquisadores Universidade de Waikato, Nova Zelândia Também é um pássaro típico da Nova Zelândia

Leia mais

Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro. Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br

Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro. Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Projeto e Análise de Algoritmos Projeto de Algoritmos Tentativa e Erro Prof. Humberto Brandão humberto@bcc.unifal-mg.edu.br Laboratório de Pesquisa e Desenvolvimento Universidade Federal de Alfenas versão

Leia mais

Teste de Hipótese para uma Amostra Única

Teste de Hipótese para uma Amostra Única Teste de Hipótese para uma Amostra Única OBJETIVOS DE APRENDIZAGEM Depois de um cuidadoso estudo deste capítulo, você deve ser capaz de: 1.Estruturar problemas de engenharia de tomada de decisão, como

Leia mais

Web Data Mining com R

Web Data Mining com R Web Data Mining com R Fabrício J. Barth fabricio.barth@gmail.com VAGAS Tecnologia e Faculdade BandTec Maio de 2014 Objetivo O objetivo desta palestra é apresentar conceitos sobre Web Data Mining, fluxo

Leia mais

REDES BAYESIANAS. Palavras-chave: Redes bayesianas, Grafo, Estrutura de Dados, Inteligência artificial.

REDES BAYESIANAS. Palavras-chave: Redes bayesianas, Grafo, Estrutura de Dados, Inteligência artificial. REDES BAYESIANAS Gabriel Rigo da Cruz Jacobsen gabrielrigoj@gmail.com Prof. Leonardo Sommariva, Estrutura de Dados RESUMO: Uma rede bayesiana é uma forma de representar o conhecimento de um domínio onde

Leia mais

Roteamentos AULA ... META. Introduzir alguns problemas de roteamento. OBJETIVOS. Ao final da aula o aluno deverá ser capaz de:

Roteamentos AULA ... META. Introduzir alguns problemas de roteamento. OBJETIVOS. Ao final da aula o aluno deverá ser capaz de: Roteamentos AULA META Introduzir alguns problemas de roteamento. OBJETIVOS Ao final da aula o aluno deverá ser capaz de: Distinguir circuito euleriano e ciclo hamiltoniano; Obter um circuito euleriano

Leia mais

Identificação de Caracteres com Rede Neuronal Artificial com Interface Gráfica

Identificação de Caracteres com Rede Neuronal Artificial com Interface Gráfica Identificação de Caracteres com Rede Neuronal Artificial com Interface Gráfica João Paulo Teixeira*, José Batista*, Anildio Toca**, João Gonçalves**, e Filipe Pereira** * Departamento de Electrotecnia

Leia mais

PARADIGMAS DA INTELIGÊNCIA ARTIFICIAL EM JOGOS ELETRÔNICOS

PARADIGMAS DA INTELIGÊNCIA ARTIFICIAL EM JOGOS ELETRÔNICOS PARADIGMAS DA INTELIGÊNCIA ARTIFICIAL EM JOGOS ELETRÔNICOS João Antônio Bezerra Rodrigues¹, Késsia Rita da C. Marchi¹, Jaime William Dias¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil joaoabrodrigues@outlook.com

Leia mais

Bioestatística Aula 3

Bioestatística Aula 3 Aula 3 Castro Soares de Oliveira Probabilidade Probabilidade é o ramo da matemática que estuda fenômenos aleatórios. Probabilidade é uma medida que quantifica a sua incerteza frente a um possível acontecimento

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Alessandro L. Koerich Algoritmo k Means Mestrado/Doutorado em Informática (PPGIa) Pontifícia Universidade Católica do Paraná (PUCPR) 2 Problema do Agrupamento Seja x = (x 1, x 2,,

Leia mais

Universidade Federal do Vale do São Francisco Inteligência Artificial

Universidade Federal do Vale do São Francisco Inteligência Artificial Universidade Federal do Vale do São Francisco Inteligência Artificial Professor: Marcelo Santos Linder E-mail: marcelo.linder@univasf.edu.br Página: www.univasf.edu.br/~marcelo.linder Ementa Introdução

Leia mais

Problemas de Satisfação de Restrições

Problemas de Satisfação de Restrições Computação Inteligente Problemas de Satisfação de Restrições Lucas Augusto Carvalho Mestrado em Ciência da Computação 2011.1 DCOMP - Universidade Federal de Sergipe 1 Conteúdo Problemas de Satisfação de

Leia mais

ESTATÍSTICA. Professor: Ricardo Vojta

ESTATÍSTICA. Professor: Ricardo Vojta ESTATÍSTICA Ciências Contábeis Professor: Ricardo Vojta RAMOS DA ESTATÍSTICA A estatística dedutiva (também conhecida como Estatística Descritiva) se encarrega de descrever o conjunto de dado desde a elaboração

Leia mais

IA: Problemas de Satisfação de Restrições. Prof. Msc. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br

IA: Problemas de Satisfação de Restrições. Prof. Msc. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br IA: Problemas de Satisfação de Restrições Prof. Msc. Ricardo Britto DIE-UFPI rbritto@ufpi.edu.br Introdução Um PSR é definido por um conjunto de variáveis X 1, X 2,..., X n, e por um conjunto de restrições,

Leia mais

CTC-17 Inteligência Artificial Problemas de Busca. Prof. Paulo André Castro pauloac@ita.br

CTC-17 Inteligência Artificial Problemas de Busca. Prof. Paulo André Castro pauloac@ita.br CTC-17 Inteligência Artificial Problemas de Busca Prof. Paulo André Castro pauloac@ita.br www.comp.ita.br/~pauloac Sala 110, IEC-ITA Sumário Agentes que buscam soluções para problemas: Exemplo Tipos de

Leia mais

Estratégias de Pesquisa

Estratégias de Pesquisa Estratégias de Pesquisa Ricardo de Almeida Falbo Metodologia de Pesquisa Departamento de Informática Universidade Federal do Espírito Santo Agenda Survey Design e Criação Estudo de Caso Pesquisa Ação Experimento

Leia mais

Extração de Conhecimento a partir dos Sistemas de Informação

Extração de Conhecimento a partir dos Sistemas de Informação Extração de Conhecimento a partir dos Sistemas de Informação Gisele Faffe Pellegrini & Katia Collazos Grupo de Pesquisa em Eng. Biomédica Universidade Federal de Santa Catarina Jorge Muniz Barreto Prof.

Leia mais

I.3 Indução de Árvores de Decisão

I.3 Indução de Árvores de Decisão I.3 Indução de Árvores de Decisão Nesta seção serão apresentados alguns conceitos básicos da técnica de indução de árvores de decisão a partir de um exemplo sobre o efeito dos raios solares sobre algumas

Leia mais

Engenharia de Software

Engenharia de Software CENTRO UNIVERSITÁRIO NOVE DE JULHO Profº. Edson T. França edson.franca@uninove.br Software Sistemas Conjunto de elementos, entre os quais haja alguma relação Disposição das partes ou dos elementos de um

Leia mais

Algoritmia e Estruturas de Dados

Algoritmia e Estruturas de Dados JOSÉ BRAGA DE VASCONCELOS JOÃO VIDAL DE CARVALHO Algoritmia e Estruturas de Dados Programação nas linguagens C e JAVA Portugal/2005 Reservados todos os direitos por Centro Atlântico, Lda. Qualquer reprodução,

Leia mais

Complemento III Noções Introdutórias em Lógica Nebulosa

Complemento III Noções Introdutórias em Lógica Nebulosa Complemento III Noções Introdutórias em Lógica Nebulosa Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações

Leia mais

ESCOLA SECUNDÁRIA MANUEL DA FONSECA, SANTIAGO DO CACÉM GRUPO DISCIPLINAR: 500 Matemática Aplicada às Ciências Sociais

ESCOLA SECUNDÁRIA MANUEL DA FONSECA, SANTIAGO DO CACÉM GRUPO DISCIPLINAR: 500 Matemática Aplicada às Ciências Sociais ANO: 11º ANO LECTIVO : 008/009 p.1/7 CONTEÚDOS MODELOS MATEMÁTICOS COMPETÊNCIAS A DESENVOLVER - Compreender a importância dos modelos matemáticos na resolução de problemas de problemas concretos. Nº. AULAS

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

Testes caixa preta - 1

Testes caixa preta - 1 Testes caixa preta - 1 Abordagens combinatórias Criação: Abr/2001 Reformulação: Mar/2013 Referências M. Pezzè, M. Young. Teste e Análise de Software. Bookman Companhia Editora, 2008, cap. 10 e 11. P. Ammann,

Leia mais

Prof. Júlio Cesar Nievola Data Mining PPGIa PUCPR

Prof. Júlio Cesar Nievola Data Mining PPGIa PUCPR Encontrar grupos de objetos tal que objetos em um grupo são similares (ou relacionados) uns aos outros e diferentes de (ou não relacionados) a objetos em outros grupos Compreensão Agrupa documentos relacionados

Leia mais

Instituto de Tecnologia de Massachusetts Departamento de Engenharia Elétrica e Ciência da Computação. Tarefa 6 Modelamento da Línguagem

Instituto de Tecnologia de Massachusetts Departamento de Engenharia Elétrica e Ciência da Computação. Tarefa 6 Modelamento da Línguagem Instituto de Tecnologia de Massachusetts Departamento de Engenharia Elétrica e Ciência da Computação 6.345 Reconhecimento Automático da Voz Primavera, 2003 Publicado: 14/03/03 Devolução: 02/04/03 Tarefa

Leia mais

Probabilidade. Renata Souza. Introdução. Tabelas Estatísticas. População, Amostra e Variáveis. Gráficos e Distribuição de Freqüências

Probabilidade. Renata Souza. Introdução. Tabelas Estatísticas. População, Amostra e Variáveis. Gráficos e Distribuição de Freqüências Probabilidade Introdução Tabelas Estatísticas População, Amostra e Variáveis Gráficos e Distribuição de Freqüências Renata Souza Conceitos Antigos de Estatística stica a) Simples contagem aritmética Ex.:

Leia mais

Utilização de Técnicas de Mineração de Dados como Auxílio na Detecção de Cartéis em Licitações Carlos Vinícius Sarmento Silva Célia Ghedini Ralha

Utilização de Técnicas de Mineração de Dados como Auxílio na Detecção de Cartéis em Licitações Carlos Vinícius Sarmento Silva Célia Ghedini Ralha WCGE II Workshop de Computação Aplicada em Governo Eletrônico Utilização de Técnicas de Mineração de Dados como Auxílio na Detecção de Cartéis em Licitações Carlos Vinícius Sarmento Silva Célia Ghedini

Leia mais

Data Mining. Origem do Data Mining 24/05/2012. Data Mining. Prof Luiz Antonio do Nascimento

Data Mining. Origem do Data Mining 24/05/2012. Data Mining. Prof Luiz Antonio do Nascimento Data Mining Prof Luiz Antonio do Nascimento Data Mining Ferramenta utilizada para análise de dados para gerar, automaticamente, uma hipótese sobre padrões e anomalias identificadas para poder prever um

Leia mais

2. ALGORITMOS. Unesp Campus de Guaratinguetá. Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro

2. ALGORITMOS. Unesp Campus de Guaratinguetá. Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 2. ALGORITMOS Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 2 - Algoritmo 2.1: Introdução Antes de se utilizar uma linguagem de computador,

Leia mais

DOMÓTICA INTELIGENTE: AUTOMAÇÃO BASEADA EM COMPORTAMENTO

DOMÓTICA INTELIGENTE: AUTOMAÇÃO BASEADA EM COMPORTAMENTO DOMÓTICA INTELIGENTE: AUTOMAÇÃO BASEADA EM COMPORTAMENTO MARCELO TAKIUCHI, ÉRICA MELO E FLAVIO TONIDANDEL Centro Universitário da FEI UniFEI Av. Humberto de A. Castelo Branco, 3972 09850-901 - São Bernardo

Leia mais

Experimentos de Mineração de Dados em R Disciplina do curso de Pós-Graduação da UTFPR

Experimentos de Mineração de Dados em R Disciplina do curso de Pós-Graduação da UTFPR Experimentos de Mineração de Dados em R Disciplina do curso de Pós-Graduação da UTFPR Paulo Carvalho Diniz Junior CPGEI / UTFPR Avenida Sete de Setembro, 3165 Curitiba-PR - CEP 80.230-910 E-mail: paulo.carvalho.diniz@gmail.com

Leia mais

Algoritmos de Agrupamento - Aprendizado Não Supervisionado. Fabrício Jailson Barth

Algoritmos de Agrupamento - Aprendizado Não Supervisionado. Fabrício Jailson Barth Algoritmos de Agrupamento - Aprendizado Não Supervisionado Fabrício Jailson Barth Abril de 2013 Sumário Introdução e Definições Aplicações Algoritmos de Agrupamento Agrupamento Plano Agrupamento Hierárquico

Leia mais

Revisão Inteligência Artificial ENADE. Prof a Fabiana Lorenzi Outubro/2011

Revisão Inteligência Artificial ENADE. Prof a Fabiana Lorenzi Outubro/2011 Revisão Inteligência Artificial ENADE Prof a Fabiana Lorenzi Outubro/2011 Representação conhecimento É uma forma sistemática de estruturar e codificar o que se sabe sobre uma determinada aplicação (Rezende,

Leia mais

Algoritmos em Javascript

Algoritmos em Javascript Algoritmos em Javascript Sumário Algoritmos 1 O que é um programa? 1 Entrada e Saída de Dados 3 Programando 4 O que é necessário para programar 4 em JavaScript? Variáveis 5 Tipos de Variáveis 6 Arrays

Leia mais

Probabilidade - aula III

Probabilidade - aula III 27 de Março de 2014 Regra da Probabilidade Total Objetivos Ao final deste capítulo você deve ser capaz de: Usar a regra da multiplicação para calcular probabilidade de eventos Usar a Regra da Probabilidade

Leia mais

INTELIGÊNCIA ARTIFICIAL Data Mining (DM): um pouco de prática. (1) Data Mining Conceitos apresentados por

INTELIGÊNCIA ARTIFICIAL Data Mining (DM): um pouco de prática. (1) Data Mining Conceitos apresentados por INTELIGÊNCIA ARTIFICIAL Data Mining (DM): um pouco de prática (1) Data Mining Conceitos apresentados por 1 2 (2) ANÁLISE DE AGRUPAMENTOS Conceitos apresentados por. 3 LEMBRE-SE que PROBLEMA em IA Uma busca

Leia mais

Sistemas Especialistas

Sistemas Especialistas Sistemas Especialistas Sistemas de Informação Inteligentes Prof. Esp. MBA Heuber G. F. Lima Aula3 Agenda Conceitos para a construção Avaliação de alguns sistemas especialistas Page 2 Sistemas Especialistas

Leia mais

Árvores Binárias Balanceadas

Árvores Binárias Balanceadas Árvores Binárias Balanceadas Elisa Maria Pivetta Cantarelli Árvores Balanceadas Uma árvore é dita balanceada quando as suas subárvores à esquerda e à direita possuem a mesma altura. Todos os links vazios

Leia mais

Aplicação de Métodos de Inteligência Artificial em Inteligência de Negócios

Aplicação de Métodos de Inteligência Artificial em Inteligência de Negócios Aplicação de Métodos de Inteligência Artificial em Inteligência de Negócios Rogério Garcia Dutra (POLI USP) rogerio.dutra@axiaconsulting.com.br Resumo O objetivo deste artigo é combinar métodos de redes

Leia mais

Fases para um Projeto de Data Warehouse. Fases para um Projeto de Data Warehouse. Fases para um Projeto de Data Warehouse

Fases para um Projeto de Data Warehouse. Fases para um Projeto de Data Warehouse. Fases para um Projeto de Data Warehouse Definição escopo do projeto (departamental, empresarial) Grau de redundância dos dados(ods, data staging) Tipo de usuário alvo (executivos, unidades) Definição do ambiente (relatórios e consultas préestruturadas

Leia mais

Sistemas Inteligentes Lista de Exercícios sobre Busca

Sistemas Inteligentes Lista de Exercícios sobre Busca Sistemas Inteligentes Lista de Exercícios sobre Busca 1) A* - Problema do metrô de Paris Suponha que queremos construir um sistema para auxiliar um usuário do metrô de Paris a saber o trajeto mais rápido

Leia mais

Aprendizado de Máquina

Aprendizado de Máquina Referências Aula 1 http://www.ic.uff.br/~bianca/aa/ Slides das aulas: na página http://www.ic.uff.br/~bianca/aa/ Livro-texto: Machine Learning Tom M. Mitchell McGraw-Hill, 1997 http://www.cs.cmu.edu/~tom/mlbook.html

Leia mais

Palavras-chave: Sistema neuro-fuzzy, Sistemas de avaliação, Sistemas Adaptativos.

Palavras-chave: Sistema neuro-fuzzy, Sistemas de avaliação, Sistemas Adaptativos. ANÁLISE DO CURSO DE ENGENHARIA ELÉTRICA NA UERJ A PARTIR DE INDICADORES CONSTRUÍDOS BASEADOS NO EXAME NACIONAL DE CURSOS: UM SISTEMA NEBULOSO DE AVALIAÇÃO Maria Luiza F. Velloso mlfv@centroin.com.br Universidade

Leia mais

Vetor Quantização e Aglomeramento (Clustering)

Vetor Quantização e Aglomeramento (Clustering) (Clustering) Introdução Aglomeramento de K-partes Desafios do Aglomeramento Aglomeramento Hierárquico Aglomeramento divisivo (top-down) Aglomeramento inclusivo (bottom-up) Aplicações para o reconhecimento

Leia mais

O texto desta seção foi publicado em http://msdn.microsoft.com/ptbr/library/ms177433.aspx. o http://msdn.microsoft.com/pt-br/library/ms178104.

O texto desta seção foi publicado em http://msdn.microsoft.com/ptbr/library/ms177433.aspx. o http://msdn.microsoft.com/pt-br/library/ms178104. AULA 12 - Deadlocks Em alguns casos pode ocorrer a seguinte situação: um processo solicita um determinado recurso e este não está disponível no momento. Quando isso ocontece o processo entra para o estado

Leia mais

Capítulo 2. Álgebra e imagens binárias. 2.1 Subconjuntos versus funções binárias

Capítulo 2. Álgebra e imagens binárias. 2.1 Subconjuntos versus funções binárias Capítulo 2 Álgebra e imagens binárias Em Análise de Imagens, os objetos mais simples que manipulamos são as imagens binárias. Estas imagens são representadas matematicamente por subconjuntos ou, de maneira

Leia mais

Cálculo numérico. ln 1 = 0. Representação numérica. Exemplo. Exemplos. Professor Walter Cunha. ln 1. I s

Cálculo numérico. ln 1 = 0. Representação numérica. Exemplo. Exemplos. Professor Walter Cunha. ln 1. I s Representação numérica Cálculo numérico Professor Walter Cunha Um conjunto de ferramentas ou métodos usados para se obter a solução de problemas matemáticos de forma aproximada. Esses métodos se aplicam

Leia mais

Marcelo K. Albertini. 17 de Abril de 2014

Marcelo K. Albertini. 17 de Abril de 2014 Introdução a Mineração de Dados Marcelo K. Albertini 17 de Abril de 2014 2/1 Organização do curso Prof. Marcelo Keese Albertini Sala: Bloco 1A - sala 1A230 Horário de atendimento: Sexta-feira 14h-17h ou

Leia mais

Lista de Exercícios 4: Soluções Sequências e Indução Matemática

Lista de Exercícios 4: Soluções Sequências e Indução Matemática UFMG/ICEx/DCC DCC Matemática Discreta Lista de Exercícios : Soluções Sequências e Indução Matemática Ciências Exatas & Engenharias o Semestre de 05 O conjunto dos números racionais Q é enumerável, ou seja,

Leia mais

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software

O que é software? Software e Engenharia de Software. O que é software? Tipos de Sistemas de Software. A Evolução do Software O que é software? Software e Engenharia de Software Programas de computador Entidade abstrata. Ferramentas (mecanismos) pelas quais: exploramos os recursos do hardware. executamos determinadas tarefas

Leia mais

Compiladores Aula 5. Celso Olivete Júnior. olivete@fct.unesp.br

Compiladores Aula 5. Celso Olivete Júnior. olivete@fct.unesp.br Aula 5 Celso Olivete Júnior olivete@fct.unesp.br Na aula passada Conjuntos Primeiro(First) e Seguidor(Follow) 2 Na aula de hoje Análise Sintática Análise Sintática Descendente Recursividade Fatoração 3

Leia mais

Análise de Tendências de Mercado por Redes Neurais Artificiais

Análise de Tendências de Mercado por Redes Neurais Artificiais Análise de Tendências de Mercado por Redes Neurais Artificiais Carlos E. Thomaz 1 e Marley M.B.R. Vellasco 2 1 Departamento de Engenharia Elétrica (IAAA), FEI, São Paulo, Brasil 2 Departamento de Engenharia

Leia mais

2.1.2 Definição Matemática de Imagem

2.1.2 Definição Matemática de Imagem Capítulo 2 Fundamentação Teórica Este capítulo descreve os fundamentos e as etapas do processamento digital de imagens. 2.1 Fundamentos para Processamento Digital de Imagens Esta seção apresenta as propriedades

Leia mais

SISTEMAS DE APRENDIZADO PARA A IDENTIFICAÇÃO DO NÚMERO DE CAROÇOS DO FRUTO PEQUI LEARNING SYSTEMS FOR IDENTIFICATION OF PEQUI FRUIT SEEDS NUMBER

SISTEMAS DE APRENDIZADO PARA A IDENTIFICAÇÃO DO NÚMERO DE CAROÇOS DO FRUTO PEQUI LEARNING SYSTEMS FOR IDENTIFICATION OF PEQUI FRUIT SEEDS NUMBER SISTEMAS DE APRENDIZADO PARA A IDENTIFICAÇÃO DO NÚMERO DE CAROÇOS DO FRUTO PEQUI Fernando Luiz de Oliveira 1 Thereza Patrícia. P. Padilha 1 Conceição A. Previero 2 Leandro Maciel Almeida 1 RESUMO O processo

Leia mais

Fabrício J. Barth. Apontador http://www.apontador.com.br http://www.apontador.com.br/institucional/ fabricio.barth@lbslocal.com

Fabrício J. Barth. Apontador http://www.apontador.com.br http://www.apontador.com.br/institucional/ fabricio.barth@lbslocal.com Uma Introdução à Mineração de Informações Fabrício J. Barth Apontador http://www.apontador.com.br http://www.apontador.com.br/institucional/ fabricio.barth@lbslocal.com Outubro de 2010 Objetivo Apresentar

Leia mais