Análise comparativa dos classificadores Máquinas de Suporte Vectorial e Redes Neuronais Artificiais: Aplicação na detecção de Peões e Veículos

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

Download "Análise comparativa dos classificadores Máquinas de Suporte Vectorial e Redes Neuronais Artificiais: Aplicação na detecção de Peões e Veículos"

Transcrição

1 Universidade de Coimbra Faculdade de Ciências e Tecnologia Departamento de Engenharia Electrotécnica e de Computadores Dissertação de Mestrado em Engenharia Electrotécnica e de Computadores Especialização em Automação Análise comparativa dos classificadores Máquinas de Suporte Vectorial e Redes Neuronais Artificiais: Aplicação na detecção de Peões e Veículos Valter Filipe Carnim Gonçalves Orientador: Co-Orientador: Professor Doutor Urbano José Carreira Nunes Mestre Oswaldo Ludwig Júnior Júri: Presidente: Vogais: Professor Doutor Urbano José Carreira Nunes Professor Doutor Fernando Santos Perdigão Professor Doutor Rui Paulo Pinto da Rocha Coimbra, Janeiro de 21

2 Universidade de Coimbra Faculdade de Ciências e Tecnologia Departamento de Engenharia Electrotécnica e de Computadores Análise comparativa dos classificadores Máquinas de Suporte Vectorial e Redes Neuronais Artificiais: Aplicação na detecção de peões e veículos Valter Filipe Carnim Gonçalves Dissertação submetida para obtenção do grau de Mestre em Engenharia Electrotécnica e de Computadores, Especialização em Automação Coimbra, Janeiro de 21

3 Agradecimentos Dedico este modesto trabalho à minha grande amiga e avó Carmina (in memoriam). Gostaria de agradecer às várias pessoas que, de diferentes formas, contribuíram para a realização desta tese. O meu profundo reconhecimento ao Professor Doutor Urbano José Carreira Nunes e ao Mestre Oswaldo Ludwig Júnior por todo o apoio, motivação, orientação e conhecimentos transmitidos ao longo desta dissertação. O meu agradecimento aos meus pais, irmã, cunhado, afilhado João Pedro e à minha namorada Cláudia Pinho, pelo incentivo, ajuda, força que me deram nos momentos de fraqueza e compreensão que me dispensaram. Aos meus colegas do ISR/DEEC, pela ajuda, união e amizade, em especial ao Mestre David Delgado, Mestre Jérôme Mendes, Mestre João Loureiro, Mestre João Rodrigues, Mestre Carlos Batista, Mestre Ricardo Maia e Nuno Abrantes. Aos meus amigos Renato Almeida, Rui Santos e Daniel Pereira pela longa amizade. Um especial agradecimento aos meus primos, Pedro Gonçalves (Sénior e Júnior), Célia Gonçalves e à Dra. Maria José Pimentel. Agradeço ao ISR-UC pelas condições e meios disponíveis que me possibilitaram fazer esta tese. Um agradecimento também a Fundação para a Ciência e Tecnologia (FCT) através do projecto PMITS6 (PTDC/EEA-ACR/72226/26) e co-financiado pelo FEDER. Valter Gonçalves

4 Resumo O trabalho desenvolvido nesta dissertação teve como objectivo contribuir na área de reconhecimento de padrões, especificamente na detecção de peões e veículos. Para isso, fezse um estudo, aplicação e comparação de diversos classificadores, SVM (Máquina de Suporte Vectorial) com diferentes tipos de kernels [Linear, Polinomial, Polinomial normalizado, RBF (Radial Basis Function), PCA (Análise das componentes principais), LDA (Linear Discriminant Analysis).],, CVM (Core Vector Machine), BVM (Ball Vector Machine), RNA GDX (Rede Neuronal Artificial Gradient descent with momentum and adaptive learning rate back-propagation) e RNA GDX MCI (Minimization of Inter-Class Interference). Foram usados dois conjuntos de imagens (um de peões da Daimler Pedestrian Classification Benchmark (DPCB) [1] e outro de veículos composto por dois conjuntos de traseiras e dianteiras de automóveis da Caltech [2]), com e sem extractores de características. Os extractores de características utilizados foram o HOG (Histograma de Gradientes) e o COV (Covariância), tanto isolados como em conjunto. São apresentados os resultados experimentais obtidos a partir dos inúmeros testes realizados. Palavras-chave: Classificador, Máquina Suporte Vectorial, Rede Neuronal Artificial, extractor de características, detecção de peões, detecção de veículos. i

5 Abstract This thesis aims to contribute in the area of pattern recognition, specifically in the pedestrian s and vehicle s detection. In order to do this, it was made a study, application and comparison of several classifiers, SVM (Support Vector Machine) with different kernels [Linear, Polynomial, normalized Polynomial, RBF (Radial Basis Function), PCA (Principal Component Analysis), LDA (Linear Discriminant Analysis).] υ-svm, CVM (Core Vector Machine), BVM (Ball Vector Machine), ANN-GDX (Artificial Neural Network - Gradient descent with momentum and adaptive learning rate back-propagation) and ANN -GDX- MCI (Minimization of Inter-Class Interference). In this work were used two datasets (a pedestrian, from DaimlerChrysler Pedestrian Classification Benchmark (DPCB)[1] and another of vehicle, made with two sets of front and rear car images from Caltech [2]), with and without feature extractors. The feature extractors used were HOG (Histogram of Gradients) and COV (Covariance), alone or together. Experimental results obtained from the numerous tests are presented. Keywords: Classifier, Support Vector Machine, Artificial Neural Network, feature extractor, pedestrian recognition, vehicles recognition. ii

6 Índice i. Índice de Figuras... v ii. Índice de Tabelas... vi iii. Índice de Gráficos... vii iv. Lista de Siglas... x 1. Introdução Motivação Objectivos Trabalho realizado e contribuições chave Máquinas de Suporte Vectorial Teoria Estatística de Aprendizagem (TEA) Considerações sobre a Escolha do Classificador Limites no Risco Esperado Máquinas de Suporte Vectorial Lineares Máquinas de Suporte Vectorial com Margens Rígidas Máquinas de Suporte Vectorial com Margens Suaves Máquinas de Suporte Vectorial Não Lineares Tipos de Kernels utilizados Kernel Linear Kernel Polinomial Kernel Gaussiano ou RBF (Radial Basis Function) Kernel PCA (Análise dos Componentes Principais) Kernel LDA (Linear Discriminant Analysis) SVM Core Vector Machine (CVM) Bola Envolvente Mínima (MEB) na geometria computacional Algoritmo da Core Vector Machine Redes Neuronais Artificiais O Neurónio Artificial Topologia de Redes Neuronais Artificiais A rede neuronal Perceptrão (Perceptron) iii

7 3.4. A rede neuronal Perceptrão de Múltiplas Camadas (MLP) RNA treinada pelo Método do Gradiente Descendente (GDX) RNA treinada por Minimization of Interclass Interference (MCI) Extractores de Características Histograma dos Gradientes (HOG) Covariâncias (COV) HOG-COV Datasets Dataset de Veículos Dataset de Peões Resultados Experimentais Resultados obtidos no dataset de Veículos (Caltech) Resultados obtidos no dataset de Peões (DPCB) Software utilizado Conclusão Trabalhos Futuros Bibliografia... 5 Apêndice A. Gráficos dos testes efectuados dataset de veículos com o extractor de características HOG Apêndice B. Gráficos dos testes efectuados dataset de veículos com o extractor de características COV Apêndice C. Gráficos dos testes efectuados dataset de peões com o extractor de características HOG Apêndice D. Gráficos dos testes efectuados dataset de peões com o extractor de características COV Apêndice E. Trainable Classifier-Fusion Schemes: an Application to Pedestrian Detection... 6 iv

8 i. Índice de Figuras Figura 2.1 Conjunto de treino binário (duas classes) e três diferentes hipóteses... 3 Figura 2.2 Cálculo da distância entre os hiperplanos e Figura 2.3 Exemplo de tipos de vectores de suporte Figura 2.4 (a) Conjunto de dados não linear; (b) Fronteira não linear no espaço de entradas; (c) Fronteira linear no espaço de características Figura 2.5 Exemplo de uma Bola Envolvente[17] Figura 3.1 Modelo de um neurónio artificial Figura 3.2 Exemplos de Funções de Activação Figura 3.3 Principais topologias de redes neurais artificiais Figura 3.4 Rede neuronal Perceptrão Figura 3.5 Exemplo de uma Rede Neuronal Perceptrão de Múltiplas Camadas Figura 4.1 Exemplo das células utilizadas (Esq.) e Histograma de Gradientes (Dir.) Figura 4.2 Exemplo de uma imagem (Esq.) e covariâncias (Dir.) Figura 5.1 Exemplos do dataset de veículos da Caltech Figura 5.2 Exemplos do dataset de peões DPCB Figura 6.1 Modelo do classificador utilizado v

9 ii. Índice de Tabelas Tabela 6.1 Parâmetros das Redes Neuronais Tabela 6.2 Melhor Taxa de Acerto(%) obtida nos testes com o dataset de Veículos Tabela 6.3 Melhor Taxa de Acerto(%) obtida nos testes com o dataset de Peões(DPCB) vi

