周陽
【摘 要】針對(duì)BP神經(jīng)網(wǎng)絡(luò)在數(shù)據(jù)挖掘領(lǐng)域的應(yīng)用研究,將其估值預(yù)測(cè)能力應(yīng)用到基金預(yù)測(cè)方面,通過BP神經(jīng)網(wǎng)絡(luò)建立起一套基金預(yù)測(cè)模型。選取2016年某銀行基金數(shù)據(jù)作為實(shí)驗(yàn)數(shù)據(jù),對(duì)實(shí)驗(yàn)數(shù)據(jù)進(jìn)行訓(xùn)練和測(cè)試,結(jié)果表明,BP神經(jīng)網(wǎng)絡(luò)能預(yù)測(cè)基金凈值和基金風(fēng)險(xiǎn)的趨勢(shì)。
【關(guān)鍵詞】數(shù)據(jù)挖掘;BP神經(jīng)網(wǎng)絡(luò);基金;預(yù)測(cè)模型
【中圖分類號(hào)】TP183 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】1674-0688(2019)12-0077-02
1 概述
近年來,“大數(shù)據(jù)”已成當(dāng)下社會(huì)的高頻詞匯,人們?cè)跒g覽網(wǎng)頁、使用手機(jī)軟件等都會(huì)產(chǎn)生大量的數(shù)據(jù)留存在企業(yè)。數(shù)據(jù)挖掘技術(shù)有分類、估值、預(yù)測(cè)等功能,將數(shù)據(jù)挖掘技術(shù)應(yīng)用到基金投資過程中,對(duì)基金的投資和選基過程進(jìn)行數(shù)據(jù)挖掘,從而為投資者提供幫助。對(duì)基金的短期收益做簡(jiǎn)單預(yù)測(cè),向投資者進(jìn)行低價(jià)買入高價(jià)賣出,是繼續(xù)持有還是清倉出售提供投資建議。本文基于基金的歷史凈值的變化,結(jié)合證券市場(chǎng)的股指變化,選用BP神經(jīng)網(wǎng)絡(luò)算法對(duì)基金收益與風(fēng)險(xiǎn)進(jìn)行短期預(yù)測(cè)。
2 BP神經(jīng)網(wǎng)絡(luò)
BP神經(jīng)網(wǎng)絡(luò)又稱為誤差反向傳播網(wǎng)絡(luò),將期望與實(shí)際輸出之間的誤差通過構(gòu)建的神經(jīng)網(wǎng)絡(luò)反向傳播,經(jīng)過輸入數(shù)據(jù)正向傳播和誤差反向傳播的過程,以獲得最終達(dá)到訓(xùn)練次數(shù)或無限逼近期望值時(shí)神經(jīng)網(wǎng)絡(luò)的權(quán)值。
一個(gè)神經(jīng)網(wǎng)絡(luò)通常由一個(gè)輸入層、多個(gè)隱層和一個(gè)輸出層構(gòu)成。構(gòu)建神經(jīng)網(wǎng)絡(luò)的重點(diǎn)在于如何設(shè)計(jì)隱層和各神經(jīng)元之間的權(quán)重。
3 基金預(yù)測(cè)模型的設(shè)計(jì)
基金的收益與風(fēng)險(xiǎn)預(yù)測(cè)實(shí)際上是求解其收益與風(fēng)險(xiǎn)下一個(gè)時(shí)間段內(nèi)的變動(dòng)趨勢(shì),而選用的BP神經(jīng)網(wǎng)絡(luò)的算法主要實(shí)現(xiàn)輸入數(shù)據(jù)的前向傳播和實(shí)際輸出與期望的誤差的反向傳播過程。輸入數(shù)據(jù)正向傳播時(shí),通過隱含層及隱含層的權(quán)重,計(jì)算得到實(shí)際的輸出,如果實(shí)際輸出值沒有達(dá)到期望輸出值,則計(jì)算二者的誤差,并通過神經(jīng)網(wǎng)絡(luò)再反向傳播。經(jīng)過一定次數(shù)的訓(xùn)練,將與誤差最小的權(quán)值作用于各個(gè)神經(jīng)元,即得到訓(xùn)練完成的神經(jīng)網(wǎng)絡(luò)。
4 算法設(shè)計(jì)
4.1 輸入、輸出數(shù)據(jù)選擇
在BP神經(jīng)網(wǎng)絡(luò)中,輸入、輸出數(shù)據(jù)的選擇會(huì)直接影響到整個(gè)模型的建立。本文預(yù)測(cè)基金凈值的變化和基金的風(fēng)險(xiǎn)情況,我們需計(jì)算出每只基金上個(gè)月的收益和風(fēng)險(xiǎn)情況,再計(jì)算本月每只基金的收益和情況,與上月的差值作為輸入。我們以次月每只基金的收益和風(fēng)險(xiǎn)情況作為輸出進(jìn)行模型的訓(xùn)練。
激勵(lì)函數(shù)為g(x)取Sigmoid函數(shù):
g(x)=(1)
隱含層的輸出,其中ωij和aj分別為輸入層到隱層的權(quán)重和偏置:
Hj=gωijxj+aj(2)
輸出層的輸出,其中ωjk和bk分別為隱層到輸出層的權(quán)重和偏置:
Ok=Hjωjk+bk(3)
誤差:
E=(Yk-Ok)2(4)
4.2 歸一化數(shù)據(jù)
進(jìn)行數(shù)據(jù)歸一化主要是因?yàn)楦鶕?jù)輸入數(shù)據(jù)最小相關(guān)性原則,神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù)往往都代表不同的意義,只有通過歸一化處理后,才能使神經(jīng)網(wǎng)絡(luò)的訓(xùn)練在輸入時(shí)更加統(tǒng)一,不會(huì)因?yàn)檩斎霐?shù)據(jù)的較大波動(dòng)造成整個(gè)神經(jīng)網(wǎng)絡(luò)的不穩(wěn)定而影響輸出結(jié)果。本文設(shè)計(jì)的BP神經(jīng)網(wǎng)絡(luò)將Sigmoid作為激活函數(shù),它是便于求導(dǎo)的平滑函數(shù),能使誤差梯度變化更加平緩和準(zhǔn)確。本文經(jīng)計(jì)算的收益增長和收益變化(風(fēng)險(xiǎn)),均在[-1,1]之間,無需進(jìn)行歸一化處理,可直接使用。
4.3 劃分訓(xùn)練集、測(cè)試集
在輸入和輸出數(shù)據(jù)準(zhǔn)備完成后,為了驗(yàn)證設(shè)計(jì)的神經(jīng)網(wǎng)絡(luò)的運(yùn)算和預(yù)測(cè)能力,我們把輸入和輸出數(shù)據(jù)分別劃分為訓(xùn)練集和測(cè)試集。訓(xùn)練集的數(shù)據(jù)用以訓(xùn)練生成神經(jīng)網(wǎng)絡(luò)權(quán)值,測(cè)試集的數(shù)據(jù)用來驗(yàn)證模型的準(zhǔn)確性。
4.4 算法的實(shí)現(xiàn)
本文采用的BP神經(jīng)網(wǎng)絡(luò)為三層結(jié)構(gòu),包括輸入層、隱含層和輸出層。算法描述如下。
(1)選取輸入數(shù)據(jù),隨機(jī)生成輸出層到隱層和隱層到輸出層的權(quán)重,根據(jù)選定的輸入數(shù)據(jù)確定輸出數(shù)據(jù)。
(2)將輸入數(shù)據(jù)通過隱層和輸出層節(jié)點(diǎn)的處理計(jì)算得到的網(wǎng)絡(luò)實(shí)際輸出進(jìn)一步與期望輸出相比較,并計(jì)算實(shí)際輸出與期望輸出的誤差。
(3)將誤差作為修改權(quán)值的依據(jù)反向傳播至輸入層,再修正各層的權(quán)系數(shù),并且反復(fù)這一過程。
(4)直到實(shí)際輸出與期望輸出的誤差達(dá)到預(yù)先設(shè)定的誤差收斂標(biāo)準(zhǔn),從而獲得最終的網(wǎng)絡(luò)權(quán)值。
(5)將上月和本月的數(shù)據(jù)作為輸入,根據(jù)計(jì)算得到的權(quán)值作用于整個(gè)神經(jīng)網(wǎng)絡(luò)權(quán)值進(jìn)行計(jì)算,從而得到的預(yù)測(cè)結(jié)果。
5 BP神經(jīng)網(wǎng)絡(luò)在基金預(yù)測(cè)的實(shí)現(xiàn)
基金凈值和風(fēng)險(xiǎn)的預(yù)測(cè)采用三層的BP神經(jīng)網(wǎng)絡(luò)算法實(shí)現(xiàn),本文選取了166只基金的總共1 992條數(shù)據(jù)作為訓(xùn)練樣本,50只基金總共600條數(shù)據(jù)作為測(cè)試數(shù)據(jù)。將每只基金2—11月中每月的基金的2個(gè)指標(biāo)(收益、風(fēng)險(xiǎn))和與上月的2個(gè)指標(biāo)差作為輸入,一共4個(gè)輸入,故輸入層有4個(gè)節(jié)點(diǎn);隱層的節(jié)點(diǎn)數(shù)的選擇通常根據(jù)經(jīng)驗(yàn)及實(shí)現(xiàn)結(jié)果分析后實(shí)時(shí)調(diào)整。經(jīng)過反復(fù)試驗(yàn)證實(shí),本文的隱層節(jié)點(diǎn)數(shù)設(shè)置為15時(shí),學(xué)習(xí)速率設(shè)置為0.167時(shí),能取得較好的訓(xùn)練結(jié)果。故隱含層有15個(gè)節(jié)點(diǎn);將下個(gè)月受益或風(fēng)險(xiǎn)分別作為輸出,故輸出層有一個(gè)節(jié)點(diǎn)。
將輸入、輸入數(shù)據(jù),各層節(jié)點(diǎn)數(shù)等數(shù)據(jù)放入算法模型進(jìn)行訓(xùn)練和測(cè)試,能較為準(zhǔn)確地預(yù)測(cè)基金凈值和風(fēng)險(xiǎn)。具體實(shí)現(xiàn)過程如圖1所示。
6 結(jié)語
本文采用了BP神經(jīng)網(wǎng)絡(luò)對(duì)某銀行2016年的基金凈值數(shù)據(jù)進(jìn)行挖掘和預(yù)測(cè),運(yùn)用每月的基金凈值和風(fēng)險(xiǎn)數(shù)據(jù)作為輸入數(shù)據(jù),成功預(yù)測(cè)下個(gè)月的基金凈值和風(fēng)險(xiǎn)走勢(shì)。
參 考 文 獻(xiàn)
[1]許興軍,顏鋼鋒.基于BP神經(jīng)網(wǎng)絡(luò)的股價(jià)趨勢(shì)分析[J].浙江金融,2011(11):37-40.
[2]高玉明,張仁津.基于遺傳算法和BP神經(jīng)網(wǎng)絡(luò)的房?jī)r(jià)預(yù)測(cè)分析[J].計(jì)算機(jī)工程,2014,40(4):187-191.
[3]Matei O,Nagorny K,Stoebener K.Applying data mining in the context of Industrial Internet[J].International Journal of Advance Computer Science & Applications,2016,7(1).
[4]Ticknor J L.A Bayesian regularized artificial neural network for stock market forecasting[J].Expert Systems with Applications,2013,40(14):5501-5506.
[5]Somani P,Talele S,Sawant S.Stock Market Pre-
diction Using Hidden Markov Model[A].Information Technology & Artificial Intelligence Conference.Infor-
mation Technology & Artificial Intelligence Conferen-
ce,2015:89-92.