Skip to main content

トレーニングとは

注:この文書は英語の原文からの自動翻訳です。

トレーニングとは

トレーニング(Training) は、AI モデル をデータにさらすことで、パターン、関係性、構造を学習させ、教育するプロセスです。トレーニング前のモデルは、ランダムなパラメータを持つ空白の構造です — 画像を分類することも、文を生成することも、予測を行うこともできません。トレーニング後、それらのパラメータはデータから抽出された知識をエンコードします。トレーニングは、空の ニューラルネットワーク を有用なツールに変えるものです。

料理を教えることに例えてみましょう。ナイフを握ったことのない人から始めます。その人に何千ものレシピ(データセット)、練習するキッチン(コンピューティング)、そして一皿ごとに味見して何が悪かったかを言うシェフ(損失関数)を与えます。十分な練習の後 — 料理を焦がし、スープを塩辛くしすぎ、技術を調整して — その料理人は、一度も組み合わせたことのない材料から即興で一皿を作れるようになります。その即興こそが、訓練されたモデルが 推論 中に行うことです。

要約: トレーニングは「学習」のフェーズです — モデルは何百万もの例を読み、新しい未知の入力を扱えるようになるまで自らを調整します。訓練されたモデルが、得られた知識です。

トレーニングのステップごとの仕組み

エンドユーザーが目にするのは完成したモデルだけですが、トレーニングは多段階のエンジニアリングパイプラインです。各段階で、最終結果に影響する判断が導入されます。

データ収集

すべてのトレーニング実行はデータから始まります。プロジェクトは、モデルが実行するタスクに関連した データセット を組み立てなければなりません。テキストモデルの場合、これはウェブ規模の自然言語コーパスかもしれません。クリプト固有のモデルの場合、ブロックチェーンのトランザクション履歴、プロトコルのドキュメント、ソーシャルセンチメントデータを含むかもしれません。データセットの品質、サイズ、関連性が、モデルが学習できることの上限を決めます — どんなアーキテクチャも、欠落した、あるいは破損したデータを補えません。

データ前処理

生データはそのままでは使えることがほとんどありません。前処理(Preprocessing) は、それをモデルが取り込める均一な形式に変換します。一般的なステップには、トークン化(テキストをサブワード単位に分割する)、正規化(数値をスケーリングする)、重複排除(ほぼ同一のレコードを削除する)、フィルタリング(低品質、攻撃的、無関係な例を削除する)があります。不十分に前処理されたデータは、モデルが学習するのではなく記憶してしまうノイズを導入します。

アーキテクチャの選択

トレーニングが始まる前に、エンジニアはモデルの アーキテクチャ — データがモデルをどう流れるかを定義する設計図 — を選びます。テキストタスクでは、今日支配的なアーキテクチャは Transformer で、大規模言語モデル を駆動します。画像タスクでは、畳み込みニューラルネットワーク(CNN) と ビジョントランスフォーマー(ViT) が一般的です。アーキテクチャは、層の数と種類、アテンションの計算方法、モデルの容量がサイズとともにどうスケールするかを決定します。多くのクリプト AI プロジェクトは、既存のオープンソースアーキテクチャ(DeepSeek、Mistral、Stable Diffusion)を採用し、直接ファインチューニングへ進むことで、このステップを省きます。

トレーニングループ

トレーニングループ(training loop) は、数時間、数日、または数週間にわたって実行される、中核の最適化サイクルです。

  1. モデルは、前処理されたデータのバッチを受け取ります。
  2. 出力(予測、生成されたトークン、分類)を生成します。
  3. 出力は、誤差を計算する 損失関数 を用いて、期待される結果と比較されます。
  4. 最適化アルゴリズム(通常は 確率的勾配降下法 の変種)が、誤差を減らすために各パラメータをどう変えるべきかを計算します。
  5. モデルの内部パラメータ(重み)が、損失を下げる方向にわずかに調整されます。
  6. このサイクルが次のバッチで繰り返されます。

データセット全体を一度通過することを エポック(epoch) と呼びます。大規模なモデルは、巨大なデータセットで数百エポックにわたってトレーニングすることがあります。トレーニングループは最も計算集約的な段階です — 単一の大規模言語モデルの事前学習の実行は、数か月にわたって連続稼働する数千の GPU を消費することがあります。

