短文本聚類方法
在拿到乙個大規模資料集時,我們不可能對這麼多的問題進行注意打上標記(label),因為這個是非常耗時的。而且,我們還知道文字問題是乙個典型的多標記問題,這個時候打上的標記很多的時候都不會特別的精確,也就是我們通常說的弱標記weak label. 這個時候我們就需要乙個聚類的方法,這樣可以先把所有的文字集聚類成幾個簇,每個簇的標記相似性就比較大,這樣以來對打上標記的工作就減輕了許多精力。
短文本聚類的研究在自動問答系統中有著比較重要的意義,因為互動式問答系統中的問題實際上就是乙個特殊形式的短文本。
其實如果把每個單詞的權重認為一樣的話,那麼s1和s2的應該聚到一起去,但是假如我們增加了google, yahoo!的權重,那麼s2和s3就會聚到一起。
顯然,我們需要對問題樣本中的每個單詞都賦予一定的權重。如果當前當前ti是問題的核心詞,那麼權重應該高;否則,權重低。我們可以想到tf-idf值可以用來充當特徵權重的角色。具體實現如下:
每個問題看作乙個向量,使用tf-idf方法可以提取問題中每個單詞的詞頻,以及單詞出現的文件數等資訊。其中,我們可以使用單詞ti在問題d中出現的次數來作為詞頻tf,用ti出現在不同問題的個數來計算反詞頻,這樣tf-idf就可以計算出來了。但是,我們發現:在自動問答系統中,每個問題包含的單詞數量很少,如果出現了該單詞,那麼基本上出現的次數都是1,否則就是不出現,為0. 所以,我們可以簡化每個單詞的權重計算方式如下:
這樣,我們便可以把問題特徵提取出來了。而在距離度量方式方面,我們可以簡單的使用兩個向量點積的方式來計算。此時,有了問題樣本提取出來的特徵,以及距離計算方式,我們便可以運用k-means聚類的思想,實現自動問答系統中的聚類。
短文本聚類方法(QA)
在拿到乙個大規模資料集時,我們不可能對這麼多的問題進行注意打上標記 label 因為這個是非常耗時的。而且,我們還知道文字問題是乙個典型的多標記問題,這個時候打上的標記很多的時候都不會特別的精確,也就是我們通常說的弱標記weak label.這個時候我們就需要乙個聚類的方法,這樣可以先把所有的文字集...
基於ML的中文短文本聚類
整個過程分為以下幾個步驟 一 引入,python 依賴包,並載入語料 import random import jieba import pandas as pd import numpy as np from sklearn.feature extraction.text import tfidf...
文字聚類 用k means對文字進行聚類
coding utf 8 created on thu nov 16 10 08 52 2017 author li pc import jieba from sklearn.feature extraction.text import tfidfvectorizer from sklearn.cl...