COMP08144 2018 Machine Learning

General Details

Full Title
Machine Learning
Transcript Title
Machine Learning
Code
COMP08144
Attendance
N/A %
Subject Area
COMP - Computing
Department
COEL - Computing & Electronic Eng
Level
08 - NFQ Level 8
Credit
05 - 05 Credits
Duration
Semester
Fee
Start Term
2018 - Full Academic Year 2018-19
End Term
9999 - The End of Time
Author(s)
Donny Hurley
Programme Membership
SG_KSMAR_H08 201800 Bachelor of Science (Honours) in Computing in Smart Technologies SG_KSODV_H08 201800 Bachelor of Science (Honours) in Computing in Software Development SG_KCMPU_H08 201800 Bachelor of Science (Honours) in Computing SG_KSODV_K08 201800 Level 8 Honours Degree Add-on in Software Development SG_KSFTD_K08 201800 Bachelor of Science (Honours) in Computing in Software Development (Add On) SG_KSECU_E08 201800 Certificate in Secure IT and Deep/Machine Learning SG_KSFTD_K08 201900 Bachelor of Science (Honours) in Computing in Software Development (Add On) SG_KSODV_K08 201900 Level 8 Honours Degree Add-on in Software Development SG_KSMAR_H08 201900 Bachelor of Science (Honours) in Computing in Smart Technologies SG_KSODV_H08 201900 Bachelor of Science (Honours) in Computing in Software Development SG_KCMPU_H08 201900 Bachelor of Science (Honours) in Computing SG_KCMPU_H08 202000 Bachelor of Science (Honours) in Computing SG_KSODV_H08 202000 Bachelor of Science (Honours) in Computing in Software Development SG_KSFTD_K08 202000 Bachelor of Science (Honours) in Computing in Software Development (Add On) SG_KSODV_K08 202000 Level 8 Honours Degree Add-on in Software Development SG_KSOFT_E08 202000 Certificate in Software Development SG_KSMAR_H08 202000 Bachelor of Science (Honours) in Computing in Smart Technologies SG_KSODV_H08 202100 Bachelor of Science (Honours) in Computing in Software Development SG_KCMPU_H08 202100 Bachelor of Science (Honours) in Computing SG_KSMAR_H08 202100 Bachelor of Science (Honours) in Computing in Smart Technologies SG_KSODV_H08 202200 Bachelor of Science (Honours) in Computing in Software Development SG_KSFTD_K08 202200 Bachelor of Science (Honours) in Computing in Software Development (Add-on) SG_KSODV_K08 202200 Bachelor of Science (Honours) in Computing in Software Development (Add-on) SG_KCMPU_H08 202200 Bachelor of Science (Honours) in Computing
Description

The module is intended to help students understand the range of techniques deploying in Machine/Deep learning environments. It will introduce students to neural networks, training sets and how to study the input/output of a machine learning system.

Learning Outcomes

On completion of this module the learner will/should be able to;

1.

Obtain an understanding of machine learning approaches and neural networks.

2.

Examine and distinguish the areas of supervised and unsupervised machine learning.

3.

Discuss the relationships between training set, test set, generalisation, cross validation.

4.

Utilise data mining and appropriate machine learning techniques to solve real problems.

Teaching and Learning Strategies

A practical approach to teaching and learning will be used. Problem-based learning will be used where possible. The one hour lecture will be used to introduce core concepts about the issue of Machine Learning, the different algorithms that are utilised. The lab practicals will be used to apply the concepts talked about in the lectures, to train and implement a neural net.

Module Assessment Strategies

The students will be assessed by a final exam contributing to 60% of their final grade. An ongoing project will be submitted before the end of term and will consist of implementing and teaching a neural net. The student will then see the results of their trained neural net and how it will make conclusions on unfamiliar sources.

Repeat Assessments

Repeat exam and/or project.

Indicative Syllabus

Obtain an understanding of machine learning approaches and neural networks.

  • Introduction to Neural Networks.
  • Discuss machine learning techniques and when it is appropriate to use each one.
  • Decision trees.
  • K-Nearest Neighbour.
  • Support Vector Machines.

Examine and distinguish the areas of supervised and unsupervised machine learning.

  • An unsupervised learning algorithm such as PageRank.
  • Discrete/continuous types of Machine Learning.
  • Supervised/unsupervised learning.

Discuss the relationships between training set, test set, generalisation, cross validation.

  • Training set.
  • Test set.
  • Generalisation.
  • Cross validation. 

Utilise data mining and appropriate machine learning techniques to solve real problems.

  • Cloud-based tools for performing machine learning techniques.
  • An appropriate programming language for Machine Learning e.g. Python.
  • Building a neural net using a chosen training set and testing.

Coursework & Assessment Breakdown

End of Semester / Year Formal Exam
100 %

Coursework Assessment

