自然語言處理學習記錄

2021-09-05 10:57:07 字數 1503 閱讀 7288

v=set(text1)

long_words=[w for w in v if len(w)>15]

找出長度大於7並且出現頻率大於7的單詞:

fdisi5=freqdist(text5)

sorted([w for w in set(text5) if len(w)>7 and fdist5[w]>7])

檢視文字中詞長的分布:

[len(w) for w in text1]

fdist=freqdist([len(w) for w in text1])

fdist.key()

fdist.items() //檢視fdist中存放的字典資訊

fdist.max() //檢視數量最多的單詞長度

fdist[3] //檢視單詞長度為3的單詞數量

fdist.freq(3) //檢視單詞長度為3 的單詞佔總單詞數的比例

自然語言處理1——語言處理與python(內含糾錯)

欲解決問題:

什麼是有用的文字語料庫和詞彙資源,如何使用python獲取他們

哪些python結構最適合這項工作

編寫python**時如何避免重複工作

nltk中主要有古騰堡專案(gutenberg),網路和聊天文字(webtext),布朗語料庫(brown),路透社語料庫(reuters),就職演說語料庫(inaugural),標註文字語料庫.

from nltk.corpus import gutenberg

gutenberg.fileids()

載入自己的語料庫

可以利用plaintextcorpusreader/bracketparsecorpusreader函式:

from nltk.corpus import plaintextcorpusreader

corpus_root='檔案存放路徑'

wordlists=plaintextcorpusreader(corpus_root,'.*')//第二個引數可以輸檔案鍊錶或匹配所有標識的模式,所有以test開頭,.txt結尾的檔案都可以用"test.*\.txt」來訪問所有的檔案

wordlist.fileids()

from nltk.corpus import bracketparsecorpusreader

corpus_root=r"檔案所在路徑"

file_pattern=r".*/wsj_.*\.mrg"//該引數為在資料夾中所包含的檔案匹配,匹配處為wsj_

ptb=bracketparsecorpusreader(corpus_root,file_pattern)

ptb.fileids()

以乙個配對鍊錶作為輸入,前乙個引數作為條件,輸出的是與第乙個條件引數所配對的第二個引數所出現的頻率

自然語言處理學習筆記 006

常用的分詞方法 自然語言處理常用的分詞方法有正向和逆向最大匹配 最短路徑 全切分 最大概率 n 最短路徑等方法。現在流行起來的還有最大熵模型 hmm模型 決策樹 bp神經網路 n gram等方法。現在我很想把它們在分詞中的聯絡和區別都一一搞清楚。最大匹配分詞方法簡單 容易實現,但是無法解決上面提到的...

自然語言處理學習筆記 007

分詞標註一體化 概率全切分標註模型 詞性標註的基本方法有兩種基於規則的方法和基於統計的方法。基於規則的方法需要採用人工的方法構建大量的語法規則,該方法不易保證規則的完備性和在真實文字處理中的有效性。基於統計的方法主要有基於隱馬爾可夫模型 基於最大熵的方法和決策樹等方法。其中基於馬爾可夫模型的方法是詞...

Python NLTK自然語言處理學習(一

最近開始學習python nltk自然語言處理,在此分享自己的學習經驗,因為是初學,肯定有很多很多不懂的地方,發布此文章絕非為了顯示自己的水平,而是因為網路上對nltk的資料實在太少了,我就想分享一下自己的心得,也希望能夠得到更多高手的指點,希望高手們發現不對的地方耐心指點,切勿針鋒相對,這樣會打擊...