AI – where are we?

We are not close to general AI, but there does seem to a clear trend towards increasing generality in machine learning methods over the past 10 years. Generality means that the same algorithms can be applied to many different problems. This short blog post (with many citations omitted – maybe I can add some later) describes my position: that we are making real progress towards general AI, i.e. agents with a high level of intelligence (perhaps superhuman, perhaps sub-, but still high) across many tasks and situations.

(I published a version of this, and updated a couple of times – previous versions in Github.)

Narrow machine learning

Machine learning was always about creating algorithms, such as decision trees, into which we could plug “any” data set – they were generic in that sense. But there were always several respects in which they weren’t generic:

Importantly, narrow approaches to ML made amazing progress on “hard” problems like chess and non-linear regression (where typical adult human performance is pretty weak, unaided), but were weak on “easy” problems like recognising a face or speaking a language, things accomplished with little difficulty by three-year-old children. This is Moravec’s paradox. The other effect here is that any AI task which is successfully completed by a machine, so far, turns out to have been accomplished by narrow, “cheaty” methods, rather than by general AI methods. And so whatever we know how to do is not AI.

A grand unification in progress

What has changed?

All of the ingredients mentioned above were made to work only in the last 10 years or so, and their implications are still being worked out, so I regard this as work in progress – that is, there is work left to do, but there has been real progress.

There are other paradigms of AI not yet unified in the above. The paradigm of optimisation includes areas like goal programming, linear and integer programming, gradient-based optimisation, metaheuristics (evolutionary search and friends) and constructive heuristics. Several of these are used or could be used in ML – SVMs are trained using quadratic programming, for example. But they wouldn’t be suitable, I think, for training our type of agents. I’ve already mentioned the idea of using metaheuristic search to train NNs. But this is not really a unification. Such an agent would use an ES during training, but it wouldn’t have access to an ES module for everyday use, the way we do (just as earlier, an NN which carries out multiplication internally can’t be used as a calculator without training). How could we accomplish that? An open question. However, when we see ideas like learning to learn by gradient descent by gradient descent and learning to optimize with reinforcement learning, we see the first glimmers of architectures which can themselves invent and incorporate new machine learning methods.

Keep calm and ignore No Free Lunch

The NFL theorems are no obstacle to the proposal of a single model performing well on many different tasks. The first NFL theorem (“for supervised learning”) says that regression and classification models can only do well on a test set if it is drawn from the same distribution as the training set. Our agent isn’t exactly a supervised learning model, but insofar as it might carry out implicit internal supervised learning, the assumption of a stationary or slow-changing environment is the same assumption humans make with every action in our lives. The second NFL theorem (“for search and optimisation”) says that in black-box search across all possible objective functions on a given search space, no search algorithm out-performs random search. Well, what is our search space? It’s the set of all possible sets of neuron weights in whatever NN architecture we choose. What is our objective function? It’s something like to maximise the expected reward over time – a black-box function as already stated. (By the way, typical supervised learning models don’t use a black-box objective – they use an objective like a sum of squared errors, which is quite the opposite of black-box – so the second NFL doesn’t even come near to applying to them.) But of course the vast majority of possible objective functions on our search space are of no interest, since they (for example) award totally different objective values to highly similar network weight configurations which end up acting in exactly the same way. So an algorithm is free to excel on all functions of interest.

Hardware

Some commenters argue that increasing computing power will inevitably lead to AI, for example Kurzweil takes advantage of exponential trends in computing (Moore’s law, and similar) as a cornerstone of his argument. Many AI researchers dismiss arguments based purely on computing power, arguing instead that progress in “software” – in models, representations, learning algorithms, datasets, task specifications, and so on – is what is required. (Others argue that exponential trends cannot continue, either for a priori reasons or because of physical limits.) I think the focus on software improvements is correct, and I have argued that such improvements are happening, though certainly more are required. However, a separate line of argument supports the claim that improvements in raw compute power are relevant. It relates to AIXI, a general RL agent. In principle, AIXI is already a super-human AI – it’s just not computable. There are approximations to AIXI, including AIXItl and Monte Carlo Tree Search AIXI, but they’re not good enough yet. However, computing power will make these approximations better, and no new improvements in software are required for this. This alone suggests that increasing computing power is relevant to whether and when AGI is possible.

Missing ingredients?

But perhaps there is a missing ingredient for true intelligence – such as consciousness. Some argue that consciousness is not required for intelligent behaviour, or that consciousness emerges in any sufficiently complex system, or any sufficiently complex system acting with goals in the world. There seems no way to answer this question for now. However, some research relevant to a functional implementation of consciousness has been done, as follows.

In a way, I think self-modification is about the transition from stimulus-response and System 1 thinking to more System 2 thinking. If an agent introspects on recent sense-act-reward loops, and pattern-matches in a way that generalises and so allows improved action choices in future, that amounts to a move from stimulus-response (maybe System 1-type) cognition to a meta level – reflective, “thinking” about thinking, and perhaps going towards System 2-type cognition.

A short and subjective statement on AI safety

As already argued, I think self-improving AI agents are possible in principle, and if agents are at human level in many other respects then self-improvement seems plausible. It’s not worthwhile to think about the singularity – it turns a lot of people off, and in a way it’s irrelevant. Instead, just think about human-level AGI agents capable of self-improvement. IJ Good suggests that the result would be an “intelligence explosion” – self-improvement happening in cycles, quickly outpacing humans in speed and intelligence. No exponential curves have to go vertical for this to be a scary idea. I agree with Bostrom and others that AI motivations will not be inherently positive for humanity, and I agree with MIRI and others that kill switches, AI boxes, and other obvious AI safety measures are fallible. We don’t really know how to specify goals aligned with human values, and we certainly don’t know how to keep a set of goals consistent through cycles of self-modification. I suppose that the risk of catastrophic outcomes of self-improving AI with goals uncontrolled by humans is small, but not negligible. Therefore, I think that research into AI safety is needed.