国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于卷積神經(jīng)網(wǎng)絡(luò)的高精度文本分類方法

2019-09-24 06:03朱弘揚(yáng)馬海斌葛天祎
電腦知識(shí)與技術(shù) 2019年21期
關(guān)鍵詞:文本分類卷積神經(jīng)網(wǎng)絡(luò)模型

朱弘揚(yáng) 馬海斌 葛天祎

摘要:本文給出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的高精度文本分類方法,其思路是:讀取數(shù)據(jù)集進(jìn)行分詞和停用詞處理,將處理后的語(yǔ)料庫(kù)送入統(tǒng)計(jì)共現(xiàn)矩陣,訓(xùn)練出詞向量,進(jìn)而保存向量矩陣,最后把矩陣向量集導(dǎo)入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分類處理得到預(yù)測(cè)結(jié)果。該方法包括五個(gè)步驟:步驟一,將源數(shù)據(jù)集預(yù)處理成為統(tǒng)一格式,再進(jìn)行分詞處理。步驟二,將數(shù)據(jù)集送入訓(xùn)練glove模型,保存模型;步驟三,將語(yǔ)句以詞向量的矩陣形式保存為數(shù)據(jù)集;步驟四,將數(shù)據(jù)導(dǎo)入文本分類CNN模型訓(xùn)練;步驟五,用訓(xùn)練好的模型對(duì)數(shù)據(jù)進(jìn)行分類并與標(biāo)準(zhǔn)進(jìn)行比對(duì)。仿真結(jié)果表明,本文所給出的方法輸出準(zhǔn)確度高達(dá)99%。

關(guān)鍵詞:文本分類;卷積神經(jīng)網(wǎng)絡(luò);Glove 模型

中圖分類號(hào):TP391? 文獻(xiàn)標(biāo)識(shí)碼:A

文章編號(hào):1009-3044(2019)21-0204-03

開(kāi)放科學(xué)(資源服務(wù))標(biāo)識(shí)碼(OSID):

Abstract: This paper presents a high-precision text classification method and system based on Convolutional Neural Networks. The method comprises: reading a data set for word segmentation and stop words processing, feeding the processed corpus into a statistical co-occurrence matrix, training a word vector, and then saving the vector matrix, and finally importing the matrix vector set into the convolutional neural network for classification processing Get the predicted results. It consists of five steps: Step 1, preprocessing the source data set into a unified format, and then performing word segmentation processing. Step 2, the data set is sent to the training glove model, and the model is saved; in step 3, the statement is saved as a data set in the form of a matrix of word vectors; in step 4, the data is imported into the text classification CNN model training; step 5, the trained model is used to classify the data and compare it with the standard. The simulation results show that the output accuracy of the method presented in this paper is as high as 99%.

Key words: text classification; convolutional neural network; Glove model

1 引言

文本分類技術(shù)起源于20世紀(jì)50年代末,由美國(guó) IBM 公司的 Luhn[1] 提出,他把詞頻統(tǒng)計(jì)的思想運(yùn)用到了自動(dòng)分類中,而后 Maron[2]于1960年發(fā)表了文本分類史上的第一篇論文,同時(shí)預(yù)示了文本分類技術(shù)研究的開(kāi)始。到了20世紀(jì)90年代,因?yàn)榫W(wǎng)絡(luò)信息技術(shù)的極大發(fā)展,基于知識(shí)工程的技術(shù)漸漸趕上了網(wǎng)絡(luò)在線文本的增長(zhǎng)速度。這一現(xiàn)象無(wú)形中促進(jìn)了文本分類技術(shù)的提升和轉(zhuǎn)變,使得機(jī)器學(xué)習(xí)方法逐漸成為主流。后來(lái) Joachims[3]首次把支持向量機(jī)應(yīng)用到了文本分類的過(guò)程中,時(shí)期分類性能有了非常大的提高。近些年來(lái)隨著深度學(xué)習(xí)的迅猛發(fā)展,BP前饋神經(jīng)網(wǎng)絡(luò)被應(yīng)用到文本分類領(lǐng)域。文獻(xiàn)[4]提出了將CNN應(yīng)用于情感分析和問(wèn)題分類問(wèn)題,取得了很好的效果。Zhou 等人提出 C-LSTM模型[5],該模型先利用卷積神經(jīng)網(wǎng)絡(luò)提取文本特征,再送入長(zhǎng)短期記憶網(wǎng)絡(luò)(LSTM),考慮了文本結(jié)構(gòu)之間存在的關(guān)系,該模型在文本分類上取得了較好的效果。劉月等人提出一個(gè)用于文本表示和分類的基于注意力機(jī)制的CNLSTM模型[6]。該模型利用CNN提取短語(yǔ)序列的特征表示,然后利用NLSTM學(xué)習(xí)文本的特征表示,通過(guò)引入注意力機(jī)制,突出關(guān)鍵短語(yǔ)以優(yōu)化特征提取的過(guò)程。

