◆許麗 焦博 趙章瑞
基于TF-IDF的加權(quán)樸素貝葉斯新聞文本分類算法
◆許麗1焦博1趙章瑞2
(1.華北水利水電大學(xué) 物理與電子學(xué)院 河南 450046;2.鄭州市金水區(qū)緯五路第一小學(xué) 河南 450003)
實時關(guān)注網(wǎng)絡(luò)上的熱點新聞信息可以提高黨代表提案內(nèi)容的時效性和代表性。對于網(wǎng)絡(luò)熱點新聞文本分類問題,基于樸素貝葉斯算法,選擇詞頻-逆文檔頻率(TF-IDF, term frequency-inverse document frequency)為特征計算關(guān)鍵詞的特征權(quán)重,通過對樸素貝葉斯算法進行加權(quán)處理,實現(xiàn)對新聞文本數(shù)據(jù)進行分類。分別使用兩個數(shù)據(jù)集進行三次實驗,實驗結(jié)果表明,該算法可以達(dá)到較高分類精度,對新聞文本分類效果較好。
文本分類;特征提?。籘F-IDF算法;加權(quán)樸素貝葉斯
隨著信息科技的飛速發(fā)展,各種現(xiàn)代化的先進技術(shù)在社會生活中得到廣泛應(yīng)用。黨代表提案制度是黨代表履行義務(wù),為人民群眾發(fā)聲最直接、最有效的方式。利用科學(xué)技術(shù)為黨代表提供更加廣泛、實時的新聞信息,有助于黨代表了解收集社情民意、征求人民群眾意見,從而提高黨代表提案的實時性、科學(xué)性和全面性。為幫助黨代表實時了解網(wǎng)絡(luò)熱點新聞,將社會上的相關(guān)熱點新聞信息及時推送給黨代表,就要實時跟蹤采集網(wǎng)絡(luò)新聞,對采集到的數(shù)據(jù)進行處理、分類,從而為每位黨代表提供與其提案調(diào)研方向相關(guān)的熱點新聞信息。
在特征提取以及文本分類方面,杜永興等[1]提出通過TF-IDF算法提取關(guān)鍵詞,利用余弦定理和可信度來推薦可靠的治療方案,實現(xiàn)牛疾病智能診斷系統(tǒng);但宇豪等[2]提出一種基于Word2vec的均值算法以及改進的TF-IDF分類算法,引入了修正因子,從而對分類方法進行優(yōu)化;李振興等[3]對電影票房進行研究,建立貝葉斯分類模型,挖掘影響票房的重要因素,實現(xiàn)電影票房科學(xué)預(yù)測;鄒鼎杰等[4]提出對與圖書信息相關(guān)的知識圖譜進行數(shù)據(jù)分析、關(guān)鍵詞提取,并以TF-IDF權(quán)值對關(guān)鍵詞進行篩選,采用樸素貝葉斯分類算法,實現(xiàn)對圖書進行分類;牛永杰等[5]考慮詞語位置、詞性、詞長等因素,改進傳統(tǒng)TF-IDF算法,對權(quán)重計算進行優(yōu)化,從而可以將關(guān)鍵詞更加準(zhǔn)確地提取出來;張波等[6]提出采用卷積神經(jīng)網(wǎng)絡(luò)算法,基于TF-IDF將類別作為關(guān)鍵詞進行提取,可以在保證卷積神經(jīng)網(wǎng)絡(luò)分類性能的同時,減小模型所使用的內(nèi)存,從而提高分類速度;陳偉鶴等[7]提出通過計算分詞后的字或詞的長度和頻數(shù)進行分配權(quán)重,根據(jù)特征權(quán)重大小篩選提取特征關(guān)鍵詞,可以實現(xiàn)關(guān)鍵詞提取較高的準(zhǔn)確率,降低了空間復(fù)雜度,但是時間復(fù)雜度更高;但唐朋等[8]基于TF-IDF特征結(jié)合VSM進行改進,提出了自動化的中文文本分類算法,該方法相較于傳統(tǒng)算法可以實現(xiàn)更高的準(zhǔn)確率,但是隨著數(shù)據(jù)維度的增大,其準(zhǔn)確性并不能有效提高;邸鵬等[9]不再計算傳統(tǒng)貝葉斯算法中的先驗概率,而是引入一個放大系數(shù)來計算后驗概率,這樣改進可以提高分類速度,但是放大系數(shù)的選擇還需要深入研究;趙燕等[10]應(yīng)用樸素貝葉斯分類算法,提出農(nóng)業(yè)文本分類方法,可以實現(xiàn)較高的分類性能以及較高的準(zhǔn)確率,但是由于農(nóng)業(yè)文本語料庫的數(shù)據(jù)量較小,分類器對于大量數(shù)據(jù)的處理性能還有待研究。
本文在提高黨代表提案的時效性的背景下,提出一種基于TF-IDF的加權(quán)樸素貝葉斯新聞文本分類算法。通過采集網(wǎng)上的熱點新聞信息進行數(shù)據(jù)處理,然后選擇TF-IDF為特征對文本數(shù)據(jù)進行分析,計算特征詞的權(quán)重,通過特征權(quán)重對樸素貝葉分類算法進行加權(quán),實現(xiàn)新聞文本數(shù)據(jù)分類,從而可以根據(jù)每一位黨代表的提案調(diào)研內(nèi)容,推薦相關(guān)的實時熱點新聞信息。
應(yīng)用基于Python的網(wǎng)絡(luò)爬蟲技術(shù),在各類新聞網(wǎng)站爬取實時網(wǎng)絡(luò)熱點新聞數(shù)據(jù)。采集新聞標(biāo)題、新聞發(fā)布時間等信息,將數(shù)據(jù)以文本格式存儲。
(1)文本數(shù)據(jù)清洗
去除爬取到的新聞文本數(shù)據(jù)可能會存在的一些特殊符號以及多余的空白,多余的空白可能會將一個完整的詞語分開,造成分詞時的錯誤,降低分詞準(zhǔn)確率,從而對最終分類效果造成影響。
(2)中文文本分詞
本文選擇Python中基于中文詞庫的jieba分詞庫來對新聞文本數(shù)據(jù)進行分詞。將文本內(nèi)容分割成單個的字、詞或者短語,使計算機可以準(zhǔn)確判斷中文文本中的每一個詞語,這種方法具有較高的分詞精度和較快的分詞速度,可以提高文本分類的準(zhǔn)確率。
(3)去停用詞
通過與停用詞庫進行比對,將新聞文本數(shù)據(jù)進行過濾,刪除包括一些語氣詞、介詞、代詞在內(nèi)的沒有意義、對文本分類結(jié)果可能會有影響的詞,提高文本關(guān)鍵詞的密度。同時在一定程度上降低關(guān)鍵詞的特征維度,提高分類的準(zhǔn)確率以及分類效率。
結(jié)構(gòu)化的數(shù)據(jù)可以大大提高計算機處理數(shù)據(jù)的速度。目前常用的文本表示方法有:布爾模型(Boolean Model)、概率模型(Probabilistic Model)、向量空間模型(Vector Space Model)。本文采用向量空間模型對新聞文本數(shù)據(jù)進行表示。
在向量空間模型中,每一篇新聞文本都能以一個維向量的形式在多維空間中進行表示,每一篇新聞文本數(shù)據(jù)中都包含大量的特征詞。特征詞的權(quán)重根據(jù)其對文本內(nèi)容的作用以及重要性來確定,能夠準(zhǔn)確表示該文本主要內(nèi)容的詞或者對某一類文本內(nèi)容具有較強的標(biāo)識能力的詞賦予較高的權(quán)重,反之賦予較低的權(quán)重。特征權(quán)重就是該詞對應(yīng)空間向量的一個維度坐標(biāo)??梢赃M行如下表示:
新聞文本f在向量空間中就可以表示為:
其中,f是數(shù)據(jù)集中第篇新聞文本,=1,2,…,;是f中含有的特征詞個數(shù),w是新聞文本f中特征詞t的特征權(quán)重,=1,2,…,。
貝葉斯分類算法是一種以統(tǒng)計學(xué)為基礎(chǔ)的分類算法。樸素貝葉斯分類算法是對傳統(tǒng)貝葉斯分類算法進行樸素的假設(shè),所謂樸素就是假設(shè)數(shù)據(jù)類別之間彼此獨立,互不產(chǎn)生任何影響。首先要計算屬于某一類的先驗概率,然后再利用貝葉斯定理計算其屬于此類的后驗概率,對各類后驗概率的大小進行比較就可進行分類。雖然在現(xiàn)實中不存在這樣的情況,但是在實踐中對于文本分類問題進行樸素假設(shè)可以大大降低貝葉斯分類算法的復(fù)雜度。
對文本分類來說,設(shè)訓(xùn)練數(shù)據(jù)集={1,f,…,f},訓(xùn)練集數(shù)據(jù)分為類,記為C,=1,2,…,。類C的先驗概率為(C),則文本的后驗概率為:
由樸素貝葉斯算法的獨立性假設(shè):各個特征詞之間相互獨立??傻脳l件概率:
將式(2)代入式(3)可得:
因為()確定不變,所以在比較后驗概率時只需要比較上式中的分子即可。即:
傳統(tǒng)的樸素貝葉斯分類算法并沒有考慮到分類時相同特征詞在不同類別的特征權(quán)重是不一樣的,在其獨立性假設(shè)的前提下,相同特征詞的重要程度都是一樣的,這樣假設(shè)會降低分類器的精確率。因此有必要對相同特征詞,根據(jù)其在不同類別的重要程度不同賦予其不同的特征權(quán)重。本文選擇TF-IDF算法來計算特征詞的權(quán)重。
TF-IDF作為一種統(tǒng)計方法,被大量應(yīng)用于信息檢索以及文本分類技術(shù)中。算法采用TF和IDF兩個參數(shù)來計算特征權(quán)重。通過計算詞頻可以得到在一篇文本中出現(xiàn)次數(shù)較高的特征詞,在一定程度上可以反映該詞對文本內(nèi)容的重要程度較高;但是一些常用詞,或者在數(shù)據(jù)集中多個文本中出現(xiàn)的詞,對文本沒有很好的區(qū)分作用,其重要程度較低。所以引入TF、IDF兩個參數(shù),綜合考慮詞頻和逆文檔頻率,可以使特征詞權(quán)重計算更加準(zhǔn)確,文本分類結(jié)果精確率更高。
對于新聞文本fi中的特征詞tj其特征權(quán)重計算公式如下:
其中,(t)是t在f中出現(xiàn)的次數(shù);是該數(shù)據(jù)集中文本總數(shù);(t)是數(shù)據(jù)集中含有t的文本數(shù)。
考慮到含有某一個特征詞不在數(shù)據(jù)集中時,式(6)中的(t)為零,這時就會產(chǎn)生除零錯誤,所以對IDF進行拉普拉斯平滑處理,用(t)+1替換(t)得到:
所以優(yōu)化后的TF-IDF計算公式為:
數(shù)據(jù)集中文本f中的特征詞t的特征權(quán)重為:
將特征權(quán)重代入式(8)可得加權(quán)樸素貝葉斯分類算法公式:
為保證有足夠的數(shù)據(jù)對模型進行訓(xùn)練,從而測試算法的分類效果及分類性能,實驗數(shù)據(jù)選擇復(fù)旦大學(xué)整理的新聞文本數(shù)據(jù)集以及搜狗新聞文本數(shù)據(jù)集。
實驗采用兩個數(shù)據(jù)集進行三組實驗,每一組數(shù)據(jù)集都劃分為兩個,分別用于分類器的訓(xùn)練和測試。實驗一:使用復(fù)旦大學(xué)整理的新聞數(shù)據(jù)集,含有政治、歷史、教育、環(huán)境等20個類別,各有約9000篇新聞文本數(shù)據(jù);實驗二:實驗一的訓(xùn)練集和測試集互換;實驗三:使用搜狗新聞數(shù)據(jù)集,包含經(jīng)濟、教育、娛樂、科技等10個類別,各有約50000篇新聞文本數(shù)據(jù)。
(1)精確率(Precision)
精確率是指對于分類結(jié)果,分類后的某個類別中,正確分類的樣本占該類樣本的比例,其計算公式為:
其中,(True Positive)為樣本屬于類C,并被分類器正確分類到類C的樣本數(shù)。
(False Positive)為樣本不屬于類C,但被分類器分到類C的樣本數(shù)。
(2)召回率(Recall)
召回率是指對于實際樣本,分類器正確分類的樣本占該類實際樣本的比例,其計算公式為:
其中,為樣本屬于類C,但被分類器分到其他類的樣本數(shù)。
(3)f1分?jǐn)?shù)(f1_score)
f1_score是精確率和召回率的調(diào)和平均。其計算公式為:
f1_score可以用來對分類器進行綜合評價,最大為1,最小為0。越接近1,說明分類器的分類性能越好,分類器的分類精度越高。
三次實驗結(jié)果如表1所示。
表1 基于TF-IDF的加權(quán)樸素貝葉斯分類實驗結(jié)果
從表1中可以看出,三次實驗的精確率都接近90%,說明本算法的準(zhǔn)確性較高,可以實現(xiàn)較好的分類效果。
從召回率和f1_score來看,前兩次實驗的實驗結(jié)果相差較小,實驗三的召回率和f1_score均低于前兩次實驗。但是實驗三的數(shù)據(jù)量是實驗一和實驗二的數(shù)據(jù)量的數(shù)倍,類別數(shù)量是前兩次實驗的二分之一,從一定程度上可以說明算法的性能會隨著數(shù)據(jù)規(guī)模的增大而降低。
同時,實驗三中的新聞類別數(shù)量少于實驗一和實驗二的數(shù)據(jù)類別數(shù)量,數(shù)據(jù)類別之間的相關(guān)性增大,算法的分類性能降低,這也驗證了樸素貝葉斯分類器的獨立性假設(shè)前提對于分類結(jié)果的影響。
本文針對為黨代表提供更加有效準(zhǔn)確的網(wǎng)絡(luò)熱點新聞信息,選取TF-IDF為特征,計算特征權(quán)重并對樸素貝葉斯分類算法進行加權(quán)處理。這樣可以避免樸素貝葉斯算法對相同特征詞在不同文本中賦予相等的特征權(quán)重。在一定范圍綜合考慮詞頻以及相同特征詞在不同類別文本中的重要程度,可以提高文本分類結(jié)果的準(zhǔn)確性。但是樸素貝葉斯分類算法隨著文本數(shù)據(jù)規(guī)模的增大,其穩(wěn)定性和準(zhǔn)確率都有所降低,并且由于對類別屬性間的樸素假設(shè),其對分類器的性能也有一定的影響,最終的結(jié)果也會存在一定的誤差。在接下來的研究中,可以對TF-IDF算法進行改進,引入位置、詞性因子等因素對特征權(quán)重的計算進行優(yōu)化,提高特征權(quán)重的綜合評價性,從而提高文本分類的準(zhǔn)確性;同時可以選擇其他的分類算法來克服樸素貝葉斯的樸素假設(shè)這一前提條件給實驗結(jié)果帶來的影響。
[1]杜永興,牛麗靜,秦嶺,等.基于改進TF-IDF算法的牛疾病智能診斷系統(tǒng)[J].計算機應(yīng)用與軟件,2021,38(02):50-53+57.
[2]Du Yongxing,Niu Lijing,Qin Ling,et al. Cattle disease intelligent diagnosis system based on improved TF-IDF algorithm [J]. Computer Applications and Software,2021,38(02):50-53+57.
[3]但宇豪,黃繼風(fēng),楊琳,等.基于TF-IDF與word2vec的臺詞文本分類研究[J].上海師范大學(xué)學(xué)報(自然科學(xué)版),2020,49(01):89-95.
[4]Dan Yuhao, Huang Jifeng, Yang Lin, et al. Research on line text classification based on TF-IDF and word2vec[J]. Journal of Shanghai Normal University (Natural Sciences), 2020,49(01):89-95.
[5]李振興,韓麗娜,史楠.基于貝葉斯分類模型的電影票房預(yù)測研究[J].計算機與數(shù)字工程,2020,48(09):2233-2237.
[6]Li Zhenxing,Han Lina,Shi Nan. Research on the prediction of film box office based on bayesian classification model[J]. Computer & Digital Engineering,2020,48(09):2233-2237.
[7]鄒鼎杰.基于知識圖譜和貝葉斯分類器的圖書分類[J].計算機工程與設(shè)計,2020,41(06):1796-1801.
[8]Zou Dingjie. Book classification based on knowledge graph and Bayesian classifier[J]. Computer engineering and design,2020,41(06):1796-1801.
[9]牛永潔,田成龍.融合多因素的TFIDF關(guān)鍵詞提取算法研究[J].計算機技術(shù)與發(fā)展,2019,29(07):80-83.
[10]Niu Yongjie,Tian Chenglong. Research on TFIDF Keyword Extraction Algorithm Based on Multiple Factors[J]. computer technology and development,2019,29(07):80-83.
[11]張波,黃曉芳.基于TF-IDF的卷積神經(jīng)網(wǎng)絡(luò)新聞文本分類優(yōu)化[J].西南科技大學(xué)學(xué)報,2020,35(01):64-69.
[12]Zhang Bo,Huang Xiaofang. Convolutional neural network for news text classification optimization based on TF-IDF[J]. Journal of Southwest University of Science and Technology,2020,35(01):64-69.
[13]陳偉鶴,劉云.基于詞或詞組長度和頻數(shù)的短中文文本關(guān)鍵詞提取算法[J].計算機科學(xué),2016,43(12):50-57.
[14]Chen Weihe,Liu Yun. Keyword extraction algorithm based on length and frequency of words or phrases for short Chinese texts[J]. Computer Science,2016,43(12):50-57.
[15]但唐朋,許天成,張姝涵.基于改進TF-IDF特征的中文文本分類系統(tǒng)[J].計算機與數(shù)字工程,2020,48(03):556-560.
[16]Dan Tangpeng Xu Tiancheng Zhang Shuhan. A Chinese Text Classification System Based on Improved TF-IDF Feature[J]. Computer & Digital Engineering,2020,48(03):556-560.
[17]邸鵬,段利國.一種新型樸素貝葉斯文本分類算法[J].數(shù)據(jù)采集與處理,2014,29(01):71-75.
[18]Di Peng,Duan Liguo. New Naive Bayes Text Classification Algorithm[J]. Journal of Data Acquisition and Processing,2014,29(01):71-75.
[19]趙燕,李曉輝,周云成,張越.基于樸素貝葉斯的農(nóng)業(yè)文本分類方法研究[J].節(jié)水灌溉,2018(02):98-102.
[20]Zhao Yan,Li Xiaohui,Zhou Yuncheng,et al. A Study on Agricultural Text Classification Method Based on Na?ve Bayesian[J]. Water Saving Irrigation,2018(02):98-102.
國家自然科學(xué)基金項目(No.51609086,U1804148);河南省科技攻關(guān)計劃(No.182102210059)
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2021年11期