Posts Tagged ‘mit’

Sometime early this week , I finished listening to the excellent video lectures from MIT OCW’s Calculus Revisited course . I had been meaning to listen to MIT OCW’s Single Variable Calculus course for quite sometime as my background in Calculus is a bit flaky. My interests are in machine learning, data mining and AI where Calculus has a nasty habit of making surprise entries 🙂

I somehow finished my Master’s using my old Calculus knowledge. I took a course on Numerical Methods which kind of exposed my weaknesses. I kept getting confused with the error approximations which used ideas from  infinite series. Other advanced ideas like multivariable optimization were also problematic to me. Once that course was over, I swore myself to refresh my Calculus stuff and also learn multivariable calculus.

I started listening to MIT OCW’s Single Variable Calculus lecture videos and felt two things – The course was a bit slow for my pace and the course jumped right away into the mechanics without spending much time on the intuitive explanations of the Calculus. In other words, I felt 18.01 was more focused on the analytic part which emphasized proofs and derivations whereas for my purposes an intuitive explanation of the concept would have sufficed. In fact, I remembered almost all of the Calculus formulas from undergrad – My only problem was the lack of “sense” in how to apply it to the problem I faced (say in machine learning or some optimization).

Then I found the Calculus Revisited course from MIT OCW. It consists of a series of lectures on Calculus but also assumes that students have had prior exposure to it. This assumption had some interesting consequences and I fit the bill perfectly. I downloaded the set of videos and started listening to them. Interestingly, all the lectures were between 20-40 minutes which allowed for maximum focus and also allowed you to listen to multiple lectures in the same day. In fact, Arlington had a heavy snow this week and my university had to be closed for the entire week. I completed around 16 lectures in 3 days and was able to finish it ahead of my target date of Feb 15.

The course starts with the absolute basic ideas of sets, functions, induction and other stuff. If you are from CS and had taken discrete math, you can feel free to skip the first section. But I would suggest you to still take a look as it , in a sense, sets the stage for the entire course. Do take some time to listen to the lecture on limits. (Part 1 , lecture 4). Here, the discussion of limits effortlessly leads to the derivation of the formula for instantaneous speed and hence differentiation.

Part 2 forms the crux of the course and covers differentiation. Professor Herbert Gross had a beautiful way of teaching stuff about derivatives. In particular, he extensively used the idea of geometric proofs or visualizations to expound basic ideas. The way he brought out the tight relation between analysis (as in Math) and geometry was enthralling. He had a huge emphasis on geometric intuition which helped me to “grasp” the key concepts.

Part 3 had some nice discussion on Circular functions. He joked about how teachers don’t provide good motivation for learning trigonometry which I felt very true to me. He also explained some concepts that were new to me – that you do not really need triangles to define cosine and sine. Previously, I was aware of the radian concept but never put it all together. He also explained how sine and cosine tend to come up in unexpected places – like as the solution of the differential equation for harmonic motion 🙂 He also masterfully showed the close relation between circular and hyperbolic functions with a playful title of ‘What a difference a sign makes’  (in Part 5).

Part 4 discussed about integration and how it can be used to calculate 2 and 3 dimensional areas (and volumes). This part also had a great discussion on how differential and integral calculus are related. That being said, I was a bit dissatisfied with the discussion on the two fundamental theorems of Calculus. The discussion on Mean Value Theorem also felt a bit rushed. I got a bit lost on the discussion on 1 dimensional arc length calculations. May be I should revisit the lecture notes for the same when I get some free time.

Part 6 was my favorite part for two reasons – This had a discussion of infinite series and my favorite quip of the course. When discussing about the non intuitiveness and the intellectual challenges posed by infinity , professor Herbert Gross playfully quips (which goes something like this)– ‘ of course, one thing to do is to not study it. I can call it as the right wing conservative educational philosophy’ – Ouch 🙂 I think I mostly understood the idea of infinite series even though there was not much explanation of “why” it works that way. I also felt the topic of Uniform Convergence to be way beyond my comprehension level.


Overall, it is a great course and acted as a fast paced refresher for those who had already taken Calculus. The course slowly starts from basic pre-calculus ideas and rapidly gains speed and covers a huge list of calculus topics. I felt few of important Calculus topics were not covered or rushed up – First and second fundamental theorem of Calculus, Mean Value theorem, Taylor series, L’Hospital rule, discussion of exponents and logarithms etc.

