Building Predictive Models from Scratch Using Python

The course is an introduction to classical Machine Learning technique using Python. It introduces learners to basic machine learning steps from data preparation to evaluation of machine learning models. Learners will learn and build two classical machine learning models namely Linear Regression and Logistic Regression for continuous and categorical data respectively. Learners will learn how to process data using Pandas library in Python as well as to visualize those data using Seaborn and Matplotlib. On top of that, they will write the functions to build machine learning models using NumPy. Instead of using Scikit-Learn Library, learners will write their own machine learning functions to gain deeper understanding how such library functions. At the end, they will learn some metrics to evaluate their machine learning models. 

Course Details

Course Dates: 
Currently unavailable

Duration: 3 days
9.00am - 5.00pm


Who Should Attend

Working professionals who are familiar with Python programming, computing or software engineering. This course is suitable for professionals with a small technical background who plan to enter the data science or artificial intelligence field. It is designed as a basic introduction before taking  up the course "Fundamentals of Deep Learning and Neural Networks in PyTorch".


Participants should possess a basic understanding of the Python programming language and should have gone through the Fundamentals in Python (Basic)  course and Part 1 of this course.

Programme Outline

Learning Objectives and Structure

By the end of this course, participants should be able to: 
* Create scatter plot and statistical plots like box plot, histogram, and bar plot
* Create a Panda’s DataFrame and selecting data from DataFrame
* Use library to read as Comma-separated values (CSV) or EXCEL file
* Split data randomly into training set and testing set
* Normalize data using min-max normalization
* Give example of linear regression and classification
* Write objective function of linear regression
* Implement Gradient Descent algorithm for optimisation
* Train linear regression model using gradient descent
* Transform data for higher order features
* Evaluate linear regression model using R-squared and mean-squared-error
* Evaluate and choose learning rate
* Plot cost function over iteration time
* Plot linear regression
* Write objective function of logistic regression
* Use logistic regression to calculate probabilities of binary classification
* Train logistic regression model
* Split data into training, validation, and testing set
* Visualize non-linear decision boundary
*Classify multi-class problems using one-vs-all technique
*Calculate confusion matrix, precision, and recall

Course Outline - Day 1
  • Modeling Continuous Data, Review of Mathematical Notations
    • Introducing the inside Linear regression model. Review of basic matrix operations and notation. Matrix multiplication..
  • Linear Regression Cost Function and Gradient Descent
    • Computing cost function and gradient descent optimization. 
  • Classification and Logistic Function
    • Introducing the inside of logistic function for classification algorithm.
  • Hypothesis and Cost Function Computation for Logistic Regression
    • Computing cost function and probability for logistic regression.
Course Outline - Day 2
  • One-vs-all Technique for Multi-class Classification
    • Applying One-vs-all technique for multi-class classification.
  • Review and Recap
    • Recap and review previous lessons and what to expect moving forward.
Course Outline - Day 3
  • Project Consultation
  • Project Presentation
  • Problem Set
  • Quizzes
  • Group Project

Course Fees and Funding

Full course fee inclusive of prevailing GST

  • For Foreigners

You pay

SkillsFuture Course Fee subsidy (70%)

  • For Singapore Citizens < 40 years old 
  • For Permanent Residents

You pay

Mid-Career Enhanced Subsidy (90%)

  • For Singapore Citizens ≥ 40 years old

You pay

Enhanced Training Support for SMEs (90%)

  • For SME - Sponsored employees

You pay

The above module fee payable is inclusive of 9% GST. 


Oka Kurniawan
Senior Lecturer, ISTD
Singapore University of Technology & Design (SUTD)

Dr Oka Kurniawan is a Senior Lecturer of Information Systems Technology and Design at SUTD.

He graduated from NTU with a PhD in Engineering. He has been teaching computing for the past 13 years. He was also entrusted as the subject lead for the largest programming course in SUTD, a core subject in computer science degree and a software studio for Design and AI degree. He managed to introduce machine learning into the first year programming course in SUTD. He was also awarded SUTD Teaching Excellence in 2018 and his teaching was recognized internationally as Fellow by Advance HE in 2020. 

Read more.

Policies and Financing Options

SSG Funding Terms and Conditions

Use of Personal Details

In consideration of the subsidy provided by SkillsFuture Singapore Agency (“SSG”) through the SUTD Academy for the Course,

I consent to:

The collection, use and disclosure to relevant third parties of my personal data by the SUTD Academy including but not limited to personal particulars, attendance records, assessment/performance records, for the following purposes:

  1. Reporting of national statistics and conducting of holistic continuing education training research and analysis;

  2. Facilitate the conduct of the relevant surveys and audits in relation to the Course;

  3. General administration of the Course including but not limited to processing of the subsidy provided by SSG;

  4. Publicity and marketing of the Course or other Courses to be provided by SSG or SUTD Academy; and

  5. SSG or its Appointed Auditors or Nominated Representatives to directly contact Course Participant to obtain information deemed necessary for the purposes of conducting effectiveness survey or audits in relation to the Course.

I agree to:

  1. Attend and complete all lectures, class exercises, workshops and assessments;

  2. Complete the Course feedback at the end of the Course;

  3. Complete the post Course survey sent about 3 to 6 months after class attendance; and

  4. Sign up for a personal email account.

SUTD Privacy Statement

For more information on SUTD's privacy statement, please visit

SUTD Terms and Conditions

Methods of Payment

Learn more about the available payment modes.

Cancellation & Refund Policy

  1. If a written notification is sent to within 24 hours after course registration deadline there will be no cancellation charges. A full refund will be made. 

  2. No refund is provided if written notification is more than 24 hours after course registration deadline. SUTD Academy reserves the rights to collect the full fee amount from the participant.

Replacement Policy

Companies may replace participants who have signed up for the course by giving a 3-working day notice before the course commencement date to Terms and conditions apply.

Registration Policy

  1. Course may be cancelled due to insufficient participants. SUTD Academy will not be responsible or liable in any way for any claims, damages, losses, expenses, costs or liabilities whatsoever (including, without limitation, any direct or indirect damages for loss of profits, business interruption or loss of information) resulting or arising directly or indirectly from any course cancellation.

  2. Course enrolment is based on a first-come, first-served basis.

  3. SUTD Academy reserves the right to change or cancel any course or instructor due to unforeseen circumstances. 

Types of Funding

Funding under Mid-Career Enhanced Subsidy ("MCES")

  1. MCES is an enhanced Subsidy to encourage mid-career individuals to upskill and reskill, thereby helping them to remain competitive and resilient in the job market. With this, all Singaporeans aged 40 and above will receive higher subsidies of up to 90% course fee subsidy for SSG-funded certifiable courses.

  2. Individuals/employers are not required to submit an application for the MCES. Those pursuing SSG-funded programmes will be charged the appropriate subsidised fees by SUTD Academy if they are eligible MCES. Individuals/employers will only need to pay the nett fee (full course fee after SSG's grant).

    For more info, please visit SkillsFuture website at

Funding under Enhanced Training Support for SMEs ("ETSS")

  1. ETSS is an enhanced funding to enable SMEs to send their employees for training.

  2. SMEs will enjoy subsidies of up to 90% of the course fees when they sponsor their employees for SSG-funded certifiable courses.

  3. In addition to higher course fee funding, SMEs can also claim absentee payroll funding of 80% of basic hourly salary at a higher cap of $7.50 per hour. SMEs may apply for the absentee payroll via the SkillsConnect system.

  4. To qualify, SMEs must meet all of the following criteria:
    - Organisation must be registered or incorporated in Singapore
    - Employment size of not more than 200 or with annual sales turnover of not more than $100 million
    - Trainees must be hired in accordance with the Employment Act and fully sponsored by their employers for the course
    - Trainees must be Singapore Citizens or Singapore Permanent Residents

    For more info, please visit SSG website at

Funding under Union Training Assistance Programme ("UTAP")

UTAP is a training benefit for NTUC members to defray their cost of training. This benefit is to encourage more union members to go for skills upgrading.

NTUC members enjoy 50% unfunded course fee support for up to $250 each year when you sign up for courses supported under UTAP (Union Training Assistance Programme).

For more info, please visit

Funding under Post-Secondary Education Account ("PSEA")

The Post-Secondary Education Account (PSEA) is part of the Post-Secondary Education Scheme to help pay for the post-secondary education of Singaporeans.

This is part of the Government’s efforts to encourage every Singaporean to complete their post-secondary education. It also underscores the Government’s commitment to support families in investing in the future education of their children and to prepare them for the economy of the future. PSEA is not a bank account.

It is administered by the Ministry of Education (MOE) and is opened automatically for all eligible Singaporeans.

Account holders can use their PSEA funds to pay for their own or their siblings’ approved fees and charges for approved programs conducted by approved institutions.

However, you will have to check your eligibility and balance by contacting MOE first.

Contact MOE at (65) 6260 0777

E-mail to MOE at

Click here for MOE website.