黃招娣,應宛月,余立琴,肖祥闊,羅 佳
(華東交通大學電氣與電子學院,江西南昌330013)
人工神經網絡中的BP網絡以其結構簡單、智能化、自適應能力強和自學能力強等特點,在信號預測和組合優化等方面得到廣泛應用[1]。但傳統BP神經網絡采用梯度下降法求解最優問題,容易陷入局部極值,且其網絡收斂速度非常慢[2]。因此,研究一種改進型BP神經網絡,并將其用于證券投資組合優化方面具有重要意義。
PSO算法是一種基于群體的算法,它的基本概念源自對鳥群捕食行為的研究,屬于一種基于種群的全局搜索算法[1-2]。
本文提出一種基于PSO的BP神經網絡優化證券投資組合方法。采用PSO算法替代了BP神經網的梯度下降法[3],能使BP神經網絡的輸入層、隱含層和輸出層結點個數達到最優解,即優化了BP神經網絡模型。從而有效地解決BP神經網絡自身局限、迭代次數過多、收斂精度低等問題[2-10]。
BP神經網絡屬于一種反饋型網絡,輸出量屬于0到1之間的連續量,其前端神經元的傳遞函數為S型函數,將輸入到輸出之間實現一種非線性映射[5]。
由于采用反向傳播學習算法調整權值,因此稱為BP神經網絡[6]。如圖1所示,BP神經網絡模型有輸入U和輸出Y,并且輸入和輸出之間由輸入層、隱含層和輸出層等組成,每層的神經元采用節點表示。

圖1 BP神經網絡的3層網絡結構Fig.1 The three-layer network structure of the BP neural network
BP神經網絡的學習過程可以分成工作信號正向傳播和誤差信號反向傳播兩部分。信號從輸入層經過隱含層傳向輸出層,信號向前傳遞過程中網絡的權值是不變的,每一層神經元的狀態只影響下一層神經元的狀態,稱之為工作信號正向傳播[7-8];如果輸出層得不到期望的輸出,則轉入誤差信號反向傳播。將神經網絡的實際輸出與期望輸出之間的差值稱為誤差信號[4-15]。
如圖2所示,一種基本的BP神經元模型,其輸入都通過一個適應的權值W和下一層相連,網絡輸出為a=f(WP+b)。其中,P表示輸入,b表示系數,a表示輸出。 f()就是表示輸入/輸出關系的傳遞函數。在BP神經網絡中,隱含層神經元的傳遞函數通常用log-sig?moid型函數logsig()、tansigmoid型函數tansig()以及純線性函數purelin()等表示[16]。

圖2 BP神經元模型Fig.2 The model of BPneuron
1995年由Eberhart博士和Kennedy博士提出了粒子群優化算法。在粒子群最優算法中,將每一個需要優化問題的解都可轉化為D維搜索空間上的一個點,該點稱之為“粒子”(particle)。每個粒子都對應有一個被目標函數決定的適應值(fitness value),每個粒子的速度決定了粒子們飛翔的方向與距離,粒子們就追蹤當前最優粒子在解的空間中搜索[1]。其具體闡述:初始化隨機粒子[14];在迭代過程中,通過粒子的兩個“極值”更新本身的位置,第一個極值是粒子本身尋找的當前最優解,此解叫作個體極值Pi;另一個極值是整個種群找到的當前最優解,此極值是全局極值Pg;通過迭代尋找到的當前最優解[16]。
PSO算法的數學表達方式:假設在D維的搜索空間內,將m個粒子組成一個群體。第i個粒子位置表達為 Xi=(xi1,xi2,...,xiD);第 i個粒子經歷過的最優位置表達為 Pi=(pi1,pi2,...,piD),整個群體所有粒子所經歷過的最優位置表達為 Pg=(pg1,pg2,...,pgD)。第 i個粒子的速度表達為Vi=(vi1,vi2,...,viD)。
粒子群算法采用下列公式對粒子所在的位置不斷更新:

其中:r()為[0,1]之間的隨機數。i=1,2,…,m;d=1,2,…,D;w是非負數,稱為慣性因子(慣性權重),取值在0.1~0.9之間;c1表示為粒子對本身的認識即“個體認知”,是追蹤粒子的權重系數,其值通常設為2;c2表示為粒子對整個群體的認識即“社會認知”,是追蹤粒子群體的權重系數,其值通常設為2。
本文提出了一種基于PSO優化的BP神經網絡算法,研究通過PSO調整BP神經網絡中的權值和閾值,即BP神經網絡中權值和閾值的修正不再按照傳統的梯度下降法來修正,而是采用PSO中的粒子速度和位置來修正,這樣避免了梯度下降法導致算法收斂速度慢和易陷入局部極小[9-11]。
將粒子種群中的全局極值Pg傳遞給BP神經網絡作為其權值和閾值進行計算,將BP神經網絡的誤差作為粒子群算法的適應度值,以此作為粒子位置更新的判斷依據。如圖3所示為基于粒子群優化的BP神經網絡算法工作流程圖,其實驗步驟如下:
步驟1:初始化參數:迭代次數設置為t=1,預設最大迭代次數為tmax,最小適應度值設置為ε=1,初始化慣性權值w,初始化學習因子c1和c2;確定粒子數目m,初始化粒子種群的位置和速度。
步驟2:初始化BP神經網絡的權值和閾值,首先設定神經網絡輸入層、隱含層和輸出層等3層的神經元個數;然后將粒子的初始最優位置傳遞給BP神經網絡,即初始化BP神經網絡的權值和閾值。
步驟3:利用傳遞函數公式計算BP網絡的輸出,節點i在第 p組樣本對輸入時,輸出為X=(x1,x2,…,xN)T,即

式中,Ri=E(ri)表示為第 p組樣本輸入時的節點i輸入值,f()可取S型作用函數式,即從輸入層經隱含層至輸出層,求得網絡輸出層節點的輸出值。
步驟4:計算出平均誤差 Ri=E(rp),其中
σp2為輸出的期望值,并將網絡誤差反饋給PSO作為其適應度值g(t)。
步驟5:根據公式(1)和(2),分析粒子的軌跡,更新其速度與位置。
步驟6:通過粒子的g(t)確定其最優位置:將粒子當前位置與其個體最優位置Pi進行比較,若粒子當前位置優于其個體最優位置Pi,實現個體最優位置Pi值賦予當前位置;通過粒子的g(t)確定全局最優位置:將粒子當前位置與全局最優位置Pg進行比較,若當前位置
優于Pg,將其當前位置值賦予Pg[1]。
步驟7:if( f()<g(t)‖t>tmax)算法執行完畢后,若else則執行步驟8。
步驟8:t=t+1,返回到步驟3。

圖3 基于粒子群優化的BP神經網絡算法工作流程圖Fig.3 The work flowchart of the BPneural network algorithm based on particle swarm optimization
根據馬克維茨理論建立模型。在證券投資組合風險已定的情況下,使預期收益最大目標函數:

約束條件:

其中 X=(x1,x2,…,xN)T表示為證券投資組合的權重向量;R=(R1,R2,…,RN)T,Ri=E(ri)表示為第 i種證券投資的預期回報率;Ri=E(rp)表示為證券投資組合的期望值;σp2表示證券投資組合的回報率方差。
本文以markowitz證券投資理論為基本框架,采用資本資產定價理論(CAPM)作為證券組合的理論基礎,從而達到簡化模型參數以及降低計算工作量的目的[15]。
通過構造評價函數,引入權重參數μ和(1-μ),其中權重參數μ表示為投資者對投資凈收益權重值;權重參數(1-μ)表示為投資者對投資的總體投資風險權重值。權重參數表示投資決策者對投資凈收益和總體投資風險的重視程度,μ值越大表示投資決策者更看重投資凈收益;反之表示投資者比較保守,不敢冒太大的投資風險。假設投資者購買 N種證券,記證券的 α系數為 α=(α1,α2,…,αN),β系數為β=(β1,β2,…,βN)T,投資權重是 X=(x1,x2,…,xN)T,σm2表示市場風險,Em表示市場平均收益率,另外:假定在比較短的時間內,各種資產的誤差項是定值,即誤差項的方差為0;令 Ai=αi+βiEm,A=(A1,A2,…,AN)T。根據以上分析,目標函數就可以表示為

