A. 高斯正態分布
正態分布,一般都只會講公式,怎麼證明的就不提了。我遇到這傢伙有兩個地方:一個是高中數學課上;一個是本科《誤差理論和測量平差》課上。找點資料,想自己推到一下如何得到高斯正態分布的公式。
正態分布(Normal distribution),也稱「常態分布」,又名高斯分布(Gaussian Distribution)。我習慣合起來叫 高斯正態分布 。(剛好和Linux Distribution: linux發行版 的英文單詞一樣)
期望(平均數):μ
標准差 ,
方差 為。
當 和 時候稱為: 標准正態分布 。
matlab繪制正態分布概率密度函數圖像的命令為normpdf,normpdf函數的調用格式為normpdf(x,mu,sigma),其中mu為0,sigma為1時,為標准正態分布。
在高斯分布中有三個數學符號,先來解釋這個三個數學符號的含義,然後再說明這個公式的推導思路和推導方法。
三個符號 在數學上分別叫做平均值(又稱數學期望),標准差,自然數。即:
平均值(又稱數學期望):
標准差:
自然數:
對於數據:
平均數:
語言解釋: 平均數 就是所有數加起來的和除以數據個數n。
數學的含義是:數據中間位置的具體數值。
詳細說明方差方差和標准差之前,先復習一下關於 勾股定理 (在西方又稱 畢達哥拉斯定理 )和 平面兩點間距離公式 。
在直角三角形中,對於邊長a,b,c有如下關系:
即
在平面坐標系x-o-y下對任意兩點 間的距離D有:
通過勾股定理和平面兩點間距離公式可以看出,型如
表示的含義為兩個之間的距離。數值越小,證明兩個之間越近。
一組數據,平均數是這個數據的中心,那麼就可以用其他數據到平均數的距離來衡量數據和平均數的遠近關系。即這組數據是聚攏一些呢,還是分散一些呢。
方差
因為距離D是需要開方的,所以 方差的含義是距離的平方 。對開方後的方差稱為標准差 。
假設有兩組數據:
說明兩組數據的中間值數值一樣,且都為零。平均值可以諒解為此數組中的中心位置。
即 說明:
A組數據之間的距離較小,數據較聚攏;
B組數據之間的距離較大,數據較分散;
從 歐拉公式看出,把字母e定義成自然數,和歐拉是有直接關系的。倒不太相信網路里說的 歐拉選這個字母的原因,不太可能是因為這是他自己名字Euler的首字母,因為他是個很謙虛的人,總是恰當地肯定他人的工作。
其實從這個公式還是不太能看出來e=2.71828,一開始誰會想到這個式子就極限就是自然數e呢。
但我們可以從對數和指數的關系來聯系e是怎麼來的。
利用對數運算性質中的化平方為相乘的特性,我們知道自然數在對數運算中是最常用的底數。
對於對數運算:
對於指數求導
那麼如果 就好了,a等於多少,才會使得 呢?
恰巧a等於自然數e的時候,lne=1.
於是,可以將a=e帶入指數求導公式:
對函數求導後依舊是其本身,這是一個很好的性質。
е主要出現在涉及增長的地方,比如說經濟增長、人口增長、放射性衰變等,可以說е代表了自然率之美。
比如某個市人口為120萬人,每年的人口增長率為20%:
一年後人口:100萬+100萬x20%=100萬(1+20%)=120萬
兩年後人口:120萬+120萬x20%=120萬(1+20%)=100萬(1+20%)(1+20%)=
三年後人口:=
四年後人口:=
X年後人口:=
當人口增長率不可能一直保持20%,因為生存空間有限,增長率應該是隨著時間而降低的。假設增長率和時間X成反比,即增長率為
那麼上述人口增長的數學模型可以抽象為:
當我們想知道很多年後的人口增長,即時間X趨向無窮 的人口時候即可得極限:
為什麼正態分布如此常見
為什麼數據科學家都鍾情於最常見的正態分布?
B. 怎麼用MATLAB產生2維或者多維的高斯分布數據
x=randn(m,n)就是二維的高斯分布函數,例如:
x=randn(5,6)便產生5行6列的二維的 高斯分布函數:
ans =
-0.4326 1.1909 -0.1867 0.1139 0.2944 0.8580
-1.6656 1.1892 0.7258 1.0668 -1.3362 1.2540
0.1253 -0.0376 -0.5883 0.0593 0.7143 -1.5937
0.2877 0.3273 2.1832 -0.0956 1.6236 -1.4410
-1.1465 0.1746 -0.1364 -0.8323 -0.6918 0.5711
三維的:randn(m,n,p);依此類推。
例如randn(2,3,4):
ans(:,:,1) =
-0.3999 0.8156 1.2902
0.6900 0.7119 0.6686
ans(:,:,2) =
1.1908 -0.0198 -1.6041
-1.2025 -0.1567 0.2573
ans(:,:,3) =
-1.0565 -0.8051 0.2193
1.4151 0.5287 -0.9219
ans(:,:,4) =
-2.1707 -1.0106 0.5077
-0.0592 0.6145 1.6924
當然也可以自己構造兩個一維的數據,再自己把之相乘,合成一個二維的數據,但是最簡單的方法,還是直接用函數randn(),
給出的是均值為0,方差為1的高斯正態函數的分布的數值。
C. excel怎麼畫高斯分布
高斯分布圖也就是正態分布圖,製作方法如下:
正態分布應用最廣泛的連續型概率分布。通常所說的正態分布曲線指的是正態分布的密度函數的圖像。其特徵是「鍾」形曲線。
正態分布曲線一種概率分布。正態分布是具有兩個參數μ和σ^2的連續型隨機變數的分布,第一參數μ是遵從正態分布的隨機變數的均值,第二個參數σ2是此隨機變數的方差,所以正態分布記作N(μ,σ2)。遵從正態分布的隨機變數的概率規律為取μ鄰近的值的概率大,而取離μ越遠的值的概率越小;σ越小,分布越集中在μ附近,σ越大,分布越分散。
正態分布的密度函數的特點是:
關於直線x=μ對稱,在μ處達到最大值,在正(負)無窮遠處取值為0,在μ±σ處有拐點;
它的形狀是中間高兩邊低,圖像是一條位於x軸上方的鍾形曲線;
曲線與x軸圍成的面積為1;
當μ=0,σ^2=1時,稱為標准正態分布,記為N(0,1)。
正態分布曲線畫法:
1、可通過計算機中Excel、matlab、幾何畫板、geogebra等軟體來實現;
2、通過其特點,可以動手畫出大致圖形;
大致圖像如下:
1、μ對圖像的影響:
向左轉|向右轉
D. GAN 擬合高斯分布數據Pytorch實現
GAN本身是一種生成式模型,所以在數據生成上用的是最普遍的,最常見的是圖片生成,常用的有DCGAN WGAN,BEGAN。目前比較有意思的應用就是GAN用在圖像風格遷移,圖像降噪修復,圖像超解析度了,都有比較好的結果。目前也有研究者將GAN用在對抗性攻擊上,具體就是訓練GAN生成對抗文本,有針對或者無針對的欺騙分類器或者檢測系統等等,但是目前沒有見到很典範的文章。好吧,筆者有一個項目和對抗性攻擊有關,所以要學習一下GAN。
GANs組成:生成器和判別器。結構如圖1所示
針對問題: 給定一批樣本,訓練一個系統能夠生成類似的新樣本
核心思想:博弈論中的納什均衡,
判別器D 的目的是判斷數據來自生成器還是訓練集,
生成器G 的目的是學習真實數據的分布,使得生成的數據更接近真實數據,
兩者不斷學習優化最後得到納什平衡點。
D( x) 表示真實數據的概率分布,
G( z) 表示輸入雜訊z 產生的生成數據的概率分布
訓練目標:G( Z)在判別器上的分布D( G( Z) ) 更接近真實數據在判別器上的分布D( X)
接下來就來實現我們的例子把,目標是把標准正態分布的數據,通過訓練的GAN網路之後,得到的數據x_fake能盡量擬合均值為3方差為1的高斯分布N(3,1)的數據。
可以看出生成器其實就是簡單的全連接網路,當然CNN,RNN等網路都是適合GAN的,根據需要選擇。
可以看出判別器其實也是簡單的全連接網路,當然CNN,RNN等網路都是適合GAN的,根據需要選擇。
在這里想說的是對於判別器和生成器的訓練是分開的,訓練判別器的時候固定生成器,訓練生成器的時候固定判別器,如此循環。本例子中先訓練三次判別器,接著訓練一次生成器。
為了便於理解具體訓練過程,圖2 、圖3展示了判別器和生成器訓練時的數據流向,具體就不展開了,參考注釋。
畫圖函數敬上
然後調用main()函數就好了
紅色是目標分布,藍色是生成分布,還是有一定效果的額。
感受到是在調參了,請教我如何學習生成(xie)對抗(lun)網路(wen)。
E. 如何實現二維高斯擬合 matlab
你可以參考這個例子。用matlab 將一組數據進行正態分布擬合,你可以在基礎上修改,實現過程如下:
x=[。。。];y=[。。。];z=[。。。];
x=[xy];y=z;
func=@(a,x)二維高斯表達式
a0=[0 0 0 0];
[a,r] = nlinfit(x,y,func,a0) %函數擬合得到其正態分布參數,
式中:μ1=a(1),σ1=a(2),μ2=a(3),σ2=a(4)
r是殘值(即z與z1的差值)
F. 如何產生滿足高斯分布的隨機數據
這篇?:
就這個就可以了,不用改進法
正態分布的隨機數發生器 in C#
主要參考《Numerical Recipes in C++ 2/e》p.292~p.294 和《Simulation Modeling and Analysis
3/e》p.465~p.466。
Box 和 Muller 在 1958 年給出了由均勻分布的隨機變數生成正態分布的隨機變數的演算法。設 U1, U2 是區間 (0, 1) 上均勻分布的隨機變數,且相互獨立。令
X1 = sqrt(-2*log(U1)) * cos(2*PI*U2);
X2 = sqrt(-2*log(U1)) * sin(2*PI*U2);
那麼 X1, X2 服從 N(0,1) 分布,且相互獨立。等於說我們用兩個獨立的 U(0,1) 隨機數得到了兩個獨立的 N(0,1)隨機數。
G. (三)高斯變數的條件模擬
1.模擬的范圍
為使模擬區域的3個主方向與變差函數的3個主方向一致,有必要按前述方向將礦區的坐標系統按順時針方向旋轉10°,鑒於計算機硬碟空間和計算機時的限制,我們模擬的區域只限制在1538m水平標高至1588m水平標高之間,在沿走向方向上的長度為425m,垂直於礦體走向方向上的寬度為120m的長方體空間范圍內,在此范圍之內包含了3層探礦坑道,即PD1538,PD1554及PD1584,條件模擬的網格設置為沿走向方向節點間隔為2.5m,垂直於礦體走向方向上的節點間隔為1m,在鉛垂方向上為2.5m,這樣總共模擬的結點數為408000個,這主要是考慮到一方面采樣的密度,另一方面前人的工作經驗,uLsfer於1985年提出如果結點間隔大於變差函數變程的1/4,那麼變差函數的變程就很難驗證要模擬的數據。在進行條件模擬過程中,估計鄰域的確定必須要考慮到變差函數的變程大小,同時還考慮了在每一個模擬點,至少有兩個信息樣在估計鄰域內,所以,在3個方向上估計鄰域的半徑分別設置為在主方向為40m,走向方向為20m,垂直礦體走向方向為8m。
2.條件模擬的結果
對於任何一個模擬來說,隨機數發生器的根必須取一個較大的值,對於不同的根就會產生不同的現實,另外,轉向帶的數目也是模擬的關鍵參數之一。本次研究中它們分別設置為125793(軟體設置的缺少值)和1000(通常應設置為大於40的正整數)。
眾所周知,一個模擬只是區域化變數變異性的一個現實,如果我們進行了大量的模擬,則它們的結果雖各不相同,但總有一些代表著礦體的真實變化性,這樣地質學家或采礦工程師就可以結合自己對礦床的認識從中選取一個能真正反映礦體內變化特徵的模擬結果。鑒於時間因素,本次研究中,只進行了3個條件模擬,而且所使用的參數都相同,其結果之間存在著一定差異,下表就給出了它們的統計結果。
坑道樣品條件模擬的結果統計表
相應的實驗變差函數曲線見下圖,從圖中可以看出這3組條件模擬的實驗變差函數在各方向上表現出既有相同之處又有不同之處,首先在水平面內,模擬1與模擬2的結果十分相近,而模擬1的變程略有增大,在沿走向方向上,模擬2和模擬3幾乎完全一致,而模擬1的基數略有下降,而在沿傾向方向上,模擬1和模擬2的結果十分吻合,而模擬3卻表現出嚴格遞增的趨勢。
通過與信息樣的實驗變差函數曲線的比較可以發現,模擬1和模擬2的實驗曲線都在一定程度上偏離了原始樣品的曲線,只有模擬3的實驗曲線與原始樣品的曲線較吻合,雖然在沿傾向方向上的實驗曲線的變程較短,但主要是由於模擬區在該方向的范圍較小,無法達到變程的要求,所以,在實驗曲線上表現為嚴格遞增區。
所以單純從變差函數的角度考慮,我們認為模擬較好地反映了礦脈在1538m標高及1584m標高之間的變異性。
(3)條件模擬結果與坑道樣品揭示的礦體幾何形態的比較
在地質勘探工作中,沒有任何一種方法比坑道更能准確地揭示礦體的邊界、確定礦體的連續性。因而,與坑道樣品所揭示的結果進行比較,將會更有力地說明條件模擬結果的優劣。下面分別繪出的1538m標高,1554m標高及1584m標高處的條件模擬平面圖及坑道采樣平面圖。從圖中可以看出:
1)條件模擬所揭示的礦體密度遠遠大於坑道樣品揭示的礦脈寬度,但是在脈體內部出現大量的「空白點」(模擬值很低),說明並不是有黑影的位置上部是礦體,這需要地質人員根據野外勘查結果加以區分,並且使礦體連續化。
2)在沿礦體的走向方向上模擬所揭示的礦脈連續性較差,尤其是1538m標高上,在礦脈的北段表現極為零亂,而野外工作人員卻能根據自己的認識連續地將礦體往南延續,所以說條件模擬並不能加入人為因素而只是一種統計意義上的結果。
3)在1554m標高上模擬所揭示的礦脈長度將遠大於坑道所揭示的礦脈長度,在模擬區域的北半部的坑道內沒有採集任何樣品,而在其下部的1538m坑道內及上部1584m標高的坑道內均有樣品揭示有礦脈存在,根據統計意義,在其中部也應有礦脈存在,所以這種差異可能由於礦脈變化太復雜,在一個很短的距離范圍內礦脈突然尖滅,也可能由於坑道遺漏了確定存在的礦脈所以有待於進一步驗證。
條件模擬變數實驗變差函數曲線圖
4)通過對3個模擬結果與坑道樣品比較發現,無論是礦體連續性上還是礦體的空間位置與形態上模擬3均優於模擬1和模擬2。