評価

トレーニングを通じて、エンジニアは定期的に ホールドアウト検証セット — モデルがトレーニング中に一度も見たことのないデータ — でモデルを評価します。これは、モデルが一般化可能なパターンを実際に学習しているのか、それとも単にトレーニングの例を記憶しているだけ(過学習 と呼ばれる問題)なのかを明らかにします。評価には、タスクに適した ベンチマークと品質指標 を使います:言語モデルにはパープレキシティ、分類器には精度や F1、翻訳と要約には BLEU や ROUGE。

デプロイ

モデルが評価指標で許容できる品質に達すると、本番用にパッケージ化されます。これには、モデルをより効率的な形式に変換すること、量子化(メモリと計算の要件を削減するために数値精度を下げること)を適用すること、それを推論パイプラインにデプロイすることが含まれます。訓練されたモデル — 学習された重みの集まり — が、実際にユーザーにサービスを提供するアーティファクトです。

段階 何が起きるか 例
データ収集 関連するデータセットを組み立てる ウェブテキスト、コード、ブロックチェーンデータを集める
前処理 データをクレンジングし整形する テキストをトークン化し、重複を削除する
アーキテクチャの選択 モデルの設計図を選ぶ 70 億パラメータの Transformer を選択する
トレーニングループ 勾配降下法で重みを最適化する 1024 個の GPU で 200 エポック実行する
評価 未知のデータでテストする 検証セットでパープレキシティを測定する
デプロイ 本番用にモデルをパッケージ化する 重みを量子化し、API にデプロイする

トレーニングの種類

すべてのトレーニングが同じではありません。種類が異なれば目的も異なり、AI のライフサイクルの異なる段階に現れます。

事前学習

事前学習(Pre-training) とは、巨大な汎用データセットでモデルをゼロから訓練することを意味します。目的は、タスク固有の知識ではなく、広範なパターン — 言語の構造、視覚的特徴、統計的規則性 — を学習することです。事前学習は群を抜いて最も高価な段階です。最先端の LLM をゼロから訓練するには数千万ドルかかり、数か月にわたって稼働する数千のハイエンド GPU が必要になることがあります。これを行うクリプト AI プロジェクトはごくわずかで、大多数はオープンソースエコシステムの事前学習済みモデルを使って適応させます。

ファインチューニング

ファインチューニング(Fine-tuning) は、事前学習済みのモデルを取り、より小さなドメイン固有のデータセットで調整します。これはクリプト AI で最も一般的なアプローチです。プロジェクトは、クリプト固有の質問に対する性能を向上させるために、ブロックチェーンのドキュメント、スマートコントラクトのコード、DeFi プロトコルのデータで LLM をファインチューニングするかもしれません。ファインチューニングは、すでに有能なモデルから始まり、ゼロから学習するのではなく重みをずらすだけでよいため、事前学習よりはるかに安価です。

人間のフィードバックからの強化学習(RLHF)

RLHF は、モデルの出力を人間の選好に合わせるために使われる、トレーニング後の技術です。事前学習と初期のファインチューニングの後、人間の評価者が同じ入力に対する複数のモデル出力をランク付けします。これらのランク付けが 報酬モデル を訓練し、それが強化学習を通じて主モデルのさらなるトレーニングを導きます。RLHF は、チャットボットが指示に従い、有害なコンテンツを避け、人間が役立つと感じる応答を生み出すようにする技術です。純粋に統計的な学習の上に、人間の判断の層を加えます。

知識蒸留

蒸留(Distillation) は、より小さな「生徒」モデルを訓練して、より大きな「教師」モデルの出力を再現させます。生徒は元のデータからではなく、教師の予測(ハードラベルではなく、より豊かな情報を含むソフトな確率分布)から学習します。蒸留は、限られたハードウェア — エッジデバイスやコスト制約のある分散推論ネットワークなど — でモデルを実行する必要があるプロジェクトにとって、教師モデルの品質の大部分を保ちながら実用的です。

パラメータ効率の良いファインチューニング(LoRA とアダプター)

