By Harry Keller
Editor, Science Education
[Note: Harry, who holds a BS in chemistry from the California Institute of Techology and a PhD in analytical chemistry from Columbia University, is sharing his first MOOC experience in this series. See part 1, 2, 3 and 5. -Editor]
November 12, 2013
Week six was not an easy week. Some emergencies took away time I had expected to spend on the course. The material was interesting but difficult. The pace was rapid.
This week, we learned about the crucial issue of overfitting in machine learning and about its cure, regularization. These are not topics for the faint at heart because they go deep into the world of machine learning and involve a great deal of mathematics.
The homework was both hard and easy. Once again, I was tested on my programming ability more than on my understanding of the topics in a few of the questions. I’m not sure how one might create a course on machine learning that did not include writing software because machine learning, by definition, uses computer algorithms.
I find the homework deadlines both useful and frustrating. Were it not for the deadlines, I’d have plenty of higher-priority things to do and probably never get it done. However, I constantly have to deal with being unable to plumb the depths of the material or even complete the homework satisfactorily in the time available. This course certainly does not allow one to proceed at one’s own pace, although it does allow you to set your own schedule within the course calendar.
The mathematics continues to use the full panoply of mathematics symbols and expressions. Do not go near this course without a very good background in advanced mathematics: calculus, set theory, matrix algebra, and more.
I feel that I’m being asked to learn much more than I have to learn. This is supposed to be an introduction to machine learning. I’m rather intimidated by the prospect of an advanced course. Yet, the pearls of learning are there to be gathered, scattered among all of the mathematics, abstruse concepts, and software writing. This is not a mere aggregation of tools. This course provides a sound mathematical footing for every tool provided — if you can hack the math.
I had absolutely no time to even peek at the discussions this week but didn’t really have to because the material was clear enough, and the homework was also clear while being mostly tough. One or two questions were fairly easy to answer, but the rest took some work.
Looking at the answer key, I discovered that I shouldn’t have changed my answer to one of the questions, but I do not understand why. I still think I had the right answer the second time.
The final grade on the MOOC is not in yet, but I’m guaranteed a homework grade of at least a B and a course grade of a C at this point. The next lecture, on validation, looks like it will be one of the most valuable yet. I just wish I knew that I am learning everything well. With this sort of MOOC, that’s a real challenge.
[Update 12/8/13 – Harry submitted the following report on 11/18/13, but I didn’t see it in my mailbox until this morning. My apologies to Harry and to you, the readers. -Editor]
November 18, 2013
The lectures this week were very informative. The homework was another matter entirely. Possibly, I’ve topped out here, but there was a significant issue that should be addressed.
The course moved on to “support vector machines” or SVM. Three homework problems required use of a quadratic programming (QP) package. Any of you who took an MBA may remember linear programming (LP) from your operations research (OR) course. As you may imagine, QP is much more complex than LP. However, that is not the problem here. In my opinion, this course has a design flaw at this point as a MOOC.
Students should be able to find and use resources necessary for completion of the course. I did not see any mention of QP in the course write-up. Finding a QP package that works with my computer turned out the be too time-consuming (one that I found only works on Windows). Then, I would have to go through the installation process, learn to use the package with any quirks and odd interface pieces, and, finally, adapt it to the particular homework questions. So, I just did not do those three questions at all.
Five of the remaining questions required writing and debugging software. I did the writing and some cursory testing, but not the deep testing necessary for guaranteed success. My score reflected more on my software writing than on my understanding of content. Finally, two questions involved doing some mathematics. One of these I was able to complete quite satisfactorily. The other did not result in any of the answers provided. I reran my analysis several times and even dropped some of the assumptions I had made to see if I could get the answers to fit. The math gave a quartic formula to solve but with no odd powers. That form fit the multiple-choice answers nicely, but the numbers did not. Despite many reviews of the math, I was unable to make the match and so did not get that question correct either.
Obviously, I’m missing something but have no way to find out what. The discussion group did not help at all and seems to be rather inactive now. Does anyone remain in the MOOC? Can’t tell for sure, but I expect that the numbers are much smaller now than at the beginning.
Well, there’s just one more homework assignment. The next two lectures are on “kernel methods” and “radial basis techniques.” I don’t recognize either of those terms but soon will know what they mean. That will end week #8. Week #9 is the final exam hand-out week, and week #10 is the week for turning in the exam. Even with zeroes on both the last homework and the final, I pass with a C. I really don’t care about the grade because I’m auditing the course.
I have two purposes in taking this course. One is to learn about machine learning. The other is to experience a MOOC first-hand, one that involved a “hard” subject such as science, engineering, or math. I have accomplished my goals and will register one more entry in this diary of a Caltech MOOC if I can make it through the last two lectures. I don’t expect them to be easy based on the synopsis of their content. I hope at least to do the last homework. The final exam seems pointless, but if I can look at it, I will and will see if it reflects well what I should have learned.
Filed under: MOOC |