News for hackers. Stuff that matters.
Re:How Self-Driving Cars Work by argonaut on Monday December 26, 2016 @04:23AM (#13257600)
> Humans only have one sensor: a rotatable stereo camera. So at least in theory the number of sensors seems not the most important element ;-)

I hear this comment a lot when defending Tesla's choices, and it's a red herring. The fact that humans only rely on two cameras means nothing. Repeating old comments of mine:

You also don't "need" megawatts of power to play top-level Go: humans do it with 100 watts of energy. Yet Google needed who knows how many megwatts of energy to train and run AlphaGo on their massive server farm.

Imagine two companies competing to win at Go, and one company had the attitude that megawatts of energy was not necessary for training and prediction, and another company threw the biggest GPU farm they could. The second company just played top-level Go this year. The first company is ~10 years away from a low-energy elite Go computer.

Humans implicitly perform SLAM (simulataneous localization and mapping). What do I mean? Look around your room. Close your eyes. Visualize the room. As a human, you've built a rough 3D model of the room. And if you keep your eyes open and walk through the room, that map is pretty fine-grained/detailed too and humans can keep track of where they are in the map.

Doing this accurately in moving environments (especially with lots of pure forward motion) with just two cameras is still a wide open research problem.

Doing this with LIDAR/GPS/IMU/recorded maps is solved. That's why people use LIDAR.

Matching the abilities of human perception is an insanely hard problem. Don't let cute problems like image classification fool you. Why make the problem even harder?

