Prof. Adolfo Bauchspiess

Control and Automation
Electrical Engineering

e-Mail:
adolfobs AT ene unb br
 

Address:
ENE/FT/UnB Sala B1-34/18,

70919-970 Brasília-DF,Brazil


alvoradaMar2023
unb




LARA

Lab. de Automação e Robótica
Departamento de Engenharia Elétrica
Universidade de Brasília - UnB





Home Lectures Research Papers
Monographs (Grad./M.Sc./Ph.D.)

Controle de Sistemas Dinâmicos
Inteligência Computacional Automação Predial c/ IoT Identificação de Sistemas Dinâmicos Controle Digital Lab. Controle Dinâmico

                                                               

ENE0154 - Inteligência Computacional - 2024.2

Sala BT-16/15,
35T45 Ter-Qui 16:00- 17:50


e-mail assuntos IC:
adolfobs AT ene unb br

Metodologia Plano de Ensino
Ementa
Links de Interesse
Referências
Cronograma

                                                           

Metodologia de Ensino

- Aprender3 IntelComp, Exercícios Computacionais e Teste de Avaliação.
- A presente página ( http://www.ene.unb.br/adolfo/Lectures/IC.html) será utilizada para comunicações da disciplina.
- Aulas expositivas, demos, exercícios computacionais, artigo.



Avaliação


    Atividades Individuais:

        - Exercícios Computacionais em Python: Ex1 a Ex4

      - Prova Oral, P: 13/2

    Atividades em Dupla (ou individual):

        - Artigo, A: Apresentação (pptx/pdf), Texto(pdf), Arguição.
        Trabalho de pesquisa científica, comparando pelo menos 3 artigos publicados em conteúdo da disciplina
        em área de interesse dos alunos (e.g., PIBIC, TG/ TCC/PFC, estágio).

    Média = Soma(Ex1:4) + 3*A + 3*P


Template a se utilizado para relatórios de Exercícios e para o Artigo Overleaf / Word.
(Escrever o essencial em coluna dupla, exige organização. Só uma boa compreensão/planejamento permite ser conciso!)



Exercícios Computacionais (Python)

Ex1: 24/10 -> 12/11   
OCR   Ex1_OCR

Ex2: 12/11 -> 3/12
ADALINE   Ex2_ADALINE  

Ex3: 3/12 -> 7/1
Deep Learning

Ex4: 7/1 -> 18/2
Reinforcement-Learning


tutorial_ex1_google_colab
(monitora Bianca Boueri)



Demonstrações Diversas

Classificação Não-Linear
Demo1   Demo1py_m

Classificação Diabetes
Demo2py

MLP x RBF
Demo3m

Camada Comptetitiva
Demo4m

LVQ
Demo5m

NARMA-L2
Demo6  slx

Adaptive Neuro Fuzzy

Demo7 pendulo ANFIS



Transparências
IntelCompUnB.pdf
 
MLP_design.pdf   Apostila_ISI(2008)     NARMA-L2    SVM   shepard.wav

 

Provas anteriores (Algumas provas, a título de ilustração)
rP2IC223 rP1ICIN218 rP2ICIN218  rP1ICIN 115   rP2ICIN115   rP1ICIN213 rP2ICIN213 rP1ICN212 rP2ICN212 



Links de Interesse


A.Bauchspiess:

LIVROS  
Notas de Neural Networks -A comprehensive foundation - Simon Haykin
http://www.cis.hut.fi/Opinnot/T-61.261/luennot2003/
Reinforcement Learning: An Introduction 2nd ed March 22, 2018, github, Richard S. Sutton and Andrew G. Barto
Numerical Recipes in C em PDF:
http://www.library.cornell.edu/nr/bookcpdf.html

MACHINE LEARNING Env.
  https://software.intel.com/pt-br/ai/devcloud
  https://colab.research.google.com/notebooks/welcome.ipynb#recent=true
  Anaconda
  vscod

     keras

       TensorFlow
       pytorch

DEMOS
https://colab.research.google.com/github/tensorflow/docs/blob/master/site/en/r2/tutorials/quickstart/beginner.ipynb#scrollTo=0trJmd6DjqBZ
svm https://scikit-learn.org/stable/auto_examples/classification/plot_digits_classification.html
k-means PCA digits 
https://www.naftaliharris.com/blog/visualizing-k-means-clustering/

http://stanford.edu/class/ee103/visualizations/kmeans/kmeans.html
https://github.com/crsmithdev/notebooks ml-logistic-regression

TUTORIAIS

- https://cs.uwaterloo.ca/~mli/Deep-Learning-2017-Lecture5CNN.ppt

- Introduction to Deep Learning with Keras, by Jonathon Hare, Univ. of Southampton, 2017

- Tutorial: Deep Reinforcement Learning, PDF by David Silver, Google DeepMind, 2016
- Reinforcement Learning Tutorial - Peter Bod'ik, UC Berkeley, 2007

- Deep Learning Tutorial - EE@IITM  PDF by Mitesh M. Khapra, IITM, Madras, 2017   

           -> Lecture11_CS7015_DeepL_Khapra_Madras_in, 2023

- How Deep Neural Networks Work, Video by Brandon Rohrer, Facebook, 2017

- Efficient Processing of Deep Neural Networks: A Tutorial and Survey. Zse et al., csail.mit.edu, Proc. IEEE 2017
- Recurrent Neural Networks, Nazli I. Cinbis, vision.cs.hacettepe.edu.tr, siu2016-tutorial
- Tutorial on Deep Learning, Bálint Daróczy, www.wire.tu-bs.de, 2017
- Machine Learning - Logistic Regression, Jeff Howbert, courses.washington.edu, 2012





Plano de Ensino


Objetivo do Curso

A disciplina Inteligência Computacional tem como objetivo apresentar técnicas de projeto para a engenharia, Redes Neurais Artificiais, que se originaram de pesquisas na área de inteligência artificial. Aprendizado profundo e Aprendizado por reforço são os tópicos mais relevantes. A disciplina é acompanhada de exercícios em Python.

Motivação

Redes Neurais Artificiais:

Programas de computador podem emular a maneira como o cérebro resolve problemas: uma grande rede altamente interconectada de neurônios relativamente simples trabalhando em paralelo. Convencionou-se assim, chamar de Redes Neurais Artificiais toda estrutura de processamento paralelo que utiliza o conexionismo como paradigma. Talvez a característica mais importante das Redes Neurais Artificiais seja a sua capacidade de aprendizado, i.e., problemas complexos em engenharia podem ser resolvidos treinando-se a rede pela apresentação do padrão de comportamento desejado.
Vivemos atualmente, a assim chamada "3a onda" das RNAs.  1a onda, ~anos 1960 - perpectpron; 2a onda, ~anos 1990 - backpropagation; 3a onda, ~2010 - deep learning.

Lógica Fuzzy:

Seres humanos tomam decisões considerando não valores exatos, mas sim utilizando uma lógica que leva em conta um certo "grau de pertinência" das variáveis envolvidas no processo decisório. Não se liga, por exemplo, o ar condicionado em 27°C, às 957 h, e umidade relativa do ar em 77%, mas sim, quando está "quente", no "começo da manha" e quando o ar está "abafado". Estas variáveis lingüísticas podem ser melhor descritas e manipuladas num conjunto Fuzzy. A Lógica Fuzzy é assim, uma generalização da lógica clássica que permite incluir a imprecisão ("fuzziness") nos processos decisórios. Sistemas neuro-fuzzy combinam a representação especialista do conhecimento com apredizado neural.


Metodologia

Aulas expositivas acompanhadas de atividades computacionais. Exercícios individuais em Python ou MatLab e um trabalho de pesquisa, em dupla, (Artigo) visam fixar o conteúdo.

Ementa

            Introdução, Redes Neurais Artificiais, “Deep Learning”, Lógica Fuzzy, Computação Evolutiva, Aprendizado por Reforço, Experimentos Computacionais.

Programa

Introdução

Inteligência Computacional; Histórico; Problemas de Interesse: Classificação de Padrões, Regressão, Tomada de Decisão; Conceitos de Aprendizado.

Redes Neurais Artificiais

Modelos de neurônios artificiais; Arquitetura; Perceptron Multicamada; Redes de Funções Radiais de Base; Mapas Auto-Organizáveis.

“Deep Learning”

Treinamento em redes profundas: Entropia, “Dropout”, Unidades Softmax e LRU, Redes convolutivas.

Lógica Fuzzy

Conjuntos Fuzzy; Funções de Pertinência; Operações;  Inferência; Sistema Baseado em Regras Fuzzy; Controlador Fuzzy; Redes neuro-fuzzy.

Computação Evolutiva

Conceitos de Evolução e Genética; Algoritmos Genéticos; Definições; Operadores básicos (seleção, mutação, cross-over); Variantes.

Aprendizado por Reforço

Definições; Processos de Decisão de Markov; Programação dinâmica; Métodos Monte Carlo; SARSA; Q-Learning

 

Experimentos Computacionais

(adequar ao perfil da turma/docente)

Reconhecimento de padrões - MLP, CNN, DL

Aproximação de funções

Aprendizado por reforço

Processamento/controle Neural

Modelagem Fuzzy

Controle Fuzzy e Neuro-Fuzzy

Aplicação “Deep Learning”

                      Outros temas atuais.


Relatórios:

Os relatórios e o artigo deve ser o mais objetivo possível, porém conter todas as observações relevantes feitas durante a realização do experimento. Visando padronizar a correção, o seguinte formato de relatório é sugerido:Template Exercícios/Artigo Overleaf /Word.
Os relatórios devem ser enviados para adolfobs [at] ene.unb.br, identificando no "assunto" do e-mail e no nome do arquivo .zip anexado (relatório em pdf + códigos): IC_Exp<#Exp><nome_aluno>

A pontuação leva em conta os seguintes aspectos:
- todos os procedimentos foram seguidos (40%),
- os resultados são apresentados de forma e concisa e clara: gráficos, tabelas etc (30%),
- a intrepretação dos resultados é correta e reflete/abrange os objetivos do exercício (30%),
- pontualidade - o atraso será penalizado com 0,5 pontos por dia útil.

Bibliografia

  1. Silva, I.N.; Spatti, D. H.; Flauzino, R. A.: Redes Neurais Artificiais - para Engenharia e Ciências Aplicadas, Artliber, 2016
  2. Murphy, Kevin P.: Probabilistic Machine Learning: An Introduction, MIT Press, 2022
  3. Haykin, S.: Neural Networks and Learning Machines, (3rd Ed., Prentice Hall, 2009) 3rd Ed Pearson, 2016

Referências Complementares

  • Oliveira Jr., H.A. (coord.), Caldeira, A.M. et al.: Inteligência Computacional aplicada à Administração, Economia e Engenharia em Matlab®, Thomson, 2008
  • Sumathi E., Sureka P.: Computationall Inteligence Paradigms: Theory & Applications using Matlab®. CRC Press, 2010
  • IEEE Computational Intelligence Society (https://cis.ieee.org/)




    Cronograma de Atividades 

    Pi – Prova i, AEi - Apresentação do Exercício i, EEj - data de Entrega Ej


    Data #
    Conteúdo Programático
    Material Complementar
    15/10 1 Plano de ensino
    Introdução:
    - Conexionismo
    - Heurísicas
    - IA Simbólico
    - IA Subsimbólico
    IntelCompUnB.pdf p1-14

    Murphy Cap 1 - Introduction
    Haykin - Introdução
    Ivan Silva Cap 1 - Introdução
    17/10
    2 Emular o cérebro humano
    - Fisiologia
    - Psicologia
    - Reconhecimento de Padrões x Paradoxos
    - Rede de neurônios
    - Sinapses
    - Plasticidade
    IntelCompUnB.pdf p15-25

    Haykin Livro Cap1 - Learning Processes
    Ivan Silva Cap 2 - Arquiteturas de redes neurais artificiais e
    processos de treinamento
    22/10 3 Engenharia do Conhecimento
    - RNA, Fuzzy, AG, IA
    - Conjectura de Gödel
    - AG ex. Mastermind
    - Aproximadores Universais

    IntelCompUnB.pdf p26-32

    24/10 AE1

    4
    Fundamentos Biológicos
    - Fluxo unidirecional da informação
    - Neurotransmissores
    - Integração espaço/temporal
    - Modulação por frequência de pulsos

    Aprendizado Supervisionado
    - aproximação de funções (interpolação)
    - classificação de padrões
    - Neurônio de McCulloch
    - Regra delta de Hebb
    IntelCompUnB.pdf p33-
    Ivan Nunes da Silva - Cap. 3

    Haykin Cap. 1

    Ex1 - Reconhecimento OCR com robustez à ruído

    Ambientes Python/ML
    29/10 5 O Perceptron de Rosenblatt

    - Regra delta de Widrow-Hoff (LMS)
    - Regra delta genearlizada
    - Erro derivativo Quadrático
    - Backpropagation - Werbos, 1974
    - PDP MIT, Hinton, Williams, Rummelhart, 1986
    IntelCompUnB.pdf p63-

    Ivan Silva Cap 3

    Haykin Cap 1

    nndemos

    31/10



    6
    Perceptron Multicamadas

    O projeto de uma RNA:
    - Dados: # amostras, representatividade no domínio
    - Topologia: # camadas, # neurônios por camada, funções de ativação
    - Exploração x Explotação ( x Condições Iniciais)

    A busca pelo mínimo global
    O pragmático "bom" mínimo local
    Gradiente Descente
    Momento
    SGD - Gradiente Descendente Estocástico
    ADAM
    Jacobiano

    IntelCompUnB.pdf p69-

    I.Silva Cap 5 Multilayer Perceptron Networks
    5.3 Training Process of the Multilayer Perceptron
    5.3.3 Optimized Versions of the Backpropagation Algorithm
    5.4.1 Problems of Pattern Classification
    5.4.2 Functional Approximation Problems (Curve Fitting)
    5.5.1 Aspects of Cross-Validation Methods
    5.5.2 Aspects of the Training and Test Subsets
    5.5.3 Aspects of Overfitting and Underfitting Scenarios
    5.5.4 Aspects of Early Stopping
    5.5.5 Aspects of Convergence to Local Minima

    S. Haykin Cap4 Multilayer Perceptrons
    4.3 Batch Learning and On-Line Learning
    4.4 The Back-Propagation Algorithm
    4.5 XOR Problem
    4.6 Heuristics for Making the Back-Propagation Algorithm Perform Better
    4.11 Generalization
    4.12 Approximations of Functions
    4.13 Cross-Validation
    4.15 Virtues and Limitations of Back-Propagation Learning

    5/11 7
    Semana Universitária

    7/11 8
    Semana Universitária
    12/11

    EE1 AE2

    9
    ADALINE as adpative FIR identification

    IntelCompUnB.pdf p65-
     

    Ex2 - ADALINE


    14/11 10 Hopfield Network IntelCompUnB.pdf p84-

    I. Silva 7. Recurrent Hopfield Networks
    7.1 Introduction
    7.2 Operating Principle
    7.4 Associative Memory
    7.5 Design Aspects
    5.4.3 Problems Involving Time-Variant Systems

    S. Haykin Cap15 Dynamically Driven Recurrent Networks
    15.1 Introduction
    15.2 Recurrent Network Architectures
    19/11 11
    RBF
    IntelCompUnB.pdf p91-

    I. Silval Cap 6 Radial Basis Function Networks

    S. Haykin Cap5 Kernel Methods and RBF
     
    S. Haykin Cap5 Kernel Methods and Radial-Basis Function Networks
    21/11 12
    Aproximadores de funções

    Camada Competitiva
    Demo3_ICIN_MLPxRBF.m

    Demo4_ICIN_ CComp.m
    26/11 13

    K-Means, LVQ, SOM

    IntelCompUnB.pdf p96-
    S. Haykin Cap9 Self-Organizing Maps, Vector Quantization
    Demo5_ICIN__lvq.m, Demo5_ICIN_lvq3c.m
    28/11 14 Support Vector Machine
    Aplicação em localização in-door
    Support Vector Machine   IntelCompUnB p191
    Chap 6 - Support Vector Machines  - Haykin, Neural Networks and Learning Machines
    3/12 EE2 AE3
    15

    Redes Neurais Convolucionais
    (Deep Learning)
    Lecture 5: Convolutional Neural Networks, Prof. Ming Li, UWaterloo/CA
    NCC_DL_Tutorial.pdf - Prof. Khapra, Madras/In
    5/12 16 Redes Convolucionais -
    Conjuntos de Trainamento – MNIST, CIFAR, ImageNetCNN aplicadas à reconhecimento de padrões em imagens
    - Weight sharing, normalização, feature maps, transfer learning
    - camada de convolução
    - maxPool - Flattening
    IntelCompUnb pg:141-217
    Artificial Intelligence - 65th Jubilee 2021- Ramo Estudantil IEEE UFCG

    Deep Learning CS6910 - Prof. Khapra, Madras/In
    Deep_Learning Tutorial, Prof. Daroczy
    Ex3 Deep Learn - CIFAR10
    10/12 17 Ambientes DL: VSCode, Intel, Colab, Anaconda
    TensorFlow, PyTorch, GPU, TPU, Movidia
    Books with Code :
         Simon J.D. Prince - Understanding Deep Learning
         Zhang, Lipton, Li, Somal - Dive into Deep Learning
    12/12 18
    Deep Learning – Arquiteturas: AlexNet, ResNet, Inception

    Controle não-linear com RNAs– NARMA-L2
    Machine Learning-AB ENE2019
    AI 65th Juliblee Ramo Estudantil IEEE UFCG


    NARMA-L2.pdf
    17/12 19
    Programação Dinâmica – Bellman, Recompensa Futura----
    Aprendizado por reforço – Exploration x Exploitation

    RL_ENE2019

    - Reinforcement Learning Tutorial - Peter Bod'ik, UC Berkeley, 2007

    Silver, DeepMind: deep_rl_tutorial

    Exemplos: swing-up pêndulo, -duplo, triplo, self-driving car.

    19/12
    AE4

    20
    Deep Reinforcement Learnig

    - Tutorial: Deep Reinforcement Learning, PDF by David Silver, 2016
    Apresentação Guilhem RL para processo Nível Líquidos 4a ordem

    filme alfaGo - Netflix
    7/1 EE3

    21
    Intro: Image Segmentation
    RNN - Recurrent Neural Networks
    LSTM - Long Short Term Memory

    lecture_9_jiajun cs321n stanford 2022
    RNN yfwang UCSB
    lecture_10_ruohan cs321n stanford 2022
    funny video!!: Long Short-Term Memory (LSTM), Clearly Explained
    9/1
    22 Preparação Artigo

    14/1 23

    Apresentação artigo grupos I e II


    16/1 24 Artigo Apresentação artigo grupos III, IV e V
    21/1 25 Lógica Fuzzy
    IntelCompUnb pg:104-140
    23/1 26
    Controladores Fuzzy -
    Fuzzy -ANFIS -- ANFIS
    28/1 27 Aplicações Fuzzy
    IntelCompUnb pg:156-191
    30/1 28
    Aplicações & Conclusões
    RNA & Fuzzy

    IntelCompUnb pg:200-214
    4/2 29
    Attention
    Transformer Deep Learning
    Ruohan Gao - cs321n stanford 2022: lecture_11 Atention and Transformers
    6/2
    30

    Tópicos avançados (SoTA) em IC
    Conclusões IC
    Hiroto Honda - Google Colab: Vision Transformer Tutorial.ipynb
    Atul Ranjan - Python in Plain English: image-captioning-with-an-end-to-end-transformer-network
    11/2
    31
    Aula de Exercícios
    Preparação para a Prova
    13/2
    P

    32
    Prova Oral
    Sorteio sequência, 25 min,
    Responter 5 de 10 Questões - Escolher 3, Rejeitar 3.

    18/2
    EE4

    33


    20/2
    34
    Revisão de Menção


    Last Updated: Brasília, 17Out2024