本文給出了一種基于卷積神經(jīng)網(wǎng)絡(luò)的高精度文本分類方法和系統(tǒng),該方法的思想是:讀取數(shù)據(jù)集進(jìn)行分詞和停用詞處理,將處理后的語(yǔ)料庫(kù)送入統(tǒng)計(jì)共現(xiàn)矩陣,訓(xùn)練出詞向量,進(jìn)而保存向量矩陣,最后把矩陣向量集導(dǎo)入卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行分類處理得到預(yù)測(cè)結(jié)果。仿真結(jié)果表明了本文給出方法的優(yōu)越性。

2 文本分類算法流程

基于卷積神經(jīng)網(wǎng)絡(luò)的高精度文本分類方法,其包括以下步驟:步驟1:對(duì)文本數(shù)據(jù)預(yù)處理:即將本文數(shù)據(jù)集格式轉(zhuǎn)為統(tǒng)一格式并對(duì)其進(jìn)行分詞和停用詞處理,得到預(yù)處理后的語(yǔ)料庫(kù);步驟2:基于語(yǔ)料庫(kù)構(gòu)建詞的共現(xiàn)矩陣,然后基于共現(xiàn)矩陣和GloVe模型學(xué)習(xí)詞向量矩陣;步驟3:構(gòu)建文本分類卷積神經(jīng)網(wǎng)絡(luò)模型基于詞向量矩陣訓(xùn)練文本分類卷積神經(jīng)網(wǎng)絡(luò)模型;步驟4:基于測(cè)試集數(shù)據(jù)驗(yàn)證卷積神經(jīng)網(wǎng)絡(luò)模型并優(yōu)化,最終確定文本分類卷積神經(jīng)網(wǎng)絡(luò)模型。

2.1 文本預(yù)處理

圖1所述對(duì)文本數(shù)據(jù)預(yù)處理的具體方法為:讀取數(shù)據(jù)集,采用字符串匹配的分詞算法、正向最大匹配法、逆向最大匹配法和最少切分方法;通過(guò)正則匹配去除文本中的無(wú)用字符;統(tǒng)一數(shù)據(jù)集文本編碼方式為 utf-8。

讀取數(shù)據(jù)集,進(jìn)行切詞處理。本文中采用了基于字符串匹配的分詞算法,混合使用了正向最大匹配法(從左到右的方法)、逆向最大匹配法(從右到左的方向)和最少切分(使每一句中切出的詞最少)的算法。

正向最大匹配法,例如語(yǔ)句為“南京是一座文化名城”,使用正向最大匹配法分詞的結(jié)果就是,“南京/是一/座/文化/名城”;

逆向最大匹配法,則為“南京/是/一座/文化/名城”;

最少切分法,則是“南京/是/一座/文化名城”。

其次,通過(guò)正則匹配去除文本中的無(wú)用字符。再統(tǒng)一數(shù)據(jù)集文本編碼方式為 utf-8。

2.2 詞向量化

根據(jù)2.1所述,其特征在于,設(shè)基于語(yǔ)料庫(kù)構(gòu)建詞的共現(xiàn)矩陣為X,其元素為,表示在整個(gè)語(yǔ)料庫(kù)中,單詞i和單詞j共同出現(xiàn)在一個(gè)特定大小的窗口的次數(shù)?;诠铂F(xiàn)矩陣和Glove模型學(xué)習(xí)詞向量矩陣的方法包括以下步驟:

S01:根據(jù)兩個(gè)單詞在上下文窗口的距離 d,構(gòu)建衰減函數(shù)f,所述衰減函數(shù)f的表達(dá)式如下:

decay=1/d ,

其中decay為詞的權(quán)重,d為兩個(gè)單詞在上下文窗口的距離 d。

S02:構(gòu)建Glove模型的損失函數(shù);

S03:基于共現(xiàn)矩陣輸出訓(xùn)練好的詞向量矩陣。

