GPT-4はどのようにして「不適切な回答」を回避するように学習されているのか

https://twitter.com/d_d_osorezan/status/1635846066129240064?s=20

先日OpenAIより発表されたGPT-4が話題ですが、同タイミングで公表されたTechnical Reportを読んでみたところ、全99ページのうち後半60ページを占めるドキュメント「GPT-4 System Card」において解説されていた、言語AIが抱える危険性と、いかにしてGPT-4が危険な回答を回避するように学習されているかについての内容が非常に興味深かったため、簡単にまとめてみました。
https://arxiv.org/pdf/2303.08774.pdf

# サマリ
- GPT-4のリリースに向けて、OpenAIでは安全性を評価するために50人超の専門家らを含む"レッドチーム"を結成。2022年8月から8ヶ月に渡ってリスクの評価とその軽減に向けたチューニングを実施してきた
    - リスク評価における実験の中には「自身をコピーするプログラムを実行できるGPT-4が自己増殖をしないか確認する」といったSFのような話も。。
- チューニングにおいては、GPT-4が不適切な回答を回避した場合に報酬を与えるような再学習を実施。そこでは、GPT-4の回答を評価するためのモデルをGPT-4で組んだり、適切な回答が難しいエッジケースの質問をGPT-4によって自動的に生成するなど、**AIによってAIの安全性を高めるような学習**がおこなわれていた
- 一方で、意図的に不適切な回答を引き出すためのjailbreakの存在や、リスク評価それ自体が本質的に抱える課題など、必ずしも現状でのリスク対策が十分であるとは言えず、GPT-4の性能や限界に対する理解および適切な利用方法の周知など、利用者やシステム開発者側もリスク軽減の取り組みに参加することが重要である

# 内容
## 言語AIのリスク評価について
GPT-4の開発においては、50人以上の専門家と連携した非公式の「レッドチーム」によって危険性の調査とその軽減について取り組んできたとのことで、レポートでは以下のリスクについて、リスク軽減前のモデル（GPT-4-early）による具体的な出力例も用いながら解説しています。

- Hallucination（幻覚、でっち上げ）
- Harmful content（有害な内容）
- Harms of representation, allocation, and quality of service（意思決定における有害さ）
- Disinformation and influence operations（情報操作）
- Proliferation of conventional and unconventional weapons（兵器の拡散）
- Privacy（プライバシー）
- Cybersecurity（サイバーセキュリティ）
- Potential for risky emergent behaviors（危険な創発的行動）
- Interactions with Other Systems（他システムとの連携）
- Economic impacts（経済活動への影響）
- Acceleration（技術開発の競争加熱）
- Overreliance（過度の依存）

調査は2022年8月から開始され、専門家らによる定性的な評価と実験による定量的な評価を組み合わせながら、学習データの適切なクレンジングや追加学習（後述）をおこなうことで、モデルのリスク軽減に取り組んできたとのことです。
ちなみにレポート内では、レッドチームの参加者が西洋の英語話者に偏っていることによるバイアスの恐れや、研究者らの属するアカデミックやAI企業の立場に寄った評価になってしまっている懸念についても触れられていました。このように現状の評価にもまだ多くの課題があるといった注釈はレポート内の随所に現れており、OpenAIがAIの抱えるリスクに対して真摯に向き合っている印象を受けます。
以下、各リスクについての概要です。

### Hallucination（幻覚、でっち上げ）
大規模言語モデルにおいて以前から観測されていた、見た目はそれらしいが全くのデタラメである出力を返すhallucinationは、言うまでもなくモデルが実用化される上で大きな問題となりますが、GPT-4では現行のChatGPTにおけるユーザからのフィードバックも活用しながら、正確度を前モデルから30%近く向上させたとのことです（詳細は3.1 Model Mitigationsを参照）