10 iii. Índice de Gráficos Gráfico 6. 1 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro de margem, utilizando como características os níveis de cinzento das imagens no dataset de veículos Gráfico 6. 2 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro nas -SVMs, utilizando como características os níveis de cinzento das imagens no dataset de veículos Gráfico 6. 3 Taxa de acerto no teste e tempo de treino relativamente à variação do nº de componentes principais (SVM-PCA) ou Dimensão do espaço kernel (SVM-LDA), utilizando como características os níveis de cinzento das imagens no dataset de veículos.. 38 Gráfico 6. 4 Taxa de acerto no teste e tempo de treino das redes neuronais relativamente à variação do nº de neurónios na camada oculta GDX, utilizando como características os níveis de cinzento das imagens no dataset de veículos Gráfico 6. 5 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro de margem utilizando o extractor HOG-COV no dataset de veículos Gráfico 6. 6 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro nas -SVMs, utilizando o extractor Gráfico 6. 7 Taxa de acerto no teste e tempo de treino relativamente à variação do nº de componentes principais (SVM-PCA) ou Dimensão do espaço kernel (SVM-LDA), utilizando o extractor HOG-COV no dataset de veículos Gráfico 6. 8 Taxa de acerto no teste e tempo de treino das redes neuronais relativamente à variação do nº de neurónios na camada oculta GDX, utilizando o extractor HOG-COV no dataset de veículos Gráfico 6. 9 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro de margem, utilizando como características os níveis de cinzento das imagens no dataset de peões Gráfico 6. 1 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro nas -SVMs, utilizando como características os níveis de cinzento das imagens no dataset de peões Gráfico Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro de margem utilizando o extractor HOG-COV no dataset de peões Gráfico Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro nas -SVMs, utilizando o extractor HOG-COV no dataset de peões Gráfico Taxa de acerto no teste e tempo de treino relativamente à variação do nº de componentes principais (SVM-PCA) ou Dimensão do espaço kernel (SVM-LDA), utilizando o extractor HOG-COV no dataset de peões vii

11 Gráfico Taxa de acerto no teste e tempo de treino das redes neuronais relativamente à variação do nº de neurónios na camada oculta GDX, utilizando o extractor HOG-COV no dataset de peões Gráfico A. 1 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro de margem, utilizando o extractor HOG no dataset de veículos Gráfico A. 2 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro nas -SVMs, utilizando o extractor HOG no dataset de veículos Gráfico A. 3 Taxa de acerto no teste e tempo de treino relativamente à variação do nº de componentes principais (SVM-PCA) ou Dimensão do espaço kernel (SVM-LDA), utilizando o extractor HOG no dataset de veículos Gráfico A. 4 Taxa de acerto no teste e tempo de treino das redes neuronais relativamente à variação do nº de neurónios na camada oculta GDX, utilizando o extractor HOG no dataset de veículos Gráfico B. 1 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro de margem, utilizando o extractor COV no dataset de veículos Gráfico B. 2 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro nas -SVMs, utilizando o extractor COV no dataset de veículos Gráfico B. 3 Taxa de acerto no teste e tempo de treino relativamente à variação do nº de componentes principais (SVM-PCA) ou Dimensão do espaço kernel (SVM-LDA), utilizando o extractor COV no dataset de veículos Gráfico B. 4 Taxa de acerto no teste e tempo de treino das redes neuronais relativamente à variação do nº de neurónios na camada oculta GDX, utilizando o extractor COV no dataset de veículos Gráfico C. 1 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro de margem, utilizando o extractor HOG no dataset de peões Gráfico C. 2 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro nas -SVMs, utilizando o extractor HOG no dataset de peões Gráfico C. 3 Taxa de acerto no teste e tempo de treino relativamente à variação do nº de componentes principais (SVM-PCA) ou dimensão do espaço kernel (SVM-LDA), utilizando o extractor HOG no dataset de peões Gráfico C. 4 Taxa de acerto no teste e tempo de treino das redes neuronais relativamente à variação do nº de neurónios na camada oculta GDX, utilizando o extractor HOG no dataset de peões viii

12 Gráfico D. 1 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro de margem, utilizando o extractor COV no dataset de peões Gráfico D. 2 Taxa de acerto no teste, número de vectores de suporte e tempo de treino relativamente à variação do parâmetro nas -SVMs, utilizando o extractor COV no dataset de peões Gráfico D. 3 Taxa de acerto no teste e tempo de treino relativamente à variação do nº de componentes principais (SVM-PCA) ou dimensão do espaço kernel (SVM-LDA), utilizando o extractor COV no dataset de peões Gráfico D. 4 Taxa de acerto no teste e tempo de treino das redes neuronais relativamente à variação do nº de neurónios na camada oculta GDX, utilizando o extractor COV no dataset de peões ix

13 iv. Lista de Siglas AM Aprendizagem Máquina. AUC Área Sob a Curva. BVM Ball Vector Machine. COV Covariância. CVM Core Vector Machine. DPCB Daimler Chrysler Pedestrian Classification Benchmark. EB Bola Envolvente. GDX Gradient descent with momentum and adaptive learning rate back-propagation. HOG Histograma de Gradientes. IA Inteligência Artificial. ITS Sistema de Transporte Inteligente (Intelligent Transportation System). LDA Linear Discriminant Analysis. MEB Bola Envolvente Mínima. MCI Minimization of Inter-Class Interference. MLP Perceptrão de Múltiplas Camadas (Multilayer Perceptron). PCA Análise das Componentes Principais (Principle Component Analysis). ROC Receiver Operating Characteristic. RBF Radial Basis Function. RNA Rede Neuronal Artificial. S.A: Sujeito a. SV Vector de Suporte (Support Vector). SVM Máquina Suporte Vectorial (Support Vector Machine). TEA Teoria Estatística de Aprendizagem. x

14 1. Introdução Este capítulo apresenta uma introdução através dos tópicos: motivação, objectivos e trabalho realizado para o desenvolvimento desta dissertação Motivação A motivação para esta dissertação é a investigação de algoritmos que permitem a classificação de objectos através de sistemas de visão por computador. Isto levará à tentativa de resolução de problemas recorrentes do quotidiano, gerados pelo aumento da motorização, urbanização, mudanças na densidade populacional, tais como o tráfego, colisões e atropelamento de peões. Com o desenvolvimento deste tema, a detecção de um peão por uma viatura com um sistema automático para a imobilização da última irá diminuir o número de atropelamentos que ocorrem actualmente. Podem também ser utilizados em sistemas de câmaras de videovigilância nas cidades que detectem os veículos automóveis para controlo de tráfego e consequentemente para a diminuição do consumo energético, ruído e poluição Objectivos Os objectivos desta dissertação foram os seguintes: Estudo de classificadores e extractores de características habituais em Sistemas de Transporte Inteligente (ITS). Análise de sensibilidade do modelo de Máquinas de Suporte Vectorial ao parâmetro de margem. Estudo do método de treino de Redes Neuronais Artificiais, Minimization of Inter- Class Interference (MCI). Simulação de diferentes composições Extractor de Características e Classificador aplicados às tarefas de reconhecimento de peões e veículos. Análise comparativa entre os resultados do modelo neuronal, treinado por meio de MCI e do modelo de Máquinas de Suporte Vectorial. 1

15 1.3. Trabalho realizado e contribuições chave As principais contribuições deste trabalho são as seguintes: Análise de diversas toolboxs para a selecção das melhores que se adaptavam a este trabalho. Implementação em MATLAB de código de transformação dos diversos conjuntos de dados para que pudessem ser usados nas toolboxs utilizadas neste trabalho. Elaboração e adaptação de código para a obtenção dos parâmetros essenciais para a visualização de dados em tabelas e gráficos. Comparação exaustiva dos classificadores SVM (Support Vector Machine) com diferentes tipos de kernels [linear, polinomial de grau 2, polinomial normalizado de grau 2, RBF (Radial Basis Function), PCA (Análise das Componentes Principais)],, CVM (Core Vector Machine), BVM (Ball Vector Machine), RNA-GDX (Rede Neuronal Artificial - Gradient descent with momentum and adaptive learning rate back-propagation) e RNA-GDX-MCI (Minimization of Inter-Class Interference). Foram usados nesta comparação dois conjuntos de imagens (um de peões (DPCB) e outro de veículos (Caltech)), com e sem extractores de características. Os extractores de características utilizados foram o HOG (Histograma de Gradientes) e o COV (Covariância), tanto isolados como em conjunto. Utilização de um novo kernel desenvolvido pelo Co-orientador Oswaldo Ludwig Júnior que permite a utilização do classificador LDA (Linear Discriminant Analysis) como kernel nas máquinas de suporte vectorial (SVM-LDA, secção ). O trabalho desenvolvido contribuiu para a criação de um método de fusão de classificadores treináveis. Comparou-se este método com outros de fusão não treináveis e com classificadores sem fusão associada, o que originou um artigo: Trainable Classifier-Fusion Schemes: an Application to Pedestrian Detection (Apêndice E) [3]. 2

16 2. Máquinas de Suporte Vectorial As Máquinas de Suporte Vectorial (SVM) são técnicas que utilizam a Teoria Estatística de Aprendizagem [4] em problemas de classificação binária (duas classes), que podem ser estendidas para classificação de múltiplas classes. SVM é um caso particular de métodos baseados em funções kernel, que mapeia vectores de características num espaço de maior dimensão. Para este novo espaço cria-se um hiperplano óptimo que separa as classes. A solução é óptima se a margem entre o hiperplano e os vectores de características mais próximos das duas classes é máximo. Os vectores de características que estão mais próximos do hiperplano denominam-se Vectores de Suporte (Support Vectors). Neste capítulo são apresentadas as Máquinas de Suporte Vectorial usadas em classificação de padrões (de duas classes) Teoria Estatística de Aprendizagem (TEA) Considere-se um classificador e o conjunto total de classificadores que um algoritmo de Aprendizagem Máquina consegue criar. Durante o processo de aprendizagem, este algoritmo utiliza um conjunto de treino, composto por pares para criar um classificador particular Para exemplificar, considere-se o conjunto de treino da figura [5]: x 2 x 2 x 2 x1 x1 x1 Figura 2.1 Conjunto de treino binário (duas classes) e três diferentes hipóteses. 3

