《自然語言處理技術》進階案例基于LDA關鍵詞提取V1.0_第1頁
《自然語言處理技術》進階案例基于LDA關鍵詞提取V1.0_第2頁
《自然語言處理技術》進階案例基于LDA關鍵詞提取V1.0_第3頁
《自然語言處理技術》進階案例基于LDA關鍵詞提取V1.0_第4頁
《自然語言處理技術》進階案例基于LDA關鍵詞提取V1.0_第5頁
已閱讀5頁,還剩1頁未讀, 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

《自然語言處理技術》代碼42所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s12加載并預處理文本數據#以只讀模式打開文件,避免對原始文件造成破壞withopen("西游記.txt","r",encoding="utf-8")asfile:raw_text=file.read()print('原始文本(部分)為:\n',raw_text[0:200])#使用正則表達式去除特殊符號、數字和英文字符clean_text=re.sub("[\s+\.\!\/_,$%^*(+\"\']+|[+——!,。?、~@#¥%……&*():;《)《》“”’‘[\]]","",raw_text)print('清洗后的文本(部分)為:\n',clean_text[0:200])#使用jieba庫進行分詞seg_words=jieba.cut(clean_text)words_list=list(seg_words)print('清洗后的文本的分詞結果(部分)為:\n',words_list[0:200])運行REF_Ref97535682\h代碼42,得到處理后西游記的文本內容如下。原始文本(部分)為:西游記之正文第001回靈根育孕源流出心性修持大道生?詩曰:混沌未分天地亂,茫茫渺渺無人見。自從盤古破鴻蒙,開辟從茲清濁辨。覆載群生仰至仁,發明萬物皆成善。欲知造化會元功,須看西游釋厄傳。蓋聞天地之數,有十二萬九千六百歲為一元。將一元分為十二會,乃子、丑、寅清洗后的文本(部分)為:西游記之正文第001回靈根育孕源流出心性修持大道生?詩曰混沌未分天地亂茫茫渺渺無人見自從盤古破鴻蒙開辟從茲清濁辨覆載群生仰至仁發明萬物皆成善欲知造化會元功須看西游釋厄傳蓋聞天地之數有十二萬九千六百歲為一元將一元分為十二會乃子丑寅卯辰巳午未申酉戌亥之十二支也每會該一萬八百歲且就一日而論子時得陽氣而丑則雞鳴寅不通光而卯則日出辰時食后而巳則挨排日午天中而未清洗后的文本的分詞結果(部分)為:['','西游記','之','正文','','第','001','回靈','根育孕','源流','出','心性','修持','大道','生','\ufeff','詩','曰','混沌','未','分','天地','亂','茫茫','渺渺','無人','見','自從','盤古','破','鴻蒙','開辟','從茲','清濁','辨','覆載','群生','仰至仁','發明','萬物','皆','成善','欲','知','造化','會元','功須','看','西游','釋厄','傳蓋聞','天地','之數','有','十二萬','九千','六','百歲','為','一元','將','一元','分為','十二','會','乃','子丑寅卯','辰巳','午未','申酉戌亥之','十二支','也','每會','該','一萬八','百歲','且','就','一日','而論','子時','得','陽氣','而','丑','則','雞鳴','寅','不通','光而卯','則','日出','辰時','食后','而','巳','則','挨','排日午','天中','而','未','則','西','蹉','申時','晡','而','日落','酉','戌','黃昏','而人定','亥','譬于','大數','若','到戌會','之','終則','天地','昏蒙而','萬物','否矣','再','去','五千四百歲','交亥會','之','初','則','當','黑暗','而','兩間','人物','俱','無','矣','故曰','混沌','又','五千四百歲','亥','會','將','終','貞下起元','近子','之會','而復','逐漸','開明','邵康節','曰','冬至','子','之','半天','心無','改移','一陽','初動處','萬物','未生','時','到','此','天始','有','根','再','五千四百歲','正當','子會','輕清','上騰','有','日','有','月','有星','有辰','日月星辰','謂之','四象','故曰','天開','于子','又','經','五千四百歲','子會','將','終近','丑','之會','而','逐漸','堅實']創建詞典和語料庫創建詞典和語料庫,將分詞結果轉換為詞袋表示和稀疏向量表示,如REF_Ref98942649\h代碼43所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s13創建詞典和語料庫#創建詞典,將分詞結果轉換為詞袋表示dictionary=corpora.Dictionary([words_list])print('文本詞典為:\n',dictionary)#使用詞典將分詞結果轉換為稀疏向量表示corpus=[dictionary.doc2bow(words_list)]print('稀疏向量表示(部分)為:\n',corpus[0:200])運行REF_Ref133681793\h代碼43,得到文本詞典和稀疏向量表示大小如下。文本詞典為:Dictionary<51647uniquetokens:['-','--','','001','002']...>稀疏向量表示大小為:(1,51647,2)構建LDA模型使用Gensim庫中models模塊的ldamodel方法構建LDA模型,如REF_Ref98521257\h代碼44所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s14構建LDA模型#輸入參數包括:#corpus:稀疏向量表示的語料庫#num_topics:設置的主題數,這里設置為1,方便提取關鍵詞#id2word:詞典,用于將詞語的ID映射回詞語#random_state:設置隨機數種子,以便于結果的可復現性lda_model=models.ldamodel.LdaModel(corpus,num_topics=1,id2word=dictionary,random_state=1)提取關鍵詞獲取LDA模型中主題的詞分布,并提取前10個關鍵詞,如REF_Ref133789439\h代碼45所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s15提取關鍵詞#使用LDA模型的show_topic方法獲取主題的詞分布#輸入參數包括:#0:主題的索引,這里設置為0,因為我們只有一個主題#topn:設置提取關鍵詞的數量,這里設置為10#輸出結果為一個包含元組的列表,每個元組包含兩個元素:詞語和權重keywords=lda_model.show_topic(0,topn=10)輸出結果將最終提取出的關鍵詞進行打印輸出,如REF_Ref133792104\h代碼46所示。代碼STYLEREF1\s4SEQ代碼\*ARABIC\s16輸出結果#打印關鍵詞提取結果print("關鍵詞提取結果:")#使用for循環遍歷keywords列表中的每個元素(詞語及其權重)forword,weightinkeywords:#使用字符串格式化打印詞語及其權重print(f"{word}:{weight}")運行REF_Ref133792104\h代碼46,得到關鍵詞提取結果如下。關鍵詞提取結果:道:0.019543081521987915了:0.017544087022542953我:0.014290173538029194他:0.012743944302201271的:0.012639133259654045你:0.012414325028657913那:0.010413520969450474是:0.00999467633664608行者:0.009722965769469738在:0.006730619817972183也:0.006671500392258167有:0.006059417501091957又:0.005846134386956692去:0.0057272473350167274與:0.005221605766564608這:0.005221505183726549來:0.0048344433307647705就:0.004040305037051439八戒:0.004019209649413824卻:0.0038956308271735907師父:0.00384800904430449不:0.003726370632648468著:0.003646114142611623見:0.0034457140136510134將:0.0034389530774205923把:0.0034228996373713017得:0.003406228730455041等:0.003340259427204728三藏:0.0031695354264229536說:0.0031211422756314278上:0.0028213271871209145都:0.0027143312618136406一個:0.0025968088302761316個:0.0023515408392995596好:0.0021905407775193453大圣:0.0021185262594372034到:0.0020989063195884228叫:0.002080524805933237只:0.0019329653587192297唐僧:0.0019128420390188694還:0.0019

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論