This is a common area for all 2020 Summer School Offering 2 course registrants. Everyone that is registered in a Summer School 2020 Offering 2 course is automatically granted access to this common area.
- Teacher: Ed Armstrong
- Teacher: Tyler Collins
- Teacher: Baolai Ge
- Teacher: Jose Sergio Hleap
- Teacher: Jinhui Qin
- Teacher: Isaac Ye
In this course, students will learn the high level, high performance language julia from the basics of programming features to advanced topics on parallel and distributed computing in several sessions.
Julia is getting increasingly popular for scientific computing. One may use it for prototyping as Matlab, R and Python for productivity, while gain the same performance as compiled languages such as C/C++ and Fortran. The language is designed for both prototyping and performance, as well as simplicity.
This is an introductory course on julia. Students will be able to get started quickly with the basics, in comparison with other similar languages such as Matlab, R, Python and Fortran and move on to learn how to write code that can run in parallel on multi-core and cluster systems through examples.
This course is delivered in several sessions through live classes via Zoom and self-paced learning. Students who missed some of the live classes at scheduled time slots may learn at their own pace. Students may ask questions and get answers in the forum for the course.
Students who complete the course activities including quiz and exercises will receive a certificate for the completion of the courses. Attendance and the completion of the course activities are recorded.
- Teacher: Ed Armstrong
- Teacher: Baolai Ge
Python is an interpreted, high-level, general-purpose programming language. Created by Guido van Rossum and first released in 1991. Python's design philosophy emphasises code readability, based on language constructs and object-oriented approach. This helps programmers to write clear, logical code for small and large-scale projects (wikipedia).
In this edition of SHARCNET summer school, we will be teaching fundamentals of Python programming. It will be modularized so you don't have to take the novice modules if you are already comfortable with this programming language.
- Teacher: Tyler Collins
- Teacher: Jose Sergio Hleap
This is a two-day course on Machine Learning. It consists of two major subjects: Machine Learning in Data Science and Deep Learning towards Artificial Intelligence.
Day 1 will provide an introduction to Machine Learning in Data Analytics. Following an overview of Machine Learning in Data Science, we will learn from examples for a full cycle of Machine Learning with real data, including data cleansing, data exploration, and a typical Machine Learning workflow. We will use Pandas and Scikit-Learn APIs in Python with hands-on practices through Jupyter Notebook.
Day 2 will provide an overview of Artificial Intelligence with a focus on Deep Learning (DL) and Deep Neural Networks (DNN). We will have hands-on tutorials on two major different DL frameworks - Tensorflow and PyTorch by running CIFAR-10 image classification example on Compute Canada system. The hands-on labs will focus on how to run a sample case with different hardware resources such as a single-GPU, multi-GPU and multi-GPU nodes while the basic Tensorflow/PyTorch programming is briefly introduced.
Instructors: Jinhui Qin, SHARCNET / Western University (day 1) and Isaac Ye, SHARCNET / York University (day 2)
Prerequisites: Some programming experience in Python and background in statistics would be helpful but not mandatory.
- Teacher: Jinhui Qin
- Teacher: Isaac Ye