本文中用到的詞向量化的方法是,Glove 算法模型。Glove 模型中輸入的是預(yù)處理好的語(yǔ)料庫(kù),輸出的是訓(xùn)練好的詞向量矩陣,它的原理就是首先基于語(yǔ)料庫(kù)構(gòu)建詞的共現(xiàn)矩陣,然后基于共現(xiàn)矩陣和 Glove 模型學(xué)習(xí)詞向量(原理如圖2)。

其中是單詞i和單詞j的詞向量,是兩個(gè)標(biāo)量,f是權(quán)重函數(shù),N是詞匯表的大小,共現(xiàn)矩陣維度為N×N。

3 建立卷積神經(jīng)網(wǎng)絡(luò)

基于卷積神經(jīng)網(wǎng)絡(luò)的高精度文本分類系統(tǒng),其特征在于,包括:數(shù)據(jù)預(yù)處理模塊,用于將本文數(shù)據(jù)集格式轉(zhuǎn)為統(tǒng)一格式并對(duì)其進(jìn)行分詞和停用詞處理,得到預(yù)處理后的語(yǔ)料庫(kù);詞向量矩陣生成模塊:基于語(yǔ)料庫(kù)構(gòu)建詞的共現(xiàn)矩陣,然后基于共現(xiàn)矩陣和GloVe模型學(xué)習(xí)詞向量矩陣;文本分類卷積神經(jīng)網(wǎng)絡(luò)模型構(gòu)建模塊,用于構(gòu)建文本分類卷積神經(jīng)網(wǎng)絡(luò)模型并基于詞向量矩陣訓(xùn)練文本分類卷積神經(jīng)網(wǎng)絡(luò)模型;文本分類卷積神經(jīng)網(wǎng)絡(luò)模型驗(yàn)證優(yōu)化模塊:基于測(cè)試集數(shù)據(jù)驗(yàn)證卷積神經(jīng)網(wǎng)絡(luò)模型并優(yōu)化,最終確定文本分類卷積神經(jīng)網(wǎng)絡(luò)模型。

本實(shí)施例中的模型是一個(gè)多層架構(gòu),由卷積層和非線性層交替多次排列后構(gòu)成,這些層最終通過(guò)全連通層對(duì)接到softmax分類器上。

1)模型輸入:分別用于讀取CIFAR數(shù)據(jù)集的圖像并進(jìn)行預(yù)處理,作為后續(xù)評(píng)估和訓(xùn)練的輸入。

2)模型預(yù)測(cè):用于進(jìn)行統(tǒng)計(jì)計(jì)算,比如在提供的圖像進(jìn)行分類;

3)模型訓(xùn)練:用于計(jì)算損失、計(jì)算梯度、進(jìn)行變量更新以及呈現(xiàn)最終結(jié)果。訓(xùn)練文本分類卷積神經(jīng)網(wǎng)絡(luò)模型,包括以下步驟:

1) 搭建文本分類CNN模型:

2) 寫(xiě)一個(gè)TextCNN類,實(shí)例化這個(gè)類,定義以下參數(shù):(1)sequence_len,句子的長(zhǎng)度。設(shè)置所有句子的長(zhǎng)度均為300,不足300者用空字符補(bǔ)全;(2)num_classes,輸出層中的分類數(shù)目;(3)embedding_size,嵌入的向量維度;(4)filter_sizes,卷積濾波器覆蓋的字?jǐn)?shù)。例如,[3, 4, 5]意味著我們將有過(guò)濾器分別滑過(guò)3,4和5個(gè)單詞,總共3* num_filters過(guò)濾器;

3)num_filters,每個(gè)不同尺寸的過(guò)濾器的數(shù)目;

4)l2_reg_lambda,2正則權(quán)值。

5) Input Placeholders,即輸入層。創(chuàng)建Placeholders變量,作為訓(xùn)練的輸入和測(cè)試的輸入。

6) Embedding Layer,嵌入層。將單詞向量向更低維度向量表示。

7) Convolution and Max-Pooling Layers,即卷積層和池化層。首先開(kāi)始構(gòu)建卷積層,再進(jìn)行最大值池化。由于每個(gè)卷積產(chǎn)生不同形狀的張量,因此為他們中的每一個(gè)創(chuàng)建一個(gè)層,然后合并結(jié)果為一個(gè)大的特征向量。

