There are a few types of homework in the course – mathematical exercises, coding exercises and, preparation and delivery of course project.
|3||FOPPL IS, MH within Gibbs, and HMC Inference Engines||Yes|
|4||FOPPL Black-Box Variational Inference Engine||Yes|
|6||HOPPL SMC Inference Engine||Yes|
Note: the coding exercises are a self-reinforcing sequence of programming tasks that build on each other. It is strongly suggest that you work at your own pace ahead of the due dates. You may use any implementing language you wish, however, if you do not keep pace the complexity of the subsequent programming tasks will quickly become completely overwhelming.
Likewise the body of code developed should end up being extremely useful for completing your final projects so care and effort in producing high-quality code, above the standard required to “pass” will ultimately also be extremely beneficial to you.
We will use gradescope.ca for grading. Please use the entry code provided in the first lecture to associate yourself to the class, using the identity information requested in the slides.
The following is a collection of exercises that have been used in previous versions of the class and in other pedagogical settings. For students who choose Clojure as the implementing language, these exercises will be particularly helpful.
|1||Learning Clojure (worksheets)||No|
|2||Inference review (worksheets)||No|
|3||Learning Anglican (worksheets)||No|
|5||FOPPL Automatic differentiation System (toy)||No|