17 O objectivo do processo de aprendizagem é encontrar um classificador que separe devidamente os dados das classes círculo e losango. Na Figura 2.1-a), tem-se uma hipótese que classifica correctamente todos os exemplos do conjunto de treino, incluindo dois possíveis ruídos, mas por ser muito específica para o conjunto de treino, é susceptível a cometer erros quando confrontada com novos dados. Nesta situação existe um sobre-ajuste do modelo aos dados de treino. Na imagem da Figura 2.1-b), o classificador não considera pontos pertencentes a classes opostas que estão muito próximos entre si, esta situação produz muitos erros de classificação e tem-se o caso de um sub-ajuste. A situação ideal seria um classificador intermédio entre as duas funções descritas que classifique correctamente grande parte dos dados, sem se fixar demasiado num qualquer ponto individual, este é representado na Figura 2.1-c). A Teoria Estatística de Aprendizagem produz condições matemáticas que auxiliam a escolha de um classificador particular a partir de um conjunto de dados de treino Considerações sobre a Escolha do Classificador Inicialmente, na aplicação da TEA ( Teoria Estatística de Aprendizagem ), assumese que no domínio em que a aprendizagem decorre os dados são criados de forma independente e identicamente distribuída de acordo com uma distribuição de probabilidade que descreve a relação entre os dados e os seus rótulos. O risco ou erro previsto de um classificador para dados de teste pode ser quantificado pela equação seguinte [6]: (2.1) Este erro quantifica a capacidade de generalização de, onde é uma função que relaciona a previsão quando a saída desejada é ou. Um tipo de função de custo [5] usada em problemas de classificação é definida por: (2.2) Esta função devolve se é classificado correctamente, 1 caso contrário. 4

18 O risco empírico de [6] mede o desempenho do classificador nos dados de treino, através da taxa de classificações incorrectas no conjunto de treino : (2.3) O processo de indução baseado nos dados de treino conhecidos constitui o princípio de minimização do risco empírico. Quando é possível estabelecer condições para o algoritmo de aprendizagem, que garantam a obtenção de classificadores cujos valores de risco empírico convergem para o risco esperado Limites no Risco Esperado Um limite importante dado pela TEA relaciona o risco esperado de uma função com o risco empírico e um termo de capacidade. Esse limite, representado na inequação (2.4) é garantido com probabilidade, com : (2.4) onde é a dimensão Vapnik-Chervonenkis ( ) [7] da classe de funções à qual pertence, representa a quantidade de exemplos no conjunto de treino e a parcela de raiz na soma é referenciada como termo de capacidade. A dimensão mede a capacidade do conjunto de funções [8]. Quanto maior o seu valor, mais complexas são as funções de classificação que podem ser induzidas a partir de. Para um problema de classificação binário, esta dimensão é definida como o número máximo de exemplos que podem ser particionados em duas classes pelas funções contidas em, para todas as possíveis combinações binárias desses dados. Em termos práticos, na expressão (2.4), tem-se que o risco esperado pode ser minimizado com uma escolha adequada, por parte do algoritmo de aprendizagem, de um classificador que minimize o risco empírico e que pertença a uma classe de funções com baixa dimensão. 5

19 2.2. Máquinas de Suporte Vectorial Lineares As SVMs resultaram da aplicação directa dos resultados fornecidos pela teoria estatística de aprendizagem. Nesta secção é apresentado o uso de SVMs na obtenção de fronteiras lineares para a separação de dados pertencentes a duas classes. A primeira formulação, mais simples, lida com problemas linearmente separáveis. Foi posteriormente estendida para definir fronteiras lineares sobre conjuntos de dados mais generalizados Máquinas de Suporte Vectorial com Margens Rígidas As SVMs lineares com margens rígidas descrevem fronteiras lineares a partir de dados linearmente separáveis. Seja um conjunto de treino com dados e seus respectivos rótulos, onde constitui o espaço dos dados e. é linearmente separável se for possível separar os dados das classes e por um hiperplano [5]. Classificadores que separam os dados por meio de um hiperplano denominam-se lineares. A equação de um hiperplano é: (2. 5) Onde é o produto escalar entre os vectores e, é o vector normal ao hiperplano descrito e é o bias ou desvio. Esta equação divide o espaço dos dados X em duas partes: e. Assim, uma função sinal pode ser utilizada na obtenção das classificações [9]:. (2.6) A partir de é possível obter um número infinito de hiperplanos equivalentes, através da multiplicação de e por uma mesma constante. Define-se o hiperplano canónico 6

20 relativamente ao conjunto como aquele em que e são escalados de modo a que os exemplos mais próximos ao hiperplano satisfaçam a equação: Esta forma pode ser expressa como:. (2.7) (2.8) Resumindo a expressão anterior:. (2.9) Seja um ponto no hiperplano e um ponto no hiperplano, conforme ilustrado na Figura 2.2. Projectando na direcção de w, perpendicular ao hiperplano separador, é possível obter a distância entre os hiperplanos e. Esta projecção é dada por: (2.1) z 2 H : w x 2 b 1 x 1 x 2 x 1 x 2 w d H 1 : w x b w x b 1 z 1 Figura 2.2 Cálculo da distância entre os hiperplanos e. 7

21 resulta em Tem-se que e. A diferença entre estas equações [1]. Substituindo na equação (2.1), obtém-se: (2.11) Normalizando, fica: (2.12) Esta é a distância d, ilustrada na Figura 2.2, entre os hiperplanos e, paralelos ao hiperplano separador. Como w e b foram escalados de maneira a não existir exemplos entre e, é a distância mínima entre o hiperplano separador e os dados de treino. Esta distância é definida como a margem geométrica do classificador linear. Verifica-se que a maximização da margem de separação dos dados em relação a pode ser obtida pela minimização de. Deste modo, recorre-se ao seguinte problema de optimização [5]: (2.13) s.a: (2.14) As restrições são impostas de maneira a assegurar que não haja dados de treino entre as margens de separação das classes. Por este motivo, a SVM obtida denomina-se SVM com margens rígidas. O problema de optimização obtido é quadrático [5]. Ao minimizar a função objectivo esta torna-se convexa e os pontos que satisfazem as restrições formam um conjunto convexo, este problema possui um único mínimo global. Problemas deste tipo podem ser solucionados com a inserção de uma função Lagrangiana, que engloba as restrições à função objectivo, associadas a parâmetros denominados multiplicadores de Lagrange, expresso pela equação (2.15). 8

22 (2.15) variáveis A função Lagrangiana necessita de ser minimizada, o que implica maximizar as e minimizar w e b [6]. Tem-se então um ponto de sela, onde: (2.16) A resolução dessas equações leva aos resultados: (2.17) (2.18) Substituindo as equações (2.17) e (2.18) na expressão (2.15), obtém-se o seguinte problema de optimização: (2.19) s.a: (2.2) Esta formulação denomina-se como forma dual, enquanto o problema original é referenciado como forma primal. A forma dual tem a vantagem de apresentar restrições mais simples e permitir a representação do problema de optimização em termos de produtos internos entre dados, o que será útil nas SVMs Não Lineares abordadas na secção seguinte. Seja a solução do problema dual e e as soluções da forma primal. Obtido o valor de, pode ser determinado pela equação (2.18). 9

23 O parâmetro é definido por e por condições de Karush-Kühn-Tucker (KKT), provenientes da teoria de optimização com restrições e que devem ser satisfeitas no ponto óptimo. Para o problema dual, tem-se [11]: (2.21) Através desta equação pode-se observar que pode ser diferente de zero apenas para dados que se encontram sobre os hiperplanos e. Estes são os exemplos que se situam mais próximos do hiperplano separador, exactamente nas margens. Para os outros casos, a condição apresentada na equação (2.21) obriga a que Estes pontos não participam no cálculo de (expressão (2.18)). Os dados que têm denominam-se vectores de suporte e são considerados os dados mais informativos do conjunto de treino, pois apenas eles participam na determinação da equação do hiperplano separador (equação (2.24)). O valor de é determinado a partir dos vectores de suporte e das condições representadas na equação (2.21). Computacionalmente processa-se a média apresentada na expressão (2.22) sobre todos tal que (todos os SVs). (2.22) Onde é número de SVs e SV representa o conjunto dos SVs. Substituindo pela expressão (2.18), tem-se: (2.23) Finalmente, tem-se o classificador ou função de decisão apresentada na equação(2.24), em que representa a função sinal, é fornecido pela expressão (2.18) e pela equação (2.23). 1

24 (2.24) Esta função linear representa o hiperplano que separa os dados de margem mais elevada, considerando aquele com melhor capacidade de generalização de acordo com a TEA Máquinas de Suporte Vectorial com Margens Suaves Na prática, é difícil encontrar aplicações em que os dados sejam linearmente separáveis. Isto deve-se a diversas causas, entre elas a presença de ruídos nos dados ou à própria natureza do problema, que pode ser não linear. Então as SVMs lineares de margens rígidas são estendidas, para trabalhar com conjuntos de treino generalizados. Permitem-se assim que alguns dados possam violar a restrição da equação (2.14). Esta situação é resolvida com a introdução de variáveis de folga, que relaxam as restrições impostas ao problema de optimização primal [5]: (2.25) Este procedimento suaviza as margens do classificador linear, permitindo que alguns dados permaneçam entre os hiperplanos e e também a existência de alguns erros de classificação. As SVMs obtidas neste caso são referenciadas como SVMs com margens suaves. Um erro no conjunto de treino é indicado por um valor de. Assim, a soma dos representa um limite na quantidade de erros de treino. Para considerar este termo, minimizando o erro sobre os dados de treino, a expressão (2.13) é reformulada da seguinte forma [1]: (2.26) 11

25 A constante (parâmetro de margem) é um termo de regularização que impõe um peso à minimização dos erros no conjunto de treino em relação à minimização da complexidade do modelo. O termo no problema de optimização também pode ser visto como uma minimização de erros marginais, pois um valor de aponta para um dado dentro das margens. De modo semelhante às SVMs com margens rígidas, o problema de optimização gerado é quadrático, com as restrições lineares apresentadas na equação (2.25). A sua solução envolve um processo matemático semelhante ao apresentado anteriormente, com a introdução de uma função Lagrangiana e tornando suas derivadas parciais nulas. Tem-se como resultado o seguinte problema dual: (2.27) s.a: (2.28) Estas expressões são idênticas às apresentadas para as SVMs de margens rígidas, diferindo na restrição nos, que agora são limitados pelo valor de. Seja a solução do problema dual e as soluções da forma primal. O vector é determinado pela expressão (2.18) e as variáveis pela equação (2.29): (2.29) A variável resulta novamente de e de condições de Karush-Kühn-Tucker (KKT), que para este caso são [11]: (2.3) (2.31) 12

