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

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

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

O Problema do Troco Principio da Casa dos Pombos. > Princípios de Contagem e Enumeração Computacional 0/48

O Problema do Troco Principio da Casa dos Pombos. > Princípios de Contagem e Enumeração Computacional 0/48 Conteúdo 1 Princípios de Contagem e Enumeração Computacional Permutações com Repetições Combinações com Repetições O Problema do Troco Principio da Casa dos Pombos > Princípios de Contagem e Enumeração

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

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

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Exercícios Teóricos Resolvidos

Exercícios Teóricos Resolvidos Universidade Federal de Minas Gerais Instituto de Ciências Exatas Departamento de Matemática Exercícios Teóricos Resolvidos O propósito deste texto é tentar mostrar aos alunos várias maneiras de raciocinar

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números

Leia mais

Correlação e Regressão Linear

Correlação e Regressão Linear Correlação e Regressão Linear A medida de correlação é o tipo de medida que se usa quando se quer saber se duas variáveis possuem algum tipo de relação, de maneira que quando uma varia a outra varia também.

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

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,...

Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,... Por que o quadrado de terminados em 5 e ta o fa cil? Ex.: 15²=225, 75²=5625,... 0) O que veremos na aula de hoje? Um fato interessante Produtos notáveis Equação do 2º grau Como fazer a questão 5 da 3ª

Leia mais

Exercícios Resolvidos sobre probabilidade total e Teorema de Bayes

Exercícios Resolvidos sobre probabilidade total e Teorema de Bayes Exercícios Resolvidos sobre probabilidade total e Teorema de Bayes Para ampliar sua compreensão sobre probabilidade total e Teorema de Bayes, estude este conjunto de exercícios resolvidos sobre o tema.

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

x0 = 1 x n = 3x n 1 x k x k 1 Quantas são as sequências com n letras, cada uma igual a a, b ou c, de modo que não há duas letras a seguidas?

x0 = 1 x n = 3x n 1 x k x k 1 Quantas são as sequências com n letras, cada uma igual a a, b ou c, de modo que não há duas letras a seguidas? Recorrências Muitas vezes não é possível resolver problemas de contagem diretamente combinando os princípios aditivo e multiplicativo. Para resolver esses problemas recorremos a outros recursos: as recursões

Leia mais

Contagem I. Figura 1: Abrindo uma Porta.

Contagem I. Figura 1: Abrindo uma Porta. Polos Olímpicos de Treinamento Curso de Combinatória - Nível 2 Prof. Bruno Holanda Aula 4 Contagem I De quantos modos podemos nos vestir? Quantos números menores que 1000 possuem todos os algarismos pares?

Leia mais

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE

MÓDULO 6 INTRODUÇÃO À PROBABILIDADE MÓDULO 6 INTRODUÇÃO À PROBBILIDDE Quando estudamos algum fenômeno através do método estatístico, na maior parte das vezes é preciso estabelecer uma distinção entre o modelo matemático que construímos para

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

Eventos independentes

Eventos independentes Eventos independentes Adaptado do artigo de Flávio Wagner Rodrigues Neste artigo são discutidos alguns aspectos ligados à noção de independência de dois eventos na Teoria das Probabilidades. Os objetivos

Leia mais

3 Classificação. 3.1. Resumo do algoritmo proposto

3 Classificação. 3.1. Resumo do algoritmo proposto 3 Classificação Este capítulo apresenta primeiramente o algoritmo proposto para a classificação de áudio codificado em MPEG-1 Layer 2 em detalhes. Em seguida, são analisadas as inovações apresentadas.

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

Capítulo 7 Medidas de dispersão

Capítulo 7 Medidas de dispersão Capítulo 7 Medidas de dispersão Introdução Para a compreensão deste capítulo, é necessário que você tenha entendido os conceitos apresentados nos capítulos 4 (ponto médio, classes e frequência) e 6 (média).

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II O seguinte exercício contempla um processo com três estágios. Baseia-se no Inquérito de Satisfação Fase II, sendo, por isso, essencial compreender primeiro o problema antes de começar o tutorial. 1 1.

