PEFT (高パラメーター効率ファインチューニング) とは

URL をコピー

大規模言語モデル (LLM) の運用には、コンピュートリソースと資金が必要です。PEFT (Parameter-Efficient Fine Tuning、高パラメーター効率ファインチューニング) は、LLM 内のパラメーターの一部のみを調整してリソースを節約する一連の技法です。 

PEFT は、従来のファインチューニング・モデルと同等のアウトプットを生み出しつつ、LLM のカスタマイズのハードルを引き下げます。 

Red Hat AI の詳細

ファインチューニングと PEFT はどちらも、LLM アライメントの技法です。求める出力が生成されるように、必要なデータを使って LLM に調整や情報の供給を施します。PEFT は言わば、従来のファインチューニングの進化形です。

従来のファインチューニングは、モデル全体をさらにトレーニングすることで LLM を調整します。そのためには、多大なコンピュートリソース、データ、そして時間が必要です。 

これに比べて、PEFT はモデル内のパラメーターのごく一部を変更するだけなので、一般に、大規模なリソースを持たない組織にとって利用しやすい技法です。 

Red Hat AI

PEFT には、より小規模なハードウェアで、大規模なモデルをより迅速にトレーニングできるというメリットがあります。 

そのメリットには、次のようなものがあります。

  • トレーニング速度の向上:PEFT では、更新するパラメーターが少なければ、より短期間で実験やイテレーションを実施できます。
  • リソース効率が高い:PEFT は、従来のファインチューニングと比べて GPU メモリーの使用量がはるかに少ないため、コンシューマーグレードのハードウェアで実行できます。つまり、専用サーバーを用意しなくても、ノートパソコンで LLM のトレーニングができるということです。
  • 破局的忘却を克服できる:破局的忘却とは、モデルが新しいトレーニングデータを与えられた際に、すでに学習した知識を忘れてしまう現象です。PEFT ではモデル全体ではなく一部のパラメーターのみを更新するため、モデルの破局的忘却を防げます。
  • 可搬性がある:PEFT でチューニングされたモデルは、より規模が小さく、管理しやすく、さまざまなプラットフォームにデプロイしやすいため、運用環境におけるモデルの更新や改善が容易です。
  • 持続可能:PEFT は使用するコンピュートリソースが少ないため、環境に配慮した運用目標との足並みがそろいます。
  • 利用しやすい:チームや組織のコンピュートリソースが少なくても、モデルをファインチューニングして目指す成果を実現できます。

エンタープライズ AI とは 

LLM は複数のニューラルネットワーク層から構成されています。こうした層は、入力層から始まって出力層で終わるフローチャートの一種と考えてください。これら 2 つの層の間にニューラルネットワークを流れるデータを処理するさまざまな層があり、それぞれが独自の役割を担っています。

言語モデルによる情報処理の方法を調整するには、パラメーターを変更します。 

PEFT の技法:GPU で LLM を最適化する方法

LLM のパラメーターとは

パラメーター (「重み」と呼ばれることもあります) は、LLM がどのように言語を理解するかを決めるものです。 

パラメーターは機械で言えば、調整するための歯車のようなものです。各パラメーターには特定の数値が割り当てられていて、その数値を変えることでモデルの言語の解釈能力や生成能力が変化します。 

1 つの LLM に数十億 (場合によっては数千億) ものパラメーターが含まれることもあります。パラメーター数が多いほど、モデルが実行できるタスクの複雑度も上がります。 

しかし、モデルのパラメーター数が増えると、必要なハードウェアリソースも増えます。必要なハードウェアに投資する資金がある組織ばかりではありません。だからこそ、PEFT をはじめとするチューニング技法が重要となるのです。 

モデルの効率を高めるために、精度を維持しつつ不要なパラメーターを除外する方法を学びましょう。

パラメーターの効率的なファインチューニング

PEFT では、あらかじめトレーニングされたモデルの構造の大部分は維持しつつ、戦略的に少数のパラメーターのみを変更します。このような調整方法の例は、次のとおりです。

モデル層の凍結:推論中は、ニューラルネットワークのすべての層を経由して計算が行われます。これらの層の一部を凍結することで、計算に必要な処理能力をある程度抑えられます。 

アダプターの追加:アダプターは、ボードゲームで言う拡張パックのようなものです。アダプターはあらかじめトレーニングされたモデル内の層に追加され、トレーニングを通じてドメインまたはアプリケーション固有の情報を学習します。このシナリオでは、元のモデルが変更されるのではなく、新しい機能が追加されます。 

PEFT を実行する方法は次のように複数あります。

  • LoRA (Low-Rank Adaptation)
  • QLoRA (Quantized Low-Rank Adaptation)
  • プレフィックスチューニング
  • プロンプトチューニング
  • P チューニング

LoRA と QLoRA の詳細