26 Os pontos para os quais denominam-se vectores de suporte (SVs), sendo os dados que participam da criação do hiperplano separador. Contudo, neste caso, pode-se especificar os tipos SVs. Se pela equação (2.31), e então, da expressão (2.3), estes SVs encontram-se sobre as margens, estes SVs são chamados livres. Os SVs para os quais podem representar três casos: erros, se ; pontos classificados correctamente, contudo dentro das margens, se ; e pontos sobre as margens, se, nesta situação os SVs denominam-se SVs limitados. x 2 x 1 Figura 2.3 Exemplo de tipos de vectores de suporte. Na Figura 2.3 os pontos azuis representam SVs livres. SVs limitados são desenhados a preto. Os pontos verdes correspondem a SVs limitados que são erros de treino. Todos os outros dados, a vermelho, estão classificados correctamente e encontram-se fora das margens, tendo e. Para calcular processa-se computacionalmente a média da equação (2.22) sobre todos SVs entre as margens, ou seja, com. Tem-se como resultado final a mesma função de classificação representada na equação (2.24), porém nesta situação as variáveis são determinadas pela solução da expressão (2.27) com as restrições da equação (2.28). 13

27 2.3. Máquinas de Suporte Vectorial Não Lineares As SVMs lineares são eficazes na classificação de conjuntos de dados linearmente separáveis ou que possuam uma distribuição aproximadamente linear, sendo que a versão de margens suaves permite a presença de alguns ruídos. Contudo, existem diversas situações em que não é possível separar convenientemente os dados de treino por um hiperplano. Um exemplo é apresentado na Figura 2.4, em que o uso de uma fronteira curva seria mais adequado na separação das classes. Figura 2.4 (a) Conjunto de dados não linear; (b) Fronteira não linear no espaço de entradas; (c) Fronteira linear no espaço de características As SVMs processam problemas não lineares mapeando o conjunto de treino do seu espaço original, o de entradas, para um novo espaço de maior dimensão, designado espaço de características (features space) [1]. Seja um mapeamento, em que é o espaço de entradas e designa o espaço de características. A escolha apropriada de faz com que o conjunto de treino mapeado em possa ser separado por uma SVM linear. A utilização deste procedimento é fundamentada pelo teorema de Cover [12]. Este teorema afirma que dado um conjunto de dados não linear no espaço de entradas, pode ser transformado num espaço de características no qual, com elevada probabilidade, os dados são linearmente separáveis. Para isso devem ser satisfeitas duas condições. A primeira é que a transformação seja não linear, enquanto a segunda é que a dimensão do espaço de características seja suficientemente alta. 14

28 Para ilustrar estes conceitos, considere-se o conjunto de dados apresentado na Figura (a). Converte-se os dados de para com o mapeamento caracterizado na expressão (2.32), o conjunto de dados não linear em torna-se linearmente separável em, Figura (c). Assim, é possível encontrar um hiperplano adequado para separar esses dados, descrito na equação (2.33). Pode-se verificar que a função apresentada, embora linear em (Figura 2.4- (c)), corresponde a uma fronteira não linear em Figura 2.4- (b)). (2.32) (2.33) Inicialmente mapeia-se os dados para um espaço de maior dimensão utilizando e aplica-se a SVM linear neste espaço. Esta encontra o hiperplano com maior margem de separação e assegura uma boa generalização. Utiliza-se então a versão de SVM linear com margens suaves, que facilita o trabalho devido a ruídos presentes nos dados. Para efectuar o mapeamento, aplica-se aos exemplos presentes no problema de optimização representado na expressão (2.27), conforme a seguinte descrição: (2.34) Com as restrições da equação (2.28). De modo semelhante, o classificador extraído torna-se: (2.35) (2.22) usando também o mapeamento aos dados: Em que é adaptado da expressão (2.36) Como pode ter dimensão muito alta (até mesmo infinita), a computação de pode ser extremamente custosa ou inviável. Porém, pelas expressões (2.34),(2.35) e (2.36) percebe-se que a única informação necessária sobre o mapeamento é de como realizar o cálculo de 15

29 produtos escalares entre os dados no espaço de características, pois tem-se sempre, para dois dados e, em conjunto. Tal é obtida com o uso de funções denominadas Kernels O Conceito de Kernel Um kernel K é uma função que recebe dois pontos e do espaço de entradas e processa computacionalmente o produto escalar desses dados no espaço de características. Tem-se então:. (2.37) Para o mapeamento apresentado na expressão (2.32) e por exemplo, para dois dados e em, o kernel é dado por:. (2.38) É vulgar a utilização da função kernel sem o conhecimento do mapeamento, que é gerado implicitamente. A utilidade dos kernels está, portanto, na simplicidade do seu cálculo e na sua capacidade de representar espaços abstractos. Para garantir a convexidade do problema de optimização formulado na equação (2.34) e também que o kernel represente mapeamentos nos quais seja possível o cálculo de produtos escalares conforme a expressão (2.37), utiliza-se funções kernel que seguem condições estabelecidas pelo teorema de Mercer [9]. De forma simplificada, um kernel que satisfaz as condições de Mercer é caracterizado por dar origem a matrizes positivas semidefinidas, em que cada elemento é definido por: (2.39) 16

30 Tipos de Kernels utilizados Kernel Linear Se o problema de classificação é linearmente separável no espaço de entrada não é necessário mapear o espaço de entrada num espaço de maior dimensão [13]. Nesta situação utiliza-se o kernel linear: (2.4) Kernel Polinomial O kernel polinomial com grau d, onde é dado por: (2.41) Aqui é adicionado o valor 1 para que todos os termos cruzados com graus iguais ou menores a sejam incluídos. Quando, o kernel é igual ao kernel linear mais, assim, ajustando o termo b (bias) na função de decisão, é equivalente ao kernel linear. O kernel polinomial normalizado com grau d, onde é: (2.42) Kernel Gaussiano ou RBF (Radial Basis Function) O kernel RBF é definido por: (2.43) Onde é um parâmetro positivo para o controlo do raio. 17

31 Kernel PCA (Análise dos Componentes Principais) O método PCA [14] permite eliminar a covariância das coordenadas de um vector de variáveis aleatórias, através de uma mudança de base. A covariância contém informação redundante e desnecessária. A base formada pelos vectores próprios da matriz de covariância permite diagonalizar a matriz de covariância, ou seja, eliminar a covariância das coordenadas do vector de entrada. Na nova base, um número inferior de coordenadas é suficiente para incluir grande parte da informação. O vector na nova base apresenta algumas coordenadas com grande variância enquanto outras têm variâncias próximas de zero. Uma variável aleatória com baixa variância não revela muita informação. O primeiro passo PCA é o cálculo da matriz de covariância, dado por: (2.44) onde é o número de exemplos apresentados. O segundo passo é a determinação dos vectores próprios da matriz de covariância. Os vectores próprios formam as colunas de uma matriz de vectores próprios P: (2.45) Esta matriz é usada para mudar a base de, obtendo uma matriz diagonal, de valores próprios de : (2.46) A matriz diagonal, ou seja, a matriz na nova base, tem apenas variância não apresenta covariância. A matriz é a matriz de covariância do vector na base : (2.47) 18

32 Deste modo verifica-se que o vector na base não tem covariância nas suas coordenadas, isto é, não tem informação redundante. Por fim, é possível truncar o vector na base, eliminando as coordenadas que possuem baixa variância (isto é, coordenadas cujo valor próprio da matriz de covariância é pequeno). Assim, o algoritmo pode receber um vector com dimensão elevada, aplicar uma transformação linear aos dados, truncar e retornar um vector de menor dimensão. Definindo e que corresponde às linhas dos componentes principais de, resulta um espaço kernel de menor dimensão. O kernel obtido a partir do método PCA é: (2.48) Kernel LDA (Linear Discriminant Analysis) Considere-se um vector de ganhos ajustáveis e o conjunto de vectores de características que pertencem à Classe, com média e covariância. A combinação linear de características tem média e covariância. A razão,, da variância da distância entre as classes,, pela variância dentro das classes,, é uma medida ajustada de separação entre essas duas classes[3]: (2.49) Para a optimização da separação, é necessário encontrar o vector condição: que satisfaz a seguinte (2.5) Considerando classes normalmente distribuídas e com matrizes de covariância iguais, a solução é dada por: (2.51) 19

33 Onde é o vector normal ao hiperplano descriminante. O kernel LDA emprega uma matriz diagonal cujos elementos atendem às condições: (2.52) Para construir o kernel são seleccionadas as linhas da matriz cujos elementos da diagonal, i.e. ganhos são maiores. Sendo assim, a matriz é truncada de tal forma a excluir as características menos relevantes. Resultando uma matriz, que origina uma menor dimensão do espaço kernel. O kernel obtido é: (2.53) 2.4. SVM A -SVM [16] utiliza dois novos parâmetros e. O parâmetro controla o número de vectores de suporte e os erros de treino, é um limite superior sobre a fracção de erros de treino e um limite inferior da fracção de vectores de suporte, enquanto é uma variável de margem a ser optimizada,, para maior detalhe vide [17]. Quanto maior o valor de, maior o número de pontos dentro da margem. Dados os vectores de treino, em duas classes e um vector tal que, a forma primal considerada está exposta na expressão (2.54). 2

34 (2.54) s.a: (2.55) O dual é: (2.56) s.a: (2.57) A função de decisão processada é: (2.58) Então as duas margens são dadas por: (2.59) 21

