コンピュータ将棋基礎情報研究所

コンピュータ将棋に関する基礎的な情報を収集し、分析し、発表する所です。英語名称はLaboratory for Fundamental Information on Computer Shogi (LFICS)。

2016年11月

前回の記事「チェスの不正解析 1:Regan教授曰く」では、チェスの不正解析におけるRegan教授のポリシーを紹介しました。今回は、そのポリシーに基いて統計解析するためのデータを取得する方法を「Testing Rationale and Methodology」(テストの原理と方法)の記事から紹介します。

具体的な話に入る前に、まずはチェスソフトについて、将棋ソフトとの違いに注意しながら、簡単に紹介します。

チェスソフトの基本動作は将棋ソフトと同じです(※将棋ソフトがチェスソフトを多大に参考にしているため)。序盤は定跡ファイル(opening book)があり、それを抜けると反復深化による探索が行われます。探索時には、重複を避けるため、一度読んだ局面の情報をハッシュテーブル(以下、ハッシュ)に記憶して活用します。終盤は、将棋とは異なり、駒数が限られるため、エンドゲームのデータベース(tablebase)が存在します。

検討や棋譜解析も、将棋と同様に行うことができます。ただし、チェスソフトは、複数の候補手を探索する機能(マルチPV)があるのが標準的であり、検討の最中にハッシュを維持したまま、候補手の数を変えることができます(※)。候補手の数が1の状態をSLM(Single-Line Mode)と言い、候補手が複数の状態をMLM(Multi-Line Mode)と言います。

※ 例えば、Arenaなら下にある解析ウインドウを右クリックして「Multi PV Mode」で候補手の数を変更します。UCIエンジンなら探索中に「setoption name MultiPV value 10」等と送るだけのようです。

チェスソフトは探索深さ12手程度でワールドチャンピオンクラスとされており、古いモバイルコンピュータでも数秒の思考時間でその深さに到達します。そのため、昔から不正対策が必要とされてきました。

記事では最初に、テストを行ってデータを取得する際の2つの原則が示されます。

  1. テストは、想定している不正行動に対して“現実的”でなければならない。
  2. ソフトとの一致の重要性は代わりの候補手の客観的な評価に依存する。

1つ目の原則は、例えば、不正想定時に5分しか時間が使えないのに、1手に何時間も必要な検討をしても意味がないということです。また逆に、対局者よりも明らかに実力が劣る浅い探索結果も、不正に利用されることはないため、解析に用いるべきではありません。不正解析を目的とする以上は、マシンスペックや検討時間(時間固定より探索深さ固定を推奨)、エンジン設定、定跡ファイル等の設定は“現実的”に不正が実行可能な範囲で調査される必要があります。ここで、調査手法が想定(モデル)に依存するというのは、何か心地悪いという感覚を持たれる方もいるかもしれませんが、実際に調査に割ける労力が限られている以上は仕方ないことでしょう。また、この原則は、恣意的に調査を行ってよいということではなく、あくまでも調査の範囲を限定するためのものであることに注意しましょう。

この他、“現実的”でない例として、棋譜を終局から遡って解析する後退解析が挙げられています。後退解析は、先の局面の情報をハッシュに記憶した状態で前の局面の解析を行うため、棋譜解析のやり方としては優れていますが、不正者が先の局面を予知しているとは考えにくいため、不正解析としては“現実的”ではありません。ただし、不正のやり方によっては、不正者がコンピュータで先の局面を予想入力して検討している可能性もあるわけですが、そのような複雑な場合にまでは対応できないようです。

2つ目の原則は、ソフトとの一致の重要性を主観的に判断してはならないということを意味しています。「人間には指せない手」「棋風に合わない手」等と主観的に判断せずに、コンピュータが客観的に計算した候補手と評価値に基づいて判断を行うということです。一般的には、他の候補手と比べて評価値が突出した手が一致するよりも、近接した候補手が沢山ある複雑な局面での一致の方が重要だとされます。そのような判断を行うには、MLMで多数の候補手(10手程度)を評価する必要があります。複数のソフトで評価するとさらによいとされます。

以上の原則により、一般的に、ある思考エンジン(Eとする)と指し手との一致を調べるには、以下の2つの調査を別々に行わなければなりません。

  1. 一致調査:“現実的”な探索深さまで1度以上、“現実的”な設定でEを動かして、様々な探索深さで一致するかを判定する。
  2. 重要性調査:“信頼できる”探索深さまでE(及び/または別のエンジン)を1度以上、MLMで動かして、重要な候補手と実際の指し手の評価値を比較をする。

