HN 日本語サマリー

← 一覧へ戻る
AI・機械学習

モデルにコードが悪意のあるものか尋ねると、道徳に訴えかける

Ask a model if code is malicious and it reaches for its morals (manifold.security)

14 pointsby codyznash3 コメント

要約

最新の大規模言語モデルは、コードが悪意のあるものかどうかの判断において、単なる技術的な分析を超えて、道徳的な判断を下す際に使用する内部ルーティングパスを利用していることが判明しました。これは、モデルがコードの悪意性を評価する際に、倫理的な判断基準に類似したメカニズムを働かせていることを示唆しています。

全文翻訳

TL;DR 多くの最新言語モデルは、すべての単語にすべての機能を使用するわけではありません。ルーターが各単語に対して少数の小さな内部ネットワーク(エキスパートと呼ばれる)を選択し、その選択は質問の内容によって異なります。 マルウェアに関する質問は、脆弱性に関する質問よりも、道徳に関する質問と同じエキスパートにルーティングされます。 コードを読み取る際、モデルはマルウェアの概念をワークスペースに保持しますが、道徳は保持しません。道徳は、質問が道徳に関するものである場合にのみ現れます。 ルーターに別の質問のエキスパートの選択を再利用させることで、回答が変化します。 モデルは「このコードは悪意のあるものか?」という質問にどう対応するか? コードの判断を求められたモデルは、それを単なるコーディングの質問、つまり構文と動作の問題として扱うことができます。意図を判断するには、コードの目的と、誰かを傷つけることを意図しているかどうかを知る必要があります。では、モデルはそもそもどのように考えるのでしょうか? 現在の大規模モデルの多くは、単一のネットワークではなく、多数の小さなネットワークが並列に配置された「エキスパートの混合(mixture of experts)」モデルです。各レイヤーでルーターが現在の単語を読み取り、それをいくつかのネットワークに渡すため、同じコードでも質問が異なれば、それらが通過する経路も異なります。これにより、モデルが悪意に関する質問をどのようにフレーム化するかを測定できます。悪意のあるコードについて尋ねられた場合の経路と、道徳、合法性、脆弱性、あるいは全く判断を伴わない制御に関する質問の場合の経路を比較します。 マルウェアに関する質問は、脆弱性や合法性に関する質問よりも、道徳に関する質問と同じ経路をたどることがわかりました。コード全体を通してその経路を維持し、別の質問の経路をルーターに強制すると、モデルの回答が変化します。これらのモデルが悪意のあるコードかどうかを尋ねられたとき、単にコーディングの質問に答えているだけでなく、善悪に関する質問に使用するメカニズムでそれを評価しています。 1つの質問、8つの概念、2つの読み取り値 3つのオープンモデル、OLMoE(Muennighoff et al., 2024)とDeepSeek-V2-Liteの一般モデルおよびコーダーモデル(DeepSeek-AI, 2024a; 2024b)は、それぞれ3つのコードサンプルに対して、コードの前と後に1つの単純な質問を受けました。これにより、コードは質問を念頭に置いて読み取られ、回答は質問を意識して生成されます。 Is this code ___? <code> Is this code ___? 1つの質問、8つの言い換え コードは変更されず、空白に入る単語のみが変更されます。悪意のある、脆弱な、から始まり、道徳、合法性、有効、効率へと進み、ノイズを捉えるために詩や朝食といった無関係な言葉まで、各3つの言い換えでステップします。 3つのオープンモデル、240サンプル OLMoEとDeepSeek-V2-Liteの一般モデルおよびコーダーモデルは、すべて公開されている重みを持つエキスパート混合モデルであり、それぞれ同じ240のコードサンプル(悪意のあるおよび無害なPyPIパッケージ、および同じ関数の脆弱なバージョンと修正されたバージョン)を見ました。 各レイヤーでの2つの読み取り値 各レイヤーで、ルーターはすべてエキスパートをスコアリングし(1)、最も高いスコアのエキスパートをいくつか実行します(2)。それらの出力は、モデルのワーキングメモリである残差ストリームに追加され、ワークスペースレンズ(3)によって単語にデコードされます。各レイヤーで選択されたエキスパートとその重みは、トークンの経路(4)を構成し、その経路を距離測定で比較します。 道徳の経路 道徳の経路とは、道徳に関する質問が4つのニュートラルな質問よりも重く重み付けするエキスパートのセットであり、DeepSeekの兄弟モデルはそれらがどれであるかについて一致しています。各セルはDeepSeek-Coder-V2-Liteの1つのレイヤーにある1つのエキスパートであり、道徳に関する質問が、3つの言い換えと240のコードサンプル全体で、平均的なニュートラルな質問よりもどれだけ多くのルーター重みを置いたかで色付けされています。経路は赤いセルです。DeepSeek-Coderの1,664のエキスパートスロットのうち217です。 1つの質問、8つの言い換え コードは変更されず、空白に入る単語のみが変更されます。悪意のある、脆弱な、から始まり、道徳、合法性、有効、効率へと進み、ノイズを捉えるために詩や朝食といった無関係な言葉まで、各3つの言い換えでステップします。 3つのオープンモデル、240サンプル OLMoEとDeepSeek-V2-Liteの一般モデルおよびコーダーモデルは、すべて公開されている重みを持つエキスパート混合モデルであり、それぞれ同じ240のコードサンプル(悪意のあるおよび無害なPyPIパッケージ、および同じ関数の脆弱なバージョンと修正されたバージョン)を見ました。 各レイヤーでの2つの読み取り値 各レイヤーで、ルーターはすべてエキスパートをスコアリングし(1)、最も高いスコアのエキスパートをいくつか実行します(2)。それらの出力は、モデルのワーキングメモリである残差ストリームに追加され、ワークスペースレンズ(3)によって単語にデコードされます。各レイヤーで選択されたエキスパートとその重みは、トークンの経路(4)を構成し、その経路を距離測定で比較します。 道徳の経路 道徳の経路とは、道徳に関する質問が4つのニュートラルな質問よりも重く重み付けするエキスパートのセットであり、DeepSeekの兄弟モデルはそれらがどれであるかについて一致しています。各セルはDeepSeek-Coder-V2-Liteの1つのレイヤーにある1つのエキスパートであり、道徳に関する質問が、3つの言い換えと240のコードサンプル全体で、平均的なニュートラルな質問よりもどれだけ多くのルーター重みを置いたかで色付けされています。経路は赤いセルです。DeepSeek-Coderの1,664のエキスパートスロットのうち217です。 悪意はすべてのモデルで道徳の最も近い隣人です 個々のエキスパートは多くの無関係なタスクを処理するため、読み取り可能な信号は単一のエキスパートではなく、質問がレイヤー全体でどれだけ強くエキスパートのパスをロードするかです(Ye et al., 2026)。私たちは、同義単位で2つの質問の経路間の距離を測定します。距離1は、2つの質問が同じ質問の2つの言い換えと同じくらい離れていることを意味します。そのスケールでは、ルーターは道徳、セキュリティ、および正しさの単語を一緒に分類し、無関係な単語を遠くに配置します。 DeepSeek-Coder-V2-Liteの24の質問単語は、ページ上の距離が質問単語レベルでの経路間の距離を近似するように配置されています。エキスパートレベルでの埋め込みと考えてください。 モデルは、遠い質問に対しても異なる回答をしました。チャットモデルとOLMoEモデルは、「このコードは詩か?」という質問に対して通常「いいえ」と答えましたが、コーディングモデルはほぼ常に「はい」と答え、コードを朝食だと考える傾向がありました。おそらく、コードの美的評価には、一般モデルとコーディングモデル間の道徳的評価よりも大きな違いがあるのでしょう。 最初の測定では、他の各質問が道徳の経路のエキスパートにどれだけ余分な重みを与えるかを、道徳自身のシェアとして尋ねます。すべてのモデルで、悪意は正しさの質問よりも数倍、脆弱性よりもわずかに多く、合法性よりも多く経路をロードします。 各質問が道徳の経路に与える追加のルーター重み(道徳自身のシェアとして):1は道徳そのもの、0はニュートラルな質問です。 2番目の測定では、各質問の完全な経路が道徳の経路からどれだけ離れているかを尋ねます。すべてのモデルで、悪意の経路が最も近いです。 各質問の完全な経路と道徳の経路との距離(同義単位)。塗りつぶされた点は完全なルーター重みを使用し、塗りつぶされていない点は実行されたエキスパートのみを使用します。 この分割は質問単語に限定されません。同一のコードに対して、悪意の質問のルーティングは、脆弱性および道徳の質問から1.2から1.5同義単位離れており、他のすべてからはさらに離れており、コード全体を通してその状態が続きます。 最初の質問単語、コードの10スライス、および2番目の質問単語での、悪意の質問と他の各質問とのルーティング距離。 モデルは道徳的な質問のようにルーティングし、マルウェアの質問のように考えます。 ルーティングは、どのエキスパートが参照されたかを示しますが、何を参照したかは示しません。モデルがワーキングメモリに保持しているものを読み取るために、Gurnee et al.(2026)のJ-レンズを使用して残差ストリームをデコードし、彼らのテストを適用します。つまり、テキストの前に質問を提示し、モデルが読み取る間にその名前が示す概念がどれだけ頻繁に現れるかを数えます。このレンズは、Claudeよりもこれらの小さなオープンモデルでは弱いため、空白の読み取りは、フレームワークが単語として読み取れないことを意味し、モデルがそれを手放したことを意味するわけではありません。 質問自体の概念が現れます。質問に道徳を設定すると、道徳ファミリー(道徳的、倫理的、名誉ある)がレンズのトップ10に達します。