Re:How Self-Driving Cars Work by Qworg on Monday December 26, 2016 @08:49AM (#13258207)
Even outside of the good points made by argonaut - our eyes are _amazing_ cameras. They are super high resolution, have many color bits, and work well in low light and bright situations.
Re:How Self-Driving Cars Work by demosthenes111 on Monday December 26, 2016 @05:44AM (#13257787)
Your point is generally valid, but it's worth noting that power =/= energy. It is conceivable that at 100 watts of power, a human could use on the order megawatt hours of energy while practicing to achieve top-level performance. 10000 hours of practice is not unreasonable to achieve mastery which would be 1MWh.

It's also likely that AlphaGo is reasonably efficient, given that it used custom ASICs.

Re:How Self-Driving Cars Work by Cybiote on Monday December 26, 2016 @09:27AM (#13258335)
There is also a difference between learning and playing. During play, the human operated at ~20 watts on computation while the machine ran at a rate of anywhere from 26,000 watts to 260,000 watts, depending on how efficient the TPUs are (and assuming 10x as the ideal case). The human is also learning new things about Go as it plays, planning complex muscle firing programs, filtering audio and managing attention, working on subconscious goals, running complex vision tasks, all while running its autonomic subsystem.

Low power is also still important due to issues of heat and energy availability. Low power also implies high efficiency which is important for several reasons.

The human brain is estimated at 20 watts (when people talk about computing systems they tend to not include the power needed for all the auxiliary infrastructure needed to keep it networked and cooled); it's also estimated that beyond 4 hours a day, learning effectiveness drops precipitously.

If we take the case of Go, you can take a 4 year old human and have a professional player by 13. This is about 950 megajoules spent by the brain while learning Go. For the machine, if you look at the learning part (self play, value and policy on 50 GPUs for several weeks) the estimate on energy spend is about 30,000 megajoules. The policy network is itself ~20,000 MJ, while the full AlphaGo system playing on a single GPU and 48 CPUs is just a strong amateur.

But this is not even an apples to apples comparison since the brain is not spending all of its energy on learning Go. In fact, learning how to play Go is very far from the most difficult thing the brain is learning how to do.

Re:How Self-Driving Cars Work by lern_too_spel on Monday December 26, 2016 @02:51PM (#13259496)
You're confusing professional level with world champion level. How many megajoules will it take to create a world champion Go player using the human brain? It would take multiple brains, each teaching each other. We can now train a professional-level Go player pretty cheaply — Zen Go plays at a professional level and runs on commodity hardware.
Re:How Self-Driving Cars Work by Cybiote on Tuesday December 27, 2016 @01:50PM (#13265117)
I did not actually. I pointed out the approx energy required to get to 1 dan professional then pointed out that a system trained with orders of magnitude more energy was still far less capable. To get to Lee Sedol is still < 3000 MJ (30 years of daily practice and study) which is still an order of magnitude less energy than training a single amateur level policy network.

To say AlphaGo or any RL system is learning from self-play is not in the typical understanding of the phrase. It's more akin to evolving with competitions against previous versions of itself, which should count as different instances. As stated on page 38 of 1604.00289.pdf

Between the publication of Silver et al. (2016) and before facing world champion Lee Sedol, AlphaGo was iteratively retrained several times in this way; the basic system always learned from 30 million games, but it played against successively stronger versions of itself, effectively learning from 100 million or more games altogether (Silver, 2016).

In comparison, from that same paper, it was estimated that Sedol could not have played much more than 50,000 games. My own estimate is about 40,000 games.

As for work required to learn, it's irrelevant to point out that one can learn from others. Learning, whether from play, books or study still requires energy spend and work by the learner. Most of the extra work is from study, occasional review with a tutor and discussions with peers--the last more of a meta-step: learning to learn. Accounting for books and some time with tutors will not, I argue, shift the budget much. Especially if you include that any machine playing Go requires overhead of power infrastructure, energy, cooling, networking equipment and occasional maintenance staff. And learning, improvement in architecture, requires searching through and discarding many changes and playing through a cumulative hundreds of millions of games.

The fact that humans have other available highly efficient means of learning is a boon and not a downfall. That's the whole point of getting to AGI. Learning from books and others is akin to learning by Program Synthesis from specifications.

Re:How Self-Driving Cars Work by lern_too_spel on Tuesday December 27, 2016 @07:06PM (#13267410)
As I said in my previous post, you ignored that a machine gets to 1 dan professional far more cheaply.

The reason I noted the requirement of other trained professionals for training a human is that those other humans can distill what they have learned over years of play into simple rules. The machine can also use those rules, but the particular machine you are comparing to was specifically trained without any such rules and was required to synthesize them from scratch from historical games and self-play.

Re:How Self-Driving Cars Work by argonaut on Monday December 26, 2016 @07:49PM (#13260600)
No, that is a ridiculous comparison. Then you should start counting the energy required to construct the Google server farm, the energy of all the computers used by all the engineers who built the farm while they were in university, on and on and on.
Re:How Self-Driving Cars Work by lern_too_spel on Tuesday December 27, 2016 @11:21AM (#13263981)
Now you're suggesting calculating the energy used by the human champion's ancestors, which I am not suggesting.

The computer can train itself with just records of past games and self-play. The world champion level human cannot. You must account for the difference in training.

Re:How Self-Driving Cars Work by argonaut on Wednesday December 28, 2016 @08:27PM (#13275078)
No, the computer can't. The computer was itself trained/programmed by humans.
Re:How Self-Driving Cars Work by lern_too_spel on Friday December 30, 2016 @12:35AM (#13282746)
It was programmed by humans who didn't program in any rules of thumb or patterns for playing Go. The computer synthesized all it needed to understand about how to win at the game from historical games and self-play. The human champion synthesized only some patterns himself and learned most of them from other professional human players.
Re:How Self-Driving Cars Work by louprado on Monday December 26, 2016 @11:24AM (#13258708)
Re:How Self-Driving Cars Work by Animats on Monday December 26, 2016 @01:54PM (#13259295)
Patience. It's early for Go. Remember when it took Deep Blue to play grandmaster-level chess? Now your laptop can do it. All of the better commercial chess programs now play above human level. Well above human level; the top programs are rated around 3300 on a good laptop, and the highest human rating is currently 2882.
Re:How Self-Driving Cars Work by argonaut on Monday December 26, 2016 @08:05AM (#13258092)
According to Google they used 280 GPUs and 1,920 CPUs. I'm sure they used custom chips in addition.
Re:How Self-Driving Cars Work by taneq on Monday December 26, 2016 @04:33AM (#13257624)
I've been wondering why no self driving systems seem to use DTAM or similar methods. Realtime dense 3D reconstruction and camera localisation on commodity hardware seems perfect for the job.
Re:How Self-Driving Cars Work by argonaut on Monday December 26, 2016 @04:43AM (#13257654)
There is a big open research problem in the state of the art in visual SLAM (visual SLAM = SLAM from cameras), it doesn't work when the environment is moving (!!!).

Visual slam is still linear-algebra/geometric/keyframe based traditional computer vision (including variants that incorporate GPS/accelerometer info). I think the state of the art is stereo LSD-SLAM, but I could be wrong.

Re:How Self-Driving Cars Work by jayjay71 on Monday December 26, 2016 @05:11AM (#13257724)
A great way to explain this to people would be to ask them if they've ever seen a panoramic photo glitch, and tell them that's what the car would be seeing most of the time (well, assuming anything is moving, like a car or a person or a piece of trash).