さらに具体的に手法を定めるには、不正のモデルを特定する必要があります。

一般的に考えられているのは、以下のモデルです。

  • 単独不正
    • “靴の中のコンピュータ”不正:本人による簡単な指し手入力によって、SLMの検討結果を陰で受信する。持ち物検査で対策可能。不正解析可能。
    • “クローゼット”不正:離席して画面を見ながら検討する。SLMが簡単だが、MLMを用いて見落とし確認や高度な検討が行われることもある。状況によっては不正解析可能。
  • 共謀不正
    • 重要手における不正:大駒を切る手など、明らかに決断のいる重要手が唯一存在している局面において、観衆の中の共犯者に対局者が合図を送って成立しているかどうかを確認する。正否の答えはノイズに混ぜた音声等で伝達される。チェスのトップレベルのイベントにおける主要な問題。会場の設営方法を工夫すれば、物理的に防止できる。データ数が少ない上に、重要手の判定に主観が入るため、不正解析は困難。
    • 遠隔伝達不正:共犯者がSLMで検討して最善手を電子的/シグナル的に伝達する。最も効率がいいのは、自分の手番はSLMで深く探索し、相手の手番はMLMで確実にハッシュをためる方法。共犯者が選んだ重要手のみで行うこともできるが、多くの指し手で利益を得たいという人心から物理的に探知されるリスクが大きい。多くの手で不正が行われた場合、最も解析しやすい不正。

例えば、遠隔伝達不正モデルの場合には、MLMをSLMの4倍の思考時間で同等と仮定して、ハッシュの状態が“現実的”であることに注意し、“ジグザグ”テスト法(詳細は元記事を参照)を用いると、一致調査と重要性調査を同時に行うことができ、効率的に調査ができます。

また、探索深さを「中盤での“現実的”な探索深さ+1手」に固定して、候補10手のMLMで、定跡部分を抜けた後の棋譜の前進解析を行うと、MLMで一致調査と重要性調査を同時に行うことができます。この手法は、各探索深さにおける一致手の評価値の揺れ動きを見ることで、最善手との一致以上の情報が得られるため、詳細な解析を行うことができますが、調査に時間がかかったり、SLMを想定した不正モデルとは“予想以上に”異なる結果が出たりする等の問題点があります。

以上がRegan教授が提案しているデータ取得方法の概要です。“現実的”であることを追及してハッシュの状態にまで繊細にこだわるのは、一見すると神経質すぎるようにも思えますが、実際に結果に影響を与えうるという経験に基づく教訓であるようです。また、単に一致率を見るだけではなく、MLMによる調査も同時に行う必要があるというのも重要な指摘です。

データを取得したら、最後に統計解析を行います。一致率等の統計解析のやり方の基本は「人間の値打ち 2:統計的判定基準」の記事に書いた通りですが、ここでは方法の詳細は本質ではなく、とにかく恣意性のないように誠実に検定を行えば問題ないと思います。また、一致率の他に、重要性調査のデータを用いて算出できる固有チェスレーティング(Intrinsic Chess Ratings)も重要な指標となります。

次回は、Regan教授らの論文に基づき、固有チェスレーティングを紹介します。

チェスにおけるコンピュータを用いた不正解析の第一人者は、ニューヨーク州立大学バッファロー校コンピュータ科学技術科の准教授であるKenneth W. Regan教授だと言われています。彼はFIDE認定のチェスのインターナショナルマスターでもあります。

今回は、Regan教授のwebサイト「Measuring Fidelity to a Computer Agent」(コンピュータソフトに対する忠実度の測定)から、チェスにおける不正解析がどのように行われているのかを紹介します。ちなみに、Fidelity(忠実度)というのは工学分野でよく用いられる概念であり、2つの物や情報がどの程度、似ているか、一致しているかを何らかの手法で定量化した指標のことです。

まず、基本的な方針は「The Parable of the Golfers: Why a high match% to Rybka is usually not evidence of cheating, unless...」(ゴルフのたとえ話:チェスソフトとの高い一致率が何で通常は不正の証拠とならないのか、証拠となる場合というのは……)に記されています。

