史紅剛
(西安醫(yī)學(xué)院,陜西 西安 710021)
隨著信息技術(shù)的發(fā)展,審計(jì)智能化促進(jìn)了行業(yè)的發(fā)展、機(jī)制的改革。以政府機(jī)構(gòu)為例,文件形式更多的是以政策,活動(dòng)以及其他有關(guān)審核和歸檔需求結(jié)果,這些結(jié)果文件需要在線發(fā)布,在發(fā)布之前,應(yīng)該要求每個(gè)文檔都經(jīng)過(guò)編輯階段,以檢查是否存在單詞的拼寫(xiě)錯(cuò)誤或拼寫(xiě)錯(cuò)誤或信息不完整。但是通過(guò)人工審核方式往往無(wú)法按照最新的規(guī)范格式、文字編輯要求進(jìn)行修改,因此需要一種能夠自動(dòng)工作以協(xié)助編輯團(tuán)隊(duì)工作的文檔責(zé)任審計(jì)系統(tǒng),以便可以檢測(cè)文檔中是否存在鍵入錯(cuò)誤。
責(zé)任審計(jì)系統(tǒng)設(shè)計(jì)的目的是提高和修訂檢測(cè)結(jié)果的質(zhì)量,并利用和開(kāi)發(fā)與適合使系統(tǒng)工作的方法有關(guān)知識(shí)。業(yè)界重點(diǎn)使用貝葉斯規(guī)則概率方法檢測(cè)和糾正文書(shū)寫(xiě)錯(cuò)誤,關(guān)于文字書(shū)寫(xiě)錯(cuò)誤和更正的研究數(shù)量仍然很少,并且該方法的使用仍然限于少數(shù)簡(jiǎn)單方法。在單詞非單詞錯(cuò)誤的檢測(cè)和糾正研究中,研究結(jié)果證明了使用字典查找的檢測(cè)方法以及其他幾種比較方法,結(jié)果表明,“相似度法”比“正反字典法”具有更好的準(zhǔn)確性,準(zhǔn)確度分別為98.55%和97.59%[1]。
基于以上幾個(gè)背景問(wèn)題,針對(duì)語(yǔ)言文獻(xiàn)的研究方法很少而且太簡(jiǎn)單,因此本文提出一種使用流深度學(xué)習(xí)來(lái)構(gòu)建一個(gè)智能的責(zé)任審計(jì)系統(tǒng)來(lái)審核政府機(jī)構(gòu)文件,可以幫助和支持智能治理,同時(shí)在IR(Information Retrieval)和NLP(Natural Language Processing)領(lǐng)域中增加應(yīng)用場(chǎng)景[2]。
智能治理是指通過(guò)采用最新的信息技術(shù)開(kāi)發(fā)實(shí)現(xiàn)責(zé)任審計(jì),政府機(jī)構(gòu)中的文件審核與如何使用計(jì)算機(jī)技術(shù)自動(dòng)評(píng)估任何形式的文本文件有關(guān),主要針對(duì)以下現(xiàn)狀。
1)對(duì)將要或已經(jīng)存儲(chǔ)在數(shù)據(jù)庫(kù)中的政府機(jī)構(gòu)文件進(jìn)行自動(dòng)評(píng)估,以提供拼寫(xiě)錯(cuò)誤百分比。
2)自動(dòng)評(píng)估將要或已經(jīng)存儲(chǔ)在數(shù)據(jù)庫(kù)中的政府機(jī)構(gòu)文件,以提供文件質(zhì)量分類的結(jié)果,例如,根據(jù)以下標(biāo)準(zhǔn),評(píng)級(jí)為1—3(not very good、very good class、very good level),處理文本文檔時(shí)使用的規(guī)則[3-5]。
3)對(duì)將要或已經(jīng)存儲(chǔ)在數(shù)據(jù)庫(kù)中的政府機(jī)構(gòu)文件進(jìn)行自動(dòng)評(píng)估,以提供與政府機(jī)構(gòu)外部其他文件相似度百分比。
4)對(duì)將要或已經(jīng)存儲(chǔ)在數(shù)據(jù)庫(kù)中的政府機(jī)構(gòu)文件進(jìn)行自動(dòng)評(píng)估,以提供與成為參考文件的模板(法律規(guī)則,標(biāo)準(zhǔn)格式等)的適用性百分比結(jié)果。
責(zé)任審計(jì)系統(tǒng)采用Matlab 作為審計(jì)模型進(jìn)行計(jì)算,采用Django作為系統(tǒng)框架,Django是使用Python語(yǔ)言框架之一。Django 可用于滿足一般應(yīng)用程序的需求,例如處理用戶身份驗(yàn)證,內(nèi)容管理,RSS等;同時(shí)Django還注重安全性,例如,保護(hù)應(yīng)用程序免受SQL注入、跨站點(diǎn)腳本編寫(xiě)、跨站點(diǎn)請(qǐng)求偽造和點(diǎn)擊劫持的影響。Django在界面方面也使用戶可以自由確定所需的設(shè)計(jì)[6-9]。
本責(zé)任審計(jì)系統(tǒng)基于流深度學(xué)習(xí)(Stream Deep Learning,SDL)模型,以準(zhǔn)確性值的形式獲得過(guò)程評(píng)估值,將卷積神經(jīng)網(wǎng)絡(luò)(Convolution Neural Network,CNN)的基于極限學(xué)習(xí)機(jī)(Extreme Learning Machine,ELM)的簡(jiǎn)化深度學(xué)習(xí)(SDL-ELM)和Extreme Learning Machines 的訓(xùn)練速度與利用Matlab、后端(Python Django)和前端(PHP)Web App相結(jié)合。如圖1所示,SDL-ELM結(jié)構(gòu)由一個(gè)輸入層,一個(gè)輸出層和幾個(gè)隱藏層組成,這些隱藏層被安排為單個(gè)單元的卷積層,然后是匯聚層。卷積和匯聚層的數(shù)量取決于情況的復(fù)雜性,卷積層由幾個(gè)特征組組成,匯聚層由幾個(gè)特征組的記錄組成。以下是針對(duì)分類過(guò)程的流深度學(xué)習(xí)的詳細(xì)步驟:
圖1 SDL-ELM組成結(jié)構(gòu)
(1)通過(guò)組合卷積,信號(hào)/相對(duì),匯聚和完全連接過(guò)程,在“責(zé)任設(shè)計(jì)系統(tǒng)”中創(chuàng)建一個(gè)文件夾。
(2)確定參數(shù)值:
a.用于特征值的標(biāo)準(zhǔn)化過(guò)程。
b.用于卷積過(guò)程。設(shè)置:如使用三種類型的過(guò)濾器:第一(conv11):平均過(guò)濾器,第二(conv12):最大過(guò)濾器,以及第三(conv13):std 過(guò)濾器,std(標(biāo)準(zhǔn)偏差)。numFilter=3;占填充量的百分比(k),濾波器矩陣的大小(k×k),例如k=3;
c.匯聚過(guò)程。
(3)執(zhí)行學(xué)習(xí)過(guò)程
a.預(yù)處理,偽代碼如下:
[numData,…numFeature,target,norm]=FnPreProses('datatrainClassify',…mac,mic,mao,mio);1.Load training data,get numData and numFeature.2.Create“image matrix”for each initial data(only the feature value is taken)from the dataset,which is using Repmat technique.3.Normalization of all“image matrix”data.norm{i}=(((a{i}-mic)./(mac-mic))*(mao-mio))+mio;in which a{i} is each i-th data matrix element,and norm {i} defines it as a matrix with a size [numFeature x numFeature]
b.使用CNN進(jìn)行特征抽象,偽代碼如下:
1.卷積初始化.hC=FnConvDL(norm,numData,k);if k=3,then expand the edge norm image matrix(padding)with zero value as much as pad size=(k-1)/2=(3-1)/2=1,where k is an odd number≥3,and f(i,j)represents the data value.The equation of filter 1st:平均過(guò)濾器images/BZ_72_1411_1762_1927_1857.pngThe equation of filter 2nd:最大過(guò)濾器images/BZ_72_1411_1942_1983_2019.pngThe equation of filter 3rd:std過(guò)濾器images/BZ_72_1411_2104_2057_2191.png2.信號(hào)/相對(duì)hA=FnSigDL(hC,numFilter,numData);3.卷積hC=FnConvInDL(hA,numData,k,numFilter);4.信號(hào)/相對(duì)hA=FnSigDL(hC,numFilter,numData);5.匯聚hP=FnPoolDL(hA,windows_size,numFilter,numData);6.卷積hC=FnConvInDL(hP,numData,k,numFilter);7.信號(hào)/相對(duì)hA=FnSigDL(hC,numFilter,numData);8.匯聚jika ukuran(hA{i}{j})=[2 x 2],maka set windows_size=1 hP=FnPoolDL(hA,windows_size,numFilter,numData);
c.完全連接到ELM,偽代碼如下:
9.完全連接1st.E.g.,num_neuron_hidden_layer=5;[hFC11,W11,Bias11,Beta11]=FnELMtrainClassify(hP,target,...num_neuron_hidden_layer,numData,numFilter);10.完全連接2nd.Eg,num_neuron_hidden_layer=7;[hFC12,W12,Bias12,Beta12]=FnELMtrainClassify(hP,target,...num_neuron_hidden_layer,numData,numFilter);11.完全連接3rd Eg,num_neuron_hidden_layer=4;[hFC13,W13,Bias13,Beta13]=FnELMtrainClassify(hP,target,...num_neuron_hidden_layer,numData,numFilter);
(4)執(zhí)行測(cè)試過(guò)程
a.卷積初始化,偽代碼如下:[numData2,...numFeature2,target2,norm2]=FnPreProses('datatestClassify',...mac,mic,mao,mio);b.使用CNN進(jìn)行特征抽象,偽代碼如下:1.卷積初始化hC2=FnConvDL(norm2,numData2,k);2.信號(hào)/相對(duì)hA2=FnSigDL(hC2,numFilter,numData2);3.卷積hC2=FnConvInDL(hA2,numData2,k,numFilter);4.信號(hào)/相對(duì)hA2=FnSigDL(hC2,numFilter,numData2);5.匯聚hP2=FnPoolDL(hA2,windows_size,numFilter,num-Data2);6.卷積hC2=FnConvInDL(hP2,numData2,k,numFilter);7.信號(hào)/相對(duì)hA2=FnSigDL(hC2,numFilter,numData2);8.匯聚if size(hA2{i}{j})=[2 x 2],then set windows_size=1 hP2=FnPoolDL(hA2,windows_size,numFilter,num-Data2);c.完全連接到ELM,偽代碼如下:9.完全連接1st[Accuracy1,classPredict1,Ytest_predict1]=...FnELMtestClassify(hP2,target2,W11,Bias11,Beta11,numData2,numFilter);
10.完全連接2nd[Accuracy2,classPredict2,Ytest_predict2]=...F images/BZ_73_1435_420_1631_531.pnglassify(hP2,target2,...W12,Bias12,Beta12,numData2,numFilter);11.完全連接3rd[Accuracy3,classPredict3,Ytest_predict3]=...FnELMtestClassify(hP2,target2,...W13,Bias13,Beta13,numData2,numFilter);
圖2中的測(cè)試結(jié)果表明,與測(cè)試數(shù)據(jù)相比,使用的訓(xùn)練數(shù)據(jù)越多,準(zhǔn)確性越好。這是因?yàn)橄到y(tǒng)可以從訓(xùn)練數(shù)據(jù)中學(xué)習(xí)更多知識(shí)。相反,如果訓(xùn)練數(shù)據(jù)越來(lái)越小,則系統(tǒng)將無(wú)法識(shí)別數(shù)據(jù)中存在的模式,因此從訓(xùn)練過(guò)程中獲得的知識(shí)仍不是完全最優(yōu)的。但是有時(shí)會(huì)有一些特殊情況,即即使訓(xùn)練數(shù)據(jù)少于測(cè)試數(shù)據(jù),但仍可以提供更好的準(zhǔn)確性結(jié)果。
圖2 實(shí)驗(yàn)結(jié)果圖
當(dāng)已知測(cè)試數(shù)據(jù)是一定數(shù)量并且訓(xùn)練數(shù)據(jù)的質(zhì)量也很好時(shí),有必要尋找應(yīng)該使用多少訓(xùn)練數(shù)據(jù)。因此,有必要在已知測(cè)試數(shù)據(jù)為一定數(shù)量時(shí)尋找應(yīng)該使用多少訓(xùn)練數(shù)據(jù)。
本文研究了一種基于深度學(xué)習(xí)的責(zé)任審計(jì)系統(tǒng),通過(guò)以政府機(jī)構(gòu)文檔為研究背景,以提升文檔責(zé)任審核的高效性,文中以偽代碼的形式對(duì)深度學(xué)習(xí)過(guò)程進(jìn)行了描述,并且以過(guò)程執(zhí)行過(guò)方式(卷積初始化—使用CNN 進(jìn)行特征抽取—完全連接到ELM),表明流深度學(xué)習(xí)可以并且準(zhǔn)備好很好地用于開(kāi)發(fā)責(zé)任審計(jì)系統(tǒng)以支持智能治理。
自動(dòng)化技術(shù)與應(yīng)用2022年5期