樊紅珍
摘要:通過對云存儲數(shù)據(jù)庫查詢過程的原理進行研究,該文提出的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法主要通過對云存儲數(shù)據(jù)的關鍵詞進行相似度對比,利用神經(jīng)網(wǎng)絡算法對查詢數(shù)據(jù)樣本進行記憶訓練,通過對查詢關鍵字進行數(shù)據(jù)匹配,最終實現(xiàn)數(shù)據(jù)的準確查詢。為了測試該文設計的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法的可行性及準確性能,作者在完成了模型構建后,Matlab軟件中構建實驗場景,模擬數(shù)據(jù)庫檢索過程,完成了對查詢方法進行測試驗證。仿真結果表明,該文提出的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法的準確率高達99.3%,具有較高的檢索精度及穩(wěn)定性。
關鍵字:BP神經(jīng)網(wǎng)絡; 數(shù)據(jù)庫; 查詢;準確度
中圖分類號:TP393 文獻標識碼:A 文章編號:1009-3044(2017)04-0001-03
神經(jīng)網(wǎng)絡系統(tǒng)是根據(jù)人體神經(jīng)系統(tǒng)的基本原理構建的,其在一定程度上實現(xiàn)了記憶和訓練過程[1-2]。此項功能體現(xiàn)了神經(jīng)網(wǎng)絡與傳統(tǒng)計算機算法存在的根本差異,其具備在線學習、自調(diào)節(jié)以及自適應性,同時具備信息的分布式信息存儲特性。正是由于神經(jīng)網(wǎng)絡的學習特性,使其在聯(lián)想記憶、數(shù)據(jù)非線性映射、在線學習模型構建、數(shù)據(jù)信息分類與識別等領域具有了廣泛的應用空間。
在云數(shù)據(jù)應用時代,存儲系統(tǒng)的應用領域及使用者的范圍不斷擴大[6],用戶呈指數(shù)倍的增長使得數(shù)據(jù)的存儲容量不斷增長,用戶訪問數(shù)據(jù)庫的頻繁程度也將持續(xù)增加,這對存儲系統(tǒng)數(shù)據(jù)庫訪問的吞吐量性能提出了更高的要求,也對數(shù)據(jù)查詢的效率得出了更加嚴格的標準。
本文提出的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法主要通過對云存儲數(shù)據(jù)的關鍵詞進行相似度對比,利用神經(jīng)網(wǎng)絡算法對查詢數(shù)據(jù)樣本進行記憶訓練,通過對查詢關鍵字進行數(shù)據(jù)匹配,最終實現(xiàn)數(shù)據(jù)的準確查詢。為了測試本文設計的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法的可行性及準確性能,作者在完成了模型構建后,Matlab軟件中構建實驗場景,模擬數(shù)據(jù)庫檢索過程,完成了對查詢方法進行測試驗證。
1 神經(jīng)網(wǎng)絡模型的建立
1.1 BP神經(jīng)網(wǎng)絡處理單元模型
為了不失一般性,選取BP神經(jīng)網(wǎng)絡的任意兩層介紹其處理單元的數(shù)學模型。BP神經(jīng)網(wǎng)絡處理單元的結果如圖1所示,其中,L1層的[n]個神經(jīng)元和L2層的[p]個神經(jīng)元進行全連接,定義連接權向量為[W={wij},i=1,2,…,n,j=1,2,…,p];L1層的[n]個神經(jīng)元的輸出作為L2層各神經(jīng)元的輸入列向量[X=(x1,…,xi,…,xn)T],L2層各個神經(jīng)元的閾值設置為[θj,j=1,2,…,p],因此,L2層各神經(jīng)元接收的輸入加權和如下式所示[3-4]:
L2層各神經(jīng)元的輸出結果利用轉(zhuǎn)移函數(shù)進行計算。一般情況下,BP神經(jīng)網(wǎng)絡將Sigmoid函數(shù)作為轉(zhuǎn)移函數(shù)。Sigmoid函數(shù)的數(shù)學表達式為:
因此,L2層各個處理單元的輸出為:
由于Sigmoid函數(shù)的輸出類似于本文設計的神經(jīng)網(wǎng)絡的信號輸出形式,本文設計的模型采用Sigmoid函數(shù)作為系統(tǒng)的轉(zhuǎn)移函數(shù),其能夠準確描述數(shù)據(jù)檢索過程中的非線性特性水平[5-6]。
1.2 BP神經(jīng)網(wǎng)絡學習算法
本文的無線通信選擇機制采用三層BP神經(jīng)網(wǎng)絡結果,具體學習算法如下所述:
輸入模式向量設為[Xk=(x1k,…,xik,…,xnk)T],[k=1,2,…,m],其中[m]表示樣本模式對個數(shù),[n]表示輸入層神經(jīng)元數(shù)量;輸入模式對應的期望輸出向量為[Yk=(y1k,…,yik,…,yqk)T],隱含層神經(jīng)元的凈輸入向量設置為[Sk=(s1k,…,sik,…,spk)T],輸出向量設置為[Bk=(b1k,…,bik,…,bpk)T],[q]表示輸出層單元數(shù)量,[p]表示隱含層單元個數(shù);輸出層神經(jīng)元凈輸入向量設置為[Lk=(l1k,…,lik,…,lqk)T],實際輸出向量設置為[Ck=(c1k,…,cik,…,cqk)T];輸入層神經(jīng)元至隱含層神經(jīng)元的連接權值設置為[W={wij}],其中,[i=1,2,…,n,j=1,2,…,p]隱含層至輸出層的連接權值設置為[V={vjt}],隱含層神經(jīng)元的閾值設置為[θ={θj},j=1,2,…,p],輸出層各神經(jīng)元的閾值設置為[γ={γt},t=1,2,…,q]。
(1)初始化操作。將連接權值矩陣[W]、[V]及閾值[θ]、[γ]在[[-1,+1]]區(qū)間內(nèi)進行隨機取值。
(2)隨機從訓練集合中選取一個學習模式對[(Xk,Yk)]作為BP神經(jīng)網(wǎng)絡的輸入。
(3)輸入層的輸出的計算。輸入層的各神經(jīng)元不對輸入模式進行任何處理,而是直接將接收到的數(shù)據(jù)關鍵詞直接輸出到隱含層各神經(jīng)元,不做任何的數(shù)據(jù)處理。
(4)根據(jù)下式求得隱含層各處理單元的凈輸入和凈輸出:
(5)根據(jù)下式求得各輸出層神經(jīng)元的凈輸入和實際輸出:
(6)根據(jù)設定的期望輸出,通過下式求得各輸出層神經(jīng)元的校正誤差[dkt],
(7)根據(jù)下式得出隱含層各神經(jīng)處理單元的校正誤差[ekj],
(8)根據(jù)下式調(diào)整隱含層至輸出層的連接權值[V]和輸出層神經(jīng)元閾值[γ], [α]表示學習速率,[0<α<1],
(9)根據(jù)下式調(diào)整輸入層至隱含層神經(jīng)元的連接權值[W]和輸出層神經(jīng)元閾值[θ], [β]表示學習速率,[0<β<1],
(10)為BP神經(jīng)網(wǎng)絡隨機輸入下一個學習模式對,返回(3)處,直至訓練完成[m]個學習模式對。
(11)對系統(tǒng)的全局誤差[E]進行判斷,查看其是否滿足神經(jīng)網(wǎng)絡設定的精度需求。如果 [E≤ε],這說明滿足結束條件,結束學習過程,如果未滿足,則繼續(xù)學習。
(12)更新神經(jīng)網(wǎng)絡學習次數(shù),如果未達到設定的學習次數(shù),則返回Step2。
(13)BP神經(jīng)網(wǎng)絡學習過程結束。
在整個神經(jīng)網(wǎng)絡的學習階段中,分別涵蓋了輸入模式的“順傳播過程”,全局誤差的“逆?zhèn)鞑ミ^程”以及“學習記憶訓練”過程,(11)至(12)表示是收斂過程。全局誤差[E]的理想學習曲線如圖2所示。
為了減小震蕩,加快網(wǎng)絡的記憶訓練速度,作者在對連接權值進行調(diào)整時,在改變量基礎上添加一定比例的權值改變值,稱之為動量項。則附加動量項的連接權值調(diào)整方法如下式所示:
式中,[ηΔwij(n-1)]代表動量項,其中[n]為學習次數(shù),[η]作為動量系數(shù),[0<η<1]。
加入動量項的本質(zhì)目的是使控制學習過程的學習速率[β]不僅僅是一個固定值,而是能夠持續(xù)變化的。在引入動量項后,網(wǎng)絡總是試圖使連接權值的調(diào)整按照相同方向進行,即使前后兩次連接權值的調(diào)整值方向相反,也能夠降低震蕩趨勢,加快學習記憶速度,以及網(wǎng)絡收斂速度[7]。
通常來說,動量系數(shù)的取值不宜過大。若動量系數(shù)過大,動量項所占比例過重,則本次誤差修正項的作用會不太明顯,以致完全沒有作用,反而會減慢收斂速度,甚至導致整個網(wǎng)絡震蕩。一般情況下,動量系數(shù)的最大值在0.9作用,本文取值為0.6。
2 數(shù)據(jù)庫查詢方法測試
為了測試本文設計的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法的可行性及準確性能,作者在完成了模型構建后,Matlab軟件中構建實驗場景,模擬數(shù)據(jù)庫檢索過程,完成了對查詢方法進行測試驗證。數(shù)據(jù)庫查詢學習樣本使用的是加州大學標準數(shù)據(jù)集,通過選擇中度數(shù)據(jù)規(guī)模的樣本空間進行設計網(wǎng)絡的學習訓練,主要訓練搜索關鍵字與查詢結果直接的對應關系,并進行存儲記憶。通過不同查詢次數(shù)的響應延時進行統(tǒng)計分析,與未使用任何算法的隨機檢索方法的搜索結果進行對比分析。數(shù)據(jù)檢索實驗對比結果如圖3所示。
從數(shù)據(jù)檢索對比結果得知,當?shù)螖?shù)達到200次時,本文提出的基于神經(jīng)網(wǎng)絡算法的數(shù)據(jù)庫查詢方法滿足收斂條件[f(x)≤e-10],此時可視為系統(tǒng)以及查詢到最優(yōu)數(shù)據(jù)結果。同時,較隨機數(shù)據(jù)庫檢索方法,本設計的優(yōu)化方法在響應延時方面平均降低了34.7%,同時搜索查詢準確率高達99.3%。
3 總結
神經(jīng)網(wǎng)絡在聯(lián)想記憶、數(shù)據(jù)非線性映射、在線學習模型構建、數(shù)據(jù)信息分類與識別等領域具有了廣泛的應用空間。通過對云存儲數(shù)據(jù)庫查詢過程的原理進行研究,本文提出的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法主要通過對云存儲數(shù)據(jù)的關鍵詞進行相似度對比,利用神經(jīng)網(wǎng)絡算法對查詢數(shù)據(jù)樣本進行記憶訓練,通過對查詢關鍵字進行數(shù)據(jù)匹配,最終實現(xiàn)數(shù)據(jù)的準確查詢。為了測試本文設計的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法的可行性及準確性能,作者在完成了模型構建后,Matlab軟件中構建實驗場景,模擬數(shù)據(jù)庫檢索過程,完成了對查詢方法進行測試驗證。仿真結果表明,本文提出的基于神經(jīng)網(wǎng)絡的數(shù)據(jù)庫優(yōu)化查詢方法的準確率高達98.3%,具有較高的檢索精度及穩(wěn)定性。
參考文獻:
[1] 李中志.基于改進BP神經(jīng)網(wǎng)絡的水位流量關系擬合[J].中國農(nóng)村水利水電, 2008(10):30-32.
[2] 任雯,胥布工.基于標準神經(jīng)網(wǎng)絡模型的非線性系統(tǒng)分布式無線網(wǎng)絡化控制[J]. 控制與決策, 2015,30(4):691-697.
[3] 余開華.小波神經(jīng)網(wǎng)絡模型在河道流量水位預測中的應用[J].水資源與水工程學報, 2013, 24(2):204-208.
[4] 潘道宏.RBF神經(jīng)網(wǎng)絡模型擬合電力抽水站水位流量關系研究[J].水利科技與經(jīng)濟, 2010,16(3):300-301.
[5] 孔玉靜,侯鑫,華爾天等.基于BP神經(jīng)網(wǎng)絡的無線傳感器網(wǎng)絡路由協(xié)議的研究[J].傳感技術學報, 2013, 26(2):246-251.
[6] 田曉青,劉松良.基于人工神經(jīng)網(wǎng)絡的過閘流量軟測量研究[J].電子產(chǎn)品世界, 2013(10):43-45.
[7] Poirazi P, Brannon T, Mel B W. Pyramidal Neuron as Two-Layer Neural Network [J]. Neuron, 2003, 37(6):989-999.
[8] Wong W K,Yuen C W M, Fan D D,et al. Stitching defect detection and classification using wavelet transform and BP neural network[J]. Expert Systems with Applications, 2009, 36(2):3845-3856.