710070M - Artificial Neural Networks

Syllabus

Instructors: Prof. Wilfredo Alfonso, Prof. Eduardo F. Caicedo.

Office Hours: Check the Semestral Schedule.

Textbooks:

  • Eduardo Caicedo, Jesús A. López. “Una Aproximación Práctica a las Redes Neuronales Artificiales.” Universidad del Valle, 2009.

  • James Freeman, David Skapura. "REDES NEURONALES, Algoritmos, Aplicaciones y Técnicas de Programación.," Editorial Addison-Wesley/Diaz de Santos, 1993.

  • Hilera J., Martinez V., "REDES NEURONALES ARTIFICIALES, Fundamentos, Modelos y aplicaciones." Alfaomega, 2000.

  • Haykin S., "NEURAL NETWORKS a Comprehensive Foundation." Second Edition, Prentice Hall, 1999.

  • Principe J., Euliano N., Curt W., "Neural and Adaptive Systems, Fundamentals Through Simulations." John Wiley & Sons, Inc., 2000.

  • Fauset L., "Fundamentals of Neural Networks." Prentice Hall International Inc. IEEE Neural Networks, 1994.

Course Objectives:

  • The course will involve understanding the philosophy and mathematical foundation of neuron and neural networks from an Artificial Intelligence point of view.

  • Understand and Analyze the several learning architectures and algorithms from Neural Networks.

  • Analyze and Design Feed-forward Neural Networks such that Perceptron, Adaline, and Madaline Networks, and backpropagation learning algorithm.

  • Understand the applicability level of Neural Networks for uncertainly and imprecisely defined problems.

Topical Outline:

  1. Basic concepts. Architectures and Learning.

  2. Perceptron and Adaline.

  3. Supervised Learning. Multi-Layer Perceptron (MLP).

  4. Non-supervised Learning. Kohonen's Self-Organizing Maps (SOM).

  5. Hybrid Learning. Radial Basis Function (RBF).

  6. Adaptive Networks. Neural Gas (NG).

  7. Introduction to Deep Learning (DL).

    1. Autoencoders

    2. Convolutional Neural Networks

    3. Sequential Models

Grading:

  • Homeworks, 25%

  • Projects, 45%

  • Final Project, 30%

Policy: Magistral classes and Laboratories using computers and toolboxes in Artificial Neural Networks. Programming assignments. Final project using at least two architectures.

Prerequisites:

    • Linear algebra.

    • Comfort with a level of mathematical sophistication.

    • Programming experience (Python, Octave, or MatLab).

Scheduling: This course is offered each semester.