Artificial Intelligence: Right level of abstraction
I think one of the reasons why we are still talking and not really doing Strong AI is because we miss a few levels of abstraction. We even cannot draw a path towards it. We just “feel” that it is possible.
Current work in neural networks and deep learning has strong background in mathematics. Yes, origins are from biology with the intent to replicate how human brain cells work. It is a good start. But it is too low level, even if it works. The closest example is Assembly language. Technically yes — you can do basically anything in Assembly and it will work. But the amount of effort needed to implement something simple is huge. If you know Assembly and how modern era computing works on low level is a tremendous benefit because you can easily understand how more high level things work. But it is not really required. Say Node.js developer might even don’t know that such language exist and what it does and still, this developer can write something which will serve billions of request and have complex logic in it.
I think staying on such a low level is holding major developments and road towards Strong AI goes not through math and computer sciences but through psychology and more meta level conceptions.
Mathematics is beautiful. Once something is proven, it looks great. I really like reading scientific papers on AI but it is very clear, that you can not describe in meaningful way through mathematical concepts how our high level brain functions work. This is more in psychology domain. Psychology is tricky. Many do not see it as a real “science” because often it is pretty vague and not fully deterministic (and without great formulas!) but it is the closes we can get to how brain works on a high level. Plus neuroscience. There is even a direction called Computational Psychology, which tries to crack this domain.
If we would have a “language” described at this level, which would serve an analogue of “Java” and will help to abstract low level “Assembly” (e.g. deep learning neural networks) that would significantly simplify and shorten path toward Strong AI.
But if we really want to crack it, we should provide at least one more level of abstraction. Historically humanity had lots of debates over “body” vs “soul”. In 21st century we are slowly but surely progressing with what the “body” is (a biological host for our intelligence/consciousness). We still talk about what the “soul” really is — from divine, metaphysical, scientific and lots of other points of view yet we are very far from having some good answers. I think in order to proceed we need to focus on what’s between — “mechanics of consciousness” or technically speaking — architectures with correct initial parameters of efficient systems which work.
Progress in this domain was mostly driven by health related topics like diagnostics and helping people with mental disorders. In my opinion, if we start looking here more carefully and not just from medical side we might discover missing blocks which will pave the way to explanation thus definition and implementation of Strong AI grade systems. Because it will give us the tool set to build it. That would serve the equivalent of System Architecture so massive systems like “Windows”, “Amazon Web Services” equivalents in AI can be described in common language and can be build.
If you are really see yourself in the group of people who will build the systems which can answer not only the question: “when air conditioner will break?” but also answer the question: “what is the difference in love between humans and animals?” you need to expand your library with books not just about math and CS.