Resources

- Main Textbook (FCML) Homepage
*Bayesian Reasoning and Machine Learning*(BRML; Barber) (pdf, homepage)- Chapter 1 of
*Machine Learning: A Probabilistic Perspective*(Murphy)

- FCML Example MATLAB/Octave Code and Data (Dropbox)
- FCML Example MATLAB/Octave and (limited) Python Code (GitHub)
- BRML Example Code (MATLAB/Octave)
- BRML Example Code (MATLAB/Octave)

- Getting Started with Python for Science
- You may want to start here, even if you’ve used Python before, as doing scientific computing can feel rather different than using Python for generic coding tasks. It walks you through getting a Scientific Computing “ecosystem” set up before going over language basics, and then reviewing the key functions in the core scientific computing libraries

- Anaconda (recommended if you are new to Python)
- A self-contained Python distribution that helps with installation and management of libraries like
`numpy`

,`scipy`

,`pandas`

and`matplotlib`

- A self-contained Python distribution that helps with installation and management of libraries like
- Spyder IDE
- An “interactive development environment”; basically, a fancy text editor that understands Python code (analogous to what RStudio does for R if you’ve used that)

- PyCharm
- An alternative IDE (a commercial product but with a free version). Pick whichever you prefer.

- Python Homepage
- Python Quick-Reference (with representative code samples)
- A fairly in-depth self-teaching “book” that starts from scratch
- If you want a more thorough and detailed “course” on coding in Python, you could use this, though I’m hoping that most people in this course will not need this much detail

- Getting Started with
`numpy`

- Overlaps with the “Getting Started” link above, but a bit more depth into
`numpy`

specifically.

- Overlaps with the “Getting Started” link above, but a bit more depth into