文字分類演算法之 KNN演算法的簡介

2021-07-10 04:44:53 字數 672 閱讀 3079

1、knn演算法的簡介

knn演算法就是找到k個最相似的樣本,這些樣本所在的類,就是當前文件的所屬的類。如下圖:綠色圓圈表示你想分類的文字,其他是已知類別的樣本。圖中其他形狀和綠色圓圈的距離代表了相似度。如果k = 3,就是取3個最相似的文字,那麼1個藍色框,2紅色三角被選中,因為紅色三角多,則綠色圓圈所屬的類就是紅色三角所在的類。如果k = 5,3個藍色框和2個紅色三角選中,那麼就屬於藍色框所屬於的類。knn你也可以取多個類別,就是綠色圓圈既屬於藍色框,也屬於紅色三角所屬的類別。

2、knn演算法分類的一般過程的定義

(1)樣本的選擇

(2)中文文字分詞(工具如下:rwordseg,ltp,bamboo,rostcm)

(3)特徵的選擇(chi,ig等)

(4)向量空間模型的構建(將文件轉換成vsm,每乙個特徵的值是由tf-idf計算,特徵項的個數是所有文字文件集合的總體棄掉重複的單詞)

(5)將 **的文字分詞與樣本進行計算,主要使用餘弦定理進行計算如下

(6)對結果進行測試是否滿足準確率

(7)如果準確率太低,可以調整樣本等一些其他的措施

knn演算法的缺點,如果訓練的樣本過多,則容易造成記憶體的溢位,因此我們可以改進knn演算法。

文字分類演算法之 貝葉斯文字分類演算法

文字分類過程 例如文件 good good study day day up 可以用乙個文字特徵向量來表示,x good,good,study,day,day up 在文字分類中,假設我們有乙個文件d x,類別 c又稱為標籤。我們把一堆打了標籤的文件集合 作為訓練樣本,x c 例如 對於這個只有一句...

python使用KNN文字分類

上次爬取的爸爸 媽媽 老師和自己的作文,利用sklearn.neighbors.kneighborsclassifier進行分類。import jieba import pandas as pd import numpy as np import osimport itertools import ...

分類演算法 七) 短文本分類

深入做文字分類的同學都知道,短文本分類相對來說比較難。因為較短的文字包含的資訊較少,有時候模型很難學到關鍵特徵。參考 指出 但是對於長文字直接用cnn就不行了,textcnn會比han模型泛化能力差很多。當然如果在textcnn前加一層lstm,這樣效果可以提公升很大。另外還有一點很重要的是,實際使...