Dynamic Programming: Applications In Machine Learning and Genomics
Offered By: University of California, San Diego via edX
Course Description
Overview
If you look at two genes that serve the same purpose in two different species, how can you rigorously compare these genes in order to see how they have evolved away from each other?
In the first part of the course, part of the Algorithms and Data Structures MicroMasters program, we will see how the dynamic programming paradigm can be used to solve a variety of different questions related to pairwise and multiple string comparison in order to discover evolutionary histories.
In the second part of the course, we will see how a powerful machine learning approach, using a Hidden Markov Model, can dig deeper and find relationships between less obviously related sequences, such as areas of the rapidly mutating HIV genome.
Syllabus
Week 1: Pairwise Sequence Alignment
A review of dynamic programming, and applying it to basic string comparison algorithms.
Week 2: Advanced Sequence Alignment
Learn how to generalize your dynamic programming algorithm to handle a number of different cases, including the alignment of multiple strings.
Week 3: Introduction to Hidden Markov Models
Learn what a Hidden Markov model is and how to find the most likely sequence of events given a collection of outcomes and limited information.
Week 4: Machine Learning in Sequence Alignment
Formulate sequence alignment using a Hidden Markov model, and then generalize this model in order to obtain even more accurate alignments.
Taught by
Phillip Compeau and Pavel Pevzner
Tags
Related Courses
Algorithmic Thinking (Part 2)Rice University via Coursera Greedy Algorithms, Minimum Spanning Trees, and Dynamic Programming
Stanford University via Coursera Bioinformatics: Life Sciences on Your Computer
Johns Hopkins University via Coursera Computational Biology
Brilliant Comparing Genes, Proteins, and Genomes (Bioinformatics III)
University of California, San Diego via Coursera