一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開(kāi)了一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法及系統(tǒng),其中,所述基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法包括:步驟A:對(duì)郵件樣本進(jìn)行處理生成第一向量空間模型,構(gòu)建深度置信網(wǎng)絡(luò);步驟B:對(duì)測(cè)試郵件進(jìn)行處理生成第二向量空間模型;步驟C:利用所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)第二向量空間模型;步驟D:輸出檢測(cè)結(jié)果。本發(fā)明所提供的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,由于采用了構(gòu)建深度置信網(wǎng)絡(luò),通過(guò)所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)測(cè)試郵件的方式,提高了識(shí)別垃圾郵件的準(zhǔn)確性及穩(wěn)定性,同時(shí)節(jié)省了標(biāo)注大量樣本所需花費(fèi)的時(shí)間及人力。
【專利說(shuō)明】
一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法及系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及垃圾郵件過(guò)濾技術(shù)領(lǐng)域,尤其涉及的是一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法及系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)的迅猛發(fā)展,電子郵件已近成為人們生活、工作和學(xué)習(xí)中不可或缺的一部分。它為我們的生活提供了極大的便利,但是相應(yīng)的垃圾郵件對(duì)人們生活造成的困擾也越來(lái)越大。
[0003]郵件過(guò)濾的核心問(wèn)題是如何使用已知的郵件文本數(shù)據(jù)集合建立一個(gè)文本分類模型,然后使用這個(gè)模型對(duì)郵件類型進(jìn)行判別,從而過(guò)濾出垃圾郵件。目前以下這些算法是比較常用的,比如:K緊鄰算法(KNN)、樸素貝葉斯算法、決策樹(shù)算法、支持向量機(jī)算法。但這些算法都有著各自的局限性。
[0004]樸素貝葉斯算法,不管如何選擇概率模型,該模型始終都是在給定的一個(gè)文本的條件下才能計(jì)算郵件被分為垃圾類別的概率。并且前提是各個(gè)特征之間兩兩獨(dú)立。對(duì)于knn算法,k值的選取尤為重要,它決定了最后分類的正確性。但是到目前為止還沒(méi)有一個(gè)很好的方法;來(lái)確定合理的k值。
[0005]由于垃圾郵件過(guò)濾實(shí)際上是一個(gè)二分類問(wèn)題,所以傳統(tǒng)的分類方法雖然可以達(dá)到目的,但是效果并不好。目前郵件過(guò)濾主要采用的方法是給予規(guī)則過(guò)濾的方法,這種方法對(duì)于規(guī)則的依賴性很強(qiáng),只要規(guī)則選取的好,相應(yīng)的過(guò)濾結(jié)果也會(huì)非常好。但是垃圾郵件的特點(diǎn)也會(huì)不斷的變化,這就要求不斷地調(diào)整規(guī)則,無(wú)疑是非常被動(dòng)且麻煩的。
[0006]因此,現(xiàn)有技術(shù)還有待于改進(jìn)和發(fā)展。
【發(fā)明內(nèi)容】
[0007]鑒于上述現(xiàn)有技術(shù)的不足,本發(fā)明的目的在于提供一種能夠提高對(duì)垃圾郵件識(shí)別準(zhǔn)確性及穩(wěn)定性,同時(shí)節(jié)省標(biāo)注大量樣本所需花費(fèi)時(shí)間及人力的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法及系統(tǒng)。
[0008]本發(fā)明的技術(shù)方案如下:
[0009]—種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法包括:
[0010]步驟A:對(duì)郵件樣本進(jìn)行處理生成第一向量空間模型,構(gòu)建深度置信網(wǎng)絡(luò);
[0011]步驟B:對(duì)測(cè)試郵件進(jìn)行處理生成第二向量空間模型;
[0012]步驟C:利用所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)第二向量空間模型;
[0013]步驟D:輸出檢測(cè)結(jié)果。
[0014]所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述步驟A具體包括:
[0015]步驟Al:訓(xùn)練郵件樣本;
[0016]步驟A2:對(duì)訓(xùn)練后的郵件樣本進(jìn)行預(yù)處理,確定垃圾郵件的特征并構(gòu)造特征集;
[0017]步驟A3:根據(jù)所構(gòu)造的特征集生成第一向量空間模型;
[0018]步驟A4:根據(jù)所生成第一向量空間模型構(gòu)建深度置信網(wǎng)絡(luò)。
[0019]所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述步驟A2具體包括:
[0020]步驟A21:對(duì)訓(xùn)練后的郵件樣本進(jìn)行分詞;
[0021]步驟A22:根據(jù)所有已分出詞條構(gòu)造詞典;
[0022]步驟A23:統(tǒng)計(jì)所構(gòu)造詞典去除停用詞后剩余詞條的詞頻。
[0023]所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述步驟A3具體包括:
[0024]步驟A31:將所構(gòu)造特征集中所有特征進(jìn)行向量化,并按照向量空間的模式存儲(chǔ);
[0025 ]步驟A32:對(duì)所生成的特征向量進(jìn)行歸一化。
[0026]所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述步驟A4包括:
[0027]步驟A41:充分訓(xùn)練第N個(gè)RMB得到該RMB的權(quán)值;
[0028]步驟A42:固定第N個(gè)RMB的權(quán)值及偏移量,并使用其隱性神經(jīng)元的狀態(tài)作為下一個(gè)RMB的輸入向量;
[0029]步驟A43:進(jìn)行下一個(gè)RMB的訓(xùn)練直至所有RMB訓(xùn)練完成。
[0030]一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng)包括:
[0031]訓(xùn)練模塊,用于對(duì)郵件樣本進(jìn)行處理生成第一向量空間模型,構(gòu)建深度置信網(wǎng)絡(luò);
[0032]測(cè)試模塊,用于對(duì)測(cè)試郵件進(jìn)行處理生成第二向量空間模型;
[0033]檢測(cè)模塊,用于利用所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)第二向量空間模型;
[0034]輸出模塊,用于輸出檢測(cè)結(jié)果。
[0035]所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述訓(xùn)練模塊具體包括:
[0036]訓(xùn)練子模塊,用于訓(xùn)練郵件樣本;
[0037]預(yù)處理子模塊,用于對(duì)訓(xùn)練后的郵件樣本進(jìn)行預(yù)處理,確定垃圾郵件的特征并構(gòu)造特征集;
[0038]模型構(gòu)造子模塊,用于根據(jù)所構(gòu)造的特征集生成第一向量空間模型;
[0039]DBN構(gòu)建子模塊,用于根據(jù)所生成第一向量空間模型構(gòu)建深度置信網(wǎng)絡(luò)。
[0040]所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述預(yù)處理子模塊具體包括:[0041 ]分詞單元,用于對(duì)訓(xùn)練后的郵件樣本進(jìn)行分詞;
[0042]計(jì)算單元,用于計(jì)算所有已分出詞條所對(duì)應(yīng)的全局因子;
[0043]詞典構(gòu)造單元,用于根據(jù)所有已分出詞條及計(jì)算出的全局因子構(gòu)造詞典;
[0044]詞頻統(tǒng)計(jì)單元,用于統(tǒng)計(jì)所構(gòu)造詞典去除停用詞后剩余詞條的詞頻。
[0045]所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述模型構(gòu)造子模塊具體包括:
[0046]特征處理單元,用于將所構(gòu)造特征集中所有特征進(jìn)行向量化,并按照向量空間的模式存儲(chǔ);
[0047 ]歸一化處理單元,用于對(duì)所生成的特征向量進(jìn)行歸一化。
[0048]所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述DBN構(gòu)造子模塊具體包括:
[0049]訓(xùn)練單元,用于充分訓(xùn)練第N個(gè)RMB得到該RMB的權(quán)值;
[0050]RMB處理單元,用于固定第N個(gè)RMB的權(quán)值及偏移量,并使用其隱性神經(jīng)元的狀態(tài)作為下一個(gè)RMB的輸入向量。
[0051]本發(fā)明所提供的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,由于采用了構(gòu)建深度置信網(wǎng)絡(luò),通過(guò)所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)測(cè)試郵件的方式,提高了識(shí)別垃圾郵件的準(zhǔn)確性及穩(wěn)定性,同時(shí)節(jié)省了標(biāo)注大量樣本所需花費(fèi)的時(shí)間及人力。
【附圖說(shuō)明】
[0052]圖1是本發(fā)明中基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法的主要流程示意圖;
[0053]圖2是本發(fā)明基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0054]本發(fā)明提供一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法及系統(tǒng),為使本發(fā)明的目的、技術(shù)方案及效果更加清楚、明確,以下參照附圖并舉實(shí)例對(duì)本發(fā)明進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
[0055]本發(fā)明提供基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,通過(guò)深度置信網(wǎng)絡(luò)所具有的自我學(xué)習(xí)能力,結(jié)合大數(shù)據(jù)的優(yōu)勢(shì),利用網(wǎng)絡(luò)上存在的大量樣本學(xué)習(xí)提高分類能力,一方面,能夠提高對(duì)垃圾郵件識(shí)別的準(zhǔn)確性及穩(wěn)定性;另一方面,深度置信網(wǎng)絡(luò)為半監(jiān)督學(xué)習(xí)模型,可以采用大規(guī)模無(wú)類標(biāo)的樣本集合進(jìn)行訓(xùn)練,相對(duì)于傳統(tǒng)的監(jiān)督學(xué)習(xí)模型可以節(jié)省標(biāo)注大量樣本所需花費(fèi)的時(shí)間及人力。
[0056]如圖1所示,一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法包括:
[0057]SlOO:對(duì)郵件樣本進(jìn)行處理生成第一向量空間模型,構(gòu)建深度置信網(wǎng)絡(luò);
[0058]本發(fā)明實(shí)施例中,郵件樣本優(yōu)選為訓(xùn)練郵件集,指由大量已知類別的郵件組成的集合,也可簡(jiǎn)稱為訓(xùn)練集。通過(guò)訓(xùn)練郵件樣本可以歸納各個(gè)郵件類別的特性。
[0059]深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究,含多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)通過(guò)組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。
[0060]向量空間模型(VSM:Vector Space Model),其把對(duì)文本內(nèi)容的處理簡(jiǎn)化為向量空間中的向量運(yùn)算,并且它以空間上的相似度表達(dá)語(yǔ)義的相似度,直觀易懂。當(dāng)文檔被表示為文檔空間的向量,就可以通過(guò)計(jì)算向量之間的相似性來(lái)度量文檔間的相似性。
[0061]在信息過(guò)濾及檢索領(lǐng)域中,為了便于計(jì)算,常用向量空間模型來(lái)表示文本。該模型是首先從文本中選出具有代表能力的特征項(xiàng)
[0062]深度智信網(wǎng)絡(luò)(Deep Belief Network,簡(jiǎn)稱DBN),一種可以作為生成模型,也可以作為判斷模型的通過(guò)訓(xùn)練其中神經(jīng)元的權(quán)重,讓整個(gè)神經(jīng)網(wǎng)絡(luò)按照最大概率來(lái)生成訓(xùn)練數(shù)據(jù)的雙重模型。其可以用于識(shí)別特征、分類數(shù)據(jù),甚至于生成數(shù)據(jù)。
[0063]DBN由多層神經(jīng)元構(gòu)成,分為顯性神經(jīng)元(簡(jiǎn)稱為顯元)及隱性神經(jīng)元(簡(jiǎn)稱為隱元,又可稱為特征檢測(cè)器);顯元用于接收輸入,隱元用于提取特征。最頂上的兩層間的連接是無(wú)向的,可組成聯(lián)合內(nèi)存;而較低的其它層之間為連接上下的有向連接。最底層代表了數(shù)據(jù)向量,每一個(gè)神經(jīng)元代表數(shù)據(jù)向量的一維。
[0064]本發(fā)明實(shí)施例中,優(yōu)選擁有深層架構(gòu)的前饋神經(jīng)網(wǎng)絡(luò)組成的深度置信網(wǎng)絡(luò)作為訓(xùn)練郵件分類的網(wǎng)絡(luò)模型,能夠利用較少的參數(shù)完成復(fù)雜的函數(shù)逼近。
[0065]S200:對(duì)測(cè)試郵件進(jìn)行處理生成第二向量空間模型;
[0066]將測(cè)試郵件進(jìn)行處理以向量空間模型的方式表示出來(lái),也就是指將一篇文本即郵件表示為一個(gè)η維向量,而由于自然文本不能夠被構(gòu)造的分類算法直接處理,所以首先需要將文本進(jìn)行某種處理,轉(zhuǎn)換為分類器能夠識(shí)別的形式,假設(shè)一個(gè)文檔的η個(gè)特征項(xiàng)的值分別為wl,w2,…,wn,由于它們來(lái)自于同一待過(guò)濾郵件,所以將它們視為一個(gè)整體來(lái)考慮,讓這些特征項(xiàng)構(gòu)成一個(gè)特征向量d,即每一個(gè)文本看為是η維空間中的一個(gè)向量,其表示形式為:d(wl,w2,…,wn),其中,wi為第i個(gè)特征項(xiàng)的權(quán)重,η是特征項(xiàng)的個(gè)數(shù),特征項(xiàng)可以是字、詞、短語(yǔ)或者某種概念,優(yōu)選為詞,以便有更高的分類精度。這樣文本表示就轉(zhuǎn)化為先進(jìn)行文本分詞,再由這些詞作為向量的維數(shù)來(lái)表示文本。
[0067]本發(fā)明實(shí)施例中,文檔是指郵件或郵件中的片段如段落、句群或句子等。
[0068]權(quán)重是一個(gè)相對(duì)的概念,針對(duì)某一指標(biāo)而言。某一指標(biāo)的權(quán)重是指該指標(biāo)在整體評(píng)價(jià)中的相對(duì)重要程度。權(quán)重是要從若干評(píng)價(jià)指標(biāo)中分出輕重來(lái),一組評(píng)價(jià)指標(biāo)體系相對(duì)應(yīng)的權(quán)重組成了權(quán)重體系。
[0069]S300:利用所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)第二向量空間模型;
[0070]利用所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)第二向量空間模型,是指利用訓(xùn)練好的深度置信網(wǎng)絡(luò)處理待過(guò)濾的郵件,將待過(guò)濾的郵件分類,查看其為垃圾郵件還是正常郵件;即該步驟又可表示為:利用所構(gòu)建的深度置信網(wǎng)絡(luò)將表示為第二向量空間模型的待過(guò)濾郵件進(jìn)行分類,其中,類別包括垃圾郵件及正常郵件。
[0071]S400:輸出檢測(cè)結(jié)果。
[0072]輸出檢測(cè)結(jié)果,是指將經(jīng)過(guò)上述步驟的已過(guò)濾郵件是否為垃圾郵件或者屬于訓(xùn)練郵件集中哪類等結(jié)果輸出,以便郵件接收者或系統(tǒng)清楚該郵件類別,后續(xù)也可加入其它處理過(guò)程。如,經(jīng)郵件接收者確認(rèn)后將該類別或該郵件發(fā)送源地址加入黑名單、灰名單或白名單等。
[0073]本發(fā)明所提供的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,由于采用了構(gòu)建深度置信網(wǎng)絡(luò),通過(guò)所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)測(cè)試郵件的方式,提高了識(shí)別垃圾郵件的準(zhǔn)確性及穩(wěn)定性,同時(shí)節(jié)省了標(biāo)注大量樣本所需花費(fèi)的時(shí)間及人力。
[0074]進(jìn)一步地,所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述SlOO具體包括:
[0075]SI 10:訓(xùn)練郵件樣本;
[0076]S120:對(duì)訓(xùn)練后的郵件樣本進(jìn)行預(yù)處理,確定垃圾郵件的特征并構(gòu)造特征集;
[0077]向量空間模型有布爾型及數(shù)值型兩種,數(shù)值型向量空間模型表示中,特征項(xiàng)權(quán)值的計(jì)算采用詞頻(TF,Term Frequency,表示該特征詞在文本中出現(xiàn)的次數(shù))表示或TF-1DF(TF-1nverse document frequency,倒排詞頻)等方法,后者為TF與DF的相關(guān)組合。
[0078]故,以向量空間模型表示文本時(shí),由于向量空間的維數(shù)由文本集中詞的數(shù)目來(lái)決定,因而維數(shù)是相當(dāng)大的,然而文本的許多信息又是高度冗余的,所以需要降維處理和特征提取。具體步驟為:對(duì)文本進(jìn)行預(yù)處理,去掉停用詞以及文本中出現(xiàn)頻率過(guò)少的詞;采用特定特征選擇方法對(duì)詞進(jìn)行特征項(xiàng)選擇;還可以包括步驟:根據(jù)需要添加其他特征,目的是提高分類效果。
[0079]而布爾型向量空間模型是一種簡(jiǎn)單文本的表示模型,文本中特征項(xiàng)的狀態(tài)只有O或I兩種形式,O表示該特征項(xiàng)沒(méi)有出現(xiàn)在文本中,1則表示文本包含特征項(xiàng)。布爾型向量空間模型通過(guò)O和I的字串將文本表示成一個(gè)0/1序列。這種模型的優(yōu)點(diǎn)是設(shè)計(jì)比較簡(jiǎn)單,分類效率高。
[0080]S130:根據(jù)所構(gòu)造的特征集生成第一向量空間模型;
[0081]生成第一向量空間模型的過(guò)程即將特征集中所有特征進(jìn)行向量化并按照向量空間模式進(jìn)行存儲(chǔ)的過(guò)程。
[0082 ] SI 40:根據(jù)所生成第一向量空間模型構(gòu)建深度置信網(wǎng)絡(luò)。
[0083]進(jìn)一步地,所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述S120具體包括:
[0084]S121:對(duì)訓(xùn)練后的郵件樣本進(jìn)行分詞;
[0085]中文分詞方法可分為三大類:基于詞典的字符串匹配的分詞方法、基于理解的分詞方法和基于統(tǒng)計(jì)的分詞方法。
[0086]基于詞典的字符串匹配分詞方法,又叫做機(jī)械分詞方法,其按照一定的策略將待分析的漢字串與一個(gè)充分大的機(jī)器詞典中的詞條進(jìn)行匹配,若在詞典中找到某個(gè)字符串,則匹配成功。按照掃描方向的不同,字符串匹配分詞方法可以分為正向匹配和逆向匹配;按照不同長(zhǎng)度優(yōu)先匹配的情況,可以分為最大匹配和最小匹配。常用的兩種分詞方法如下:
[0087](I)正向最大匹配法。正向最大匹配法目的是將最長(zhǎng)的復(fù)合詞分離出來(lái)。它的基本思想是:假定分詞詞典中的最長(zhǎng)詞條所含漢字個(gè)數(shù)為n,則用被處理文檔的當(dāng)前字串中的前η個(gè)字作為匹配字段,查找字典。若字典中存在這樣的一個(gè)字詞,則匹配成功,匹配字段被作為一個(gè)詞切分出來(lái)。如果詞典中找不到這樣的一個(gè)字詞,則匹配失敗,將匹配字段中的最后一個(gè)字去掉,對(duì)剩下的字串重新進(jìn)行匹配處理……如此進(jìn)行下去,直到匹配成功,切分出一個(gè)詞或剩余字串的長(zhǎng)度為零為止。這樣就完成了一輪匹配,然后取下一個(gè)η字字串進(jìn)行匹配處理,直到文檔被掃描完為止。
[0088](2)逆向最大匹配法。逆向最大匹配法的基本原理和正向最大匹配法相同,不同的是分詞切分的方向與正向最大匹配法相反,并且使用的分詞詞典也不同。在實(shí)際處理時(shí),先將文檔進(jìn)行倒排處理,生成逆序文檔。然后,根據(jù)逆序詞典,對(duì)逆序文檔用正向最大匹配法處理即可。
[0089]基于理解的分詞方法,其通過(guò)讓計(jì)算機(jī)模擬人對(duì)句子的理解,達(dá)到識(shí)別詞的效果。其基本思想就是在分詞的同時(shí)進(jìn)行句法、語(yǔ)義分析,利用句法信息和語(yǔ)義信息來(lái)處理歧義現(xiàn)象。它通常包括三個(gè)部分:分詞子系統(tǒng)、句法語(yǔ)義子系統(tǒng)、總控部分。在總控部分的協(xié)調(diào)下,分詞子系統(tǒng)可以獲得有關(guān)詞、句子等的句法和語(yǔ)義信息來(lái)對(duì)分詞歧義進(jìn)行判斷,即它模擬了人對(duì)句子的理解過(guò)程。
[0090]基于統(tǒng)計(jì)的分詞方法,從形式上看,詞是穩(wěn)定的字的組合,因此在上下文中,相鄰的字同時(shí)出現(xiàn)的次數(shù)能夠較好的反映出構(gòu)成詞的可能性。對(duì)字與字同時(shí)出現(xiàn)的頻率或概率進(jìn)行統(tǒng)計(jì),次數(shù)越高的就越有可能構(gòu)成一個(gè)詞。因此利用詞頻統(tǒng)計(jì)的結(jié)果幫助分詞,會(huì)產(chǎn)生一定的效果。這種方法只需對(duì)語(yǔ)料中的字組頻度進(jìn)行統(tǒng)計(jì),不需要切分詞典,因而又叫做無(wú)詞典分詞法或統(tǒng)計(jì)取詞方法。
[0091]S122:根據(jù)所有已分出詞條構(gòu)造詞典;
[0092]在構(gòu)造詞典的同時(shí)還可以計(jì)算所有詞條的全局因子,將計(jì)算所得到的值放置詞典中,使其可以在后續(xù)過(guò)程中直接調(diào)用。
[0093]S123:統(tǒng)計(jì)所構(gòu)造詞典去除停用詞后剩余詞條的詞頻。
[0094]在處理自然語(yǔ)言數(shù)據(jù)(或文本)之前或之后會(huì)自動(dòng)過(guò)濾掉某些字或詞,這些字或詞即被稱為停用詞(Stop Words),在本發(fā)明中,優(yōu)選為在文本中經(jīng)常出現(xiàn)的,對(duì)文本的分類無(wú)多大貢獻(xiàn)的詞。
[0095]由S121至S123,以及上述“降維處理及特征提取具體步驟為:對(duì)文本進(jìn)行預(yù)處理,去掉停用詞以及文本中出現(xiàn)頻率過(guò)少的詞;采用特定特征選擇方法對(duì)詞進(jìn)行特征項(xiàng)選擇;還可以包括步驟:根據(jù)需要添加其他特征”;可以看出步驟S122及S123可以更換次序。
[0096]進(jìn)一步地,所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述S130具體包括:
[0097]S131:將所構(gòu)造特征集中所有特征進(jìn)行向量化,并按照向量空間的模式存儲(chǔ);
[0098]將所構(gòu)造特征集中所有特征進(jìn)行向量化,可以說(shuō)是分別將其轉(zhuǎn)化為特征向量。
[0099 ] S132:對(duì)所生成的特征向量進(jìn)行歸一化。
[0100]歸一化是一種簡(jiǎn)化計(jì)算的方式,即將有量綱的表達(dá)式,經(jīng)過(guò)變換,化為無(wú)量綱的表達(dá)式,成為標(biāo)量。
[0101]在S132之后還可以包括步驟:對(duì)所得到的特征向量賦予不同的權(quán)重,所述權(quán)重值原始特征的權(quán)重,選擇為預(yù)處理后文本中單詞的TF-1DF,其可直接調(diào)用存儲(chǔ)于詞典中的全局因子,計(jì)算方式如公式(I)所示:
[0102]TF-1DF= (TF/Ni)*lg(N/DF) (I);
[0?03]其中,Ni是郵件中單詞的總數(shù);TF是指文檔中給定單詞的詞頻;IDF是逆向文件頻率,是一個(gè)單詞的重要性的度量;N表示文檔總數(shù);DF表示包含該單詞的文檔總數(shù)。
[0104]進(jìn)一步地,所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其中,所述S140包括:
[0105]S141:充分訓(xùn)練第N個(gè)RMB得到該RMB的權(quán)值;
[0106]受限玻爾茲曼機(jī)(英語(yǔ)-Restricted Boltzmann Machine,RBM)是一種可通過(guò)輸入數(shù)據(jù)集學(xué)習(xí)概率分布的隨機(jī)生成神經(jīng)網(wǎng)絡(luò),是DBN的組成元件,每一個(gè)RBM都可以單獨(dú)用作聚類器。RMB分為顯層及隱層,顯層由顯元組成,用于輸入訓(xùn)練數(shù)據(jù);隱層由隱元組成,用作特征檢測(cè)器。同一顯層之間的顯元是相互獨(dú)立的,其只與隱層中隱元連接;同樣的,隱層中各個(gè)隱元之間也是相互獨(dú)立的,其只與顯層中顯元連接。
[0107]RBM主要由一個(gè)能量函數(shù)來(lái)定義:如公式(2)所示:
[0108]E(V,h I Θ) = -bV-c^-h^v (2);
[0109]根據(jù)公式(2)可以得出在RMB中隱層的信息向量及顯層的信息向量分別滿足如公式(3)及公式(4)所示的概率分布:
[0110]P(Vi= 11h) = σ(bi+EjWjihj) (3);
[0111]P(hj = 11 v) = o(cj+E iWjiVi) (4);
[0112]利用對(duì)數(shù)似然函數(shù)可求得參數(shù)的更新公式分別為公式(5)、公式(6)及公式(7):
[01 13] Δ Wji = n( < Vihj〉data_< Vihj〉confabula)( 5 );
[01 1 4] Δ bi — Π ( < Vi〉data_< Vi〉conf abula )( 6 );
[01 15] Δ Cj = <hj〉data_<hj〉confabula)(了 )ο
[0116]DBN的訓(xùn)練過(guò)程中可以使用貪婪法逐層訓(xùn)練每一層的RBM,S卩S140步驟具體為:首先充分訓(xùn)練第一個(gè)RBM;固定第一個(gè)RBM的權(quán)重和偏移量,然后使用它的隱形神經(jīng)元的狀態(tài)作為第二個(gè)RBM的輸入向量;充分訓(xùn)練第二個(gè)RBM后,將第二個(gè)RBM堆疊在第一個(gè)RBM上方,重復(fù)上述步驟直至所有RMB訓(xùn)練完成。
[0117]S142:固定第N個(gè)RMB的權(quán)值及偏移量,并使用其隱性神經(jīng)元的狀態(tài)作為下一個(gè)RMB的輸入向量;
[0118]S143:進(jìn)行下一個(gè)RMB的訓(xùn)練直至所有RMB訓(xùn)練完成。
[0119]該步驟之后還可包括步驟:利用傳統(tǒng)神經(jīng)網(wǎng)絡(luò)中誤差反向傳播過(guò)程調(diào)優(yōu)整個(gè)網(wǎng)絡(luò),該步驟可以消除由貪婪法逐層進(jìn)行RMB訓(xùn)練積累的誤差。
[0120]郵件過(guò)濾是一個(gè)二分類問(wèn)題,在用神經(jīng)網(wǎng)絡(luò)處理此類問(wèn)題時(shí),頂層神經(jīng)元一般代表類別的個(gè)數(shù),因此為了實(shí)現(xiàn)垃圾郵件過(guò)濾,可以設(shè)置最后的BP網(wǎng)絡(luò)輸出層包含兩個(gè)神經(jīng)元,輸入層的神經(jīng)元個(gè)數(shù)為預(yù)處理后得到的詞匯表的大小。本發(fā)明實(shí)施例中,由于RBM—般在二值輸入數(shù)據(jù)上運(yùn)行,所以RBM可以優(yōu)選采用二值向量。
[0121]DBN的具體訓(xùn)練過(guò)程為,首先通過(guò)一個(gè)非監(jiān)督貪婪逐層方法去預(yù)訓(xùn)練獲得生成模型的權(quán)值。在這個(gè)訓(xùn)練階段,在顯層會(huì)產(chǎn)生一個(gè)向量V,通過(guò)它將值傳遞到隱層。反過(guò)來(lái),顯層的輸入會(huì)被隨機(jī)的選擇,以嘗試去重構(gòu)原始的輸入信號(hào)。最后,這些新的可視的神經(jīng)元激活單元將前向傳遞重構(gòu)隱層激活單元。在訓(xùn)練過(guò)程中,首先將可視向量值映射給隱元;然后顯層單元由隱層單元重建;這些新顯層單元再次映射給隱元,這樣就獲取新的隱元。這樣訓(xùn)練時(shí)間會(huì)顯著的減少,因?yàn)橹恍枰獑蝹€(gè)步驟就可以接近最大似然學(xué)習(xí)。增加進(jìn)網(wǎng)絡(luò)的每一層都會(huì)改進(jìn)訓(xùn)練數(shù)據(jù)的對(duì)數(shù)概率。
[0122]在預(yù)訓(xùn)練后,DBN可以通過(guò)利用帶標(biāo)簽數(shù)據(jù)用BP算法去對(duì)判別性能做調(diào)整。在這里,一個(gè)標(biāo)簽集將被附加到頂層,通過(guò)一個(gè)自下向上的,學(xué)習(xí)到的識(shí)別權(quán)值獲得一個(gè)網(wǎng)絡(luò)的分類面。這個(gè)性能會(huì)比單純的BP算法訓(xùn)練的網(wǎng)絡(luò)好。
[0123]具體的,先用無(wú)標(biāo)定數(shù)據(jù)訓(xùn)練第一層,訓(xùn)練時(shí)先學(xué)習(xí)第一層的參數(shù),,該層可以看作是得到一個(gè)使得輸出和輸入差別最小的三層神經(jīng)網(wǎng)絡(luò)的隱層,由于模型容量的限制以及稀疏性約束,使得得到的模型能夠?qū)W習(xí)到數(shù)據(jù)本身的結(jié)構(gòu),從而得到比輸入更具有表示能力的特征;在學(xué)習(xí)得到第η-1層后,將η-1層的輸出作為第η層的輸入,訓(xùn)練第η層,由此分別得到各層的參數(shù)。
[0124]基于第一步得到的各層參數(shù)進(jìn)一步調(diào)整整個(gè)多層模型的參數(shù),這一步是一個(gè)有監(jiān)督訓(xùn)練過(guò)程;第一步類似神經(jīng)網(wǎng)絡(luò)的隨機(jī)初始化初值過(guò)程,由于深度學(xué)習(xí)的第一步不是隨機(jī)初始化,而是通過(guò)學(xué)習(xí)輸入數(shù)據(jù)的結(jié)構(gòu)得到的,因而這個(gè)初值更接近全局最優(yōu),從而能夠取得更好的效果。得到訓(xùn)練好的深度智信網(wǎng)絡(luò)后,就可以把測(cè)試樣本生成的向量空間作為輸入就可以得到郵件的類別。
[0125]如圖2所示,一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng)包括:
[0126]訓(xùn)練模塊100,用于對(duì)郵件樣本進(jìn)行處理生成第一向量空間模型,構(gòu)建深度置信網(wǎng)絡(luò),具體如上所述;
[0127]測(cè)試模塊200,用于對(duì)測(cè)試郵件進(jìn)行處理生成第二向量空間模型,具體如上所述;
[0128]檢測(cè)模塊300,用于利用所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)第二向量空間模型,具體如上所述;
[0129]輸出模塊400,用于輸出檢測(cè)結(jié)果,具體如上所述。
[0130]進(jìn)一步地,所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述訓(xùn)練模塊100具體包括:
[0131]訓(xùn)練子模塊,用于訓(xùn)練郵件樣本,具體如上所述;
[0132]預(yù)處理子模塊,用于對(duì)訓(xùn)練后的郵件樣本進(jìn)行預(yù)處理,確定垃圾郵件的特征并構(gòu)造特征集,具體如上所述;
[0133]模型構(gòu)造子模塊,用于根據(jù)所構(gòu)造的特征集生成第一向量空間模型,具體如上所述;
[0134]DBN構(gòu)建子模塊,用于根據(jù)所生成第一向量空間模型構(gòu)建深度置信網(wǎng)絡(luò),具體如上所述。
[0135]進(jìn)一步地,所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述預(yù)處理子模塊具體包括:
[0136]分詞單元,用于對(duì)訓(xùn)練后的郵件樣本進(jìn)行分詞,具體如上所述;
[0137]計(jì)算單元,用于計(jì)算所有已分出詞條所對(duì)應(yīng)的全局因子,具體如上所述;
[0138]詞典構(gòu)造單元,用于根據(jù)所有已分出詞條及計(jì)算出的全局因子構(gòu)造詞典,具體如上所述;
[0139]詞頻統(tǒng)計(jì)單元,用于統(tǒng)計(jì)所構(gòu)造詞典去除停用詞后剩余詞條的詞頻,具體如上所述。
[0140]進(jìn)一步地,所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述模型構(gòu)造子模塊具體包括:
[0141]特征處理單元,用于將所構(gòu)造特征集中所有特征進(jìn)行向量化,并按照向量空間的模式存儲(chǔ),具體如上所述;
[0142]歸一化處理單元,用于對(duì)所生成的特征向量進(jìn)行歸一化,具體如上所述。
[0143]進(jìn)一步地,所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其中,所述DBN構(gòu)造子模塊具體包括:
[0144]訓(xùn)練單元,用于充分訓(xùn)練第N個(gè)RMB得到該RMB的權(quán)值,具體如上所述;RMB處理單元,用于固定第N個(gè)RMB的權(quán)值及偏移量,并使用其隱性神經(jīng)元的狀態(tài)作為下一個(gè)RMB的輸入向量,具體如上所述。
[0145]應(yīng)當(dāng)理解的是,本發(fā)明的應(yīng)用不限于上述的舉例,對(duì)本領(lǐng)域普通技術(shù)人員來(lái)說(shuō),可以根據(jù)上述說(shuō)明加以改進(jìn)或變換,例如向量空間模型特征項(xiàng)處理順序等,所有這些改進(jìn)和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護(hù)范圍。
【主權(quán)項(xiàng)】
1.一種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其特征在于,所述基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法包括: 步驟A:對(duì)郵件樣本進(jìn)行處理生成第一向量空間模型,構(gòu)建深度置信網(wǎng)絡(luò); 步驟B:對(duì)測(cè)試郵件進(jìn)行處理生成第二向量空間模型; 步驟C:利用所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)第二向量空間模型; 步驟D:輸出檢測(cè)結(jié)果。2.根據(jù)權(quán)利要求1所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其特征在于,所述步驟A具體包括: 步驟Al:訓(xùn)練郵件樣本; 步驟A2:對(duì)訓(xùn)練后的郵件樣本進(jìn)行預(yù)處理,確定垃圾郵件的特征并構(gòu)造特征集; 步驟A3:根據(jù)所構(gòu)造的特征集生成第一向量空間模型; 步驟A4:根據(jù)所生成第一向量空間模型構(gòu)建深度置信網(wǎng)絡(luò)。3.根據(jù)權(quán)利要求2所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其特征在于,所述步驟A2具體包括: 步驟A21:對(duì)訓(xùn)練后的郵件樣本進(jìn)行分詞; 步驟A22:根據(jù)所有已分出詞條構(gòu)造詞典; 步驟A23:統(tǒng)計(jì)所構(gòu)造詞典去除停用詞后剩余詞條的詞頻。4.根據(jù)權(quán)利要求2所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其特征在于,所述步驟A3具體包括: 步驟A31:將所構(gòu)造特征集中所有特征進(jìn)行向量化,并按照向量空間的模式存儲(chǔ); 步驟A32:對(duì)所生成的特征向量進(jìn)行歸一化。5.根據(jù)權(quán)利要求2所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾方法,其特征在于,所述步驟A4包括: 步驟A41:充分訓(xùn)練第N個(gè)RMB得到該RMB的權(quán)值; 步驟A42:固定第N個(gè)RMB的權(quán)值及偏移量,并使用其隱性神經(jīng)元的狀態(tài)作為下一個(gè)RMB的輸入向量; 步驟A43:進(jìn)行下一個(gè)RMB的訓(xùn)練直至所有RMB訓(xùn)練完成。6.—種基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其特征在于,所述基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng)包括: 訓(xùn)練模塊,用于對(duì)郵件樣本進(jìn)行處理生成第一向量空間模型,構(gòu)建深度置信網(wǎng)絡(luò); 測(cè)試模塊,用于對(duì)測(cè)試郵件進(jìn)行處理生成第二向量空間模型; 檢測(cè)模塊,用于利用所構(gòu)建的深度置信網(wǎng)絡(luò)檢測(cè)第二向量空間模型; 輸出模塊,用于輸出檢測(cè)結(jié)果。7.根據(jù)權(quán)利要求6所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其特征在于,所述訓(xùn)練模塊具體包括: 訓(xùn)練子模塊,用于訓(xùn)練郵件樣本; 預(yù)處理子模塊,用于對(duì)訓(xùn)練后的郵件樣本進(jìn)行預(yù)處理,確定垃圾郵件的特征并構(gòu)造特征集; 模型構(gòu)造子模塊,用于根據(jù)所構(gòu)造的特征集生成第一向量空間模型; DBN構(gòu)建子模塊,用于根據(jù)所生成第一向量空間模型構(gòu)建深度置信網(wǎng)絡(luò)。8.根據(jù)權(quán)利要求7所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其特征在于,所述預(yù)處理子模塊具體包括: 分詞單元,用于對(duì)訓(xùn)練后的郵件樣本進(jìn)行分詞; 計(jì)算單元,用于計(jì)算所有已分出詞條所對(duì)應(yīng)的全局因子; 詞典構(gòu)造單元,用于根據(jù)所有已分出詞條及計(jì)算出的全局因子構(gòu)造詞典;詞頻統(tǒng)計(jì)單元,用于統(tǒng)計(jì)所構(gòu)造詞典去除停用詞后剩余詞條的詞頻。9.根據(jù)權(quán)利要求7所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其特征在于,所述模型構(gòu)造子模塊具體包括: 特征處理單元,用于將所構(gòu)造特征集中所有特征進(jìn)行向量化,并按照向量空間的模式存儲(chǔ); 歸一化處理單元,用于對(duì)所生成的特征向量進(jìn)行歸一化。10.根據(jù)權(quán)利要求7所述的基于深度學(xué)習(xí)的垃圾郵件過(guò)濾系統(tǒng),其特征在于,所述DBN構(gòu)造子模塊具體包括: 訓(xùn)練單元,用于充分訓(xùn)練第N個(gè)RMB得到該RMB的權(quán)值; RMB處理單元,用于固定第N個(gè)RMB的權(quán)值及偏移量,并使用其隱性神經(jīng)元的狀態(tài)作為下一個(gè)RMB的輸入向量。
【文檔編號(hào)】G06F17/30GK106096005SQ201610464120
【公開(kāi)日】2016年11月9日
【申請(qǐng)日】2016年6月23日
【發(fā)明人】楊衛(wèi)國(guó), 鄒偉, 何震宇
【申請(qǐng)人】康佳集團(tuán)股份有限公司