The NWITS model

The NWITS model

Excerpt from King of Hearts

Prediction of the Next Word In The Sentence (NWITS) is the very definition and measure of a language model. It leaves out meaning, and for this reason it has become the subject of some derision, bordering on scorn, in spite of the remarkable capabilities of ChatGPT.

If we modify this acronym to reflect quite literally the limitations of this definition, we might call it the Next-In-The-Word-In-The-Sentence paradigm, or, the NITWITS model. But that seems harsh.

In its current state, it is incredibly impressive. The fact that it can clearly explain and elucidate complex concepts certainly suggests that, in spite of the fact that it is trained with NWITS, it is persuasively expressing more abstract ideas. There has been some research about in-context learning that may help explain what’s going on here.

What happens in a deep learning neural network is that the network ‘learns’ according to properties that are shared across instances in the data. This is a training signal. It is often a label, in a supervised learning training set. In order for the system to know what is a face and what isn’t, it needs a training set labeled with ‘this is a face and this one isn’t.’

The whole point of deep learning and neural networks is that you don’t need to ‘feature engineer’ — meaning that, in essence, you let the network figure out what you’re pointing at, just by having a training signal, like a label. But if that is what you want, you’re going to have to approach the labeling with subtlety and precision. If we’re after greater abstraction (the recognition of ideas, not just words) then we need to redefine what a language model is, and what is required for it.

Consider the following:

WHAM.
He had stayed still a second too long. The Bludger had hit him at last, smashed into his elbow, and Harry felt his arm break.

“He had stayed still a second too long.” This has the idea in it of excess: like a river overflowing its banks, or a faucet left on in the kitchen that overfills a glass. Or someone who is speeding, or is too young to get married, or is bursting with love. It’s outside the bounds. It even, though to a lesser degree, has something in common with the idea of being exhausted, or spent, though that appears in the negative direction. So it is recognizable across time (from the original example), space, age, volume (the water) and a host of other contexts.

One thing to notice is that the concept need have no words in common from one domain to the next. Word vectors such as word2vec or GloVe work by the distributional hypothesis, which is that linguistic items with similar distributions have similar meanings, or, a word is characterized by the company it keeps. This is surprisingly effective, but it has also apparently led to the ‘hallucinations’ that are a problem in large language models.

What does this suggest? It suggests that in order to indicate meaning to a machine, we need a way to indicate concepts in a way that has very little to do with the actual words used, in the manner suggested above. That which we recognize is necessarily general, as it contains components, or ‘primitives’ that we recognize across domains and situations (speeding, too young, overflowing, a moment too long, etc.).

The question is: once we suggest these recognized patterns to the machine, will it be able to generalize? Will this generalization tether it more securely to reality?

The answer to the former is, very likely, yes. The complexity of this task wouldn’t seem much more complex than image recognition, with its complexity born of distance from the subject, angles, lighting, partially obstructed, views, varieties of faces, etc.

The answer to the latter is, stay tuned.