MATH 3035 Applied Machine Learning

This course introduces machine learning, specifically focused on neural networks, viewed from both theoretical and practical perspectives. The course also provides perspectives on modern trends in computer architecture by consideration of FPGAs, GPUs, TPUs, and the impact of the growth of machine learning on the evolution of hardware technology. Principles of machine learning covered include supervised and unsupervised learning, training, testing, cross-validation, overfitting, generalization and the bias-variance tradeoff; neural network architectures including deep learning, CNNs and autoencoders; loss functions and backpropagation for training. Students use the Python PyTorch library to design and implement machine learning algorithms. Students also undertake design projects using FPGA boards that involve writing HDL code. Prerequisite(s): MATH 3072 and MATH 3033.

Credits

3