効用という考え方

みなさんは「効用」という言葉をご存知でしょうか。

確率が絡む選択をする際に期待値が高い選択をした方が長期的に見て得であるということは周知の事実だとは思いますが、以前「期待値の罠」という記事の中で紹介した通り、期待値を追い求めることは必ずしも貴方の人生を豊かにはしません。

記事の中で言っていた「得かどうか」というのが効用の考え方にあたります。

 

具体的に例を挙げると、年収300万円のサラリーマンがサマージャンボ3億円に当選した時の嬉しさと、総資産10兆円以上と言われているAmazonのCEOジェフ・ベゾスが3億円に当選した時の嬉しさは同じでしょうか?

無機質に3億円の利益とみると同等ですが、実際に受け取る感情には大きな差があると思います。この嬉しさこそが効用です。

 

一般に、同じ額の金銭を得たときに受け取る効用は、お金持ちほど効用が小さく貧乏人ほど大きくなります。

このような一般論をモデル化し、関数にしたものを効用関数といい、U(x)=logxという形がシンプルな形としてよく用いられます。

 

では、「期待値の罠」で紹介したゲームを例に効用関数を当てはめてみましょう。

n回目に初めて表が出る確率は1/2^nで、受け取る賞金は2^(n-1)円です。

2^(n-1)円の賞金で得られる効用をU(x)=logxの効用関数にあてはめるとU(2^(n-1))=log(2^(n-1))=(n-1)log2となります。

 

よって、このゲームで得られる期待効用はΣ[k→∞](1/2^k*(k-1)log2)=log2となり収束します。

これは確実に2円貰えるゲームと全く同じ効用ですね。

 

このように、実際の行動の選択の際には効用を考えることこそが重要になってきます。

今は分かりやすいように金銭のみを効用関数の変数として設定しましたが、実際の選択には所要時間やその行為をすること自体に対する選好(例:重労働はしたくない、嫌いな人と一緒になるのが嫌だ、etc...)も関わってくるため、より複雑化します。

ただ、数理的にある程度モデル化した上でどのような効用があるかを知ることは自身の行動の指針になるため、意識しておいて損はないでしょう。

 

先ほどゲームに関しては発展系が実はあり、効用関数がU(x)=logxとしたときに貰える賞金が2^(2^n)と設定すると効用も発散してしまうという罠があります。

この時貰える賞金は4円,16円,256円,4096円,4.3*10^9円,...と確かに急増はしますが、ではこのゲームに1グーゴルプレックス*1円賭けるかと言われれば答えはノーでしょう。

 

このゲームはサンクトペテルブルクパラドックスと呼ばれ、様々な方法でその解決方法が検討されています。

気になった方は是非調べて、自分なりの解釈をしてみてはいかがでしょうか。

*1:1ゴーグルプレックス=10^(10^100)と定義されている

傘の大きさ

私は雨が嫌いです。

ジメジメした気候も、濡れてしまうことも、全部嫌いです。

農家や干ばつ地域など雨が必要な地域が必要なこともわかりますが、少なくとも都市部に雨が必要な理由は一つも見当たりません。

早く外殻で覆うか、地下で完結した都市が欲しいものです。

 

雨が嫌いな理由の一つにいくら傘をさしても足下が濡れてしまうことがあります。

大きめの傘を買いますが、それでも足下は濡れてしまいます。

そこで、どれくらいの大きさがあれば理論的に足下が濡れないか考えてみることにしました。

 

かなりモデルを簡略化するとして、高さ2m、半径r[m]の位置に傘の先端があり、雨粒が落下する速度は10m/s、風は5m/sで吹いており、雨粒は十分軽く、風と同じ速度で水平方向に移動するとします。

1m/sで歩いたときに傘の中心まで雨粒が届かない傘の半径rを求めてみましょう。

雨が2mの高さから地面に到達するまでの時間は2/10=0.2sです。

0.2sの間に傘を持っている人が移動する距離は0.2×1=0.2mで、

雨粒はその間に0.2×5=1m移動します。

 

よって、傘の半径が1.2m以上あれば傘の中心まで雨粒が到達しないことがわかります。

よくコンビニなどで売っている「65cmの傘」というのは親骨の長さが65cmなのであって、中心から先端までの実質半径は50-60cm程度になります。

つまり、濡れないためにはその倍以上の大きさが必要ということですね。

 

実際には、足は中心から離れていますし、人の足も等速運動しているわけではないですし、風上に傘の先端を向けるなど工夫をするため、このモデルとは異なるでしょうが、現実的には大きい傘を買っても、足下が濡れてしまうことは確定的に明らかです。

雨の日は、みなさん家に引きこもりましょう。

 

 

 

期待値の罠

まず、あるゲームの話をしたいと思います。

