Course: 2019/2020

Artificial neural networks

(13898)

Students are expected to have completed

Programming
Linear Algebra
Statistics

Competences and skills that will be acquired and learning results. Further information on this link

The aim of this course is that the student knows and develops computational learning techniques in the context of Artificial Neural Networks in addition designing and implementing applications and systems that use them, including those dedicated to automatic extraction of information and knowledge from data.
In more detail, the competences acquired by students are:
- Knowledge (PO: a, e, k)
-To know the mathematical / biological foundations of artificial neural neurons.
-Acquiring the concept of neural network and learning process.
-To know the different architectures of neural networks.
-To know the different learning paradigms of neural networks and their theoretical foundation.
-To know the differences among different types of neural networks from an applied perspective.
-To understand the operation of artificial neural networks, adapting each technique to the specific characteristics of problem.
-To know the different areas of applicability of artificial neural networks.
- Application (PO: b, d, e, g, k)
-To apply knowledge of neural networks in solving real problems, with emphasis on the accuracy and complexity of models.
-To identify correctly the different phases for solving a problem using neural networks.
-To develop an application that solves approximation, prediction or classification problems using neural networks.
-Ability to design a set of experiments that lead to solving the problem.
-To document correctly solving a problem using neural networks.
- Analysis, synthesis and evaluation (PO: b, e)
-Ability to analyze and interpret results.
-To recognize and classify the different problems that can be solved by artificial of neural networks.
-To combine and extrapolate the knowledge acquired for the design of a neural network, deciding the architecture and their parameters.
-Ability to assess the effectiveness of neural networks for solving a specific problem.
-To consider the relationship between computational cost and improvement of different solutions, choosing reasonable solutions to the characteristics of a given problem.

Description of contents: programme

1. Introduction to Artificial Neural Networks
1.1. Biological Foundations
1.2. Computation Model
1.3. Learning and Generalization
1.4. History of Neural Networks
2. Early computation models
2.1. Simple Perceptron
2.2. Adaline
2.3. Linear Classification and Regression
2.4. Time Series Prediction
3. Multilayer Perceptron
3.1. Introduction
3.2. Architecture
3.3. Learning algorithm
3.4. Learning process
3.6. Non-Linear Classification and Regression
4. Unsupervised learning
4.1. Basic Features
4.2. Kohonen self-organizing maps
4.3. Clustering. Other algorithms
5. Radial Basis Neural Networks
5.1. Introduction
5.2. Architecture
5.3. Learning methods
5.4. Radial basis networks versus multi-layer perceptron
6. Introduction to Deep Learning
6.1 Vanishing Gradient Problem. Some solutions
6.2 Convolutional Neural Networks (CNN)
6.3 Hyper-parameters of CNNs
6.4 Examples of applications of the CNN
7. Time Series Prediction
7.1 Introduction
7.2 Prediction Problem
7.3 Static Neural Models
7.4 Dynamic Neural Models: an introduction to recurrent neural networks

Learning activities and methodology

Theory: Lectures will be focused on teaching all concepts related to neural networks, so that students acquire knowledge on artificial neural networks necessary for professional development (PO: a, e, k).
Practical computer Sessions: The practical classes will be developed so that, in a supervised way, students learn to solve real problems with artificial neural networks. The practices will be carried out in groups of 2 students, enhancing teamwork (PO: b, d, e, g, k) (Soft-skill: teamwork)
The weekly plannification shows the exact distribution and the ECTS credits for each activity.

Assessment System

- % end-of-term-examination 50
- % of continuous assessment (assigments, laboratory, practicals...) 50

Basic Bibliography

- Ian Goodfellow, Yoshua Bengio & Aaron Courville. Deep Learning . MIT Press. 2016. http://www.deeplearningbook.org
- Simon O. Haykin. Neural Networks and Learning Machines . Prentice Hall, 3rd edition. 2008

Additional Bibliography

- Charu C. Aggarwal. Neural Networks and Deep Learning: A Textbook. Springer. 2018. http://link.springer.com/978-3-319-94463-0
- Mohamad H. Hassoun. Fundamentals of Artificial Neural Networks . MIT Press. 2003
- T.M. Mitchell. Machine Learning. McGraw Hill. 1997