35 2.5. Core Vector Machine (CVM). Normalmente o treino de SVMs é formulado através de programação quadrática, que é optimizada por um método de optimização. No entanto esta implementação tem uma complexidade que varia de a no tempo de treino, onde é o número de exemplos de treino. Tal que, o processamento de datasets muito grandes torna-se complicado. Para tentar resolver esta situação foi desenvolvido um método denominado Core Vector Machine (CVM) [18] que combina técnicas de geometria computacional com o treino de SVMs. A CVM separa os dados em pontos úteis e inúteis. Os pontos úteis são designados como core set, este corresponde a todos os pontos que são candidatos a vectores de suporte. Este conjunto só pode crescer, uma vez que nenhuma etapa de remoção é feita. No final, entre os pontos do core set, nem todos serão vectores de suporte Bola Envolvente Mínima (MEB) na geometria computacional Dado um conjunto de pontos, onde, a bola envolvente mínima é a bola mais pequena que contem todos os pontos em. Seja a bola com centro e raio, dado, a bola é uma aproximação da, se e. Um subconjunto é um core set de se a expansão por um factor da sua contiver, isto é,, onde Figura 2.5 Exemplo de uma Bola Envolvente [18]. 22

36 O círculo interior é a do conjunto de quadrados e a sua aproximação, isto é, a bola exterior, contém todos os pontos. O conjunto de quadrados é um core set Algoritmo da Core Vector Machine Seja o mapeamento das características do kernel. Dados um conjundo de pontos mapeados, a sua bola envolvente mínima,, com centro e raio é a menor bola que inclui todos estes pontos: (2.6) O dual é o problema quadrático: (2.61) onde,. Por outro lado, qualquer problema quadrático desta forma pode ser observado como um problema MEB[18]. Particularmente, quando é uma constante. Obtém-se o kernel transformado que inclui informação dos dados e dos seus rótulos: (2.62) Após transformar o problema quadrático num problema MEB, o Core Vector Machine utiliza um algoritmo (Algoritmo 1) aproximação iterativo, na obtenção de uma solução quase óptima. A ideia é manter um core set, que é um subconjunto de e a sua bola envolvente mínima em cada iteração. A bola é expandida, incluindo um ponto que esteja fora de, no core set. Isto é repetido até que todos os pontos em estejam cobertos por. 23

37 Após a obtenção de uma solução aproximada, da MEB, as variáveis primais associadas à SVM, isto é o peso, o bias e as variáveis de folga, podem ser recuperados de [19]: (2.63) onde é o parâmetro de margem na SVM. Algoritmo 1: Dado um,, a CVM funciona da seguinte forma: 1.Inicializa, e.(core set inicial, centro inicial e raio inicial, respectivamente) 2.Termina se não existir (onde é um ponto de treino) que esteja fora de. De outro modo, deixa ser esse ponto. Aplica. 3. Pesquisa a nova e actualiza e. 4. Incrementa e volta ao passo 2. Neste trabalho foi testado outro método denominado Ball Vector Machine (BVM) apenas a título comparativo, não tendo sido aprofundado. Para mais informação acerca deste método, consultar [19]. 24

38 3. Redes Neuronais Artificiais As Redes Neuronais Artificiais (RNA) representam uma tentativa de superar limitações que o computador digital apresenta, procurando por isso imitar os princípios de funcionamento do cérebro biológico. Neste capítulo faz-se uma breve exposição das redes neuronais artificiais utilizadas em classificação de padrões (de duas classes). 3.1 O Neurónio Artificial A construção de redes neuronais artificiais tem como principal inspiração os neurónios biológicos e os sistemas nervosos. Na Figura 3.1 representa-se o modelo de um neurónio artificial [14]. Entradas x 1 x Pesos w 1j w 2j Bias b j Saída y j w ij x i i Figura 3.1 Modelo de um neurónio artificial. A informação fornecida por outros neurónios entra em i entradas (sinapses) no neurónio processador. O modelo pode incluir uma polarização de entrada (bias). O processamento consiste numa combinação linear das entradas, (3.1) A cada entrada está associada um peso sináptico que reflecte a importância da entrada. O resultado dessa combinação linear é o valor, que se denomina por função de 25

39 activação. Se esse valor ultrapassar um limiar, o neurónio dispara o valor 1 na saída binária y, se não ultrapassar o limiar, a saída fica. Esta função de activação não é a única maneira de produzir o valor de saída do neurónio. A Figura 3.2 mostra diferentes tipos de funções de activação, sendo a função sigmóide a utilizada nas experiências. f( ) f( ) f( ) Linear por partes Degrau Figura 3.2 Exemplos de Funções de Activação. Sigmóide A definição da função sigmóide é: (3.2) 3.2. Topologia de Redes Neuronais Artificiais O potencial e a flexibilidade do cálculo baseado em redes neuronais vêm da criação de conjuntos de neurónios que estão interligados entre si. Este paralelismo de elementos com processamento local cria a inteligência global da rede. Um elemento da rede recebe um estímulo nas suas entradas, processa esse sinal e emite um novo sinal de saída para fora que por sua vez é recebido pelos outros elementos. Camadas ocultas Entradas Saídas Propagação para a frente Realimentação Figura 3.3 Principais topologias de redes neurais artificiais. 26

40 Podem-se distinguir entre redes de propagação para a frente e redes realimentadas. No caso das redes de propagação para a frente o fluxo de informação é unidireccional. Os neurónios que recebem a informação simultaneamente, agrupam-se em camadas. As redes realimentadas têm ligações entre os neurónios sem restrições, em que o comportamento dinâmico desempenha o papel fundamental desse modelo A rede neuronal Perceptrão (Perceptron) Dos tipos de redes neuronais existentes, a Perceptrão é a mais simples. Esta é uma rede de propagação para a frente que contém apenas duas camadas de neurónios, uma de entrada e uma de saída [14]. Entradas x 1 1 w 11 w 12 b 1 Saídas y 1 x 2 2 w 1j w 21 w 22 b 2 y 2 w 2j b j x i i Camada de entrada w ij w i2 Camada de saída y j Figura 3.4 Rede neuronal Perceptrão. A função de activação é dada por: (3.3) onde é o valor do peso; o sinal de entrada; é o valor de bias do neurónio j. 27

41 3.4. A rede neuronal Perceptrão de Múltiplas Camadas (MLP) A rede neuronal MLP é uma ampliação da rede Perceptrão ou seja funciona como uma série de Perceptrões simples interligados, que contém uma camada de entrada, uma ou várias camadas de neurónios intermédias, que se denominam camadas ocultas e uma camada de saída[14]. Entradas 1 x1 w11 1 w 12 b w 11 w 12 b 1 Saídas y 1 x 2 2 w 1j w 21 w 22 b 2 w 1j w 21 w 22 b 2 y 2 w 2j w 2j x i i w i1 Camada de entrada w ij w i2 b j Camada oculta w ij w i2 b j Camada de saída y j Figura 3.5 Exemplo de uma Rede Neuronal Perceptrão de Múltiplas Camadas RNA treinada pelo Método do Gradiente Descendente (GDX) O modelo de rede neuronal que foi usado com o método do gradiente descendente tem uma única camada oculta. O método do gradiente descendente (GDX) [14] utiliza um tipo de aprendizagem denominada de aprendizagem supervisionada e o ajuste das sinapses é realizada através do algoritmo de treino retropropagação dos sinais de erro. (3.4) onde é o erro quadrático, é saída desejada, a saída calculada e o número de neurónios. 28

42 O método de gradiente descendente pode ser descrito em 5 fases: No primeiro são escolhidos valores aleatórios para os parâmetros do modelo. No segundo apresenta-se os exemplos à rede e realiza-se a propagação dos sinais e cálculo do erro. No terceiro calcula-se o gradiente do erro. No quarto são alterados os parâmetros do modelo de modo a ir na direcção de menor erro, ou seja no sentido oposto de No quinto, é repetido o terceiro passo e o quarto até que o fique próximo de zero. Se o erro médio quadrático decresce em direcção ao zero, então o coeficiente de aprendizagem é aumentado por um factor. Se o erro médio quadrático aumenta mais do que um determinado limiar, o coeficiente de aprendizagem decresce, por um factor, e a alteração que aumenta o erro médio quadrático não é realizada. O modelo é composto pelas equações (3.5) onde representa a saída do neurónio e a função de activação, (3.6) em que é a saída do sistema. Para cada neurónio, os seus parâmetros são alterados através das equações (3.7) e (3.8) onde é o número da iteração e é o coeficiente de aprendizagem. (3.5) (3.6) (3.7) (3.8) 29

43 RNA treinada por Minimization of Interclass Interference (MCI). Este modelo de rede neuronal tem duas camadas ocultas [21], uma camada de entrada e outra de saída baseada na distância de Mahalanobis [22], é descrito pelas seguintes equações: (3.9) (3.1) (3.11) onde é o vector de saída da primeira camada oculta, é o vector de saída da segunda camada oculta, são os pesos da camada oculta, é o vector de bias da camada oculta, é o vector da camada de entrada, é a função sigmoidal, (3.12) é a distancia de Mahalanobis entre e, é a matriz de covariâncias do vectores de saída e (3.13) onde é a média da saída da classe, é o numero de exemplos no conjunto de treino que pertencem a classe, e é a saída da segunda camada oculta para uma entrada que pertence a classe, para. A primeira camada oculta é treinada através da utilização do método de gradiente descendente em algoritmos de treino baseado em retropropagação dos sinais de erro, desta são extraídas as características para servirem de entrada à segunda camada oculta. Para a segunda camada oculta, o que se pretende é o aumento da distância entre as classes: (3.14) 3

44 onde e são os parâmetros da segunda camada oculta. E em que é definido por: (3.15) onde, (3.16) é a divergência da classe no espaço das características e é o vector de saída da camada oculta para entradas que pertencem a classe. O MCI pretende encontrar o hiperplano que maximiza a distância entre as classes. Uma solução iterativa, baseada no método do gradiente descendente é utilizada, para isso são calculados os seguintes gradientes: (3.17) onde é a enésima linha de e é a enésima posição do vector. Os pesos da 2º camada oculta são actualizados através das equações: (3.18) onde é o numero da iteração e é o coeficiente de aprendizagem. (3.19) 31