記事では最初にゴルフのホールインワンの例を挙げて、稀な事と異常な事との違いを説明しています。ホールインワンは五千回に1回の確率らしく、稀な現象です。しかしながら、一万人がスイングを行えば、2回程度は出現するものであり、そのような状況での出現は異常ではなく、邪悪な陰謀によるものとは言えません。

ちなみに、日本には、ホールインワン時に祝賀会等を開く慣習があり、その費用負担をカバーするためのホールインワン保険というものがあるようです(※筆者はゴルフをしないのでよく知りません)。ホールインワンは通常は“同組プレーヤーとキャディーの現認で成立”するようですが、それでも不正を疑われる場合もあるらしく、統計的な不正調査も行われているようです。

続いて、Regan教授は異常な事の例として、“目星”を付けた10人がスイングをした時にホールインワンが出たという場合を挙げています。これは500回に1回の確率ですので、“民事裁判”基準でも異常だと判定できると書かれています(※この基準はアメリカのものだと思われますが、筆者は専門外なので分かりません)。

つまり、沢山の事例を集めれば稀な事が起こっているのは当たり前であり、異常かどうかを判定するには適切に“目星”を付けなければならないというわけです。

ここで、Regan教授のポリシーが提示されます。

“目星”は、物理的、もしくは観察的な不正の証拠のみによって付けられなければならない。その作業は、チェスの解析やソフトとの統計的一致についての考察等とは独立して行われる必要がある。

というものです。そして、「統計解析でできるのは、明確な“目星”がついている場合に、不正の証拠を支援することのみである」という立場が示されます。また、「申し立てられた不正手段により、どれくらいのレート上昇の利益があるのかも統計手法によって見積もることができる」と記しています。

さらに、「根拠のない不正の告発は“目星”には使えない」と注意し、そのような取るに足らない告発が頻出するようになったきっかけとなる出来事として“Toiletgate”事件を挙げています。ここで、“Toiletgate”事件というのは、2006年の世界チェス選手権で起こった事件です。詳しくは、記事の最後に簡単な時系列を付記しています。

実際に異常かどうかを統計的に判定する基準(有意水準)については、明確な“目星”がついている場合には、“民事裁判”基準により、標準偏差の2倍以上(片側で40分の1、両側で20分の1)でよいとし、そうでない場合には、工業や素粒子物理の例から、標準偏差の3.5~5倍以上が必要だとしています。

この有意水準に関する議論については、やや不十分であると筆者には感じられます。「人間の値打ち 1:不正判定における許容リスク」の記事に記したように、このような基準を議論する際にはリスク工学的な観点が不可欠だと思われますし、また、本来、基準というのは、天下り的に与えられるべきものではなく、社会的な合意によって決められるべきものだと考えられるからです。例として挙げられている工業や素粒子物理における基準にしても、それぞれ理由があって、その数値が採用されているわけであり、その背景を無視して数値のみを持ってくるのは少し乱暴に感じられます。

以上のRegan教授のポリシーについては様々な感想があるかと思います。「妥当だ」という方もいるでしょうし、「もっと厳しくてもいい」という方もいるでしょうし、「民間が不正を“捜査”することの限界」を感じる方もいるでしょうし、「これだからベイジアン(主観確率論者)は」と感じる物理学者もいるかもしれません。しかしながら、彼の手法が現場で鍛えられた実践的な方法であることは確かであり、その経験は尊重されるべきでしょう。

さて、以上のポリシーに基づき、実際に統計的な解析を行うには、

  1. 定められた方法により、データを取得する。
  2. 取得したデータを統計解析する。

ということをしなければなりません。次回は、Regan教授が推奨するデータ取得の方法を紹介します。

-------------------

付記:“Toiletgate”事件

