Fall 2026 – PHS 567 Machine learning with applications to omics data

Welcome to our Machine Learning/Deep Learning course in the academic year 2023-2024. In the Fall semester, we cover classical machine learning, and in the Spring semester, we cover deep learning (primarily focused on neural networks). The current course on data mining was originally developed in 2016, and this is its 8th edition. The course material is getting closer to its stable form. This year’s course is jointly taught with Prof. Sen Yang.

Key References

This course covers the basics of statistical learning, emphasizing its application to genomic data. As a first course in statistical learning, we will largely follow the flow of the first two books (both of which are free for download! The 2nd book ISL is a baby version of the 1st book ESL):
1. The Elements of Statistical Learning. (ESL) Authors: Hastie T., Tibshirani R. and Friedman J.
2. An Introduction of Statistical Learning with Applications in R. (ISL)  Authors: James, G., Witten, D., Hastie, T., Tibshirani, R (ps: the 2nd edition of the book is out and free to download).

A few topics covered in 1 and 2 appear to be obsolete (e.g., boosting algorithms and support vector machines), so we will supplement with more up-to-date materials from other books or original papers.

A few other references are helpful to have, including
3. Deep Learning by Ian Goodfellow (the first section of the book talks about the math background information as well as classical machine learning)
4. Deep Medicine by Eric Topol (This is a non-technical book, talking about numerous cool applications of AI to medicine).
5. Statistical Learning with Sparsity (This is a technical book, covering the theoretical aspects of LASSO and its further extensions)

Covered topics:

Tentative topics include classification, resampling methods, linear models with regularization (e.g., LASSO), Bayesian variable selection, additive models, classification and regression trees, random forests, support vector machines, boosting, and basics of unsupervised learning, such as k-means clustering, hierarchical clustering, associative rules, factor analysis, and nonnegative matrix factorization.

We will discuss the application of machine learning methods to genomics, including (but not limited to) variant annotation, genetic association analysis, fine mapping, risk prediction, variant calling, and filtering from next-generation sequencing data.

We will illustrate examples with Python (scikit learn). 

Lecture notes:

  1. Introduction: slides (ppt)

PHS 597 Deep Learning with Applications to Genomics and Health Informatics

Deep learning is called the “new electricity” for modern science and technology. Getting a good understanding of modern deep learning methods would be critical for statisticians who are interested in “big data” research.

This course covers basic theory and applications for modern deep learning methods in genomics and health informatics. We will survey basic theory for deep neural networks, convoluted neural networks, sequence models, generative adversarial networks, etc.

We will not follow any textbooks, but a majority of the fundamental deep learning stuff will be taken from the following sources:
1. Deep Learning book by Ian Goodfellow and Yoshua Bengio and Aaron Courville (link)
2. Deep Learning with Python book by Francois Chollet (link)
3. Deep Learning with R book also by Francois Chollet (link)
Both books can be read for free online. In the meantime, many new topics will be drawn directly from research papers.

The programming language used in this course will be Python or R. I am more experienced with deep learning modeling in Python. Yet, more recently, much progress has been made adapting Torch or TensorFlow to R. In this semester, we will still stick with Python for most of the illustrations.

This is the 3rd time we are teaching this course. Yet, the course material is still very much under development, so you should anticipate major changes in the course material from previous years.

An Efficient R Package to Annotate/Query Sequence Datasets

Along with Xiaowei Zhan, we got our software article accepted recently at Genetic Epidemiology. Our article describes a new R package SEQMINER (in our view) for annotating and querying files of sequence variants, i.e. VCF/BCF files, files of summary association statistics, i.e. RAREMETAL/METAL files, as well as generic files that contains columns of genomic positions. This package provides a route of using R to process large scale datasets arising from statistical genetics studies. The software package can be found in https://cran.r-project.org/web/packages/seqminer/index.html

The software package does two things: annotating and querying sequence variants/summary association statistics. It implements a fully functional variant annotator. It supports both region based annotation (e.g. whether a given variant overlaps regions of biological interest, say a transcription factor binding site) and gene-based annotation (e.g. what kind of amino acid changes the mutation induces).

Another key feature for the package is that it enables random access to large scale datasets that are indexed. This is analogues to looking up the dictionary. If you want to look up the meaning of “zoo”, you would not start from “a”. You would resort to the index and search from “z”, “zo” etc. SEQMINER relies on tabix library to randomly retrieve genomic regions of interest from large scale datasets according to a pre-computed index. It does more than what tabix does: for datasets with complex structures, it parses the retrieved data, stores them in standard R objects and makes them ready for downstream analysis.

The package is very efficient and can handle the annotation of very large datasets on a single desktop machine with standard configurations. If you have genomic datasets that you want to analyze using R, and if it is cumbersome (or even impractical) to load the entire dataset into R, SEQMINER can be a good choice to start from.