AI・機械学習
中級

TAPT(タスク適応的事前学習)(ティーエーピーティー)

特定のダウンストリームタスクに関連するデータのみを用いてモデルを追加事前学習する手法。DAPTより小規模データで効率的に特化できる。

0 回閲覧
0 いいね
2026/6/8 更新
関連タグ
tapt
task-adaptation
continual-pretraining
domain-adaptation
few-shot-learning

TAPT(Task-Adaptive Pre-Training)とは

TAPTはTask-Adaptive Pre-Trainingの略で、ファインチューニングするタスクに直接関連するラベルなしテキストを使って、モデルを追加事前学習する手法です。2020年のAllenAI論文「Don't Stop Pretraining」で体系化されました。

DAPTとの違い

DAPT: 医療ドメイン全体(数TB)→ BioBERT
TAPT: 医療QAタスクの質問文のみ(数MB)→ Task-Specific Model

TAPTの特徴:

  • データ量が少ない: タスクのラベルなしデータは通常数千〜数万件
  • タスク特化度が高い: そのタスクに必要な分布に集中学習
  • 計算コストが低い: 数時間〜1日で完了可能

最適な組み合わせ戦略

論文の実験結果によると、効果の高い順は:

  1. DAPT + TAPT: ドメイン適応後にタスク適応(最高精度)
  2. TAPT のみ: 汎用モデルに直接タスク適応
  3. DAPT のみ: タスク非依存のドメイン適応
  4. ベースモデルのみ: 追加適応なし(ベースライン)

LLM時代のTAPT実装

from transformers import Trainer, TrainingArguments

training_args = TrainingArguments(
    output_dir="./tapt-model",
    num_train_epochs=3,
    per_device_train_batch_size=8,
    learning_rate=2e-5,
    warmup_ratio=0.1,
    lr_scheduler_type="cosine",
)

LLM時代の代替アプローチとの比較

  • In-Context Learning(ICL): Few-shotでタスク例を与える(追加学習不要)
  • LoRA TAPT: TAPT対象データでLoRA適応(パラメータ効率的)
  • Instruction Tuning: タスクをQ&A形式に変換してSFT

TAPTは特にドメイン文書の量が限られた場合(希少疾患医療・ニッチ法律分野等)に、SFTデータ作成コストを抑えながら精度向上できる実用的手法です。

この記事について
カテゴリーAI・機械学習
難易度中級
作成日2026/6/8