Stanford’s Machine Learning homework assignments were MATLAB/Octave-based programming assignments and multiple-choice review questions, seen here. On each retry of a problem set, question parameters and answer choices would change to thwart random-guessing strategies. Students can try review questions up to 100 times.