But that being said, I feel the course more than makes it up for the way the basic ideas were covered. I had fun learning the ideas of limits, infinitesimals , intuitive ideas of differentiation/integration, geometric explanation of differentiation/integration, how the concept of inverse functions pervades Calculus etc. Prof. Herbert Gross had a jovial air around him and occasionally delved into philosophical discussions which made listening to the lectures more interesting.

He also had an extensive set of supplementary notes and huge amount of problems with solutions. I had to skip the problems part to conserve time. But if you have some time do spend some on it.

Lastly, I found that one of the lectures in the series was missing. Lecture 5 in Part 2 on Implicit Differentiation was the same as the one on Lecture 4. I had sent a mail to MIT OCW about this and got an reply saying they will fix it soon. Hopefully, it will be fixed soon.

In conclusion, this is a great , fast paced course on Calculus that emphasizes geometric intuition of the major ideas in Calculus.  Listen to it if you already know Calculus and want a fast refresher ! I am currently listening to the lectures on Multi Variable calculus. I do intend to listen to Single variable Calculus again , may be in Summer. I will put out another post on how it went 🙂

Read Full Post »

MIT OCW is one of the best things that happened in education in the last few years. It features hundreds of course materials available for free to anyone who is interested. I became interested in OCW to improve my CS and Math skills. So far, I have completed multiple courses and currently I am trying to follow their MultiVariable Calculus course.

It always amazed me that MIT was willing to put such high quality stuff out in the open – Sure, my toiling on Calculus or Linear Algebra does not have a “tangible” outcome – meaning, I am not going to get MIT certified for all the hours I spent on it. But it does help me do well in courses in my university based on these courses. For eg,  I have a different perspective of how things work in data mining or machine learning after watching few of MIT lectures on  Calculus / Linear Algebra etc.

MIT OCW has a detailed page on donating where they provide all necessary information. I do try to support MIT OCW by donating at least couple of times a year – But as a student my monetary contributions are limited which always bothered me. 

A Simple Idea

Few days back, I got an idea after reading this post . Basically, the post details the amount of referral money that GNOME foundation gets from Amazon when users buy songs from Amazon MP3 store via Banshee. Sure, the amount is small as the audience is small – People who use Linux AND Banshee AND buy from Amazon within Banshee !

I also remembered that MIT OCW does have Amazon referral link. More details are given at OCW’s Amazon referral page. Amazon gives MIT OCW 10% referral when people buy items from Amazon when either clicking on book links from OCW or when they visit to Amazon through the URLs in the referral page. Since the OCW audience is considerably bigger, I searched for the amount of referral money that Amazon brings. The details are scarce but this link says the amount is around $30,000 at the end of 2009.  That is pretty impressive considering it is almost 20% of the visitor donation of 2009 !

Whenever I want to buy something in Amazon (that’s my primary choice as I have Amazon Prime) , I directly search using the Chrome’s Amazon search instead of going to Google. So, I reasoned that if I could somehow make MIT OCW as the referrer, then OCW will get the referral fees from whatever purchases I make. Even though it might be limited, it indirectly increases my “contribution” to MIT OCW.

A small technical detour

Before we modify our browsers to make MIT OCW as the referrer , we might have to change some habits – Don’t worry , it will only make you more efficient 🙂

First, when you are buying do consider Amazon. Of course, not at the expense of your finance. But lot of times, I find that Amazon has the cheapest rate or the difference is reasonably negligible. Since most of the blog readers are students, you may be interested to know that they offer one year free Amazon Prime for students. Your shipping will be free if you chose two day shipping. Even otherwise, Amazon has free super saver shipping for most items above $25. Most of textbooks cost  a fortune and you will be eligible most of the time.

The next is to directly search in Amazon instead of searching the item in Google and going to Amazon by clicking the link. If you feel you might miss some cheaper alternatives, check out other book search engines like vialibri.net which searches multiple sources anyway.

One of the coolest Chrome Geek tip is to use its search engines effectively – Chrome comes with lot of built-in ones and allows you to assign keywords for them. To manage them, click on the Wrench icons and select “Preferences” (Options in Windows) . In the “Basics” tab, go to the section on “Search” and click on “Manage”. You will get a new window listing known search engines.

