Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Unreasonable Ineffectiveness of Machine Learning in Computer Systems Research (sigarch.org)
168 points by donnemartin on April 9, 2017 | hide | past | favorite | 97 comments


> Driverless long-haul trucks are apparently just a few years away, and the main worry now is not so much the safety of these trucks but the specter of unemployment facing millions of people currently employed as truck drivers.

No, no they're not. We have some lane tracking in good weather etc., but we are still decades (or more) away from full level-5 autonomy that would make drivers behind the wheel unnecessary.

But it only goes to show that not even computer science experts are immune to marketing hype and well funded PR campaigns. :)

As for the unreasonable ineffectiveness - it's not just in systems research. ML can be very effective in some areas (especially when there is a ton of training data), but many areas of human endeavor are hard to model via function approximation techniques like those used in most of ML.


Noone is entirely sure exactly when we'll reach level-5 autonomy, however, that doesn't matter for the specter of unemployment - the currently demonstrated level of availability seems clearly enough to put half of truck drivers out of work by all kinds of automation e.g. trucks self-driving on the regulated toll roads during time that drivers have their mandated rest; one driver supervising multiple trucks or driving a column of two-three trucks, etc. This alone is sufficient for both a significant tick in unemployment and as a downward pressure on wages of there low-skill workers that have a job.

The question of "replacing drivers" isn't about when machines will be able to do exactly what drivers do now, it's about when we'll figure out to achieve the same end result with much less labor, likely implementing significant changes to the process.


> trucks self-driving on the regulated toll roads during time that drivers have their mandated rest

How would this be possible at anything less than level 4-5 autonomy? If they can take a nap, the truck's got to be fully autonomous.


It doesn't need level 5 autonomy, and level 4 autonomy in managed conditions seems quite reachable. Also, in this situation, it's okay if the car decides that a problem is unsolvable as long as it stops safely - if it encounters weather or road conditions that it can't safely handle, the driver will handle it; if it needs interaction with cargo, police or refueling - the driver will handle it, etc.

Level 5 is so distant because it requires solving many problems that we haven't fully acknowledged yet; but Level 4 is different, major car companies (e.g. I recall a quote from Ford, probably Volvo as well) have stated that they don't ever intend to produce a level 3 autonomous car, that they want to go straight from level 2 driving assistance to level 4 cars since expecting a driver to monitor the situation all the time and be able to quickly take over (as level 3 requires) isn't realistic from a safety perspective, many drivers simply won't/can't do it.


Level 4 includes autonomy in the "operational design domain (ODD)" of a vehicle. I'd have thought that on a tollway that's being maintained specifically to support some self-driving trucks that the difficulty of Level 4 is a few orders of magnitude easier than cars in a residential district.


Maintaining tollway for self-driving is still going to add to "manually helping" cost. The operational domain of a vehicle includes roads of varying conditions that a human driver can navigate with relative ease.


The operation domain of general purpose consumer vehicles includes all roads of varying conditions that a human driver can navigate with relative ease, but the operation domain of e.g. an EU long-haul truck company can be easily limited to a set of pre-mapped highways.

Manual handling of problem cases that can be done from a central dispatch center would still require far less people to deliver the same cargo than now.


> one driver supervising multiple trucks or driving a column of two-three trucks Could be introduced much earlier than fully autonomous mode.


> but we are still decades (or more) away from full level-5 autonomy

Decades? Are you really sure? This assumption seems quite uninformed to me. The Grand Challenge was 12 years ago, from then we evolved from Level 1 to Level 3. Back then there was no data, computing power wasn't available as today, chips (&sensors) can be designed an built within a few months or even less these days for far less money. Machine Learning and Computer Vision made many advances in these 12 years (talent in these fields is now easier to acquire as more people can learn about it these days). We are at a completely different point these days. Level 5 is not the matter of decades, 5 years, 10 max. But not decades.


The auto industry seems to think that 2020-2021 will be the year self-driving cars become commercial products. Product plans are being made on that basis. At least freeway driving will be supported.


I disagree. I think the higher levels are many orders of magnitude more difficult.