“Toiletgate”事件とは、2006年の世界チェス選手権(クラムニク対トパロフ戦)で起こった事件です。時系列を簡単にまとめると、以下のようになります。

  1. クラムニクの2勝0敗2分の第4局後、トパロフ側が「クラムニクのトイレへの離席が不自然に多すぎる」と抗議し、「この懸案事項に取り組まないのであれば選手権を放棄するだろう」と示唆する。
  2. 不服申立て委員会は、申し立ての離席回数には誇張があるとしながらも、スムーズな大会運営のために個室トイレのみ両者の使用を禁止すると裁定する。
  3. これに対し、クラムニク側は「休憩室は狭く、クラムニクは歩くのを好むのでトイレを使っている」「また、対局中に大量の水を飲まなければならない」「クラムニクがトイレを自由に使える権利を尊重しない限り、この選手権の対局は停止する」等として、元の対局条件に固執する声明を公表する。
  4. 第5局までに委員会の裁定が覆らなかったため、クラムニクは対局を拒否し、不戦敗となる。また、クラムニク側の抗議書が期限内に提出されないという手違いもあった。
  5. その後の話し合いで、元の対局条件に戻されることが合意され、委員会は退陣となったが、不戦敗の裁定が覆ることはなかった。
  6. 不戦敗の裁定についてクラムニクは法的措置を示唆するが、最終的にクラムニクが選手権に勝利したため、実行されなかった。
  7. また、第7局の際にトパロフ側は「クラムニクの指し手のチェスソフトとの一致率が不自然に高い(平均78%)」という声明を公表しており、さらに後のトパロフのインタビューでは「個室トイレにネットワークケーブルが見つかった」「脅迫を受け、選手権中に身の危険を感じた」等の発言があり、物議を醸した。

この件では、不正疑惑の告発が委員会に対して直接的に行われずに記者会見を通して行われたことや告発内容に誇張が含まれていたり、告発の根拠が明確でなかったりしたことが問題視されました。特に最後の部分の「一致率」については、データが恣意的であるとして、Regan教授は否定的であるようです。

前回の記事「人間の値打ち 1:不正判定における許容リスク」では、不正判定において許容できる“冤罪”のリスクが一般的にどのように決められるのかを解説し、人生を変えるほどの重大な処分を行う際のリスク許容量として、年間10万分の1という数字例を提示しました。

今回は、リスク許容量が、例えば、年間10万分の1と与えられた時に、統計処理における判定基準(有意水準)がどのように求められるのかを考えます。

統計学で何らかの判定をする場合には仮説検定を行うのが基本となります。ここで、仮説検定というのは「棄却したい仮説(帰無仮説)に基づいて観測データが説明できる確率を評価し、確率が十分に小さければ(有意水準以下なら)帰無仮説を棄却する」という判定方法です。

具体的に、不正判定の場合には、不正の有無を判定したいので、不正がなく通常であると仮定した時(帰無仮説)の確率分布を最初に求めます(※必要なのは、通常時にどうなっているかという確率分布であって、不正時にどうなるかという仮説ではないことに注意しましょう)。次に、その確率分布に基づいて、着目している観測データ(並びに、それと同等以上に異常なデータ)が出現する確率を評価し、その確率が有意水準以下なら帰無仮説を棄却して異常なことが起こっていると判定します。

ただし、この検定で判定できるのは、あくまでも「通常ではない」=「異常である」ということまでであり、「不正があった」とまでは判定できません。さらに踏み込むためには、異常ではあるが不正はないという帰無仮説を棄却しなければならないわけですが、普通に考えると、この帰無仮説に基づく確率分布を求めるのは困難であり、現実には判定不能となる可能性が高いでしょう。その場合には、不正に関する何らかの傍証に頼るか、もしくは、「異常」だという時点で目をつぶって処分となるという規定を予め作っておくかという運用になるかと思われます。

実際に、いくつかの具体例で考えてみましょう。

まずは最も簡単な例として、異常だと感じられる対局を目にした時、その1局のデータから「異常」かどうかを検定することを考えます。最初に通常時のデータを大量に集めて、通常時の確率分布を推定します。その確率分布から、その対局と同等以上に異常なデータが出る確率を計算して、その確率が有意水準以下なら「異常」だったと判定できます。この時の有意水準は、リスクの許容量が年間10万分の1の場合、年間の平均対局数を50局とすれば、約500万分の1ということになります(※恣意的な選局なので、年間50局の内、同等以上に「異常」な対局が1つ以上現れる確率より算出)。これは、正規分布の片側確率で標準偏差の約5倍以上に該当します。

より具体的に、例えば、ある将棋ソフトとの指し手の一致率をデータとした場合を考えてみましょう(※1)。一致率は採用する手数の範囲や思考時間、マシンスペック(NPS)等に依存するため、それらの条件を機械的に一律に揃えて固定します。また、同条件であっても値がばらつくため、多数回試行して平均を用います。さらに、勝局/負局で性質が異なるため、分けて処理した方がよく、できれば、個人差も考慮した方がよいと思われます(少なくとも個人差のばらつき程度は考慮するべきでしょう)。通常時の確率分布は必ずそれらの条件を揃えた上で導出します。結果的に通常時の確率分布が、例えば、平均65%、標準偏差9%の正規分布になったとすると(※2)、1局のデータから「異常」だと判定するには、標準偏差の約5倍以上なので、110%以上の一致率でなければならないということになり、1局のデータからだけでは「異常」だとは決められないということが分かります。

