Sunday, 9 September 2012

Machine Learning

Machine learning seems to be a big trend for either today's research or the IT industry. There are quite a number of business ideas hanging around my head, most of which require machine learning for a good outcome.

First idea is a products-comparison application which help consumers to better compare similar products from different online retailers. This is going to solve the pains for the consumers who would like to buy certain products from all the possible overseas retailers and ship to their homes. The consumers need to spend a lot of time comparing different solutions(including the price of the product and the price of the shipment) and the solutions are mostly not optimal. The idea is not new. But with the evolving development of mobile clients, this idea has a very big market. As is shown in one survey, 70% of the smartphone users use their smart phones to compare different products. The comparison service itself can generate a fairly good revenue from ads, even we only focus on one specific market, e.g.,electronics devices or cosmetics. If it works well, the application can make its own online-retailing service later, or even enter the logistics market in a more ambitious stage.  Machine learning and information retrieval would be two powerful tools to make it work.

Another idea is to make a lyrics-melody match application. When a lyrics writer writes a piece of lyrics, he/she would love to find a piece of melody which fit the lyrics the best. The same for a melody writer. It is a fairly rare case that an amateur can write a complete song with nice lyrics and melody fitting each other. Machine learning and information retrieval come into play again.

That's not easy. Everything is not easy if we want make it work nicely. It's good that I am taking the machine learning course in which makes me really interested. Hope some of the ideas can work someday.

Yesterday, I visited a Start-up company in NTU incubator center. This company was formed a year ago by three undergraduates from China. Unlike many recent start-ups which mainly develop mobile apps, they provide enterprise solutions for multimedia companies. One of their products is to make interactive painting gallery display using LCDs and Microsoft Kinect.  Another product is to provide car-dealers with interactive display using Kinect. The company is able to maintain its daily operations with no pays to its team members. The core team consists of one very good programmer, one charismatic business guy, one OK programmer with good strategic planning and one designer+business women. That's a fairly good distribution.There are even some team mates who are willing to work for the team for free. That's really passionate.
I talked with the CTO and he shared quite a number of interesting ideas. Regarding machine learning:
1. How apple's wifi determines the location of a user? It's not via the computation of the nearest wifi transmitters, but via the location data from other IOS devices which appear in that region.
2. Google abstracts some ambiguous characters from scanned books and make them into reCAPTCHA. The unknown words are then recognized by the probability of the human inputs. The recognized words are then reusable again in Google's ebook projects.
3. How Google knows the traffic conditions of a certain place? In some places where location data are not allowed to be collected from Android, they simply count the number of Android devices in that region and infer the traffic condition.
Regarding the start-up environment here in Singapore. Singapore is very suitable for creating start-ups. The situation here in Singapore is opposite with that of China. In China, there are a lot of very good programmers but not many kinds of funding. But in Singapore, there are various kinds of funding, however, not so many good projects and good programmers.

Once again, I get to know that great products are coming from simple ideas but very good executions. Another time, you need to know some business stuffs, pure programmers are cheap.

Something good worth mentioning for this week:
1.I swam 4 times this week. Body fitness is so important.
2.I wrote the lyrics for my first pop song out. It happened to be about "faith", like a religious song.


Something bad worth mentioning:
1. I slept very late on Friday(3am) to watch the Voice of China TV show, which makes me sleepy for the whole weekends. Shall have a more regular schedule.
2. Last week passed so quickly, can be more efficient.


  1. "not so many good programmers" and "a lot of funding" hmmm....

    好idea 要做做看,搞个side project嘛