Volvo is supposed to be rolling out a few level 4 cars to the public this year. (Level 4 being no human attention required on certain roads that the car knows, if there are problems it drives to a safe place to park and pulls over). http://www.theverge.com/2016/4/27/11518826/volvo-tesla-autop...


It max 5 years or even less, if the problem is in engineering the solution. But if the problem is in underlying maths in building Level 5, then surely its decades


One of the lessons of these first steps toward autonomous driving is: if you have a big array of sensors, and plenty of on board computing, then many driving problems, especially in semi controlled circumstances, like open highways, are within our grasp now.

The sensors and computing are expensive now - especially lidar. But that's an engineering problem, as you suggest.


The problems in automated driving are not in controlled and normal circumstances but in all the edge cases and exceptions.


No objection. But portions of commercial routes can be arranged to get around many of these edge cases.

I was trying to address the question raised by the comment above: is this a problem of principles or of engineering, by saying that for a big (proportion TBD) segment of routes, it's engineering. Put onboard a bunch of sensors and computer power.


Yes, but that is a hack of sorts, and if the volumes are low a very expensive one so likely this will not happen until there is a sizable fleet of vehicles that can take advantage of it. You'd expect those things to happen in lock-step.

The apples-to-apples comparison of automated driving to normal driving is that we have an existing road system and we want to use that for automated driving and normal driving and automated driving should meet or exceed normal driving if it is to be successful.

The ultimate adapted commercial route for transport is called a railway, any kind of re-arrangement of the road system in order to adapt it for better use for automated driving is going to be a 'first world only' affair, and probably only a very small subset of that first world.

So for the foreseeable future automated driving systems will have to cope with all of the eventualities, even if for some stretch of their workload they may find things a little easier because of special adaptations (which of course will have to be equally accommodating to human drivers, or at a minimum not hinder them).


>'first world only' affair, and probably only a very small subset of that first world.

As in, heavily trafficked inner city routes like buses. I think it will make a lot of impact fast.


People also do really poorly in edge cases. Don't forget self driving cars are going to quickly have billions of road miles worth of data.

There are plenty of videos of autonomous cars is highly chaotic road conditions, but that's all old hat. Weather is an issue, but weather is also forecastable. Even if you only get rid of truckers in areas stay above freezing that's still a massive change.


> People also do really poorly in edge cases.

That's true but if they are simply different edge cases it might already be problematic.

And yes, the data will be there. But even if deep learning + lots of data is 'indistinguishable from magic' that does nothing to dispel the feeling of loss of control and every accident where regular drivers would think 'that would never happen to me' (see the Tesla one with the truck that got rammed) is going to make this a much harder battle.

So the question is: will the initial deployment of self driving vehicles be sufficiently impressive that any such errors will be forgiven?

I'm on the fence on this one, I have no idea where it will go but I'm kind of happy that this is happening now. I got to enjoy the 'drive yourself' period of driving in some of the best cars that were ever made and at the same time I'll probably be able to enjoy increased mobility due to some form of assisted driving much longer than what I would accept for myself as an autonomous driver.


Just don't forget that the competition isn't a perfect driver, but a human one. That's a much lower bar.


It's not that much lower. In all the Lyft/Uber/Taxi rides I've taken, not once has the driver ever crashed or disengaged. Humans go around 100 million miles per fatality, if I recall correctly. The bar isn't perfection, I agree, but humanity is still a high hurdle (especially when we cost as little as $7/hr).


> but we are still decades (or more) away from full level-5 autonomy that would make drivers behind the wheel unnecessary.

Do you have a citation for that? I often see this asserted, and I see many assertions the other way. Whenever I personally see self-driving cars in the wild, I'm astounded at their effectiveness on uncontrolled access roads. What makes you think controlled access roads will be much more difficult? Or to be more specific, why is industry consensus that we are decades (or more) away from this goal? Or is this just your personal opinion?


> none of us in the automobile or IT industries are close to achieving true Level 5 autonomy

- Gill Pratt, Toyota Research Institute http://spectrum.ieee.org/cars-that-think/transportation/self...

> It will be 25 years before self-driving cars take off in America

- Bill Gurley, Uber investor http://www.cnbc.com/2017/04/06/bill-gurley-uber-investor-sel...