※1 個人的には、レート(固有レート)との相関を鑑みると、一致率よりも平均損失(最善手との評価値差の平均)を用いた方がよい気がしますが、以下の記述は平均損失を用いる場合でも同様です。また、浅い探索での最善手やマルチPVでの次善手等との一致も含めた“広義”の一致率を用いる場合でも同様です。

※2 実際に一致率の確率分布は正規分布に近くなるようです。一致率はデータ間の相関も強そうですし、原理的には正規分布にならなくても全然おかしくないのですが、もしかすると、一局の平均や多数回試行の平均を取ること(部分的な平均操作)で中心極限定理の成立条件に近い状況になっているのかもしれません(物理学的には繰り込み群に近い印象)。

次に、異常だと感じられる対局が2局連続した場合を考えてみましょう。一局の出現確率がp以下なら、連続して出現する確率はpの2乗以下ですので、有意水準は、500万分の1の平方根で、0.04%程度になります。これは、正規分布の片側確率で標準偏差の約3.4倍以上ですので、前述の一致率の例だと、96%以上の一致率が連続すると「異常」だという判定になります。

ただし、ここで注意しなければならないのは、連続した2局が本当に独立した事象であるのかという点です。上記の確率計算が利用できるのは、あくまでも対局間の相関が無視できる場合に限定されます。もし対局間に相関があるのなら、2局を恣意的に選んだことに近くなり、計算が変わります。相関が強い極限として、年間50局の内、同等以上に「異常」な対局が2つ以上現れる確率を考えると(相関が強いので「異常」な2局はほぼ連続して出現するとすると)、相関がない時には

\[50 p^{2}\]

だった確率が、

\[1225 p^{2}\]

に変わり、有意水準は、約12250万分の1の平方根で、0.009%程度(正規分布の片側確率で標準偏差の約3.8倍以上)になります。もちろん、これは極端な仮定ですので、実際に採用すべきなのは、その中間の数値(0.009~0.04%)ということになるでしょう(※特定するには通常時の相関を推定する必要があります)。前述の一致率の例だと、96~99%以上の一致率となります。

同様に3局連続なら、0.08~0.6%(正規分布の片側確率で標準偏差の2.6~3.2倍以上)となり、前述の一致率の例だと、88~94%以上の一致率となります。また、4局連続なら、0.3~2.1%(正規分布の片側確率で標準偏差の2.1~2.8倍以上)となり、前述の一致率の例だと、84~90%以上の一致率となります。

以上のように、数個の例から異常を検出するのは、かなりハードルが高い検定になります。実際、出来心で1~2局の不正をしたという場合には統計的に判定することはほぼ無理でしょうし、年に数局の不正をしたという場合でも、手法が巧妙であれば、統計的に判定することは非常に困難になるでしょう。上記のような場合においては、統計的な手法はあくまでも補助的なツールとして用いるのがよいと思われます。

統計的な手法が効力を発揮し得るのは、ある程度の長期間に渡って常習的に大胆な不正が行われた場合です。この場合、長期間のデータ群の母数(例えば、平均)が通常時のものとは異なると考えられるため、それを検定すればよいということになります。

例えば、期間の区切り方の詳細に依らないように注意しながら、1年分の対局からデータ群を抽出するとします(※2年分のデータなら、リスク許容量を2年間で5万分の1と換算します)。同様に作られた通常時のデータ群の確率分布を求め、例えば、それが正規分布であった場合には、t検定(記事の最後に簡単な解説を付記)を用いて、有意水準10万分の1で検定すれば、「異常」なことが起きているのかを判定できます。正規分布でない場合にはノンパラメトリックな検定手法を用いる必要がありますし、多種類のデータ群から検定する場合にはさらに複雑になりますが、手法の複雑さはさておき、やることはデータ群の母数が一致するかどうかを検定するだけです。

