自然語言處理 詞袋

2021-10-01 02:53:36 字數 1602 閱讀 9013

# 

'''詞袋模型將一段文字作為乙個個分離的詞進行處理,通過不同類文字中可能出現詞的差異對文字進行分類。必須指出的是對於文字分類,上下文對於其真正的類別有著強相關性。個人理解此類方法可能只是為了演算法的簡易性選擇性地放棄了文字中的上下文資訊,或者說只關注詞頻資訊也能夠獲得符合要求的文字分類效果。

'''# 詞袋模型的三部曲:分詞(tokenizing),統計修訂詞特徵值(counting)與標準化(normalizing)。

## 統計詞頻tf-idf

# 高頻率出現的詞不一定有用,如as、the,使用tf-idf可以有效過濾常見的詞語,保留重要的詞語

# 直接使用 tfidfvectorizer 直接得到最後的結果

from sklearn.feature_extraction.text import tfidfvectorizer

corpus = [ 'this is the first document.',

'this is the second second document.',

'and the third one.',

'is this the first document?',

] tfidf_vectorizer = tfidfvectorizer()

tfidf = tfidf_vectorizer.fit_transform(corpus)

print('**********==== tfidf ***************====')

print(tfidf)

'''# output

**********==== tfidf ***************====

(0, 8) 0.438776742859

(0, 3) 0.438776742859

(0, 6) 0.358728738248

(0, 2) 0.541976569726

(0, 1) 0.438776742859

(1, 8) 0.272301467523

(1, 3) 0.272301467523

(1, 6) 0.222624292325

(1, 1) 0.272301467523

(1, 5) 0.853225736145

(2, 6) 0.28847674875

(2, 0) 0.552805319991

(2, 7) 0.552805319991

(2, 4) 0.552805319991

(3, 8) 0.438776742859

(3, 3) 0.438776742859

(3, 6) 0.358728738248

(3, 2) 0.541976569726

(3, 1) 0.438776742859

'''# 向量化

from gensim.models import word2vec

自然語言處理1 分詞

分詞是自然語言處理的基礎,分詞準確度直接決定了後面的詞性標註 句法分析 詞向量以及文字分析的質量。英文語句使用空格將單詞進行分隔,除了某些特定詞,如how many,new york等外,大部分情況下不需要考慮分詞問題。但中文不同,天然缺少分隔符,需要讀者自行分詞和斷句。故在做中文自然語言處理時,我...

自然語言處理

自然語言處理主要步驟包括 2.詞法分析 對於英文,有詞頭 詞根 詞尾的拆分,名詞 動詞 形容詞 副詞 介詞的定性,多種詞意的選擇。比如diamond,有菱形 棒球場 鑽石3個含義,要根據應用選擇正確的意思。3.語法分析 通過語法樹或其他演算法,分析主語 謂語 賓語 定語 狀語 補語等句子元素。4.語...

自然語言處理

前言 自然語言處理 natural language processing 是計算科學領域與人工智慧領域中的乙個重要方向。它研究能實現人與計算機之間用自然語言進行有效通訊的各種理論和方法。自然語言處理是一門融語言學 電腦科學 數學於一體的科學。因此,這一領域的研究將涉及自然語言,即人們日常使用的語言...