最先端のテキスト、画像、音声、マルチモーダル機械学習モデルの定義、推論、学習に対応するフレームワーク。
google-research/text-to-text-transfer-transformer
Google ResearchによるT5のコードベース。TPU上でのデータ前処理、学習、ファインチューニング、評価を含む「Text-to-Text Transfer Transformer」の実験を再現できます。
- スター
- 6,565
- フォーク
- 800
- 未解決の Issue
- 110
- 最終コミット
- 25 日前
これは何?
T5は論文「Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer」に付属するコードベースです。あらゆるNLPタスクをテキスト入力からテキスト出力への変換として扱い、ライブラリは主にデータセットの読み込み、前処理、混合、評価を中心に構成されています。TensorFlow Datasets、テキストファイル、カスタムソースからTaskを定義し、前処理関数、SentencePieceによるトークナイズ、評価指標を設定して、複数タスク学習用のMixtureにまとめられます。
リポジトリには、gin設定ファイルを使って事前学習、ファインチューニング、評価、デコードを行うt5_mesh_transformerなどのコマンドラインバイナリが用意されています。主な実行環境はMesh TensorFlowを使ったGoogle Cloud TPUで、GPUで実行する手順も含まれています。また、PyTorchと単一GPUを使ったファインチューニング向けの実験的なHugging Face Transformers shimや、T5-SmallからT5-11Bまでの公開済みチェックポイントも提供されています。
このプロジェクトは現在、積極的には開発されていません。新しい開発には、JAXとFlaxを使ったT5X実装をREADMEで推奨しています。
主な機能
- 01Task、TfdsTask、TextLineTaskを使い、NLPタスクをテキスト間変換のデータとして定義できます。
- 02複数のタスクを設定可能な割合でMixtureにまとめ、マルチタスク学習に利用できます。
- 03事前学習、ファインチューニング、評価、デコード用のコマンドラインツールを提供します。
- 04Mesh TensorFlowを使ってGoogle Cloud TPU上で実行でき、GPUでの実行手順も用意されています。
- 05T5-Small(6,000万パラメータ)からT5-11B(110億パラメータ)までの事前学習済みチェックポイントを公開しています。
ユースケース
- T5論文の転移学習実験を再現する。
- 公開済みのT5チェックポイントをカスタムのテキスト間変換データセットでファインチューニングする。
- 複数のデータセットを組み合わせた、カスタムのマルチタスクNLP学習パイプラインを構築する。
- 系列変換モデルの事前学習目的やデータセットの前処理について調べる。
クイックスタート
- 1
T5 パッケージをインストールする
pip install t5[gcp] - 2
無料の Colab チュートリアルで T5 を試す(TPU、ローカル環境のセットアップ不要)
- 3
利用可能なタスクと混合データセットを一覧表示する
python -c "import t5; print(t5.data.MixtureRegistry.names())"
使う前に知っておきたいこと
- README には、MeshTF を使った TensorFlow 上の T5 は現在積極的に開発されておらず、代わりに T5X を推奨すると記載されています。
- トレーニングとファインチューニングは、Google Cloud TPU と GCP ストレージを前提に構成されています。
- C4 データセットの準備には、約 7 TB のダウンロードと、およそ 335 CPU 日分の計算が必要です。
収録されている特集
トピック
よくある質問
- text-to-text-transfer-transformer とは?
- Google ResearchによるT5のコードベース。TPU上でのデータ前処理、学習、ファインチューニング、評価を含む「Text-to-Text Transfer Transformer」の実験を再現できます。 T5は論文「Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer」に付属するコードベースです。あらゆるNLPタスクをテキスト入力からテキスト出力への変換として扱い、ライブラリは主にデータセットの読み込み、前処理、混合、評価を中心に構成されています。TensorFlow Datasets、テキストファイル、カスタムソースからTaskを定義し、前処理関数、SentencePieceによるトークナイズ、評価指標を設定して、複数タスク学習用のMixtureにまとめられます。
- text-to-text-transfer-transformer は無料で使えますか?ライセンスは?
- text-to-text-transfer-transformer は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- text-to-text-transfer-transformer は今もメンテナンスされていますか?
- 活発にメンテナンス中。text-to-text-transfer-transformer の最終コミットは 2026年10月12日 です。
- text-to-text-transfer-transformer は何に使えますか?
- T5論文の転移学習実験を再現する。 公開済みのT5チェックポイントをカスタムのテキスト間変換データセットでファインチューニングする。 複数のデータセットを組み合わせた、カスタムのマルチタスクNLP学習パイプラインを構築する。 系列変換モデルの事前学習目的やデータセットの前処理について調べる。
- text-to-text-transfer-transformer のインストール方法は?
- T5 パッケージをインストールする: pip install t5[gcp] 無料の Colab チュートリアルで T5 を試す(TPU、ローカル環境のセットアップ不要) 利用可能なタスクと混合データセットを一覧表示する: python -c "import t5; print(t5.data.MixtureRegistry.names())"
- text-to-text-transfer-transformer はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/google-research/text-to-text-transfer-transformer
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Hugging FaceのBERT、RoBERTa、XLNetなどのtransformerモデルをspaCyパイプラインに組み込むコンポーネントとアーキテクチャ。
Deezerが開発したPythonライブラリとCLI。学習済みモデルを使って楽曲をボーカル、ドラム、ベースなどのステムに分離します。
85言語に対応した事前学習済みSaTおよびWtPモデルを使い、テキストを文やその他の意味単位に分割するPythonツールキット。
JAX、TensorFlow、PyTorchで動作するテキスト・画像・音声モデルを提供する、Keras 3向けの事前学習済みモデルライブラリです。
モデルの組み合わせやPyTorch、TensorFlow、MXNetのレイヤーのラップに使える、軽量で型チェック対応の関数型ディープラーニングライブラリ。