BIOS691, Spring 2025
Course Title: Deep Learning with R
Instructor: Mikhail Dozmorov
Department: Biostatistics, VCU
Credits: 3
Duration: 15 weeks (2 lectures per week, 1 hour 20 minutes each)
Course Overview
Deep learning is an actively growing machine learning field for many research and application areas, such as computer vision, speech recognition, time series forecasting. It is becoming the state-of-the-art approach among machine learning methods, especially suitable for extracting useful information from large, unstructured datasets.
This course is an introduction to deep learning theory and practice. It will cover the basics of neural network architectures, main statistical concepts behind training neural networks, and implementation aspects. The main focus will be on programming deep neural networks using TensorFlow and its Keras front-end in R, although the knowledge will also be useful for Python practitioners. The goal of this course is to build a foundation for general understanding of deep learning and hands-on implementation of main types of neural network architectures, and provide material for further development.
The class will be conducted in person and include lecture and coding parts. Course material will be publicly available. The syllabus is subject to change. Observe the VCU Honor Pledge in any class- and homework activities.
Prerequisites
- Book
- Deep learning with R by François Chollet (the creator of Keras) with J. J. Allaire (the founder of RStudio and the author of the R interfaces to Keras and TensorFlow)
- Skills
- Working knowledge of R, familiarity with RStudio programming environment, command line, GitHub (BIOS524)
- Basic linear algebra: vectors, matrices, determinants
- Simple calculus: derivatives, integrals, gradients
- Some probability theory: probability, random variables, distributions
- Basic statistics knowledge: descriptive statistics, estimators.
- (Linear) modeling
- Hardware
- A laptop, Mac or Linux OSs are recommended. GPU (graphics processing unit) is not required
- Software
- R for Windows or Mac. Review Getting Used to R, RStudio, and RMarkdown book, if necessary
- RStudio Desktop
Course Objectives
- Understand the fundamental concepts of deep learning and its applications
- Implement deep learning models in R using Keras and TensorFlow
- Explore key architectures like convolutional and recurrent neural networks
- Apply deep learning techniques to text, sequences, and images
- Work with generative models such as variational autoencoders and GANs
Tentative schedule
Week 1: Introduction to Deep Learning
Week 2: Mathematical Foundations
Week 3: Neural Network Mechanics
Week 4: Neural Networks in Practice
Week 5: Advanced Classification and Regression
Week 6: Machine Learning Fundamentals
Week 7: Data Preprocessing & Overfitting
Week 8: Convolutional Neural Networks (CNNs)
Week 9: Transfer Learning and Visualization
Week 10: Text and Sequence Data
Week 11: Advanced RNNs and Sequence Processing
Week 12: Advanced Architectures
Week 13: Best Practices and Hyperparameter Tuning
Week 14: Generative Models
Week 15: Variational Autoencoders and GANs
Grading
- Assignments (60%): Regular homework assignments based on the book and additional datasets
- Participation (40%): Attendance and active participation in class discussions and labs