赞
踩
文本聚类就是要在一堆文档中,找出哪些文档具有较高的相似性,然后可以针对这些相似性文档的聚合进行类别划分。文本聚类应用场景:提供大规模文档集进行类别划分并提取公共内容的概括和总览;找到潜在的各个文档间的相似度以进行相似度判别、类别修正,以减少浏览相似文档和信息的时间和精力。
通常,聚类分析(也包括其他算法)大多是针对数值型做计算的,K均值这类基于聚类的算法要求只有数值型变量才能得到距离相似度。对于文本聚类而言,由于不同文本集出现的全部都是文字内容,因此无法直接针对这些文本进行聚类。
word to vector(文本转向量或词语转向量)。先定义一批要去除的词语列表,定义列表时使用u来表示是unicode字符串;然后使用sklearn.feature_extraction.text的TfidfVectorizer方法创建词语转向量的对象,使用fit_transform方法将评论关键字列表转换为词向量空间模型。TfidfVectorizer方法参数如下:
获取新浪财经首页当天新闻,做分词和词向量化,通过关键词进行kmeans聚类,对新闻进行分类:
# 导入库 import numpy as np import pandas as pd from sklearn.feature_extraction.text import TfidfVectorizer # 基于TF-IDF的词频转向量库 from sklearn.cluster import KMeans import jieba.posseg as pseg import newspaper import requests # 导入爬虫库 from bs4 import BeautifulSoup import datetime as dt today = dt.datetime.today().strftime("%Y-%m-%d") # 过去今天时间 # 中文分词 def jieba_cut(comment): word_list = [] # 建立空列表用于存储分词结果 seg_list = pseg.cut(comment) # 精确模式分词[默认模式]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。