コインを投げて、1回目に表が出たらそこでゲームは終了し、裏が出たらもう一度コインを投げられます。

2回目で表が出たらまたそこで終了しますが、裏が出たらまた更にコインが投げられます。

こうして表が出るまでコインが投げ、表が出るの1回目なら1円、2回目なら2円、3回目なら4円、8円、・・・と貰える額が投げた回数ごとに倍々になっていくゲームがあるとすします。

表、裏が出る確率は同様に確からしいとして、あなたはこのゲームを1プレイ何円ならやるでしょうか?

 

「賞金少なすぎwこんなん10円でも期待値ないでしょw」と思った方、期待値を勉強しなおしましょう。

「賞金少なすぎwこんなん誰やらないでしょw」と思った方、直感的に正しい選択が出来ている素晴らしい数値感覚の持ち主です。

 

この二つは何が違うのでしょうか?それは「期待値」の話をしているのか「得かどうか」の話をしているのかの違いがあります。

 

まずは先ほどのゲームで貰えるお金の期待値を求めてみましょう。

期待値とは[起こる確率]×[貰えるお金の額]の総和で求められます。

1回目で表が出る確率は1/2、1回目裏が出て2回目に表が出る確率は1/2×1/2=1/4、・・・となり、n-1回目まで裏が出続け、n回目に表が出る確率は(1/2)^(n-1)×1/2=(1/2)^nとなります。

また、n回目に初めて表が出たときに貰える賞金は2^(n-1)円です。(2020年6月17日修正 ×:2^n ○:2^(n-1))

よってこのゲームの期待値はΣ[k=1→∞](2^k×(1/2)^k)=Σ[k=1→∞]1=∞となります。

つまり、このゲームの期待値は∞円なので、ゲーム参加料がいくらであっても、1億円であろうと1兆円であろうと、期待値的には参加した方が得、ということになります。

 

果たして、このゲームは本当に1億円出して参加する価値があるゲームなのでしょうか。

確かに、このゲームを時間の限りがなく、資金も無限にあり底をつきないとし、それこそ「無限に」プレー出来るのであればいくら出しても参加するべきです、無限の富を築けることでしょう。

しかし、人間の時間は有限ですし、資金も有限です。

無限の時間の果てに100回連続裏を引いて2^100円手にすることも出来ません。

それに、2^100円手にしても使い切ることは出来ません、毎秒5000兆円消費しても800万年以上かかります。

このようなあり得ない馬鹿げた額の賞金も含めた期待値を考えているため無限に発散するのであり、実際にこのゲームを現実的な範囲内で得かどうかを判断する際には考慮すべきでないのです。

 

 

これが期待値の罠です。

期待値を追い求めることも大事ですが、用法・用量を守って正しく使いましょう。

相関と因果

お昼の情報系番組などを見ているオタクやゲーマーは犯罪者予備軍だ、という話をたまに聞くと思います。

実際に僕は統計を取ったわけでも、何かの情報を見た訳でもないので、ここでは一旦その真偽については置いておきましょう。

 

今回書きたいのは「オタクと犯罪者には相関がある」ということを正しいとした時に、それが単に相関があるだけなのか、因果関係があって相関しているのか、を考えることが重要であるということです。

 

そもそも相関がある、とは何でしょうか。

 

わかりやすいように具体例を挙げて説明します。

高くても不味いご飯もあるし、安くて美味しいご飯もありますが、基本的には高い物の方が美味しいことが多いです。こういった時価格の上昇に伴って美味しさも上昇するようなとき、「ご飯の価格」と「ご飯の美味しさ」は正の相関がある、と言います。

実は認知的不協和というのが働き、高いお金を払った方がご飯を美味しく感じるのですが、少なくとも正の相関を否定するほどの力はないでしょう。

 

 

 

一方で因果関係とは、二つの事象の間に原因と結果があることを言います。

例えば、アメリカ人と英語が話せる人、これはアメリカで生まれた結果、母国語である英語を話せるようになった、という因果関係が存在します。

因果関係がある場合、基本的には相関が生まれます。

 

ここで問題です、「ドイツ語がそこそこ出来る日本人」と「ドイツに住んだことがある日本人」はどのような関係にあるでしょうか。

これは、ドイツに住むことによってドイツ語がそこそこ出来るようになった、或いはドイツが出来る結果留学や駐在の仕事をするようになった、といった原因と結果の関係が見いだせるため、因果関係もあり、間違いなく相関もあるでしょう。

 

では、「英語が出来る人」と「仕事ができる人」ではどうでしょうか。

英語が出来るような勤勉な人は仕事もスマートにこなすでしょうし、ある程度相関はありそうです。しかし、因果関係はどうでしょうか?