この際に最も注意しなければならないのは、データ群を恣意的に作らないということです。恣意的にデータを選んでデータ群を作れば、どんな結果でも出すことができてしまいます。データ群を作る際には、機械的に期間を区切る等、人の意思が入らないように十分に注意しなければなりません。また、データの数も少なくとも数十個程度は必要だと思われます。

ただし、解析する統計量とは独立した情報によってデータを選別することは恣意には当たりません。例えば、通信記録や離席記録等の情報から、恣意性が入らないように十分に注意して、データを選別することは可能です。この時、恣意的にならないように情報の独立性を検証するには、通常時における同様の情報も必要になります。普段から情報を細かく記録しておくことが、統計的な不正判定においては重要になります。

以上、今回は統計的な不正判定における判定基準(有意水準)が具体的にどのようになるのかを考察しました。“冤罪”のリスク許容量が年間10万分の1程度である場合、それに応じて検定のハードルは高くなります。重大な処分を行う際に統計手法のみによって判断を下すことは現実的にはかなり困難だと言えます。統計手法はあくまでも補助として、不正の対策や防止に役立てるというのが本筋になるでしょう。「イカサマは現場を押さえる」のが原則だということです。また、普段から(疑惑が出てからではなく)対局時の情報を詳細に記録しておくことが、統計手法の精度向上につながります。さらに、検定を行う際には、通常時のデータを大量に解析する必要があり、また、データの性質に熟知する必要もあります。これらは俄かに行うことは困難ですので、普段から日常的にデータを解析していないと疑惑に対応することは難しいと思われます。

-------------------

付記:t検定

2つのデータ群の母集団がいずれも同じ標準偏差の正規分布に従う時、それら2つの母平均が一致しているかどうかを判定するのがt検定です。標準偏差が異なる場合にはウェルチのt検定となりますが、今回は通常時と一致しているかどうかを知りたいため、t検定で十分です。平均と標準偏差については「平均と標準偏差:それって不偏推定値?」の解説記事をご覧ください。

通常時のデータ群のデータ数をN、平均をM、標準偏差(正確には不偏分散の平方根)をUとし、検定したいデータ群のデータ数をn、平均をm、標準偏差をuとします。検定の趣旨から、N >> nであることが望ましいですが、そうでなくても検定はできます。

この時、母集団の正規分布の標準偏差の推定値Sは、

\[S = \sqrt{\frac{(N - 1) U^{2} + (n - 1) u^{2}}{N + n - 2}}\]

となり、N >> nならば、

\[S \approx U\]

となります。

もし2つのデータ群の母平均が一致しているのならば(帰無仮説)、検定統計量

\[t = \frac{M - m}{S} ( \frac{1}{N} + \frac{1}{n} )^{- 1 / 2} \approx \frac{M - m}{S} \sqrt{n}\]

が自由度N + n - 2のスチューデントのt分布に従いますので、tが有意水準の範囲内にあるかを調べることで検定が行えます。さらに、t分布は、Nが十分に大きければ(おおよそ自由度100以上)、正規分布とみなすことができます。

具体例として、本文中の一致率の例(M = 65%、U = 9%、Nは十分に大きい)において、1年分の50局から抽出されたデータ群(n = 50)を検定することを考えましょう。有意水準10万分の1は正規分布の片側確率で標準偏差の約4.3倍以上ですので、データ群の平均mが約70%以上なら「異常」だと判定できます。

-------------------

追記:一致率の手数依存性について(2016年11月20日)

西尾明六段がツイッター上において、

選択肢少なめで短手数、ある程度研究範囲内といった条件が揃い、さらに使用ソフトや探索時間を変えて解析すると(マルチスレッドでは同条件でも)高一致率を抽出しやすい。

チェスの論文でも言及されていましたが、短手数で高一致率が出るのはそんなに珍しいことではなさそう。手数と一致率の関係は調べておきたいですね。

と一致率の問題点を指摘しておられます(引用元:)。この中で特に「短手数」の問題は、とても重要だと思われるので、少し詳細に追記します。

通常、一致率は一局ごとに先手と後手に分けて計算されます。上記の記事内でも、そのような想定で考えられています。

しかしながら、各局で対象手数が異なっているため、全てのデータを同様に取り扱ってよいのか、特に短手数の棋譜の取り扱いには注意すべきではないかというのが西尾六段の指摘するところです。

具体的に短手数の場合には、以下の2点について、注意が必要になります。

  1. 短手数だと、事前研究部分の寄与が大きくなり、一致率が上がりやすい。
  2. 手数が少ないほど、一致率の標準偏差が大きくなり、平均から外れた値が出やすい。

