Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


Failed to load latest commit information.

UBC Scientific Software Seminar

The UBC Scientific Software Seminar is inspired by Software Carpentry and its goal is to help students, graduates, fellows and faculty at UBC develop software skills for science.

Winter 2017: Neural Networks and Deep Learning in Python


  • What are the learning goals?
    • To learn the basics of neural networks and deep learning
    • To master scikit-learn for solving machine learning problems
    • To master Python programming for scientific computing
    • To meet and collaborate with other students and faculty interested in scientific computing
  • What software tools are we going to use?
  • What scientific topics will we study?
  • Where do we start? What are the prerequisites?
    • UBCS3 Winter 2017 is a continuation of UBCS3 Fall 2016:
      • Machine learning fundamentals: regression, classification, clustering, and dimensionality reduction
      • Natural language processing
    • Calculus, linear algebra, and probability
  • Who is the target audience?
    • Everyone is invited!
    • If the outline above is at your level, perfect! Get ready to write a lot of code!
    • If the outline above seems too intimidating, come anyway! You'll learn things just by being exposed to new tools and ideas, and meeting new people!
    • If you have experience with all the topics outlined above, come anyway! You'll become more of an expert by participating as a helper/instructor!


Please join the mailing list to receive weekly updates about the seminar.

  • Week 1 - Friday January 20 - 1-2pm - UCLL 109 - [Notes]
    • Review: Simple machine learning problems and scikit-learn API * Regression, classification, clustering, and dimensionality reduction
    • Introduction to neural networks
  • Week 2 - Friday January 27 - 1-2pm - UCLL 109 - [Notes]
    • What is a neural network?
      • Definition, goals and challenges
    • Structure of neural networks
      • Neurons, layers, activations, weights and biases
    • Examples: Neural networks using scikit-learn
      • Digits dataset
  • Week 3 - Friday February 3 - 1-2pm - UCLL 109 - [Notes]
    • How to train an neural network
      • Layers, weights and biases
      • Training data and a cost function
      • Stochastic gradient descent and backpropagation
      • L2 regularization
    • A bad example of gradient descent
  • Week 4 - Friday February 10 - No meeting
  • Week 5 - Friday February 17 - No meeting
  • Reading Break
  • Week 6 - Friday March 3 - 1-2pm - UCLL 109 - [Notes] - (presented by @asberk)
    • Jupyter magics
    • Pythonic programming
    • Running stuff quickly
    • Fast computations in Python with Numba and Cython
  • Week 7 - Friday March 10 - 1-2pm - UCLL 109 - [Notes] - (presented by @asberk)
    • LogisticRegressor class
    • Setting alpha
    • Coordinate optimization
    • Exercises
  • Week 8 - Friday March 17 - 1-2pm - UCLL 109 - [Notes] - (presented by @sempwn)


UBC Scientific Software Seminar: Neural Networks and Deep Learning in Python






No releases published


No packages published