勿論翻訳や外資系、英語を使うような業務においては役に立つかもしれませんが、一般的に英語が出来ることは仕事の遂行には影響しません。

こういった、相関はあるが因果関係が存在しないものは多く存在します。

因果関係がある→相関がある、は真ですが、相関がある→因果関係がある、は必ずしも成り立ちません。

 

最初に例を挙げたオタクは犯罪者予備軍かという話ですが、仮にオタクに犯罪者が多いとしましょう。

相関関係はあるため、オタクを見て犯罪者傾向にある、即ち犯罪者予備軍である可能性も平均よりはという考えもあながち間違いではありません。

しかし、オタクになることで犯罪を犯してしまうようになってしまうかというと、そこに因果関係を見いだせない限りは全くそのような主張は正しくありません。

 

因果関係がある時に相関があるため、相関を見ると因果関係を疑うこと自体は良いと思います。

しかし、その先の結論を出すときは必ず因果関係を確認してからにしないと、あらぬ間違いを犯すことになってしまうかもしれません。

続・数学は人生を豊かにする

前回、数学は豊かにするという記事で、「数学なんて学んで人生の何の役に立つのか」ということは、論理的思考力を鍛えるられるので本質的に見ると誤りであるという話をしました。

その際に表面的には大体正しいということも言いましたが、今日は表面的にも誤りである例をあげたいと思います。

 

数学という学問も、人生の様々な場面で役に立つ単元があります。それは「確率」です。

先の記事を読んで尚、数学なんて役に立たねーよと思う人も、この二つだけは学んでおいた方が身のためです。

 

最近よく話題に上がっている「1万人に一人が罹患している病気を、正しい結果が99%で出る検査を1億人が受診し、陽性と出た人が本当に陽性である確率は?」みたいな問題も、確率の単元の一つである条件付き確率というものです。

 

この問題の答えはおよそ0.98%で、偽陰性が100人ということになるのですが、こうした机上の空論、非現実的なケースの想定はどうでも良いとして、皆さんのもっと身近に「確率」を活用する場面はあります。

 

例えば、ソシャゲのガチャで目当てのSSRを引きたい時にどれくらいで引けるのかとか、宝くじ*1や競馬の馬券*2を購入したときの期待値だとか、決め事をするときに8人でじゃんけんしてあいこが出る確率*3とか、です。

 

ソシャゲのガチャはFGOのダブルピックアップを例に取ってみると、ピックアップされている☆5サーヴァント単体の排出率は0.4%です。

期待値的には250連で引ける訳ですが、250連以内に引ける確率はおよそ64%というのは皆さんも聞いたことがあるかもしれません。聞いたことがない方は必ず覚えてください。

 

では、1万円(60連)以内に引ける確率はいくつでしょう?

1-(0.996)^60≒21.3%となります。

同様に2万円では38.2%、3万円は51.4%、4万円で61.8%、5万円で70.0%・・・となります。

5万円なくなるまでに引けるかどうかが、ちょうどポケモンでいうかみなりが当たるかどうかくらいの確率なことがわかりました。

 

では、10万円(600連)に引けない確率はいくつでしょう?

0.996^600≒9.0%となります。

なんと、11回に1回くらいは10万円かかってしまうんですね。怖いですね。

 

勿論何度も何度も星5ピックアップを挑戦すれば大体期待値の250連(4万2000円程度)には落ち着くのですが、確率が収束するのにはかなり時間がかかります。

だからこそ、ガチャは射幸心が高いのですが・・・。

 

このように確率を何となく、で捉えるのではなく実際にどれくらいの数値なのか計算する癖をつけることでより実態に即した予想が可能になります。

どれくらいガチャにお金を投じられるかを事前に考えることが出来るため、建設的なお金の使い方を考えられるようになり、人生をより豊かに出来るんですね。

実際にはコンコルド効果なども働いて一度ガチャを始めるとやめられなくなってしまうのですが、それはまた別のお話・・・。

*1:期待値上は300円買うと、約150円返ってくる

*2:馬券の種類にもよるが期待値上は100円買うと、約75円返ってくる

*3:あいことなるのは1-3×(2^8-1)/3^8≒88.3%

数学は人生を豊かにする

「数学なんて学んで人生の何の役に立つのか」という話をよく見ます。

これは表面上は大体正しいのですが、本質的には間違っています。

なぜ、本質的に誤っているかというと、数学は論理的思考力を鍛えられるからです。

 

英語は英単語や文法を覚えなければいけませんし、化学は構造式や反応を覚えないといけません。

このように、多くの他の受験科目は知識を身に付けることを要求されます。

活用できる場は限られるとはいえ、知識を身に付けることで「人生の役に立つ」と感じているのだと思います。

 

