A syllabus informed by industry

Learn what companies really need, and what universities dont't teach you
6 Chapters to take you from the basics to the state of the art

0. The basics: Python and mathematics for AI

This chapter will take you from complete beginner to confident coder in a matter of weeks, and make sure that everyone is comfortable with the material required for the rest of the course. You’ll learn concepts fundamental to programming and solidify your understanding through the challenges assigned throughout the course.It is suitable both for those who have no experience in programming and those who have programmed in other languages, but would like to learn Python.

Module 1 - Set up and understanding
   Git bash
    Python 3
    Jupyter Notebook
    How does a computer process information?
    “Hello World” program
    What is syntax?
    Flow control
    Basic Python built-in functions
    Expressions, Values and Variables

Module 2 - Logic and control flow
    Logical and comparison operators
    Conditional statements
    While loops, For loops and iterables

Module 3 - String manipulation and object methods
    Basic string manipulation
    Immutability of strings
    String operations

Module 4 - Numerical methods and complexity
    Guess and check
    Bisection search
    Computational Complexity and Big O notation
    Time and space efficiency of programs
    Classes of program complexity

Module 5 - Functions
    Function definitions and calls
    Return statement
    Functions as objects

Module 6 - More data types
    Compound data types
    Tuples, lists and dictionaries

Module 7 - Sets and recursion
    Set theory and notation
    Set objects and operations

Module 8 - Object oriented programming and error handling
    What are classes, methods and attributes?
   Magic functions
    Exceptions and error handling

Module 9 - Computational Modelling
    Best, average and worst case modelling

1. Building data pipelines

As data plays a larger part in every organisation, especially digital ones, it becomes more and more necessary to understand where data comes from, how it's stored, and how it's manipulated.

Module 1 - Introduction.
    Introduction to data pipelines
    Introduction to APIs
    HTTP requests

Module 2 - Web scraping.
    Selenium for web scraping
    Performing basic web automation actions
    Referencing HTML elements using Xpath

Module 3 - SQL.
    SQL basics
    SQL Join operations
    SQL Aggregations
    SQL Subqueries

Module 4 - File structures and Pandas
    Understand standard file structures like CSV, XML, etc
    Using Pandas library to load in and manipulate data files

Module 5 - Data cleaning
    Data cleaning techniques and how to implement them

Module 6 - Descriptive statistics
    What is descriptive statistics and how to use it

Module 7 - How to deal with missing data
    Data imputation, removal and other data cleaning techniques

Module 8 - Data visualization
    Visualising data in Python using Plotly

2. Machine learning foundations

This chapter is a comprehensive introduction to the foundations of machine learning (ML). There is a deep focus on being practical - actually building every algorithm you learn and knowing how and when to apply it.

We’ll begin with an introduction to the basic machine learning problems and the different types of ML. In each successive session, you'll learn the theory behind a particular algorithm before implementing it and using it on a real dataset.

Module 1 - Introduction to machine learning
    Validation and testing
    Hyperparameters, grid search and K-fold cross validation

Module 2 - Gradient methods
    Linear regression
    Automatic differentiation
    Multiclass classification

Module 3 - Theory
    Evaluation metrics
    Fitting Polynomials and the curse of dimensionality
    Bias & variance, underfitting and overfittting
    Maximum Likelihood Estimation (MLE)

Module 4 - Supervised learning techniques
    K-nearest neighbours
    Regression trees
    Classification trees
    Support Vector Machines (SVMs)

Module 5 - Unsupervised learning techniques
    K-means clustering
    PCA and t-SNE

3. Applied Data Science

Data science is one of the fastest growing fields as measured by the number of people employed in it. As data plays a larger part in every organisation, especially digital ones, understanding and being able to pick out insights becomes a crucial competitive advantage.

Module 1 - Introduction to data science
    Evaluation Metrics
    Hypothesis testing
    Statistical modelling
    Influential points

Module 2 - Case Study
    House prices regression case study

Module 3 - Time series modelling
    ARMA and ARIMA
    Holt Winters forecasting
    Facebook’s forecasting tool, Prophet

Module 4 - A/B testing
    How to run and evaluate A/B tests

Module 5 - Recommendation systems
    Content based recommendation systems
    Collaborative filtering

Module 6 - Traditional NLP
    Topic modelling for document summarization
    Sentiment Analysis

4. Deep learning foundations

Deep Learning has become continuously more important and impressive in the past few years. Through the use of Artificial Neural Networks, the field of AI has been propelled into the spotlight. Computers can now do things thought impossible just years ago and the boundaries are being pushed rapidly by new research. 

This chapter will build upon your knowledge of traditional Machine Learning and comprehensively cover Deep Learning. You will learn about the different Neural Network architectures, what they are used for, why they work well on particular types of data and how to implement them using the PyTorch library.

You will be equipped with the foundational knowledge and skills to be able to read the latest papers and implement them. As well as use pre-trained models from the web and tweak them to your own needs.

Module 1 - Intro to Pytorch
   Intro to PyTorch Deep Learning library
    What is Autograd?
    Computational Graphs
    Implementing Linear Regression in PyTorch
    PyTorch Datasets and Dataloaders
    Applying augmentation using PyTorch transforms
    Saving and Loading models

Module 2 - Tensorboard
    Introduction to Tensorboard
    How to write data to Tensorboard

Module 3 - Neural networks
    The maths behind Neural Networks
    Implementing Neural Networks in PyTorch

