【数学こぼれ話】【Token】「何も起こってない」ディフォルト状態としての正規分布

観測原点(Oo=Observation origin)0と観測極限(Ol=Observation limit)$\tilde{∞}$を両端とするユークリッド幾何学的実数直線l、およその任意の位置に存在する観測点(Op=Observation point)pから出発する。なお$\tilde{∞}$は「符号なし無限遠点(Unsigned Infinity)」を意味するものとする。
![スクリーンショット 2023-10-20 7.21.42.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/5979894a-4c3e-0fa5-00d0-dcdd3f031157.png)
[【数理溢れ話】【Token】実数概念の代用品としての「連続有理数集合」](https://qiita.com/ochimusha01/items/6c0291a29b781167ab99)

ここでは観測原点と観測限界の2点の間に横たわる観測点$p_i(0≦i≦\tilde{∞})$の集合に注目しよう。とりあえずまだ距離も角度も不定(Indefinite)なので名義尺度集合(Nss=Nominal scale set)を構成するのみ。
[名義尺度・順序尺度・間隔尺度・比例尺度](https://digimarl.com/syllabus/data-science-no10/)

視覚的イメージとしては東京駅にある尿道結石めいたモニュメントのあの感じ。
![スクリーンショット 2023-03-25 19.34.03.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/9162769e-a66b-c26c-61e8-d05e2fac600a.png)

このままでは手の施し用がないので無限N次元対角線に拡張する。多少各次元の値や相関に偏向があったとしても、どこまでも(無作為次元を無制限に追加し続ける)巨視的俯瞰操作を続けていけば、究極的には「各評価次元が距離１で対応する直交座標系上の対角線」と見做せるであろう。そしてユークリッド距離の計算に従うなら、2次元単位方眼上の正方対角線の長さがって$y=\sqrt{1^2+1^2}=\sqrt{2}$、3次元単位方眼上の立方対角線の長さが$y=\sqrt{1^2+1^2+1^2}=\sqrt{3}$なのでN次元対角線の長さは$y=\sqrt{N}$となる。そしてこの計算を続けると「何も起こってない場合のデフォルトの分布」正規分布(Normal Distribution)へと辿り着く。
![スクリーンショット 2023-10-20 18.33.58.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/3bc027bd-6591-d78d-c5eb-7abb9070267d.png)
[確率密度空間と累積分布空間①記述統計との狭間](https://qiita.com/ochimusha01/items/28b68c8783fb3d3a719d)
[確率密度空間と累積分布空間②中心極限定理の可視化](https://qiita.com/ochimusha01/items/3743dd3fa91e8aa76e08)
ぶっちゃけ何を計算してるのか？　最初に発見した数聖ガウス(Johann Carl Friedrich Gauß 1777年-1855年)は天文台長でもあったので、これを観測に必ずつきまとう手ブレの一種と考えた。手ブレそのものをなくす事は出来ないが、大きな手ブレほど出現頻度は減るし、外れ値として除外するのもやさしい。それで測定誤差は大体こんな感じで分布すると考え、試してみたら実際にその通りだったという訳である。単純に数理の世界だけで完結せず、観察結果との突き合わせが必要だった辺りがミソ。
[Wikipedis「誤差関数(ERF=ERror Function)」](https://ja.wikipedia.org/wiki/%E8%AA%A4%E5%B7%AE%E9%96%A2%E6%95%B0)

```python
import matplotlib.pyplot as plt
import numpy.random as random
import matplotlib.patches as patches
import matplotlib.animation as animation
%matplotlib inline
fig = plt.figure()
ax = plt.axes()
N=1200 #ここを順次変えていく。

def circle_draw(n):
    plt.cla()
    a = random.normal(0,1,N)
    b = random.normal(0,1,N)
    plt.title("Concentric Circles")
    plt.ylim([-4.0,4.0])
    plt.xlim([-4.0,4.0])
    plt.scatter(a, b, s=20, c='k',alpha=0.4)
    # 同心円描画
    plt.plot(np.mean(a),np.mean(b),marker='x', color='green')
    circle1=patches.Circle((np.mean(a),np.mean(b)),radius=1, fill=True, color='gray',lw=0.5,alpha=0.5)
    circle2=patches.Circle((np.mean(a),np.mean(b)),radius=2, fill=True, color='gray',lw=0.5,alpha=0.2)
    circle3=patches.Circle((np.mean(a),np.mean(b)),radius=3, fill=True, color='gray',lw=0.5,alpha=0.2)
    circle4=patches.Circle((np.mean(a),np.mean(b)),radius=4, fill=True, color='gray',lw=0.5,alpha=0.2)
    circle5=patches.Circle((np.mean(a),np.mean(b)),radius=5, fill=True, color='gray',lw=0.5,alpha=0.2)
    circle6=patches.Circle((np.mean(a),np.mean(b)),radius=10, fill=True, color='gray',lw=0.5,alpha=0.2)    
    ax.add_patch(circle1)
    ax.add_patch(circle2)
    ax.add_patch(circle3)
    ax.add_patch(circle4)
    ax.add_patch(circle5)
    ax.add_patch(circle6)
    ax.set_aspect('equal', adjustable='box')

#circle_draw(1)
#plt.show()

ani = animation.FuncAnimation(fig, circle_draw, interval=50,frames=10)
ani.save("circle_draw51200.gif", writer="pillow")
#ファイル名も順次変える。
```
N=2の時の「平均のブレ」
![68747470733a2f2f63646e2d616b2e662e73742d686174656e612e636f6d2f696d616765732f666f746f6c6966652f6f2f6f6368696d7573686130312f32303231303631372f32303231303631373036313830362e676966.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/9d2235d5-2f3a-0355-13da-866fc2788722.gif)
N=15の時の「平均のブレ」
![68747470733a2f2f63646e2d616b2e662e73742d686174656e612e636f6d2f696d616765732f666f746f6c6966652f6f2f6f6368696d7573686130312f32303231303631372f32303231303631373036323230362e676966.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/a5ad02b9-cff2-77ec-ceb4-b26307555988.gif)
N=30の時の「平均のブレ」
![68747470733a2f2f63646e2d616b2e662e73742d686174656e612e636f6d2f696d616765732f666f746f6c6966652f6f2f6f6368696d7573686130312f32303231303631372f32303231303631373036323634362e676966.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/c2ae2aa8-2f68-f9a7-cbe8-ff22adb37a93.gif)
N=1200の時の「平均のブレ」
![68747470733a2f2f63646e2d616b2e662e73742d686174656e612e636f6d2f696d616765732f666f746f6c6966652f6f2f6f6368696d7573686130312f32303231303631372f32303231303631373036333434312e676966.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/597772/c107573e-6d97-732a-ee5c-ff63f007e530.gif)
しかしながら、19世紀も後半に入ると産業革命導入の影響で近代都市計画の一環としての社会調査が普通に行われる様になり、欧州各国で社会学が勃興。科学的実証主義の観測対象も空を渡るごく少数の天体から人間や動物や細菌の集合に推移し、そこでもこの分布に基づく分析は有効だったので(そうここでも「観察結果との突き合わせ」という話が出てくる!!)、この計算式が立脚する分布は現代社会において「何も起こってない場合のデフォルトの分布」としての地位を確固たるものとしたのだった。逆を言えば、この「なんでもない事(誤差の範囲)」なる棄却基準を超える事が「有意味な事象」である事の重要な条件と見做される新展開を迎えたとも。