Leia mais

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES

CONCURSO PÚBLICO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI ANALISTA DE GESTÃO RESPOSTAS ESPERADAS PRELIMINARES CELG DISTRIBUIÇÃO S.A EDITAL N. 1/2014 CONCURSO PÚBLICO ANALISTA DE GESTÃO ANALISTA DE SISTEMA ÊNFASE GOVERNANÇA DE TI RESPOSTAS ESPERADAS PRELIMINARES O Centro de Seleção da Universidade Federal de Goiás

Leia mais

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001 47 5 Redes Neurais O trabalho em redes neurais artificiais, usualmente denominadas redes neurais ou RNA, tem sido motivado desde o começo pelo reconhecimento de que o cérebro humano processa informações

Leia mais

Mercados de Publicidade

Mercados de Publicidade Mercados de Publicidade em Busca Web Redes Sociais e Econômicas Prof. André Vignatti O Princípio da VCG para um Mercado de Emparelhamento Geral Vamos generalizar o exemplo para obtermos um método genérico

Leia mais

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2

O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2 3.2 O Espaço Nulo de A: Resolvendo Ax = 0 11 O ESPAÇO NULO DE A: RESOLVENDO AX = 0 3.2 Esta seção trata do espaço de soluções para Ax = 0. A matriz A pode ser quadrada ou retangular. Uma solução imediata

Leia mais

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto ALGORITMOS PARTE 01 Fabricio de Sousa Pinto Algoritmos: Definição 2 É uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Algoritmos 3

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resoluçã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

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR 6LPXODomR GH6LVWHPDV )HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR #5,6. Simulador voltado para análise de risco financeiro 3RQWRV IRUWHV Fácil de usar. Funciona integrado a ferramentas já bastante conhecidas,

Leia mais

Aula 11 Esperança e variância de variáveis aleatórias discretas

Aula 11 Esperança e variância de variáveis aleatórias discretas Aula 11 Esperança e variância de variáveis aleatórias discretas Nesta aula você estudará os conceitos de média e variância de variáveis aleatórias discretas, que são, respectivamente, medidas de posição

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

DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE

DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE DESENVOLVIMENTO DE UM SOFTWARE NA LINGUAGEM R PARA CÁLCULO DE TAMANHOS DE AMOSTRAS NA ÁREA DE SAÚDE Mariane Alves Gomes da Silva Eliana Zandonade 1. INTRODUÇÃO Um aspecto fundamental de um levantamento

Leia mais

Aula 4 Estatística Conceitos básicos

Aula 4 Estatística Conceitos básicos Aula 4 Estatística Conceitos básicos Plano de Aula Amostra e universo Média Variância / desvio-padrão / erro-padrão Intervalo de confiança Teste de hipótese Amostra e Universo A estatística nos ajuda a

Leia mais

AULA 6 LÓGICA DOS CONJUNTOS

AULA 6 LÓGICA DOS CONJUNTOS Disciplina: Matemática Computacional Crédito do material: profa. Diana de Barros Teles Prof. Fernando Zaidan AULA 6 LÓGICA DOS CONJUNTOS Intuitivamente, conjunto é a coleção de objetos, que em geral, tem

Leia mais

Reconhecimento de marcas de carros utilizando Inteligência Artificial. André Bonna Claudio Marcelo Basckeira Felipe Villela Lourenço Richard Keller

Reconhecimento de marcas de carros utilizando Inteligência Artificial. André Bonna Claudio Marcelo Basckeira Felipe Villela Lourenço Richard Keller Reconhecimento de marcas de carros utilizando Inteligência Artificial André Bonna Claudio Marcelo Basckeira Felipe Villela Lourenço Richard Keller Motivação Análise estatística das marcas de carros em

Leia mais

