パラメータ数はわずか1/700で、性能はGPT-3.5を超えます! CMU+Tsinghua オープンソース Prompt2Model フレームワーク

パラメータ数はわずか1/700で、性能はGPT-3.5を超えます! CMU+Tsinghua オープンソース Prompt2Model フレームワーク

大規模言語モデル (LLM) に基づいて、開発者やユーザーは、タスクを記述し、いくつかの例を示して自然言語プロンプトを作成することで、指定された機能を簡単に実装できます。

しかし、ある程度、従来のタスク指向の NLP システムと比較すると、大規模言語モデルはコンピューティング リソース要件の点で大きな後退となります。

最近、カーネギーメロン大学と清華大学の研究者が、汎用的なモデル構築方法である Prompt2Model を提案しました。開発者は、特定のタスクに使用でき、簡単に展開できるモデルをトレーニングするために、自然言語プロンプトを構築するだけで済みます。

論文リンク: https://arxiv.org/abs/2308.12261

コードリンク: https://github.com/neulab/prompt2model

Prompt2Model フレームワークには、既存のデータセットの取得、トレーニング データの生成、モデルの検索とトレーニング、トレーニングの微調整、自動評価、デプロイメントなどの複数のステップが含まれます。

3 つのタスクの実験結果から、同じ少数のサンプルのプロンプトを入力として与えると、Prompt2Model は大規模な言語モデルよりも強力な小規模モデルをトレーニングでき、gpt-3.5-turbo のわずか 1/700 のパラメータで 20% のパフォーマンス向上を達成できることが証明されました。

Prompt2Model フレームワーク

Prompt2Model システムは、機械学習パイプラインのコンポーネント (データ収集、モデルトレーニング、評価、展開) を自動化するプラットフォームです。

システムの核となるのは自動データ収集システムであり、データセットの取得と LLM ベースのデータセット生成を使用して、ユーザーのニーズに関連する注釈付きデータを取得します。

次に、事前トレーニング済みのモデルを取得し、収集したトレーニング データに基づいて微調整します。

最後に、同じデータセットの分割テスト セットを使用して取得したモデルを評価し、モデルと対話するための Web UI を作成することもできます。

Prompt2Model は非常に汎用的でモジュール化されており、設計上拡張可能であり、開発者は各コンポーネントを再実装したり無効にしたりできます。

以下では、Prompt2Model の各コンポーネントの設計思想と、記事の著者が示したリファレンス実装を紹介します。

プロンプトパーサー

システムへの主な入力として、ユーザーは、指示や予想される応答のいくつかのデモンストレーション例など、LLM で使用されるものと同様のプロンプト ワードを提供する必要があります。

オープンエンドのインターフェースはユーザーにとって便利であり、エンドツーエンドの機械学習パイプラインもプロンプトパーサーの恩恵を受けます。たとえば、プロンプトを指示や個別のデモンストレーション例に分割したり、指示を英語に翻訳したりすることができます。

リファレンス実装: 研究者はプロンプトを指示とデモンストレーションに解析します。指示は主なタスクまたは目標を表し、デモンストレーションはモデルの予想される動作を表します。

ユーザープロンプトは、コンテキスト学習機能を備えた大規模言語モデル (OpenAI gpt-3.5-turbo-0613) を使用してセグメント化できます。ユーザー指示が英語以外であると認識された場合は、DeepL API を使用して英語に翻訳されます。2.

データセット取得者

ユーザーがプロンプトを出した後、システムはまず、ユーザーの説明に一致し、注釈が付けられたデータセットを検索して見つけようとします。これには主に次の 3 つの決定が含まれます。

1. どのデータセットを検索しますか?

2. 検索をサポートするためにデータセットをインデックスするにはどうすればよいですか?

3. ユーザータスクに必要なデータセットと省略する必要があるデータセットはどれですか?

参照実装: 研究者はまず、Huggingface のすべてのデータセットのユーザー説明を抽出し、次に DataFinder のデュアルコーディング リトリーバーを使用してデータセットを関連性でランク付けしました。

次に、システムはユーザーに上位 k (= 25) 位にランクされたデータセットを提示し、ユーザーは関連するデータセットを選択するか、ターゲット タスクに適したデータがないことを宣言できます。使用可能なデータがある場合、ユーザーはデータセットのスキーマから入力列と出力列も指定する必要があります。

データセットジェネレーター

すべてのユーザー タスクに完全に一致するデータセットがあるわけではありませんが、一部のデータはある程度タスクに関連しています。

より広範囲のタスクをサポートするために、データセット ジェネレーターを使用して、プロンプト パーサーによって取得されたユーザー要件に基づいて「合成トレーニング セット」を生成することができます。主な難しさは、コストを削減し、生成速度を上げ、サンプルの多様性と品質管理を生成する方法にあります。

リファレンス実装では、研究者によって設計された戦略には次のものが含まれます。

