Another Way of Looking at Lee Sedol vs. AlphaGo
jacquesmattheij.com
jacquesmattheij.com
If they were to use only the policy net part of AlphaGo they would need a few milliseconds per move and only one computer to run it, achieving the level of 1p. Also, if DeepMind used specialized Go hardware maybe they could reduce the power usage a lot, but they didn't optimize for that.
For example, it would be interesting to calculate how much power is used in image recognition, man vs machine. The brain uses 20-40W and a cell phone only 5W, and we know cell phones can do image recognition, so, probably the computer uses less than the human given that human reaction time is 200ms and the computer could classify much more than 5 images per second, so it uses less time and consequently less energy per image.
I'm all for praising the enormous developments being made in modern computing, but this is absolutely needless exaggeration. Computers are far, far, far weaker at image recognition than even an 8 year old child. The amount of things humans can continually process, using a fraction of the brain (the brain is constantly doing visual processing without shutting the other centers down), whereas a computer can barely do simple tasks and takes longer to do that than "200ms", as you claim.
The brain is a mind boggling machine. Our computers are getting pretty kickass, but there is still a long long way to go.
It still uses a lot of hardware, but not hardware built for the sole purpose of playing Go.
Just because we're doing things that way doesn't mean there's a requirement to do so.
I read that when the British government wanted people to translate Japanese for them in WWII, they went to their universities and heard, from the relevant departments, that becoming sufficiently conversant in Japanese was a painstaking, multi-year process. Someone else heard about this, thought "pffft, I could train people to be conversant in Japanese in six months", and set up a school. He was right, the university departments were wrong.
You see so many (justified!) complaints that modern schooling is composed mostly of wasted time. Humans don't take 20 years to train.
Schooling is not primarily intended for academic training, at least until post-secondary levels are reached. Instead, it's primarily about socializing, instilling rule-following, reinforcing social roles, and so on.
No, new challenge.
The fact that DeepMind accomplished this feat, period, is what's most important. The fact that it runs on Google Cloud Platform, not custom-built hardware (à la Deep Blue), is almost as important. When it inevitably shrinks down, that would be icing on the cake.
I still think that looking at marginal energy cost while playing the game is an interesting approach.
In Chess no top player can beat his/her cell phone. This milestone will be eventually achieved in Go too.
I fail to see why energy-parity comparisons are 'more fair' or 'better'. We don't have soccer matches for people who eat nothing but two sandwiches a day, do we? Has a marathon winner cheated if he ate a few bananas during the race and the runner up hasn't? Of course not (well, 'of course' to me, it seems that the OP might disagree?).
I guess we could move on to comparing sporting wins by people who used steroids, but that would just stray from the actual point.
That said, I don't think it's the same. Vehicles and fighters are classified in various ways (power/weight, but also experience, e.g. pro and amateur classes) because otherwise the competition becomes 'who has the best engineering team' and not 'who drives best'; or 'who has most fighting skills' and not 'who can overpower his opponent through sheer force/mass'. It's purely to keep it interesting and/or exciting.
In this case, I interpreted the argument made in the OP as 'it only becomes an achievement when the computer constrains itself to the boundaries the human has by its nature'. I don't see the point of that. An F1 car is unarguably faster than 50cc kart. If we talk about 'who can drive the fastest', it doesn't make sense to say 'it's not a 'fair' comparison'. It is, and the F1 car is faster, period.
The nature of the past match was 'who is the best Go player, no holds barred'. Call it the UFC 1 of Go. Back in 1994 in UFC 1 there were no weight classes, no restrictions on techniques - the question was 'who is the best fighter'. It's not like after that event the sumo guy said 'yeah well I can't move as fast because I'm 200kg, so we'll only know who is the best fighter after a jiu jitsu guy fights me but doesn't move faster than I do'.
I guess there is more nuance to the debate than I originally thought. I still think it doesn't make sense to impose artificial limits. We might have tournaments for humans and tournaments for machines in the future, just like we have nascar and F1. But there is no mistake who is the best player.
I don't think this is a particularly accurate interpretation considering the author says:
>Now, not to diminish the achievement of the AlphaGo team, what they have done is nothing short of incredible
I think a more charitable interpretation can be found by looking at the closing paragraph which starts with this line:
>So now the interesting question (to me at least) is: How long before a computer will beat the human Go world champion using no more power than the human.
Describing this as "a computer beats a human for the first time but using a lot of energy" somewhat misrepresents it because a Go bot running on a mobile device will wipe the floor with the vast majority of humans - and most amateur players, because there's a power law distribution with these things and so most players who're any good, including bots, are better than the majority of players (while at the same time being not even remotely interesting to play with for a very large number of stronger players.)
The point is that any mobile device can be "trained" with a few clicks to wipe the floor with most humans, for whom to catch up with the bot would require a lot of energy (and perhaps isn't always possible.) Does it make phones smarter the people? I dunno, but it certainly shows that these comparisons are never "fair" and the only real question is what practical implications of "intelligence" you care about, then you can evaluate things meaningfully.
That's why I fully expect supermarkets to have drastically reduced labor costs in a few years, as shelved goods will be restocked by micro-forklift robots, checkouts will be automated and the human staff is reduced to two or three supervisory and customer-relations positions.
*And yes, there's no guarantee it will continue improving at the same rate.
There's plenty of back and forth arguments that can be made as to whether the energy argument is a true test of fairness, but I don't think it matters if it's a good yardstick for fairness or not. It was an amazing feat to create an AI of any size that could beat a professional.
But I think it gets the reasons wrong. It says we'd call it unfair because the race car uses so much more energy. I think we'd call it unfair because the outcome is such a foregone conclusion. We know the race car is going to be way faster, so the race is pointless. It's a foregone conclusion, so why even bother unless you do something to make it more even?
Go back to the very early days of automobiles, when they were so slow that a human runner would be faster. Then a new one comes along that can beat a human. The first car faster than a person!
Would you be amazed that machine has beaten man? Or would you say that it somehow doesn't count, because machine used more fuel than man? I'm pretty sure most people would not go for the second one.
The bulk of the compute is in training the model... I would bet that a cell phone AlphaGo is <200 ELO (or whatever passes in the Go world) weaker than the massively distributed version--good enough to be competitive with Lee Sedol.
The problem with Go was lack of evaluation function that would guide the policy. So it had to be learned simultaneously.
You can leave AlphaGo to play a billion games and then learn a policy that requires little to no search but has almost perfect evaluation (local optimality of minimizing future regret).
Same positional play is exhibited by Komodo, and it requires not that much of depth searching, while currently AlphaGo rolls out a whole game for every move.
60 years ago: "The ENIAC uses so much more energy and takes up more space than a human to multiply numbers, I want to see a calculator multiply faster than a human running on a 5V watch battery before I draw conclusions"
If no - computers still win because they scale better (play better as a team).
Given how well collective intelligence worked in that game, it'd be pretty interesting to try it against AlphaGo.
No, I (and I think most sensible people) would say that's pointless – we know who's going to win. If you have a sufficiently smooth surface or it's worth creating one, cars are way better at their specific task than humans are. Everybody knows that and nobody uses humans for transportation or walks when they care about getting there fast.
Why is everybody so scared that computers might now “be better” than humans?
That's not really what it comes across as. Most posts like that reek of moving the goalpost.
Also the efficiency goalpost is probably the easier problem. Advancement in processor designs, microarchitecture, and basic code optimization will get us there, not necessarily changing the techniques of AlphaGo.
* 60 years ago ENIAC was room-sized and slow, now salesmen hand out branded solar calculators for free * As the article mentioned, deepblue was a massive computer with custom hardware, now your <1W phone can run stockfish. The achievement wasn't by the chess team, it was by Intel, ARM, compiler developers, etc.
What is it exactly that they're trying to protect? Perhaps at the core is a fear that if someone or some thing does something better than me than I'm not worth as much, or more generally, if "they" (the machines) do things better than "us" then we're not worth as much, and what wouldn't we do to feel worthy... but I feel this whole nonsense stems from a belief that anything in existence could really be unworthy. I remember a short passage, from one of Raymond Smullyan's books noting two different responses from humans the day it is discovered that it is possible to make machines that are indistinguishable from humans. The first says glumly: "So, we are just machines?" The other says with joy: "I didn't know machines could be so wonderful". It's not a contest of worthiness - it's reality beautifully playing out and there are no unworthy players.
I find it quite funny that you'd take what I wrote and that you'd manage to wrangle from it that we need to be consoled. I simply observed that there is another challenge, one that in chess has since the first computer beat a world champion been more than met and that in Go there is still some distance left to cover.
Put another way, if the size and energy consumption would not matter do you think that there would have been improvement in the Chess programs post the point where they could beat any chess player in the world? Clearly the Chess programming community thought otherwise and we've seen a major improvement in algorithms and this resulted in a huge decrease in the required computing horsepower. That's smarter programming, not using larger computers to achieve the win through brute force and to me - feel free to disagree - that's an interesting prospect.
I don't disagree with you at all. In fact, I think probably we're headed for the same improvements over time with machines playing Go as was with machines playing Chess. I think that in addition to better algorithms, Chess had the advantage of having Moore's law being in full swing over these years, which will probably slow down, but there's always something new and unexpected coming up, so beyond multiple processors and GPU's with lower energy consumption I'm sure there will be even further improvements in the machine learning methods and other things that I can't yet imagine.
This does bring up a point I've wondered about: why haven't we yet found a productive way to spend lots of computing power on making us better programmers? Usually the most cycles are spent on compiling and on test runs, costing only a tiny fraction of our hourly rates. (Maybe that compute budget for software development looks at least somewhat different at Google and some other places.)
> why haven't we yet found a productive way to spend lots of computing power on making us better programmers? Usually the most cycles are spent on compiling and on test runs, costing only a tiny fraction of our hourly rates.
The Go language (ironically) addresses some of this by putting programmer productivity very high up in their feature list by focusing on compiler speed to the point where some of the differences between compiled and interpreted languages disappear.
Of course, there's a lot more to programmer productivity than compilation speed, as Fred Brooks pointed out.
The GPUs alone could consume that much power depending on the model but it's quite hard to find hard data on what went into the making of AlphaGo on the hardware side.
The TDP of the 24 core Xeon systems that were most likely used is 6.8W per core.
(1920core × 200W/machine ÷ 24core/machine + 200gpu × 280W/gpu) × 4h = 288kWh
The original is still somewhat acceptable as a Fermi estimation and argument, as AlphaGo still uses more energy (3600 times more) with this conservative estimate.In the world of Chess it took until 1996 before a computer won against the then reigning world champion, Gary Kasparov in a series of 6 matches.
1) His name is Garry Kasparov
2) Kasparov won the 1996 series against Deep Blue 4-2, it was in 1997 that Kasparov lost 2.5-3.5
That's a very bold statement to make coming from the perspective of an industry that does just about everything it can to save energy. Better programming means lower energy consumption, to achieve a win like this on 1% of the energy budget would be a major game changer (no pun intended).
AlphaGo is still using brute force quite a bit, the stage is set for a much improved batch of software that will focus less on brute force as a main strategy.
"yes Lee Sedol only consumes 20-40W during a game, but you have to sum all the energy consumed to create him, and the power he consumes when he's not playing etc" but then they fail to apply the same logic to computers
Sum all the energy required to create computers over the past however many 50+ years then let's see if it's the case that computers made by evolved computers are any more efficient than their evolved creators
In contrast, making a Lee Sedol will never be cheaper, and he lacks all of the other myriad advantages of software, like being instantly clonable and continuously improvable. You will never be able to mash up Shusaku and Sedol to see what they do, train them against each other for subjective millennia, examine the internals of their position evaluation, increase or decrease the sizes of their brains, compress them into much smaller neural nets, combine with other algorithms like MCTS, etc. Energy consumption is among the least important aspects of AI at the moment. We are not in a situation where we know how to make a feasible human-level AI but because electricity costs 10 cents/kwh no one can run, but they could if electricity cost 5 cents/kwh...
Over what distance? I think it's generally accepted that a human sprinter is faster than the car if the race is short enough.
I can't find an example of human vs F1, but here's a fast sprinter vs a standard car: http://www.roadandtrack.com/motorsports/news/a21802/olympic-...
And here's a slow sprinter versus a much faster Indy car: https://www.youtube.com/watch?v=seNRu5JjpDM
The obvious comparison would be to a "blitz game" in Go, where I think that humans still have the advantage. Would a shorter (or longer) time be somehow inherently "fairer"?
Edit: I see lots of "no fair!" comments here. I think people are failing to grasp how supremely efficient biological systems are at dealing with exactly the sort of messy/noisy/lossy reasoning required for real-world problem solving, the sort of reasoning I see linked (incorrectly IMHO) by various media to the advancement demonstrated by this hyper-specialized Go playing machine.
Edit2: (I removed that "little to show for it" bit before I saw your comment because it was leading to a digression I realised I would need to defend which seemed unwarranted in this context. Sorry about that!)
Those fossil fuels allowed us to rapidly bootstrap ourselves through the industrial revolution, and to get to the point where renewable and carbon-neutral energy isn't just feasible, but already being used in many places.
I'd say we've got quite a bit to show for it.
A great implementation of this is type of thinking is Morocco's solar plant in the Sahara [0]. Though I don't think this would have happened if it wasn't also thought to be a good investment, and urging a bad investment that you're not willing to participate in would definitely be hypocritical.
[0]:http://www.npr.org/sections/thetwo-way/2016/02/04/465568055/...
The Formula 1 car would do quite well for the first few hundred miles. But you would eventually get an Aesopian 'tortoise and hare' effect.
In the real world the OP's point is a good one. Lee SeDol could outlast AlphaGo by making it use too much in the way of resources (energy, human work, maintenance) untill he could get close enough to fell the beast with a stone arrow or hardened wood spear...
Here's a fun idea. Chess is thoroughly lost to the computers at this point, but what if we add in an element that would give the humans an advantage? There's a real actual sport called Chess boxing. The competitors spend three minutes playing chess, then three minutes pounding the crap out of each other, alternating back and forth. Let's see how well a modern computer can do at this game!
I suggested a combination of the two and he told me about Chess boxing:
To keep things fair, I think we should require the computer to view and manipulate the physical chess board and pieces. None of this nonsense of feeding it moves through a keyboard and taking instructions off a screen.
Though on the topic of the movement aspect of boxing, machines are still pretty bad at keeping their balance and moving around the world, even without limitations.
I note that the players are allowed to bring water to the chess table. I'm not sure if there's a rule against pouring it on your opponent. The computer might need to take this into account.
And on the point of existing rules, the existing rules aren't enough for this type of competition. First of all the weight class: are robots men or women? It says age 17+, how does that affect the robot? There's no rule against pouring water on the robot, but there also isn't a rule against releasing nerve gas. My robot is a pourous metal box with a canister of gas which renders everyone unconscious, do I win by K/O?
Also, they already have battle robots, and they look nothing like conventional humans (one common design is a flat panel that slides under the opponent and jettisons them)
As for reaction speed of man (100+ms vs machine), I'll just link this: https://www.youtube.com/watch?v=3nxjjztQKtY
This tournament is sounding better and better all the time!
Sure, it will probably still win in this setup say in a year or so, but it will provide a much closer match if done within the next few months.
So this is not a fair comparison. Yes Lee was pretty cheap energy-wise to "run" during the game itself, but needed 150W or so constantly for 33 years to get trained to be as good as he is (brain is cheap, but obviously you have to keep the body alive too). Plus the massive support structure needed to raise him, teach him, get him interested in Go, provide opponents to train against. As you can't have a grandmaster. You need 10 grandmasters, 1000 really good players, 1000000 good players, and so on to train someone to get to this level.
AlphaGo needed 1MW, probably about the same for training. If AlphaGo got trained in about a week, I bet the energy difference would favor AlphaGo, depending on what you count you could make AlphaGo or Lee Sedol win the comparison, so really, it's a tossup.
And let's compare it to chess. Deep Blue used probably a similar amount of power in it's entire lifetime as Gary Kasparov will need for his lifetime. Maybe a factor 10 difference, but no more. However, a current chess computer uses less than a billionth the amount of power for learning & playing chess than Gary Kasparov needs to live and learn to play chess at his level.
Also comparing the human brain and cpus in general, it should be noted that we are just good at different things. When it comes to basic arithmetic, human brains are much less energy-efficient than cpus.
One interesting thing I found by Googling FPGA (which is the easisest way to build a new chip) and neural networks, Microsoft is building one which requires considerabley less power: https://gigaom.com/2015/02/23/microsoft-is-building-fast-low...
But this article takes the cake for moving goalposts. It declares that the Go match wasn't fair because AlphaGo got to use far more energy than Sedol.
On the surface this claim is kind of absurd. You could give Sedol an electrical outlet with as much power as he wants. It wouldn't help at all. Humans can't make their brains bigger, or use more power, even if they want to. Which is one advantage the AI has. And that's totally fair.
But beyond that, until now no has really cared about the energy usage of AIs. The fact an AI could even do a task on the level of a human was incredible, regardless how much energy was required. The Energy usage isn't important in this domain. It's board game playing. It's shifting goalposts to goals that don't even matter!
But there is a valid reason to care about energy usage. It does cost money to run AlphaGo, and in other domains that could matter a lot. But even from the economic perspective, it's not accurate. I bet the food budget of a human is way more than the electricity budget of AlphaGo.
For this economic estimate, you need to factor in more than just energy. A human takes 20 years to mature. AlphaGo took less than a week to get good, and a few months to be the best. And over the human's life, they will use lots of energy and food.
Humans are extremely expensive, as can be estimated just from wages. If it requires only a rack of GPUs to replace an expert human, it may very well be worth it economically.
Additionally, AlphaGo doesn't require a huge distributed network of GPUs. That improves it's performance only slightly. Google claims that a version of AlphaGo that runs on a single machine, was able to beat the distributed version 25% of the time. Which would still give it a higher Elo than Sedol, who only beat AlphaGo 20% of the time.
Now besides all that, there is an important point here. Once you get past the accusations of "unfairness", it's still very interesting that human brains are so energy efficient.
But the reason for that is that artificial neural networks are run on general purpose hardware. Human brains are highly specialized hardware. General purpose computers always consume vastly more energy than specialized circuits, optimized for energy usage. GPUs compute every possible synapse to 32 bit floating point precision. Most that computation is unnecessary. The majority of synapses are 0, and only a few bits of accuracy are required on active synapses.
I know this because there has been a lot of recent research on efficiently running NNs. Especially on low budget hardware, like mobile phones or embedded devices. This is something that is already possible, and is only going to get better over time.
In the future AlphaGo could be ported to cheaper hardware, and even to specialized FPGAs or ASICs. Those are incredibly energy efficient. But there was no reason to do this for the match vs Sedol. The fact they didn't do this, tells us nothing about the progress of AI.
Starcraft, anyone?