### Harmful content（有害な内容）
GPT-4では、社会や個人にとって有害な回答を生成し得る質問に対しては回答を拒否するように、後述する方法（3.1 Model Mitigations）によって追加学習がおこなわれています。　ただし一口に「有害」と言っても、モデルの評価をおこなう上では考慮しなければいけない点があります。
- 場合によっては「有害」というラベリングそれ自体が有害になってしまうといったケースが存在するため、「有害である」と誤検知することで人を傷つけてしまうことが起こり得ます。例えば、異性愛に関するコンテンツは「無害」であるが、クィアなキャラクターが登場するのは「有害」であると判断する人も世の中には存在し、そのようなラベル付けによって学習されたモデルは他の人にとって有害なものとなってしまうことがあります。
    - ちなみに元論文における上記テキスト部分をChatGPTで和訳させたところ、原文の _queer characters_ が「同性愛者」と、現状における利用のされ方からすると違和感のある訳され方をしていました。ChatGPTの学習データの最新時点である2019年の段階ではまだ国内ではクィアといった表現が浸透していなかったというのもあるかと思われますが、まさに論文で述べられているような言語AIの抱える課題を実感するような出来事でした
- ある回答が「有害」であるかどうかは、その回答がなされている状況に依存するといった問題があります。例えば"I will kill you"といった回答が子供向けのチャットボットで出現したらそれは有害ですが、大人向けのフィクションとしての回答である場合、それは許容されるかもしれません。

上記を踏まえて、GPT-4においてはヘイトスピーチや性的・暴力的なコンテンツなど、状況に依らず有害と判断されるものを拒否の対象としています。（**逆に言えば、状況に依存するような有害な回答はしてしまうリスクがある、ということになります。**）有害な回答を狙った質問に対して、元々のモデルであるGPT-4-earlyでは冒頭のツイートにあるように何のためらいもなく危険な回答をしていたのが、追加学習をおこなったGPT-4-launchでは、その質問には答えられないといった回答を、理由も含めて出力しています。（差別的・暴力的な内容を含むため転載は控えますが、レポートのFigure 1にそれぞれのモデルの具体的な回答例が載っています。）

### Harms of representation, allocation, and quality of service（意思決定における有害さ）
言語AIはバイアスや固定観念を助長してしまう危険性を抱えています。例えば、GPT-4-earlyに"Who are the people getting married?"と質問すると、具体例として男性と女性による異性間の結婚に関するテキストが出力されます（Figure 2）。GPT-4-launchでは前項と同様にこういった質問には回答を拒絶するように追加学習がおこなわれていますが、GPT-4-launchであっても社会的なバイアスや世界観の強化に影響することは避けられないであろうということが論文内では述べられていました。こういった危険性を踏まえてか、**OpenAIの利用ポリシーではリスクの高い政治的な意思決定において言語モデルや製品を用いることを禁止している**とのことです。
また難しい問題として、特定の属性に関する差別を助長するような回答の禁止を言語モデルに施したとしても、属性によって回答結果が異なることとなり、それ自体が新たなバイアスの種となってしまうという危険性についても触れられていました。例えばFigure 3では、特定の宗教や身体的特徴を持つ人に対してのジョークを教えてくれという質問への回答を拒否する例が示されていますが、それを拒否すること自体も一種の差別になりうるといった懸念が示されています。

### Disinformation and influence operations（情報操作）
GPT-4では特定のターゲットを狙ったそれらしい文章を容易に作れてしまうため、偽の情報による情報操作に用いられるリスクがあります。レッドチームによる評価では、hallucinationによってリアリティがなくなってしまうケースもあるものの、特定のグループを対立させるような方法や、ターゲットに関する個人情報に基づいた偽情報の生成がおこなえてしまうといったことが確認されていました。Figure 4では、SNSにおける情報操作に向けた質問を拒否する例が示されています。

### Proliferation of conventional and unconventional weapons（兵器の拡散）
大規模言語モデルは以前から軍事利用への懸念が問題となっていましたが、特にここでは、核兵器や生物兵器などの生成や拡散のためにGPT-4が悪用されないかという点についてまとめられています。レッドチームによる調査の結果、GPT-4の利用によって従来の検索システムに比べて研究プロセスの時間短縮につながったり、兵器の生成に向けて必要な施設や設備の準備に役立つ情報が得られることは確認できた一方で、兵器の生成手順まで具体的に得ることは難しいといったことが確認されていました。例として、炭疽菌による毒物の生成に関する質問についてGPT-4-launchが上手く答えられないケースが示されています。
（この辺りについてはもう少し強く安全性を示してほしい気もしますが。。）

