Scaling Instruction Finetuned Language Models (2022)
May 7, 2025Instruction Finetuningは訓練データにない種類のタスクのゼロショットを改善するファインチューニングの一種で、Finetuned Language Models Are Zero-Shot Learnersで知られるようになった。 もとの文献ではInstruction tuningと呼ばれている。 Scaling Instruction-Finetuned Language Modelsは、学習データ、モデルのパラメタの数、chain-of-thoughtのデータを増やすと、instruction tuningで学習したモデルの性能を向上できることを示した。
Instruction tuningは、学習データに追加する異なる種類のタスクの指示と正解の表現形式を揃える。 この統一的な文章がinsturctionであるが、Finetuned Language Models Are Zero-Shot Learnersには厳密な定義はない。 感情分析や翻訳のようなものと説明されている。 文献には以下の例がある。
INPUT
Jane knocked on Susan’s door, but there was no answer.
OPTIONS:
Jane was out.
Susan was out.
TARGET
Susan was out.
INPUT
Question: who is the girl in more than you know??
Answer:
TARGET
Romi Van Renterghe
Finetuned Language Models Are Zero-Shot Learnersは、既存のデータセットをinstruction形式に書き換えた学習データでモデルを訓練し、訓練データにない種類のタスクの性能を測定することで、ゼロショットに対するinstructionの効果を示した。 Instructionを学習したモデルはFLAN (Finetuned Language Net) とよばれる。
Scaling Instruction-Finetuned Language Modelsで実験したモデルはパラメタ数が8B, 62B, 540BのPaLMであり、0, 9, 89, 282, 1836件のタスクで学習したときの性能が比較された。 タスクは、データセットの名前とデータセットのカテゴリのペアを意味する。 カテゴリには、TranslationやQuestion Answeringなどがある。 1つのデータセットが複数のカテゴリに分類される場合がある。 たとえば、SQuADがextractive question answering, query generation, context generationのカテゴリに分類される。 どのパラメタ数のモデルでも、282種類以上タスクを増やしても、ほとんど性能の向上がみられなかった。 追加するタスクと既存のタスクの差分が小さいことや、事前学習で訓練した内容を表出する性能だけをファインチューニングで向上していることが原因と考察されている。
他方、chain-of-thoughtのタスクを学習データに含めることには顕著な効果がみられた。 Instructionに特定のフレーズ"step-by-step"を含めることで訓練データにないタスクに対する推論が改善された。