しかし、数学は身に付けるべき知識はそれほど多くありません。

公式や定理を覚える必要はありますが、実際求められのはそれをどのように活用して設問に答えるか、ということです。

公式や定理を利用しどのようなアプローチで解くべきか、をいくつか用意した上で、今問われている設問はどのような手段を取れば解けるのか、を論理的に導き出す必要があります。

実際にその設問が解けること自体にはほとんど何の価値もないせいで「数学なんて人生の何の役に立つのか」と感じる人が多いのだと思いますが、この過程で磨かれる論理的思考力が数学を学ぶ意義と言えます。

 

論理的思考力がどのように人生において活きてくるかというと、日頃から論理的に考えることで「なんとなく」で選択することが減ります。

例えば、一昨日の記事で書いたことを少し絡めると、スキルを身に付けるときにただ闇雲に時間をかけるのではなく、「どのようにすれば上達するか」を論理的に考え「正しく努力する」ことでより効率的に身に付けることができます。

他にも僕が大好きな麻雀でも「なんとなく」で切る牌を選ぶのではなく、論理的に最も期待値が高い選択をすることが勝つためには必要です。

 

「数学は人生の役に立たない」と思う人は多くいると思いますが、「なんとなく」役に立たないと思ったのか、「論理的に考えて」役に立たないと思ったのか、貴方はどちらでしょうか?

正しく努力するということ

今日は「努力」ということについて少し書きたいと思います。

 

私が今までの人生の中で努力したこと言えば、麻雀と受験勉強くらいだと思います。

麻雀を知っているだけの人に比べれば少し成績は良いですし、一浪したとはいえ東京大学に合格させていただいたように、結果も伴っていると言えます。

 

ただ、麻雀も、受験勉強も、上達のためにガリ勉のように朝から晩まで他の全てかなぐり捨ててまで時間を投じたかというと、そうではないように思います。

(麻雀に関しては勉強と言うよりも単純にやり過ぎて留年してしまいましたが・・・)

 

特に受験勉強に関しては、難関大学を目指す受験生の中では、お世辞にも時間をかけたとは言えない程度の勉強時間しか確保していませんでした。

しかし、それでも私は人よりも受験勉強のために「努力」したと思っていますし、その結果が現れていると考えています。

 

受験勉強に限らず、スキルの上達の早さの話になると必ず出てくるのが「才能」と呼ばれる概念です。

 

「あいつは才能があるから良いよな」

「俺には才能がないから努力したって無駄だ」

「僕にだって才能があれば」

 

この「才能」という概念、何故か自分にはない(と思っている)人の口から語られることがほとんどです。

確かに、自ら「才能」がある、と自慢するのは不遜ですし、謙虚な発言をしている限りは出てこないでしょう。

しかし、はたしてそれだけが原因でしょうか?私はそうは思いません。

 

持論としましては、「才能」を持っているとされている人間の多くは「正しく努力できる」と思っています。

ここで言う「正しく努力する」とは、決して「努力できることが才能」なんていう陳腐なものではなく、技術の向上というアウトプットを得るために何をする必要があって、そのために取るべきアプローチを正しく選択し実行できる、という意味です。

例えば、受験勉強で例えると、ある単元の問題を解くのに必要な前提知識は何かを把握し、その前提知識を身につけ(参考書を読む、公式を覚える、成り立ちを理解する、etc...)、どのような問題のパターン(具体的ではなく、より抽象的に類型化)があるかを網羅した上で、それぞれのパターンについてどのように解くべきかを考え、解放を一つ一つ身につけていく、ことでマスターしていきます。

 

これを理解せずに、ただ数をこなして時間だけを浪費し、努力した気になってしまっていることが、往々にしてあります。

勿論やらないよりはマシ、なのですが、場合によっては昼寝でもしていた方が人生のタメになることもあるでしょう。

 

少しでもゲームや漫画を読む時間を増やすために、ニコニコ動画でくだらない動画を見て笑うために、私は勉強時間を少しでも短く出来るように努めました。

結果、幸運にも「正しく努力する」ことを意識するようになったと思っています。

 

よく毎日何時間勉強/鍛錬しなさいと言われることがあると思いますが、費やした時間そのものには何の価値もなく、重要なのはどれだけ求めているアウトプットに近づけたかです。

逆に言えば、アウトプットがなければ、何時間費やそうがただの時間のムダ、です。

 

確かに、盲目的に言われたことをただただこなすことは、終われば何となく達成感も感じられますし、楽に実行出来てしまいます。

しかし、そうして「正しく努力する」ための努力を行わないことは思考放棄、怠慢だと思います。

 

「才能」があるされ、「正しく努力する」ことを続けるものは、誰よりも勤勉で、努力家だと、私はそう思います。