Module 4 - Optimisation for deep learning
    The maths behind different optimisers (SGD, AdaGrad, RMSProp, Adam)
    Using optimisers with PyTorch
    Hyperparameter tuning using the Ray library

Module 5 - Custom datasets
    Building custom datasets in PyTorch

Module 6 - Convolutional Neural Networks
    The maths behind Convolutional Neural Networks (CNNs)
    Implementing CNNs in PyTorch

Module 7 - Regularisation for deep learning
    Batch Normalization

Module 8 - GPU acceleration and cloud training
    What is a GPU and what kind of operations can GPUs accelerate?
    Using a GPU to train PyTorch models
    Using Amazon Web Service’s (AWS's) EC2 service to train models in the cloud

Module 9 - Using pre-trained models
    Using pre-trained models from PyTorch
    Transfer learning

Module 10 - Object detection and image segmentation
    Single instance object detection problem
    Training a CNN for segmentation task

Module 11 - Autoencoders
    Intro to autoencoders
    Variational Autoencoders
    Convolutional Autoencoders

Module 12 - Recurrent Neural Networks (RNNs)
    Long Short Term Memory Networks (LSTM)

Module 13 - Generative Adversarial Networks (GANs)
    Deep Convolutional GANs (DCGAN)
    Generating fake images of fashion and faces using GANs

5. Natural language processing

NLP is the most implemented in enterprise among sub-fields of AI. In the digital age, language is still key to communication and being able to analyse the large swathes of data collected within an organization will propel their efficiency forward.

Through the use of neural networks, specifically the transformer architecture, results thought impossible have been produced. There is a headline about some baseline record being broken every few months. You don't have to search for long to find large passages of writing online written by AI that are indistinguishable from human-written content.

Due to the largely open nature of AI research, there are pre-trained models that cost hundreds of thousands of dollars to train which are available for public access. There is a wave of new startups that are built on top of these releases.

Module 1 - Word embeddings
    Creating representations of words with dense embeddings

Module 2 - Recurrent Neural Networks for NLP
    Language modelling

Module 3 - Sequence to sequence tasks and attention
    Implementing seq-to-seq for machine translation

Module 4 - Self-attention
    Self attention

Module 5 - Custom NLP datasets
    Creating custom NLP datasets using TorchText

Module 6 - Using the state of the art
    Bidirectional Encoding Representations using Transformers (BERT)
    Using the HuggingFace Python library

6. Real world deployment

Having learnt about how to build and train different Machine Learning models in Python, you now need to be able to deploy these models so they can be used on the web and other applications by real users.

This chapter will guide you through the different options available for deploying your model, whether they are basic regression functions or large neural networks. 

Module 1 - Building an API
    Using the Flask Python library to create an API
    Using Docker to run your code on any machine
    Automating code running using Cron

Module 2 - Cloud services
    Deploying a Docker container on AWS EC2
    How to run code in the cloud using AWS Lambda
    How to make your code accessible using AWS API Gateway

Module 3 - 3rd party AI services
    AWS AI services
    Google Cloud Platform AI services

Module 4 - Basic web development
    HTML, CSS and JS basics
    Making API requests from a web application

Module 4 - ONNX
    Using ONNX to make your model transportable
    Running neural networks in the browser using ONNX

7. Career support

"By the time your graduate, you'll know everything a data scientist or machine learning engineer will need to have an impact in the workplace."
Evgeny Dyshlyuk - Research Scientist, Imperial College London

Is this course right for you?

Data science and machine learning are about understanding how data can be used to make key business decisions and automate processes. Given the huge amounts of data being collected in the digital age, companies across all fields want to utilise their data to inform their decisions and improve operational efficiency. The demand for data scientists has tripled over the past 5 years. The number of machine learning engineer positions on Indeed quadrupled between 2015 and 2018.

This course was created with the intention of helping meet that demand. Most of our students have a STEM background and are required to have a basic understanding of linear algebra, statistics and coding. The 15 minute quiz you complete during the application process will assess this and will give you access to precourse material to fill in any gaps in knowledge you may have.

If you are love solving problems across different fields using data and are looking to get hired doing this, you have come to the right place.

Throughout the programme, you will build a portfolio of projects that will showcase your practical skills. But we know there's more to getting hired than technical knowledge.

At the start of the programme you will have a consultation with one of our coaches to help figure out the optimal career for you. As you work progress in your learning, our career coaches will help you polish your CV, hold mock interviews, audit your LinkedIn and keep you accountable in your job search process.

You will be recommended to exclusive roles with our hiring partners and be matched with an industry mentor to make sure you are ready for the workplace.

Our goal is for you to feel 100% confident going into any hiring process.

Easily accessible through evening classes

You'll have classes Monday - Thursday from 18:30-21:30

18 weeks

8 portfolio projects

200+ hours of programming experience

Dedicated instructors

Dedicated support means that on top of the 12 hours in class per week, you’ll have scheduled group office hours weekly, support through Slack and 1-on-1 sessions available to book.

Remote learning, done right

Don’t waste a second. Learn from the comfort of your own home. Reach instructors instantly. Be ready with just an internet connection and your laptop.

You could be a
  • data scientist.
  • machine learning engineer.
  • data analyst.
  • data engineer.
  • business analyst.
  • natural language processing engineer.
  • data analytics consultant.

Still have questions?

Download the brochure to see every detail about the course

Take a look at some frequently asked questions about the course
Contact admissions

© Core AI Limited 2020

Privacy policy