LoRA(Low-Rank Adaptation) や類似の技術は、事前学習済みモデルの重みの大部分を凍結し、少数の追加パラメータだけを訓練します。これにより、ファインチューニングが計算とメモリの面で劇的に安くなり — しばしば単一のコンシューマー GPU で可能になります。LoRA アダプターは軽量なファイル(しばしばわずか数十メガバイト)で、特定のタスク向けに振る舞いをカスタマイズするためにベースモデルの上に読み込めます。このパターンは、参加者がすべての重みをファインチューニングする全コストを負担せずにモデルをカスタマイズしたい分散型 AI に特に関連します。

分散トレーニングと連合トレーニング

分散トレーニング(Distributed training) は、データを分割する(データ並列)か、モデル自体を分割する(モデル並列)かのいずれかで、ワークロードを複数の GPU やノードに分割します。連合トレーニング(Federated training) はさらに進みます:データは各参加者のデバイスにとどまり、モデルの更新(勾配)だけが共有されます。いずれの当事者もすべてのデータにアクセスすることなく、モデルは集合的に改善されます。このパターンは分散化の原則と整合し、AI/トレーニング カテゴリ内のプロジェクトに現れます。

種類 コスト クリプト AI での典型的な使われ方
事前学習 非常に高い(数百万ドル) まれ;ほとんどのプロジェクトは既存のモデルを使う
ファインチューニング 中程度(数百〜数千ドル) 一般的;モデルをクリプトドメインに適応させる
RLHF 高い(人間の評価者が必要) あまりない;エージェント志向のプロジェクトで見られる
蒸留 中程度 推論用の軽量モデルを作るのに使われる
LoRA / アダプター 低い(単一の GPU) 増加中;ユーザーごとのカスタマイズを可能にする
分散 / 連合 場合による 分散型トレーニングネットワークの中核パターン

トレーニングが検証可能性にとってなぜ重要か

自前のモデルを訓練するプロジェクトは、サードパーティ API を呼び出すだけのプロジェクトよりも深い AI 能力を実証します。トレーニングは、プロジェクトが関連データ、計算リソース、機械学習 の専門知識へのアクセスを持つことを含意します。また、検証可能なアーティファクト(トレーニングログ、損失曲線、モデルのチェックポイント、ベンチマーク結果)を生み出します。

DecAIHub のプロジェクトカードでは、AI component フィールドのトレーニング関連の値 — distributed training、fine-tuning、model training pipeline など — は、そのプロジェクトが事前構築済みのモデルを提供する以上のことをしていることを示します。トレーニングコンポーネント のページは、これらの値が実際にどう現れるかを記述しています。

トレーニングに必要なもの

トレーニングが実現可能かどうかを定義する三つのリソースがあります。

  • データ — タスクに対して十分に大きく関連した、品質のある データセット。データの品質がモデルの品質を決めます。
  • コンピューティング — GPU または専用ハードウェア。より多くのデータとより大きなモデルには、より多くの コンピューティング が必要です。これが主なコストの牽引役です。
  • 専門知識 — アーキテクチャの選択、ハイパーパラメータの調整、結果の評価、失敗のデバッグには、機械学習 の知識が必要です。

トレーニングインフラを提供すると主張するプロジェクトは、これら三つすべてのエビデンスを示すべきです。

トレーニングが DecAIHub のプロジェクトカードのどこに現れるか

トレーニングは、DecAIHub のプロジェクトカード の複数の箇所に現れます。

  • AI component — 「distributed training」「fine-tuning」「model training pipeline」などのトレーニング関連の値は、プロジェクトが事前構築済みのモデルを消費するだけでなく、能動的にモデルを訓練するか、モデルのトレーニングを支援することを示します。
  • Category — AI/トレーニング カテゴリのプロジェクトは、トレーニングインフラやサービスの提供に特化しています。
  • Evidence テーブル — トレーニングの Tier-1 エビデンスには、公開されたトレーニングログ、損失曲線、Hugging Face や類似のリポジトリに公開されたモデルのチェックポイント、公開されたベンチマーク比較が含まれます。
  • ai_score — DecAI Fit アルゴリズムの中で、公開されたエビデンスを伴う本物のトレーニングを実証することは ai_score を上げます。単に「私たちはモデルを訓練しています」とアーティファクトなしに主張するだけでは上がりません。

