人間の好みを最適化するアルゴリズムはどれが優れていますか?マスターに従って DPO、IPO、KTO を理解する
Obwohl Methoden, die menschliche Etiketten zur relativen Qualität von modellgenerierten Inhalten sammeln und unbeaufsichtigte große Sprachmodelle verfeinern, um diese Präferenzen durch verstärkendes Lernen aus menschlichem Feedback (RLHF) zu erfüllen, der Entwicklung von Konversations-KI einen enormen Schub verliehen haben . Da RLHF jedoch ein komplexer und oft instabiler Prozess ist, ist die Forschung zur direkten Nutzung von Optimierungsfunktionen zur Abstimmung menschlicher Präferenzen mit Modellergebnissen heutzutage ein heißes Thema.
Dieser Artikel ist ein Blog über das Umarmen von Gesichtern, der die Leistung von drei heutzutage gängigen Algorithmen zur Optimierung menschlicher Präferenzen vergleicht. Die Autoren führten umfangreiche Experimente durch, um drei praktikable Methoden zur Optimierung von Sprachmodellen ohne Verstärkungslernen (oder Präferenzoptimierung) unter Verwendung verschiedener Modelle und verschiedener Hyperparameter zu evaluieren. Die drei Optimierungsmethoden sind:
- Direct Preference Optimization (DPO) (https://huggingface.co/papers/2305.18290)
- Identity Preference Optimization (IPO) (https://huggingface.co/papers/ 2310.12036)
- Kahneman-Taversky Optimization (KTO) (https://github.com/ContextualAI/HALOs)
Die fünf Autoren dieses Artikels .
Zu lang zum LesenIn diesem Blog bewertet der Autor drei hervorragende LLM-Ausrichtungsalgorithmen, nämlich: Direct Preference Optimization (DPO), Identity Preference Optimization (IPO) und Taversky Optimization Optimization (KTO), und es wurden Experimente an zwei hochwertigen LLMs von durchgeführt 7b Parametergröße. Diese LLMs wurden überwacht, fein abgestimmt, aber nicht an menschliche Vorlieben angepasst. Die Autoren stellten fest, dass es zwar möglich war, den Algorithmus mit der besten Leistung zu finden, einige wichtige Hyperparameter jedoch angepasst werden mussten, um die besten Ergebnisse zu erzielen.
Ausrichtung ohne Verstärkungslernen
Schematische Darstellung des DPO-Prinzips (https://arxiv.org/abs/2305.18290)
Direkte Präferenzoptimierung (DPO) ist zu einer wichtigen Sprache geworden Modell (LLM) ist ein vielversprechender Ansatz, der menschliche oder künstliche Intelligenzpräferenzen kombiniert. Im Gegensatz zu herkömmlichen Ausrichtungsmethoden, die auf Verstärkungslernen basieren, definiert DPO die Ausrichtungsformel in eine einfache Verlustfunktion um, die direkt auf den Präferenzdatensatz {(x, y_w, y_l)} optimiert werden kann, wobei x eine Eingabeaufforderung und y_w , y_l sind die bevorzugten bzw. nicht bevorzugten Antworten.
Beispiel für einen Datensatz zur Anpassung menschlicher Präferenzen
DPOs einfache und benutzerfreundliche Funktionen machen es beliebt und wurden erfolgreich beim Training von Modellen wie dem von Intel vorgeschlagenen Zephyr-Modell und NeuralChat eingesetzt . Der Erfolg von DPO hat Forscher dazu inspiriert, neue Verlustfunktionen zu untersuchen, die sich in die folgenden zwei Hauptrichtungen zusammenfassen lassen:
Robustheit: Ein Nachteil von DPO besteht darin, dass es sich schnell an menschlichen Präferenzdatensätzen verschlechtert und zu einer Überanpassung führt. Um dies zu vermeiden, führten Forscher von Google DeepMind die Identity Preference Optimization (IPO) ein, die dem DPO-Verlust einen Regularisierer hinzufügt und eine Konvergenz des Modells ohne den Einsatz von Techniken wie „Early Stopp“ ermöglicht.
-
Zuordnung zu paarweisen Präferenzdaten: Wie die meisten Alignment-Methoden benötigt DPO einen paarweisen Präferenzdatensatz
, um besser kennzeichnen zu können, welches Modell auf eine Reihe von Kriterien (z. B. Nützlichkeit oder Schädlichkeit) reagiert. In der Praxis ist die Erstellung dieser Daten ein zeitaufwändiges und kostspieliges Unterfangen. ContextualAI hat kürzlich eine interessante Alternative namens Kahneman-Taversky Optimization (KTO) vorgeschlagen, die vollständig auf Beispielen basiert, die als „gut“ oder „schlecht“ gekennzeichnet sind (wie die in der Chat-Benutzeroberfläche angezeigten Symbole? oder ?), um den Verlust zu definieren Funktion. Diese Tags sind einfacher zu erhalten und man kann sagen, dass KTO eine vielversprechende Methode ist, um Chat-Modelle, die in Produktionsumgebungen laufen, kontinuierlich zu aktualisieren.
与此同时,需要注意这些方法都有相应的超参数,其中最重要的是 β ,这是一个控制对使用模型的偏好程度的权重。随着这些方法已经可以通过第三方库(如 huggingface TRL)来使用,接下来自然而然的问题是「在这些方法和超参数中,哪个组合能产生最好的聊天模型?」
本文旨在通过对这三种方法进行实验分析来回答这个问题,并且还要对关键超参数逐个分析,例如 β 和训练步数,最后通过 MT-Bench 评估所得模型的性能。MT-Bench 是衡量聊天模型功能的常见基准。
源代码地址:https://github.com/huggingface/alignment-handbook
使用链接
以下是相关资料的获取地址:
执行超参数扫描的代码和配置文件:https://github.com/huggingface/alignment-handbook/tree/main/recipes/pref_align_scan
本文使用的数据集和模型的集合:https://huggingface.co/collections/alignment-handbook/dpo-vs-kto-vs-ipo-65a69c5f03548d61dbe29ef8
实验设置
在进行对齐实验时,需要考虑两个主要因素:需要优化的模型和数据集。为了获得更多数据,作者考虑了两个模型,OpenHermes-2.5-Mistral-7B 和 Zephyr-7B-β-sft,以及两个对齐数据集:Intel 的 orca_dpo_paries 数据集和 ultrafeedback-binarized(https://huggingface.co/datasets/HuggingFaceH4/ultrafeedback_binarized)数据集。
orca_dpo_paries 数据集地址:https://huggingface.co/datasets/Intel/orca_dpo_pairs
ultrafeedback-binarized 数据集地址:https://huggingface.co/datasets/HuggingFaceH4/ultrafeedback_binarized
在第一个实验中,作者使用了 OpenHermes-2.5-Mistral-7B,因为它是不使用任何对齐方法的条件下,最好的 7B 级聊天模型之一。然后,本文使用了 Intel 的 orca_dpo_paries 数据集,该数据集包含 13k 个 prompt,其中被选择的响应结果由 GPT-4 生成,不需要的响应由 Llama Chat 13b 生成。这也是 NeuralChat 和 NeuralHermes-2.5-Mistral-7B 使用的数据集。
由于 KTO 本身不需要成对的偏好数据,作者直接将 GPT-4 生成的响应归类为「好」标签,将 Llama Chat 13b 的响应视为「坏」标签。虽然 GPT-4 的响应可能比 Llama Chat 13b 普遍更受欢迎,但在某些情况下,Llama-Chat-13b 可能会产生更好的响应,但作者认为这只是小概率事件,可以忽略不计。
第二个实验基于 ultrafeedback-binarized 数据集,在 Zephyr-7b-β-sft 模型上进行了偏好比对。ultrafeedback-binarized 数据集包含 66k 个 prompt 以及成对的偏好与拒绝的响应。该数据集之前被用于训练原始 Zephyr 模型,该模型当时在许多自动化基准测试和人工评估方面是 7B 类模型中最好的。
实验配置
对齐手册提供了一种配置单个实验的简单方法,这些参数可以在 run_dpo.py 中配置。
作者在 Zephyr 上的实验配置也基本类似。
聊天模板由基本聊天模型中自动推断,OpenHermes-2.5 使用 ChatML,Zephyr 使用 H4。如果用户想使用自己的聊天格式,分词库现在已经启用了使用 jinja 格式字符串的用户定义聊天模板:
# Example of the Zephyr chat template"{% for message in messages %}\n {% if message ['role'] == 'user' %}\n {{ '<|user|>\n' + message ['content'] + eos_token }}\n {% elif message ['role'] == 'system' %}\n {{ '<|system|>\n' + message ['content'] + eos_token }}\n {% elif message ['role'] == 'assistant' %}\n {{ '<|assistant|>\n' + message ['content'] + eos_token }}\n {% endif %}\n {% if loop.last and add_generation_prompt %}\n {{ '<|assistant|>' }}\n {% endif %}\n {% endfor %}"
如下可以将对话格式化:
# <|system|># You are a friendly chatbot who always responds in the style of a pirate.</s># <|user|># How many helicopters can a human eat in one sitting?</s># <|assistant|># Ah, me hearty matey! But yer question be a puzzler! A human cannot eat a helicopter in one sitting, as helicopters are not edible. They be made of metal, plastic, and other materials, not food!
遍历超参数
实验中,作者逐次调整 β 值,分别在 0.01、0.1、0.2、…、0.9 时,对 DPO、IPO 和 KTO 三种方法进行实验。之所以包括 0.01,是因为作者观察到一些对齐算法对这个参数特别敏感。所有实验都只训练了一个 epoch。期间其他超参数保持不变,包括随机种子。
然后,作者使用上面定义的基本配置在 hugging face 的模型上逐个进行实验。
# Define an array containing the base configs we wish to fine tuneconfigs=("zephyr" "openhermes")# Define an array of loss typesloss_types=("sigmoid" "kto_pair" "ipo")# Define an array of beta valuesbetas=("0.01" "0.1" "0.2" "0.3" "0.4" "0.5" "0.6" "0.7" "0.8" "0.9")# Outer loop for loss typesfor config in "${configs [@]}"; dofor loss_type in "${loss_types [@]}"; do# Inner loop for beta valuesfor beta in "${betas [@]}"; do# Determine the job name and model revision based on loss typejob_name="$config_${loss_type}_beta_${beta}"model_revision="${loss_type}-${beta}"# Submit the jobsbatch --job-name=${job_name} recipes/launch.slurm dpo pref_align_scan config_$config deepspeed_zero3 \\"--beta=${beta} --loss_type=${loss_type} --output_dir=data/$config-7b-align-scan-${loss_type}-beta-${beta} --hub_model_revision=${model_revision}"donedonedone
实验结果
著者らは、マルチターン対話ベンチマークである MT Bench を使用してすべてのモデルを評価しました。このベンチマークでは GPT-4 を使用して、ライティング、ロールプレイング、推論、数学、コーディング、抽出、STEM、人文科学の 8 つの異なるカテゴリでモデルのパフォーマンスを評価します。 MT Bench にはいくつかの不完全な点もありますが、それでも会話型 LLM を評価する優れた方法です。
Zephyr-7b-β-SFT
さまざまなβ値でのMT BenchでのZephyrモデルのスコア。
Zephyr モデルの場合、著者は、β 値が 0.01 のときに最高のモデル パフォーマンスが達成されることを観察しました。この結論は、テストした 3 つのアルゴリズムすべてで一貫しており、興味深い追跡実験として、0.0 ~ 0.2 の範囲でよりきめの細かいスキャンを実行することが考えられます。 DPO が最高の MT ベンチ スコアを達成しましたが、1 つのハイパーパラメーターの場合を除くすべての設定で KTO (ペアワイズ) がより良い結果を達成していることがわかりました。 IPO は、より強力な理論的保証があるにもかかわらず、1 つのケースを除いてすべてのケースで基本モデルよりも悪いようです。
MTベンチ 各カテゴリのZephyrモデルの各アルゴリズムの最良の結果。 これらのモデルの長所と短所は、MT ベンチによって評価されたさまざまなカテゴリの各アルゴリズムの最良の結果を分析することで判断できます。ご覧のとおり、推論、コーディング、数学の問題にはまだ改善の余地がたくさんあります。
OpenHermes-7b-2.5このモデルの各アルゴリズムの観察結果はOpenHermes、つまりDPO>KTO>IPOと一致していますが、βの最適値点は異なります。 DPO、KTO、および IPO の最適な β の選択は、それぞれ 0.6、0.3、および 0.01 です。
OpenHermes モデルのさまざまな β に対する MT Bench スコア。 OpenHermes-7b-2.5 は明らかに強力なベース モデルであり、人間の好みによる調整後の MT ベンチ スコアの改善はわずか 0.3 です。
MTベンチ 各カテゴリのOpenHermesモデルの3つのアルゴリズムの最良の結果。
概要このブログ投稿で、著者は、プリファレンス調整を実行する際に適切なハイパー
パラメータを選択することの重要性を強調しました。 DPO はペアワイズ優先設定で KTO よりも優れたパフォーマンスを発揮することが実験的に証明されていますが、IPO のパフォーマンスはより強力な理論的保証にもかかわらず劣るようです。 これらの実験結果は再現可能であり、コードと設定ファイルは調整マニュアルに記載されています。最もパフォーマンスの高いモデルとデータセットを確認することもできます。
将来の展望著者は引き続き新しい人間の嗜好調整アルゴリズムを探索し、そのパフォーマンスを評価していきます。少なくとも現時点では、DPO は最も堅牢でパフォーマンスの高い大規模言語モデル アライメント アルゴリズムです。 DPO と IPO の両方がペアごとの選好データを必要とし、KTO はポジティブラベルとネガティブラベルを含む任意のデータセットに適用できるため、KTO も有望です。
元のリンク: https://huggingface.co/blog/pref-tuning? continueFlag=480af4490eaf8a2f4544fe3658589730以上が人間の好みを最適化するアルゴリズムはどれが優れていますか?マスターに従って DPO、IPO、KTO を理解するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











これも Tusheng のビデオですが、PaintsUndo は別の道を歩んでいます。 ControlNet 作者 LvminZhang が再び生き始めました!今回は絵画の分野を目指します。新しいプロジェクト PaintsUndo は、開始されて間もなく 1.4kstar を獲得しました (まだ異常なほど上昇しています)。プロジェクトアドレス: https://github.com/lllyasviel/Paints-UNDO このプロジェクトを通じて、ユーザーが静止画像を入力すると、PaintsUndo が線画から完成品までのペイントプロセス全体のビデオを自動的に生成するのに役立ちます。 。描画プロセス中の線の変化は驚くべきもので、最終的なビデオ結果は元の画像と非常によく似ています。完成した描画を見てみましょう。

AIxivコラムは、当サイトが学術的・技術的な内容を掲載するコラムです。過去数年間で、このサイトの AIxiv コラムには 2,000 件を超えるレポートが寄せられ、世界中の主要な大学や企業のトップ研究室がカバーされ、学術交流と普及を効果的に促進しています。共有したい優れた作品がある場合は、お気軽に寄稿するか、報告のために当社までご連絡ください。提出電子メール: liyazhou@jiqizhixin.com; zhaoyunfeng@jiqizhixin.com この論文の著者は全員、イリノイ大学アーバナ シャンペーン校 (UIUC) の Zhang Lingming 教師のチームのメンバーです。博士課程4年、研究者

AIxivコラムは、当サイトが学術的・技術的な内容を掲載するコラムです。過去数年間で、このサイトの AIxiv コラムには 2,000 件を超えるレポートが寄せられ、世界中の主要な大学や企業のトップ研究室がカバーされ、学術交流と普及を効果的に促進しています。共有したい優れた作品がある場合は、お気軽に寄稿するか、報告のために当社までご連絡ください。提出メール: liyazhou@jiqizhixin.com; zhaoyunfeng@jiqizhixin.com 人工知能の開発プロセスにおいて、大規模言語モデル (LLM) の制御とガイダンスは常に中心的な課題の 1 つであり、これらのモデルが両方とも確実に機能することを目指しています。強力かつ安全に人類社会に貢献します。初期の取り組みは人間のフィードバックによる強化学習手法に焦点を当てていました (RL

乾杯!紙面でのディスカッションが言葉だけになると、どんな感じになるでしょうか?最近、スタンフォード大学の学生が、arXiv 論文のオープン ディスカッション フォーラムである alphaXiv を作成しました。このフォーラムでは、arXiv 論文に直接質問やコメントを投稿できます。 Web サイトのリンク: https://alphaxiv.org/ 実際、URL の arXiv を alphaXiv に変更するだけで、alphaXiv フォーラムの対応する論文を直接開くことができます。この Web サイトにアクセスする必要はありません。その中の段落を正確に見つけることができます。論文、文: 右側のディスカッション エリアでは、ユーザーは論文のアイデアや詳細について著者に尋ねる質問を投稿できます。たとえば、次のような論文の内容についてコメントすることもできます。

AIモデルによって与えられた答えがまったく理解できない場合、あなたはそれをあえて使用しますか?機械学習システムがより重要な分野で使用されるにつれて、なぜその出力を信頼できるのか、またどのような場合に信頼してはいけないのかを実証することがますます重要になっています。複雑なシステムの出力に対する信頼を得る方法の 1 つは、人間または他の信頼できるシステムが読み取れる、つまり、考えられるエラーが発生する可能性がある点まで完全に理解できる、その出力の解釈を生成することをシステムに要求することです。見つかった。たとえば、司法制度に対する信頼を築くために、裁判所に対し、決定を説明し裏付ける明確で読みやすい書面による意見を提供することを求めています。大規模な言語モデルの場合も、同様のアプローチを採用できます。ただし、このアプローチを採用する場合は、言語モデルが

最近、2000年代の7大問題の一つとして知られるリーマン予想が新たなブレークスルーを達成した。リーマン予想は、数学における非常に重要な未解決の問題であり、素数の分布の正確な性質に関連しています (素数とは、1 とそれ自身でのみ割り切れる数であり、整数論において基本的な役割を果たします)。今日の数学文献には、リーマン予想 (またはその一般化された形式) の確立に基づいた 1,000 を超える数学的命題があります。言い換えれば、リーマン予想とその一般化された形式が証明されれば、これらの 1,000 を超える命題が定理として確立され、数学の分野に重大な影響を与えることになります。これらの命題の一部も有効性を失います。 MIT数学教授ラリー・ガスとオックスフォード大学から新たな進歩がもたらされる

言語モデルは本当に時系列予測に使用できるのでしょうか?ベタリッジの見出しの法則 (疑問符で終わるニュース見出しは「いいえ」と答えることができます) によれば、答えは「いいえ」であるはずです。このような強力な LLM は時系列データを適切に処理できないという事実は真実のようです。時系列、つまり時系列とは、その名の通り、時間順に並べられた一連のデータ点のことを指します。時系列分析は、病気の蔓延予測、小売分析、ヘルスケア、金融などの多くの分野で重要です。時系列分析の分野では、多くの研究者が最近、大規模言語モデル (LLM) を使用して時系列の異常を分類、予測、検出する方法を研究しています。これらの論文では、テキスト内の逐次依存関係の処理に優れた言語モデルは時系列にも一般化できると想定しています。

AIxivコラムは、当サイトが学術的・技術的な内容を掲載するコラムです。過去数年間で、このサイトの AIxiv コラムには 2,000 件を超えるレポートが寄せられ、世界中の主要な大学や企業のトップ研究室がカバーされ、学術交流と普及を効果的に促進しています。共有したい優れた作品がある場合は、お気軽に寄稿するか、報告のために当社までご連絡ください。提出電子メール: liyazhou@jiqizhixin.com; zhaoyunfeng@jiqizhixin.com。はじめに 近年、さまざまな分野でマルチモーダル大規模言語モデル (MLLM) の適用が目覚ましい成功を収めています。ただし、多くの下流タスクの基本モデルとして、現在の MLLM はよく知られた Transformer ネットワークで構成されています。
