Detecting Deep Learning Software Defects
Project Description

Deep learning is an emerging computational paradigm widely adopted for smart applications, including autonomous cars, financial technologies, facial identity and data analytics. Recent findings at Stack Overflow and Github reveal that software defects of such applications are common. Yet, such defects are difficult to detect and locate due to the stochastic nature of deep learning networks.

Supervisor
CHEUNG Shing Chi
Quota
4
Course type
UROP1000
UROP1100
UROP2100
UROP3100
UROP4100
Applicant's Roles

Students participating in this project should be competent in Python and TensorFlow programming. They must have a good knowledge of machine learning, in particular, various deep learning models. Students will help construct a bug data set and tests to validate these bugs. They will conduct research to develop automated bug detection techniques for deep learning applications, and even repair the detected bugs automatically.

Pre-requisite: This project requires sound knowledge of machine learning and programming proficiency. Applicants are expected to have taken COMP4211 (or its equivalence) and COMP2012.

Applicant's Learning Objectives

- Advance knowledge in open source deep learning projects.
- Improve competence in Python and TensorFlow programming.
- Gain knowledge of testing deep learning applications.
- Learn and apply research methodology.
- Learn how to conduct experimentation.

Complexity of the project
Challenging