ファインチューニングは、LLM が目標に合わせて出力を調整できるようにするために、そのモデルに意図を伝える方法です。

たとえば、ある LLM はシェイクスピアのような文体でメールを作成することができる一方で、会社が提供する製品の詳細については何も知らないとします。

このような場合に、独自の情報を使ったモデルのトレーニングに使用できるのがファインチューニングです。 

ファインチューニングは、あらかじめトレーニングされたモデルを、目的に合わせてカスタマイズしたデータセットを使用してさらにトレーニングし、独自のタスクを効果的に実行できるようにするプロセスです。この追加のトレーニングデータによりモデルのパラメーターが変更され、元のモデルに代わる新しいバージョンが作成されます。

ドメイン固有のユースケースに合わせて LLM を個別化するには、ファインチューニングが欠かせません。ところが、従来のファインチューニングには多くのコストがかかります。 

ファインチューニングのコストが高い理由

LLM のファインチューニングのコスト要因には、次のようなものがあります。

  • GPU 要件:ファインチューニングには多大な処理能力が求められます。グラフィックス・プロセッシング・ユニット (GPU) は購入コストも運用コストも高く、ファインチューニング・プロセスにおいては、GPU を長時間稼働させる必要があります。そのため、電力や冷却にかかる費用も高額になる可能性があります。
  • データ要件:LLM を新たな情報でファインチューニングするためのデータセットは、高品質で適切にラベル付けされたものでなければなりません。こうしたデータの取得、構築、事前処理には費用も時間もかかります。 

LLM アライメントとは、言語モデルをトレーニングし、個別化して、求める出力を生成するプロセスを指します。

さまざまな LLM アライメント技法から組織に合ったものを選択する際には、以下の要素を検討します。

  • データ依存度:どのくらいのデータが必要ですか?この技法が適切に作用するために必要なデータにアクセスできますか?
  • 正確さ:この技法はチューニング後のモデルの正確さにどの程度影響しますか?
  • ユーザーが感じる複雑さ:使いやすさはどの程度ですか?

従来のファインチューニングと比較すると、PEFT は必要なデータ量が少なく、きわめて正答率が高く、ユーザーにとっても使いやすくなっています。 

その他にも検討すべき LLM アラインメントのオプションとして、以下が挙げられます。

  • 検索拡張生成 (RAG):RAG により、LLM 内に存在するデータを任意の外部知識ソース (データリポジトリ、テキストのコレクション、既存のドキュメントなど) で補完できます。
  • InstructLab:IBM と Red Hat の協力によって生まれた InstructLab コミュニティ・プロジェクトでは、組織内の誰もが知識やスキルを共有でき、それらすべてを組み込んだ言語モデルが構築されます。
    • InstructLab では、人間が作成したデータを補完するために合成データを使用しているため、データへの依存度は低くなります。正確さはファインチューニングと同等であり、使い方はきわめて簡単です。 

PEFT は、Red Hat® OpenShift® AI でサポートされているアラインメント技法の 1 つです。

OpenShift AI は、AI 対応アプリケーションを構築、デプロイ、管理するためのツールを備えた柔軟でスケーラブルな MLOps プラットフォームです。OpenShift AI は、オンプレミスとパブリッククラウドの両方で、AI/ML の実験およびモデルのライフサイクル全体をサポートします。

Red Hat OpenShift AI の詳細

Red Hat® AI は、AI 導入の初期段階にある企業から、ハイブリッドクラウド全体に AI を拡張する準備ができている企業まで、AI 導入のあらゆる段階で役立つ製品およびサービスのポートフォリオです。企業独自のユースケースに応じて、生成 AI および予測 AI のいずれの取り組みもサポート可能です。

Red Hat AI は、さまざまなインフラストラクチャにわたるパフォーマンス、安定性、GPU サポートに重点を置いた、オープンソース・テクノロジーおよびパートナーエコシステムに支えられています。目的に特化した小規模なモデルを効率的にチューニングでき、データがどこに存在していてもデプロイできる柔軟性を備えています。

Red Hat OpenShift AI

モデルと AI 対応アプリケーションを迅速に開発、トレーニング、提供、監視するツールを提供する人工知能 (AI) プラットフォーム。

関連情報

機械学習とは ? をわかりやすく解説

機械学習 (Machine Learning) とは、コンピュータが大量のデータから自動で学習し、ルールやパターンを抽出し、さらに学習した成果に基づいて予測や’判断を行う手法です。

ディープラーニングとは?をわかりやすく解説

ディープラーニングは、人間の脳をヒントに開発されたアルゴリズムを使用してコンピュータにデータを処理する方法を教える人工知能 (AI) 技法です。

生成 AI とは?をわかりやすく解説

生成 AI とは、人工知能テクノロジーの一種であり、大規模なデータセットで訓練されたディープラーニングモデルを使用して新しいコンテンツを作成するものです。

AI/MLリソース

関連記事