/Duke-MLSS-2018

Duke Machine Learning Summer School 2018

Primary LanguageJupyter Notebook

Duke Machine Learning Summer School 2018

Welcome to the Duke-Tsinghua Machine Learning Summer School 2018! This repository will contain the lecture materials and assignments for the hands-on TensorFlow sessions.

While there is no hard requirement to attend these sessions or complete the exercises, we do strongly recommend them! Many of the machine learning concepts being covered thoughout the week are best learned and reinforced by implementing the ideas in code yourself. Also, if you are a Duke student hoping for a certification of completion of the course on your transcript, the assignments are how we determine if you pass. Please come ready to code!

Before you arrive

Required

Please have Python 3+ and TensorFlow installed. We will be doing a lot of our development in IPython notebooks, so you'll likely want to have Jupyter installed as well, or have access to Colab. If you don't already have the aforementioned software installed, please go through the notebook labeled 00A_TensorFlow_Installation.ipynb. Installing these tools should take about 5-10 minutes.

Optional

Given the pace of the course, we'll be assuming some background knowledge for scientific computing in Python. If you are unfamiliar with IPython notebooks or Python coding environments, a brief introduction can be found in 00B_Coding_Environments.ipynb.

If you haven't used Python before, or want a refresher, we recommend Python Like You Mean It, by Ryan Soklaski. This free e-book consists of five short modules introducing Python for scientific computing and data analysis. Modules 1 and 2, on installing Python and Python essentials, will be especially useful. Module 3, which concerns the manipulation of matrices and vectors in Python, is very relevant but optional reading, as we will also be covering those topics in our sessions.

Additionally, we'll be releasing new lecture materials to this GitHub repository each day of the course. If you're familiar with Git, the most seamless way to keep your files up-to-date is by cloning/forking this repository and pulling. If you need a primer on Git, there's one available in 00C_Git_Basics.ipynb, but learning how to use Git isn't required; we'll distribute the materials in other ways as well.