Skip to main content

Module

DSC8002 : Programming and Machine Learning

  • Offered for Year: 2025/26
  • Module Leader(s): Dr Jennifer Warrender
  • Lecturer: Dr Tatiana Alvares-Sanches, Dr Vlad Gonzalez
  • Owning School: Mathematics, Statistics and Physics
  • Teaching Location: Newcastle City Campus
Semesters

Your programme is made up of credits, the total differs on programme to programme.

Semester 1 Credit Value: 20
ECTS Credits: 10.0
European Credit Transfer System

Aims

• This module aims to introduce the fundamental computing concepts and techniques underpinning
contemporary data science.
• The module aims to provide students with a grounding in program design and implementation as well
as programming environments. It explores how to apply and devise algorithms for a particular problem.
• This module places an emphasis on clear design and development of programs, teaching how to break
problems down to provide simpler and easier-to-use solutions. Students will apply these skills at
a practical level with a particular programming language, though the skills learned here can be
applied to any programming language.
• This module aims to provide a foundation in the field of Pattern Recognition and an expertise in
Machine Learning techniques as a toolkit for automatically analysing (large amounts of) data – be
it static data, such as images, or dynamic data, such as time series and sensor data

Outline Of Syllabus

Material will cover such topics as, whilst also including new and emerging areas of research:

• What is programming?
• The building blocks and structure of computer programs.
• Introduction to a programming language, and relevant libraries, to design, implement, test, and
debug programs
• Paradigms of Machine Learning
• Exploratory Data Analysis and Experimental Design
• Data pre-processing
• Linear and logistic regression
• Decision Trees, Random Forest, K-Nearest Neighbour Classifiers
• Unsupervised techniques
• Interpretability, fairness and ethics of Machine Learning

Teaching Methods

Teaching Activities
Category Activity Number Length Student Hours Comment
Structured Guided LearningLecture materials111:0011:00Pre-recorded online materials to aid learning
Guided Independent StudyAssessment preparation and completion110:305:30Practical/tutorial exercises (approx 1 per week)
Guided Independent StudyAssessment preparation and completion140:0040:00Extended technical project report
Guided Independent StudyAssessment preparation and completion130:0030:00Programming assignment
Guided Independent StudyAssessment preparation and completion112:0022:00Lecture follow-up time for formative exercises
Scheduled Learning And Teaching ActivitiesPractical381:0038:00In-person practical sessions
Scheduled Learning And Teaching ActivitiesSmall group teaching221:0022:00In-person tutorials
Guided Independent StudyIndependent study131:3031:30Background reading
Total200:00
Teaching Rationale And Relationship

Lectures materials are used for the delivery of theory and explanation of methods, illustrated with examples, and for giving general feedback on marked work.

Lecture follow-up, e.g., quizzes and exercises, is associated with each lecture to provide sufficient hands-on training and rapid feedback on understanding.

Scheduled sessions Tutorials and practicals are used both for solution of problems and work requiring extensive computation to give insight into the ideas/methods studied

Assessment Methods

The format of resits will be determined by the Board of Examiners

Other Assessment
Description Semester When Set Percentage Comment
Practical/lab report1M40Programming assignment.(approx. 24 hours)
Practical/lab report1M60Extended Technical project report.(approx. 36 hours)
Formative Assessments

Formative Assessment is an assessment which develops your skills in being assessed, allows for you to receive feedback, and prepares you for being assessed. However, it does not count to your final mark.

Description Semester When Set Comment
Prob solv exercises1MPractical/Tutorial exercises – approx. 1 per week (11)
Assessment Rationale And Relationship

Programming and machine learning requires theoretical understanding. To support the students’ knowledge and comprehension (i.e., IKOs 1, 2, 4), we provide lecture materials and scheduled
lectures/tutorials.

Lectures materials are used for the delivery of theory and explanation of methods, illustrated with examples, and for giving general feedback on marked work.

The purpose of scheduled lectures/tutorials is multi-faceted. For example, to set expectations, to
ensure students are aware of the materials available, to introduce the assessment, to answer/discuss any student queries/concerns in a group setting, to assess the students’ knowledge (e.g., using vevox quizzes), to revisit/discuss a topic that is vital to their comprehension and assessment. They also provide additional support to the students i.e., the opportunity to ask individual questions before or after a lecture.

However, programming and the application of machine learning are also skills that require practice. To support the students’ comprehension, application, analysis and synthesis (i.e., IKOs 2-6 and ISOs), we provide lecture follow-up and scheduled practicals.

Lecture follow-up, e.g., Canvas quizzes and exercises, is associated with each lecture to provide sufficient hands-on training and rapid feedback on understanding.

In scheduled practicals the students can work through the lecture materials, lecture follow-up and/or their assessment. Scheduled practicals are supported by the lecturer(s) and several demonstrators. These sessions can be the best opportunity for a student to get one to one support. Other forms of support are available e.g., email, however the response can be slow and time-consuming, which can impact the student learning
process.

Reading Lists

Timetable