1. 数ショットのヒントの多様性

自動プロンプトエンジニアリングを使用して多様なデータセットを生成し、ユーザー提供のデモンストレーション例を以前に生成された例のランダムサンプルで補強して多様性を促進し、重複した例の生成を回避します。

この戦略により、200 個の質問と回答のサンプルを生成するときに、重複サンプルの数を 200 個から 25 個に減らすことができます。

2. 温度アニーリング

生成される例の数に応じて、サンプリング温度を低 (より決定論的な出力) から高 (よりランダムな出力) に調整すると、より多様なデータを促進しながら出力品質を維持するのに役立ちます。

3. 自己一貫性デコード

LLM は同じ入力に対して一意でない出力や不正確な出力を生成する可能性があるため、研究者は自己一貫性フィルタリングを使用して疑似ラベルを選択しました。具体的には、最も頻繁な回答を選択することで、一意の入力ごとに一貫した出力が作成されます。同点の場合は、最短の回答が経験的に選択され、サンプルの一意性を確保しながら、生成されたデータセットの精度を向上させることができます。

4. 非同期バッチ処理

API リクエストは zeno-build を使用して並列化され、動的なバッチ サイズやスロットルなどの追加のメカニズムが導入され、API の使用が最適化されます。

モデルレトリーバー

タスクを完了するには、トレーニング データに加えて、微調整に適したモデルを決定することも必要です。研究者は、これも検索の問題であると考えています。各モデルは、「ユーザー生成の説明」と「メタデータ」(人気、サポートされているタスクなど) で構成できます。

リファレンス実装: 統一されたモデル インターフェースで多数のタスクをサポートするために、研究者は、モデル蒸留にデータ効率の高い Huggingface のエンコーダー/デコーダー アーキテクチャにシステムを制限しました。

次に、ユーザーの指示をクエリとして使用し、Huggingface 上のモデルのテキスト説明に基づいて検索します。ただし、モデルの説明は通常非常に短く、パターン化されたテキストが多数含まれているため、通常は数語でしかモデルの内容を表現できません。

HyDE フレームワークに従って、まず gpt-3.5-turbo を使用して、ユーザーの指示に従って拡張クエリとして仮想モデル記述を作成し、次に BM25 アルゴリズムを使用してクエリ モデルの類似度スコアを計算します。

モデルを簡単にデプロイできるように、ユーザーはモデル サイズのしきい値 (デフォルトでは 3 GB) を設定し、このしきい値を超えるすべてのモデルを除外できます。

一般的に、ダウンロード数が多いモデルは品質も高い可能性があります。ダウンロード数をパラメータとして使用してモデルを並べ替えることもできます。

モデルトレーナー

データセットと事前トレーニング済みのモデルが与えられれば、モデルをトレーニングして微調整することができ、すべてのタスクはテキストからテキストへの生成タスクと見なすことができます。

リファレンス実装: データセットを処理する際、研究者は生成されたデータセットと取得されたデータセットの 2 つのデータセットを使用し、データ列をテキスト化してユーザーの指示と結合し、モデル入力に追加します。

微調整中は、2 つのデータセットが結合され、ランダムにシャッフルされてから、学生モデルがトレーニングされます。

すべてのタスクで同じハイパーパラメータが使用され、AdamW オプティマイザーを使用して学習率 5e-5 で 3 エポックのトレーニングが実行され、各タスクに約 1 時間かかりました。

モデル評価者

モデルのトレーニングに使用したデータを削除した後、残りのデータを使用してモデルのトレーニング効果を評価することができます。主な難しさは、膨大な対象タスクの中から適切な評価指標を選択する方法にあります。

参照実装: 研究者は、すべてのタスクの自動評価を実現するために、完全一致、ChrF++、BERScore という 3 つの共通メトリックを選択しました。

完全一致 (EM) は、モデル出力と参照回答の完全一致の度合いを測定します。ChrF++ は、精度と再現率のバランスをとってテキスト生成の品質を評価できます。BERTScore は、埋め込み空間でモデル出力と参照を比較することで、意味の類似性を取得できます。

XLM-R を BERTScore のエンコーダーとして使用すると、多言語タスクの評価をサポートできます。

デモ作成者

開発者が一般ユーザーにモデルを公開できるようにするために、このモジュールで対話用のグラフィカル インターフェイスを作成できます。

リファレンス実装: 研究者は Gradio を使用してモデル アクセス インターフェイスを構築しました。

実験セクション

実験のセットアップ

研究者らは概念実証として、次の 3 つのタスクでシステムがモデルを学習する能力をテストしました。

1. 機械読み取り質問応答: 評価用のベンチマーク データセットとして SQuAD を使用します。

2. 日本語のNLからコード生成: 日本語のクエリからコードを生成するのは難しい作業です。関連する研究は以前から行われていますが、利用可能な注釈付きデータやトレーニング済みモデルはありません。評価にはMCoNaLaが使用されます。

