〔摘 要〕針對目前圖書采購過程中經驗性、主觀性強,統一性、科學性差等缺點,提出一種基于遺傳神經網絡用于圖書采購的建模方法。該方法首先引入遺傳因子改進傳統遺傳算法,并以此對神經網絡的權值、閾值及其結構進行優化,然后通過優化后的神經網絡挖掘圖書的各種屬性與是否被采購之間的潛在關系,從而實現圖書是否被采購的預測分類。仿真實驗表明該圖書采購模型具有良好的預測性能及泛化能力,具有推廣價值。
〔關鍵詞〕圖書采購;遺傳神經網絡;改進遺傳算法;優化設計
〔中圖分類號〕G253 〔文獻標識碼〕A 〔文章編號〕1008-0821(2009)09-0162-04
Research on Book Purchase Model Based on Improved Genetic Neural NetworkHuang Xiaohua1 Miao Song1 Shi Huaji2 Yin Jijun2
(1.Library,Jiangsu University,Jiangsu University,Zhenjiang 212013,China;
2.School of Computer Science and Telecommunication Engineering,Jiangsu University,Zhenjiang 212013,China)
〔Abstract〕Aiming the disadvantages in the process of book purchase,a book purchase model based on genetic algorithm neural network was proposed.Firstly,we improve the performance of genetic algorithm through influence factor and optimize weights,thresholds and structure of neural network simultaneity with the improved genetic algorithm.Then the optimized neural network was used to mine the potential relation between books’ attributes and whether will be bought.The simulation experiments show that the book purchase model has a good capability of forecasting and generalizing.
〔Key words〕book purchase;genetic neural network;improved genetic algorithm;optimization
圖書采購是圖書館建設的重要環節,提高館藏文獻的實用價值、學術價值、針對性,以及滿足率等是每一位采訪人員的愿望,也是提高讀者滿意度的前提,而目前高校圖書館在采購圖書時主要依靠采訪人員對圖書受眾信息掌握程度和個人經驗,缺少一套科學的、統一的采購模式及模型。如何根據各學科文獻的需求狀況,以及出版的質量、種量等因素,合理、有效、按比例的分配有限的購書經費,制定一套科學的采購策略,使圖書館各學科、各層次的圖書收藏既能最大限度地保障教學和科研需要,又能確保館藏特色和館藏質量,保證圖書館的可持續性發展,已成為圖書館界當前共同關心和研究的大課題。
近年來神經網絡(Neural Network,簡稱NN)發展迅速,在經濟、軍事、工業生產和生物醫學等領域得到廣泛應用,并產生了深遠的影響。神經網絡具有很強的自適應、自組織、自學習的能力以及大規模并行運算的能力,這為圖書采購提供了一條有效的思路和方法。但神經網絡全局搜索能力差、收斂速度慢、容易陷入局部極小,單獨使用神經網絡效果不是很理想。
由美國密歇根大學John H.Holland教授及其學生首次提出的遺傳算法(Genetic Algorithm,簡稱GA)是一種高效的并行全局搜索算法[1]。該算法具有很好的魯棒性,適用于并行處理;并具有良好的全局搜索性能,減少了陷入局部最優解的風險。遺傳算法的這些優點恰好可以彌補傳統神經網絡的缺點。
為此,本文提出一種遺傳神經網絡用于圖書采購的建模方法,該方法首先對標準遺傳算法進行改進,然后利用改進遺傳算法作為前饋神經網絡訓練,調整前饋神經網絡權閾值的方法,然后通過優化后的神經網絡挖掘圖書的各種屬性與是否被采購之間的潛在關系,從而實現圖書是否被采購的預測分類。
1 改進遺傳神經網絡圖書采購模型
神經網絡算法是一個數值計算過程,它們的輸入輸出都是數值向量,所以在基于改進遺傳神經網絡的圖書采購模型中,神經網絡不能直接和外界通信,必須經過邏輯到數字和數字到邏輯的兩次轉換。即在輸入外界邏輯信息到遺傳神經網絡模型時,要把輸入轉換為網絡的輸入向量,網絡的輸出也必須轉換成對應的樣本后才能被外界識別和利用。圖1是遺傳神經網絡圖書采購模型簡化示意圖,它主要包括3個部分:輸入轉換器、遺傳神經網絡處理器、輸出轉換器。
圖1 改進遺傳神經網絡圖書采購模型
1.1 輸入轉換器
輸入轉換器實現從輸入樣本到網絡輸入向量的轉換并完成數據的標準化處理。實際計算時如果網絡中各神經元的加權輸入過大,則不利于網絡權值的調整,因此在本模型的設計過程中對所有的樣本采用了歸一化的處理方法,從而將網絡的輸入數據限制在(0,1)之間。
本文采用的歸一化處理方法是平均值法,這種方法處理后的數據將是0.0~1.0之間的數字,即對于每個屬性的所有數據最大值用1.0表示,最小值用0.0表示。中間值采用式(1)進行處理:
xkk=xk-xminxmax-xmin(1)
其中,xkk是歸一化處理以后的數據,xk是該屬性的原始值,xmax是該屬性的最大取值,xmin是該屬性的最小取值。
2009年9月第29卷第9期現?代?情?報Journal of Modern InformationSep.,2009Vol.29 No.92009年9月第29卷第9期基于改進遺傳神經網絡的圖書采購模型研究Sep.,2009Vol.29 No.91.2 遺傳神經網絡處理器
1.2.1 神經網絡的確定
(1)網絡層數的確定:現已證明,三層前饋神經網絡具有令人滿意的對連續映射的逼近能力[2],因此三層前饋神經網絡即可滿足圖書采購的預測分類模型的要求,本文圖書采購模型中神經網絡部分擬采用三層的前饋神經網絡。
(2)輸入層的確定:綜合考慮圖書的特征以及計算方便和系統實現的可行性,根據中圖分類法我們采用圖書的7個特征物理量,如下:圖書內容關鍵詞(GJC)、圖書分類號(FLH)、圖書出版社(CBS)、圖書出版日期(CBRQ)、圖書版本號(BBH)、圖書價格(JG)、圖書是否屬于重點學科(ZDXK)。因此輸入層神經元的個數定為7個。
(3)輸出層的確定:網絡的輸出就是對圖書是否采購進行判斷,因此輸出層的節點數可設為1。
(4)隱藏層的確定:結合隱層節點數的經驗選擇公式:nh=ni+no+l,其中ni為輸入層節點數,no為輸出層節點數,l為1~10之間的一個整數,又考慮到本文提出的改進遺傳算法在優化神經網絡的過程中可以動態地刪除多余的隱層節點,因此l取最大值10,隱層節點數初始化為13。
1.2.2 改進遺傳算法優化前饋神經網絡
(1)影響因子
在標準遺傳算法中,每個個體用一條染色體來表示,染色體又由一基因序列組成,若令C表示染色體,g表示基因,則C=g1g2…gn,其中n為染色體中基因的個數。但上述表示方式并不能體現出每個基因gi對整條染色體的影響程度,進而在具體問題的求解過程中并不能體現出某一環節在整個問題求解過程中的重要程度。針對上述分析,我們提出了基因影響因子的概念。
為了討論方便,首先給出相關概念術語的定義和說明。
定義1 基因特征值:表示基因特征的基因取值,用g表示,g∈R。
定義2 基因影響因子:表示基因的特征值對整條染色體的影響程度,即某個基因對整條染色體起促進作用、抑制作用還是沒有影響,用t表示,t∈R。
定義3 基因有效值:表示基因的特征值中對染色體實際有影響的取值,用p表示,p=gt。
基于上述基因影響因子(下文簡稱影響因子)的定義,則每個基因包括兩部分信息:一是基因特征值g,另一是影響因子t。若用C表示染色體,則有C=(g1t1)(g2t2)…(gntn),其中n是組成染色體C的基因個數。
當影響因子大于零時表示該基因對染色體起促進作用,正值越大表示促進作用越強;小于零時表示該基因對染色體起抑制作用,負值越小表示抑制作用越強;規定:如果影響因子的絕對值小于一個規定的閾值則該基因對染色體不起作用,此時基因可從染色體中刪除,為了描述方便,我們用ti=0表示,即染色體中的第i個基因對染色體無意義。
(2)帶有影響因子GA優化FNN的過程
1)編碼
遺傳算法常用的編碼方法有二進制編碼和實數編碼[3]。在優化設計前饋神經網絡的過程中,我們采用的是實數編碼方式。本文中的具體編碼方法如表1所示,其中Wimn表示第i層的第m個節點與第i+1層的第n個節點之間的連接權,Timn表示第i層的第m個節點與第i+1層的第n個節點之間連接權的影響因子,Bim表示第i層的第m個節點的閾值,Tim表示第i層的第m個節點閾值的影響因子。表1 編碼方法
W011T011…WimnTimn…B11T11…BimTim…
根據上文對影響因子的約定,在遺傳進化過程中,當一個權值或閾值的影響因子小于一個規定的閾值(本文選用0.1)時,我們認為相應的權值或閾值對網絡不起作用,此時可從神經網絡中刪除該權值或閾值,為了描述方便,我們采用Timn=0或Tim=0來表示,即第i層的第m個節點與第i+1層的第n個節點之間的連接權或第i層的第m個節點的閾值對神經網絡沒有影響。另外,對某個節點而言,與之相關的所有連接權數目為零時,從神經網絡中刪除該節點。
2)初始化種群
在確定好初始種群規模的大小后,按照上述的編碼方式隨機初始化種群。約定,影響因子在[-1,1]的范圍內進行隨機初始化。
3)適應度函數選取
適應度函數是遺傳算法指導尋優搜索的關鍵,這里定義適應度函數為F=1E,其中E=12∑ni=1(y′(i)-y(i))2,y′(i)是網絡對應第i個輸入樣本點輸出,y(i)是希望輸出,n是總的學習樣本數。
4)選擇算子
本文采用的是最優保存策略和輪盤賭策略相結合的混合型選擇法,該方法與單一的選擇策略相比,其優點是:①可保證迄今為止得到的最優個體不會被交叉、變異遺傳算子所破壞,從而提高收斂速度;②當運算達到預先設定的迭代次數而停止運算時,系統得到的結果是運算過程中的最優解。
5)交叉算子
在本文中,進行交叉運算時,基因特征值和影響因子以相同的概率Pc進行成對交叉。交叉算子采用的是自適應線性交叉,具體步驟如下:設兩個父代染色體為Xt、Yt,則交叉后所產生的兩個子代染色體是:
Xt+1=βYt+(1-β)Xt(2)
Yt+1=βXt+(1-β)Yt(3)
其中,β是一個由進化代數決定的變量,初值設為0.4,以后的每一代令βt+1=0.99βt,直到β<0.05[4]或達到迭代的最大步數。這種交叉算子的優點是在進化初期可以在較大的范圍內產生新的個體,在進化后期不會過多地破壞好的個體。
6)變異算子
變異操作的目的就是為了改變遺傳算法的局部搜索能力。本文采用的是均勻變異算子,基因特征值和影響因子以相同的變異率Pm成對進行變異。
7)種群的進化
當前群體中的最佳個體不滿足求解要求并且沒有達到最大迭代步數時,進化過程轉到(3)進行下一次進化。
1.3 輸出轉換器
輸出轉換器將神經網絡輸出的數字信息轉換為外界能夠識別和利用的邏輯信息,在本模型中,輸出轉換器完成網絡輸出的模式轉換。
2 圖書采購仿真實驗及分析
在Matlab7.0的環境下,采用圖書館2004-2005年圖書采購數據對遺傳神經網絡圖書采購模型進行了性能測試。根據上面的模型分析,神經網絡初始化時各項結構參數定義如下:網絡總共有3層,輸入層有7個神經元,隱層有13個神經元,輸出層有1個神經元。
實驗中關鍵詞采用了圖書采訪部提供的5 000個,不在5 000之內的用“其它”表示,分別用0~5 000來表示;根據中圖分類法[5],圖書可以分為5個大類,22個子類,224個小類,采用1~224分別代表224個小類;現有的圖書出版社總共有500多個,采用0~500代表499個出版社和1個“其它”,不在499個出版社之內的用“其它”表示。以10萬條圖書采購數據作為樣本,其中80%作為訓練樣本,20%作為測試樣本。經過初步整理后形成的樣本數據形式如表2所示:
表2 樣本數據示例
IDGJC(X1)FLH(X2)CBS(X3)CBRQ(X4)BBH(X5)JG(X6)ZDXK(X7)CG176(機械)190(TH)6(機械出版社)20042481122031(軍事)49(E0)189(解放軍出版社)2005122.80033526(繪畫)97(J2)396(天津人民美術出版社)200413200
其中ID為樣本數據的編號,X1-X7為圖書的屬性,CG為是否采購的判斷。對表2所示的樣本數據采用式(1)進行歸一化處理后即為網絡的輸入樣本數據。
用本文提出的改進遺傳算法對上述網絡模型進行學習時,初始種群大小為100,Pc=0.8,Pm=0.05,基因特征值gi在[-5,5]內隨機初始化,影響因子ti在[-1,1]的范圍內隨機初始化,當某個基因發生變異時,基因特征值gi加上[-1,1]內的一個隨機數,影響因子ti加上[-0.2,0.2]中的一個隨機數。經過改進遺傳算法訓練的神經網絡的最終網絡結構,如圖2所示。
從圖2可以看出,隱層節點數由初始化時的13個變為10個,連接權的數目也有所減少,這充分體現了帶有影響因子的改進遺傳算法在神經網絡結構優化方面的優越性。經過專家鑒定,遺傳神經網絡模型對于圖書是否進行采購的預測具有95%以上的正確性。作為對比,本文也采用標準BP算法對上述網絡結構和樣本進行了訓練學習,表3列出了部分實驗結果,從表中可以看出,同BP網絡相比,遺傳神經網絡具有更高的預測分類精度。
圖2 遺傳神經網絡模型訓練后的網絡結構
表3 遺傳神經網絡與BP網絡對圖書采購預測分類的比較
IDX1X2X3X4X5X6X7CG
(期望值)BP網絡
預測值遺傳神經
網絡預測值17619062004248110.86930.950622031491892005122.8000.10240.002333526973962004132000.09280.000445861622632005143.5110.90350.97275968563452004126010.86370.960461698734062003118000.19400.00267425319612005258110.95960.9806823511532005119010.81020.9563980213262005232010.87120.96981028531373092003124000.10020.0008
3 結束語
在研究了圖書采購的現狀及其特點,分析了神經網絡與遺傳算法結合的可行性之后,對標準遺傳算法進行了改進,提高了其效率和性能,然后利用改進的遺傳算法對神經網絡的權閾值進行學習并確定了最佳的網絡結構。在此理論基礎上建立了圖書采購遺傳神經網絡模型,圖書采購仿真試驗表明:該模型具有良好的預測性能及其泛化能力,具有一定的推廣價值。
參考文獻
[1]Holland,J.H.Adaptation in natural and artificial systems:An introductory analysis with applications to biology,control,and artificial intelligence[M].1st edition,Ann Arbor,MI:The University of Michigan Press,1975;2nd edition,Cambridge,MA:MIT Press,1992.
[2]蔣宗禮.人工神經網絡導論[M].北京:高等教育出版社,2001,8.
[3]李敏強,寇紀凇,林丹,等.遺傳算法的基本理論與應用[M].北京:科學出版社,2003,3.
[4]Gary G Yen,LU Hai-ming.Hierarchical genetic algorithm based neural network design[C].Proc 1st IEEE Symp Combination of Evolutionary Computation and Neural Network,2000:168-175.
[5]中圖分類法簡表[EB/OL].http:∥lib.ujs.edu.cn/ggxx/ztf.htm
[6]S.H.Ling,H.K.Lam,F.H.F.Leung.A variable-parameter neural network trained by improved genetic algorithm and its application[J].Proceedings of international Joint Conference on Neural Network,Montreal,Canada,July 31-August 4,2005:1343-1348.
[7]周文獻,孫立軍.基于遺傳神經網絡的水泥路面使用性能預測[J].計算機應用,2005,12(25):280-281.