Interesting thoughts! I guess discussing the merits of symbolic vs sub symbolic (connectionism) AI mostly makes sense when considering specific applications. For (auditory and visual) object recognition the sub symbolic approach clearly has an edge, sometimes even outperforming humans.
In my research I use Prolog to represent scientific theories where an “expert” states knowledge in a top down fashion (in my next project i want to use Inductive Logic Programming for inducing scientific theories from empirical data). When I discuss my logic programming approach to theory representation with colleagues i frequently get comments of the type “but isn’t this an old approach; what about deep learning”, and this really annoys me. I have some experience with neural networks and support vector machines but there are some things that i think would be impossible (or really convoluted) to do with these schemes, and where a symbolic approach has an advantage.
-
For example, how would one encode Darwin’s theory of natural selection as a neural network? This is very natural in a logic program.
-
And what about something like Russel and Norvigs internet shopping world (chapter 12). To me at least, it makes no sense at all to try to represent this in some kind of neural network.
When representing scientific theories as logic programs I have had interesting experiences several times, where i got the (subjective) feeling that the code really was showing intelligent creativity. In these cases theories have generated conclusions that I did not anticipate at all, and that i initially questioned, but which then turned out to make perfect sense, and which sometimes were also validated in empirical studies that i did not know of initially.