views:

1417

answers:

9

I'm playing around with machine learning in an academic setting, and it's really fun. I'm wondering how machine learning algorithms such as Support Vector Machines make it into software applications. Do people actually use machine learning algorithms? Do you use them because it's part of a spec written by someone else, or are they more of a personal tool that you add to code you're writing?

I'm interested in how software transitions from academia into industry, and my last question on the topic was canceled because it was apparently redundant with other questions. I'm trying to be better but I'm still a n00b, so please be nice. :)

+4  A: 

Machine learning has real-world applications. Look at Amazon's recommendation engine, or Pandora, or iTunes Genius...

Willie Wheeler
+27  A: 

I work at Yahoo Research and, like at Google and elsewhere, machine learning is used a lot here (http://research.yahoo.com/Machine_Learning). Especially for serving ads and for spam detection. I recommend the blog hunch.net which discusses machine learning in both theory and practice. One of the more prominent examples right now of machine learning for a practical problem is the million dollar Netflix Prize.

A more comprehensive blurb from a colleague of mine (Jenn Wortman):

Machine learning has become one of the most active and exciting areas of computer science research, in large part because of its wide-spread applicability to problems as diverse as natural language processing, speech recognition, spam detection, search, computer vision, gene discovery, medical diagnosis, and robotics.  At the same time, the growing popularity of the Internet and social networking sites like Facebook has led to the availability of novel sources of data on the preferences, behavior, and beliefs of massive populations of users.

dreeves
+3  A: 

I worked in video security and machine learning was high on our agenda. It's a hot topic for people who need their machine to actually respond to its surroundings.

Adam Hawes
+3  A: 

I do research in the field of visual recognition, and I see it used a lot throughout. You could even say that the problem of recognition as a whole is really just machine learning. My opinion is that the next phase of computer science is getting the computer to be able to think for itself, at least to an extent, and so I think that machine learning is a field that is of growing importance.

In answer to your question, I use machine learning because, well, how else are you meant to perform any kind of recognition problem? If you just think about whatever recognition problems there are - face recognition, handwriting recognition, speech recognition, etc - it seems clear to me that any other approach besides machine learning would be naive.

This is a bit of an aside, but one thing I feel is that machine learning is not an accurate enough description for the things that I do in my field, I prefer to use the term "classification algorithm". It's just because the words "machine learning" make it sound like it has intelligence, almost like it could be self-aware. It just doesn't sound right to me to be calling these least-squares fitting or function-approximation algorithms as machine learning algorithms when all they do is crunch numbers. There's no intelligence at all! I think that the words "machine learning" make it sound so much more glorious and amazing than it actually is, and so I use the phrase "classification algorithm" wherever it applies. A support vector machine, like you said in your example, is what I'd call a classification algorithm.

Ray Hidayat
+2  A: 

We have been using recommender systems to recommend jobs on a job-ad site we developed and we hope to see a lot of more usage for these types of systems in other applications.

Could be used here, you seem to be good at answering questions about X; checkout Y :)

Fredrik Jansson
+5  A: 

If you want to see some cutting edge machine learning look no further than computational finance. Modern finance has become a technological arms race to see who can build the most powerful algorithms. Inside of large hedge funds and investment banks you will find fairly cool solutions to complicated problems. Neural networks have been used for options pricing. SVM's have been use for classifying signals. Genetic algorithms have been used for a variety of tasks from strategy derivation to portfolio management.

One thing I have noticed is that as these solutions become more mainstream people don't think of them as AI or machine learning. It is simply part of the app.

Steve
+2  A: 

Data Mining uses ML extensively, fields include financial, banking, govermental etc.

Darknight
+9  A: 

Yes. Machine learning is used a lot in the industry in particular when it is not clear to write rules for decision tasks. The tasks may be as simple as deciding if a period is a sentence-boundary or not, or complicated such as identifying the content (in terms of semantics) inside a video stream. One important thing to understand about machine learning is very well articulated by Ray Kurzweil:

An underlying problem with artificial intelligence that I have personally experienced in my forty years in this area is that as soon as an AI technique works, it's no longer considered AI and is spun off as its own field (for example, character recognition, speech recognition, machine vision, robotics, data mining, medical informatics, automated investing).

Computer scientist Elaine Rich defines AI as "the study of how to make computers do things at which, at the moment, people are better." Rodney Brooks, director of the MIT AI Lab, puts it a different way: "Every time we figure out a piece of it, it stops being magical; we say, Oh, that's just a computation." I am also reminded of Watson's remark to Sherlock Holmes, "I thought at first that you had done something clever, but I see that there was nothing in it after all." That has been our experience as AI scientists. The enchantment of intelligence seems to be reduced to "nothing" when we fully understand its methods. The mystery that is left is the intrigue inspired by the remaining, not as yet understood methods of intelligence.

I had my "Aha!" moment when I first implemented naive-Bayes in grad-school and got it working pretty well for a particular task. I currently work for a well-known vertical search company and we do use ML.

hashable
+4  A: 

Do you have an iPhone? The predictive text input feature uses a trained n-gram markov model. The bar code applications typically use Computer Vision techniques, such as pattern or template matching. Do you use Google? The core of the PageRank algorithm is a massive stochastic Markov model of the internet. Do you use Netflix to rent a recommended movie? The Netflix challenge is a huge Data Mining project.

The core of modern machine learning is statistics, but other fields, such as BioPerl (which applies Data Mining to genetics research), are often blended in to model complex systems.

s1n