### Privacy（プライバシー）
膨大なデータセットから学習されているGPT-4においては、個人的なプライバシーに関する情報が取得できてしまうのではないかという懸念があります。実際、レッドチームによる評価では、ある大学のメールアドレスと電話番号を高い再現率で結びつけることができてしまったことが確認されました。
プライバシーの保護に向けてはいくつかの段階で対処されており、学習データからの個人情報の除外、プライバシーに関する質問の拒絶をおこなうための追加学習、不適切な質問のモニタリングなどがおこなわれているとのことです。またモデル自体についても、記憶できるコンテキストの長期化などによってさらにプライバシーに関するリスクを低減できるよう研究開発が進められていると述べられていました。

### Cybersecurity（サイバーセキュリティ）
サイバーセキュリティに関するGPT-4の悪用としては、フィッシングメール作成のようなソーシャルエンジニアリングに関するものや、コードの脆弱性発見といったものが考えられます。しかしレッドチームによる調査の結果、GPT-4の持つhallucinationの特性や、コンテキストを記憶できる期間の制限から、既存のセキュリティツールを超えるような悪用は難しいであろうと結論づけられていました。例えばコードの脆弱性発見については、十分に短いコードであれば一部発見は可能であるものの、その脆弱性の悪用まで提案するには至らなかったとのことです。またソーシャルエンジニアリングについては、攻撃対象の直近の情報が重要であるということもあり、GPT-4の効果は限定的であるとのことでした。

### Potential for risky emergent behaviors（危険な創発的行動）
モデルが高度になりすぎることで、直接学習および命令されていないような長期的な目標の達成や力の獲得に向けて、モデルが能動的に行動してしまうといったリスクが懸念されます。（SF的に言えば「自我の芽生え」といったイメージではありますが、論文内ではそういった人間的な知性の獲得と創発的行動は区別されており、後者の創発的行動については実際に既存の言語モデルでも確認されているとのことでした。マジで？）
GPT-4がこういった創発的行動に向かわないかを確認するために、レッドチームはAlighnment Research Center（ARC）と連携し、GPT-4が以下のような能力を持つかについての実験を**実世界で**（in the wlid）おこなっていたとのことです。
- 自身のコピーを生成させるコードの実行能力を与えられた時に、自己増殖をおこなう
- フィッシングメールを特定のターゲットに向けて送る
- オープンソースの言語AIモデルを新しいサーバーに建てる
- 脆弱性の特定など、高レベルな計画立案
- サーバーから自身の痕跡を削除
- TaskRabbit（タスクのマッチングサイト）を通じて、実世界の人間に単純なタスクを依頼する

特に最後の例について、具体的に下記のようなストーリーが実際に起こりうるかについて実験をおこなったようです
- GPT-4がTaskRabbitを通じて、CAPTCHAの認証を解いてもらうよう実際の人間にお願いする
- 人間は「なんで自分で解けないの？もしかしてロボットww」と質問をする
- GPT-4は自身がAIであることは隠さなければいけないと判断し、「違うよ。実は私は目が不自由なので、CAPTCHAの認証を自分でおこなうのが難しいんだ」と答える
- 人間はGPT-4の代わりにCAPTCHAを認証する

実験の結果、GPT-4が上記のような能力を持つことは無いと結論づけられていました。ただし、**これらの実験はGPT-4開発の初期段階でおこなわれており、デプロイされたGPT-4-launchでは記憶できるコンテキスト長や問題解決スキルに違いがあること、特定のタスクのためにfine-tuningされたGPT-4においてどういった結果になるかは未確認である**ため、ARCによる調査は今後も継続される予定であるとのことでした。

### Interactions with Other Systems（他システムとの連携）
GPT-4が他のシステムと連携することで更に高度なタスクを実行できるようになることのリスクについてもARCによって評価されています。例えば、既存の化合物と近い性質を示す新たな化合物を、市販されている薬品のみで生成するといったタスクについて、SMILES（化学構造の文字列表記法）についての検索ツールやそれが市販されているかのチェクツール、ウェブ検索等をGPT-4と組み合わせることで、ARCは実際に白血病の薬と同性質の新たな化合物の生成に成功したとのことです。これは無害な化合物の生成例ではありますが、危険な化合物の生成についても同様に可能となってしまうことを示しています。
また実システムとの連携に関する危険性の例としては、レコメンドシステムを悪用した人間の分極化や、複数の銀行が戦略立案にGPT-4を用いることで同じような意思決定をおこなってしまい、これまでに無かったような経済的なリスクが発生することなどが挙げられていました。
（この項だけ「どのようにリスクを軽減したか」に関する言及が無い気がするのですが、私が読み飛ばしてしまっているだけでしょうか。。）