Utilizando a ferramenta de criação de aulas

Utilizando a ferramenta de criação de aulas http://portaldoprofessor.mec.gov.br/ 04 Roteiro Utilizando a ferramenta de criação de aulas Ministério da Educação Utilizando a ferramenta de criação de aulas Para criar uma sugestão de aula é necessário

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS VINICIUS DA SILVEIRA SEGALIN FLORIANÓPOLIS OUTUBRO/2013 Sumário

Leia mais

5 Extraindo listas de produtos em sites de comércio eletrônico

5 Extraindo listas de produtos em sites de comércio eletrônico 5 Extraindo listas de produtos em sites de comércio eletrônico Existem diversos trabalhos direcionadas à detecção de listas e tabelas na literatura como (Liu et. al., 2003, Tengli et. al., 2004, Krüpl

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

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

Capítulo 1. x > y ou x < y ou x = y

Capítulo 1. x > y ou x < y ou x = y Capítulo Funções, Plano Cartesiano e Gráfico de Função Ao iniciar o estudo de qualquer tipo de matemática não podemos provar tudo. Cada vez que introduzimos um novo conceito precisamos defini-lo em termos

Leia mais

Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler

Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler Tecnologia em Gestão Pública Desenvolvimento de Projetos - Aula 9 Prof. Rafael Roesler Introdução Objetivos da Gestão dos Custos Processos da Gerência de Custos Planejamento dos recursos Estimativa dos

Leia mais

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO

10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO 10 DICAS DE TECNOLOGIA PARA AUMENTAR SUA PRODUTIVIDADE NO TRABALHO UMA DAS GRANDES FUNÇÕES DA TECNOLOGIA É A DE FACILITAR A VIDA DO HOMEM, SEJA NA VIDA PESSOAL OU CORPORATIVA. ATRAVÉS DELA, ELE CONSEGUE

Leia mais

Bases Matemáticas. Aula 2 Métodos de Demonstração. Rodrigo Hausen. v. 2013-7-31 1/15

Bases Matemáticas. Aula 2 Métodos de Demonstração. Rodrigo Hausen. v. 2013-7-31 1/15 Bases Matemáticas Aula 2 Métodos de Demonstração Rodrigo Hausen v. 2013-7-31 1/15 Como o Conhecimento Matemático é Organizado Definições Definição: um enunciado que descreve o significado de um termo.

Leia mais

Dois eventos são disjuntos ou mutuamente exclusivos quando não tem elementos em comum. Isto é, A B = Φ

Dois eventos são disjuntos ou mutuamente exclusivos quando não tem elementos em comum. Isto é, A B = Φ Probabilidade Vimos anteriormente como caracterizar uma massa de dados, como o objetivo de organizar e resumir informações. Agora, apresentamos a teoria matemática que dá base teórica para o desenvolvimento

Leia mais

Estrutura de Dados Básica

Estrutura de Dados Básica Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 7: Recursividade O objetivo desta aula é apresentar o conceito de recursão para solução de problemas. A recursão é uma técnica de programação

Leia mais

Departamento de Matemática - UEL - 2010. Ulysses Sodré. http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

Departamento de Matemática - UEL - 2010. Ulysses Sodré. http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010. Matemática Essencial Extremos de funções reais Departamento de Matemática - UEL - 2010 Conteúdo Ulysses Sodré http://www.mat.uel.br/matessencial/ Arquivo: minimaxi.tex - Londrina-PR, 29 de Junho de 2010.

Leia mais

Algoritmos. Objetivo principal: explicar que a mesma ação pode ser realizada de várias maneiras, e que às vezes umas são melhores que outras.

Algoritmos. Objetivo principal: explicar que a mesma ação pode ser realizada de várias maneiras, e que às vezes umas são melhores que outras. 6 6 NOME DA AULA: 6 Algoritmos Duração da aula: 45 60 minutos Tempo de preparação: 10-25 minutos (dependendo da disponibilidade de tangrans prontos ou da necessidade de cortá-los à mão) Objetivo principal:

Leia mais

Batalha Naval Algoritmos de Busca. Correlações curriculares Matemática: Números: maior que, menor que, iguais a.

Batalha Naval Algoritmos de Busca. Correlações curriculares Matemática: Números: maior que, menor que, iguais a. Atividade 6 Batalha Naval Algoritmos de Busca Sumário Computadores são freqüentemente requisitados a encontrar informação em grandes coleções de dados. Estes precisam desenvolver métodos rápidos e eficientes

Leia mais

Contagem. Prof. Dr. Leandro Balby Marinho. Matemática Discreta. Fundamentos Inclusão/Exclusão Princípio da Casa dos Pombos Permutações Combinações

Contagem. Prof. Dr. Leandro Balby Marinho. Matemática Discreta. Fundamentos Inclusão/Exclusão Princípio da Casa dos Pombos Permutações Combinações Contagem Prof. Dr. Leandro Balby Marinho Matemática Discreta Prof. Dr. Leandro Balby Marinho 1 / 39 UFCG CEEI Motivação Contagem e combinatória são partes importantes da matemática discreta. Se resumem

Leia mais

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá. INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,

Leia mais

1. Conceitos de sistemas. Conceitos da Teoria de Sistemas. Conceitos de sistemas extraídos do dicionário Aurélio:

1. Conceitos de sistemas. Conceitos da Teoria de Sistemas. Conceitos de sistemas extraídos do dicionário Aurélio: 1. Conceitos de sistemas Conceitos da Teoria de Sistemas OPTNER: É um conjunto de objetos com um determinado conjunto de relações entre seus objetos e seus atributos. TILLES: É um conjunto de partes inter-relacionadas.

Leia mais

a 1 x 1 +... + a n x n = b,

a 1 x 1 +... + a n x n = b, Sistemas Lineares Equações Lineares Vários problemas nas áreas científica, tecnológica e econômica são modelados por sistemas de equações lineares e requerem a solução destes no menor tempo possível Definição

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

1. Avaliação de impacto de programas sociais: por que, para que e quando fazer? (Cap. 1 do livro) 2. Estatística e Planilhas Eletrônicas 3.

1. Avaliação de impacto de programas sociais: por que, para que e quando fazer? (Cap. 1 do livro) 2. Estatística e Planilhas Eletrônicas 3. 1 1. Avaliação de impacto de programas sociais: por que, para que e quando fazer? (Cap. 1 do livro) 2. Estatística e Planilhas Eletrônicas 3. Modelo de Resultados Potenciais e Aleatorização (Cap. 2 e 3

Leia mais

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010.

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. Visão Geral do Sistema Prof. Raul Sidnei Wazlawick UFSC-CTC-INE 2010 Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010. A fase de concepção do UP consiste

Leia mais

Jogos. Redes Sociais e Econômicas. Prof. André Vignatti

Jogos. Redes Sociais e Econômicas. Prof. André Vignatti Jogos Redes Sociais e Econômicas Prof. André Vignatti Teoria dos Jogos Neste curso, queremos olhar para redes a partir de duas perspectivas: 1) uma estrutura subjacente dos links de conexão 2) o comportamentos

