Schedule
BIOE 488
Week 1
Lecture | Intro to BIOE 488 |
Lab | HAL Tutorial; GIT for Labs and MPs; Python basic tutorial |
Machine Problem |
Week 2
Lecture | Python functions, optional arguments, lists and tuples; Numpy functions |
Lab | Medical image formats; Loading and visualizing images |
Machine Problem |
Week 3
Lecture | Elements of a CPU, basic computation, Pipelining |
Lab | Vectorization; Vectorized operations in Numpy |
Machine Problem |
Week 4
Lecture | Memory hierarchies; Caches |
Lab | Convolutions (1-D, 2-D) |
Machine Problem | MP1 release - 1D, 2D convolutions and edge detection |
Week 5
Lecture | Week 5 Modern multicore processors and architectures |
Lab | Image deconvolution intro |
Machine Problem |
Week 6
Lecture | Threads and processes |
Lab | 3D Convolution & Richardson Lucy Algorithm |
Machine Problem | MP2 release - 3D conv and RL for a medical image |
Week 7
Lecture | Integer and floating-point representations |
Lab | Numerical representation errors; Algorithm speedup |
Machine Problem |
Week 8
Lecture | Parallel programming concepts; Functional vs data parallelism |
Lab | Python multiprocessing module |
Machine Problem | MP3 release - parallel RL algorithm on multiple images |
Week 9
Lecture | GPU introduction |
Lab | Numba decorators for parallel and GPU computing |
Machine Problem |
Week 10
Lecture | Implementing parallel algorithms in a GPU |
Lab | 3D conv in GPU |
Machine Problem | MP4 release - 3D conv in GPU |
Week 11
Lecture | Intro to Tensorflow |
Lab | TF tutorial; How convolutions work in TF |
Machine Problem |
Week 12
Lecture | Intro to linear regressionML workflow |
Lab | Training, testing ML models, metrics, visualizing loss |
Machine Problem | MP5 release - linear regression in TF |
Week 13
Lecture | Fall Break |
Lab | Take a break |
Machine Problem | Sleep |
Week 14
Lecture | Convolutional Neural Net Intro |
Lab | CNN example in TF, tensorboard |
Machine Problem |
Week 15
Lecture | Final Quiz |
Lab | Final Quiz |
Machine Problem |