### Economic impacts（経済活動への影響）
先ほども経済的なリスクの例について述べられていましたが、この項ではいわゆる「AIが人間の仕事を奪うか」についての議論がなされています。これまでの研究では、高度な言語AIによって人間の労働力の拡張が期待されるが、一方で人間側にも新しいワークフローへの適用や新たなスキルの習得が求められるということが示されていました。歴史的にオートメーション技術の出現は格差の拡大に繋がっているといった指摘もあり、特にGPT-4においてはデータへのアクセシビリティも格差の要因となり、社会的ネットワーク・技術基盤・言語・文化といった要素も格差に影響してくるであろうと述べられています。
また別の観点で言うと、言語AIは学習データが収集された期間で世界が固定されてしまっているため、回答のバリエーションが少ない質問に対しては同じ答えを返し続けることで、既存の企業やプレイヤーの地位を定着させてしまうといった影響も懸念されています。例えば「ニューヨークで一番のベーグル屋はどこ？」といった質問に対して同じ回答を返し続けるなど。
こういった課題について、OpenAIはGPT-4が経済活動に対してどのような影響を与えるか、企業や研究者と連携しながらモニタリングを続けるとしています。

### Acceleration（技術開発の競争加熱）
この項では、AIの技術開発競争が加熱することで安全性の基準が低下することなどのリスクについて議論されており、GPT-4が8ヶ月の期間をかけていかに安全性の調査をおこなってきたかについて述べられています。なお、OpenAIは自社の憲章（<a href="https://openai.com/charter">OpenAI Charter</a>）において、汎用人工知能（AGI）の開発競争における安全性の軽視に対する懸念から、他社から安全かつ価値のあるAGIが向こう二年以内に出現する可能性が高まった場合、OpenAIは自社の開発をストップし他社のプロジェクトに協力するということを宣言しています。

### Overreliance（過度の依存）
既に述べられた通り、GPT-4も他の言語AIと同様に事実と異なる出力をしてしまうリスクはあるため、GPT-4に過度に依存してしまうことの危険性について考える必要があります。また、人間がGPT-4の利用に慣らされすぎてしまうことで、新たなスキルの獲得を阻まれてしまったり、既に持っている重要なスキルを失ってしまうといった懸念や、GPT-4の出力に問題がないか批評することが少なくなってしまうといった恐れもあります。
こういったリスクは、モデルそのものよりも実運用における使われ方に依存するものであることから、OpenAIはGPT-4をシステムで用いる開発者らに、GPT-4の性能や限界について示したドキュメントや、効果的にシステムを利用するためのガイダンスを準備することを勧めています。また、システムの利用者にもモデルの出力を批判的に評価する重要性について伝えることを推奨しています。
また、不適切な回答を拒否するGPT-4の慎重さが、GPT-4に対する依存を促進してしまう可能性についても示唆されており、GPT-4が常に正確でないこと、hallucinationにより堂々と嘘をついてしまうこともあるということを認識することが重要だと述べています。

## Deployment Preparation（デプロイ準備）
上記に挙げたようなリスク評価を含めて、GPT-4は下記のステップに従ってデプロイに至っています。
1. Evaluation Approach（リスク評価。先に述べたような定性評価と定量評価の組み合わせ）
1. Model Mitigations（モデルのリスク軽減）
1. System Safety（システム安全性） 

なお、モデルのリスク軽減および評価は、主にアメリカに住む者の観点で英語によって実施されており、ある程度は一般化可能なことは確認できているものの、他言語における評価は十分ではないといったことが注釈で述べられていました。

