Artificial Neural Networks for beginners
This course provides a hands on two day introduction to deep learning.
Many deep learning courses begin with teaching very high level neural network libraries at one extreme, or deep dive into linear algebra and calculus at the other. Both extremes have pitfalls, as on one hand, you don’t have the foundations to understand what is happening, or even worse, you never get chance to build anything due to the complexity of the maths.
The Deep Learning for Newbies course aims to give you the theoretical and practical foundations to start your deep learning journey without these obstacles. We start with the basics, including why artificial neural networks have become so popular. An introduction is then provided to Python libraries Pandas and NumPy, and the Jupyter Notebook IDE, which we will use throughout the course.
We will cover basic linear algebra and calculus functions which will allow you to understand what is actually happening in an artificial neural network. Through alternating between theory and practical, we will start by creating a very basic learning model, and progress through the course to create a deep supervised learning model, which you will use to train and make predictions from data.
This course is very hands on, and requires beginner to intermediate Python programming skills. As we are introducing NumPy for mathematical functions, and Pandas for data manipulation, if you are familiar with Python data types, functions and loops, then this level of Python knowledge will suffice.
While at the end of this course, you will be able to build a basic deep artificial neural network model in Python to train and predict using your own data, the actual aim is to give you enough understanding of deep learning to allow you to start your own deep learning journey.
Computer Vision for beginners
The evolution of computer vision using deep learning is accelerating at a frantic rate. There are very few areas that are not being affected by the rapid pace of this evolution, be it health care, forensics, retail, travel and transport, security, self-driving cars and many others.
This course gives a theoretical and practical introduction to computer vision. The course will provide an introduction to convolutional neural networks, including the maths behind how 1D, 2D and 3D convolutional models work. We then run through the basics of TensorFlow 2, which is the framework of choice, and apply our knowledge to build and train simple multi-class image recognition models. We then go on to look at the challenges associated with image recognition, whilst gaining a basic knowledge of the OpenCV image manipulation library in the process. Since image recognition and classification on its own is only part of computer vision, our final activity will be to build and train a concatenated image and text model using the TensorFlow 2 API.
At the end of the course you will have an understanding of, and be able to build and train, your own image recognition models using your own data. This will provide you with the foundations to continue on your own journey in this fascinating field.
This course is very hands on and requires basic python, NumPy and pandas skills as well as a basic understanding of how artificial neural networks work. It is less maths intensive than the Neural Nets for Newbies course, since we will be using a deep learning framework as opposed to coding the algorithms by hand. This allows more time to build and train models. However a very basic understanding of linear algebra and differential calculus will go a long way
AI Inner Workings
One of the common misconceptions of AI is that state of the art models are often seen as out of range to the ordinary organisations and are the preserve of big-tech, academia or specialist AI organisation. The focus within the course is explain and enable interaction with models meeting a wide range of business needs. The take away will be that course participants can take away knowledge and models used within the course for use within your business, enabling you to evolve your capabilities over time.
The course will cover:
- An introduction to how learning actually works
- Introduction to the foundation of deep neural networks, the multi-layer perceptron
- The maths behind how stacked multi-layer perceptrons are able to create powerful learning models
- A deep understanding of how convolutional neural networks work, and how a combination of convolutional neural networks and OpenCV can create powerful computer vision solutions
- An introduction to time based artificial neural networks and their uses
- Detailed understanding of the state-of-the-art natural language processing models and where they can be applied
- An understanding of the end-to-end lifecycle of AI models
The course runs over nine 2.5 hour sessions with a mixture of theory and practical activities. The underlying computing framework used is Azure Machine Learning virtual machines within Microsoft Azure, with the option of running in either your own tenant or my own. A combination of Tensorflow, PyTorch and Scicit-learn frameworks will be utilised, as well as OpenCV and Transformer libraries within Python. All practical lectures will be tailored towards your industry from a model perspective. Any models taught and used from a training and inferencing perspective can be taken away enabling you and your business to embed those models into your organisation.
This course is designed for both CxO’s and technical individuals alike,and designed for a balance of skills within lectures. For those wanting to get the best out of the practical exercises, a level of technical knowledge within python is needed while not essential.