45 4. Extractores de Características Neste capítulo serão resumidamente expostos os modos de extracção de características das imagens do dataset utilizados em diversos testes efectuados Histograma dos Gradientes (HOG) Para a construção do histograma dos gradientes, neste trabalho, o histograma é calculado em células rectangulares, através do cálculo de gradientes sem sinal, estes gradientes são determinados através da expressão, onde são as derivadas de intensidade segundo e são as derivadas de intensidade segundo. As células sobrepõem-se em 5% do seu tamanho, de modo a que cada célula contribui mais do que uma vez para o vector de características final. Para cada célula, considera-se apenas a orientação do gradiente e não o sentido, reduzindo a amplitude angular para 18 graus. Utilizam-se 9 bins, com limites de 2 em 2 graus. Os bins de todas as células são depois concatenados, formando assim um vector de características de dimensão 81. Figura 4.1 Exemplo das células utilizadas (Esq.) e Histograma de Gradientes (Dir.). 32

46 4.2. Covariâncias (COV) Para cada pixel, são extraídas algumas características consideradas importantes. Considera-se uma imagem de dimensões. Para cada pixel, um vector de características de tamanho, é calculado através de: (4.1) onde são a localização do pixel, e são as derivadas de intensidade segundo ; e são as derivadas de intensidade segundo ; é a magnitude do gradiente; é a orientação do contorno. No trabalho consideram-se quatro sub-regiões dentro da área de uma imagem recortada que se pretende classificar. Cada sub-região sobrepõe metade da sua área, isto é, cada região contribui mais do que uma vez para o vector de características final. Para uma região rectangular, é determinada a matriz de covariâncias onde µ é a média estatística do vector dos pixéis da região : (4.2) Devido à simetria de, apenas a parte triangular superior da matriz necessita de ser guardada. Então a matriz de covariâncias de uma sub-região tem tamanho, de onde se extrai 36 características. Neste trabalho calcula-se também a matriz de covariâncias da região R inteira, por isso é criado um vector de características com 18 elementos, ou seja, 4 sub-regiões reúnem 144 características, às quais se adicionam as 36 da região R dá o nosso vector de características baseado nas covariâncias. 33

47 Figura 4.2 Exemplo de uma imagem (Esq.) e covariâncias (Dir.) HOG-COV O extractor que resulta da combinação das características do HOG com as características do COV, totalizando características, é denominado por HOG-COV. 34

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

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu 1 Programação Não Linear Aula 25: Programação Não-Linear - Funções de Uma única variável Mínimo; Mínimo Global; Mínimo Local; Optimização Irrestrita; Condições Óptimas; Método da Bissecção; Método de Newton.

Leia mais

INTRODUÇÃO AOS MÉTODOS FACTORIAIS

INTRODUÇÃO AOS MÉTODOS FACTORIAIS Capítulo II INTRODUÇÃO AOS MÉTODOS FACTORIAIS A Análise Factorial de Correspondências é uma técnica simples do ponto de vista matemático e computacional. Porém, devido ao elevado suporte geométrico desta

Leia mais

Utilização do SOLVER do EXCEL

Utilização do SOLVER do EXCEL Utilização do SOLVER do EXCEL 1 Utilização do SOLVER do EXCEL José Fernando Oliveira DEEC FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO MAIO 1998 Para ilustrar a utilização do Solver na resolução de

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

Modelos Pioneiros de Aprendizado

Modelos Pioneiros de Aprendizado Modelos Pioneiros de Aprendizado Conteúdo 1. Hebb... 2 2. Perceptron... 5 2.1. Perceptron Simples para Classificaçãod e Padrões... 6 2.2. Exemplo de Aplicação e Motivação Geométrica... 9 2.3. Perceptron

Leia mais

Investigação Operacional- 2009/10 - Programas Lineares 3 PROGRAMAS LINEARES

Investigação Operacional- 2009/10 - Programas Lineares 3 PROGRAMAS LINEARES Investigação Operacional- 2009/10 - Programas Lineares 3 PROGRAMAS LINEARES Formulação A programação linear lida com problemas nos quais uma função objectivo linear deve ser optimizada (maximizada ou minimizada)

Leia mais

CAP. I ERROS EM CÁLCULO NUMÉRICO

CAP. I ERROS EM CÁLCULO NUMÉRICO CAP. I ERROS EM CÁLCULO NUMÉRICO 0. Introdução Por método numérico entende-se um método para calcular a solução de um problema realizando apenas uma sequência finita de operações aritméticas. A obtenção

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

Classificação e Fusão de Classificadores Utilizando Redes Neuronais Artificiais: Aplicação na Detecção de Peões e Veículos

Classificação e Fusão de Classificadores Utilizando Redes Neuronais Artificiais: Aplicação na Detecção de Peões e Veículos Universidade de Coimbra Faculdade de Ciências e Tecnologia Departamento de Engenharia Electrotécnica e de Computadores Classificação e Fusão de Classificadores Utilizando Redes Neuronais Artificiais: Aplicação

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

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

PALAVRAS-CHAVE: Massas Nodulares, Classificação de Padrões, Redes Multi- Layer Perceptron.

PALAVRAS-CHAVE: Massas Nodulares, Classificação de Padrões, Redes Multi- Layer Perceptron. 1024 UMA ABORDAGEM BASEADA EM REDES PERCEPTRON MULTICAMADAS PARA A CLASSIFICAÇÃO DE MASSAS NODULARES EM IMAGENS MAMOGRÁFICAS Luan de Oliveira Moreira¹; Matheus Giovanni Pires² 1. Bolsista PROBIC, Graduando

Leia mais

Matlab - Neural Networw Toolbox. Ana Lívia Soares Silva de Almeida

Matlab - Neural Networw Toolbox. Ana Lívia Soares Silva de Almeida 27 de maio de 2014 O que é a Neural Networw Toolbox? A Neural Network Toolbox fornece funções e aplicativos para a modelagem de sistemas não-lineares complexos que não são facilmente modelados com uma

Leia mais

Classificação da imagem (ou reconhecimento de padrões): objectivos Métodos de reconhecimento de padrões

Classificação da imagem (ou reconhecimento de padrões): objectivos Métodos de reconhecimento de padrões Classificação de imagens Autor: Gil Gonçalves Disciplinas: Detecção Remota/Detecção Remota Aplicada Cursos: MEG/MTIG Ano Lectivo: 11/12 Sumário Classificação da imagem (ou reconhecimento de padrões): objectivos

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

APLICAÇÕES DA DERIVADA

APLICAÇÕES DA DERIVADA Notas de Aula: Aplicações das Derivadas APLICAÇÕES DA DERIVADA Vimos, na seção anterior, que a derivada de uma função pode ser interpretada como o coeficiente angular da reta tangente ao seu gráfico. Nesta,

Leia mais

Computação Adaptativa

Computação Adaptativa Departamento de Engenharia Informática Faculdade de Ciências e Tecnologia Universidade de Coimbra 2007/08 Computação Adaptativa TP2 OCR Optical Character Recognition Pedro Carvalho de Oliveira (MEI) Nº

Leia mais

CADEX. Consultoria em Logística Interna. Layout de armazém. Objectivos. Popularidade. Semelhança. Tamanho. Características

CADEX. Consultoria em Logística Interna. Layout de armazém. Objectivos. Popularidade. Semelhança. Tamanho. Características CADEX Consultoria em Logística Interna Layout de armazém fonte: Wikipédia O layout de armazém é a forma como as áreas de armazenagem de um armazém estão organizadas, de forma a utilizar todo o espaço existente

Leia mais

TÓPICOS AVANÇADOS EM ENGENHARIA DE SOFTWARE

TÓPICOS AVANÇADOS EM ENGENHARIA DE SOFTWARE TÓPICOS AVANÇADOS EM ENGENHARIA DE SOFTWARE Engenharia de Computação Professor: Rosalvo Ferreira de Oliveira Neto Estudos Comparativos Recentes - Behavior Scoring Roteiro Objetivo Critérios de Avaliação

Leia mais

Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas

Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas INEB- PSI Technical Report 2007-2 Ferramenta computacional para implementação de redes neuronais optimização das capacidades gráficas Alexandra Oliveira aao@fe.up.pt Professor Joaquim Marques de Sá December

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

Programação 2ºSemestre MEEC - 2010/2011. Programação 2º Semestre 2010/2011 Enunciado do projecto

Programação 2ºSemestre MEEC - 2010/2011. Programação 2º Semestre 2010/2011 Enunciado do projecto Mestrado Integrado em Engenharia Electrotécnica e de Computadores Programação 2º Semestre 2010/2011 Enunciado do projecto O projecto a desenvolver pelos alunos consistirá numa sistema de monitorização,

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

Aplicações de Escritório Electrónico

Aplicações de Escritório Electrónico Universidade de Aveiro Escola Superior de Tecnologia e Gestão de Águeda Curso de Especialização Tecnológica em Práticas Administrativas e Tradução Aplicações de Escritório Electrónico Microsoft Word Folha

Leia mais

Modelo Cascata ou Clássico

Modelo Cascata ou Clássico Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação

Leia mais

Aplicação de Ensembles de Classificadores na Detecção de Patologias na Coluna Vertebral

Aplicação de Ensembles de Classificadores na Detecção de Patologias na Coluna Vertebral Aplicação de Ensembles de Classificadores na Detecção de Patologias na Coluna Vertebral Hedenir M. Pinheiro Instituto de Informática Universidade Federal de Goiás (UFG) Caixa Postal 131 74001-970 Goiânia

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

APROG - Civil. Excel. Técnicas de pesquisa de informação em tabelas. Instituto Superior de Engenharia do Porto 2000-2007

APROG - Civil. Excel. Técnicas de pesquisa de informação em tabelas. Instituto Superior de Engenharia do Porto 2000-2007 APROG - Civil Excel Técnicas de pesquisa de informação em tabelas Instituto Superior de Engenharia do Porto 2000-2007 Elaborado por: António Silva (DEI-ISEP) Pesquisa de Informação em Tabelas O Excel

Leia mais

Clip-art Retrieval using Sketches PTDC/EIA-EIA/108077/2008