> It will be 25 years before self-driving cars take off in America

The actual quote is:

Venture capitalist Bill Gurley thinks it will be more than 25 years before the majority of rides in any major American city are performed by autonomous vehicles with no steering wheel.

Note that this is actually an argument against us being "still decades (or more) away from full level-5 autonomy that would make drivers behind the wheel unnecessary." (to quote the OP).

If in 25 years time more than 50% of trips are in autonomous vehicles with no steering wheel, and assuming the average age of the car remains roughly the same (11 years)[1], then completely autonomous cars will have to be available much earlier than 25 years.

However, I'd note that he said "more than" (so who knows exactly what he meant) and also self-driving long-haul trucks are a different subset of the problem. It may be easier to make long-haul trucks which just drive between cities and drop off items at depots than cars which drive though city streets.

[1] https://www.usatoday.com/story/money/2015/07/29/new-car-sale...


Pratt has to say that because Toyota is so far behind. He was hired to build up a self-driving group within Toyota.


TRI's association with UMich and MIT makes them more biased towards issues about the difficulty of running self-driving cars in adverse weather conditions because that's the problem that all the researchers at UMich and MIT have had all the time and it's a problem that Google/Stanford have never had in always sunny California.

I have personally heard of the complaints of John Leonard (MIT) and Edwin Olson (UMich) about the severe lack of research of self-driving car robustness in weather conditions. The issue is real.


Ok then, how about Waymo's ex-lead Chris Urmson. "If you read the papers, you see maybe it's three years, maybe it's thirty years. And I am here to tell you that honestly, it's a bit of both."[1]

He goes on to explain that easier domains may come sooner (so maybe level 4), but his comments certainly pour some cold water on level 5.

[1] http://spectrum.ieee.org/cars-that-think/transportation/self...


How is Toyota behind? Don't they have an entire robotics division? Google, Uber, and all the other guys had to cobble together something that looks like a robotics division but Toyota has all of that already figured out.

I think if anyone pulls this off it is Toyota.


Robotics has little to do with self-driving cars at this point, which is heavily ML dependent while the former hasn't been so far (yet, that's changing).


So if you were a betting man what would you go with. A bunch of software folks that don't really understand robotics. Or a bunch of robotics folks that learn some ML.

I think the ML is the easy part. The real engineering in making these things truly production ready is the hard part. Only few places in the world have that kind of production expertise. Toyota being one such place.


You keep assuming a self driving car strongly resembles a traditional industrial robotics at all.

The actual actuating part of a self-driving car is fairly easy (just turn the wheel, apply the breaks), it is the control system and sensing that is key to success, the former being software, and the latter (LIDAR) that Google is heavily invested in while Toyota is very late to that game.

Right now, if I was a betting man, Google will beat Toyota. Of course, Toyota could always flip the table and take some risks, but that isn't what Toyota is known for. If it happens great! But I don't think any smart money sees Toyota having a clear advantage ATM.


I think you're downplaying the actual engineering required. Robotics is more than just actuators. Robotics folks have been doing sensor fusion, control, and learning for much longer than software ML folks have been doing those same things.

I'm saying a software company is not gonna crack the market. Software companies neither have the expertise nor the engineering discipline. Boston Robotics and Google have been famously not getting along and their self-driving division seems to have been horribly mismanaged for a long time and we are now seeing the fallout in the form of lawsuits.


http://www.toyota-global.com/innovation/partner_robot/histor...

Industrial robots, and humanoid robots for entertainment purposes. Whereas Google has many of the founders of ML, not to mention its experts. Is Toyota, who already seriously undervalue software, willing to pay top dollar for those people when their average SDE makes < $60K/year (not just a problem with Toyota, but Japan in general)?

You also seriously misunderstanding the amount of engineering discipline needed to build modern software systems.


Misunderstanding? Given that my day job is to literally build tools and infrastructure for "modern software systems" I don't think I'm misunderstanding things at all.

But whatever I can say on "modern software" has already been said much better by Alan Kay so I'm going to defer to him for the rest of this conversation.