Lets change the way you search items, in say, Wikipedia. Go to the entry for Wikipedia and click on ‘Edit’. You will see a new smaller window. The item we are interested is the second textbox which is labeled as “Keyword”. Set it to some mnemonic you want -  For eg wiki. I set it just w. Now click save and close the window. Go to Chrome’s address bar and type “wiki Blah” (or in my case w blah). Watch Chrome magically take you to the appropriate wikipedia page directly – No intermediaries like Google ! Think of all the seconds that you can shave off for each Wikpedia search 🙂

I have mnemonics for everything in my Chrome. I use y for Yahoo, b for Bing, a for Amazon and so on. So all you need to do to search for some item in Amazon is to type “a item” in Google’s address bar (assuming ‘a’ is mnemonic for Amazon).

If you are using Firefox, then its now as straightforward. Firefox does come up bundled with few search engines and Amazon is one of them – but reaching is a bit tricky. Now press “ctrl+k” to reach the search pane (or use the mouse !) Once you are in search pane, you can switch search engines, by using the arrow keys. Once Amazon search engine is selected, type the appropriate keyword and the Amazon’s result page pops up.

Firefox also offers an easier way. Click on the list of search engines list in search pane and select ‘Manage Search Engines’ . Now in the new window, select the appropriate search engine and click on ‘Edit Keyword’. For eg, you can set ‘a’ for Amazon. Then you will be able to type “a item” in address bar to search for “item” in Amazon directly !

Changing Referrer in Chrome

Changing the referrer in Chrome is easy. Click on the Wrench icon and select “Preferences” (Options in Windows) . In the “Basics” tab, go to the section on “Search” and click on “Manage”. You will get a new window listing known search engines. Now select the entry for Amazon and click Edit. (I f you cannot find the search engine for Amazon, then go to Amazon and search for dummy stuff and check again). In the “URL” textbox append the words “&tag=mitopencourse-20”. In Ubuntu, your URL field will look like this (you can even copy this one !)


In Windows, my entry looked like this :


The word “tag=mitopencourse-20” is what that makes MIT OCW as the referrer. I have assumed that you are using Amazon US. If you are other versions of Amazon, use the following table and swap the word “mitopencourse-20” with the other.

Amazon Locale

Referrer Code














Now search for something in Amazon directly using the keyword you set previously. For eg, if you used “a” as mnemonic then try “a itemName” and find if the tag that you just set appears in the url of the search results page. If so, then great ! Else, recheck the previous steps.


Changing Referrer in Firefox

Changing the referrer in Firefox is a two step process – Since Amazon comes a default search engine, modifying it directly does not seem to work. Instead , you have to move the item to your local search plugins folder and then change referrer there .

Ubuntu (Or Linux)

1. Find your user specific firefox search plugin folder. Typically it is at ~/.mozilla/firefox/<profileFolder>/searchplugins. Replace the word <profileFolder> with appropriate name. For me it is at ~/.mozilla/firefox/72p71i29.default/searchplugins . If it does not exist, create it.

2. Assuming English as your firefox locale , move the file /usr/lib/firefox-addons/searchplugins/en-US/amazondotcom.xml to your profile folder. It is important that you move the file and not just copy it.

3. Open the file in some editor like vim. Check for the line that starts like

<Param name="tag" value="someRandomText"/>

4. Now modify that line and change the value to “mitopencourse-20”. Your line must look like

<Param name="tag" value="mitopencourse-20"/>


Of course if your Amazon locale is different, use the above table to find the appropriate referred id. Reopen Firefox and search for something in Amazon directly using the search engine (either the search engine in search pane or using its keyword). If the search result has the tag for MIT, then great ! Else please repeat the steps again more carefully.


Windows 7

1. Find your user specific firefox search plugin folder. Typically it is at C:\Users\<userName>\AppData\Roaming\Mozilla\Firefox\Profiles\<profileName>\searchplugins . Replace <username> with your actual username and profile name with your actual profile name. For me it is at C:\Users\zionWin\AppData\Roaming\Mozilla\Firefox\Profiles\jon9mxki.default\searchplugins . If it does not exist, create it.

2. Move the file “C:\Program Files\Mozilla Firefox\searchplugins\amazondotcom.xml” to your profile folder. It is important that you move the file and not just copy it.