3. 時間的表現の正規化: 現在、事前トレーニング済みのモデルやトレーニング データセットは利用できません。時間的データセットは評価のベンチマークとして使用されます。

Prompt2Model は生成および取得されたデータに対して自動モデル評価機能を提供しますが、ここでは実際のベンチマーク データセットを使用して、パイプラインが正確なモデルをトレーニングする能力を測定します。

ベースライン モデルの選択では、この研究の主な目的は、大規模な言語モデルに匹敵するかそれよりも強力な小規模モデルをトレーニングすることであるため、研究者はベンチマーク データセットの比較ベースラインとして gpt-3.5-turbo を選択しました。

実験結果

ダウンストリーム タスクのパフォーマンスに関しては、Prompt2Model は 3 つのタスクのうち 2 つで gpt-3.5-turbo をはるかに上回るパフォーマンスを達成します。

取得された SQuAD および Temporal モデルは Flan-T5 であり、パラメーターが 250M のみで、gpt-3.5-turbo (175B パラメーター) の 700 分の 1 であることに注目する価値があります。

また、MCoNaLaの日本語からPythonへのタスクにおけるPrompt2Modelのパフォーマンスは、gpt-3.5-turboよりも大幅に劣っていることもわかります。

考えられる説明としては、生成された日本語のクエリデータセットの多様性が比較的低いことが挙げられます。5,000 サンプルのうち 45 は「数値のリスト内の最大値を見つける」の異なるバージョンですが、他のデータセットではこのような高い冗長性は見られず、gpt-3.5-turbo では英語以外の言語の多様なテキストを生成するのが難しい可能性があることを示しています。

もう 1 つの理由は、適切な学生モデルが不足していることです。モデルベース リトリーバーによって発見されたモデルは、複数の自然言語またはコードでトレーニングされており、すべてが多言語対応であるわけではありません。その結果、事前トレーニング済みモデルには、日本語入力と Python 出力の特性に関するパラメータ知識が不足しています。

<<: 

>>:  AIの計算能力は70年間で6億8000万倍に増加し、3つの歴史的段階でAI技術の指数関数的爆発が目撃されました。

ブログ    
ブログ    
ブログ    
ブログ    

推薦する

0からNまで、ハンワンテクノロジーが再び人工知能のトレンドに火をつける

本日、「0からNへ・原始開拓」をテーマにした2021年漢王科技秋季新製品発表会がオンラインで開催され...

ディープラーニングのためのヘテロジニアスアクセラレーション技術(I):AIにはどれくらい大きな「心」が必要か?

1. 概要: 一般的 = 非効率的汎用プロセッサであるCPU(中央処理装置)は、コンピュータに欠か...

...

人工知能とモノのインターネットの統合は、今後10年間で最大のイノベーションの機会となるかもしれない

先日終了した全国人民代表大会と中国人民政治協商会議では、「科学技術イノベーション」という言葉が頻繁に...

手書き認識のための単層基本ニューラルネットワーク

[[214992]]まず、コードテンソルフローをインポートする tensorflow.example...

アリババが国際AIサミットを主催、医療AIとマルチメディアコンテンツ理解が話題に

10月15日、記者はアリババが主催する2020 ACMマルチメディア(以下、ACM MM 2020)...

スタンフォード大学の研究:スマートフォンの録画で人が酔っているかどうかを98%の精度で識別できる

11月9日、スタンフォード大学の最近の研究で、スマートフォンは音声パターンから人が酔っているかどうか...

交通における人工知能: スマートソリューションによる交通革命

人工知能 (AI) は世界中の産業に変化をもたらしており、交通も例外ではありません。テクノロジーが進...

AIの4つのタイプについてお話しましょう

人工知能が流行するにつれ、人々はそれがどのように機能し、何ができるのかについて多くの疑問を抱いていま...

108 言語をサポートする Google 翻訳は、AI をどのように活用して翻訳の品質を向上させているのでしょうか?

この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...

人工知能システム:無制限の核融合反応を現実のものに

近年、研究者らはトカマクの停止や損傷の原因となる核分裂反応を研究している。核分裂反応を予測・制御でき...

Matplotlib の使用が難しいと感じるのはなぜですか?このマインドマップをまだ見ていないので

序文Matplotlib は、データの視覚化を簡単に作成できる人気の Python ライブラリです。...

クラウドコンピューティングは、サービスアウトソーシングアルゴリズムに、減算から加算への革命をもたらしました。

クラウド コンピューティングの自然な仲間は、ソフトウェア対応のサービス アウトソーシングと電子商取引...

...

千年紀の文化遺産の碑文を解読するAIの能力は人間より30%高い

科学技術の継続的な進歩により、人工知能(AI)はあらゆる面で常に人間を超えつつあるようだ。例えば、1...