Course dates

Starting date, Wednesday 15 Jan 2020
6.30-8.30pm | 10 weeks
Starting date, Wednesday 29 Apr 2020
6.30-8.30pm | 10 weeks

Course overview

This is a practical introduction to Machine Learning using Python programming language. Machine Learning allows you to create systems and models that understand large amounts of data. These models support our decision making in a range of fields, including market prediction, within scientific research and statistical analysis. This course will teach you how to use statistical techniques and machine learning algorithms that enable a computer system to learn from different types of data.

This is a ten week introductory course in Machine Learning using Python, which is a widely used programming language in the field of Machine Learning. Python is especially effective due to its readability, versatility, and its integration with several packages specifically designed for Machine Learning. The course is both theoretical and practical, and we will ensure you understand the theory behind the algorithm, before this is tested on real world data examples. We will guide you through areas such as analysing large amounts of data and classifying this into appropriate categories, and how to recognise recurring features and identify correlations, so that you can develop a complex system which has the ability to make accurate predictions.

We will begin the course by exploring the main tools provided in Python for data visualisation and data analysis. You will learn how to process the data and create graphs that can reveal specific insights of the database. From data analysis the course will then move on to explore the theory and practical application of the main machine learning algorithm in Scikit-learn for classification and regression models. After this we will take the first steps in exploring Keras, a more sophisticated machine learning library that includes and expands on our work with Scikit-learn. Towards the end of the course we will briefly discuss Neural Network and Convolutional Neural Network to give you a brief introduction to the concept of Deep Learning.

We will cover the most popular Python Data Science Libraries, such as:

  • Jupyter Notebook
  • NumPy
  • pandas
  • matplotlib
  • Scikit-learn 

Please note that in order to participate in this course a basic level of computer literacy is required. Prior knowledge of data analysis and machine learning is not needed to take part. The course is both suitable for students with technical expertise, such as experienced programmers, as well as those taking their first steps in machine learning.

Why Study this Course?

  • Data Scientist is one of the most trending jobs in many economic sectors, and machine learning applied to data science is increasingly adopted due to its ability to solve problems relating to the increased availability of large dataset.
  • We will teach you how to ensure that there are no erroneous representations and rules of operation that lead to errors or misjudgements in your machine learning models.
  • You will understand the theory behind the algorithm and you will be able to test them on real world data examples.
  • The course is a great opportunity to learn new skills that can be used to further your career.
  • The course is open to anyone interested in Machine Learning, students that are interested in data science, and to anyone with little experience at coding and that wants to understand the potentiality of machine learning applied to their datasets.



Booking information

Disability Support

We are committed to providing reasonable teaching adjustments for students with disabilities that may impact on their learning experience. If you require adjustments, please complete the relevant section on the booking form and also contact us at so we can respond to your requests as soon as possible. 

Please note our short courses sell-out quickly, so early booking is advisable.

Starting date, Wednesday 15 Jan 2020
6.30-8.30pm | 10 weeks
Starting date, Wednesday 29 Apr 2020
6.30-8.30pm | 10 weeks


If you have any questions about this course please contact shortcourses ( .

For information on our upcoming short courses please sign up to our mailing list.


Richard Hoggart Building

Tutor information

Guido Salimbeni

Guido Salimbeni

Guido is a PhD student in Computational Art at Goldsmiths, University in London. His research focuses on augmented visual creativity and he is currently exploring the potentiality of Machine Learning and Artificial Intelligence as a tool to augment visual creativity. His work includes data analysis and data visualisation, automatic images classification and objects detection using computer vision algorithm and the implementation of programmed interfaces for aesthetic evaluation. He graduated in Economics at the University of Turin and in 2017 he completed a Masters in Fine Art in London.  His research interests include the application of Machine Learning models for aesthetic evaluation of images, Artificial Intelligence and its implementation as a tool to augment the creative process. Most recently, he joined the team of MuatorVR at Goldsmiths University lead by Artist William Latham alongside mathematicians Stephen Todd and Lance Putnam.


Course structure

The course will be taught through practical examples and theoretical explanation. We will cover the following key aspects of Machine Learning: Data Pre-processing, Regression, Classification, Clustering, Introduction to Deep Learning.

  • Installation of the Anaconda Distribution for running Python code, presentation of how machine learning is applied today in the industry, plus Python review
  • Importing your dataset and make operation on your data using Pandas Python Library. Theory on features analysis and best practice in understanding the data.
  • Data Visualisation in Seaborn. Exploration of the most useful data visualisation to extract information from the database.
  • Linear regression in theory and practice
  • Logistic Regression in theory and practice
  • K Nearest Neighbours in theory and practice
  • Decision Trees and Random Forests
  • Support Vector Machine
  • Unsupervised learning: K means and clustering
  • Introduction to Neural Nets and Deep Learning

About the department

Our Department of Computing at Goldsmiths has a strong creative focus. We combine rigorous technical expertise with dynamic and innovative practice-based research. Our aim is to interrogate the theoretical landscape, while simultaneously applying this learning and challenging ourselves and our students to explore the technological boundaries. This stimulating environment is both creative and socially aware. On a number of our degree programmes there is an interdisciplinary approach, an aspect which is evidenced in our postgraduate and postdoctoral research community. This is a unique learning environment at the forefront of enabling students to become the programmers of tomorrow. 

Learning outcomes

At the end of this course you will have gained:

  • Understand the Machine Learning models
  • Implement Machine Learning Algorithms
  • Make predictions or classification of a dataset
  • Make an analysis of a given dataset
  • Use Numpy, Pandas, Matplotlib and Seaborn
  • Implement a machine learning algorithm in Scikit-Learn
  • Apply unsupervised machine learning in Scikit-Learn
  • Understand which machine learning model to use for your specific problem
  • Train and run machine learning model on your computer
  • Evaluate the performance of your machine learning model
  • Study further advanced machine learning algorithms (deep learning)

Related content links

Similar courses

Introduction to Web Development

Tim Berners Lee said ‘the original idea of the web was that it should be a collaborative space where you can communicate through sharing information.’ There are many to...

  • Next course: Wednesday, 26 Feb 2020
  • £395
  • Intermediate