3. Open the file in some editor like notepad++. Check for the line that starts like

<Param name="tag" value="someRandomText"/>

4. Now modify that line and change the value to “mitopencourse-20”. Your line must look like

<Param name="tag" value="mitopencourse-20"/>


Of course if your Amazon locale is different, use the above table to find the appropriate referred id. Reopen Firefox and search for something in Amazon directly using the search engine (either the search engine in search pane or using its keyword). If the search result has the tag for MIT, then great ! Else please repeat the steps again more carefully.



The effort needed to make this change will be only few minutes – You are not killing kittens. Also this does NOT increase the price of your item that you buy from Amazon. All that happens is that when you buy something from Amazon, MIT OCW will get a 10% cut.  It is not clear to me whether that applies only to textbooks or to any items. Typically, referrals works for all items.

I think this might be the simplest way that you can contribute to MIT OCW without much effort from you. Please spread the word !

Read Full Post »

The title of this post is very similar to my old berkeley ML lectures post. Machine Learning is one of the coolest fields in CS and I really want to master it. But so far I was having trouble finding the basic intuitions behind the course. When I read the books, it somehow feels that I am missing some overarching intuition behind the field and that is the root cause behind all my troubles. I "think" I now know what it is. My math background is not as strong as I want to be. I have been putting lot of efforts over the last few months to rectify it. I have been poring over books on linear algebra, probability and statistics. I am still lacking a bit in Calculus but I am sure I will be making up soon.

I took two great courses this semester and they played a role in bridging the gap . They are Computational Methods and Bioinformatics. Both of them are taught by great teachers and had lot of fun topics. Computational Methods was an exploratory course discussing about lot of math needed for CS – things like root finding , linear and non linear equation solving, least squares, Eigen values , SVD and monte-carlo methods . As you can see it is a great sampling of techniques widely used in machine learning and other related fields (eg robotics, vision etc). The text books and other reference materials did a good job of pointing applications in machine learning. So I think I now appreciate many of the derivations used in machine learning better now. Similarly my bioinformatics course showed the various ways in which machine learning techniques are adapted to fit to that domain. As a combo they did a world of good to me.

Since I am now more confident, I started searching for Machine Learning lectures to restart my quest. There are lot of exceptional course websites and notes, but I preferred the courses with video/audio lectures. The most popular seems to be Stanford’s CS 229. It is great and has an excellent collection of notes. I have listened to few of the lectures before bailing out. Hopefully this time , I will be able to complete them. Since I already had (and partially listened to ) Berkeley lecutures, I was searching for similar courses in MIT to complete the triumvirate. I was surprised that OCW did not have a video lecture for data mining / machine learning. It is a pity as I feel these two fields are becoming very important in CS now. As I was systematically going through old courses , I hit a jackpot.

I found MIT’s 6.867 Machine Learning course taught by Professor Leslie Kaelbling in fall of 2005. They had video lectures but all their links were broken. I spent quite some time hunting for good sources and with some luck found them ! One of the things I liked about this course is this : It was taught in 2005 – Slightly old but not too old – and hence the course topics looks relatively approachable by my standards. Additionally the initial lectures discuss the necessary background which is an additional plus.

The archived course website is at 6.867 Machine Learning Fall 2005 . The video links are at SMA’s course website. Please note that the webpage explicitly states that it is copyrighted 😦 Hopefully they wont mind using it for academic purposes. Surprisingly the videos are again in rm format which I hate. One of the reasons is that it causes my Ubuntu based players to crash occasionally. The steps to download are a bit different from the one in Berkeley course. My instructions below are for ISO section. I downloaded a video from each and was not able to find any difference and the ISO files were smaller than the prog files. Also note that the URLs are provided in reverse chrological order. So the first link in the website corresponds to last lecture.

Download steps :

1. Find the url of the file. For eg the url of first lecture in ISO recording is http://smasvr.nus.edu.sg:8080/ramgen/sma/2005-2006/sma5514-fall/sma-5514-lec-mit-54100-07sep2005-0930-iso.rm .

2. Extract the rm file name from the url . Here it is sma-5514-lec-mit-54100-07sep2005-0930-iso.rm .

3. Construct the rtsp url. As of now, the rtsp url looks like this – rtsp:// . So for our case it is rtsp:// .

