University of Waterloo COVID-19 update

Please see the University of Waterloo’s frequently asked questions for information about COVID-19 and how it has affected university operations.

Please visit the list of modified services if you have questions about university services.

Although the University of Waterloo is closed for in-person events until further notice, many virtual events and presentations of interest to computer scientists are taking place each week at the Cheriton School of Computer Science. Please check out what our students and faculty are doing.

2016 Cheriton Research SymposiumExport this event to calendar

Friday, September 16, 2016 — 10:00 AM to 4:30 PM EDT

2016 Cheriton Research Symposium poster

The Cheriton School of Computer Science will hold its annual Cheriton Research Symposium September 16 in the Davis Centre.

This year's symposium will consist of talks by Pascal Poupart, David Cheriton, and Michael Godfrey

Posters by graduate students including Cheriton ​Graduate Student Scholarship recipients will be on display in the Great Hall, Davis Centre from 10:00 am to 3:00 pm.

Schedule of the day

Time Description

10 a.m. - 3 p.m.

DC Great Hall - Poster Session
10:30 a.m.

DC 1302 - Mark Giesbrecht — Welcome and Opening Remarks

10:30 a.m. -
11:30 a.m.

DC 1302 - Pascal Poupart — Leveraging Data Science to Directly Learn Tractable Models for Probabilistic Inference and Decision Making

Most problems in artificial intelligence are NP-hard and therefore a significant amount of work has been devoted to exploit problem-specific structure or design approximate algorithms with good scalability properties. With the rise of data science, a paradigm shift is taking place. Instead of having a domain expert specify a model for which reasoning is intractable, machine learning allows us to learn tractable models directly from data. The reality is that most models specified by domain experts are approximate while models obtained from data can be more accurate. Furthermore, by employing a hierarchy of models that equate representation complexity with reasoning complexity, it is possible to learn models whose complexity increases with the amount of data and therefore remain tractable. For example, inference in probabilistic graphical models such as Bayesian networks and Markov networks is #P-complete. However if we estimate sum-product networks (equivalent to Bayesian and Markov networks) directly from data, exact probabilistic inference can be done in linear time with respect to the size of the network. In this talk, I will explain how to learn sum-product networks from large streaming datasets in an online and distributed fashion for a wide range of applications including language modelling, handwriting recognition, recommender systems, communication networks, classification and time-series prediction. I will also explain how to learn extensions of sum-product networks for tractable decision making in various diagnosis tasks. 

12 p.m. -
1 p.m.

DC 1301 - Lunch
3 p.m. - 3:45 p.m.

DC 1302 - David CheritonTeaching Computational (Systems) Thinking and Computer Systems in the Real World

3:45 p.m. - 4:30 p.m.

DC 1302 - Michael GodfreyDoes your mother know you're here? Understanding software artifact provenance

"Provenance" is a term from archaeology and the arts that refers to a set of evidence supporting the claimed origin of an artifact, such as a piece of pottery or an oil painting. Recently, the term has been used in an electronic context --- "digital provenance" --- to indicate an artifact such as a software component or set of data, really is what it claims to be and should be permitted to be used within sensitive operating environments.

In this talk, I suggest how we can stretch the definition further to encompass "software artifact provenance".  That is, for a given software development artifact such as a feature, a source code snippet, or a third-party library, we might want to ask the question: Where did this come from and what is the evidence?  For example, one might wonder how a given feature was decided upon during a mailing list discussion, how it manifested itself in the code, and how it has been maintained since the initial implementation. For a given code snippet, one might wonder about its history within the design of the system: Was it designed to fit exactly here, or was it moved or copied from elsewhere? And for a given third-party jar file that has been included in a Java system distribution, one might ask: What version of the library is this, and how do we know?
In this talk I will sketch some of the ideas behind this work, and show how we might phrase some of these questions in terms of concrete criteria. In particular, we will concentrate on simple techniques for reducing a large search space of candidates down to a small handful that can be examined in detail using more expensive techniques. A concrete example of investigating third-party libraries in Java systems will be presented.

Poster session winner will be announced after the last talk of the day.

Previous symposiums

  1. 2020 (114)
    1. June (13)
    2. May (17)
    3. April (20)
    4. March (17)
    5. February (25)
    6. January (22)
  2. 2019 (255)
    1. December (21)
    2. November (25)
    3. October (16)
    4. September (20)
    5. August (18)
    6. July (12)
    7. June (23)
    8. May (23)
    9. April (32)
    10. March (25)
    11. February (16)
    12. January (24)
  3. 2018 (220)
  4. 2017 (36)
  5. 2016 (21)
  6. 2015 (36)
  7. 2014 (33)
  8. 2013 (23)
  9. 2012 (4)
  10. 2011 (1)
  11. 2010 (1)
  12. 2009 (1)
  13. 2008 (1)