Educational Machine Learning Modules for Undergraduates in Cybersecurity
Machine learning resources have developed by leaps and bounds in recent years and have become pervasive in many fields, including the field of Cybersecurity. As such, it is important that machine learning applications be taught at the undergraduate level in the context of Cybersecurity to provide students with a competitive advantage that will be useful in industry. We are seeking to provide versatile module-based solutions that can either be integrated into existing security courses or stand alone. Several of these modules are currently in development, including a convolutional neural network (CNN) implementation for the classification of malware samples, an adversarial attack on that model in a later module by use of the fast gradient sign method (FGSM), followed by an adversarial training lab in order to harden machine learning models against such adversarial attacks. Students will use virtualization with Oracle’s VirtualBox to sandbox their experiments in a Linux environment. They will make use of Python to train and test their models, making use of the Keras, Tensorflow, and Scikit-learn libraries. These modules are intended to make applied machine learning knowledge accessible to undergraduates sooner than grad school, but may be used at higher levels or even by themselves. They are self-contained with the lectures and lab materials required for students to succeed as they gain valuable knowledge for their careers in Cybersecurity.