市場方差為0.002 6,市場收益率為-0.026 3。利用matlab仿真軟件進行數據分析求解得證券投資比例和收益率與風險損失率的關系。

表1 證券平均收益率和投資比例表Tab.1 The table of average yield and investment proportion for portfolio investment
收益率隨著風險損失率的增長而增長,當收益率增長到一定水平時將保持不變。因此收益率不是隨著風險損失率無限增長的。通過以上實驗分析可知,定位好一個合適的期望值和風險損失值,根據投資者的喜好可以選擇合理的投資方案[16]。
利用粒子群算法調整BP神經網絡的權值和閾值,對BP神經網絡模型進行了優化,而且利用該方法解決了證券投資組合的實際優化問題,并取得了較好的實驗效果。實驗結果證明:該優化方法優于傳統的BP神經網絡優化方法。
[1]李愛國,覃征,鮑復民,等.粒子群優化算法[J].計算機工程與應用,2002,10(21):1-3.
[2]王羽,馬光文,楊道輝.基于育種算法的BP網絡學習研究[J].水力發電,2008,34(8):12-13.
[3]衷路生,齊葉鵬,楊輝,等.PSO優化的LS-SVM在列車弓網系統的建模研究[J].華東交通大學學報,2012,29(3):1-6.
[4]MARKOWITZ H.Foundation of portfolio theory[J].Journal of Finance,1991(2):469-477.
[5]陳科燕,肖冬榮.基于遺傳算法的最優化證券投資組合模型[J].南京氣象學院學報,2003,26(5):707-711.
[6]國嘉,王瑞敏,王家海,等.基于遺傳算法的神經網絡學習方法[J].計算機與數字工程,2003,32(2):98-101.
[7]鄧雪,李榮鈞.基于模糊遺傳算法的自融資有效投資組合研究[J].經濟數學,2009,26(4):91-96.
[8]徐以山,曾碧,尹秀文,等.基于改進粒子群算法的BP神經網絡及其應用[J].計算機工程與應用,2009,45(35):233-235.
[9]秦焱,朱宏,李旭偉.基于改進型粒子群優化算法的BP網絡在股票預測中的應用[J].計算機工程與科學,2008,30(4):66-79.
[10]崔吉峰,乞建勛,楊尚東.基于粒子群改進BP神經網絡的組合預測模型及其應用[J].中南大學學報,2009,40(1):190-194.
[11]李文婷,吳錦.基于改進粒子群算法的神經網絡建模[J].機械管理開發,2011,122(4):186-188.
[12]MARKOWITZ H.Portfolio selection[J].Journal of Finance,1952,7(1):77-91.
[13] SOLEIMANI H,GOLMAKANI H R.Markowitz-based portfolio selection with minimum transaction lots,cardinality constraints and regarding sector capitalization using genetic algorithm[J].Expert Systems with Applications,2009,36(3):5058-5063.
[14]王安民,劉翔.證券投資組合模型分析[J].西安電子科技大學學報,1996,23(4):468-473.
[15]藍榮.連續復利型E-V風險下的證券投資模型[J].華東交通大學學報,2001,18(4):66-68.
[16]朱小梅,郭志剛,楊先鳳.基于遺傳BP神經網絡優化證券組合投資[J].漢江大學學報,2005,33(3):47-50.