『壹』 BP演算法及其改進
傳統的BP演算法及其改進演算法的一個很大缺點是:由於其誤差目標函數對於待學習的連接權值來說非凸的,存在局部最小點,對網路進行訓練時,這些演算法的權值一旦落入權值空間的局部最小點就很難跳出,因而無法達到全局最小點(即最優點)而使得網路訓練失敗。針對這些缺陷,根據凸函數及其共軛的性質,利用Fenchel不等式,使用約束優化理論中的罰函數方法構造出了帶有懲罰項的新誤差目標函數。
用新的目標函數對前饋神經網路進行優化訓練時,隱層輸出也作為被優化變數。這個目標函數的主要特點有:
1.固定隱層輸出,該目標函數對連接權值來說是凸的;固定連接權值,對隱層輸出來說是凸的。這樣在對連接權值和隱層輸出進行交替優化時,它們所面對的目標函數都是凸函數,不存在局部最小的問題,演算法對於初始權值的敏感性降低;
2.由於懲罰因子是逐漸增大的,使得權值的搜索空間變得比較大,從而對於大規模的網路也能夠訓練,在一定程度上降低了訓練過程陷入局部最小的可能性。
這些特性能夠在很大程度上有效地克服以往前饋網路的訓練演算法易於陷入局部最小而使網路訓練失敗的重大缺陷,也為利用凸優化理論研究前饋神經網路的學習演算法開創了一個新思路。在網路訓練時,可以對連接權值和隱層輸出進行交替優化。把這種新演算法應用到前饋神經網路訓練學習中,在學習速度、泛化能力、網路訓練成功率等多方面均優於傳統訓練演算法,如經典的BP演算法。數值試驗也表明了這一新演算法的有效性。
本文通過典型的BP演算法與新演算法的比較,得到了二者之間相互關系的初步結論。從理論上證明了當懲罰因子趨於正無窮大時新演算法就是BP演算法,並且用數值試驗說明了懲罰因子在網路訓練演算法中的作用和意義。對於三層前饋神經網路來說,懲罰因子較小時,隱層神經元局部梯度的可變范圍大,有利於連接權值的更新;懲罰因子較大時,隱層神經元局部梯度的可變范圍小,不利於連接權值的更新,但能提高網路訓練精度。這說明了在網路訓練過程中懲罰因子為何從小到大變化的原因,也說明了新演算法的可行性而BP演算法則時有無法更新連接權值的重大缺陷。
礦體預測在礦床地質中佔有重要地位,由於輸入樣本量大,用以往前饋網路演算法進行礦體預測效果不佳。本文把前饋網路新演算法應用到礦體預測中,取得了良好的預期效果。
本文最後指出了新演算法的優點,並指出了有待改進的地方。
關鍵詞:前饋神經網路,凸優化理論,訓練演算法,礦體預測,應用
Feed forward Neural Networks Training Algorithm Based on Convex Optimization and Its Application in Deposit Forcasting
JIA Wen-chen (Computer Application)
Directed by YE Shi-wei
Abstract
The paper studies primarily the application of convex optimization theory and algorithm for feed forward neural networks』 training and convergence performance.
It reviews the history of feed forward neural networks, points out that the training of feed forward neural networks is essentially a non-linear problem and introces BP algorithm, its advantages as well as disadvantages and previous improvements for it. One of the big disadvantages of BP algorithm and its improvement algorithms is: because its error target function is non-convex in the weight values between neurons in different layers and exists local minimum point, thus, if the weight values enter local minimum point in weight values space when network is trained, it is difficult to skip local minimum point and reach the global minimum point (i.e. the most optimal point).If this happening, the training of networks will be unsuccessful. To overcome these essential disadvantages, the paper constructs a new error target function including restriction item according to convex function, Fenchel inequality in the conjugate of convex function and punishment function method in restriction optimization theory.
When feed forward neural networks based on the new target function is being trained, hidden layers』 outputs are seen as optimization variables. The main characteristics of the new target function are as follows:
1.With fixed hidden layers』 outputs, the new target function is convex in connecting weight variables; with fixed connecting weight values, the new target function is convex in hidden layers』 outputs. Thus, when connecting weight values and hidden layers』 outputs are optimized alternately, the new target function is convex in them, doesn』t exist local minimum point, and the algorithm』s sensitiveness is reced for original weight values .
2.Because the punishment factor is increased graally, weight values 』 searching space gets much bigger, so big networks can be trained and the possibility of entering local minimum point can be reced to a certain extent in network training process.
Using these characteristics can overcome efficiently in the former feed forward neural networks』 training algorithms the big disadvantage that networks training enters local minimum point easily. This creats a new idea for feed forward neural networks』 learning algorithms by using convex optimization theory .In networks training, connecting weight variables and hidden layer outputs can be optimized alternately. The new algorithm is much better than traditional algorithms for feed forward neural networks. The numerical experiments show that the new algorithm is successful.
By comparing the new algorithm with the traditional ones, a primary conclusion of their relationship is reached. It is proved theoretically that when the punishment factor nears infinity, the new algorithm is BP algorithm yet. The meaning and function of the punishment factor are also explained by numerical experiments. For three-layer feed forward neural networks, when the punishment factor is smaller, hidden layer outputs』 variable range is bigger and this is in favor to updating of the connecting weights values, when the punishment factor is bigger, hidden layer outputs』 variable range is smaller and this is not in favor to updating of the connecting weights values but it can improve precision of networks. This explains the reason that the punishment factor should be increased graally in networks training process. It also explains feasibility of the new algorithm and BP algorithm』s disadvantage that connecting weigh values can not be updated sometimes.
Deposit forecasting is very important in deposit geology. The previous algorithms』 effect is not good in deposit forecasting because of much more input samples. The paper applies the new algorithm to deposit forecasting and expectant result is reached.
The paper points out the new algorithm』s strongpoint as well as to-be-improved places in the end.
Keywords: feed forward neural networks, convex optimization theory, training algorithm, deposit forecasting, application
傳統的BP演算法及其改進演算法的一個很大缺點是:由於其誤差目標函數對於待學習的連接權值來說非凸的,存在局部最小點,對網路進行訓練時,這些演算法的權值一旦落入權值空間的局部最小點就很難跳出,因而無法達到全局最小點(即最優點)而使得網路訓練失敗。針對這些缺陷,根據凸函數及其共軛的性質,利用Fenchel不等式,使用約束優化理論中的罰函數方法構造出了帶有懲罰項的新誤差目標函數。
用新的目標函數對前饋神經網路進行優化訓練時,隱層輸出也作為被優化變數。這個目標函數的主要特點有:
1.固定隱層輸出,該目標函數對連接權值來說是凸的;固定連接權值,對隱層輸出來說是凸的。這樣在對連接權值和隱層輸出進行交替優化時,它們所面對的目標函數都是凸函數,不存在局部最小的問題,演算法對於初始權值的敏感性降低;
2.由於懲罰因子是逐漸增大的,使得權值的搜索空間變得比較大,從而對於大規模的網路也能夠訓練,在一定程度上降低了訓練過程陷入局部最小的可能性。
這些特性能夠在很大程度上有效地克服以往前饋網路的訓練演算法易於陷入局部最小而使網路訓練失敗的重大缺陷,也為利用凸優化理論研究前饋神經網路的學習演算法開創了一個新思路。在網路訓練時,可以對連接權值和隱層輸出進行交替優化。把這種新演算法應用到前饋神經網路訓練學習中,在學習速度、泛化能力、網路訓練成功率等多方面均優於傳統訓練演算法,如經典的BP演算法。數值試驗也表明了這一新演算法的有效性。
本文通過典型的BP演算法與新演算法的比較,得到了二者之間相互關系的初步結論。從理論上證明了當懲罰因子趨於正無窮大時新演算法就是BP演算法,並且用數值試驗說明了懲罰因子在網路訓練演算法中的作用和意義。對於三層前饋神經網路來說,懲罰因子較小時,隱層神經元局部梯度的可變范圍大,有利於連接權值的更新;懲罰因子較大時,隱層神經元局部梯度的可變范圍小,不利於連接權值的更新,但能提高網路訓練精度。這說明了在網路訓練過程中懲罰因子為何從小到大變化的原因,也說明了新演算法的可行性而BP演算法則時有無法更新連接權值的重大缺陷。
礦體預測在礦床地質中佔有重要地位,由於輸入樣本量大,用以往前饋網路演算法進行礦體預測效果不佳。本文把前饋網路新演算法應用到礦體預測中,取得了良好的預期效果。
本文最後指出了新演算法的優點,並指出了有待改進的地方。
關鍵詞:前饋神經網路,凸優化理論,訓練演算法,礦體預測,應用
Feed forward Neural Networks Training Algorithm Based on Convex Optimization and Its Application in Deposit Forcasting
JIA Wen-chen (Computer Application)
Directed by YE Shi-wei
Abstract
The paper studies primarily the application of convex optimization theory and algorithm for feed forward neural networks』 training and convergence performance.
It reviews the history of feed forward neural networks, points out that the training of feed forward neural networks is essentially a non-linear problem and introces BP algorithm, its advantages as well as disadvantages and previous improvements for it. One of the big disadvantages of BP algorithm and its improvement algorithms is: because its error target function is non-convex in the weight values between neurons in different layers and exists local minimum point, thus, if the weight values enter local minimum point in weight values space when network is trained, it is difficult to skip local minimum point and reach the global minimum point (i.e. the most optimal point).If this happening, the training of networks will be unsuccessful. To overcome these essential disadvantages, the paper constructs a new error target function including restriction item according to convex function, Fenchel inequality in the conjugate of convex function and punishment function method in restriction optimization theory.
When feed forward neural networks based on the new target function is being trained, hidden layers』 outputs are seen as optimization variables. The main characteristics of the new target function are as follows:
1.With fixed hidden layers』 outputs, the new target function is convex in connecting weight variables; with fixed connecting weight values, the new target function is convex in hidden layers』 outputs. Thus, when connecting weight values and hidden layers』 outputs are optimized alternately, the new target function is convex in them, doesn』t exist local minimum point, and the algorithm』s sensitiveness is reced for original weight values .
2.Because the punishment factor is increased graally, weight values 』 searching space gets much bigger, so big networks can be trained and the possibility of entering local minimum point can be reced to a certain extent in network training process.
Using these characteristics can overcome efficiently in the former feed forward neural networks』 training algorithms the big disadvantage that networks training enters local minimum point easily. This creats a new idea for feed forward neural networks』 learning algorithms by using convex optimization theory .In networks training, connecting weight variables and hidden layer outputs can be optimized alternately. The new algorithm is much better than traditional algorithms for feed forward neural networks. The numerical experiments show that the new algorithm is successful.
By comparing the new algorithm with the traditional ones, a primary conclusion of their relationship is reached. It is proved theoretically that when the punishment factor nears infinity, the new algorithm is BP algorithm yet. The meaning and function of the punishment factor are also explained by numerical experiments. For three-layer feed forward neural networks, when the punishment factor is smaller, hidden layer outputs』 variable range is bigger and this is in favor to updating of the connecting weights values, when the punishment factor is bigger, hidden layer outputs』 variable range is smaller and this is not in favor to updating of the connecting weights values but it can improve precision of networks. This explains the reason that the punishment factor should be increased graally in networks training process. It also explains feasibility of the new algorithm and BP algorithm』s disadvantage that connecting weigh values can not be updated sometimes.
Deposit forecasting is very important in deposit geology. The previous algorithms』 effect is not good in deposit forecasting because of much more input samples. The paper applies the new algorithm to deposit forecasting and expectant result is reached.
The paper points out the new algorithm』s strongpoint as well as to-be-improved places in the end.
Keywords: feed forward neural networks, convex optimization theory, training algorithm, deposit forecasting, application
BP演算法及其改進
2.1 BP演算法步驟
1°隨機抽取初始權值ω0;
2°輸入學習樣本對(Xp,Yp),學習速率η,誤差水平ε;
3°依次計算各層結點輸出opi,opj,opk;
4°修正權值ωk+1=ωk+ηpk,其中pk=,ωk為第k次迭代權變數;
5°若誤差E<ε停止,否則轉3°。
2.2 最優步長ηk的確定
在上面的演算法中,學習速率η實質上是一個沿負梯度方向的步長因子,在每一次迭代中如何確定一個最優步長ηk,使其誤差值下降最快,則是典型的一維搜索問題,即E(ωk+ηkpk)=(ωk+ηpk)。令Φ(η)=E(ωk+ηpk),則Φ′(η)=dE(ωk+ηpk)/dη=E(ωk+ηpk)Tpk。若ηk為(η)的極小值點,則Φ′(ηk)=0,即E(ωk+ηpk)Tpk=-pTk+1pk=0。確定ηk的演算法步驟如下
1°給定η0=0,h=0.01,ε0=0.00001;
2°計算Φ′(η0),若Φ′(η0)=0,則令ηk=η0,停止計算;
3°令h=2h, η1=η0+h;
4°計算Φ′(η1),若Φ′(η1)=0,則令ηk=η1,停止計算;
若Φ′(η1)>0,則令a=η0,b=η1;若Φ′(η1)<0,則令η0=η1,轉3°;
5°計算Φ′(a),若Φ′(a)=0,則ηk=a,停止計算;
6°計算Φ′(b),若Φ′(b)=0,則ηk=b,停止計算;
7°計算Φ′(a+b/2),若Φ′(a+b/2)=0,則ηk=a+b/2,停止計算;
若Φ′(a+b/2)<0,則令a=a+b/2;若Φ′(a+b/2)>0,則令b=a+b/2
8°若|a-b|<ε0,則令,ηk=a+b/2,停止計算,否則轉7°。
2.3 改進BP演算法的特點分析
在上述改進的BP演算法中,對學習速率η的選取不再由用戶自己確定,而是在每次迭代過程中讓計算機自動尋找最優步長ηk。而確定ηk的演算法中,首先給定η0=0,由定義Φ(η)=E(ωk+ηpk)知,Φ′(η)=dE(ωk+ηpk)/dη=E(ωk+ηpk)Tpk,即Φ′(η0)=-pTkpk≤0。若Φ′(η0)=0,則表明此時下降方向pk為零向量,也即已達到局部極值點,否則必有Φ′(η0)<0,而對於一維函數Φ(η)的性質可知,Φ′(η0)<0則在η0=0的局部范圍內函數為減函數。故在每一次迭代過程中給η0賦初值0是合理的。
改進後的BP演算法與原BP演算法相比有兩處變化,即步驟2°中不需給定學習速率η的值;另外在每一次修正權值之前,即步驟4°前已計算出最優步長ηk。
『貳』 比較演算法優缺點:
1.先來先服務先來先服務(FCFS, First Come First Serve)是最簡單的調度演算法,按先後順序進行調度。1. 定義按照作業提交或進程變為就緒狀態的先後次序,分派CPU;當前作業或進程佔用CPU,直到執行完或阻塞,才出讓CPU(非搶占方式)。在作業或進程喚醒後(如I/O完成),並不立即恢復執行,通常等到當前作業或進程出讓CPU。2.適用場景比較有利於長作業,而不利於短作業。有利於CPU繁忙的作業,而不利於I/O繁忙的作業。
2. 輪轉法輪轉法(Round Robin)是讓每個進程在就緒隊列中的等待時間與享受服務的時間成正比例。1. 定義將系統中所有的就緒進程按照FCFS原則,排成一個隊列。每次調度時將CPU分派給隊首進程,讓其執行一個時間片。時間片的長度從幾個ms到幾百ms。在一個時間片結束時,發生時鍾中斷。調度程序據此暫停當前進程的執行,將其送到就緒隊列的末尾,並通過上下文切換執行當前的隊首進程。進程可以未使用完一個時間片,就出讓CPU(如阻塞)。2. 時間片長度的確定時間片長度變化的影響過長->退化為FCFS演算法,進程在一個時間片內都執行完,響應時間長。過短->用戶的一次請求需要多個時間片才能處理完,上下文切換次數增加,響應時間長。對響應時間的要求:T(響應時間)=N(進程數目)*q(時間片)就緒進程的數目:數目越多,時間片越小系統的處理能力:應當使用戶輸入通常在一個時間片內能處理完,否則使響應時間,平均周轉時間和平均帶權周轉時間延長。
3. 多級反饋隊列演算法多級反饋隊列演算法(Round Robin with Multiple Feedback)是輪轉演算法和優先順序演算法的綜合和發展。1. 定義設置多個就緒隊列,分別賦予不同的優先順序,如逐級降低,隊列1的優先順序最高。每個隊列執行時間片的長度也不同,規定優先順序越低則時間片越長,如逐級加倍。新進程進入內存後,先投入隊列1的末尾,按FCFS演算法調度;若按隊列1一個時間片未能執行完,則降低投入到隊列2的末尾,同樣按FCFS演算法調度;如此下去,降低到最後的隊列,則按「時間片輪轉」演算法調度直到完成。僅當較高優先順序的隊列為空,才調度較低優先順序的隊列中的進程執行。如果進程執行時有新進程進入較高優先順序的隊列,則搶先執行新進程,並把被搶先的進程投入原隊列的末尾。2.優點為提高系統吞吐量和縮短平均周轉時間而照顧短進程。為獲得較好的I/O設備利用率和縮短響應時間而照顧I/O型進程。不必估計進程的執行時間,動態調節3. 幾點說明I/O型進程:讓其進入最高優先順序隊列,以及時響應I/O交互。通常執行一個小時間片,要求可處理完一次I/O請求的數據,然後轉入到阻塞隊列。計算型進程:每次都執行完時間片,進入更低級隊列。最終採用最大時間片來執行,減少調度次數。I/O次數不多,而主要是CPU處理的進程。在I/O完成後,放回優先I/O請求時離開的隊列,以免每次都回到最高優先順序隊列後再逐次下降。為適應一個進程在不同時間段的運行特點,I/O完成時,提高優先順序;時間片用完時,降低優先順序。
4. 優先順序法優先順序演算法(Priority Scheling)是多級隊列演算法的改進,平衡各進程對響應時間的要求。適用於作業調度和進程調度,可分成搶先式和非搶先式。1. 靜態優先順序作業調度中的靜態優先順序大多按以下原則確定:由用戶自己根據作業的緊急程度輸入一個適當的優先順序。由系統或操作員根據作業類型指定優先順序。系統根據作業要求資源情況確定優先順序。進程的靜態優先順序的確定原則:按進程的類型給予不同的優先順序。將作業的情態優先順序作為它所屬進程的優先順序。2. 動態優先順序進程的動態優先順序一般根據以下原則確定:根據進程佔用有CPU時間的長短來決定。根據就緒進程等待CPU的時間長短來決定。
5.短作業優先法短作業優先(SJF, Shortest Job First)又稱為「短進程優先」SPN(Shortest Process Next);這是對FCFS演算法的改進,其目標是減少平均周轉時間。1. 定義對預計執行時間短的作業(進程)優先分派處理機。通常後來的短作業不搶先正在執行的作業。2. SJF的特點(1) 優點:比FCFS改善平均周轉時間和平均帶權周轉時間,縮短作業的等待時間;提高系統的吞吐量;(2) 缺點:對長作業非常不利,可能長時間得不到執行;未能依據作業的緊迫程度來劃分執行的優先順序;難以准確估計作業(進程)的執行時間,從而影響調度性能。3. SJF的變型「最短剩餘時間優先」SRT(Shortest Remaining Time)(允許比當前進程剩餘時間更短的進程來搶占)「最高響應比優先」HRRN(Highest Response Ratio Next)(響應比R = (等待時間 + 要求執行時間) / 要求執行時間,是FCFS和SJF的折衷)6. 最高響應比優先法最高響應比優先法(HRN,Highest Response_ratio Next)是對FCFS方式和SJF方式的一種綜合平衡。FCFS方式只考慮每個作業的等待時間而未考慮執行時間的長短,而SJF方式只考慮執行時間而未考慮等待時間的長短。因此,這兩種調度演算法在某些極端情況下會帶來某些不便。HRN調度策略同時考慮每個作業的等待時間長短和估計需要的執行時間長短,從中選出響應比最高的作業投入執行。響應比R定義如下: R =(W+T)/T = 1+W/T其中T為該作業估計需要的執行時間,W為作業在後備狀態隊列中的等待時間。每當要進行作業調度時,系統計算每個作業的響應比,選擇其中R最大者投入執行。這樣,即使是長作業,隨著它等待時間的增加,W / T也就隨著增加,也就有機會獲得調度執行。這種演算法是介於FCFS和SJF之間的一種折中演算法。由於長作業也有機會投入運行,在同一時間內處理的作業數顯然要少於SJF法,從而採用HRN方式時其吞吐量將小於採用SJF 法時的吞吐量。另外,由於每次調度前要計算響應比,系統開銷也要相應增加。
『叄』 小化大是什麼
樓主算是問對人啦.我是做計算機博弈游戲開發的.
1、提出這個問題是為了解決象棋,五子棋這樣的二人全息零和博弈
二人:游戲是2個人玩的
全息:雙方的棋面信息都可以看到.(撲克牌就不同了)
零和:雙方的利益和是0.如果你勝利積1分.我就是輸-1分.相加就是0
2、極大極小的概念是相對的
我走棋,希望對我的利益幫助是最大的.對你的利益幫主是最小的
3、經典的例子很多.井字棋,五子棋,中國象棋,國際象棋等
象棋為例:
我和樓主對弈,某一步,我有N中走法,期中一種走法x後.我還要評估樓主針對我的X走法的所有應付策略.如果對2個人的局面做一個評判.我肯定希望選擇者N種走法中,即時你應對了,對我利益也是最大的那種走法.
4、這個概念我就貼個地址吧.後面的負極大極小演算法,alphabeta剪枝演算法都很經典的
希望你早日寫一個屬於你自己的極大較小值演算法的游戲
好運!
『肆』 極大極小值演算法有什麼優缺點
Minimax演算法常用於棋類等由兩方較量的游戲和程序。該演算法是一個零總和演算法,即一方要在可選的選項中選擇將其優勢最大化的選擇,另一方則選擇令對手優勢最小化的一個,其輸贏的總和為0(有點像能量守恆,就像本身兩個玩家都有1點,最後輸家要將他的1點給贏家,但整體上還是總共有2點)。很多棋類游戲可以採取此演算法,例如tic-tac-toe。
『伍』 最小二乘法、回歸分析法、灰色預測法、決策論、神經網路等5個演算法的使用范圍及優缺點是什麼
最小二乘法:通過最小化誤差的平方和尋找數據的最佳函數匹配。利用最小二乘法可以簡便地求得未知的數據,並使得這些求得的數據與實際數據之間誤差的平方和為最小。最小二乘法還可用於曲線擬合。其他一些優化問題也可通過最小化能量或最大化熵用最小二乘法來表達。優點:實現簡單,計算簡單。缺點:不能擬合非線性數據.
回歸分析法:指的是確定兩種或兩種以上變數間相互依賴的定量關系的一種統計分析方法。在大數據分析中,回歸分析是一種預測性的建模技術,它研究的是因變數(目標)和自變數(預測器)之間的關系。這種技術通常用於預測分析,時間序列模型以及發現變數之間的因果關系。優點:在分析多因素模型時,更加簡單和方便,不僅可以預測並求出函數,還可以自己對結果進行殘差的檢驗,檢驗模型的精度。缺點:回歸方程式只是一種推測,這影響了因子的多樣性和某些因子的不可測性,使得回歸分析在某些情況下受到限制。
灰色預測法:
色預測法是一種對含有不確定因素的系統進行預測的方法 。它通過鑒別系統因素之間發展趨勢的相異程度,即進行關聯分析,並對原始數據進行生成處理來尋找系統變動的規律,生成有較強規律性的數據序列,然後建立相應的微分方程模型,從而預測事物未來發展趨勢的狀況。它用等時間距離觀測到的反應預測對象特徵的一系列數量值構造灰色預測模型,預測未來某一時刻的特徵量,或者達到某一特徵量的時間。優點:對於不確定因素的復雜系統預測效果較好,且所需樣本數據較小。缺點:基於指數率的預測沒有考慮系統的隨機性,中長期預測精度較差。
決策樹:在已知各種情況發生概率的基礎上,通過構成決策樹來求取凈現值的期望值大於等於零的概率,評價項目風險,判斷其可行性的決策分析方法,是直觀運用概率分析的一種圖解法。由於這種決策分支畫成圖形很像一棵樹的枝幹,故稱決策樹。在機器學習中,決策樹是一個預測模型,他代表的是對象屬性與對象值之間的一種映射關系。優點:能夠處理不相關的特徵;在相對短的時間內能夠對大型數據源做出可行且效果良好的分析;計算簡單,易於理解,可解釋性強;比較適合處理有缺失屬性的樣本。缺點:忽略了數據之間的相關性;容易發生過擬合(隨機森林可以很大程度上減少過擬合);在決策樹當中,對於各類別樣本數量不一致的數據,信息增益的結果偏向於那些具有更多數值的特徵。
神經網路:優點:分類的准確度高;並行分布處理能力強,分布存儲及學習能力強,對雜訊神經有較強的魯棒性和容錯能力,能充分逼近復雜的非線性關系;具備聯想記憶的功能。缺點:神經網路需要大量的參數,如網路拓撲結構、權值和閾值的初始值;不能觀察之間的學習過程,輸出結果難以解釋,會影響到結果的可信度和可接受程度;學習時間過長,甚至可能達不到學習的目的。
『陸』 數據挖掘十大經典演算法及各自優勢
數據挖掘十大經典演算法及各自優勢
不僅僅是選中的十大演算法,其實參加評選的18種演算法,實際上隨便拿出一種來都可以稱得上是經典演算法,它們在數據挖掘領域都產生了極為深遠的影響。
1. C4.5
C4.5演算法是機器學習演算法中的一種分類決策樹演算法,其核心演算法是ID3演算法. C4.5演算法繼承了ID3演算法的優點,並在以下幾方面對ID3演算法進行了改進:
1) 用信息增益率來選擇屬性,克服了用信息增益選擇屬性時偏向選擇取值多的屬性的不足;2) 在樹構造過程中進行剪枝;3) 能夠完成對連續屬性的離散化處理;4) 能夠對不完整數據進行處理。
C4.5演算法有如下優點:產生的分類規則易於理解,准確率較高。其缺點是:在構造樹的過程中,需要對數據集進行多次的順序掃描和排序,因而導致演算法的低效。
2. The k-means algorithm 即K-Means演算法
k-means algorithm演算法是一個聚類演算法,把n的對象根據他們的屬性分為k個分割,k < n。它與處理混合正態分布的最大期望演算法很相似,因為他們都試圖找到數據中自然聚類的中心。它假設對象屬性來自於空間向量,並且目標是使各個群組內部的均 方誤差總和最小。
3. Support vector machines
支持向量機,英文為Support Vector Machine,簡稱SV機(論文中一般簡稱SVM)。它是一種監督式學習的方法,它廣泛的應用於統計分類以及回歸分析中。支持向量機將向量映射到一個更 高維的空間里,在這個空間里建立有一個最大間隔超平面。在分開數據的超平面的兩邊建有兩個互相平行的超平面。分隔超平面使兩個平行超平面的距離最大化。假 定平行超平面間的距離或差距越大,分類器的總誤差越小。一個極好的指南是C.J.C Burges的《模式識別支持向量機指南》。van der Walt 和 Barnard 將支持向量機和其他分類器進行了比較。
4. The Apriori algorithm
Apriori演算法是一種最有影響的挖掘布爾關聯規則頻繁項集的演算法。其核心是基於兩階段頻集思想的遞推演算法。該關聯規則在分類上屬於單維、單層、布爾關聯規則。在這里,所有支持度大於最小支持度的項集稱為頻繁項集,簡稱頻集。
5. 最大期望(EM)演算法
在統計計算中,最大期望(EM,Expectation–Maximization)演算法是在概率(probabilistic)模型中尋找參數最大似然 估計的演算法,其中概率模型依賴於無法觀測的隱藏變數(Latent Variabl)。最大期望經常用在機器學習和計算機視覺的數據集聚(Data Clustering)領域。
6. PageRank
PageRank是Google演算法的重要內容。2001年9月被授予美國專利,專利人是Google創始人之一拉里·佩奇(Larry Page)。因此,PageRank里的page不是指網頁,而是指佩奇,即這個等級方法是以佩奇來命名的。
PageRank根據網站的外部鏈接和內部鏈接的數量和質量倆衡量網站的價值。PageRank背後的概念是,每個到頁面的鏈接都是對該頁面的一次投票, 被鏈接的越多,就意味著被其他網站投票越多。這個就是所謂的「鏈接流行度」——衡量多少人願意將他們的網站和你的網站掛鉤。PageRank這個概念引自 學術中一篇論文的被引述的頻度——即被別人引述的次數越多,一般判斷這篇論文的權威性就越高。
7. AdaBoost
Adaboost是一種迭代演算法,其核心思想是針對同一個訓練集訓練不同的分類器(弱分類器),然後把這些弱分類器集合起來,構成一個更強的最終分類器 (強分類器)。其演算法本身是通過改變數據分布來實現的,它根據每次訓練集之中每個樣本的分類是否正確,以及上次的總體分類的准確率,來確定每個樣本的權 值。將修改過權值的新數據集送給下層分類器進行訓練,最後將每次訓練得到的分類器最後融合起來,作為最後的決策分類器。
8. kNN: k-nearest neighbor classification
K最近鄰(k-Nearest Neighbor,KNN)分類演算法,是一個理論上比較成熟的方法,也是最簡單的機器學習演算法之一。該方法的思路是:如果一個樣本在特徵空間中的k個最相似(即特徵空間中最鄰近)的樣本中的大多數屬於某一個類別,則該樣本也屬於這個類別。
9. Naive Bayes
在眾多的分類模型中,應用最為廣泛的兩種分類模型是決策樹模型(Decision Tree Model)和樸素貝葉斯模型(Naive Bayesian Model,NBC)。 樸素貝葉斯模型發源於古典數學理論,有著堅實的數學基礎,以 及穩定的分類效率。同時,NBC模型所需估計的參數很少,對缺失數據不太敏感,演算法也比較簡單。理論上,NBC模型與其他分類方法相比具有最小的誤差率。 但是實際上並非總是如此,這是因為NBC模型假設屬性之間相互獨立,這個假設在實際應用中往往是不成立的,這給NBC模型的正確分類帶來了一定影響。在屬 性個數比較多或者屬性之間相關性較大時,NBC模型的分類效率比不上決策樹模型。而在屬性相關性較小時,NBC模型的性能最為良好。10. CART: 分類與回歸樹
CART, Classification and Regression Trees。 在分類樹下面有兩個關鍵的思想。第一個是關於遞歸地劃分自變數空間的想法;第二個想法是用驗證數據進行剪枝。
以上是小編為大家分享的關於數據挖掘十大經典演算法及各自優勢的相關內容,更多信息可以關注環球青藤分享更多干貨
『柒』 什麼是極小化極大演算法
樓主算是問對人啦。我是做計算機博弈游戲開發的。
1、提出這個問題是為了解決象棋,五子棋這樣的二人全息零和博弈
二人:游戲是2個人玩的
全息:雙方的棋面信息都可以看到。(撲克牌就不同了)
零和:雙方的利益和是0.如果你勝利積1分。我就是輸-1分。相加就是0
2、極大極小的概念是相對的
我走棋,希望對我的利益幫助是最大的。對你的利益幫主是最小的
3、經典的例子很多。井字棋,五子棋,中國象棋,國際象棋等
象棋為例:
我和樓主對弈,某一步,我有N中走法,期中一種走法x後。我還要評估樓主針對我的X走法的所有應付策略。如果對2個人的局面做一個評判。我肯定希望選擇者N種走法中,即時你應對了,對我利益也是最大的那種走法。
4、這個概念我就貼個地址吧。後面的負極大極小演算法,alphabeta剪枝演算法都很經典的
希望你早日寫一個屬於你自己的極大較小值演算法的游戲
http://www.xqbase.com/computer.htm【一定要通讀10遍以上】
好運!
『捌』 極大極小演算法有些不明白
先來說極小極大演算法主要應用於什麼樣的游戲:
1. 零和游戲(Zero-sum Game):意思就是你死我活,一方的勝利代表另一方的失敗,比如,象棋,五子棋等。
2. 完全信息(Perfect Information):玩家知道之前所有的步驟。象棋就是完全信息,因為玩家是交替著落子,且之前的步驟都能在棋盤上體現,但是石頭剪子布就不是。
這樣的游戲通常可以把他們看作一個樹狀圖,把每一種可能性列出來。比如下面這個井字棋游戲,Max代表你自己,Min代表你的對手。
這個時候我們需要給每一種結果一個分數,就是這里的Utility。這個分數是站在我自己(也就是Max)的角度評估的,比如上圖中我贏了就是+1,輸了是-1,平局時0。所以,我希望最大化這個分數,而我的對手希望最小化這個分數。(在游戲中,這個分數被稱為static value。)這里要說一下,井字棋是個比較簡單的游戲,所以可以列出所有可能的結果。但是,大部分游戲是不太可能把所有結果都列出來的。根據計算機運算量,我們可能只能往前推7,8步,所以這個時候分數就不只-1,1,0這么簡單了,會有專門的演算法來根據當前結果給不同的分數。
假設我們有如下圖的游戲,我是先手,我應該如何利用Minmax演算法來選出第一步怎麼走呢?
當然對於一個復雜的游戲來說,比如象棋,肯定是需要非常多步才能完成的。這就導致結果的數量是成幾何增長的,也就是說,如果這個游戲每一步都有n個選擇,那麼在x步以後,將會有n^x個選擇。這個時候,我們就需要採取剪枝演算法(Alpha-Beta)來減少運算量。從剪枝演算法這個名字我們就能看出,這個演算法能讓我們剪掉樹狀圖中的一些分支,從而減少運算量。在這里也說一下剪枝演算法,因為這並不是個不同於極小極大的演算法,而是極小極大演算法的升級版。
我們將游戲簡化成如下圖,使用Minimax演算法,我們可以得出這樣的結果