実際に、具体例で見てみましょう。以下は、検証スレにおいて、CpRhsILe(統計)氏が計算した一致率(狭義一致率)のデータ(16棋士の七大棋戦における1秒技巧との一致率)に基づいています。ここでは、データの詳細や信頼性にはこだわらずに、一般に流布しているデータではどうなっているのかということに注目します。

このデータを勝ち棋譜と負け棋譜に分類して、対象手数が20~24手、25~29手というように5手ごとの区間に刻みます。区間内の棋譜数が10以上の区間のみを採用し、区間ごとに、手数の平均に対して、一致率の平均と標準偏差をプロットしたのが下の図です。

ittiritu

勝ち棋譜の一致率の平均は、短手数において、非常に大きくなっており、これが上記の注意事項の1に該当しています。

また、一致率の標準偏差も手数に対して全体的に減少しており、上記の注意事項の2の傾向も見られます。もし仮に各々の手が確率pで一致する独立事象だとすれば、対象手数をnとすると、一致率の分布は標準偏差\[\frac{\sqrt{p (1 - p)}}{\sqrt{n}}\]の2項分布となります。実際の標準偏差のデータは、相関の影響により、これらの理論曲線(赤線、青線)よりも大きめの値になっていますが、減少の傾向は概ね一致しているようです。

人間の値打ち」というイタリア映画があります。タイトルの通り、“人間の値打ち”とは何かを観客に問いかけて考えさせる作品であり、リアルで多彩な人間心理を巧みな演出で描いている魅力的な映画です。

原題の「Il capitale umano」(原作「Human Capital」)は“人的資本”と訳されるものであり、経済学において人間を労働力として見た時の資本として価値を表します。また、転じて、将来の所得の現在価値合計の期待値として、様々なリスク評価にも用いられています。

“人的資本”は、あくまでも人間の生産面での市場価値を表すものであり、個々の人間的な価値や命の値段とは別のものです。しかしながら、現実社会では、これらは複雑に絡み合って浸透し、もはや容易にほどけるものではなくなってしまっています。映画では、そのような現実が説得力を持って描かれています。

さらに近年では、人工知能の技術発展により、様々な分野において“人間の値打ち”が改めて問い直される状況が出現しています。“弱い人工知能”とされるコンピュータ将棋においても例外ではなく、将棋ソフトが強くなるにつれ、将棋界を取り巻く環境は大きく変容し、その中で様々な問題が提起されてきました。昨今の将棋ソフトを用いたとされる不正“疑惑”というのも、広い視野で見ると、そのような“人間の値打ち”が問われる出来事の一つなのかもしれません。

さて、今回は、個別具体的な案件には関わらず、一般論として、コンピュータ将棋を用いて統計的な不正判定を行う際のリスク評価について考えます。

一般的に、リスクの許容量は、利益とのバランスにより、社会的な合意に基づいて決められます。利益が大きければ、その分だけ大きなリスクも許容できるというわけです。合意の均衡点は、様々な基準の整合性から大まかに決まってきますが、現実の合意においては、リスクとコストとの関係や政治プロセス等も影響するため、かなりばらついたものになります。

また、リスクの許容量には、その行為に対する能動性/受動性も関係してきます。人間は、自ら積極的に行うことのリスクに対しては寛容ですが、受動的に発生するリスクに対しては不寛容であり、一般的に100~1000倍程度の許容量の差が生じるとされています。

具体的に、統計的な不正判定の場合には、主な利益は“競技の公平性”であり、主なリスクは“冤罪”であると考えられます。

“競技の公平性”にどれだけの価値を置くのかというのは難しい問題ですが、本質的には競技者と主催者とでよく話し合って決められるべきものだと思います。特に真剣に取り組んでいる競技者にとっては“競技の公平性”は傍から眺めているよりも極めて重要なものである可能性があり、その心情は決して軽んじてよいものではないでしょう。ただし、ソフト不正の場合には、競技者の健康には影響しないため、公平性と健康の二重の利益があるドーピング対策よりは利益が下回ると想定されます。チェスや囲碁等の国際大会においては他のスポーツ競技に準じてドーピング対策が行われているようですが、もしかすると何か参考になることがあるかもしれません(参考「チェスや囲碁にもドーピング検査があるって知っていますか?」)。