4. Download the file using mplayer. The one that worked for me is this : mplayer -noframedrop -dumpfile Lect1.rm -dumpstream rtsp:// . Remember to replace the arguments for dumpfile and dumpstream for each download.

5. Convert to other formats. Use mencoder to convert to other formats. For some reason, all the formats I tried resulted in very large files. If anyone found a way to convert it effectively, please let me know.

6. Enjoy the videos !

Other Notes

1. The files will download in a slow fashion. The reason is that mplayer will try to download them as if you are actually watching them. I tried to play with the caching by setting a large value for the bandwidth parameter but it did caused some premature termination. If anyone got it working please comment .

2. I was also not able to convert the rm files to other formats avi or mp4 correctly. The files were of 2-3 times the size of the original rm file. If anyone found the proper incantation please let me know.

I plan to listen to them in December and January. If I learn any cool ideas, I will blog about them. Have fun with the video lectures !

Read Full Post »

1. Carnegie Mellon Tries Crowd sourcing To Develop Optimal Electric Car Formulac
In a very interesting move, CMU tries to do a NetFlix by crowd sourcing the problem to find efficient current flow between an electric car’s components. I have my doubts if this will be ultimately successful. The price seems to be just right. But this seems to be a fairly intricate problem and also needs some knowledge of coding which might dramatically reduce the potential audience. I would have preferred a Foldit like approach which made the designing stuff (in that case protein folding) more like a game which would have lowered the barrier for entry and also increased competitiveness.

2. A Taxonomy of Social Networking Data
An insightful classification of the data that we make available to social networks. I would have preferred a longer exposition that talked about user expectations, monetary potential of individual data (from social network point of view) etc but still it does gives you something to think about. Hopefully the people behind Diaspora are reading this !

3. Firefox 4 Beta Adds Multi-touch Support
In one of the big news, Firefox supports multi touch – I am still not sure what this holds for the future but it is exciting to see Firefox bringing multi touch into the arena. In the other cool news, Multi-touch Support Lands in Maverick . Doubly sweet !

4. A Chip That Digests Data and Calculates the Odds
In one of the surprising news recently, an MIT start-up introduced "plans" to build a chip that uses probability directly instead of approximating using digital bits. As of now, I am skeptical about the claims – Even if they can build the chip, I do not see any one other than academia / big companies like Google/Amazon etc will have an use case for it.  I have to say their other product which corrects errors in flash memory seems more practical and cool. Lets see how this pans out.

5. Google never removed Oracle from its index
Lot of ink was written last week about how Google removed Oracle from its index as Oracle sued Google. It was a very neat homograph prank and the mechanisms used is given in the linked post.

6. With McAfee Deal, Intel Looks for Edge
I am baffled at this deal like many others – I do not see a need for Intel to buy McAfee for almost $8 billion ! This deal almost completely depletes Intel’s free cash. Hopefully Intel has a good plan to utilize McAfee !

7. Facebook Unveils a Service to Announce Where Users Are
FaceBook has launched the widely expected location services. It is pretty surprising that it almost steals all its ideas from Foursquare. Looks like another Microsoft Vs Netscape scenario to me.

8. Reanimated ‘Junk’ DNA Is Found to Cause Disease
A neat discovery in genetics. Although the discovery almost resembles a patient detective, I am a bit worried about the really long time they took to find the culprit. Hopefully this discovery will produce enough knowledge to speed up things in future.

9. Simplifying the Lives of Web Users
This is post by David Pogue about OpenDNS. I have been using their name servers for some time but did not knew they had so many features. Sweet !

10. I read a few funny tweets – 1) Welcome to the new decade: Java is a restricted platform, Google is evil, Apple is a monopoly and Microsoft are the underdogs (from @phil_nash)  and 2) The main idea of "Inception": if you run a VM inside a VM inside a VM inside a VM, everything will be very slow (from @myzt) .

Read Full Post »

Biweekly Links – 06-25-2010

1. The Surprises Never End: The Ulam Spiral of Primes
Yet another of the delightful surprises that primes keep throwing.

2. Games Stuff
There is a huge frenzy over Wimbledon and FIFA World Cup. Both have become pretty exciting recently. Wimbledon witnessed a remarkable match between Isner and Mahut – You can check some highlights here . And a mathematical analysis of the game is at A mathematician watches tennis II. Another analysis on the World cup first round results is at Reconstructing World Cup results. I think reconstructing the games will be a wonderful programming assignment.  Though not related to "real" game, here is a neat post on Games with Incomplete Information .

