# T5v1.1

## 概要

T5v1.1は、Colin Raffel氏らによって[google-research/text-to-text-transfer-transformer](https://github.com/google-research/text-to-text-transfer-transformer/blob/main/released_checkpoints.md#t511)リポジトリでリリースされました。これは元のT5モデルの改良版です。このモデルは[patrickvonplaten](https://huggingface.co/patrickvonplaten)氏によって貢献されました。元のコードは[こちら](https://github.com/google-research/text-to-text-transfer-transformer/blob/main/released_checkpoints.md#t511)で確認できます。

## 使用のコツ

T5v1.1の重みをT5モデルに直接読み込むことができます。以下のようにします:

```python
from transformers import T5ForConditionalGeneration

model = T5ForConditionalGeneration.from_pretrained("google/t5-v1_1-base", device_map="auto")
```

T5 Version 1.1は、元のT5モデルと比較して、以下の改善が含まれています。

- フィードフォワードの隠れ層では、ReLU ではなく GEGLU アクティベーションを使用します。[この論文](https://huggingface.co/papers/2002.05202)を参照してください。

- 事前学習ではDropoutは無効化されていました（品質向上のため）。ファインチューニング時には、Dropoutを再度有効にする必要があります。

- C4のみで事前学習を行い、下流タスクを混合していません。

- 埋め込み層と分類器層の間では、パラメータの共有は行われません。

- 「xl」と「xxl」は「3B」と「11B」に置き換わります。モデルの形状は少し異なり、`d_model`は大きく、`num_heads`と`d_ff`は小さくなっています。

Note: [C4](https://huggingface.co/datasets/allenai/c4)での事前学習のみが行われたT5 Version 1.1は、教師あり学習を含まないため、元のT5モデルとは異なり、下流タスクで利用可能にするにはファインチューニングが必要です。t5v1.1は教師なしで事前学習されているため、単一タスクのファインチューニングにおいてタスクプレフィックスを使用する実際の利点はありません。マルチタスクのファインチューニングを行う場合は、プレフィックスを使用してください。

Googleは、以下のバリアントをリリースしました:

- [google/t5-v1_1-small](https://huggingface.co/google/t5-v1_1-small)

- [google/t5-v1_1-base](https://huggingface.co/google/t5-v1_1-base)

- [google/t5-v1_1-large](https://huggingface.co/google/t5-v1_1-large)

- [google/t5-v1_1-xl](https://huggingface.co/google/t5-v1_1-xl)

- [google/t5-v1_1-xxl](https://huggingface.co/google/t5-v1_1-xxl)。

すべての API リファレンス、ヒント、コード例、ノートブックについては、[T5 のドキュメントページ](t5)を参照してください。

