Claude がテキストに電子透かしを入れ始めたので、LLM ウォーターマーキングの仕組みを調べた
2023年に「実用化は無理だろう」と思った技術が、3年後には規制対応という追い風を受けて商用 LLM に標準搭載されつつある、というのが今回調べて分かったことです
事あるごとに「3年前には無理だった技術」みたいなことを強調しているけど、「文章に何らかの情報を埋め込む」ことを意図した技術(方法)って大昔からありそうな気がするけどなぁ。10年前のIT系企業の不祥事で関係者に配布された文章が各々微妙に文言が変えられていて、流出元のあぶり出し用じゃないかとか言われていたし(実際にウォーターマーキングを意図していたかは別としても)。
従来、著作物の保護等を目的とした場合は、著作物それ自体が識別子として使われていたから、1ビット情報には意味がなくて、流出元の特定等に使おうとすると多ビット化する必要があって、それらを製造する技法も含めて実用化に際しての困難だったし、そもそも需要もさほど無かった。対してAI生成文章であることを埋め込むためには1bitの情報があればいいから、実用化が楽になった、ということで技術的に達成できるから法律化した、というのが流れじゃないだろうか? 今後は誰が生成した文章かみたいな情報も埋め込みたいから、数十ビット規模の堅牢な情報量を埋め込む必要が出てきて、もう少し大変としても。
ところで、今のところはウォーターマーキングは文法の揺らぎの統計で1bit値を、つまりAIモデルに固有な選択肢を選ばせることで入れているようだけど、当面この手法が継続されるとして、AIネイティブの子どもがAIチャットボットに入り浸ったりすると、AIライクな文法を使うように学習したりするんだろうか? 「この子どもはChatGPT率が高い」とか「この子どもはGemini率が高い」とか。あるいは、20年後くらいに「新人が自分で考えて書いた文章のはずなのに、なんか20年前のAIのウォーターマーキングが入ってるんだけど」とかになるんだろうか。
もう少し時代が進んでユーザーIDを埋め込めるような時代になると、親のアカウントを利用していた子供は同じIDのウォーターマークを学習する、とかもあるか。息子or娘が旅行中に何らかの事態で記憶喪失に陥って、自分の身元の手がかりとなるものも一切無い中で、供述にAIウォーターマークの痕跡を発見した捜査官がそれを手がかりに調べると…… うーん、記憶喪失中に亡くなっていた親の墓参りに、みたいな話になりそうだぞ。。。
Text watermarking - Wikipedia en
Research on text watermarking began in 1997.
始まってすぐ実用化されたわけではないとはいえ。
1500年頃に書かれて1600年頃に出版された本。精霊を使って長距離通信を行うための魔術書のようなの内容だが、文中に暗号が埋め込まれていて、1960年代に解読された、とのこと。この本の著者は他にも暗号化した本を複数書いていて、後にはエニグマに似た体系も発明した、らしい。
たしか歴史上の数学者たちも難読化した方法で自身が発明した計算方法を出版していたんじゃなかったかな? 自分は自身しか知らないはずの計算方法で仕事をして、後にその技法が他の人から公開されると「私の著書を解読すれば私が発明者であることが明らかだ」みたいに言えるように。この手の暗号化(特に暗号であることが一見してわからない情報の埋め込み)は大昔から手を変え品を変え色々ありそう。
理系用語アキネーター「ビッグクランチ」でQ.古典力学ですか? A.いいえ、とのことだけど、宇宙の終焉としてのビッグクランチは古典力学(重力論)の範囲じゃね? 非古典的な取り扱い(量子論)が必要になるのはビッグクランチで宇宙が潰れ終わったあとに何が起こるか(例えばビッグバウンス)を記述するために必要なものであって、我々の宇宙が存在している範囲では古典力学で記述できると思うのだが。
自走砲台で砲撃していくゲーム。スチームパンクなヘヴィーオブジェクト、って感じかな。正しくはスチーム(燃焼室+熱交換器による蒸気機関)ではなく油圧(2x直列8気筒エンジン駆動)だろうけども。射撃の衝撃でバルブが緩むと真っ黒な作動油が吹き出してくるから、時々締めてやらなくちゃいけない(あとからゲームの概要を読んだらディーゼルパンクって書いてあった)。ゲームの流れは、作戦地図から敵の方位/距離を拾って、装薬数から仰角を計算したり弾種を選んで、射撃。とてもシンプル。ただ、再装填に時間がかかるし、大量の射撃目標から最適な目標選択をしなくちゃいけないので、かなり忙しい。優先的に射撃する必要がある目標もあるし、あるいは優先目標がない場合は、弾種や装薬数を変えず、かつ方位や距離が近い目標から順番にキューイングしていく、とか。
幻影砲兵隊で異様に苦戦した。10回じゃきかないくらいのリトライ。一つには戦い方を理解していなかったし、砲弾の選択を間違っていたりとか。あとは回数をこなして射撃の手順に慣れて、素早く砲撃できるようになっていくと、なんとかクリアできるようになった。
各種表示にダイヤル式のデジタルディスプレイが使われてるけど、これの正式名称ってなんて言うんだろう? rotary displayとかでぐぐるとブツ撮り用の回転台かロータリーエンコーダ内蔵円形ディスプレイばっかり出てくる。
形としては手押しカウンターやアワーメーター/オドメータみたいなものに近いけど、これらは最下位桁をインクリメントすると自動で桁上りする表示であって、複雑な数値の表示には向かないはず。ただ、離散値を表示するならともかく、方位角や仰角を表示したい場合は連続値だから、例えば180度反対側まで0.1桁の単位で表示するなら、最下位桁を1800回転させればいい、みたいな考え方の可能性もあるか。360度をまたぐときは3600回転させなきゃいけないので大変だけど、最上位桁は0,1,2,3,*,0,1,2,3,*で140度分インクリメントして周回させるという手もあるだろうし(少なくとも倍以上は早くなる)。
What is this analogue numerical display? | diyAudio
英語圏のフォーラムでも確たる情報が出てこない程度にはあまり無い表示方式らしい?
LDM #449: Harrier Aircraft Horizontal Situation Indicator - YouTube
飛行機の計器で使っている例。
循環しない距離は円筒形の部品で、360で循環する方位はベルトで作っているらしい。
方位はおそらく下1桁と上2桁に分かれていて、上2桁は00から35まで、下1桁は0-9を2組か3組印字して、個別に回しているっぽい。
距離は3桁で表示して、100nm未満なら~99.9、100nm以上なら100~という表示になるらしい。それぞれの桁は独立して制御できる。駆動音がすごく静かなので、少なくともギヤでサーボループを作っているわけではなさそう。もしかしてレゾルバみたいな感じで直交信号を突っ込んで磁石を駆動するみたいなことなんだろうか? それとも、回路図だと数字の表示デバイスっぽいものに10本の信号線が入っているから、例えば0の場所に磁石が入っていて、各端子に電圧をかければそこに磁石が引っ張られて、外から見ると数字が変わって見える、みたいなことなんだろうか。レゾルバみたいに連続的に制御しようとするとBCD→Sin/Cos変換が必要になるけど、離散的に制御するなら4 to 10lineデコーダ1個で済むから回路的にも楽そう(デジタル→Sin/Cos変換はレゾルバインターフェース用に専用ICがあるっぽいけど)。
桁の切り替えはソレノイドで小数点の表示の有無を切り替えるけど、もしもソレノイドが断線すると1桁誤った距離を表示してしまって危険だから、桁切り替えのロジックはソレノイドを経由して通してある。仮に断線すると普段と表示形式は変わるけど、少なくとも不正な表示は出さない。飛行機のフェイルセーフは徹底してるねぇ。
炭酸の缶ジュース、なんかおかしいと思ったら底面の鏡板が外側に吹き出していた(底面よりも外側に出ているので直立しない)。
身の回りにある小型の圧力容器(炭酸飲料やスプレー等)は通常内側に凸の鏡板で底面を閉じてあるけど、炭酸飲料のように加熱で内圧が上昇する場合、これが外側に座屈することで体積が増えて内圧が上がりすぎることを防いでいるらしい。この写真の缶はまだ完全には膨らみきっていなくて、もう少し余裕がある。底部で吸収しきれなくなったら上部も膨らんで、それでも吸収できなければ、最終的に破裂に至る。
しかし、今年ってそんなに暑かったかなぁ…… 去年よりは涼しい気がするんだけど。それに、この缶を置いていたのも比較的涼しい部屋だし。缶が塑性変形するほど加温されたとは思えないのだが。通販で買ったやつだけど、さすがに通販会社の倉庫に空調が皆無とも考えれないし、輸送途中で加熱されたのかな? それにしたって輸送荷物がそこまで加熱されるとも思えないんだけど。
とはいえ、昔冬に水性接着剤を買ったらエマルションが壊れていたことがあったので、少なくとも冬の北海道で氷点下になるような環境には置いているんだろう。なら、関東付近で高温になるような状況で荷物をハンドリングしたりもしているのかな?
機内でソーダ缶の破裂百件以上、酷暑に冷蔵不足原因か 米航空会社 - CNN.co.jp
2024年のニュース
今年はなんかやたらとスズメバチが家に入ってくるなぁ。去年も入ってきてはいたけど。ハチってやっぱりブンブンうるさいから波動性とか持ってるのかな?というレベルで、どこから入ってきたか見当がつかない。
怪しい隙間をマステで埋めてるんだけど、なんだかCBRNで屋内退避してる気分になってくる。こうやって丹念に探していると、小さい隙間でも結構風が入って来るのがわかる。イザというときに全部埋めるのは大変そうだ。
普通の(塗装用の)マステはその目的から、凹凸に馴染みやすいし、しっかりと張り付くし、比較的剥がしやすいし、水や有機物の阻止性が非常に高いし、何より安価で大抵どこででも買えるから、見た目を気にせずに隙間を塞ぐのには便利。黄色とか目立つ色が多いので部屋の中でペタペタ無造作に貼ってると目につくので一般家庭で使えるかどうかはさておき。H2Oやら有機溶剤の阻止性がさほど不要な場合はインテリア用のマステでもいいんだろうけど。恒久的に穴を塞ぎたいならシリコンシーラントとかを使うべきなんだろうけど、だいぶ手間がかかる。
リード・ソロモン符号の誤り訂正は、適当に乱数を打ち込んでも正しいメッセージが得られるから、おそらく正しく訂正できるところまで書けたはず。今回は行列演算ベースで書いているけど、計算を整理していくとかなりシンプルな計算で誤り訂正ができるんだな。
しかし、適当に作ったメッセージ列に適当なエラーを含めて訂正させる、とかは動いても、本物のエラーが入ったパケットのサンプルって得るのが意外と難しそうな気がする。身近なところだと地デジのパケットとかを取り出せばいいんだろうけど、デコーダ書くのメンドクセ。そもそもRS符号の前に畳み込み符号が……