Clip-art Retrieval using Sketches PTDC/EIA-EIA/108077/2008 PROJECTOS DE INVESTIGAÇÃO CIENTÍFICA E DESENVOLVIMENTO TECNOLÓGICO Clip-art Retrieval using Sketches PTDC/EIA-EIA/108077/2008 Deliverable: D1 - Clip-art Simplification Tool Task: T1 - Clip-art Simplification

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA

UNIVERSIDADE FEDERAL DE SANTA CATARINA UNIVERSIDADE FEDERAL DE SANTA CATARINA CIÊNCIAS DA COMPUTAÇÃO MÁQUINAS DE COMITÊ APLICADAS À FILTRAGEM DE SPAM Monografia submetida à UNIVERSIDADE FEDERAL DE SANTA CATARINA para a obtenção do grau de BACHAREL

Leia mais

Redes Neurais. Profa. Flavia Cristina Bernardini

Redes Neurais. Profa. Flavia Cristina Bernardini Redes Neurais Profa. Flavia Cristina Bernardini Introdução Cérebro & Computador Modelos Cognitivos Diferentes Cérebro Computador Seqüência de Comandos Reconhecimento de Padrão Lento Rápido Rápido Lento

Leia mais

Expansão linear e geradores

Expansão linear e geradores Espaços Vectoriais - ALGA - 004/05 4 Expansão linear e geradores Se u ; u ; :::; u n são vectores de um espaço vectorial V; como foi visto atrás, alguns vectores de V são combinação linear de u ; u ; :::;

Leia mais

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores Primeiro Teste 21 de Outubro de 2006, 9:00H 10:30H Nome: Número:

Leia mais

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado.

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. Conceitos relativos à Informação 1. Informação O que á a informação? Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. 2. Dados Em informática designa-se

Leia mais

Aplicações de Escritório Electrónico

Aplicações de Escritório Electrónico Universidade de Aveiro Escola Superior de Tecnologia e Gestão de Águeda Curso de Especialização Tecnológica em Práticas Administrativas e Tradução Aplicações de Escritório Electrónico Folha de trabalho

Leia mais

IBM1018 Física Básica II FFCLRP USP Prof. Antônio Roque Aula 6. O trabalho feito pela força para deslocar o corpo de a para b é dado por: = =

IBM1018 Física Básica II FFCLRP USP Prof. Antônio Roque Aula 6. O trabalho feito pela força para deslocar o corpo de a para b é dado por: = = Energia Potencial Elétrica Física I revisitada 1 Seja um corpo de massa m que se move em linha reta sob ação de uma força F que atua ao longo da linha. O trabalho feito pela força para deslocar o corpo

Leia mais

PESQUISA OPERACIONAL: UMA ABORDAGEM À PROGRAMAÇÃO LINEAR. Rodolfo Cavalcante Pinheiro 1,3 Cleber Giugioli Carrasco 2,3 *

PESQUISA OPERACIONAL: UMA ABORDAGEM À PROGRAMAÇÃO LINEAR. Rodolfo Cavalcante Pinheiro 1,3 Cleber Giugioli Carrasco 2,3 * PESQUISA OPERACIONAL: UMA ABORDAGEM À PROGRAMAÇÃO LINEAR 1 Graduando Rodolfo Cavalcante Pinheiro 1,3 Cleber Giugioli Carrasco 2,3 * 2 Pesquisador - Orientador 3 Curso de Matemática, Unidade Universitária

Leia mais

Aula 2 RNA Arquiteturas e Treinamento

Aula 2 RNA Arquiteturas e Treinamento 2COP229 Aula 2 RNA Arquiteturas e Treinamento 2COP229 Sumário 1- Arquiteturas de Redes Neurais Artificiais; 2- Processos de Treinamento; 2COP229 1- Arquiteturas de Redes Neurais Artificiais -Arquitetura:

Leia mais

4.1. UML Diagramas de casos de uso

4.1. UML Diagramas de casos de uso Engenharia de Software 4.1. UML Diagramas de casos de uso Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt Utilizados para ajudar na análise de requisitos Através da forma como o utilizador usa o sistema

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

4 Segmentação. 4.1. Algoritmo proposto

4 Segmentação. 4.1. Algoritmo proposto 4 Segmentação Este capítulo apresenta primeiramente o algoritmo proposto para a segmentação do áudio em detalhes. Em seguida, são analisadas as inovações apresentadas. É importante mencionar que as mudanças

Leia mais

CAPÍTULO 2. Grafos e Redes

CAPÍTULO 2. Grafos e Redes CAPÍTULO 2 1. Introdução Um grafo é uma representação visual de um determinado conjunto de dados e da ligação existente entre alguns dos elementos desse conjunto. Desta forma, em muitos dos problemas que

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO CONCEITOS BÁSICOS 1 Necessidade das base de dados Permite guardar dados dos mais variados tipos; Permite

Leia mais

Inteligência Artificial. Redes Neurais Artificiais

Inteligência Artificial. Redes Neurais Artificiais Curso de Especialização em Sistemas Inteligentes Aplicados à Automação Inteligência Artificial Redes Neurais Artificiais Aulas Práticas no Matlab João Marques Salomão Rodrigo Varejão Andreão Matlab Objetivos:

Leia mais

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto LEIC-A, LEIC-T, LETI, MEIC-T, MEIC-A Engenharia de Software e Sistemas Distribuídos 2 o Semestre 2014/2015 Enunciado Geral do Projecto O que se segue é uma descrição geral do domínio do projecto a desenvolver

Leia mais

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS Planificação Anual da Disciplina de TIC Módulos 1,2,3-10.ºD CURSO PROFISSIONAL DE TÉCNICO DE APOIO À GESTÃO DESPORTIVA Ano Letivo 2015-2016 Manual adotado:

Leia mais

Localização dos inquéritos de rua para Arroios e Gulbenkian

Localização dos inquéritos de rua para Arroios e Gulbenkian Project IAAPE Pedestrian Accessibility and Attractiveness Indicators: Tool for Urban Walkability Assessment and Management Working Paper No. WP-8 Localização dos inquéritos de rua para Arroios e Gulbenkian

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

Ajuste dos Parâmetros de um Controlador PI em uma Coluna de Destilação Binária

Ajuste dos Parâmetros de um Controlador PI em uma Coluna de Destilação Binária Ajuste dos Parâmetros de um Controlador PI em uma Coluna de Destilação Binária Marina Roberto Martins 1*, Fernando Palú 1 (1) Universidade Estadual do Oeste do Paraná, Curso de Engenharia Química. e-mail:

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

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia e não têm a intenção de substituir o livro-texto, nem qualquer outra bibliografia. Introdução O Cálculo Numérico

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

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

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu

Faculdade de Engenharia Optimização. Prof. Doutor Engº Jorge Nhambiu 1 Programação Linear (PL) Aula 5: O Método Simplex. 2 Algoritmo. O que é um algoritmo? Qualquer procedimento iterativo e finito de solução é um algoritmo. Um algoritmo é um processo que se repete (itera)

Leia mais

por João Gomes, Director Executivo do Instituto de Planeamento e Desenvolvimento do Turismo e Professor Associado da Universidade Fernando Pessoa

por João Gomes, Director Executivo do Instituto de Planeamento e Desenvolvimento do Turismo e Professor Associado da Universidade Fernando Pessoa COMO AUMENTAR AS RECEITAS DE UM NEGÓCIO: O CONCEITO DE GESTÃO DE RECEITAS (revenue management) (Publicado na Revista Hotéis de Portugal Maio/Junho 2004) por João Gomes, Director Executivo do Instituto

Leia mais

Projetos. Universidade Federal do Espírito Santo - UFES. Mestrado em Informática 2004/1. O Projeto. 1. Introdução. 2.

Projetos. Universidade Federal do Espírito Santo - UFES. Mestrado em Informática 2004/1. O Projeto. 1. Introdução. 2. Pg. 1 Universidade Federal do Espírito Santo - UFES Mestrado em Informática 2004/1 Projetos O Projeto O projeto tem um peso maior na sua nota final pois exigirá de você a utilização de diversas informações

Leia mais

Imagiologia de raios X planar

Imagiologia de raios X planar Universidade Técnica de Lisboa Instituto Superior Técnico Mestrado em Engenharia Biomédica Imagiologia de raios X planar Técnicas de Imagiologia Nuno Santos n.º 55746, dodgeps@hotmail.com Rúben Pereira

Leia mais

Reconhecimento de Padrões. Reconhecimento de Padrões

Reconhecimento de Padrões. Reconhecimento de Padrões Reconhecimento de Padrões 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 Escola Superior de Tecnologia Engenharia Informática Reconhecimento de Padrões Prof. João Ascenso e Prof.

Leia mais

17/10/2012. dados? Processo. Doutorado em Engenharia de Produção Michel J. Anzanello. Doutorado EP - 2. Doutorado EP - 3.

17/10/2012. dados? Processo. Doutorado em Engenharia de Produção Michel J. Anzanello. Doutorado EP - 2. Doutorado EP - 3. Definição de Data Mining (DM) Mineração de Dados (Data Mining) Doutorado em Engenharia de Produção Michel J. Anzanello Processo de explorar grandes quantidades de dados à procura de padrões consistentes

Leia mais

Optimização de um Mundo Virtual

Optimização de um Mundo Virtual secção 3.2 Optimização de um Mundo Virtual Dadas as limitações impostas pela actual tecnologia, um mundo virtual que não seja cuidadosamente optimizado torna-se necessariamente demasiado lento para captar

Leia mais

Licenciatura em Engenharia Electrotécnica e de Computadores 1998/99. Erros

Licenciatura em Engenharia Electrotécnica e de Computadores 1998/99. Erros Licenciatura em Engenharia Electrotécnica e de Computadores Análise Numérica 1998/99 Erros Objectivos: Arredondar um número para n dígitos significativos. Determinar os erros máximos absoluto e relativo

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

Redes Neurais. A IA clássica segue o paradigma da computação simbólica