Leia mais

PÓS GRADUAÇÃO EM CIÊNCIAS DE FLORESTAS TROPICAIS-PG-CFT INSTITUTO NACIONAL DE PESQUISAS DA AMAZÔNIA-INPA. 09/abril de 2014

PÓS GRADUAÇÃO EM CIÊNCIAS DE FLORESTAS TROPICAIS-PG-CFT INSTITUTO NACIONAL DE PESQUISAS DA AMAZÔNIA-INPA. 09/abril de 2014 PÓS GRADUAÇÃO EM CIÊNCIAS DE FLORESTAS TROPICAIS-PG-CFT INSTITUTO NACIONAL DE PESQUISAS DA AMAZÔNIA-INPA 09/abril de 2014 Considerações Estatísticas para Planejamento e Publicação 1 Circularidade do Método

Leia mais

Probabilidade - aula I

Probabilidade - aula I e 27 de Fevereiro de 2015 e e Experimentos Aleatórios e Objetivos Ao final deste capítulo você deve ser capaz de: Entender e descrever espaços amostrais e eventos para experimentos aleatórios. Interpretar

Leia mais

Este material traz a teoria necessária à resolução das questões propostas.

Este material traz a teoria necessária à resolução das questões propostas. Inclui Teoria e Questões Inteiramente Resolvidas dos assuntos: Contagem: princípio aditivo e multiplicativo. Arranjo. Permutação. Combinação simples e com repetição. Lógica sentencial, de primeira ordem

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

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

