A. 常見的分類方法
主要分類方法介紹解決分類問題的方法很多[40-42] ,單一的分類方法主要包括:決策樹、貝葉斯、人工神經網路、K-近鄰、支持向量機和基於關聯規則的分類等;另外還有用於組合單一分類方法的集成學習演算法,如Bagging和Boosting等。
(1)決策樹
決策樹是用於分類和預測的主要技術之一,決策樹學習是以實例為基礎的歸納學習演算法,它著眼於從一組無次序、無規則的實例中推理出以決策樹表示的分類規則。構造決策樹的目的是找出屬性和類別間的關系,用它來預測將來未知類別的記錄的類別。它採用自頂向下的遞歸方式,在決策樹的內部節點進行屬性的比較,並根據不同屬性值判斷從該節點向下的分支,在決策樹的葉節點得到結論。
主要的決策樹演算法有ID3、C4.5(C5.0)、CART、PUBLIC、SLIQ和SPRINT演算法等。它們在選擇測試屬性採用的技術、生成的決策樹的結構、剪枝的方法以及時刻,能否處理大數據集等方面都有各自的不同之處。
(2)貝葉斯
貝葉斯(Bayes)分類演算法是一類利用概率統計知識進行分類的演算法,如樸素貝葉斯(Naive
Bayes)演算法。這些演算法主要利用Bayes定理來預測一個未知類別的樣本屬於各個類別的可能性,選擇其中可能性最大的一個類別作為該樣本的最終類別。由於貝葉斯定理的成立本身需要一個很強的條件獨立性假設前提,而此假設在實際情況中經常是不成立的,因而其分類准確性就會下降。為此就出現了許多降低獨立性假設的貝葉斯分類演算法,如TAN(Tree
Augmented Na?ve Bayes)演算法,它是在貝葉斯網路結構的基礎上增加屬性對之間的關聯來實現的。
(3)人工神經網路
人工神經網路(Artificial
Neural
Networks,ANN)是一種應用類似於大腦神經突觸聯接的結構進行信息處理的數學模型。在這種模型中,大量的節點(或稱」神經元」,或」單元」)之間相互聯接構成網路,即」神經網路」,以達到處理信息的目的。神經網路通常需要進行訓練,訓練的過程就是網路進行學習的過程。訓練改變了網路節點的連接權的值使其具有分類的功能,經過訓練的網路就可用於對象的識別。
目前,神經網路已有上百種不同的模型,常見的有BP網路、徑向基RBF網路、Hopfield網路、隨機神經網路(Boltzmann機)、競爭神經網路(Hamming網路,自組織映射網路)等。但是當前的神經網路仍普遍存在收斂速度慢、計算量大、訓練時間長和不可解釋等缺點。
(4)k-近鄰
k-近鄰(kNN,k-Nearest
Neighbors)演算法是一種基於實例的分類方法。該方法就是找出與未知樣本x距離最近的k個訓練樣本,看這k個樣本中多數屬於哪一類,就把x歸為那一類。k-近鄰方法是一種懶惰學習方法,它存放樣本,直到需要分類時才進行分類,如果樣本集比較復雜,可能會導致很大的計算開銷,因此無法應用到實時性很強的場合。
(5)支持向量機
支持向量機(SVM,Support
Vector Machine)是Vapnik根據統計學習理論提出的一種新的學習方法[43]
,它的最大特點是根據結構風險最小化准則,以最大化分類間隔構造最優分類超平面來提高學習機的泛化能力,較好地解決了非線性、高維數、局部極小點等問題。對於分類問題,支持向量機演算法根據區域中的樣本計算該區域的決策曲面,由此確定該區域中未知樣本的類別。
(6)基於關聯規則的分類
關聯規則挖掘是數據挖掘中一個重要的研究領域。近年來,對於如何將關聯規則挖掘用於分類問題,學者們進行了廣泛的研究。關聯分類方法挖掘形如condset→C的規則,其中condset是項(或屬性-值對)的集合,而C是類標號,這種形式的規則稱為類關聯規則(class
association
rules,CARS)。關聯分類方法一般由兩步組成:第一步用關聯規則挖掘演算法從訓練數據集中挖掘出所有滿足指定支持度和置信度的類關聯規則;第二步使用啟發式方法從挖掘出的類關聯規則中挑選出一組高質量的規則用於分類。屬於關聯分類的演算法主要包括CBA[44]
,ADT[45] ,CMAR[46] 等。
(7)集成學習(Ensemble Learning)
實際應用的復雜性和數據的多樣性往往使得單一的分類方法不夠有效。因此,學者們對多種分類方法的融合即集成學習進行了廣泛的研究。集成學習已成為國際機器學習界的研究熱點,並被稱為當前機器學習四個主要研究方向之一。
集成學習是一種機器學習範式,它試圖通過連續調用單個的學習演算法,獲得不同的基學習器,然後根據規則組合這些學習器來解決同一個問題,可以顯著的提高學習系統的泛化能力。組合多個基學習器主要採用(加權)投票的方法,常見的演算法有裝袋[47]
(Bagging),提升/推進[48, 49] (Boosting)等。
有關分類器的集成學習見圖2-5。集成學習由於採用了投票平均的方法組合多個分類器,所以有可能減少單個分類器的誤差,獲得對問題空間模型更加准確的表示,從而提高分類器的分類准確度。
圖2-5:分類器的集成學習
以上簡單介紹了各種主要的分類方法,應該說其都有各自不同的特點及優缺點。對於資料庫負載的自動識別,應該選擇哪種方法呢?用來比較和評估分類方法的標准[50]
主要有:(1)預測的准確率。模型正確地預測新樣本的類標號的能力;(2)計算速度。包括構造模型以及使用模型進行分類的時間;(3)強壯性。模型對雜訊數據或空缺值數據正確預測的能力;(4)可伸縮性。對於數據量很大的數據集,有效構造模型的能力;(5)模型描述的簡潔性和可解釋性。模型描述愈簡潔、愈容易理解,則愈受歡迎。
B. EXCEL求滿足下列條件求95%置信區域
首先你要驗證你的數組符合什麼分布,考慮是需要求單尾95%,還是雙尾95%,求出截尾均值和方差,一般來說,截尾均值加加減方差就是樣本的置信區間。如果要用EXCEL做,好像求置信區間的函數只有=CONFIDENCE.NORM()(正態分布置信)、=CONFIDENCE.T()(T分布),而且數組還要你先做手動5%的截尾。
C. 深度學習會用到哪些設計模式
論及深度學習中的「深度」一詞,人們從感性上可能會認為,深度學習相對於傳統的機器學習演算法,能夠做更多的事情,是一種更為「高深」的演算法。而事實可能並非我們想像的那樣,因為從演算法輸入輸出的角度考慮,深度學習演算法與傳統的有監督機器學習演算法的輸入輸出都是類似的,無論是最簡單的Logistic Regression,還是到後來的SVM、boosting等演算法,它們能夠做的事情都是類似的。正如無論使用什麼樣的排序演算法,它們的輸入和預期的輸出都是類似的,區別在於各種演算法在不同環境下的性能不同。
那麼深度學習的「深度」本質上又指的是什麼呢?深度學習的學名又叫深層神經網路(Deep Neural Networks ),是從很久以前的人工神經網路(Artificial Neural Networks)模型發展而來。這種模型一般採用計算機科學中的圖模型來直觀的表達,而深度學習的「深度」便指的是圖模型的層數以及每一層的節點數量,相對於之前的神經網路而言,有了很大程度的提升。
深度學習也有許多種不同的實現形式,根據解決問題、應用領域甚至論文作者取名創意的不同,它也有不同的名字:例如卷積神經網路(Convolutional Neural Networks)、深度置信網路(Deep Belief Networks)、受限玻爾茲曼機(Restricted Boltzmann Machines)、深度玻爾茲曼機(Deep Boltzmann Machines)、遞歸自動編碼器(Recursive Autoencoders)、深度表達(Deep Representation)等等。不過究其本質來講,都是類似的深度神經網路模型。
既然深度學習這樣一種神經網路模型在以前就出現過了,為什麼在經歷過一次沒落之後,到現在又重新進入人們的視線當中了呢?這是因為在十幾年前的硬體條件下,對高層次多節點神經網路的建模,時間復雜度(可能以年為單位)幾乎是無法接受的。在很多應用當中,實際用到的是一些深度較淺的網路,雖然這種模型在這些應用當中,取得了非常好的效果(甚至是the state of art),但由於這種時間上的不可接受性,限制了其在實際應用的推廣。而到了現在,計算機硬體的水平與之前已經不能同日而語,因此神經網路這樣一種模型便又進入了人們的視線當中。
D. 學習人工智慧主要學習哪些課程
首先你需要數學基礎:高等數學,線性代數,概率論數理統計和隨機過程,離散數學,數值分析其次需要演算法的積累:人工神經網路,支持向量機,遺傳演算法等等演算法;當然還有各個領域需要的演算法,比如你要讓機器人自己在位置環境導航和建圖就需要研究SLAM;總之演算法很多需要時間的積累;然後,需要掌握至少一門編程語言,畢竟演算法的實現還是要編程的;如果深入到硬體的話,一些電類基礎課必不可少;人工智慧一般要到研究生才會去學,本科也就是蜻蜓點水看看而已,畢竟需要的基礎課過於龐大。
E. 人工智慧需要什麼基礎
首先要掌握必備的數學基礎知識,具體來說包括:
線性代數:如何將研究對象形式化?
概率論:如何描述統計規律?
數理統計:如何以小見大?
最優化理論: 如何找到最優解?
資訊理論:如何定量度量不確定性?
形式邏輯:如何實現抽象推理?
線性代數:如何將研究對象形式化?
事實上,線性代數不僅僅是人工智慧的基礎,更是現代數學和以現代數學作為主要分析方法的眾多學科的基礎。從量子力學到圖像處理都離不開向量和矩陣的使用。而在向量和矩陣背後,線性代數的核心意義在於提供了⼀種看待世界的抽象視角:萬事萬物都可以被抽象成某些特徵的組合,並在由預置規則定義的框架之下以靜態和動態的方式加以觀察。
著重於抽象概念的解釋而非具體的數學公式來看,線性代數要點如下:線性代數的本質在於將具體事物抽象為數學對象,並描述其靜態和動態的特性;向量的實質是 n 維線性空間中的靜止點;線性變換描述了向量或者作為參考系的坐標系的變化,可以用矩陣表示;矩陣的特徵值和特徵向量描述了變化的速度與方向。
總之,線性代數之於人工智慧如同加法之於高等數學,是一個基礎的工具集。
概率論:如何描述統計規律?
除了線性代數之外,概率論也是人工智慧研究中必備的數學基礎。隨著連接主義學派的興起,概率統計已經取代了數理邏輯,成為人工智慧研究的主流工具。在數據爆炸式增長和計算力指數化增強的今天,概率論已經在機器學習中扮演了核心角色。
同線性代數一樣,概率論也代表了一種看待世界的方式,其關注的焦點是無處不在的可能性。頻率學派認為先驗分布是固定的,模型參數要靠最大似然估計計算;貝葉斯學派認為先驗分布是隨機的,模型參數要靠後驗概率最大化計算;正態分布是最重要的一種隨機變數的分布。
數理統計:如何以小見大?
在人工智慧的研究中,數理統計同樣不可或缺。基礎的統計理論有助於對機器學習的演算法和數據挖掘的結果做出解釋,只有做出合理的解讀,數據的價值才能夠體現。數理統計根據觀察或實驗得到的數據來研究隨機現象,並對研究對象的客觀規律做出合理的估計和判斷。
雖然數理統計以概率論為理論基礎,但兩者之間存在方法上的本質區別。概率論作用的前提是隨機變數的分布已知,根據已知的分布來分析隨機變數的特徵與規律;數理統計的研究對象則是未知分布的隨機變數,研究方法是對隨機變數進行獨立重復的觀察,根據得到的觀察結果對原始分布做出推斷。
用一句不嚴謹但直觀的話講:數理統計可以看成是逆向的概率論。數理統計的任務是根據可觀察的樣本反過來推斷總體的性質;推斷的工具是統計量,統計量是樣本的函數,是個隨機變數;參數估計通過隨機抽取的樣本來估計總體分布的未知參數,包括點估計和區間估計;假設檢驗通過隨機抽取的樣本來接受或拒絕關於總體的某個判斷,常用於估計機器學習模型的泛化錯誤率。
最優化理論: 如何找到最優解?
本質上講,人工智慧的目標就是最優化:在復雜環境與多體交互中做出最優決策。幾乎所有的人工智慧問題最後都會歸結為一個優化問題的求解,因而最優化理論同樣是人工智慧必備的基礎知識。最優化理論研究的問題是判定給定目標函數的最大值(最小值)是否存在,並找到令目標函數取到最大值 (最小值) 的數值。如果把給定的目標函數看成一座山脈,最優化的過程就是判斷頂峰的位置並找到到達頂峰路徑的過程。
通常情況下,最優化問題是在無約束情況下求解給定目標函數的最小值;在線性搜索中,確定尋找最小值時的搜索方向需要使用目標函數的一階導數和二階導數;置信域演算法的思想是先確定搜索步長,再確定搜索方向;以人工神經網路為代表的啟發式演算法是另外一類重要的優化方法。
資訊理論:如何定量度量不確定性?
近年來的科學研究不斷證實,不確定性就是客觀世界的本質屬性。換句話說,上帝還真就擲骰子。不確定性的世界只能使用概率模型來描述,這促成了資訊理論的誕生。
資訊理論使用「信息熵」的概念,對單個信源的信息量和通信中傳遞信息的數量與效率等問題做出了解釋,並在世界的不確定性和信息的可測量性之間搭建起一座橋梁。
總之,資訊理論處理的是客觀世界中的不確定性;條件熵和信息增益是分類問題中的重要參數;KL 散度用於描述兩個不同概率分布之間的差異;最大熵原理是分類問題匯總的常用准則。
形式邏輯:如何實現抽象推理?
1956 年召開的達特茅斯會議宣告了人工智慧的誕生。在人工智慧的襁褓期,各位奠基者們,包括約翰·麥卡錫、赫伯特·西蒙、馬文·閔斯基等未來的圖靈獎得主,他們的願景是讓「具備抽象思考能力的程序解釋合成的物質如何能夠擁有人類的心智。」通俗地說,理想的人工智慧應該具有抽象意義上的學習、推理與歸納能力,其通用性將遠遠強於解決國際象棋或是圍棋等具體問題的演算法。
如果將認知過程定義為對符號的邏輯運算,人工智慧的基礎就是形式邏輯;謂詞邏輯是知識表示的主要方法;基於謂詞邏輯系統可以實現具有自動推理能力的人工智慧;不完備性定理向「認知的本質是計算」這一人工智慧的基本理念提出挑戰。
F. java軟體工程師一般要上哪些課程
Java軟體工程師應學習課程大致如下:
1、軟體技術基礎、java基礎編程、java語法,SQL Server 2005基礎編程、C#基礎編程;
8、企業流行框架:Struts、Sring、Hibernate、XML應用與開發、MVC應用與開發、Linux平台與應用;
9 、UML與Java設計模式;
10、了解在Java項目中使用的新技術。如Ajax、java ee等。
G. 數據統計學習的5個基本流程
數據統計學習的5個基本流程
統計學、大數據應用很廣泛,常常被提及!統計學習也有一定的規律流程,下面我們大聖眾包小編分享一位朋友關於統計學習流程步驟的看法,看看他怎麼說。
統計學習現在市面上談論到的數據挖掘基本上都是基於統計學習的監督學習或非監督學習問題。尤其以監督學習應用面更廣。
統計學習的一般流程
得到一個有限的數據集合
確定所有的學習模型集合
確定模型選擇的准則,就是學習的策略
實現求解最優模型的演算法並通過學習方法選擇最優模型
利用學習得到的最優模型對新數據進行分析或預測
步驟一:得到一個有限的數據集合
涉及到以下多個流程:
1、數據的採集
2、原始數據的格式化、標准化
3、原始去噪,去掉錯誤的值(而不是誤差值,這里又涉及到一個復雜的問題,如何界定錯誤數據)
4、預處理(針對具體需要研究的問題、抽取相應地特徵組成需要研究的數據集合)
步驟二:確定所有的學習模型集合
這個問題取決於我們選擇怎麼樣的學習方法。常見得學習方法有:
1、感知機模型
2、k近鄰法
3、樸素貝葉斯法
4、決策樹
5、邏輯斯諦回歸和最大熵模型
6、支持向量機
7、提升方法AdaBoost
8、EM演算法
9、隱馬爾可夫模型
10、條件隨機場
而且這些演算法還可以進行變異、組合然後形成新的演算法模型。也是通常認為中數據挖掘比較核心的部分。
步驟三:確定模型選擇的策略
一般來說,當你確定了你的學習方法後,在學習的過程中會產生很多個模型。而如何在這些模型中間挑選最優的模型,成為了我們亟待解決的問題。
一般衡量一個模型的優秀程度我們使用兩個指標:
1、擬合能力
2、泛化能力
擬合能力
表示模型的計算結果和實際結果的相差程度,我們一般使用風險函數來衡量。而風險函數是損失函數的期望。所以我們其實是使用損失函數來衡量一個模型的期望。
常見的損失函數:
1、0-1損失函數
2、平分損失函數
3、絕對值損失函數
4、對數損失函數
損失函數越小,模型的擬合能力就越好。
泛化能力泛化能力是指模型對新數據的預測能力。一般來說,越復雜的模型的擬合能力越強,但是泛化能力越弱。所以我們需要選擇一個適當復雜度的模型,使其泛化能力和擬合能力都足夠強。
而衡量一個模型同時具有較好地泛化能力和擬合能力,我們一般用結構風險函數。
結構風險函數是在風險函數的基礎上面加上一個罰項。通過罰項來降低復雜度高的模型的結構風險函數值。從而達到篩選出合適的復雜度的模型的目的。
罰項一般取特徵空間w的范數,一般有:
1、L0范數
2、L1范數
3、L2范數
4、核范數…
步驟四:實現求解最優模型的演算法並通過學習方法選擇最優模型
求解最優模型的演算法其實就是求解結構風險函數最小值得演算法,即結構風險函數最優化的問題。
如果結構風險函數在我們所關心的區域中是凸函數的話,那麼任何局部最小解也是全局最優解。現在已經有穩定,快速的數值計算方法來求二次可微地凸函數的最小值。
然而,很多時候我們沒有辦法通過結構風險函數直接算出它的最小值。我們只能通過一些迭代的方式獲得局部最優解。
常見的通過迭代的方式獲得局部最優解的演算法有:
1、梯度下降法
2、牛頓法
3、共軛梯度法
4、線性搜索
5、置信域方法
另外還有一些演算法:
1、模擬退火
2、遺傳演算法
3、類免疫演算法
4、演化策略
5、差異演化演算法
6、微粒群演算法
7、神經網路
8、支持向量機
步驟五:利用學習得到的最優模型對新數據進行分析或預測
到這一步一般來說已經成功了,然後往往現實是殘酷的,辛辛苦苦20年,一朝回到解放前。
往往學習得到的模型在實際使用過程當中並不是那麼的理想。這裡面有很多種原因:
有可能是原始數據的原因
有可能是特徵選擇的原因
有可能是模型的原因
有可能是最優模型演算法的問題
有可能是代碼錯誤
總之,以上的所有步驟的所有細節都可能導致你的模型不夠優秀。這就需要你再次的思考這個問題,去不斷的優化你的模型。直到得到一個不錯的模型。
小結
其實數據挖掘涉及的東西遠比我上面說的這點東西多的多,我上面提到的還只是監督學習。就光我上面提到的幾個步驟。其實每一個步驟都有很多很多東西可以講,可以研究,工程方面的、演算法理論方面的等等等等。
一入數據挖掘深似海,從此奮斗到天明。
數據挖掘還是很有意思的,你可以用機器的力量、數學的力量理解世界的運行規律。去預測他或者利用你研究到的東西做一些有意思的事情。
H. Java軟體工程師主要學習哪些課程
很多新手在學習java的時候都比較迷茫,不知道從哪裡開始學起,這里就給大家整理了一份java開發學習路線,比較系統全面,可參考這份大綱來安排學習計劃,希望可以幫到你~
最新java學習路線:第一階段:java業基礎課程
階段目標:
1、熟練掌握java的開發環境與編程核心知識;
2、熟練運用java面向對象知識進行程序開發;
3、對java的核心對象和組件有深入理解;
4、熟練運用javaAPI相關知識;
5、熟練應用java多線程技術;
6、能綜合運用所學知識完成一個項目。
知識點:
1、基本數據類型,運算符,數組,掌握基本數據類型轉換,運算符,流程式控制制;
2、數組,排序演算法,java常用API,類和對象,了解類與對象,熟悉常用API;
3、面向對象特徵,集合框架,熟悉面向對象三大特徵,熟練使用集合框架;
4、IO流,多線程;
5、網路協議,線程運用。
第二階段:javaWEB核心課程
階段目標:
1、熟練掌握資料庫和MySQL核心技術;
2、深入理解JDBC與DAO資料庫操作;
3、熟練運用JSP及Servlet技術完成網站後台開發;
4、深入理解緩存、連繼池、註解、反射、泛型等知識;
5、能夠運用所學知識完成自定義框架。
知識點:
1、資料庫知識,範式,MySQL配置,命令,建庫建表,數據的增刪改查,約束,視圖,存儲過程,函數,觸發器,事務,游標,建模工具。
2、深入理解資料庫管理系統通用知識及MySQL資料庫的使用與管理。為Java後台開發打下堅實基礎。Web頁面元素,布局,CSS樣式,盒模型,JavaScript,jQuery。
3、掌握前端開發技術,掌握jQuery。
4、Servlet,EL表達式,會話跟蹤技術,過濾器,FreeMarker。
5、掌握Servlet相關技術,利用Servlet,JSP相關應用技術和DAO完成B/S架構下的應用開發。
6、泛型,反射,註解。
7、掌握JAVA高級應用,利用泛型,註解,枚舉完成自己的CRUD框架開發為後續框架學習做鋪墊。
8、單點登錄,支付功能,項目整合,分頁封裝熟練運用JSP及Servlet核心知識完成項目實戰。
第三階段:JavaEE框架課程
階段目標:
1. 熟練運用Linux操作系統常見命令及完成環境部署和Nginx伺服器的配置
2. 熟練運用JavaEE三大核心框架:Spring,SpringMVC,MyBatis
3. 熟練運用Maven,並使用SpringBoot進行快速框架搭建
4. 深入理解框架的實現原理,Java底層技術,企業級應用等
5. 使用Shiro,Ztree和Spring,SpringMVC,Myts完成企業項目
知識點:
1、Linux安裝配置,文件目錄操作,VI命令,管理,用戶與許可權,環境部署,Struts2概述,hiberante概述。
2、Linux作為一個主流的伺服器操作系統,是每一個開發工程師必須掌握的重點技術,並且能夠熟練運用。
3、SSH的整合,MyBatis,SpringMVC,Maven的使用。
4、了解AOP原理,了解中央控制器原理,掌握MyBatis框架,掌握SSM框架的整合。
5、Shiro,Ztree,項目文檔,項目規范,需求分析,原型圖設計,資料庫設計,工程構建,需求評審,配置管理,BUG修復,項目管理等。
6、獨立自主完成一個中小型的企業級綜合項目的設計和整體架構的原型和建模。獨立自主完成一個大型的企業級綜合項目,並具備商業價值。
第四階段:分布式與微服務課程
階段目標:
1.掌握前端框架VUE及Bootstrap的應用開發
2.基於SpringCloud完成微服務架構項目的開發
3.掌握NoSQL資料庫Redis的使用
4.掌握消息隊列RabbitMQ的使用
5.掌握Mycat資料庫中間件的使用
知識點:
1、Bootstrap前端框架、VUE前端框架、RabbitMQ消息隊列。
2、掌握Bootstrap前端框架開發、掌握VUE前端框架開發、掌握RabbitMQ消息隊列的應用、掌握SpringBoot集成RabbitMQ。
3、Redis緩存資料庫的應用、Java基於Redis的應用開發、基於SpringCloud微服務架構開發實戰。
4、掌握NOSQL資料庫Redis的安裝、使用,Redis客戶端的安裝使用,Java訪問操作Redis資料庫,Redis的持久化方案、主從復制、高可用。
5、掌握SpringCloud微服務架構的開發,注冊中心,網關配置,配置中心,微服務間通信及容器化部署。
6、項目文檔,項目規范,需求分析,資料庫設計,工程構建,需求評審,配置管理,BUG修復,項目管理等。
7、掌握資料庫中間件Mycat的應用,基於Mycat實現數據讀寫分離,高可用集群。
8、掌握項目開發的流程,按照項目開發流程完成基於微服務架構項目的需求分析,編碼開發。
PS:溫馨提示,光看不練假把式,跟著視頻教程練項目也是必不可少的!相關教程指路B站尚學堂官方號!都是免費滴!
I. 能不能簡單的給我解釋一下蒙特卡羅演算法
以概率和統計的理論、方法為基礎的一種計算方法,將所求解的問題同一定的概率模型相聯系,用電子計算機實現統計模擬或抽樣,以獲得問題的近似解,故又稱統計模擬法或統計試驗法。
蒙特卡羅是摩納哥的一個城市,以賭博聞名於世界。蒙特卡羅法借用這一城市的名稱是為了象徵性地表明該方法的概率統計的特點。
蒙特卡羅法作為一種計算方法,是由S.M.烏拉姆和J.馮·諾伊曼在20世紀40年代中葉為研製核武器的需要而首先提出來的。在此之前,該方法的基本思想實際上早已被統計學家所採用了。例如,早在17世紀,人們就知道了依頻數來決定概率的方法。
20世紀40年代中葉,出現了電子計算機,使得用數學方法模擬大量的試驗成為可能。另外,隨著科學技術的不斷發展,出現了越來越多的復雜而困難的問題,用通常的解析方法或數值方法都很難加以解決。蒙特卡羅法就是在這些情況下,作為一種可行的而且是不可缺少的計算方法被提出和迅速發展起來的。
基本原理 考慮一個射擊運動員的射擊成績 G。令x表示彈著點到靶心的距離,g(x)表示得分,而�0�6(x)表示該運動員的彈著點的分布密度,則
。
另一方面,如果該運動員進行了實彈射擊,彈著點依次為X1,X2,…,XN,則平均得分為
。
很明顯,弿N是G 的一個近似估計。蒙特卡羅法正是用弿N作為G 的近似估計。
假設 x不是一維空間的點,而是一個S 維空間的點(x1,x2,…,xs),則上述積分變為
。
蒙特卡羅法計算此積分是用
作為G 的近似估計,式中(X1n,X2n,…,Xsn)是由�0�6(x1,x2,…,xs)中抽取的第n 個樣本點。同上述一維積分比較,相同點是,都以某隨機變數的N 個獨立抽樣值的算術平均作為近似估計;不同點僅僅是,決定隨機量的樣本點不同,一個是一維空間的點,另一個是S 維空間的點。由上式可見, 決定近似估計 弿N好壞的僅僅是隨機變數g(x)或g(x1,x2,…,xs)的分布情況,而與它們是由怎樣的樣本點對應過來的無關。換言之,如果隨機變數g(x)和g(x1,x2,…,xs)具有相同分布,在不計抽樣,不計計算g(x)和g(x1,x2,…,xs)的差別的情況下,S維情況與一維情況無任何差異。這是其他計算方法所不具有的、一個非常重要的性質。
蒙特卡羅法解題的一般過程是,首先構成一個概率空間;然後在該概率空間中確定一個隨機變數g(x),其數學期望
正好等於所要求的值G,其中F(x)為x的分布函數;最後,以所確定的隨機變數的簡單子樣的算術平均值
作為G 的近似估計。由於其他原因,如確定數學期望為G 的隨機變數g(x)有困難,或為其他目的,蒙特卡羅法有時也用G 的漸近無偏估計代替一般過程中的無偏估計弿N來作為G 的近似估計。
收斂性、誤差和費用 蒙特卡羅法的近似估計弿N依概率1收斂於G的充分必要條件是隨機變數g(x)滿足
。
如果隨機變數g(x)滿足條件
,
式中1≤r<2,則
,
亦即弿N依概率1收斂於G 的速度為。總之,蒙特卡羅法的收斂性取決於所確定的隨機變數是否絕對可積,而蒙特卡羅法的收斂速度取決於該隨機變數是幾次絕對可積的。
根據中心極限定理,只要隨機變數g(x)具有有限的異於零的方差σ2,當N 足夠大時便有蒙特卡羅法的誤差公式如下:
,
式中1-α為置信水平,x由置信水平所惟一確定。根據上述誤差公式,為滿足問題的誤差和置信水平的要求,子樣容量N必須大於(x/ε)2σ2,其中ε表示誤差。進一步假設每觀察一個樣本所需要的費用是C,則蒙特卡羅法的費用是。這一結果表明,在相同誤差和置信水平要求下,一個蒙特卡羅法的優劣完全取決於σ2C 的值的大小,它的值越小相應的方法越好,或者說,蒙特卡羅法的效率與σ2C 成反比。
提高效率的方法
降低方差技巧 降低方差是提高蒙特卡羅法效率的重要途徑之一。考慮二重積分
,
式中�0�6(x,y)為x和y的分布密度函數,g(x,y)的方差存在。蒙特卡羅法計算Eg的一般技巧是用g=g(x, y)作為所確定的隨機變數,其中x和y服從分布�0�6(x,y)。降低方差的具體辦法有:
① 統計估計技巧用�0�6(x) 和�0�6x(y)分別表示分布�0�6(x,y)的邊緣分布和條件分布。計算Eg的統計估計技巧是用y的統計估計量
作為所確定的隨機變數,其中x服從分布�0�6(x)。g的方差恰好為兩個方差的和,它們分別是對隨機變數x和隨機變數y採用抽樣辦法而產生的。gSE的方差正好等於前者,因此gSE的方差一定比g的方差小。統計估計技巧的一般原理是,對於問題中所出現的諸隨機變數,能夠確定其相應的統計估計量的,就不要再對它們採用隨機抽樣的辦法。
② 重要抽樣技巧引入任意分布密度函數�0�6*(x,y),則
的數學期望同樣為Eg,其中x和y服從分布�0�6*(x,y)。當�0�6*(x,y)~|g(x,y)|�0�6(x,y)時,gIS的方差達到最小。在g(x,y)≥0時,方差等於零,gIS實際上變成了與其中出現的隨機變數無關的常數。重要抽樣技巧的一般原理是,盡量使所確定的隨機變數與問題中所出現的隨機變數關系不大。
③ 相關抽樣技巧考慮一個新的、積分值已知的二重積分
,
可得知
的數學期望同樣為Eg,式中x和y服從分布�0�6(x,y),α為任意常數。當為隨機變數g(x,y)和g*(x,y)的均方差σg、λg*之比時,gCS的方差達到最小。此時的方差等於g 的方差 1-ρ2倍,ρ為隨機變數g(x,y)和g*(x,y)的相關系數。當ρ=1時,方差變為零。相關抽樣技巧的一般原理是,尋找一個數學期望已知的且與原確定的隨機變數正相關的隨機變數,使相應的相關系數盡量接近1,然後用這兩個隨機變數的線性組合作為蒙特卡羅法最終所確定的隨機變數。
降低方差的技巧還有對偶變數技巧、系統抽樣技巧和分層抽樣技巧等。對偶變數技巧的一般原理是,除了原確定的隨機變數外,尋找另一個(或多個)具有相同數學期望的隨機變數,使得它們之間盡量是對偶負相關的,然後用它們的線性組合作為蒙特卡羅法最終所確定的隨機變數。系統抽樣技巧的一般原理是,對問題中所出現的某些隨機變數按相應分布所確定的比例進行抽樣,而不是進行隨機抽樣。分層抽樣技巧的一般原理是,對問題中所出現的某些隨機變數進行分層,盡量使所確定的隨機變數在各層中相對平穩,各層間的抽樣按相應分布所確定的比例進行。
其他途徑 為了提高蒙特卡羅法的效率,除了簡單地降低方差外,還有為降低費用設計的分裂和輪盤賭技巧,為逐步降低方差而設計的多極抽樣技巧,為改善收斂速度而設計的擬蒙特卡羅法,為計算條件期望而設計的條件蒙特卡羅法等等。分裂和輪盤賭技巧的一般原理是,將x的積分區域分為重要和非重要兩部分,對於抽樣確定的X,當它屬於重要區域時,對相應的Y 進行多次抽樣;當它屬於非重要區域時,只有在賭獲勝時才對相應的Y 進行抽樣。多級抽樣技巧的一般原理是,在進行某一級抽樣計算的同時,根據它所提供的抽樣觀察值,設計更好的抽樣技巧,用新設計的抽樣技巧進行新的一級的抽樣計算,依次類推,最後用各級的結果的線性組合作為蒙特卡羅法的近似估計。擬蒙特卡羅法與一般蒙特卡羅法的最大區別是,前者不像後者那樣要求子樣 g(X1),g(X2),…,g(Xn)是相互獨立的。用一致分布點列替代由隨機數組成的點列的所謂數論方法,實際上就是一種擬蒙特卡羅法。條件蒙特卡羅法的一般原理是,首先將條件期望問題轉化成為非條件期望問題,然後用解非條件期望的一般方法來解決條件期望計算問題。由於條件蒙特卡羅法中引進了任意分布密度函數,因此,可以選取合適的分布密度函數來實現進一步降低方差的目的。
優缺點 蒙特卡羅法的最大優點是,在方差存在的情況下,問題的維數不影響它的收斂速度,而隻影響它的方差;問題幾何形狀的復雜性對它的影響不大;它不象其他數值方法那樣對問題一定要進行離散化處理,而是常可以進行連續處理;它的程序結構簡單,所需計算機存貯單元比其他數值方法少,這對於高維問題差別尤其顯著。蒙特卡羅法的最大缺點是,對於維數少的問題它不如其他數值方法好;它的誤差是概率誤差,而不是一般意義下的誤差。
應用 隨著電子計算機的迅速發展和科學技術問題日趨復雜,蒙特卡羅法的應用越來越廣泛,已經滲透到科學技術的各個領域。
在一些典型數學問題方面的應用主要有:多重積分計算、線性代數方程組求解、矩陣求逆、常微分方程邊值問題求解、偏微分方程求解、非齊次線性積分方程求解、本徵值計算和最優化計算等等。其中的多重積分計算、非齊次線性積分方程求解和齊次線性積分方程本徵值計算等,不僅非常有代表性,而且有很大的實用價值,對於高維問題常比其他數值方法好。
在一些實際問題方面的應用主要有,屏蔽計算、核臨界安全計算、反應堆物理計算、微擾計算、實驗核物理計算、高能物理計算、核物理計算、統計物理計算、真空技術、公用事業、資訊理論、系統模擬、可靠性計算和計算機科學等等。其中的屏蔽計算、核臨界安全計算、微擾計算、實驗核物理計算和統計物理計算等,不僅非常有代表性,而且應用得很廣泛,按蒙特卡羅法解決這些問題的能力講,已經超過了其他計算方法的水平。
J. 小學數學常用詞彙英漢對照
absolute value 絕對值
accept 接受
acceptable region 接受域
additivity 可加性
adjusted 調整的
alternative hypothesis 對立假設
analysis 分析
analysis of covariance 協方差分析
analysis of variance 方差分析
arithmetic mean 算術平均值
association 相關性
assumption 假設
assumption checking 假設檢驗
availability 有效度
average 均值
B
balanced 平衡的
band 帶寬
bar chart 條形圖
beta-distribution 貝塔分布
between groups 組間的
bias 偏倚
binomial distribution 二項分布
binomial test 二項檢驗
C
calculate 計算
case 個案
category 類別
center of gravity 重心
central tendency 中心趨勢
chi-square distribution 卡方分布
chi-square test 卡方檢驗
classify 分類
cluster analysis 聚類分析
coefficient 系數
coefficient of correlation 相關系數
collinearity 共線性
column 列
compare 比較
comparison 對照
components 構成,分量
compound 復合的
confidence interval 置信區間
consistency 一致性
constant 常數
continuous variable 連續變數
control charts 控制圖
correlation 相關
covariance 協方差
covariance matrix 協方差矩陣
critical point 臨界點
critical value 臨界值
crosstab 列聯表
cubic 三次的,立方的
cubic term 三次項
cumulative distribution function 累加分布函數
curve estimation 曲線估計
D
data 數據
default 默認的
definition 定義
deleted resial 剔除殘差
density function 密度函數
dependent variable 因變數
description 描述
design of experiment 試驗設計
deviations 差異
df.(degree of freedom) 自由度
diagnostic 診斷
dimension 維
discrete variable 離散變數
discriminant function 判別函數
discriminatory analysis 判別分析
distance 距離
distribution 分布
D-optimal design D-優化設計
E
eaqual 相等
effects of interaction 交互效應
efficiency 有效性
eigenvalue 特徵值
equal size 等含量
equation 方程
error 誤差
estimate 估計
estimation of parameters 參數估計
estimations 估計量
evaluate 衡量
exact value 精確值
expectation 期望
expected value 期望值
exponential 指數的
exponential distributon 指數分布
extreme value 極值
F
factor 因素,因子
factor analysis 因子分析
factor score 因子得分
factorial designs 析因設計
factorial experiment 析因試驗
fit 擬合
fitted line 擬合線
fitted value 擬合值
fixed model 固定模型
fixed variable 固定變數
fractional factorial design 部分析因設計
frequency 頻數
F-test F檢驗
full factorial design 完全析因設計
function 函數
G
gamma distribution 伽瑪分布
geometric mean 幾何均值
group 組
H
harmomic mean 調和均值
heterogeneity 不齊性
histogram 直方圖
homogeneity 齊性
homogeneity of variance 方差齊性
hypothesis 假設
hypothesis test 假設檢驗
I
independence 獨立
independent variable 自變數
independent-samples 獨立樣本
index 指數
index of correlation 相關指數
interaction 交互作用
interclass correlation 組內相關
interval estimate 區間估計
intraclass correlation 組間相關
inverse 倒數的
iterate 迭代
K
kernal 核
Kolmogorov-Smirnov test
柯爾莫哥洛夫-斯米諾夫檢驗
kurtosis 峰度
L
large sample problem 大樣本問題
layer 層
least-significant difference 最小顯著差數
least-square estimation 最小二乘估計
least-square method 最小二乘法
level 水平
level of significance 顯著性水平
leverage value 中心化杠桿值
life 壽命
life test 壽命試驗
likelihood function 似然函數
likelihood ratio test 似然比檢驗
linear 線性的
linear estimator 線性估計
linear model 線性模型
linear regression 線性回歸
linear relation 線性關系
linear term 線性項
logarithmic 對數的
logarithms 對數
logistic 邏輯的
lost function 損失函數
M
main effect 主效應
matrix 矩陣
maximum 最大值
maximum likelihood estimation 極大似然估計
mean squared deviation(MSD) 均方差
mean sum of square 均方和
measure 衡量
media 中位數
M-estimator M估計
minimum 最小值
missing values 缺失值
mixed model 混合模型
mode 眾數
model 模型
Monte Carle method 蒙特卡羅法
moving average 移動平均值
multicollinearity 多元共線性
multiple comparison 多重比較
multiple correlation 多重相關
multiple correlation coefficient 復相關系數
multiple correlation coefficient 多元相關系數
multiple regression analysis 多元回歸分析
multiple regression equation 多元回歸方程
multiple response 多響應
multivariate analysis 多元分析
N
negative relationship 負相關
nonadditively 不可加性
nonlinear 非線性
nonlinear regression 非線性回歸
noparametric tests 非參數檢驗
normal distribution 正態分布
null hypothesis 零假設
number of cases 個案數
O
one-sample 單樣本
one-tailed test 單側檢驗
one-way ANOVA 單向方差分析
one-way classification 單向分類
optimal 優化的
optimum allocation 最優配製
order 排序
order statistics 次序統計量
origin 原點
orthogonal 正交的
outliers 異常值
P
paired observations 成對觀測數據
paired-sample 成對樣本
parameter 參數
parameter estimation 參數估計
partial correlation 偏相關
partial correlation coefficient 偏相關系數
partial regression coefficient 偏回歸系數
percent 百分數
percentiles 百分位數
pie chart 餅圖
point estimate 點估計
poisson distribution 泊松分布
polynomial curve 多項式曲線
polynomial regression 多項式回歸
polynomials 多項式
positive relationship 正相關
power 冪
P-P plot P-P概率圖
predict 預測
predicted value 預測值
prediction intervals 預測區間
principal component analysis 主成分分析
proability 概率
probability density function 概率密度函數
probit analysis 概率分析
proportion 比例
Q
qadratic 二次的
Q-Q plot Q-Q概率圖
quadratic term 二次項
quality control 質量控制
quantitative 數量的,度量的
quartiles 四分位數
R
random 隨機的
random number 隨機數
random number 隨機數
random sampling 隨機取樣
random seed 隨機數種子
random variable 隨機變數
randomization 隨機化
range 極差
rank 秩
rank correlation 秩相關
rank statistic 秩統計量
regression analysis 回歸分析
regression coefficient 回歸系數
regression line 回歸線
reject 拒絕
rejection region 拒絕域
relationship 關系
reliability 可靠性
repeated 重復的
report 報告,報表
resial 殘差
resial sum of squares 剩餘平方和
response 響應
risk function 風險函數
robustness 穩健性
root mean square 標准差
row 行
run 遊程
run test 遊程檢驗
S
sample 樣本
sample size 樣本容量
sample space 樣本空間
sampling 取樣
sampling inspection 抽樣檢驗
scatter chart 散點圖
S-curve S形曲線
separately 單獨地
sets 集合
sign test 符號檢驗
significance 顯著性
significance level 顯著性水平
significance testing 顯著性檢驗
significant 顯著的,有效的
significant digits 有效數字
skewed distribution 偏態分布
skewness 偏度
small sample problem 小樣本問題
smooth 平滑
sort 排序
soruces of variation 方差來源
space 空間
spread 擴展
square 平方
standard deviation 標准離差
standard error of mean 均值的標准誤差
standardization 標准化
standardize 標准化
statistic 統計量
statistical quality control 統計質量控制
std. resial 標准殘差
stepwise regression analysis 逐步回歸
stimulus 刺激
strong assumption 強假設
stud. deleted resial 學生化剔除殘差
stud. resial 學生化殘差
subsamples 次級樣本
sufficient statistic 充分統計量
sum 和
sum of squares 平方和
summary 概括,綜述
T
table 表
t-distribution t分布
test 檢驗
test criterion 檢驗判據
test for linearity 線性檢驗
test of goodness of fit 擬合優度檢驗
test of homogeneity 齊性檢驗
test of independence 獨立性檢驗
test rules 檢驗法則
test statistics 檢驗統計量
testing function 檢驗函數
time series 時間序列
tolerance limits 容許限
total 總共,和
transformation 轉換
treatment 處理
trimmed mean 截尾均值
true value 真值
t-test t檢驗
two-tailed test 雙側檢驗
U
unbalanced 不平衡的
unbiased estimation 無偏估計
unbiasedness 無偏性
uniform distribution 均勻分布
V
value of estimator 估計值
variable 變數
variance 方差
variance components 方差分量
variance ratio 方差比
various 不同的
vector 向量
W
weight 加權,權重
weighted average 加權平均值
within groups 組內的
Z
Z score Z分數
2. 最優化方法詞彙英漢對照表
A
active constraint 活動約束
active set method 活動集法
analytic gradient 解析梯度
approximate 近似
arbitrary 強制性的
argument 變數
attainment factor 達到因子
B
bandwidth 帶寬
be equivalent to 等價於
best-fit 最佳擬合
bound 邊界
C
coefficient 系數
complex-value 復數值
component 分量
constant 常數
constrained 有約束的
constraint 約束
constraint function 約束函數
continuous 連續的
converge 收斂
cubic polynomial interpolation method
三次多項式插值法
curve-fitting 曲線擬合
D
data-fitting 數據擬合
default 默認的,默認的
define 定義
diagonal 對角的
direct search method 直接搜索法
direction of search 搜索方向
discontinuous 不連續
E
eigenvalue 特徵值
empty matrix 空矩陣
equality 等式
exceeded 溢出的
F
feasible 可行的
feasible solution 可行解
finite-difference 有限差分
first-order 一階
G
Gauss-Newton method 高斯-牛頓法
goal attainment problem 目標達到問題
gradient 梯度
gradient method 梯度法
H
handle 句柄
Hessian matrix 海色矩陣
I
independent variables 獨立變數
inequality 不等式
infeasibility 不可行性
infeasible 不可行的
initial feasible solution 初始可行解
initialize 初始化
inverse 逆
invoke 激活
iteration 迭代
iteration 迭代
J
Jacobian 雅可比矩陣
L
Lagrange multiplier 拉格朗日乘子
large-scale 大型的
least square 最小二乘
least squares sense 最小二乘意義上的
Levenberg-Marquardt method
列文伯格-馬誇爾特法
line search 一維搜索
linear 線性的
linear equality constraints 線性等式約束
linear programming problem 線性規劃問題
local solution 局部解
M
medium-scale 中型的
minimize 最小化
mixed quadratic and cubic polynomial interpolation and extrapolation method
混合二次、三次多項式內插、外插法
multiobjective 多目標的
N
nonlinear 非線性的
norm 范數
O
objective function 目標函數
observed data 測量數據
optimization routine 優化過程
optimize 優化
optimizer 求解器
over-determined system 超定系統
P
parameter 參數
partial derivatives 偏導數
polynomial interpolation method
多項式插值法
Q
quadratic 二次的
quadratic interpolation method 二次內插法
quadratic programming 二次規劃
R
real-value 實數值
resials 殘差
robust 穩健的
robustness 穩健性,魯棒性
S
scalar 標量
semi-infinitely problem 半無限問題
Sequential Quadratic Programming method
序列二次規劃法
simplex search method 單純形法
solution 解
sparse matrix 稀疏矩陣
sparsity pattern 稀疏模式
sparsity structure 稀疏結構
starting point 初始點
step length 步長
subspace trust region method 子空間置信域法
sum-of-squares 平方和
symmetric matrix 對稱矩陣
T
termination message 終止信息
termination tolerance 終止容限
the exit condition 退出條件
the method of steepest descent 最速下降法
transpose 轉置
U
unconstrained 無約束的
under-determined system 負定系統
V
variable 變數
vector 矢量
W
weighting matrix 加權矩陣
3 樣條詞彙英漢對照表
A
approximation 逼近
array 數組
a spline in b-form/b-spline b樣條
a spline of polynomial piece /ppform spline
分段多項式樣條
B
bivariate spline function 二元樣條函數
break/breaks 斷點
C
coefficient/coefficients 系數
cubic interpolation 三次插值/三次內插
cubic polynomial 三次多項式
cubic smoothing spline 三次平滑樣條
cubic spline 三次樣條
cubic spline interpolation
三次樣條插值/三次樣條內插
curve 曲線
D
degree of freedom 自由度
dimension 維數
E
end conditions 約束條件
I
input argument 輸入參數
interpolation 插值/內插
interval 取值區間
K
knot/knots 節點
L
least-squares approximation 最小二乘擬合
M
multiplicity 重次
multivariate function 多元函數
O
optional argument 可選參數
order 階次
output argument 輸出參數
P
point/points 數據點
R
rational spline 有理樣條
rounding error 舍入誤差(相對誤差)
S
scalar 標量
sequence 數列(數組)
spline 樣條
spline approximation 樣條逼近/樣條擬合
spline function 樣條函數
spline curve 樣條曲線
spline interpolation 樣條插值/樣條內插
spline surface 樣條曲面
smoothing spline 平滑樣條
T
tolerance 允許精度
U
univariate function 一元函數
V
vector 向量
W
weight/weights 權重
4 偏微分方程數值解詞彙英漢對照表
A
absolute error 絕對誤差
absolute tolerance 絕對容限
adaptive mesh 適應性網格
B
boundary condition 邊界條件
C
contour plot 等值線圖
converge 收斂
coordinate 坐標系
D
decomposed 分解的
decomposed geometry matrix 分解幾何矩陣
diagonal matrix 對角矩陣
Dirichlet boundary conditions
Dirichlet邊界條件
E
eigenvalue 特徵值
elliptic 橢圓形的
error estimate 誤差估計
exact solution 精確解
G
generalized Neumann boundary condition
推廣的Neumann邊界條件
geometry 幾何形狀
geometry description matrix 幾何描述矩陣
geometry matrix 幾何矩陣
graphical user interface(GUI)
圖形用戶界面
H
hyperbolic 雙曲線的
I
initial mesh 初始網格
J
jiggle 微調
L
Lagrange multipliers 拉格朗日乘子
Laplace equation 拉普拉斯方程
linear interpolation 線性插值
loop 循環
M
machine precision 機器精度
mixed boundary condition 混合邊界條件
N
Neuman boundary condition Neuman邊界條件
node point 節點
nonlinear solver 非線性求解器
normal vector 法向量
P
Parabolic 拋物線型的
partial differential equation 偏微分方程
plane strain 平面應變
plane stress 平面應力
Poisson's equation 泊松方程
polygon 多邊形
positive definite 正定
Q
quality 質量
R
refined triangular mesh 加密的三角形網格
relative tolerance 相對容限
relative tolerance 相對容限
resial 殘差
resial norm 殘差范數
S
singular 奇異的