4 ms·
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 alg
by YeGoblynQueenne 4y ago
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.
- visarga 4y ago> 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/
- YeGoblynQueenne 4y agoHey 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.
- YeGoblynQueenne 4y agoEdit: @visarga, I was kind of expecting you to tell me about the commas in arithmetic. I wonder whether you didn't because it's obvious to yo, too, that that is evidence refuting the claim of learning out-of-distribution concepts. As in, yes, GPT-3 gets better at arithmetic with comma-separated values, but that's because the commas help it overfit even more.
- mgraczyk 4y agoI 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.
- YeGoblynQueenne 4y ago>> 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.