Fundamentals of Neural Networks

This teaching package contains modular contents for the introduction of the fundamentals of Neural Networks.

768 Downloads

Updated 25 Jan 2023

From GitHub

View License on GitHub

Fundamentals of Neural Networks

Curriculum Module

Created with MATLAB R2022a. Compatible with MATLAB R2022a and later releases.

2022 © Primož Potočnik (University of Ljubljana, Faculty of Mechanical Engineering)

Description

This teaching package contains modular contents for the introduction of the fundamentals of Neural Networks. The package consists of a series of MATLAB Live Scripts with complementary PowerPoint presentations. MATLAB is a programming and numeric computing platform developed by bat365.

The package is intended to gradually guide the students toward basic concepts in neural networks through general demonstrations applicable to every field, spanning from science to engineering. The materials also include a classical engineering problem, namely industrial diagnostics of compressor connection rod defects.

The contents are mainly addressed towards undergraduate courses, however, the modular structure allows further integration within other (postgraduate) AI-based courses. Course application areas include Neural Networks, Deep Learning, Machine Learning, Industrial diagnostics and Condition Monitoring, and Autonomous Systems.

Examples


Solving XOR problem with
Multilayer Perceptron

Solving XOR problem with
Radial Basis Function Network

4-class classification with
Multilayer Perceptron

Function approximation
with GRNN

Prediction of chaotic Mackay-Glass time series with
Dynamic Neural Network

Industrial diagnostics with PCA
and Multilayer Perceptron

1D Self-Organizing Map
in 2D input space

2D Self-Organizing Map
in 2D input space

Instructions

The teaching materials can be approached either by following the Live Scripts or the PowerPoint presentations. Open the introductory live script NN0b_Contents_and_instructions.mlx or the introductory presentation NN0a_Contents_and_instructions.pptx and follow the presentation.

Live Scripts

The instructions inside the Live Scripts will guide you through the activities and exercises. We suggest running each section within a Live Script individually. Interactive Live Script controls(sliders, checkboxes, buttons, etc.) invite you to experiment with various parameter configurations. See also the introductory video on How to use Live Script Controls. Each Live Script also contains a link to the complementary PowerPoint presentation.

PowerPoint presentations

The teaching can also be approached by following the PowerPoint presentations. In this case, each presentation will provide links to the complementary Live Script examples.

Contents

Live Scripts with complementary PowerPoint presentations are available in folders containing the following chapters:

  1. NN0 - Contents and instructions
  2. NN1 - Introduction to neural networks
  3. NN2 - Neuron model, network architectures, learning
  4. NN3 - Perceptron and ADALINE
  5. NN4 - Backpropagation
  6. NN5 - Dynamic networks
  7. NN6 - Radial basis function networks
  8. NN7 - Self-organizing maps
  9. NN8 - Practical considerations

Learning goals

  • Introduce the principles and methods of neural networks (NN)
  • Present the principal NN models
  • Demonstrate the process of applying NN
  • Understand the concept of nonparametric modeling by NN
  • Explain the most common NN architectures
    • Feedforward networks
    • Dynamic networks
    • Radial Basis Function Networks
    • Self-organized networks
  • Develop the ability to construct NN for solving real-world problems
    • Design proper NN architecture
    • Achieve good training and generalization performance
    • Implement a neural network solution

Suggested Prework

No prior exposure to the subject of neural networks and/or machine learning is assumed.

Introduction to MATLAB

MATLAB Onramp - Learn the essentials of MATLAB through this free, two-hour introductory tutorial on commonly used features and workflows.

Additional Resources

Introduction to Machine Learning

Machine Learning Onramp - This free, two-hour tutorial provides an interactive introduction to practical machine learning methods for classification problems.

Introduction to Deep learning

Deep Learning Onramp - This free, two-hour deep learning tutorial provides an interactive introduction to practical deep learning methods. You will learn to use deep learning techniques in MATLAB for image recognition.

Educator Resources

Have any questions or feedback? Contact the bat365 online teaching team.

Recommended Books

Simon Haykin, Neural Networks and Learning Machines. Pearson, 3rd edition, 2009.

Products

MATLAB, Statistics and Machine Learning Toolbox™, Deep Learning Toolbox™

License

The license for this module is available in the LICENSE.TXT file in this repository.

Acknowledgments

The development of this Curriculum Module was supported by bat365. Special thanks to dr. Marco Rossi, dr. Julia Hoerner, and dr. Jianghao Wang.

Cite As

Primoz Potocnik (2023). Fundamentals of Neural Networks (https://github.com/ppotoc/Fundamentals-of-Neural-Networks/releases/tag/v1.0.1), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2022a
Compatible with R2022a and later releases
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.1.0

See release notes for this release on GitHub: https://github.com/ppotoc/Fundamentals-of-Neural-Networks/releases/tag/v1.0.1

1.0.0

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.