5 ms·
Thanks for bringing some sense into the debate. It's scandalising to see how the machine learning research community is so ready to jump on to such ... innovati
Thanks for bringing some sense into the debate. It's scandalising to see how the machine learning research community is so ready to jump on to such ... innovative uses of terminology.
Take "few shot learning", for instance. OpenAI's preprint introducing GPT-3 was titled "Large Language Models are Few Shot Learners" [1]. This was promptly adopted by the community, even though LLMs need first to be trained on millions of examples before they can accept "few", and they don't even learn from those few (because no weight updates). So it's not really "few shot" and it's not really "learning", and yet, here we are. "Large Language Models are few-shot learners" and nobody bats an eyelid anymore.
Which is not to say we have to shut up and take it. I personally draw inspiration from the tale of the little child who pointed out the King's sartorial negligence.
________________
[1] That, in itself, is a title designed to claim some groundbreaking progress not just in technological capabilities but also in scientific understanding. LLMs are few-shot learners, man! Few-Shot!
I don't see the issue here. The exact same definition of "few shot learning" has been used for at least 20 years. Nothing changed with the GPT-3 paper.
The definition is something like
Given a task, a few shot learner is an algorithm that generalizes well with only a small number of training examples for that task.
The same definition is what I'm familiar with from undergrad. Do you know of a different definition that precedes GPT-3?
The issue is that the aim is to model the one shot of animals, not some other target .
Animals are one shot learners because we're in causally direct sensory-motor contact with reality, such that we can dibiguatw it live.
No train/predict system can disambiguate the causal origin of data and so can never be one shot.
What they're targeting is a triviality within a system of trivialities and misdiscrubjng it
I reference the GPT-3 preprint because it's the source of the latest twist to the meaning of "few-shot learning".
>> Given a task, a few shot learner is an algorithm that generalizes well with only a small number of training examples for that task.
I don't know where this definition comes from and I'd prefer if you had a more solid reference than your recollection of your undregraduate years, but it doesn't really matter because what you describe is not what LLMs do.
The input prompts to GPT-3 and friends are not "training examples". Training examples are labelled instances of a concept to be learned- that's PAC-Learning. LLM prompts are not examples, and they're not used in training. They're input sequences that an already-trained model completes with a sequence of tokens with maximal probability given the input.
That's indeed nothing new, it's how language generation with a language model works, and has always worked. But I don't remember ever hearing anyone referring to the input sequences given to Hidden Markov Models or Probabilistic Context-Free Grammars as "training examples", or the process of generating their completions referred to as "learning", let alone "few-shot learning". And yet, this kind of generation is exactly what LLMs do, too. Except of course LLMs have much smoother, larger models than any HMM or PCFG ever trained. But as the OP is arguing, that's not a qualitative difference, only a quantitative one, and renaming it is misleading. Doubly so if the renaming walks roughshod over long-established terminology, like "few shot", "learning" or "examples".
Btw, the OpenAI GPT-3 preprint gives a definition of their "few shot" setting but it's informal, long-wided and overall a vague mess, so it's really no surprise that so much confusion and chaos is generated as a result.
> Remarkably, conditioning the model on such an “example-based specification” effectively enables the model to adapt on-the-fly to novel tasks whose distributions of inputs vary significantly from the training distribution. The idea that simply minimizing the negative log loss of a single next-word-prediction objective implies this apparent optimization of many more arbitrary tasks – amounting to a paradigm of “learning” during inference time – is a powerful one, and one that raises many questions.
http://ai.stanford.edu/blog/in-context-learning/ http://ai.stanford.edu/blog/in-context-learning/
Hey man. Give some context to links please. Don't just dump them like that...
But thanks for the link, it seems like an interesting read though I'm too tired now to read it (but not for spouting off on HN... i know right).
>> Remarkably, conditioning the model on such an “example-based specification” effectively enables the model to adapt on-the-fly to novel tasks whose distributions of inputs vary significantly from the training distribution.
That would be indeed interesting if it was the case, but as we have seen in practice, it isn't. For example, GPT-3 is great in addition and subtraction with two- and three-digit numbers, but its performance deteriorates rapidly after that, plus it's bad at multiplication and completely incapable of division [1]. That's exactly what you'd expect of a model trained on a dataset where "easy" arithmetic problems predominate, i.e. the internet, and not at all what you'd expect of a model that can somehow magickally generalise beyond its training distribution without even being trained, and without even retaining any memory of its "examples" (i.e. prompts).
In any case, the way to convince me that I'm wrong is to do the good, old-fashioned hard work of proving LLMs' learning ability, like people used to do when it was all hairy stuff like statistical learning theory and VC-dimension and so on. But that's too much hard work and people prefer to poke LLMs with arbitrary prompts instead nowadays. And I agree that it's more fun that way, but at some point you have to give up the fun and try to understand exactly what's going on with a complex system.
____________________
[1] See Figure 3.10 in "Language models are few-shot learners".
Strange, I could have sworn there used to be a "large" in the title.
I disagree with what you're saying here.
> The input prompts to GPT-3 and friends are not "training examples". Training examples are labelled instances of a concept to be learned- that's PAC-Learning. LLM prompts are not examples, and they're not used in training.
In the PAC learning setting, these are training examples because you use the labels to select a function, in this case the conditional output given the few shot examples.
Whether or not you actually update any weights has nothing to do with "few shot learning" and never has. In the PAC setting there are no weights, just model functions that depend on the training data.
EDIT: The reason you didn't hear people refer to the inputs of HMMs as "training examples" is because HMMs are very poor few-shot learners. That's why GPT-3 is interesting, because it is a good few-shot learner.
You could use an HMM as a few shot learner, but computing the results is expensive and the results are not good for most tasks.
>> In the PAC learning setting, these are training examples because you use the labels to select a function, in this case the conditional output given the few shot examples.
That's not right. When you give a prompt to an LLM it doesn't use it to select a function [1]. The function is already selected (its weights are trained). The prompt only invokes the function.
The fact that there are no weight updates is important. Weight updates is how neural networks learn. Without weight updates neural nets can't be said to learn anything.
To dredge up from the depths yet another ancient definition of machine learning, the one by Tom Mitchell, an LLM will never improve its performance no matter how many prompts you give it. Every time you leave an interaction session with GPT-3, all the information you gave it in your prompts simply ceases to exist, as far as its model is concerned. There's nothing that is remotely like "learning" in that.
_______________
[1] More precisely, in PAC-Learning a learner is said to have learned a class of concepts if, given an unlabelled instance from a concept in the class it correctly labels the instance as a member of the concept, with some probability of some error and in polynomial time, or after having observed a polynomial time of examples. As you say, PAC-Learning doesn't say anything about weights, but it doesn't say anything about selecting functions, either. It's a framework within which to study learnability. That's a bit of an aside, hence the footnote.
It does select a function.
The distribution over outputs conditioned on the input prompt is a different distribution, hence a different (random) function.
It's not important that there are no weight updates. The new function, the model conditioned on a few example input-output pairs, is good at producing new outputs for unseen inputs. That is what learning is.
There is a reason that everyone working on LLMs is comfortable with this definition. It really does exactly match the definition that has been used for decades.
>> The distribution over outputs conditioned on the input prompt is a different distribution, hence a different (random) function.
As I say in another comment (and if I understand what you mean correctly) that is not supported by observations.
>> It's not important that there are no weight updates. The new function, the model conditioned on a few example input-output pairs, is good at
producing new outputs for unseen inputs.
To be blunt, I've seen as much evidence for that as I've seen evidence for the existence of the Sasquatch. The people who train those models don't even know what's in their datasets, let alone anyone being able to say that an "example" (i.e. a prompt) is "unseen".