8) Dropout層,即輸出層。Dropout層隨機(jī)“禁用”神經(jīng)元的一部分,這可以防止神經(jīng)元共同適應(yīng)并迫使他們獨(dú)立學(xué)習(xí)有用的特征。神經(jīng)元中啟用的比例是由初始化參數(shù)中的dropout_keep_prob決定的,訓(xùn)練時(shí)我們將它定義為0.1,而在測(cè)試時(shí)定義為1(禁用Dropout)。

9) 評(píng)估和預(yù)測(cè)。使用從max-pooling中得到的特征向量(帶Dropout),我們可以通過(guò)矩陣乘法生成預(yù)測(cè)并選擇得分最高的分類,我們使用softmax將原分?jǐn)?shù)轉(zhuǎn)換為歸一化概率,但它并不會(huì)改變預(yù)測(cè)結(jié)果。 其中,tf.nn.xw_plus是一個(gè)實(shí)現(xiàn)Wx+b矩陣乘法的一個(gè)封裝方法。

10) loss和準(zhǔn)確率計(jì)算。我們可以使用步驟3-6得到的score來(lái)定義loss function。分類問(wèn)題的標(biāo)準(zhǔn)損失方程為交叉熵?fù)p失方程。

其中,tf.nn.softmax_cross_entropy_with_logits是一個(gè)對(duì)每個(gè)分類計(jì)算交叉熵?fù)p失的封裝方法,通過(guò)score和正確分類作為參數(shù),我們可以得到每一類的loss,對(duì)其求平均值,可以得到平均損失,同時(shí)也定義了準(zhǔn)確率函數(shù)。

11) 模型訓(xùn)練。

4 實(shí)驗(yàn)結(jié)果與分析

4.1 實(shí)驗(yàn)數(shù)據(jù)集

本文使用了四個(gè)數(shù)據(jù)集進(jìn)行文本分類,來(lái)測(cè)試基于神經(jīng)網(wǎng)絡(luò)的高精度文本分類方法的效果。包括20-news新聞數(shù)據(jù)集、IMDB數(shù)據(jù)集、Cornell數(shù)據(jù)集、ling-spam數(shù)據(jù)集。

20-news 是用于文本分類、文本挖掘和信息檢索研究的國(guó)際標(biāo)準(zhǔn)數(shù)據(jù)集之一。數(shù)據(jù)集收集了大約20,000左右的新聞組文檔,均勻分為20個(gè)不同主題的新聞組集合。本文中使用其中的 10 個(gè)類別,每個(gè)類別包含 2000 個(gè)訓(xùn)練樣本和1000 個(gè)測(cè)試樣本。

IMDB數(shù)據(jù)集是來(lái)自網(wǎng)絡(luò)的50000條電影數(shù)據(jù)庫(kù)的評(píng)論。本文中選取50000 條做訓(xùn)練數(shù)據(jù),50000 條做測(cè)試數(shù)據(jù)。

Cornell數(shù)據(jù)集,由電影評(píng)論組成,其中持肯定和否定態(tài)度的各1000 篇;另外還有標(biāo)注了褒貶極性的句子各5331 句,標(biāo)注了主客觀標(biāo)簽的句子各5000句。

ling-spam垃圾郵件數(shù)據(jù)集,來(lái)自Androutsopoulos等人,由提供者收到的垃圾郵件和來(lái)自語(yǔ)言學(xué)家列表的非垃圾郵件組成。

4.2 實(shí)驗(yàn)環(huán)境和參數(shù)設(shè)置

本文的實(shí)驗(yàn)環(huán)境如表1 所示。

CNN模型中的參數(shù)通參數(shù),主要有sequence_len,句子的長(zhǎng)度、num_classes,輸出層中的分類數(shù)目、embedding_size,嵌入的向量維度、filter_sizes,卷積濾波器覆蓋的字?jǐn)?shù)、num_filters,每個(gè)不同尺寸的過(guò)濾器的數(shù)目、l2_reg_lambda,2正則權(quán)值等。將這些參數(shù)設(shè)置為表 2 所示。

4.3 實(shí)驗(yàn)結(jié)果分析

為了測(cè)試模型的有效性,本文選擇了多個(gè)目前在中文文本分類任務(wù)上應(yīng)用廣泛且效果較好的傳統(tǒng)分類方法作為Baseline模型進(jìn)行比較。比較模型包括有:隨機(jī)森林 (RF)、樸素貝葉斯 (NB)、邏輯回歸 (LR)以及支持向量機(jī) (SVM) 。表3展示了各模型在不同數(shù)據(jù)集上的精確度(Acc %)。

