Proponents of symbolic learning should start by just achieving results that are even remotely close go those achieved with deep learning. Nevermind outperforming it. Because the reality is, for NLP and anything related to CV, deep learning has consistently wildly outperformed every other approach. Thousands of ai researchers have tried to make "old school" AI work for those problems with only very limited success.
Now my background is in CV (not in the field anymore, but was until 2019) so I'm not sure about how well other methods stack up against DL for other use cases. But to me symbolic approaches for most of what DL excels at just seem like a completely unfeasible (and overcomplicated) pipedream.
I don't disagree with the premise that current research has kind of stalled compared to the early-mid 2010s but that mostly means we need to figure out new ways to do ML and DL, not because DL has failed as a concept . & keep in mind that the fact we can even say that things have "stalled" is because we got spoiled by the huge performance leaps that DL made possible in the first place.
The symbolic AI crowd have always had a "2 more weeks" narrative where they promise that they will figure out a given problem very soon if only x condition was true. The problem is that they have almost always terribly underdelivered, and that was true even when 99% of the research and funding was focused on symbolic or hard AI. Subsymbolic approaches could also be argued to have yielded somewhat underwhelming results (vs the hype) but the other methods are in a league of their own.
Tesla has a horrible car accident where a car mistakes the side of a truck for the sky. They start over and create a new ML system only for the exact same kind of accident to happen again.
His points about provable and debuggable making ML radically unsuitable for huge swaths of the tasks where AI would be most desirable are exactly on target.
Meanwhile, a tiny little slug seems to understand much more about the universe than the most advanced AI we've ever designed and it does this on nanowatts of power.
With ML there is at least a path to solve way-easier-than AGI problems like maybe (semi?) autonomous cars, given enough compute and redundancy. With anything more old-school? Maybe you'd get lane detection that works on sunny days. And yeah you will be able to "debug" and prove things more easily but what's the point if there's no real way to fix the bugs if they are inherent to the flaws of symbolic approaches? If you think Ml has a problem with edge cases (and it does), keep in mind that GOFAI methods are usually not even close to be complete enough to have "edges". "the last 1% is the hardest to deal with" becomes more of a "if we can get over 60% it's a miracle"
Also, no matter how suboptimal the tesla autopilot is, I have not seen any figure that show that they do worse than humans w.r.t to fatality or accident rates. Maybe they are worse! But just the fact that they are even remotely close is not something that could've been possible even 15 years ago.
But I'd be thrilled if we get to anything better than current DL methods. Hell, it might even pull me back into the field! I just really doubt it's going to be old school symbolic or causal methods that will get us to the next big steps.
Your eyes run on more-or-less fixed-function neural networks to see and recognize stuff.
The part of your brain that does the actual driving is much more symbolic in how it analyzes and reacts.
When you look at self-driving, there's a general pattern that it handles the 80% of easy stuff (the stuff that you could drive while texting and almost completely ignoring the road). There's a steep gradient down to "complete failure" from there. Accidents happen during a tiny, tiny subset of situations (a minuscule fraction of a percent).
Vehicle deaths are in the realm of 1-2 per 100 million miles driven (even lower total accidents if you factor in multiple deaths in one vehicle).
If you have a vehicle drive an average of 50mph for 8 hours every day (a very high average if not exclusively driving highways), it would take 700 years for that car to statistically have a fatal accident. For you to test an AI with a decent 95% confidence interval, you'd need hundreds of thousands of cars driving for years just to test a single model.
The "enough computation" or "enough data" idea simply isn't going to work here.
By the time humans have been proven superior there is a real chance that the AIs will have improved to be superhuman. The experience in gaming is that state of the art goes from ok vs amateurs to superhuman quite quickly.
Besides, non-fatal ACCIDENTS per mile are much more common, and we should be able to determine if those are reducing a lot faster.
For self driving cars specifically sure - but ML has its deployments across huge swaths of industry from communications equipment to consumer software today at this moment. To most people these are entirely transparent, but are providing better experiences in tons of products.
We don't need AGI or self-driving to make a big leap.
I want drone fleets that can roof a house or 3d print structures. Nanobots to clear arteries and destroy cancer cells. These things will not need to pass the Turing test or even close.
You get into it, and it takes you to the destination. You can space out all you like.
Yes, it is slower than driving yourself, unless there is heavy traffic, but it tends to work well.
What you're really asking for is a car that predicts when it needs to beep. I'd imagine that in most of the serious situations, the maximum warning time will be shorter than the minimum spaced-out driver reorientation time. In fact, no meaningful scenario comes to mind where the car would want help but with a handful of seconds to spare.
Do you call a white blood cell "intelligent"? Then why would you call a nanobot that destroyed cancer cells "intelligent"?
I guess you haven't used Alexa/Ok Google or machine translation or semantic photo search or Google search for several years then?
Personally I think we would be better off starting with self-driving trains, there's still a lot of train accidents even with human operators.
The first system to win against a Grand Master in chess was Deep Blue, which, despite its name, was not a deep learning system, but a symbolic, hand-crafted, rule-based, system with alpha-beta minimax, using a hand-crafted evaluation function and an opening book of moves [1].
The first system to dominate human players in draughts (checkers) was Chinook, also a hand-crafted symbolic rule-based system [2].
The first system to outperform experts in medical diagnosis, in particular, diagnosis of infections, was MYCIN, an expert system [3].
The first system to win against a human in the question game Jeopardy was the much-maligned, but symbolic-based, and very successful in that one task, Watson [4].
SHRDLU was an NLP system used to direct a (virtual) robot hand, whose capabilities remain unsurpassed by modern systems [5].
The performance of symbolic systems remains unsurpassed in various tasks such as classical search, classical planning, SAT solving, automated theorem proving, program synthesis, etc.
I assume that by "symbolic learning" you meant symbolic AI in general, btw. If you're talking about symbolic machine learning in particular, it is worth noting that decision tree learners, like CART, ID3 and C4.5, which have been wildly successful in machine learning, data mining and data science for many years, are symbolic systems that learn a propositional logic "model" (a theory).
__________
[1] https://en.wikipedia.org/wiki/Deep_Blue_(chess_computer)
[2] https://en.wikipedia.org/wiki/Chinook_(computer_program)
[3] https://en.wikipedia.org/wiki/Mycin
[4] https://en.wikipedia.org/wiki/Watson_(computer)#Comparison_w...
Commercial Mixed Integer Programming solvers can optimize massive problems to provably global optimality very very quickly, and they too have an internal learning mechanism (cutting-planes).
They excel at reasoning but they can only learn from the outcomes of the rules they are provided and how they interact, they cannot learn from data. With the advent of soft-constraints (which have an associated weight) I wonder if such systems could be adapted to learn probabilistic rules as well.
Some existing systems (like AlphaGo) already combine symbolic approaches (Monte-Carlo Tree Search) with Deep Learning, but what I'm thinking about here goes beyond that.
Anyway I'm not an expert on SAT solving. Thank you for the perspective you provide with which I was unfamiliar.
Edit: I don't think the OP meant SAT solvers when they said "symbolic learning"?
SAT solvers, however, learn from their "mistakes", at least internally, which is really interesting and I think opens some very, very interesting research questions that as far as I know don't have that much money going into.
For example, human brains can reason internally and learn in a similar manner, learning from "mistakes" of rule application in the same way (i.e. if I try to do this, then that fails, but if I do this other thing, then it works but not fully...). Just some food for thought.
Automated Theorem Proving is also a very important success of the Symbolic camp but I would argue a less interesting one, since SAT solvers can do much more than prove theorems (and ATPs that can do more than prove theorems invariably use a SAT/SMT solver internally, like Vampire does for example). SAT solvers (and extensions) are used in model checkers, software and hardware verification tools, software and hardware synthesis tools, operations research, etc.
One reason I think that theorem provers are more important than SAT solvers is that SLD-Resolution at least can be efficiently implemented.
Also, Resolution can be used for induction, from examples and a background theory. That's a relatively recent result and you won't find a very clear account of it in the literature, but for instance, see here some early work:
Meta-Interpretive Learning of Higher-Order Dyadic Datalog: Predicate Invention Revisited
https://www.ijcai.org/Proceedings/13/Papers/231.pdf
You have to unpick it from the language used but "meta-interpretive learning" means that it's based on a Prolog meta-interpreter, so an implementation of SLD(NF)-Resolution. And those "metarules" are really second-order definite clauses. The approach is really higher-order SLD-Resolution that turns out to be inductive, rather than deductive.
But what you say about learning from "mistakes" reminded me of a rival approach, "Learning from Failures":
Learning programs by learning from failures
http://andrewcropper.com/pubs/popper.pdf
Which is, incidentally, implemented by means of SAT solvers (via ASP, ultimately). I'm more of a fan of the meta-interpretive approach (I study it), but I think the Popper paper might interest you, judging from your comment.
Vampire uses a portfolio of strategies, including the application of an SMT solver (Z3). This link goes into some detail: http://smt2019.galois.com/papers/tool_paper_20.pdf
This is the most relevant bit for our conversation:
> There are only two cases where Vampire can return sat: Firstly in UF and secondly, if Vampire produces a ground problem after preprocessing it may pass this problem to Z3 and report its result (possibly sat) directly.
Essentially this refers to model building, i.e. solving existential problems. That's where SAT solvers excel. This includes producing counter-examples which are extremely useful in industry.
I totally agree that there is room and even a need for more symbolic systems within deep learning but I'd argue that you can't at this point do away with the "deep layered" approaches.
The examples you cited are very important achievements, especially the very early ones, but I think they also show that they are also very limited in a lot of ways. For example, expert systems found a niche, but they still had a very hard time with edge cases and learning which imo is essential to intelligence. More traditional logic based algos can vastly outperform say, neural networks in a lot of situations but only when the problem space is in a way "known". Plus, the GOFAI school used to promise a lot, lot more than what those performant but usually hyper specialized systems ended up doing.
I see that my comment could come off as disrespectful for what was accomplished before. But it really isn't!
It's just that I don't agree with the "nostalgics" who usually dismiss the modern approaches and idealized some sort of symbolic vision of intelligence. Those aren't common, and most of my "old school" professors were just as excited by deep learning. But there is a vocal minority imo who are viewing the past with rose tinted glass, when I don't think it's controversial that there is no real way for traditional ("pure") symbolic AI to end up achieving either general intelligence or to outperform deeplearning with finely tuned hand crafted logic.
Yes, "GOFAI" overpromised and underdelivered and that was a major reason for the two AI winters that essentially destroyed the field by freezing funding and shrinking research positions and output.
Personally, I'm neither nostalgic of older approaches, nor dismissive of modern approaches. The important thing is to have a clear understanding of the capabilities available, regardless of approach. It's obvious to me that older systems could do things that modern systems can't do (principally, reasoning and knowledge representation) just as modern systems can do things that older systems couldn't do (learning). However, there are approaches that bridge the gap, such as symbolic machine learning], like the approaches I study that learn logic programs from examples using theorem-proving techniques. There is also, of course, continued research in other branches of symbolic AI, like planning and SAT solvers, that seem to have made great progress in the last years. I think the worst that can happen now is to nip such research in the bud by denying it funding just because it's not deep learning.
Gary Marcus' article quotes Emily Bender about how overpromising, this time by the deep learning community, "sucks the oxygen out of the room" for other kinds of research. This is apposite. Research can't become a monoculture, otherwise the ability to innovate will disappear. For innovation, there must be diversity of ideas. The risk I see right now is that such diversity will be lost and that, in the long run, progress in machine learning will stall. Throwing out everything that was learned in the fist 50 years of AI will not help anyone avoid the mistakes of the past, for sure.
Oh yes sure because you have so much erudition you can make such statements? No you do not, I though have erudition in comparison to the HN crowd and there are many important instances where symbolic outperform neural networks in NLP. For example: Sentence disambiguation AKA the task of determining the boundaries of a sentence (where it starts, where it ends). The state of the art is rule based.
The task of generating a desired inflection for a given word: the state of the art is rule based.
The task of quantifier scope disambiguation: algorithms are on parity with the data driven approach although in this special cases, data sets are lacking and this in fact apply to many areas or NLP, data sets are lacking and for those places, rule based parsing is the SOTA. But for the two first tasks I mentioned, datasets are not lacking, rules engines are just more correct and efficient. Because neural networks are extremely bad at achieving more than 95% accuracy, they often hit a wall because they are only an approximation engine at the end of the day,not an automated code generation of the ideal parser.
Nobody that I know in the DL community wouldn't be excited to switch to another method if it meant achieving actual measurable improvements. So if the data was conclusive, the alternatives would be used. No one cares about the purity of the method or whatever, because the messiness is inherent to DL. Also, the current AI community is very very focused on performance and state of the art results (that can be a problem in some cases but not w.r.t to method agnosticism) rather than on any big theories on how human intelligence ought to be translated mathematically (or not)
---
The issue is that in order to be intelligent for any useful meaning of the word, a program has to at least appear to do symbolic manipulation and to change its state as a result.
If I tell some intelligent program, "I was born in London", I don't really care if it has actual symbols for me and for London, but I do expect to somehow "remember" this and "reason" about it.
Later if someone asks the program, "Was Tom born in England?", I would expect it to answer, "Yes", and if asked "Why?", answer, "Tom said he was born in London and London is in England" - like a bright five-year-old would answer.
---
Current AI programs do nothing like this, and there doesn't seem to be a path to this through machine learning and other systems for extracting statistical data from large corpuses. The idea that symbols will simply "emerge" from huge, static statistical engines seems like wishing for magic, not a research program.
As a result, some simple tasks are impossibly difficult for machine learning systems.
For example, support that I have come to the mistaken conclusion over many years that Arnold Schwarzenegger is German, because of the "corpus" of information I have seen. But if I meet him, and he mentions that he's Austrian, I will right away update my database without question, even though I met have read 100 things that made me believe he was German.
This is impossible with any of the statistical systems we have. The only way to update them is to re-run them with more information. And it's the quantity of information that counts. The idea that Arnold's word on his own life might be much more important that 100 other sources cannot really be represented in general.
This is an issue that needs to be resolved before we get to something we can call actually intelligent - it needs to be at least as smart as a 5-year-old person in being easily able to learn or correct facts one at a time, like "Arnold is Austrian".
Whether or not there is a better alternative, if deep learning is in fact as over-hyped as the author claims, this could be a tremendous waste of money and intellect that could be spent on literally anything else, not just machine learning (maybe they could put those resources into crypto instead /s). That alone is enough reason to want intellectually honest skeptical takes, whether or not the author has a better idea. In addition, within AI, it makes it much harder for people for people to do anything else.
If there is a contraction in the field it will likely cause another giant AI winter. Somebody should start thinking of a use for all that compute.
The internal combustion engine did not require as much of a drain on resources before it produced results. Is deep learning actually making significant amounts of money, funding and valuations excluded?
TLDR: A guy in Japan who worked on a solution to identify different types of pastries ended up creating a computer vision framework used in many domains. All this without deep learning. The article delves into the challenge that deep-learning brought to his business.
Also I wonder if we can have a neural net that generates these classical approaches given a class of objects to identify. Or maybe once you have trained a neural net to work on recognising basic features, you could transform (compile?) it to an algorithm that can be debugged and expanded.
We are actually doing that, though. Across the globe, the fraction of energy generated by non-renewables has been falling consistently for more than a decade. We went from being less than 5% solar + wind a decade ago to more than 10% now, and the trend is accelerating. By 2026 we're expected to be nearing 20% of all power generation renewable. Things aren't going fast, but infrastructure doesn't go fast, and no proponent of renewable energy expected it to.
I think this is in no way comparable to the symbolic learning thing where there is no sign of relative progress.
As far as the hard cap you mentioned, I think there's no danger of us hitting that cap in the next decade or so. Later on, maybe. Battery technology is also improving rapidly, so perhaps it will never be a true limiting factor.
That's funny, my interest in reading this article went to zero the moment I saw he wrote it.
Edit: No offense to Gary Marcus, first heard of him after reading this article.
Apparently deep learning has been beat-to-death as a word, but the way deep learning was explained to me, it is an approach not a specification.
a) far far more recurrent than any practical deep learning system
b) using something other than backprop, and probably that something is much more efficient
My understanding of deep learning is that it is a methodology, not a technique.
No offense, just startled, but that’s the most self-contradictory thing I’ve ever heard.
The human brain is by definition a neural network…
I always wondered why people stopped referring to ANN and just went with neural network. Perhaps some anti-science bias or something like that.
No, not right. Humans need other humans to be smart, we need culture, technology and science. We're not that smart - just 700 years ago we were dying of the plague without even knowing the germ theory of disease, even with our lives on the line we couldn't solve it. We're only INCREMENTALLY smart over our current cultural level.
https://web.archive.org/web/20110608070200/http://www.uic.ed...
Protoculture as well?
Arguing that memes exist outside of genes is like arguing that the Platonic solids are real.
I think that the best way to communicate the message that deep learning isn't enough is to use a different approach to achieve superior results. Ideally something that makes a lot of money quickly. There are only so many people that read nautil.us articles. But everyone pays attention to things that make a lot of money.
I can point out many conceptual flaws in the internal combustion engine. And I can also propose other types of engines as alternatives. But people don't really start paying attention until someone makes a Tesla. If symbol manipulation can do a better job of identifying pictures of rabbits or humans holding stop signs, then let's see it.