Algoritmos e Estrutura de Dados III. Árvores

Algoritmos e Estrutura de Dados III. Árvores Algoritmos e Estrutura de Dados III Árvores Uma das mais importantes classes de estruturas de dados em computação são as árvores. Aproveitando-se de sua organização hierárquica, muitas aplicações são realizadas

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

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

Gestão da Qualidade Políticas. Elementos chaves da Qualidade 19/04/2009

Gestão da Qualidade Políticas. Elementos chaves da Qualidade 19/04/2009 Gestão da Qualidade Políticas Manutenção (corretiva, preventiva, preditiva). Elementos chaves da Qualidade Total satisfação do cliente Priorizar a qualidade Melhoria contínua Participação e comprometimento

Leia mais

Trecho retirando do Manual do esocial Versão 1.1

Trecho retirando do Manual do esocial Versão 1.1 Trecho retirando do Manual do esocial Versão 1.1 A rotina de acesso direto ao XML do S-1000, o usuário pode encontrar na opção de cadastro de Empresas do SIP. Sempre que o usuário localizar a figura ao

Leia mais

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas CMP1132 Processo e qualidade de software II Prof. Me. Elias Ferreira Sala: 402 E Quarta-Feira:

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

Leia mais

Dadas a base e a altura de um triangulo, determinar sua área.

Dadas a base e a altura de um triangulo, determinar sua área. Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares

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

Fração como porcentagem. Sexto Ano do Ensino Fundamental. Autor: Prof. Francisco Bruno Holanda Revisor: Prof. Antonio Caminha M.

Fração como porcentagem. Sexto Ano do Ensino Fundamental. Autor: Prof. Francisco Bruno Holanda Revisor: Prof. Antonio Caminha M. Material Teórico - Módulo de FRAÇÕES COMO PORCENTAGEM E PROBABILIDADE Fração como porcentagem Sexto Ano do Ensino Fundamental Autor: Prof. Francisco Bruno Holanda Revisor: Prof. Antonio Caminha M. Neto

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

Aula 4 Conceitos Básicos de Estatística. Aula 4 Conceitos básicos de estatística

Aula 4 Conceitos Básicos de Estatística. Aula 4 Conceitos básicos de estatística Aula 4 Conceitos Básicos de Estatística Aula 4 Conceitos básicos de estatística A Estatística é a ciência de aprendizagem a partir de dados. Trata-se de uma disciplina estratégica, que coleta, analisa

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

2. Representação Numérica

2. Representação Numérica 2. Representação Numérica 2.1 Introdução A fim se realizarmos de maneira prática qualquer operação com números, nós precisamos representa-los em uma determinada base numérica. O que isso significa? Vamos

Leia mais

ANALISE COMBINATORIA Um pouco de probabilidade

ANALISE COMBINATORIA Um pouco de probabilidade ANALISE COMBINATORIA Um pouco de probabilidade Programa Pró-Ciência Fapesp/IME-USP-setembro de 1999 Antônio L. Pereira -IME USP (s. 234A) tel 818 6214 email:alpereir@ime.usp.br 1 Um carro e dois bodes

