詹秀菊,劉秀峰
(廣州中醫藥大學醫學信息工程學院,廣州510006)
455 例醫案文獻中的癥狀變量有皮疹發展迅速、皮疹經久不退、皮疹消退、皮損鮮紅(紅)、皮損淡紅、皮損暗紅、點滴狀皮疹、斑片狀皮疹、地圖狀皮疹、鱗屑干燥脫落、鱗屑附著緊、皮損肥厚、浸潤明顯、皮膚干燥、皮膚潮濕、皮損灼熱、皮損腫脹、疲乏、咽干、咽燥、咽腫、咽喉痛、肢體倦怠、頭暈、胸悶、納呆、喜冷飲、口干、口渴、口苦、失眠多夢、不寐、心煩易怒、便干、便秘、便溏、小便黃赤、唇青紫、舌紅、舌紫暗、舌暗紅、舌淡紅、瘀斑、苔黃、苔白、苔薄、少苔、舌燥、苔膩、浮脈、沉脈、緩脈、數脈、澀脈、滑脈、弦脈、細脈和濡脈等58 個,本研究選取PCA 對58 癥狀變量進行降維,將降維后的34個主成分因子作為模型的輸入變量,血瘀型、血熱型和血燥型三個證型設置為一列,作為輸出變量,其中用數字1 代表血燥型,2 代表血瘀型,3 代表血熱型。本文利用隨機抽樣法對455 例病案抽取測試樣本和訓練樣本。樣本隨機抽樣法用均勻分布的隨機數構造,利用MATLAB 2015a 中rand(1:455)函數產生455 個小于1的隨機數k,再用sort(k)函數對隨機數產生455 個隨機序號,設定訓練樣本數為357,測試樣本數為88,根據設定樣本數和隨機序號可隨機選取357 例訓練樣本,同理可隨機選取88 例測試樣本。具體代碼實現為:

BP 神經網絡拓撲結構設定是BP 神經網絡構建模型的第一步。本研究采用三層拓撲結構,即輸入層、隱含層和輸出層,輸入變量為34 個主成分因子,因輸入層節點數等于輸入變量數,即輸入層節點數為34 個。同理,三個證型在同一列作為輸出變量,即輸出層節點數為1 個。隱含層節點數的多少對BP 神經網絡模型的性能具有一定的影響,增加隱含層節點數可以有效改善模型的性能,但同時也增加網絡復雜化,增加網絡訓練時間。本研究根據公式n1= n+m +a 來計算隱含層,其中m 為輸出層節點數,n 為輸入層節點數,n1為隱含層節點數,a 是0~10 之間的常數,在本研究中輸入變量有34 個,所以m 為34,輸出變量為1 個,n 為1,經公式計算可得隱含層節點數的參考范圍為6~16,隱含層節點數較多時,將增加神經網絡結構的復雜性,因此本研究先選取6、7、8、9、10、11 作為隱含層節點數的試驗點,以BP 神經網絡測試準確率D 作為評價標準選取最適合的隱含層節點數。準確率D 的定義公式為D=s/total。其中s 為實際輸出與期望輸出相等的個數,total 為實際數據的個數。
本研究通過BP 神經網絡訓練得到的準確率,對比選用不同隱含層節點數時實驗結果的準確率。從圖1中可以看出當隱含層節點數為7 或8 時,實驗結果準確率的最大值和最小值相差較大,相對不穩定,因此可把隱含層節點數為7 和8 的情況排除。當隱含層節點數為10 時,在10 次仿真結果中大部分準確率相對較低,因此可將隱含層節點為10 的情況去除。隱含層節點數為6、9 和11 在10 次仿真中結果相對穩重,其中隱含層節點數為6,10 次的平均準確率最高,其狀態最優,因此隱含層節點數設置為6,即BP 神經網絡的拓撲結構為34-6-1。

圖1 不同隱含層節點數的準確率比較
BP 神經網絡的各參數影響BP 神經網絡性能,因此確定各參數是構建BP 神經模型的第二步。本研究中BP 神經網絡模型采用MATLAB 2015a 中Levenberg-Marquardt 算法對網絡進行訓練,訓練函數設置為trainlm(),訓練次數為100,訓練目標為0.001,學習速率為0.1,隱含層神經元與輸出層的傳遞函數采用S 性正切函數tansig(),實現核心代碼如下:

BP 神經網絡由上面可確定參數以及網絡拓撲結構,確定BP 神經網絡模型,經MATLAB 2015a 仿真3次,三次仿真準確率分別為85.23%、80.68%和82.95%。以第一次仿真結果為例進行說明,如表1所示。

表1 BP 神經網絡預測結果
其中BP 神經網絡模型訓練結果設置規則為:當訓練輸出結果的數值位于區間(0.5,1.5]中設置判斷輸出結果為1;位于區間(1.5,2.5]設置判斷結果為2;位于區間(2.5,3.5]設置判斷結果為3。表1 中BP 神經網絡訓練結果為1.02,模型判定期望輸出為1,即輸出的證型為血燥證。實際輸出與預測輸出結果相等時,BP 神經網絡模型預測判斷為真,否則為假,同樣以BP 神經網絡訓練輸出結果為1.02 舉例,預測輸出判定為1,實際輸出為1,即可判定模型預測結果為真,該測試樣本的整體準確率為85.23%。
中醫證型是一個復雜的非線性系統,BP 神經網絡具有非線性映射能力,能較好模擬任意一個函數,因此BP 神經網絡能將癥狀與證型之間的關系通過其本身特點映射出來。本研究BP 神經網絡拓撲結構為34-6-1 構建模型,經MATLAB 2015a 仿真后,得到BP 神經網絡的3 次平均預測準確率82.95%,此結果表明BP神經網絡建模應用于銀屑病中醫證型方面的研究是可行的,值得進一步深入研究。