トレーニングだけでは証明できないこと

  • モデルを訓練しても、そのモデルが 優れている ことを意味しません。ベンチマークや評価がなければ、品質を評価する方法はありません。
  • トレーニングは、そのモデルが 使われている ことを証明しません。訓練されても 推論 のためにデプロイされなかったモデルは、ユーザーに何の価値も生みません。
  • 他者のオープンソースモデルでのトレーニングは有効ですが、ゼロから構築したように提示するのではなく、開示 すべきです。
  • トレーニングは、そのプロセスに なぜトークンが必要か を説明しません。
  • 複数の独立した参加者が実際に計算を提供しているエビデンスなしに「分散型トレーニング」を主張することは検証不可能です。トレーニングタスクのオンチェーン記録、プロバイダーの登録、検証可能な計算ログを確認してください。

トレーニングの主張を評価するときは、Evidence テーブル と Tier-1/2/3 エビデンス を確認してください。

混同しないでください

  • 推論 は次の段階です — 訓練されたモデルを新しいデータで実行すること。トレーニングはモデルを生み出し、推論はそれを使います。
  • AI component としてのトレーニング は、トレーニングが DecAIHub のプロジェクトカードにどう現れるかを記述します。このページは概念そのものを説明します。
  • AI/トレーニング カテゴリ は、トレーニングインフラに焦点を当てたプロジェクトを分類します。トレーニングの概念はもっと広く適用されます。
  • データ収集とラベリング は、トレーニングが消費するデータを準備します。これらは関連しますが別個の段階です。
  • AI モデル は、トレーニングによって生み出されるアーティファクト — 学習された重みの集まり — です。トレーニングはプロセスであり、モデルはその結果です。

よくある質問

AI のトレーニングにはどのくらい時間がかかりますか?

モデルのサイズ、データセットのサイズ、利用可能なハードウェアによります。焦点を絞ったデータセットで小さなモデルをファインチューニングするのは、単一の GPU で数時間で終わることがあります。最先端の LLM をゼロから事前学習するには、数千の GPU のクラスタで数週間から数か月かかります。参考までに、最先端の 700 億パラメータの LLM を訓練するには、NVIDIA A100 ハードウェアで約 100〜200 万 GPU 時間が必要です。分散トレーニングと連合トレーニングは、ワークロードを分散することで実時間を短縮できますが、調整のオーバーヘッドを導入します。

事前学習とファインチューニングの違いは何ですか?

事前学習は、巨大で広範なデータセットからモデルに一般的な知識を教えます — 言語の構造、視覚的特徴、統計的パターンをゼロから学習します。ファインチューニングは、その事前学習済みモデルを取り、より小さなドメイン固有のデータセットで特化させ、特定のタスクでより良く機能するようにします。事前学習は高価で一度だけ行われ、ファインチューニングは安価で、異なるドメインのために繰り返せます。

なぜトレーニングはそんなに高価なのですか?

主なコストは計算ハードウェアです。大規模なモデルの訓練には、連続稼働する数千のハイエンド GPU が必要で、相当な電力を消費します。データの準備、人間によるラベリング、専門家のエンジニアリング時間がさらにコストを加えます。単一の最先端モデルの事前学習には数千万ドルかかることがあります。LoRA、蒸留、ファインチューニングによる転移学習のような技術は、ゼロから始めるのではなく既存の事前学習済みモデルを再利用することで、コストを劇的に削減します。

ブロックチェーン上で AI を訓練できますか?

完全なトレーニングループを直接オンチェーンで実行することは非現実的です — ブロックチェーンの実行環境は、トレーニングが必要とする数十億の行列演算には遅すぎ、高価すぎます。しかし、ブロックチェーンはトレーニングを調整できます。分散型トレーニングネットワークは、オンチェーンの仕組みを使ってタスクを割り当て、貢献を検証し、報酬を分配し、来歴を記録する一方で、実際の計算は参加する GPU 上でオフチェーンで行われます。このパターンは AI/トレーニング カテゴリ内のプロジェクトに現れます。

RLHF とは何ですか?

人間のフィードバックからの強化学習は、モデルの振る舞いを人間の選好に合わせる、トレーニング後の技術です。初期トレーニングの後、人間の評価者がモデルの出力をランク付けします。これらのランク付けが報酬モデルを訓練し、それが強化学習を通じて主モデルのさらなる最適化を導きます。RLHF は、現代のチャットボットが指示に従い、生の統計的な補完ではなく、役立ち安全な応答を生み出すようにする技術です。

関連ページ

外部リンク