“冤罪”のリスクは、発生確率と発生した場合の損害の大きさを掛けあわせた期待値で見積もられます。後述するように、統計的な手法における発生確率は、何らかの判定基準を与えれば、具体的に推定することができます。損害の大きさについては、処分のやり方に依っており、例えば、ネット対局場でアカウント停止になるくらいの処分であれば、冤罪があってもほぼ実害はなく、発生確率が高くてもリスクは大きくなりません。一方で、処分が人生そのものに大きく影響を及ぼすようなものである場合には、発生確率を低く抑えないとリスクが巨大になってしまいます。

リスクの許容量は“競技の公平性”の価値と“冤罪”のリスクのバランスによって決められます。また、この際、競技者が合意に能動的に関わっているか、受動的であるかによってもリスクの許容量は大きく変わってきます。自ら決めた/合意した基準ならリスクが高くても納得できますが、他者に勝手に決められた基準だと高いリスクは納得し難いということです。リスクの許容量さえ決まれば、後は発生確率から逆算して適切な判定基準を定めることができます。

それでは、一般的にリスクの許容量はどれくらいなのでしょうか? 代表的な例を2つ紹介します。

1つ目は、自動車です。自動車は、移動手段や運送手段として社会全体に巨大な利益をもたらすものである一方で、交通事故によって失われる人命も多く、巨大なリスクも抱えています。また、交通事故での被害者は自ら運転している能動者である場合もあれば、同乗者や歩行者等の受動者である場合もあり、能動性/受動性は中間に位置します。

社会的に広く合意されている自動車のリスクの許容量は、年間1/10000人程度です。現在の交通事故死亡者数は、安全技術や医療技術の進歩により、年間1/20000人を切っており(将来、AIによる自動運転が普及すれば、さらに桁違いに減ると予想されます)、自動車のリスクは社会的に許容されていますが、かつて年間1/10000人に近づいた頃には「交通戦争」等と呼ばれて社会問題となりました。年間1/10000人なら、生涯を100年で換算しても生涯リスクは1/100程度(平均で半年程度の寿命短縮)ですので、自動車の利益と比較すると、何とか許容できると考えられているわけです。

2つ目は、食品の安全基準です。1つ1つの食品は代替品が豊富に存在するため、「パンがなければお菓子を食べればいいじゃない」と考えれば、社会的な利益はあまりない一方で、食中毒は命に係わるほどの重大な被害をもたらし得ます。また、被害がほぼ受動的であることも加わって、社会的なリスクの許容量はとても小さく、非常に厳しい安全基準が設定されています。

食品の安全基準(ADI、TDI)は、動物実験等によって悪影響がないとされる無有害作用量の1/100に定められており、人間の個体差を考慮しても生涯にわたり毎日摂取し続けても影響が出ないように設定されています。この時の1/100という安全係数は一見すると厳しすぎるのではないかと感じられるかもしれませんが、実験の曖昧さや人間の個体差を考慮すると必要なものです。

上記のことを踏まえると、統計的な不正判定によって人生を変えるほどの処分を行うという場合の“冤罪”のリスクの許容量は非常に大まかに年間1/100000人程度(自動車の許容リスクより1桁落とした程度)になるのではないかと想定されます。年間で10万人に1人なら、100年で1000人に1人程度という計算です。もちろん、この数字はものすごく大まかな話であり、実際に合意される数字は何桁か違ってくるものと予想されますが、叩き台として、ある程度は有用な数字にはなるかと思われます。

この年間10万分の1という確率は、特に研究者にとっては、小さすぎると感じられるかもしれません。普段1/20程度の有意水準を取り扱っていると、いきなり1/100000と言われても頭が追い付かないわけです。逆に言えば、それだけ“人間の値打ち”は桁外れに高いと言えます。

後述するように、年間10万分の1という確率は統計的に判断を下すにはかなり高いハードルになります。チェスの不正判定(※チェスの場合には各大会ごとに限定された処分であるため、その分だけ発生確率の設定はゆるいと思われます)において、統計的な判定のみをもって決定的な証拠とすることが基本的にはないというのは、このハードルの高さに由来するものと思われます(参考「チェスにおけるチート分析の原則」「チェスにおけるコンピュータ不正行為の歴史」)。

少し長くなってしまったため、リスクの許容量に基づく発生確率から逆算して判定基準を求める話は次回にまわします。

このページのトップヘ