利用KMeans聚类算法对新闻文章进行聚类,并观察聚类个数K和初始类中心点对聚类效果的影响。
- 从新闻文章中抽取出两个数据集,其中一个数据集的文章类型固定,另一个的文章类型不确定,并分别对这两个数据集进行实验分析;
- 以tf-idf值作为词语特征,余弦相
1. 对新闻文章进行分词,并计算所有词语的tf-idf值;
2. 采用余弦相似度作用相似性度量函数,计算不同新闻文章之间的距离(或相似性);
3. 选择K篇文章作为初始类中心;
4. 计算所有文章到K篇文章之间的距离,并将每篇文章归划到与之最近的类中心上;
5. 更新类中心的特征向量;
6. 重复第4、5步,直至各个类内的文章趋于稳定。
似度作为文本相似性的度量函数,对新闻文章进行聚类。
mport os
import re
from os import listdir
import jieba
import pandas as pd
from sklearn import feature_extraction
from sklearn.feature_extraction.text import TfidfTransformer
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.cluster import KMeans
outputDir = "D:\数据采集\新浪"
labels = []
corpus = []
size = 480
for i in range(0, 160):