版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第十章自然語言處理與nltkNLTK什么是自然語言人類語言(如中文、英文等)自然語言處理(NaturalLanguageProcessing,簡稱NLP)就是用計(jì)算機(jī)來處理、理解以及運(yùn)用人類語言NLTK為什么需要NLP當(dāng)我們把我們所謂的“自然語言”傳輸?shù)接?jì)算機(jī)中,對(duì)計(jì)算器而言這或許是一系列的無意義的字符格式數(shù)據(jù),而我們的自然語言處理技術(shù)目的就是將這些無意義數(shù)據(jù)變?yōu)橛?jì)算機(jī)有意義并可以計(jì)算的數(shù)值型數(shù)據(jù)。NLTKNLP的應(yīng)用機(jī)器翻譯文檔分類文檔聚類NLTK常用的技術(shù)詞條化,既形態(tài)學(xué)分割詞干提取,是將不同詞形的單詞還原成其原型詞型歸一,和詞干還原的目的一樣,都是將單詞的不同詞性轉(zhuǎn)換為其原型詞性標(biāo)注,既給定一個(gè)句子,確定每個(gè)單詞的詞性,例如,英語中“book”可以是名詞或動(dòng)詞NLTKNLTK介紹NLTK模塊是自然語言處理領(lǐng)域中,最常使用的模塊,其處理的語言多為英文NLTK是構(gòu)建Python程序以處理人類語言數(shù)據(jù)的領(lǐng)先平臺(tái)。它為超過50個(gè)語料庫和詞匯資源(如WordNet)提供了易于使用的接口,并提供了一套用于分類、標(biāo)記化、詞干、標(biāo)注、解析和語義推理的文本處理庫。NLTKNLTK安裝#安裝nltksudopipinstall-Unltk#安裝numpysudopipinstall-Unltk檢查是否安裝成功>>>python>>>importnltkNLTK中文分詞資料結(jié)巴分詞的github主頁
https://github/fxsjy/jieba基于python的中文分詞的實(shí)現(xiàn)及應(yīng)用
http:/blogs/appler/archive/2012/02/02/2335834.htmlNLTKNLTK安裝語料庫>>>importnltk>>>nltk.download()NLTKNLTK安裝語料庫
NLTKNLTK自帶語料庫>>>fromnltk.corpusimportbrown>>>brown.categories()>>>len(brown.sents())>>>len(brown,words())NLTKNLTK詞條化詞條化是將給定的文檔拆分為一系列最小單位的子序列過程,其中的每一個(gè)子序列我們稱為詞條(token)NLTKNLTK詞條化(1)在Python解析器中創(chuàng)建一個(gè)text字符串,作為樣例的文本:text="Areyoucuriousabouttokenization?Let'sseehowitworks!Weneedtoanalyzeacoupleofsentenceswithpunctuationstoseeitinaction."NLTKNLTK詞條化(2)加載NLTK模塊:fromnltk.tokenizeimportsent_tokenize(3)調(diào)用NLTK模塊的sent_tokenize()方法,對(duì)text文本進(jìn)行詞條化,sent_tokenize()方法是以句子為分割單位的詞條化方法:sent_tokenize_list=sent_tokenize(text)NLTK詞干還原詞干還原是將不同詞形的單詞還原成其原型例如單詞“observe”,可能以“observe”“observers”“observed”“observer”出現(xiàn),但是他們都是具有相同或相似意義的單詞族可視為簡單的去掉小尾巴NLTKNLTK詞干還原fromnltk.stem.porterimportPorterStemmerfromnltk.stem.lancasterimportLancasterStemmerfromnltk.stem.snowballimportSnowballStemmerNLTKNLTK詞干還原調(diào)用NLTK模塊中三種不同的詞干還原方法:stemmer_porter=PorterStemmer()stemmer_lancaster=LancasterStemmer()stemmer_snowball=SnowballStemmer('english')NLTKNLTK詞干還原使用NLTK模塊中詞干還原方法對(duì)樣例單詞進(jìn)行詞干還原:stemmed_words=stemmer_porter.stem(word)NLTK詞型歸并詞干還原算法簡單粗略的去掉“小尾巴”這樣的時(shí)候,經(jīng)常會(huì)得到一些無意義的結(jié)果,如“wolves”被還原成“wolv”詞型歸并和詞干還原的目的一樣,都是將單詞的不同詞性轉(zhuǎn)換為其原型NLTKNLTK詞形歸并fromnltk.stemimportWordNetLemmatizer創(chuàng)建樣例:words=['table','probably','wolves','playing','is','dog','the','beaches','grounded','dreamt','envision']NLTKNLTK詞形歸并lemmatizer_wordnet=WordNetLemmatizer()對(duì)words每個(gè)word進(jìn)行詞型歸并:lemmatized_words=[lemmatizer_wordnet.lemmatize(word,pos='n'),lemmatizer_wordnet.lemmatize(word,pos='v')]NLTKNLTK的標(biāo)注POSTagimportnltknltk.pos_tag('english')#查看POSTag的意義nltk.help.upenn_tagset()NLTKNLTK的Stopwords一千個(gè)HE有一千個(gè)指代一千個(gè)THE有一千個(gè)指事對(duì)于注重意義的自然語言而言,歧義太多NLTKNLTK的Stopwords實(shí)現(xiàn)fromnltk.corpusimportstopwordsfitterword=[wordforwordinword_listifwordnotinstopwords.words('english')]
NLTK什么是自然語言處理自然語言到計(jì)算機(jī)數(shù)據(jù)的轉(zhuǎn)換常用的方法,詞頻統(tǒng)計(jì),tf-idfdNLTK詞袋模型Bagofwords,也叫做“詞袋”,在信息檢索中,Bagofwordsmodel假定對(duì)于一個(gè)文本,忽略其詞序和語法,句法,將其僅僅看做是一個(gè)詞集合,或者說是詞的一個(gè)組合NLTK矢量化考慮下列句子:Sentence1:Thebrowndogisrunning.Sentence2:Theblackdogisintheblackroom.Sentence3:RunningintheroomisforbiddenNLTK矢量化以上的三個(gè)句子是由下列9個(gè)單詞組成的:the,brown,dog,is,running,black,in,room,forbiddenNLTK矢量化我們按照上述單詞出現(xiàn)的先后分別創(chuàng)建字典,其中字典的鍵保存的是出現(xiàn)在文本文檔中單詞次數(shù),因此上述例子中我們可以將句子轉(zhuǎn)化為:Sentence1:[1,1,1,1,1,0,0,0,0]Sentence2:[2,0,1,1,0,2,1,1,0]Sentence3:[0,0,0,1,1,0,1,1,1]NLTKnltk實(shí)現(xiàn)矢量化fromsklearn.feature_extraction.textimportCountVectorizervectorizer=CountVectorizer(min_df=5,max_df=.95)doc_term_matrix=vectorizer.fit_transform([chunk['text']forchunkinchunks])NLTKtf-idftf-idf(詞頻-逆文檔頻率),tf-idf方法與基于單詞出現(xiàn)頻率的統(tǒng)計(jì)方法一樣,都是將一個(gè)文檔數(shù)據(jù)轉(zhuǎn)化為數(shù)值型數(shù)據(jù)的一種方法NLTKtf-idf目的,我們知道當(dāng)一個(gè)詞多次出現(xiàn)在一篇文檔中,代表著這個(gè)詞在文檔當(dāng)中有著重要的意義。我們不僅僅需要提高這種多次在文檔中出現(xiàn)的單詞的重要性。同時(shí),英文中一些頻繁出現(xiàn)的單詞如“is”和“be”我們更應(yīng)減低其重要性NLTKtf-idf其中tf指的是詞頻(Thetermfrequency),表示的是某個(gè)特定的單詞在給定的文檔中出現(xiàn)的次數(shù),而idf指的是逆文檔頻率(inversedocumentfrequency),其計(jì)算公式為:df表示的是在文檔集中出現(xiàn)過某個(gè)單詞的文檔數(shù)目,N為所有文檔的數(shù)目NLTKnltk實(shí)現(xiàn)tf-idffromsklearn.feature_extraction.textimportTfidfTransformertfidf_transformer=TfidfTransformer()X_train_tfidf=tfidf_transformer.fit_transform(X_train_termcounts)NLTK自然語言處理案例文本劃分:通過比較文本矩陣的相似度來比較不同文本的相似度,其中常用技術(shù)是tf-idfNLTK自然語言處理案例性別判斷,在自然語言處理中通過姓名識(shí)別性別是一項(xiàng)有趣的事情。我們算法是通過名字中的最后幾個(gè)字符以確定其性別。例如,如果名字中的最后幾個(gè)字符是“l(fā)a”,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026福建南平市建陽區(qū)文化體育和旅游局招聘1人備考考試題庫附答案解析
- 物業(yè)公司生產(chǎn)責(zé)任制度
- 原材料生產(chǎn)過程管理制度
- 2026重慶市萬州區(qū)燕山鄉(xiāng)人民政府招聘全日制公益性崗位1人備考考試試題附答案解析
- 倉鼠生產(chǎn)管理員工制度
- 生產(chǎn)企業(yè)黑名單制度
- 2026年河北承德市教育局公開選聘急需緊缺學(xué)科教師39名參考考試題庫附答案解析
- 戒毒所生產(chǎn)車間制度
- 周五安全生產(chǎn)會(huì)議制度
- 會(huì)計(jì)員安全生產(chǎn)制度
- 河堤植草護(hù)坡施工方案
- 2025中國氫能源產(chǎn)業(yè)發(fā)展現(xiàn)狀分析及技術(shù)突破與投資可行性報(bào)告
- 高校行政管理流程及案例分析
- 高效節(jié)水灌溉方式課件
- 基坑安全工程題庫及答案解析
- 《人間充質(zhì)基質(zhì)細(xì)胞來源細(xì)胞外囊泡凍干粉質(zhì)量要求》(征求意見稿)
- 2025年海南省中級(jí)經(jīng)濟(jì)師考試(工商管理專業(yè)知識(shí)和實(shí)務(wù))能力提高訓(xùn)練試題庫及答案
- 鄉(xiāng)鎮(zhèn)村監(jiān)會(huì)培訓(xùn)課件
- 入團(tuán)申請(qǐng)書教學(xué)課件
- 松下微波爐NN-DS581M使用說明書
- 2025年江蘇省招聘警務(wù)輔助人員考試真題及答案
評(píng)論
0/150
提交評(píng)論