I'll buy Toyota stock. You buy Google stock. We'll compare notes in a decade and see who managed to make self-driving cars commercially viable.


I guess you'll find Toyota stock to be incredibly undervalued with a P/E of just 9.5 vs. GOOG's 30.26. The market isn't treating Toyota like a tech company. The market has already spoken, they've placed their bet on Google, which means that boat has already sailed. If you believe TM will make a tremendous comeback, then you could make bank, but that is a risky bet vs. a safe one (given today's information).


I'll just twiddle my thumb and look bullish on Tesla


I'm betting it also has to accelerate and decelerate at appropriate times.


Is that industry consensus? Also, I think closed-access freeways are very well mapped, is level 5 needed to disrupt the trucking industry, or will level 4 do?


Yeah, my guess is that for trucking, we'll be looking at two drivers per N trucks, moving as a convoy. (Two drivers means one can sleep, and the convoy never needs to take long breaks.) You have to have someone there to take over if a truck goes down half way between Boise and East Nowhere. All the better if they can keep an eye on the monitoring systems for the convoy; taking over driving the lead truck will presumably also be an option for as long as it needs to be.


Gurley says 25 years until majority of trips with self driving cars in the US, and that's because of legal hurdles, not technological ones. I don't have time to watch the video with Pratt.


Why are we limiting ourselves just to the states? Markets like China with severe traffic and parking problems and authoritarian governments to push through changes are more likely to adopt self driving cars than developed markets with plenty of roads and parking.


Good luck having a machine driving in the absolutely chaotic Chinese traffic.

I've seen full size buses driving at night on low visibility with lights off.

Bikes just doing illegal 90 degree sharp turns against oncoming traffic.

Pedestrians crossing 5 lane roads frogger style.

You name it...


Ya, it seems like the last place! But the need is strong, the will is there. Baidu and many other Chinese companies are making big self drive car investments.

Self driving cars are just a toy in the USA, but in china they could optimize infrastructure that is extremely limited and unable to grow to meet demand. They are also not above changing the rules as needed (like when they put up fences in our office so we couldn't easily cross the street to our other building, all in the name of keeping pedistrians off what was otherwise a very untrafficed road.


I think that was Gurley's point. In many Asian countries the need is greater and the ability to sue lower, so self driving cars will be on public roads much earlier than in the US.


At the point of level 4, the roads and conditions will change to better accommodate, likely pushing cities and villages farther apart (particularly in America).


How would they be pushed father apart? Where would they be pushed to? America isn't exactly known for its density.


Trucks driving autonomously on the interstate and being picked up by a human operator near city limits doesn't seem that far away. The trick will be to balance competition and the need to be first to market with the risk of accidents, because every negative PR hit for self-driving cars sets back the entire field politically.


This is an interesting idea. It has parallels with harbor pilots who guide ships through harbors and other hazardous waterways.

Edit to add: Taking the idea a bit further, why not have remote drivers who can handle these problematic bits?


Regarding remote drivers: probably for the same reason we don't have remote harbour pilots.


Do you have a specific reason in mind? I have no experience in this area, so my own speculations are just that. One practical issue may be lag. Connectivity would also of course be very important.

There are historical reasons as well, but given we're discussing new technology (automated trucking), there are plenty of things that will change as a result and may not have much sway going forward.


I'm not familiar with the actual design decisions involved, but I'd also imagine field of view for an on-the-spot operator would be better than for someone operating through cameras, unless you invest in a very expensive surround setup.


Can't remember the name of the start-up, but there are people working on remote truck driving.


The most difficult problem for semi-trucks and their drivers are delivery and pickup. Full level 5 autonomy for a truck would need to include navigating busy parking lots, backing up to bay doors, loading docks, and loading lots. Other tasks simple for a human, but difficult for machines would be identifying where the delivery/pickup point is, and actually unloading/loading goods. All these can be solved, but will require some level of standardization. I expect they will be easier and cheaper to solve with humans for some time.

I see a future where drivers get in the truck, handle the hard bits at the beginning and end, the truck handles the tedious A->B without stopping, while the drivers can rest, and then the drivers take over at B.


Waymo's test drivers have to take control once every 5,000 miles.


That is impressive, but isn't Waymo driving on some limited number of pre-set routes?

It would be nice if there were some credible, unbiased sources that were predicting when full level 5 might be viable.

Edit: Maybe a somewhat credible opposing view. Though he may be crabby about his department being drained of talent, and so not unbiased: https://motherboard.vice.com/en_us/article/robotics-lab-uber...


Waymo does a lot of driving in suburban Austin and suburban Mountain View. Their claim is that this is more difficult than most driving, since stop-and-go traffic with intersections every quarter-mile and pedestrians around is a more complex environment than highway driving.

This claim is almost certainly true for the topic at hand, since long-haul trucking is the highway-est of highway driving. Outside of the topic at hand, my own extremely subjective opinion is that they chose some of the tamest suburbs possible (I have significant experience in the Bay Area, SoCal, Austin, and Pittsburgh).


Unfortunately, there are no unbiased sources that have knowledge of the state of the art, since it exists inside a small handful of companies. The best outsiders can do is speculate.

Personally, I very much doubt we're more than a decade away from cars-drive-way-better-than-people levels of tech. Whether that means you'll be able to buy one is another question.


I wonder if Waymo is dependent on their hyper detailed maps of if they are using them to speed up development of their systems.

With a hyper detailed map, you can automatically score your vision/world modeling system (because the static elements are known).

Without a detailed map, the scoring is much harder.


Would that allow the creation of a profitable MVP?

It's not 'general level 5' but it might be a transport system in cities with appropriate conditions that have been mapped.

Then it gets gradually expanded out to other cities.


> That is impressive, but isn't Waymo driving on some limited number of pre-set routes?

Even if that's the case, that would probably be sufficient for long-haul trucks. Especially in europe which has a pretty dense network of controlled-access highways.


We don't have to get to level 5 to start automating trucking. In fact level 4 would likely be better than many drivers on that road now. Level 5 is an ideal we probably won't reach for decades, self driving cars better or equal to the best most attentive drivers in all situations.

I think the level system is also a bit over simplified. Level 4 highway is very different from level 4 city, and level 4 highway would be enough to automate a lot of trucking.


Sure. The levels are fairly general. There's a big difference between your operation domain being a section of 280 on a sunny day and it being any paved US road so long as it's not snowing. One is mostly just interesting R&D and the other is genuinely useful to a lot of people.

The problem is that it leads people to say we'll have Level 4 in a decade or less when they mean the former case. Whereas the sort of capabilities needed for autonomous taxis are decades away.


> No, no they're not. We have some lane tracking in good weather etc., but we are still decades (or more) away from full level-5 autonomy that would make drivers behind the wheel unnecessary.

How about a mixed adoption, on 99% of pure-highway the truck is driver-less, but there are dedicated service stations for a human driver to take over into the urban area.


And maybe we'll call those autonomous trucks trains or something like that.

(In many/most cases, the long haul overland transportation today is already handled by freight railways. It's unclear how big a win there is to having what amounts to an additional form of intermodal transportation as opposed to just keeping a person around who can also handle breakdowns, etc.)


I saw a thing on CBS Sunday Morning about a company planning to run the local parts of truck routes on remote control.

More: the point being that it is a huge opportunity and there doesn't necessarily need to be a perfect, fully capable system to start having a significant impact on the number of drivers.


I think this is because the kinds of problems that arise in system design are logical and symbolic in nature and the current crop of "AI" has no symbolic reasoning capabilities. All the current hype is about pattern matching. Very good pattern matching but just pattern matching nonetheless. Whereas when constructing a compiler or a JIT it's more like what mathematicians do by setting down some axioms and exploring the resulting theoretical landscape. None of the current hype is about theorem proving or the kinds of inductive constructions that crop up in the process of proving theorems or designing compilers and JITs.

For an example of the kind of logical problem optimizers solve you can take a look at: https://github.com/google/souper.

So I don't see how you can take the current neural nets and get them to design a more efficient CPU architecture or a better JIT.


It would actually be very straightforward to do so if the costs of testing solutions weren't so high. CPU architecture and JIT code can both be represented as unstructured (non-tabular) data. I even recall a circuit having been optimized by a genetic algorithm a while ago in an experiment. I also recall using LSTM to generate valid code from IIRC examples in Linux. Superiptimizatiom is also a relevant topic.

We just need better simulation tools or more resources.


I have also seen genetic algorithms used for these kinds of optimization problems. In fact there is a module in postgres that uses genetic algorithms to optimize query plans (https://www.postgresql.org/docs/9.6/static/geqo-pg-intro.htm...).

But I don't put genetic algorithms in the same bucket. Genetic algorithms are a different breed of optimization algorithm compared to neural nets and gradient descent which is what the modern crop of AI is basically all about.


Genetic algorithms are not neural nets though.


And they're generally worse than simulated annealing.


It's worth noting there have been some attempts to unify ANNs with formal logic specifications, but I haven't seen anything incredible.


Cute title but the post didn't really address either reasonableness or effectiveness, but mostly claimed that the potential has not yet been realized. It's a pet peeve of mine to see these hackneyed joke titles referencing famous papers, "considered harmful" is another case in point. Let's just stick to descriptive titles.


It imitates an old paper title: "The Unreasonable Effectiveness of Mathematics in the Natural Sciences" by Eugene Wigner (1960)


Yes, that's exactly what the parent was referencing -- bloggers in the CS space looove referencing that one and the "Goto Considered Harmful" paper, and it's been really, really annoying and not clever at all for years.


I thought Wigner was actually paying homage to Karpathy.


Few know that Karpathy was using a previous meme.


It is a modern disease of CS and related areas. They think it is better to be "cute" than descriptive, as a way to attract attention.


It's an element of all disciplines and, more charitably, one aimed at achieving two functions. One is to say "this is a paper from someone embedded in the discipline and who speaks the same vocabulary as you". The other is to say "and this is intended to expound on a subject parallel to X (or following on from X, as the case may be)"

You can argue that this class of jargon is exclusionary or not. Agre, at UCLA, for example took the position that jargon was inherently a tool of dividing up groups into "in and out" (ironically he himself, with an MIT PhD, was very much in the in group).

I tend to consider jargon just a tool like any other, typically valuable because you can save a lot of time and gain clarity by saying "O(n^2)" or "trie" and assume your reader understands it.


The perceptron scheme for branch prediction (full paper) [1] probably works because it uses far more memory for branch history than the usual approaches. It's not doing a better job with comparable resources.

[1] https://www.cs.utexas.edu/~lin/papers/hpca01.pdf


Indirectly they have helped quite a bit. Some of the most advanced mathematical and symbolic solvers (MIP, IP, LP, CP, SAT, SMT) have slowly been incorporating machine learning to advance their capabilities. Their use cases in these solvers include: branch prediction, branch selection, constraint evaluation order, solver type selection, search strategy selection, cost estimations for column generation strategies, problem classification, solve time estimation, etc.

And since advancements in our abilities at solving symbolic and mathematical problems have directly enabled the current research in PLT and formal systems, I see no reason to discount the impact ML has had in pushing that frontier.


Perhaps this paper provides an explanation? https://arxiv.org/pdf/1608.08225.pdf

"The exceptional simplicity of physics-based functions hinges on properties such as symmetry, locality, compositionality and polynomial log-probability, and we explore how these properties translate into exceptionally simple neural networks approximating both natural phenomena such as images and abstract representations thereof such as drawings."


This is really good. Deep learning right now is giving off a kind of illusion of domain-independent general intelligence that can solve any problem, so it would be really helpful to have some theoretical characterization of the specific problem domains it's good at and ones it's not good at.


That was an interesting read - although I guess it would have been cool had they delved deeper into the brain/cognition aspect of the introduction a bit more..


Branch predictions are an interesting use, although I'm wondering how expensive a misprediction really is.

But this:

"Another example is the use of regression techniques from machine learning to build models of program behavior. If I replace 64-bit arithmetic with 32-bit arithmetic in a program, how much does it change the output of the program and how much does it reduce energy consumption? For many programs, it is not feasible to build analytical models to answer these kinds of questions (among other things, the answers are usually dependent on the input values), but if you have a lot of training data, Xin Sui has shown that you can often use regression to build (non-linear) proxy functions to answer these kinds of questions fairly accurately."

I'm not sure whether I am fascinated or horrified.


Wikipedia reckons 10-20 cycle penalty for a branch mispredict (which sounds plausible given it fills the pipeline with useless junk). Given that branches are quite common, that's painful enough to want to avoid, but definitely not so painful that you'd want to devote as much silicon to solving it as you do to, say, L1 cache.

I do recall a bit of research (published by a Nokia R&D team I think) that reckoned you could get a mostly-ok performance estimate by tracking about half a dozen indicators including instructions executed, cache misses, tlb misses and brancb mispredicts and weighting them appropriately. The trouble there is nobody wants a performance model that's right 90% of the time but significantly wrong 10% of the time with no way to tell if the workload you want to test is in the 10%. But it's an indication of the importance of branch prediction still, I think.


Keith Winstein & collaborators have good work about using ML to train TCP's congestion control in different scenarios: http://web.mit.edu/remy/


I guess computer is much more deterministic than what is required for ML to be useful.

ML, in a very inaccurate way, can be seen as:

1.We have observations and conclusions.

2.We don't know exact those observations leads to the conclusions.

3.The assumed procedure that leads the observations to conclusions is called model.

4.With enough pairs of (observation, conclusion), we can train a good model that is good enough to make good decision on future observations.

Problem for traditional computer science is that, the system is so deterministic that we know EXACTLY how it works on instruction level, while ML is good at dealing problem that is inherently probabilistic.


The latter part of the article seems to focus on deep methods not influencing lower level system architecture and design. Perhaps the reason is that those systems and problems are fundamentally different than the dynamics systems that NNs are finding so much success in. In short, compiler, programming and architecture are very formal exact systems, while driving, tts, stt, image association, etc are nowhere near as controlled of environments.


To contrast this opinion, a promising research project from CMU that uses an RNN to manage a database based on "forecasted" workloads (I know it's not quite architecture, but still): http://pelotondb.io/


Perhaps the biggest hurdle in this regard is the approach to machine learning. Nearly everything I have seen on machine learning is a primer on big data followed by a series of algorithms on making the best and smartest decision upon that mountain of data.

This is completely the wrong approach. Machine learning can be done on a dime, provided the proper nurturing and environment, but you have to be willing to make some concessions.

First and for most you have to be able to write a program that can make a decision. A simple "if" condition is sufficient.

Secondly, that decision is open to modification by asserting the evaluation (the "if" condition) against its result. In this regard the logic is fluid opposed to a series of static conditions written by humans hoping to devise organic decisions.

Finally, the decision is allowed to be completely wrong. Wrong decisions are better than either no decision or the same decision without deviation. This is how humans learn and it should be no surprise that computers would benefit from the same approach.

The key to getting this right is bounds checking and simplicity. A decision must find a terminal point in which to stop improving upon its outcome, and a narrow set of boundaries must be affirmed to prevent unnecessary deviation. It is perfectly acceptable if some grand master must occasionally prod the infantile program in the right direction. This is also something that people do to other people who are learning.

If you can do that you have machine learning. You don't need big data to get this. You certainly don't need complex transportation machines or voice activated software to validate it. AI on a dime. If you can do it on a dime you can certainly do it with a multi-billion dollar budget and thousands of developers.


You're advocating an evolutionary approach, correct? Doesn't such an approach need lots of examples to trial, before it generalizes broadly?

"Big data" is often shorthand for "lots of examples", no?


The poster is referring to control theory (often seen in ML as reinforcement learning), while also touching on the explore-exploit tradeoff in optimization more generally.


OT: How and why is this page overriding my control key, and how can I stop it from doing that?

I use ctrl+scroll wheel to zoom and it is very annoying when that behavior is overridden.


I think rather than overriding your control key, it's overriding scrolling. It loads up some smoothscroll javascript, and there's likely a bug someplace that's interfering with the ability to zoom. Holding control and pressing +/- to zoom in/out should still work.


Thanks


Since when the belief that "a silver bullet exists for computer science research" becomes a thing?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: