Speaker: Dylan Turpin
Supervisors: Sven Dickinson, Mentor: Stavros Tsogkas
Title:Binary Networks for Sketch Recognition
Deep convolutional nets have shown impressive performance on many computer vision tasks, but can be resource-intensive due to their millions of floating point parameters. Binary CNNs, which limit parameters to +/-1, can sometimes achieve close to the same performance, while using a fraction of the memory and computing power. We aim to discover if binary nets are well-suited to particular kinds of input (e.g. binary sketches) and explore techniques for network binarization as well as the possibility of training binary nets from scratch without intermediate floating point values.
Speakers: Anthony Tam, Ivan Topolcic
Supervisor: Jennifer Campbell
Title: Creating a Matery-Based Learning Course within PCRS
In the current version of CSC108, many students work through the course without ever mastering the foundation concepts. A mastery-based self-paced version of CSC108 may help ensure students understand each topic, preventing them from struggling with later material that relies on early course content. This aids the university by potentially having stronger students completing the course and knowing exactly what topic to ask questions in when they needs help.
This course will live entirely within PCRS, which requires some significant back end and UI changes. The newly-developed additions to PCRS will allow for a prerequisite chain, increased analytics, and the ability for quizzes to be run in a separate secure instance of PCRS, with their marks imported into the open student instance.
The analytics will allow us to investigate the following:
- Do fewer students need to drop and retake?
- Can students with some programming experience work through the course on their own, allowing for more help to be given to beginner programmers?
- Does it help students learn better?
- Does it more accurately identify how well students are learning?
- With good analytics, will instructors be able to identify and aid at-risk students?
Speaker: Joshua Zung
Supervisor: Hirst Graeme Mentor: Sean Robertson
Title: Natural Language Processing for Digital Transcription of Medieval Latin Handwriting
This presentation discusses the application of Transkribus software to the auto-generation of transcriptions, and methods of transcription evaluation. Optical character recognition (OCR) is a growing area of machine learning research that has already helped digitize numerous print publications. But the branch of OCR associated with non-uniform writing, handwritten text recognition (HTR), faces additional challenges: words split over multiple lines, abbreviations, inconsistent letter formation and size, irregular slant, and individual handwriting styles. Preliminary results from the HTR training show a promising level of correctness in the area of medieval Latin legal documents.
Speaker: Shayan Kousha
Supervisor: Marsha Chechi, Mentor: Yi Li
Title: A Smart Tool for Effective Management of Software
Software version control systems, such as Git and SVN , are commonly used for hosting software development artifacts. They allow developers to periodically submit their ongoing work, storing it as an increment over a previous version. Such an increment is usually referred to as a commit. Commits are stored sequentially and ordered by their time stamps, so that it is convenient to trace back to any version in the history. However, the sequential and manually-managed organization of changes is inflexible and lacks support for many tasks that require high-level, semantic understanding of program functionality. Moreover, manually-managed change histories often mix together changes made for multiple development activities, such as feature implementations, bug fixes, and performance improvements, which is sub-optimal for many development scenarios. Therefore, it is necessary to be able to restructure change histories according to the specific development scenarios at hand. In particular, being able to group and collapse, categorize and split changes with precise semantic understanding can enable better project organization, easier code maintenance, and more effective history analysis. The aim of this project is to develop a user-friendly tool on top of an existing history slicing framework (https://bitbucket.org/liyistc/gitslice) to support aforementioned activities. The final product will be in the form of a plugin for IDEs or build chain tools to allow tight integration with the day-to-day software development process.