Go and machine learning: a day to remember
For many of us in the west the news yesterday that a machine has finally been able to beat a human at the ancient oriental game of Go probably had little impact. To begin with, we’re probably not even aware of how popular it is (more than 40 million players around the world) in countries like China — where it is considered one of the Four Arts, or in Japan, where matches would once take several days to complete (today, the maximum is 16 hours over two-days).
Go is a game of strategy usually played on a square board made up of 19 lines horizontally crisscrossing another 19 vertically in which the object is to surround the pieces, known as stones, of one’s opponent. The rules are relatively simple, but it takes thousands of hours of practice given that the number of combinations is virtually infinite.
The complexity of Go has presented a major challenge for researchers into artificial intelligence and machine learning for decades now. Over the years, different techniques have seen machines beat humans at noughts and crosses, then draughts, and finally the historic Deep Blue chess match with Gary Kasparov. Then came Watson, which beat the best players of Jeopardy, along with Google’s algorithms that were able to learn dozens of Atari console games. But Go remained out of reach: the best artificial intelligence machines could do no better than a human with the most basic understanding of the game.
The problem was in the methodology. Approaches based on probability trees soon came up against the huge combination of possibilities in Go, and training a machine through the analysis of thirty million Go moves established by the world’s best players, a technique known as deep learning, simply produced a machine that could imitate the experts, able to predict moves in 57 percent of cases, but that was not able to improve its performance in a game.
To beat the best humans, another approach was taken: the use of reinforcement learning, which consists of training a machine to play against itself, which allows for the creation of a collection of movements that can be fed back in. In other words, the system starts learning from data generated by humans, but continues to learn by data and hypotheses generated by the machine itself, creating moves that didn’t previously exist, and trying to solve them by playing against slightly different versions of itself. Such a task requires enormously powerful computation, in this case from the Google Cloud Platform. In fact, the technique used had been previously designed by Facebook not so long ago, but Google has been able to scale it and has won. The techniques are relatively simple, easily replicable, and the calculations performed are not that large, is based on the intensive use of cheap GPUs. That dramatically contrasts with IBM’s Watson’s success on Jeopardy, which is based on much more complex algorithms.
Finally, an algorithm created by Google called AlphaGo, was able to beat one of the world’s greatest Go players, China’s Fan Hui, not once, but four times in a row. The feat was witnessed and documented by an editor at Nature magazine, and marks a major step forward in the use of artificial intelligence in areas such as scientific analysis. The repercussions of this breakthrough are potentially world changing. Next up will be Lee Sedol, a South Korean who has won more Go tournaments than anybody else in the world.
As they might have said in Out of Africa, “Marvin Minsky will like that. I must remember to tell him”.
It was precisely Minsky who killed, around the ’70s, the initial stages of research on neural networks demonstrating that they could only be used to solve linear problems. It took a whole decade to realize that it was key to keep researching them… and now these techniques have been the ones solving Go!
The coming years will see successive demonstrations of how machines with the necessary computational power, subjected to a well-designed training process, are able to improve on human efficiency when it comes to carrying out increasingly complex, increasingly human, tasks. If there is one area of science, adequately explained, that gives me the impression of witnessing something that is going to change the future of humanity, it is machine learning. And if you think that it’s not going to affect your job as a manager, then think again.
(En español, aquí)