{"id":576,"date":"2012-07-09T21:22:23","date_gmt":"2012-07-09T19:22:23","guid":{"rendered":"http:\/\/blog.ulrichard.ch\/?p=576"},"modified":"2012-07-09T21:22:23","modified_gmt":"2012-07-09T19:22:23","slug":"machine-learning-class","status":"publish","type":"post","link":"https:\/\/ulrichard.ch\/blog\/?p=576","title":{"rendered":"machine learning class"},"content":{"rendered":"<p>Another one of these incredibly interesting online classes came to an end. <a href=\"http:\/\/class.coursera.org\/ml\">Machine learning<\/a> was one of the first two classes that started last fall. As I thought to make <a href=\"http:\/\/www.ai-class.com\" target=\"_blank\" rel=\"noopener\">AI<\/a> and <a href=\"http:\/\/class.coursera.org\/ml\">ML<\/a> in parallel would be too much, I decided for <a href=\"http:\/\/www.ai-class.com\">AI<\/a> with the intention to make <a href=\"http:\/\/class.coursera.org\/ml\">ML<\/a> later. The second round of <a href=\"http:\/\/class.coursera.org\/ml\">ML<\/a> was announced for January, but actually started in April. Andrew Ng from Stanford, who some people call a rock star in ML, thought the class. The videos were longer than what I was used to, and I downloaded them to my Android to watch them in the train to work. The homework consisted of review questions and work assignments for octave. The last time I did something with MatLab was more than ten years ago, and I remembered nothing of it.<\/p>\n<p>The class started with gradient descent and logistic regression. And almost everything that followed was compared against and related to them.<\/p>\n<p>I had some prior experience in ML, but no formal training. At TCG I learned the basics from a co worker. Then I implemented a document classification engine using an SVM. I read many books on the topic. Later I develpoed a prediction system for good days and locations for paragliding, again using an SVM as well as an evolutionary optimization.<!--more--><\/p>\n<p>The flightpred system was designed in a modular fasion, so that I could plug other learning algorithms to experiment with. I always wanted to experiment with <a href=\"http:\/\/en.wikipedia.org\/wiki\/Neural_network\" target=\"_blank\" rel=\"noopener\">Neural Networks<\/a>, and from all my reading I understood how they worked, but didn&#8217;t know where to start actually implementing. NN&#8217;s were covered in the class, and we implemented it with octave. So, when I find the time, I&#8217;ll add it to the flightpred system.<\/p>\n<p>My goal in reading all the ML books was that I would fully understand and be able to implement <a href=\"http:\/\/en.wikipedia.org\/wiki\/Support_vector_machine\" target=\"_blank\" rel=\"noopener\">Support Vector Machines<\/a>. SVM&#8217;s were covered in the class, but also only from the user&#8217;s perspective. I gained a better understanding, but still I wouldn&#8217;t be able to implement one myself. The math behind it just too involved.<\/p>\n<p>Then we learned about topics that I didn&#8217;t even think about in advance, or thought they wouldn&#8217;t be as interesting as they were presented in the class. These include : clustering, dimensionality reduction, anomality detection as well as recommender systems. And it&#8217;s also worth mentioning that the general advice on how to analyze problems and where to invest further effort is very valuable.<\/p>\n<p>I can highly recommend the <a href=\"http:\/\/class.coursera.org\/ml\" target=\"_blank\" rel=\"noopener\">coursera machine learning class<\/a> to anyone interested in ML.<\/p>\n<p>This week I could already make use at work of the newly earned knowledge of octave. I had an intermediary XML file of which I was not sure it the vertex positions it contained were valid. With some grep\/sed\/octave magic, I had the answer in no time:<\/p>\n<pre class=\"brush: bash; gutter: false; first-line: 1\">find . -name '*.xml' | xargs grep -h '&lt;p&gt;' | sed -e \"s\/[&lt;]p[&gt;]\/\/g\" -e \"s\/[&lt;].p[&gt;]\/\/g\" -e \"s\/[&lt;]p.name.*[&gt;]\/\/g\" &gt; puppe.mat\n\noctave --eval 'xyz = load(\"puppe.mat\"); plot3(xyz(:,1),xyz(:,2),xyz (:,3)); print -dpng puppe.png;'<\/pre>\n<p><a href=\"https:\/\/ulrichard.ch\/piwigo\/picture.php?\/1751\/category\/64\"><img decoding=\"async\" src=\"https:\/\/ulrichard.ch\/piwigo\/_data\/i\/upload\/2015\/11\/12\/20151112203447-3a506912-th.png\" alt=\"\" \/><\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Another one of these incredibly interesting online classes came to an end. Machine learning was one of the first two classes that started last fall. As I thought to make AI and ML in parallel would be too much, I decided for AI with the intention to make ML later. The second round of ML [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6,7,1],"tags":[24,138,158],"class_list":["post-576","post","type-post","status-publish","format-standard","hentry","category-projects","category-software","category-uncategorized","tag-artificial-intelligence","tag-machine-learning","tag-online-education"],"_links":{"self":[{"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts\/576","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=576"}],"version-history":[{"count":0,"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=\/wp\/v2\/posts\/576\/revisions"}],"wp:attachment":[{"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=576"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=576"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ulrichard.ch\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=576"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}