日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

NLTK

發布時間:2024/10/8 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 NLTK 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

自然語言處理(NLP)

自然語言處理(natural language processing)是計算機科學領域與人工智能領域中的一個重要方向。它研究能實現人與計算機之間用自然語言進行有效通信的各種理論和方法。自然語言處理是一門融語言學、計算機科學、數學于一體的科學。

NLTK

NLTK是構建Python程序以使用人類語言數據的領先平臺。它為50多種語料庫和詞匯資源(如WordNet)提供了易于使用的界面,還提供了一套用于分類,標記化,詞干化,標記,解析和語義推理的文本處理庫。NLTK是Python上著名的?然語?處理庫 ?帶語料庫,具有詞性分類庫 ?帶分類,分詞,等等功能。NLTK被稱為“使用Python進行教學和計算語言學工作的絕佳工具”,以及“用自然語言進行游戲的神奇圖書館”。

安裝語料庫

pip install nltk

注意,這只是安裝好了一個框子,里面是沒東西的

# 新建一個ipython,輸入 import nltk nltk.download()

我覺得下book 和popular下好就可以了

功能?覽表

NLTK?帶語料庫

?文本處理理流程


Tokenize

把長句?拆成有“意義”的?部件,,使用的是nltk.word_tokenize

import nltk sentence = "hello,,world" tokens = nltk.word_tokenize(sentence) tokens

[‘hello’, ‘,’, ‘,world’]

中英?NLP區別


中?分詞

jieba

import jieba seg_list = jieba.cut("我來到北北京清華?大學", cut_all=True) print ("Full Mode:", "/ ".join(seg_list)) # 全模式 seg_list = jieba.cut("我來到北北京清華?大學", cut_all=False) print( "Default Mode:", "/ ".join(seg_list)) # 精確模式 seg_list = jieba.cut("他來到了了北京清華大學") # 默認是精確模式 print (", ".join(seg_list)) seg_list = jieba.cut_for_search("毛利畢業于中國東莞理工,后來出來混日子") # 搜索引擎模式 print (", ".join(seg_list))

Full Mode: 我/ 來到/ 北/ / / 京/ 清華/ / / 大學
Default Mode: 我/ 來到/ 北/ 北/ 京/ 清華/ ?/ 大學
新詞識別:他, 來到, 了, 了, 北京, 清華大學
搜索引擎模式:毛利, 畢業, 于, 中國, 東莞, 理工, ,, 后來, 出來, 日子, 混日子

tokenize沒那么簡單

from nltk.tokenize import word_tokenize tweet = 'RT @angelababy: love you baby! :D http://ah.love #168cm' print(word_tokenize(tweet))

[‘RT’, ‘@’, ‘angelababy’, ‘:’, ‘love’, ‘you’, ‘baby’, ‘!’, ‘:’, ‘D’, ‘http’, ‘:’, ‘//ah.love’, ‘#’, ‘168cm’]
?
所以要去點無關詞匯

社交?絡語?的tokenize


紛繁復雜的詞形

Inflection變化: walk => walking => walked 不影響詞性

derivation 引申: nation (noun) => national (adjective) => nationalize (verb) 影響詞性

詞形歸?化

Stemming 詞?提取:?般來說,就是把不影響詞性的inflection的?尾巴砍掉

walking 砍ing = walk
walked 砍ed = walk
Lemmatization 詞形歸?:把各種類型的詞的變形,都歸為?個形式

went 歸? = go

are 歸? = be

NLTK實現Stemming

NLTK實現Lemma


Lemma的?問題

到底是哪個意思

NLTK更好地實現Lemma

Part-Of-Speech


NLTK標注POS Tag


Stopwords

?千個HE有?千種指代
?千個THE有?千種指事

對于注重理解?本『意思』的應?場景來說 歧義太多

全體stopwords列表 http://www.ranks.nl/stopwords

NLTK去除stopwords

?本預處理流?線

什么是?然語?處理

從?然語? 得到計算機數據

?本預處理讓我們得到了什么

NLTK完成簡單的情感分析




TF-IDF

  • TF: Term Frequency, 衡量?個term在?檔中出現得有多頻繁。
  • TF(t) = (t出現在?檔中的次數) / (?檔中的term總數).
  • IDF: Inverse Document Frequency, 衡量?個term有多重要。 有些詞出現的很多,但是明顯不是很有卵?。?如’is’,’the‘,’and‘之類 的。 為了平衡,我們把罕見的詞的重要性(weight)搞?, 把常見詞的重要性搞低。
  • IDF(t) = log_e(?檔總數 / 含有t的?檔總數). TF-IDF = TF * IDF

總結

以上是生活随笔為你收集整理的NLTK的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。