Replying to Avatar murawaki

最後の点にもう少し詳しく触れると、(A) 人間、(B) 素の LLM、(C) ステガノグラフィ用 LLM の三項対立は Dai and Cai (2019) で議論されている。

https://aclanthology.org/P19-1422/

言語モデル=テキストの確率分布間の距離 d を total variation distance で定義すると、d(A, C) <= d(A, B) + d(B, C) という不等式が成り立つ (数学苦手勢なので結論だけを引用)。

この不等式は、ステガノグラフィの研究が d(A, B) は言語モデルの研究がなんとかするということで感知せず、d(B, C) の最小化のみに注力することを正当化するのに使われている。

しかし d(B, C) は実際上はすでにほぼゼロ。これを更に減らすのは情報理論が好きな狭い業界の自己満足にしか見えない。

実用化という観点からは、文脈プロンプト共有問題を何とかしなければならない。

Ziegler et al. (2019) は、ニュース記事の最初の3文を文脈として与え、その後を言語モデルに生成させるという実験設定を採用している。

https://aclanthology.org/D19-1115/

しかし評価実験から離れて実際に使う場面を考えるとどうすべきか悩ましい。そもそもの前提として、送信者 Alice は復号化に必要な情報を事前に受信者 Bob と密かに共有しておかなければならない。この前提を踏まえると以下の2つの選択肢が考えられる。

1) 最初の3文も含めて送信する。Bob と共有しておくべきなのは、最初の3文が文脈プロンプトであるというハイパーパラメータだけで済む。しかし、最初の3文は既存テキスト、4文目以降は独自生成テキストというやり取りが繰り返されれば、不自然に思われかねない。

2) 最初の3文を除いて送信する。この場合、Bob とは最初の3文自体を事前に共有しておく必要がある。これは使い勝手が悪い。おまけに、生成部分が文脈部分を参照していると不自然なテキストになるリスクもある。

Ziegler et al. (2019) の設定は後続研究 (我々の研究も含む) で踏襲されがちだが、これは悪しき前例主義であり、そろそろ改めるべき。

この点で重要なのが SNS 設定。以前は「ウェブ時代、特に SNS 時代においては、Alice が Bob を通信相手として明示する必要がない」という主張に賛同していたが、今は考えを改めている。

https://link.springer.com/chapter/10.1007/978-3-031-49803-9_7

Liao et al. (2024) は、他の利用者の投稿を文脈として言語モデルに与え、返信をステガノグラフィに利用している。

https://dl.acm.org/doi/abs/10.1145/3658664.3659657

この設定なら文脈プロンプトを事前に共有する必要がなく、既存テキストと独自テキストの組み合わせも自然に見える。通信相手を明示するという欠点を補って余りある利点があるように思える。

Reply to this note

Please Login to reply.

Discussion

実用化の課題としては、計算非決定性問題も外せない。既存論文で議論された形跡がないのに査読者から突っ込まれた。

受信者 Bob は送信者 Alice の言語モデルが生成時に参照したトークン生成の確率分布を完全に再現しなければならない。しかし Bob は当然ながら Alice とは別の計算環境を使っているはずで、本当に再現性が確保できるか怪しい。

実際には、同じ計算環境ですら GPU が絡むと決定性が損なわれがち。最適化テクニックの多くは非決定的であり、無効化しなければならない。それで十分かというと怪しい。

非決定性問題は開発者向け文書では言及されることがあるが、論文では見かけない。

https://docs.pytorch.org/docs/stable/notes/randomness.html

Atil et al. (2025) は珍しく非決定性を調べているが、温度パラメータ=0の貪欲生成設定しか調べていない。しかも、OpenAI などのクローズドモデルが非決定的な最適化テクニックを使っている (と推測される) ことに原因を求めており、手元の GPU で Llama3-8b を動かしたら決定的だったと述べる。詰めが甘い。

https://arxiv.org/abs/2408.04667

以前 Textcoder を紹介した際にも書いたが、出力を人間が作成したと見せかける行為を禁じる条項がある言語モデルは、ステガノグラフィ用途では使えない。BLOOM と Llama が該当することは以前から知っていた、ChatGPT 5 Thinking に他のモデルも確認してもらった。

Gemma: 禁止

"misrepresentation of the provenance of generated content by claiming content was created by a human … in order to deceive"

https://ai.google.dev/gemma/prohibited_use_policy

NVIDIA のモデル: 禁止

"intentionally misleading or deceiving others"

https://developer.download.nvidia.com/licenses/nvidia-open-model-license-agreement-june-2024.pdf

Qwen2.5-72B は独自ライセンスだが、当該の禁止条項は見当たらないため OK。ほかのモデルはだいたい Apache-2.0 なので当然 OK。

https://huggingface.co/Qwen/Qwen2.5-72B/blob/main/LICENSE