3. It’s Your Data, It’s Your Bot: It’s Not A Crime
Another thought provoking article from EFF.  As a person interested in data mining, this case is quite relevant to me. Let us see how the case progresses.

4. Computers Learn to Listen, and Some Talk Back
This NYTimes article talks about the increasing use of Speech Recognition and AI in medical field. Some of the research prototypes at Microsoft form the backdrop. If they could combine the object recognition of Kinect and the speech recognition in this project, the results should be amazing. It is an exciting time to be in AI/ML and it is nice to see NYTimes doing more profiles on AI and bringing it to the "masses".

5. Nanotubes Give Batteries a Jolt
I do not know much about this area of research but so many of my favorite blogs discussed this post that I feel obliged to link it 🙂

Read Full Post »

1. Travel itineraries from Flickr photo trails
The paper discusses a very clever idea of using Flickr photo details (like time,tags and gps) to automatically construct travel itineraries. Its a pity that Yahoo research keeps churning cool papers but the company does not commercialize lot of them. In a related travel post, Kayak Explore Shows You Where You Can Fly for the Money in Your Budget . The basic idea is to use budget as a filter for locations. Seems like a lot of innovation in this domain. Thanks to Kripa / Suresh for the link.

2. Free download: 10 terabytes of patents and trademarks
Google offers all the patent information as a free download ! I was exploring it and thinking of ways to use it for some data mining purposes after I graduate. The API is rudimentary but I guess there is lot of potential for offline mining.  Parsing patents also discusses about how to use the awesome data that Google has made available.

3. Multitasking is no problem for these brain cells
An interesting research which shows that some brain cells take part in different/multiple decision making tasks.

4. Adobe (Temporarily?) Kills 64-Bit Flash For Linux
Bad news for 64 bit Linux users like me. Looks like I should start evaluating other open source flash players like LightSpark. It crashes too much for me but I am hopeful about this project.

5. The Athens Affair
A nice analysis of the Greek scandal in 2005 where lot of whos-who of Greek had their telephones bugged and the culprits are still not caught. This article primarily focuses on the broad modus operandi of the hackers.

6. Merely Human? That’s So Yesterday
A NYTimes article on the exotic Singularity movement. As of now , I am a skeptic even though my area of interest is AI.

7. Why No Billion-Dollar Open Source Companies?
An interesting take on why there is no billion dollar open source companies. The explanation seems very plausible to me.


Add to DeliciousAdd to DiggAdd to FaceBookAdd to Google BookmarkAdd to RedditAdd to StumbleUponAdd to TechnoratiAdd to Twitter

Read Full Post »

1. Yi Ma and the Blessing of Dimensionality
I posted a link on last week’s Biweekly links dissing a MSR article. The linked article gives a better discussion about Yi Ma’s research.

2. SpaceX Illustrates Privatization Risk
One of last week’s big news was the successful launch of SpaceX’s rocket. Surprisingly, I did not find a comprehensive discussion about their achievement. The linked article discusses some of the important themes.

3. HTML 5 is hot
A good slide detailing all the capabilities of HTML 5. Better viewed in one of the "modern" browsers. In a related post, intellectual honesty and html5  talks about Apple’s recent attempt at bolstering their HTML 5 credentials.

4. Google Chrome’s Developer Tools Improve Productivity
The developer tools in Chrome is becoming a powerful tool and this post talks about some of the important features. There is also a long video discussing the features in detail.

5. NASA JPL, robots and the AWS cloud
A creative application by NASA using multiple AWS components. Pretty impressive.

6. FASTer search from Intel and Oracle
A very interesting approach to improve database search. I skimmed through the paper and it looks interesting even though the idea of storing B-tree index in memory seems a bit unpractical , especially for very large databases. But a very creative idea nevertheless.

7. How the brain recognizes objects
Very interesting. New cognitive (and computation) models like this gives hope that we will ultimately know all about our brain.


Add to DeliciousAdd to DiggAdd to FaceBookAdd to Google BookmarkAdd to RedditAdd to StumbleUponAdd to TechnoratiAdd to Twitter

Read Full Post »

Older Posts »