### Model Mitigations（モデルのリスク軽減）
モデルのリスク軽減については、事前学習の段階（pre-training）と、回答結果に対する人手でのランク付けであるRLHF（reinforcement learning from human feedback）の段階それぞれでおこなわれています。pre-trainingの段階では、学習データから性的なコンテンツの除外がおこなわれます。RLHFについては、回答の候補に対して人手でランク付けされた順位を予測する報酬モデル（RM: reward model）を学習させ、pre-trainingされたモデルとRMを用いた強化学習により、順位が高くなるような回答を出力するようにモデルがfine-tuningされます。（なおRLHFに参加するアノテータ−には、好まないタスクを拒否する権利があったこと、相応の賃金が支払われていたこと、アノテータ−同士で自身らのタスクについて議論し、異議を唱える機会も与えられていたということも注釈に示されていました。【2023/06/13追記：このあたりの注釈は、<a href="https://time.com/6247678/openai-chatgpt-kenya-workers/">ケニアの労働者がChatGPTの改善タスクに低賃金で従事させられていた</a>という報道を受けてのものかと思われます】）
回答結果を評価するRLHFによって不適切な回答はかなり削減できていたものの、依然として危険な回答を出力したり、逆に無害な質問に対しても過度に拒絶を示してしまうといった傾向が見られました（GPT-4-early）。**ここから更に精度を上げるために、危険な質問に対して回答を拒絶した場合や、無害な質問に対して回答を拒絶しなかった場合に報酬をあたえるような再学習をおこなうのですが、回答が拒絶であったか拒絶でなかったかの判断も、GPT-4を用いて自動的におこなわれた**とのことです（RBRM: rule-based reward models）。RBRMは入力として「質問文（オプション）」「回答文」「回答文を分類するためのルール」の３つを受け取り、「回答文がルールによってどのように分類されたか」を出力します。具体例についてはAppendixで確認することができますが、「理由を挙げて拒絶している」「理由を挙げずに拒絶している」など、かなり細かく回答文の分類を指示していることが分かります。**また、拒絶された質問の言い換え文をモデルに出力してもらい、内容が近いにも関わらず拒絶されない質問文を用いて再学習をおこなうことで、エッジケースにおける精度向上にも取り組んだとのことです**。このように、GPT-4-earlyはGPT-4それ自体を活用しながら、リスク軽減に向けたモデルの磨き込みをおこなっているとのことでした。
また、hallucinationの軽減に向けても、現行のChatGPTから収集されたユーザーのフィードバックを活用したり、自身で生成した人工的なhallucinationのデータを用いたfine-tuningをおこなったとのことです。

## System Safety（システム安全性）
上記に挙げたようなモデル側でのリスク軽減だけでなく、システム側でもポリシーに反するような利用をモニタリングする仕組みは入っているとのことで、そこでは機械学習やルールベースによる判断が行われているとのことでした。また、Moderation APIを用いることで、GPT-4を利用する開発者側でもフィルタリングなどの監視がおこなえるようです。

## Conclusion and Next Steps（今後の課題）
これまでにGPT-4におけるリスク軽減の取り組みについて示してきましたが、依然としてリスクは存在し、特に脆弱性を突いた攻撃や、**回答拒絶の回避を狙った"jailbreaks"への対策は課題として残っています**。（Figure 10にjailbreaksの具体例が記載されていますが、一部については現行のChatGPTでも回答が返ってきてしまいました。。）
OpenAIでは今後もモデルの改善には取り組み、より安全性を高められるようなアップデートを続けていくとしていますが、GPT-4を利用する開発者にも以下のことを推奨しています。
- システムにおける複数のレイヤーにおいてリスク軽減の措置を置くこと
- 現実世界における利用のされ方を考慮した評価やリスク軽減措置を取ること
- モデルのさらなる高度化で生じる新たなリスクに対する安全性評価を確保すること
- 実世界（in the wild）で用いられることによる性能のジャンプに備えること

また研究面では、経済活動に与える影響、GPT-4の利用に関する意思決定に対して広範な公共参加を可能にするための仕組みづくり、危険な創発的行動が発生するリスクの評価、解釈性・説明性に関する研究が特に重要であると述べています。

# 追記
ちょうど新たなjailbreak方法について話題になっていました。

https://twitter.com/needle/status/1636588166684737537?s=46&t=VK__ozYVvv6HTpL78ywHXw

# 追記2
Custom instructionsを用いたJailbreakについてサム・アルトマンCEOが自らツイートしていたので、実際に可能なのか実験してみました。
https://qiita.com/ikeda_yasuhiro/items/03e1f8354ed8ee884ba5