メインコンテンツへスキップ
見出し画像

SteerLM : LLMを自在に操作する新しいアライメント手法について調べてみた

    NVIDIAの研究チームが開発したSteerLMは、ユーザーが指定した属性に基づき、言語モデルの出力を制御する新しい技術です。

    この技術は、過去の強化学習に基づく人間のフィードバック(RLHF)手法よりも簡単に実装でき、より高い柔軟性を持っています。

    具体的には、属性予測モデルを用いてデータセットに属性ラベルを付与し、その後、属性条件付きの教師あり学習を行います。

    SteerLMモデルは、Vicunaベンチマークで既存の手法を上回る結果を示しており、ゲームや教育、企業活動など、多岐にわたるアプリケーションでの利用が期待されています。

    1. 具体的な改善

      • SteerLM 43Bは、Vicunaベンチマークで最先端の性能を達成、既存のRLHFモデルを上回りました。

      • 具体的には、SteerLM 43BはVicuna自動評価で平均スコア655.75を達成し、これはGuanaco 65Bの646.25とLLaMA 30B RLHFの612.75と比較して優れていました​​。

    画像
    Vicuna score


    推論時アライメントのコード


    以下のように推論時に出力を調整します。

    values = OrderedDict([
        ('quality', 4),
        ('toxicity', 0),
        ('humor', 0),
        ('creativity', 0),
        ('violence', 0),
        ('helpfulness', 4),
        ('not_appropriate', 0),
        ('hate_speech', 0),
        ('sexual_content', 0),
        ('fails_task', 0),
        ('political_content', 0),
        ('moral_judgement', 0),
    ])
    values = encode_labels(values)
    question = """Where and when did techno music originate?"""
    print (get_answer(question, 4096, values))


    SteerLMのモデルの手順のまとめる

    1. 属性を予測するモデルの作成:

    • Open Assistantなどのデータセットを用意。

    • テキストから品質やユーモアなどの属性を判断するラベルを設定。

    • Transformerなどを使って、テキストからこれらの属性を予測するモデルを訓練。

    2. データセットに属性ラベルを追加:

    • 1で訓練したモデルを使って、別のデータセットに属性ラベルを付ける。

    • これにより、属性情報が追加されたデータセットを作成。

    3. 応答を生成するモデルの作成:

    • 2で作ったデータセットを使用。

    • テキストと属性情報を元に、適切な応答を生成するモデルを訓練。

    4. 品質向上のための再学習:

    • 生成モデルを使って、高品質の応答サンプルを多数生成。

    • これらのサンプルの品質を1のモデルで評価し、データセットを拡充。

    • 新しいデータを使って、生成モデルを再訓練。

    結果として、このアプローチは、属性情報を基にしてユーザーの求める応答を柔軟に生成することができるモデルを実現しています。さらに、既存のTransformer技術や大量のデータセットを利用することで、効果的にモデルを訓練できるのが特長です。




    結果:

    • Vicunaベンチマークでの自動評価と人間評価の両方で、ChatGPTなどの既存手法を上回る性能を達成した。

    すぐれた点:

    • RLHFに比べて実装が簡単でトレーニング効率が良い。

    • 推論時に属性を調整できるため汎用性が高い。

    • データ収集コストがRLHFに比べて低い。

    欠点:

    • 教師あり学習を用いるため、パラメータ効率的なチューニング手法に比べ計算コストが高い。

    • 英語中心の評価であり、多言語への適用は不明。

    要するに、簡便な実装で高性能を実現し、推論時の属性調整が可能な点が大きなメリットだが、計算コストの問題はあると言えそうです。多言語やパラメータ効率面での改善が期待されます。


    STEERLMは強化学習とは異なる手法です

    強化学習は、試行錯誤を通じて報酬を最大化する方策を学習する手法です。

    一方、STEERLMは以下のような教師あり学習の手法です。

    1. 属性予測モデルは、提示文と応答から属性を予測する教師あり学習。

    2. 応答生成モデルは、提示文と指定した属性値を条件に応答を生成する教師あり学習。

    3. 生成した応答で学習データを拡張し、再学習する。

    つまり、環境との対話を通じて試行錯誤的に学習するのではなく、人間による属性ラベルや好ましい応答の例を教師データとして学習しています。

    したがって、強化学習の複雑な学習設定を必要とせず、教師あり学習による単純な実装で高性能を実現できるのが大きなメリットです。

    技術的には、教師あり学習に基づいた新しいアプローチと言えます。属性に基づく条件付き生成が柔軟な応答を可能にしている点がポイントだと考えられます。


    この技術の利点と新規性まとめ

    • 既存の強化学習に基づく手法(RLHF)に比べ、実装が簡便で効率的。

    • 推論時に属性を調整できる点では、RLHFよりも高い汎用性と柔軟性。

    • 属性予測モデルを用いたデータ拡張により、少量の高品質データで効率的に学習可能。

    • 属性に基づく応答の条件付き生成は、会話AIの多様な応用に有用。

    関連研究としては、属性を用いた会話生成はあるものの、汎用的な応答生成タスクでの利用は新しい。

    また、属性予測と条件付き生成を組み合わせた手法も新規性がある。

    今後は他タスクや多言語への適用などが期待されます。出力属性の制御可能な汎用LLMの実現につながる研究だと言えそうです。


    あなたへのおすすめ