Title Type Form Percent Week Learning Outcomes Assessed
1 Machine Learning Project Coursework Assessment Project 40 % OnGoing 2,3,4
             
             

End of Semester / Year Assessment

Title Type Form Percent Week Learning Outcomes Assessed
1 Final Exam Final Exam Closed Book Exam 60 % End of Semester 1,2,3
             
             

Full Time Mode Workload


Type Location Description Hours Frequency Avg Workload
Lecture Lecture Theatre Lecture 1 Weekly 1.00
Practical / Laboratory Computer Laboratory Practical 2 Weekly 2.00
Independent Learning Not Specified Independent Learning 4 Weekly 4.00
Total Full Time Average Weekly Learner Contact Time 3.00 Hours

Online Learning Mode Workload


Type Location Description Hours Frequency Avg Workload
Online Lecture Distance Learning Suite Online Lecture 1.5 Weekly 1.50
Directed Learning Not Specified Directed Learning 1.12 Weekly 1.12
Independent Learning Not Specified Independent Learning 4.5 Weekly 4.50
Total Online Learning Average Weekly Learner Contact Time 2.62 Hours

Required & Recommended Book List

Recommended Reading
2013-06-24 An Introduction to Statistical Learning: with Applications in R (Springer Texts in Statistics) Springer

An Introduction to Statistical Learning provides an accessible overview of the field of statistical learning, an essential toolset for making sense of the vast and complex data sets that have emerged in fields ranging from biology to finance to marketing to astrophysics in the past twenty years. This book presents some of the most important modeling and prediction techniques, along with relevant applications. Topics include linear regression, classification, resampling methods, shrinkage approaches, tree-based methods, support vector machines, clustering, and more. Color graphics and real-world examples are used to illustrate the methods presented. Since the goal of this textbook is to facilitate the use of these statistical learning techniques by practitioners in science, industry, and other fields, each chapter contains a tutorial on implementing the analyses and methods presented in R, an extremely popular open source statistical software platform.

Two of the authors co-wrote The Elements of Statistical Learning (Hastie, Tibshirani and Friedman, 2nd edition 2009), a popular reference book for statistics and machine learning researchers. An Introduction to Statistical Learning covers many of the same topics, but at a level accessible to a much broader audience. This book is targeted at statisticians and non-statisticians alike who wish to use cutting-edge statistical learning techniques to analyze their data. The text assumes only a previous course in linear regression and no knowledge of matrix algebra.

Recommended Reading
2015-09-23 Python Machine Learning Packt Publishing

Unlock deeper insights into Machine Leaning with this vital guide to cutting-edge predictive analytics

About This Book

  • Leverage Pythons most powerful open-source libraries for deep learning, data wrangling, and data visualization
  • Learn effective strategies and best practices to improve and optimize machine learning systems and algorithms
  • Ask and answer tough questions of your data with robust statistical models, built for a range of datasets

Who This Book Is For

If you want to find out how to use Python to start answering critical questions of your data, pick up Python Machine Learning whether you want to get started from scratch or want to extend your data science knowledge, this is an essential and unmissable resource.

What You Will Learn

  • Explore how to use different machine learning models to ask different questions of your data
  • Learn how to build neural networks using Keras and Theano
  • Find out how to write clean and elegant Python code that will optimize the strength of your algorithms
  • Discover how to embed your machine learning model in a web application for increased accessibility
  • Predict continuous target outcomes using regression analysis
  • Uncover hidden patterns and structures in data with clustering
  • Organize data using effective pre-processing techniques
  • Get to grips with sentiment analysis to delve deeper into textual and social media data

In Detail

Machine learning and predictive analytics are transforming the way businesses and other organizations operate. Being able to understand trends and patterns in complex data is critical to success, becoming one of the key strategies for unlocking growth in a challenging contemporary marketplace. Python can help you deliver key insights into your data its unique capabilities as a language let you build sophisticated algorithms and statistical models that can reveal new perspectives and answer key questions that are vital for success.

Python Machine Learning gives you access to the world of predictive analytics and demonstrates why Python is one of the worlds leading data science languages. If you want to ask better questions of data, or need to improve and extend the capabilities of your machine learning systems, this practical data science book is invaluable. Covering a wide range of powerful Python libraries, including scikit-learn, Theano, and Keras, and featuring guidance and tips on everything from sentiment analysis to neural networks, youll soon be able to answer some of the most important questions facing you and your organization.

Style and approach

Python Machine Learning connects the fundamental theoretical principles behind machine learning to their practical application in a way that focuses you on asking and answering the right questions. It walks you through the key elements of Python and its powerful machine learning libraries, while demonstrating how to get to grips with a range of statistical models.

Recommended Reading
2017-03-24 Hands-On Machine Learning with Scikit-Learn and TensorFlow O′Reilly
ISBN 1491962291 ISBN-13 9781491962299

Module Resources

Journal Resources

---

URL Resources

---

Other Resources

---

Additional Information

---