Redes Neurais. A IA clássica segue o paradigma da computação simbólica Abordagens não simbólicas A IA clássica segue o paradigma da computação simbólica Redes Neurais As redes neurais deram origem a chamada IA conexionista, pertencendo também a grande área da Inteligência

Leia mais

Nathalie Portugal Vargas

Nathalie Portugal Vargas Nathalie Portugal Vargas 1 Introdução Trabalhos Relacionados Recuperação da Informação com redes ART1 Mineração de Dados com Redes SOM RNA na extração da Informação Filtragem de Informação com Redes Hopfield

Leia mais

Considerações Finais. Capítulo 8. 8.1- Principais conclusões

Considerações Finais. Capítulo 8. 8.1- Principais conclusões Considerações Finais Capítulo 8 Capítulo 8 Considerações Finais 8.1- Principais conclusões Durante esta tese foram analisados diversos aspectos relativos à implementação, análise e optimização de sistema

Leia mais

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem:

computador-cálculo numérico perfeita. As fases na resolução de um problema real podem, de modo geral, ser colocadas na seguinte ordem: 1 UNIVERSIDADE FEDERAL DE VIÇOSA Departamento de Matemática - CCE Cálculo Numérico - MAT 271 Prof.: Valéria Mattos da Rosa As notas de aula que se seguem são uma compilação dos textos relacionados na bibliografia

Leia mais

Chord. Tecnologias de Middleware. Fernando Martins - fmp.martins@gmail.com

Chord. Tecnologias de Middleware. Fernando Martins - fmp.martins@gmail.com Chord Tecnologias de Middleware 2006/2007 Fernando Martins - fmp.martins@gmail.com Tópicos Objectivo Motivação Peer-To-Peer Chord Descrição Geral Características Distintivas Comparação DNS Modelo do Sistema

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

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Reconhecimento de Objectos

Reconhecimento de Objectos Dado um conjunto de características, relativas a uma região (objecto), pretende-se atribuir uma classe essa região, seleccionada de um conjunto de classes cujas características são conhecidas O conjunto

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

5. Métodos ágeis de desenvolvimento de software

5. Métodos ágeis de desenvolvimento de software Engenharia de Software 5. Métodos ágeis de desenvolvimento de software Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt Desenvolver e entregar software o mais rapidamente possível é hoje em dia um dos

Leia mais

EXPERIMENTO N o 6 LENTES CONVERGENTES INTRODUÇÃO

EXPERIMENTO N o 6 LENTES CONVERGENTES INTRODUÇÃO EXPERIMENTO N o 6 LENTES CONVERGENTES INTRODUÇÃO Ao incidir em uma lente convergente, um feixe paralelo de luz, depois de passar pela lente, é concentrado em um ponto denominado foco (representado por

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

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

XI Mestrado em Gestão do Desporto

XI Mestrado em Gestão do Desporto 2 7 Recursos Humanos XI Mestrado em Gestão do Desporto Gestão das Organizações Desportivas Módulo de Gestão de Recursos Rui Claudino FEVEREIRO, 28 2 8 INDÍCE DOCUMENTO ORIENTADOR Âmbito Objectivos Organização

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

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

Diagrama de transição de Estados (DTE)

Diagrama de transição de Estados (DTE) Diagrama de transição de Estados (DTE) O DTE é uma ferramenta de modelação poderosa para descrever o comportamento do sistema dependente do tempo. A necessidade de uma ferramenta deste tipo surgiu das

Leia mais

Redes Neurais Construtivas. Germano Crispim Vasconcelos Centro de Informática - UFPE

Redes Neurais Construtivas. Germano Crispim Vasconcelos Centro de Informática - UFPE Redes Neurais Construtivas Germano Crispim Vasconcelos Centro de Informática - UFPE Motivações Redes Feedforward têm sido bastante utilizadas em aplicações de Reconhecimento de Padrões Problemas apresentados

Leia mais

Circuitos Digitais. Engenharia de Automação e Controle Engenharia Elétrica. São Paulo 2014. Prof. José dos Santos Garcia Neto

Circuitos Digitais. Engenharia de Automação e Controle Engenharia Elétrica. São Paulo 2014. Prof. José dos Santos Garcia Neto Engenharia de Automação e Controle Engenharia Elétrica Circuitos Digitais Prof. José dos Santos Garcia Neto São Paulo 2014 Prof. José dos Santos Garcia Neto 1 Introdução Esta apostila tem como objetivo

Leia mais

Trabalho 2 Fundamentos de computação Gráfica

Trabalho 2 Fundamentos de computação Gráfica Trabalho 2 Fundamentos de computação Gráfica Processamento de Imagens Aluno: Renato Deris Prado Tópicos: 1- Programa em QT e C++ 2- Efeitos de processamento de imagens 1- Programa em QT e C++ Para o trabalho

Leia mais

Reconhecimento de Padrões

Reconhecimento de Padrões Engenharia Informática (ramos de Gestão e Industrial) Departamento de Sistemas e Informação Reconhecimento de Padrões Projecto Final 2004/2005 Realizado por: Prof. João Ascenso. Departamento de Sistemas

Leia mais

ficha 3 espaços lineares

ficha 3 espaços lineares Exercícios de Álgebra Linear ficha 3 espaços lineares Exercícios coligidos por Jorge Almeida e Lina Oliveira Departamento de Matemática, Instituto Superior Técnico 2 o semestre 2011/12 3 Notação Sendo

Leia mais

Caracterização temporal de circuitos: análise de transientes e regime permanente. Condições iniciais e finais e resolução de exercícios.

Caracterização temporal de circuitos: análise de transientes e regime permanente. Condições iniciais e finais e resolução de exercícios. Conteúdo programático: Elementos armazenadores de energia: capacitores e indutores. Revisão de características técnicas e relações V x I. Caracterização de regime permanente. Caracterização temporal de

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC 10º C. Planificação de. Curso Profissional de Técnico de Secretariado

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC 10º C. Planificação de. Curso Profissional de Técnico de Secretariado Escola Básica e Secundária de Velas Planificação de TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC Curso Profissional de Técnico de Secretariado 10º C MÓDULO 1 FOLHA DE CÁLCULO Microsoft Excel Conteúdos

Leia mais

Base de Dados para Administrações de Condomínios

Base de Dados para Administrações de Condomínios Base de Dados para Administrações de Condomínios José Pedro Gaiolas de Sousa Pinto: ei03069@fe.up.pt Marco António Sousa Nunes Fernandes Silva: ei03121@fe.up.pt Pedro Miguel Rosário Alves: alves.pedro@fe.up.pt

Leia mais

Scale-Invariant Feature Transform

Scale-Invariant Feature Transform Scale-Invariant Feature Transform Renato Madureira de Farias renatomdf@gmail.com Prof. Ricardo Marroquim Relatório para Introdução ao Processamento de Imagens (COS756) Universidade Federal do Rio de Janeiro,

Leia mais

Gestão do Risco e da Qualidade no Desenvolvimento de Software

Gestão do Risco e da Qualidade no Desenvolvimento de Software Gestão do Risco e da Qualidade no Desenvolvimento de Software Questionário Taxinómico do Software Engineering Institute António Miguel 1. Constrangimentos do Projecto Os Constrangimentos ao Projecto referem-se

Leia mais

Tarefa Orientada 14 Subconsultas

Tarefa Orientada 14 Subconsultas Tarefa Orientada 14 Subconsultas Objectivos: Subconsultas não correlacionadas Operadores ALL, SOME e ANY Subconsultas correlacionadas Operador EXISTS Subconsultas incluídas na cláusula FROM de uma consulta

Leia mais

SISTEMAS DE INFORMAÇÃO PARA GESTÃO

SISTEMAS DE INFORMAÇÃO PARA GESTÃO 07-05-2013 1 SISTEMAS DE INFORMAÇÃO PARA GESTÃO Aula I Docente: Eng. Hercílio Duarte 07-05-2013 2 Objectivo Sistemas Modelos Dados Vs. Informação Introdução aos sistemas de Informação 07-05-2013 3 Introdução

Leia mais

Aula 8 Circuitos Integrados

Aula 8 Circuitos Integrados INTRODUÇÃO À ENGENHRI DE COMPUTÇÃO PONTIFÍCI UNIVERSIDDE CTÓLIC DO RIO GRNDE DO SUL FCULDDE DE ENGENHRI ula Circuitos Integrados Introdução Portas Lógicas em Circuitos Integrados Implementação de Funções

Leia mais

6 Construção de Cenários

6 Construção de Cenários 6 Construção de Cenários Neste capítulo será mostrada a metodologia utilizada para mensuração dos parâmetros estocásticos (ou incertos) e construção dos cenários com respectivas probabilidades de ocorrência.

Leia mais

SIG. Uma plataforma para introdução de técnicas emergentes no planejamento urbano, regional e de transportes

SIG. Uma plataforma para introdução de técnicas emergentes no planejamento urbano, regional e de transportes SIG Uma plataforma para introdução de técnicas emergentes no planejamento urbano, regional e de transportes SIG Uma plataforma para introdução de técnicas emergentes no planejamento urbano, regional e

Leia mais

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO DOMINE A 110% ACCESS 2010 A VISTA BACKSTAGE Assim que é activado o Access, é visualizado o ecrã principal de acesso na nova vista Backstage. Após aceder ao Access 2010, no canto superior esquerdo do Friso,

Leia mais

5 Circuitos Equivalentes

5 Circuitos Equivalentes 5 Circuitos Equivalentes 5.1 Circuitos Equivalentes Nos capítulos anteriores já se apresentaram diversos exemplos de circuitos equivalentes, por exemplo, resistências em série e em paralelo ou a chamada

Leia mais

A MATEMÁTICA NO ENSINO SUPERIOR POLICIAL 1

A MATEMÁTICA NO ENSINO SUPERIOR POLICIAL 1 A MATEMÁTICA NO ENSINO SUPERIOR POLICIAL 1 A IMPORTÂNCIA DA MATEMÁTICA O desenvolvimento das sociedades tem sido também materializado por um progresso acentuado no plano científico e nos diversos domínios

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