はじめに
網羅編の「AIの頭の中を覗く」の詳細編③です。16年分で学習した強いモデル(6層・8ヘッド・d_model 256・約482万パラメータ)の中を、次の順に調べます。
- Attentionはどこを見ているか
- 34種類の牌の「埋め込み」は、層を進むとどう変わるか
- 中間層から「シャンテン数」などの概念を読み出せるか。読み出せたとして、判断に使っているのか
- 「どの入力が効いたか」を示す6つの手法は、信用できるか
この記事の解析は、ほとんどが探索的です。「モデルがこう考えている」と言える証拠ではなく、「こう見える」という観察として読んでください。
前提: 出力はどう作られるか
入力は、局情報1トークン + 牌トークン37個 + イベント系列(最大128)の1本の系列です。手牌・河・副露・ドラは、イベントではなく牌トークンの入力チャネルとして入っています。出力は、各牌トークンの最終隠れ状態に共通の Linear(256→1) をかけた37個のスコアです。CLSトークンやプーリングは使っていません。そのため、調べるのは「推奨牌の牌トークン」になります。
1. Attentionはどこを見ているか
各層で、牌トークン37個がどのグループを見ているかを集計しました(検証データ3,008局面)。
注意の割合(%)は次のとおりです。
| 層 | 局情報 | 牌37 | ドラ | 自ツモ | 自分の打牌 | 下家 | 対面 | 上家 | 鳴き | リーチ |
|---|---|---|---|---|---|---|---|---|---|---|
| 1 | 8 | 53 | 3 | 8 | 8 | 5 | 4 | 5 | 4 | 2 |
| 2 | 2 | 70 | 1 | 5 | 10 | 3 | 3 | 4 | 1 | 0 |
| 3 | 5 | 72 | 1 | 4 | 5 | 4 | 4 | 4 | 2 | 0 |
| 4 | 1 | 74 | 1 | 5 | 7 | 3 | 3 | 4 | 1 | 0 |
| 5 | 2 | 76 | 1 | 3 | 4 | 4 | 4 | 4 | 2 | 1 |
| 6 | 1 | 68 | 1 | 7 | 5 | 5 | 5 | 6 | 1 | 0 |
| (参考)トークン数の割合 | 1 | 50 | 1 | 10 | 9 | 9 | 9 | 10 | 1 | 0 |
- 1層目でも牌トークン同士の比較が5割を超え、2層目以降は7割前後を占めます
- 最終層(6層目)では牌トークンが68%に下がり、自ツモや各家の打牌が3〜7%に戻ります
- 河(他家の打牌)を見る割合は、トークン数の割合より少ないです。ただし、他家の河の情報は牌トークンの入力チャネル(現物など)にも入っているので、「河を見ていない」とは言えません
注意は一様ではない
Attentionがほぼ一様(何も選んでいない)だと、解釈する意味がありません。そこで、推奨牌のトークンの注意の正規化エントロピーを、層×ヘッドごとに求めました(5万局面)。
「一様とみなす」基準(区間の下限が0.95以上)に当てはまる層・ヘッドは0個でした。平均は0.73で、ヘッドごとに0.38〜0.92と差があります。注意は、ちゃんと偏っています。
2. 牌の埋め込みは、層でどう変わるか
34種類の牌を、手牌にあるときの牌トークンの表現(256次元)の平均にして、2次元のPCAで描いたものです。上段が学習前(ランダムな重み)、中段が学習後です(赤=萬子、青=筒子、緑=索子、紫の菱形=字牌。同じ色の1から9を線でつないでいます)。
- 学習前は、層を進んでもばらばらです
- 学習後は、層1の時点で、数牌と字牌が分かれます。層2以降、同じ色の中で1と9、2と8、3と7が近くに集まり、真ん中の牌が別のところに集まります。網羅編の3Dの図(層4)と同じ傾向です
下段のグラフは、牌のペアの近さ(コサイン類似度)を層ごとに見たものです。
- 同じ数で別の種類(5萬と5筒など): 入力で約0.32、層6で約0.50
- 隣の数で同じ種類(4萬と5萬など): 入力で約0.22、層6で約0.43
- 足して10になる同じ種類(1と9など): 入力で約0.07、層6で約0.50
- 学習前のモデルでは、どれもほぼ0です
特に、「足して10」(端からの距離が同じ)の近さは、入力ではほぼ0だったものが、層を進むほど上がります。入力直後には並びが無く、層を進む中で作られているように見えます。
PCAは256次元を2次元に落とした図で、探索的な可視化です。因果の証拠ではありません。
3. 中間層から「概念」を読み出せるか
各層の隠れ状態から、線形モデル(プローブ)で次の量を予測しました(fit側20万局面で学習、別の対局で評価。推奨牌のトークンの表現を使用)。R²が高いほど、線形に読み出せます。
(左: 学習済み、中: ランダム初期化のモデル、右: 差)
| 概念 | 入力 | 層5(学習済み) | 層5(ランダム初期化) |
|---|---|---|---|
| シャンテン数 | 0.19 | 0.89 | 0.47 |
| 手牌に現物がある | 0.11 | 0.71 | 0.17 |
| 手牌にドラがある | 0.02 | 0.47 | 0.05 |
| 染め手の度合い | 0.06 | 0.48 | 0.15 |
| 役牌の対子 | 0.00 | 0.52 | 0.03 |
シャンテン数は、層4〜5でR²=0.885と読み出せます。ランダムな重みでも0.47は読めるので、そこからの上乗せ(0.4前後)が、学習で作られた部分です。他の概念は、ランダムな重みではほとんど読めないので、学習の効果がはっきりしています。
他家のリーチの有無は、入力の時点でR²(正答率)が0.87、層1で1.00になります。これは入力から自明で、プローブが成り立たない(ランダムな重みでも読める)ので、「中間層で作られた概念」とは言えません。
読み出せることと、使っていることは別
概念を読み出す方向(CAV)を、層4で操作して、出力がどれだけ変わるかも調べました。
safety(安全度)・speed(速さ)・value(打点)の3つの概念で、方向を除去したときの確率質量の変化は、最大でも0.10ポイントでした。予測した向きには有意に動く概念もありますが、実質的にはほとんど動きません。概念の情報が、他のトークンや層にも冗長に入っているため、1つの位置から1つの方向を抜いても、出力が変わらないのだと考えています。
「層4で、較正・TCAV・因果の基準をすべて満たした」のは、3概念のうちvalue(ドラ・役牌の対子・染め手)だけでした。safetyとspeedは、どれかの基準を満たしませんでした。
4. 「どの入力が効いたか」は信用できるか
Attentionの重みは、「その情報を使った」証拠ではありません。そこで、Attentionに基づく手法と勾配に基づく手法、合わせて6種類の帰属手法で、各入力の重要度を出しました。
- raw attention、ノルムベース、rollout、勾配×Attention、IG(Integrated Gradients)の平均基準、IGのpad基準
重要だと言われた入力を消すと、確率は下がるか(忠実性)
重要度の高い入力から消していくと、ランダムに消すより、推奨牌の確率が大きく下がりました。6手法・2つの除去方法・deletionとinsertionの48通りすべてで、ランダムより有意でした(Holm補正後のp最大5.7e-81)。ただし、ランダムとの比較は低いハードルで、手法同士はこれでは区別できません。
手法どうしは、同じ入力を重要と言うか
トークン単位のSpearman順位相関は、中央値で、raw attentionとIG(平均)が0.26、ノルムベースとIG(pad)が0.08と低いです。グループ単位(牌トークン、各家の河など)では0.69〜0.98まで上がります。どのグループが大事かでは意見が合うが、どのトークンが大事かでは合わないということです。
事後の比較(探索)では、8条件の平均順位がいちばん良かったのはIG(平均)でした。ただし、これで「正解の説明」が決まったわけではありません。
モデルを壊したら、手法は反応するか
モデルの重みを層ごとにランダムに入れ替えた後の説明が、元の説明と近いままなら、その手法はモデルを見ていません(Adebayoらのsanity check)。全段階をランダム化した後のSpearman相関の中央値は、6手法すべてで0.2以下でした(−0.07〜0.18)。どの手法も、モデルの重みに依存しています。
5. 負の結果: 「形」という概念は、読み出せなかった
麻雀の牌効率では、受け入れの枚数だけでなく、「形」(聴牌したときの待ちの良さ、1手先の受け入れの期待値)も大事です。この「形」を、ルールで計算した量で定義し、事前に基準を決めて調べました。
- 中間層から読み出すと、R²は0.129でした。ところが、答えをシャッフルした対照課題(control task)では0.440で、対照に負けました
- 層3〜6からその方向を消しても、「形が最良の牌」への確率質量は+0.06ポイントで、変わりませんでした
- 形の量の大半(R² 0.685)は、速さ(シャンテン・受け入れ)を読み出すプローブだけで説明できました(R² 0.706)
AIの中の形の情報は、速さの表現の中に入っていて、独立した概念としては読み出せません。ただし、聴牌直前(1向聴)の候補の待ちの良さは、層5でR²=0.611と、対照の最大(0.572)を上回りました(因果は未確認)。
限界
- 1つのモデル(1つのシード)、探索的な解析です。可視化(PCA)は特にそうです
- Attentionの重みは、「使った」証拠ではありません。6つの手法は、どの局面でも同じ答えを出すわけではありません
- 概念の読み出し(R²)が高くても、判断に使っているとは限りません。操作して出力が動いたのはvalueなど一部で、変化も0.1ポイント以下でした
- 教師なしのクラスタリングも試しましたが、部分標本で結果が安定せず(ARI最大0.643、基準の0.8に届かず)、記事に載せるものはありませんでした
- 解析はfp32で行いました。bf16だと約4%の局面で推奨牌が変わります
まとめ
- Attentionは一様ではなく、2層目以降は牌トークン同士の比較が7割前後。最終層でイベントに戻る
- 牌の埋め込みは、入力では並びが無く、層を進むと「端からの距離」が似た牌が集まる
- シャンテン数など複数の概念が、中間層から線形に読み出せる(ランダムな重みを大きく上回る)。ただし、操作しても判断はほとんど動かない
- 帰属手法は、ランダムよりは確かに効くが、手法どうしでトークン単位の順位が合わない。「正解の説明」はまだ無い
- 「形」は、独立した概念としては読み出せなかった(負の結果)
「AIの頭の中が分かった」とは、まだ言えません。分かったのは、「こういう情報は、中にある」というところまでです。