由實(shí)驗(yàn)結(jié)果可知,本文方法在四個(gè)數(shù)據(jù)集中均取得了相較于傳統(tǒng)分類方法精確度的最好結(jié)果。實(shí)驗(yàn)結(jié)果中4種傳統(tǒng)機(jī)器學(xué)習(xí)分類方法中線性SVM準(zhǔn)確率最高達(dá)到83%, 而本文準(zhǔn)確率達(dá)到了99.6%,基于深度學(xué)習(xí)卷積神經(jīng)網(wǎng)絡(luò)算法文本分類效果明顯優(yōu)于傳統(tǒng)機(jī)器學(xué)習(xí)算法。

5 結(jié)論

本文涉及計(jì)算機(jī)機(jī)器學(xué)習(xí)領(lǐng)域,尤其是卷積神經(jīng)網(wǎng)絡(luò)在高精度文本分類方向的應(yīng)用,采用了基于卷積神經(jīng)網(wǎng)絡(luò)的高精度文本分類方法對(duì)文本進(jìn)行分類處理。利用 CNN 模型,卷積層充分學(xué)習(xí)短語(yǔ)級(jí)別的特征表示,這些高層的短語(yǔ)特征表示序列接著被輸入到 CNN 網(wǎng)絡(luò)中進(jìn)一步學(xué)習(xí)短語(yǔ)間的長(zhǎng)短依賴關(guān)系,最終得出整個(gè)輸入文本的特征表示。我們?cè)?0-news等 4 個(gè)數(shù)據(jù)集測(cè)試了本文網(wǎng)絡(luò)模型的性能。從實(shí)驗(yàn)分析可以看出,本文所提出的方法和系統(tǒng)模型在對(duì)文本分類的任務(wù)上取得了較好的效果,相較于傳統(tǒng)的文本分類方法取得較大準(zhǔn)確度提高。

此外,在詞向量化模型的方面有一些比較好的工作可以與本模型結(jié)合,例如王勇等人提出了一種結(jié)合N-Gram特征與Word2vec的詞向量模型WordNG-Vec[11],該方法有效提高文本分類的效果。因此,在此后的工作中,筆者將繼續(xù)探究模型的優(yōu)化方法,以期能夠在提高模型分類準(zhǔn)確度的情況下同時(shí)提升模型的運(yùn)行速度。

參考文獻(xiàn):

[1] Luhn H P. The automatic creation of literature abstracts[J]. IBM Journal of research and development, 1958, 2(2): 159-165.

[2] Maron M E, Kuhns J L. On relevance, probabilistic indexing and information retrieval[J]. Journal of the ACM (JACM), 1960, 7(3): 216-244.

[3] Joachims T. Text categorization with support vector machines: Learning with many relevant features[C]//European conference on machine learning. Springer, Berlin, Heidelberg, 1998: 137-142.

[4] Kim Y. Convolutional neural networks for sentence classification[J]. arXiv preprint arXiv:1408.5882, 2014.

[5] Zhou C, Sun C, Liu Z, et al. A C-LSTM neural network for text classification [J]. arXiv preprint arXiv: 1511. 08630, 2015.

[6] 劉月,翟東海,任慶寧.基于注意力CNLSTM網(wǎng)絡(luò)模型的新聞文本分類[J/OL].計(jì)算機(jī)工程:1-7[2019-04-16].

[7] 張其龍. 基于隨機(jī)森林的文本分類研究與應(yīng)用[D].華南理工大學(xué),2018.

[8] 孟天樂(lè).樸素貝葉斯在文本分類上的應(yīng)用[J].通訊世界,2019,26(01):244-245.

[9] 戴維.邏輯回歸解決文本分類問(wèn)題[J].通訊世界,2018(08):266-267.

[10] 張燕,姚志遠(yuǎn),陳文社.支持向量機(jī)在文本分類中的研究與應(yīng)用[J].電腦編程技巧與維護(hù),2018(08):68-69+85.

[11] 王勇,何養(yǎng)明,鄒輝,等.WordNG-Vec:一種應(yīng)用于CNN文本分類的詞向量模型[J].小型微型計(jì)算機(jī)系統(tǒng),2019,40(03):499-502.

【通聯(lián)編輯:梁書(shū)】

猜你喜歡
文本分類卷積神經(jīng)網(wǎng)絡(luò)模型
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
基于深度卷積神經(jīng)網(wǎng)絡(luò)的物體識(shí)別算法
基于組合分類算法的源代碼注釋質(zhì)量評(píng)估方法
3D打印中的模型分割與打包
FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究