Leia mais

AV2 - MA 12-2012. (a) De quantos modos diferentes posso empilhá-los de modo que todos os CDs de rock fiquem juntos?

AV2 - MA 12-2012. (a) De quantos modos diferentes posso empilhá-los de modo que todos os CDs de rock fiquem juntos? Questão 1. Num porta-cds, cabem 10 CDs colocados um sobre o outro, formando uma pilha vertical. Tenho 3 CDs de MPB, 5 de rock e 2 de música clássica. (a) De quantos modos diferentes posso empilhá-los de

Leia mais

Somatórias e produtórias

Somatórias e produtórias Capítulo 8 Somatórias e produtórias 8. Introdução Muitas quantidades importantes em matemática são definidas como a soma de uma quantidade variável de parcelas também variáveis, por exemplo a soma + +

Leia mais

TEORIA DOS CONJUNTOS Símbolos

TEORIA DOS CONJUNTOS Símbolos 1 MATERIAL DE APOIO MATEMÁTICA Turmas 1º AS e 1º PD Profº Carlos Roberto da Silva A Matemática apresenta invenções tão sutis que poderão servir não só para satisfazer os curiosos como, também para auxiliar

Leia mais

Sistema Banco de Preços Manual do Usuário OBSERVATÓRIO

Sistema Banco de Preços Manual do Usuário OBSERVATÓRIO Sistema Banco de Preços Manual do Usuário OBSERVATÓRIO da Despesa Pública 1 Sumário O Banco de Preços... 3 Acessando o Banco de Preços... 4 Funções do Banco de Preços... 5 Gerar Preço de Referência...

Leia mais

ESTRUTURAS DE DADOS II

ESTRUTURAS DE DADOS II ESTRUTURAS DE DADOS II Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Conteúdo Programático 1. Introdução

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

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Cálculo Numérico Aula : Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Computação Numérica - O que é Cálculo Numérico? Cálculo numérico é uma metodologia para resolver problemas matemáticos

Leia mais

Podemos encontrar uma figura interessante no PMBOK (Capítulo 7) sobre a necessidade de organizarmos o fluxo de caixa em um projeto.

Podemos encontrar uma figura interessante no PMBOK (Capítulo 7) sobre a necessidade de organizarmos o fluxo de caixa em um projeto. Discussão sobre Nivelamento Baseado em Fluxo de Caixa. Item aberto na lista E-Plan Podemos encontrar uma figura interessante no PMBOK (Capítulo 7) sobre a necessidade de organizarmos o fluxo de caixa em

Leia mais

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário

Leia mais

Do neurônio biológico ao neurônio das redes neurais artificiais

Do neurônio biológico ao neurônio das redes neurais artificiais Do neurônio biológico ao neurônio das redes neurais artificiais O objetivo desta aula é procurar justificar o modelo de neurônio usado pelas redes neurais artificiais em termos das propriedades essenciais

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

Unidade VI. Validação e Verificação de Software Teste de Software. Conteúdo. Técnicas de Teste. Estratégias de Teste

Unidade VI. Validação e Verificação de Software Teste de Software. Conteúdo. Técnicas de Teste. Estratégias de Teste Unidade VI Validação e Verificação de Software Teste de Software Profa. Dra. Sandra Fabbri Conteúdo Técnicas de Teste Funcional Estrutural Baseada em Erros Estratégias de Teste Teste de Unidade Teste de

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Aprendizagem de Conceito Alessandro L. Koerich 2008 Mestrado/Doutorado em Informática Pontifícia Universidade Católica do Paraná (PUCPR) Mestrado/Doutorado em Informática Aprendizagem

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

Pesquisa Etnográfica

Pesquisa Etnográfica Pesquisa Etnográfica Pesquisa etnográfica Frequentemente, as fontes de dados têm dificuldade em dar informações realmente significativas sobre a vida das pessoas. A pesquisa etnográfica é um processo pelo

Leia mais