Today, I turn attention to another Technology Review article in the same special AI issue, the important article by Rodney Brooks on the limitation of the current AI systems, driven by the "deep learning" "revolution." Brooks was the head of MIT's CSAIL lab, and an expert in AI who has lived through several waves of AI hype.
Brooks frames his content differently, titling the piece "The Seven Deadly Sins of AI Predictions." He opens with the breathless forecasts published by various media outlets, predicting that AI (computers) would wipe out the job market for human beings in a broad range of industries, in some cases, in a matter of 10 or 20 years. He then describes seven fallacies that have led these hype-meisters astray. Read the whole article here. Some of these dire forecasts: Oxford/Yale, McKinsey. [PS. I do not understand why those technology leaders who claim to believe in these forecasts do not immediately stop their AI programs for the public good.]
Brooks calls these predictions "ludicrous." He points out that there have been zero realistic demonstrations of robots that can take over grounds and maintenance work even though the forecasters claim that 90% of such jobs would disappear in 10 to 20 years. For the rest of us, who are not knee-deep in AI research, it's simple to validate Brooks's viewpoint: just make a call to your favorite service provider (your bank, your credit card provider, your health insurer, for example); subject yourself to the AI "chatbot" for even five minutes.
In debunking the hype, Brooks outlines several key limitations of the current AI systems, built on the deep learning revolution (discussed in the prior post).
The current AI is task-focused and narrow in scope
Computers can be trained to tag images with labels like "people playing Frisbee in a park" but we can't then query these computers with related questions such as "what is the shape of a frisbee?", "Is today's weather suitable for playing frisbee?", "Roughly how many people play frisbee at once?", etc.
This fallacy is a type of over-generalization. The fact that a computer can perform a specific task is used to imply a general competence. Such generalization makes sense for a human being (say, asking the above questions to someone who's playing in the park) but it fails when applied to a computer.
This is a significant limitation. This is one of the reasons why the chatbots are so annoying. They can only understand a small set of words. If you try to use any word outside that set, the AI computer is stumped. If you explain your problem the way you talk to a human being, it is confused. If you provide use only words from that set of words it knows but in a sequence different from what the chatbot expects, it rejects you.
The current AI cannot adapt
The much-heralded AI success stories, IBM Watson and AlphaGo, playing chessJeopardy and Go respectively, cannot deal with any rule change while the human player can immediately. Recall the key advance in this AI revolution is the engineering feat of processing huge amounts of training data (40 million pictures of hot dogs to recognize a hot dog). The training data used by Watson and AlphaGo consist of historical game logs. If the rules change, all those logs become useless, at best compromised. It would take a very long time to collect enough data under the new rules.
The current AI does not "learn" the way humans do
This is one of my pet peeves. The word "learning" as used in "machine learning" does not mean anything like what it means in human learning. Brooks cites Marvin Minsky who coined the term "suitcase words." Learning means so many different things that it is meaningless.
The key quote: "machine learning is very brittle, and it requires lots of preparation by human researchers or engineers, special-purpose coding, special-purpose sets of training data, and a custom learning structure for each new problem domain."
Let me parse this for you. All of the AI gains are built from Olympic amounts of human efforts. For example, IBM's Watson is nothing if human curators had not gone to heroic lengths to structure and organize data in Wikipedia, encyclopedias, etc. Every blog post used in these databases (including this one) represents one or more human beings assisting the computers by organizing and structuring the text. The day that humans retire from updating blogs, encyclopedias, Wikipedia, etc. is the day that these computers with their machine learning grind to a halt. If you love machine learning and AI, please stop for a moment and give thanks to all the human beings who have assembled the training datasets for these computers.
Then, also don't forget about the engineers who wrote the "machine learning" software, and fine-tuned these systems.
The "special-purpose coding" is the little dark secret in the automation business. It turns out that these machines aren't that smart - they make lots of errors. Frequently, these errors are detected (by unhappy customers), and they can be patched - but usually in not-very-elegant ways by "special-purpose" code.
The case of Google's search algorithm is instructive. The core idea of pagerank is clean and mathematically simple and it tackles a lot of searches accurately. But there are still a sizable set of searches that don't return good results. Google has a whole team of engineers who work on search improvement. According to Wired, "the improvement process is a relentless slog, grinding through bad results to determine what isn’t working." They then deploy additional code to solve those specific search problems.
The development model is suitable for only some problems
Much of the AI software is created using the agile development paradigm of "fail often, fail fast" that have driven web development in recent times. As Brooks points out, this paradigm relies on "the marginal cost of newly deploying code being very, very close to zero." In most industries, the cost is not zero. There are lots of legacy systems that are still functioning. Replacing them will surely cause a disruption in the business processes.
On a related note, the fail-often paradigm only works in industries where the cost of failing is very, very close to zero. Many of the proponents of this paradigm give away their software "for free" so that users are not really customers. Typically, the cost of errors is zero when the value of the product is zero. When it comes to health care or self-driving cars, the cost of errors is >>>> zero.
The jump from recognizing the object in a photo to diagnosing cancer from an image is not straightforward. Brooks cautions against magical thinking and also "exponentialism," the assumption of exponential growth far into the future.
Read the article in full here. This one is also worth your time.
I agree with the overall conclusion but there are a few minor points that could be corrected:
① Watson doesn't play chess as far as I know.
② The last version of AlphaGo ("Zero") doesn't use any historic game logs. Starting from the rules and playing against itself it surpasses the previous version in just three days which is not general AI but still very impressive.
Posted by: Tore | 12/07/2017 at 10:24 PM
Tore: Thanks for the correction. Yes of course Watson is famous for the Jeopardy game. Point 2 is so new that I don't have an opinion yet. If it does not use any historic game logs, how would it learn human playing patterns? Also, I'm not sure about the applicability to other problems which cannot be reduced to a set of rules.
Posted by: Kaiser | 12/08/2017 at 10:27 AM