2003级施潇潇(3):一种用于文本聚类的改进的K均值算法
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
征的初始中心点选择算法 。
首先定义稀疏向量为含 0个数大于某个阈值的向量 , 定 义 Z ero ( x) 为文本向量中 0的个数 ,μzero 为向量的平均含 0个 数 ,定义如公式 ( 7) ,令γ为一个比例系数 。定义非稀疏向量集 合 Ss 如公式 ( 8) 。
∑ μ zero
=1
Z ero ( x)
, …,
( tf1 log ( n / df1 ) ) 2 + … + ( tfn log ( n / dfn ) ) 2
> tfn log ( n / dfn )
( tf1 log ( n / df1 ) ) 2 + … + ( tfn log ( n / dfn ) ) 2
(4)
于是有 ‖dtfidf ‖ = 1。
区分文本的词的集合 。本文使用 tf idf来作为特征选取度量 。该
度量方法是给每个文本中的每个词一个权重 , 权重的计算 [3 ]
如下 :
tf idf ( d, t)
= tf ( d, t)
×log
d
f
n (
t)
(1)
其中 , tf ( d, t) 是词 t在文本 d中的词频 , df ( t) 是 D中包含
计的方法来确定相似度阈值 ,具体方法如下 :
1)
计算两两样本距离的均值
μ D
ist;
2) 由用户根据经验给定一个系数 θ;
3) 令 ε =θ3 μ,作为计算密度的半径 。
根据上述分析 ,可以首先基于公式 ( 8) 的定义从原样本
集 S中找出一个非稀疏向量集合 Ss ,然后基于公式 ( 9) 的密度
定义从 Ss中搜索出高密度点集 Sd (高密度点集 Sd 定义为密度
| S | x∈S
(7)
Ss
= {x|
Z ero ( x)
≤γ3
μ zero
,
x
∈
S}
(8)
给出样本点 x的密度定义如公式 ( 9) ,其中 S代表样本点
集 , D ist (·) 代表某种距离度量 , 如欧氏距离 ,ε代表距离半
径 。公式 ( 9) 表明点 x的密度定义为以点 x为中心 ,以ε为半径
文本集合 D的特征空间就是出现在该文本集合中的所有 的词的集合 ,表示为 TD = { t | Π t ∈ d, Π d ∈D } 。通常文本集 合 D 都具有相当的规模 , 因此 TD 是非常大的 , 这其中会包括 这样的一些词 ,用 f requency ( t) 表示词 t出现在整个文本集合 中的频度 ,则有 :
5) 选择密度最大的点 m 1 为第 1个初始中心点 ,即 : D ensity (m 1 ) = M ax{ D esity ( x) | x ∈ Sd } M = M ∪ {m1 } 6) 寻找满足如下条件的点 m i: D ist ( x) = M in{ D esity ( x, q) | q ∈M } , x ∈ Sd \M m i ∈ Sd \M D ist (m 1 ) = M ax{ D ist ( x) | x ∈ Sd \M } 7) 将点 m i 加入中心点集 M ,即 M = M ∪ m i; 8) 重复步骤 6) 、7) ,直至找到 k个中心点 ,即 | M | = k;
不小于平均密度
μ density
的
β倍的数据点的集合
)
, 最后应用贪
心算法从 Sd 中搜索出散布较大的初始中心点集 M。下面给出 初始中心点集 M 的搜索算法如下 。
算法 1 In itia l ( S, k,γ,β) 输入 :待处理数据集 S,聚类个数 k, 参数 γ,β
输出 :初始中心点集 M
步骤 :
第 26卷 2006年 6月
计算机应用 Computer App lications
Vol. 26
June 2006
文章编号 : 1001 - 9081 (2006) 06Z - 0073 - 03
一种用于文本聚类的改进的 K均值算法
任江涛 ,孙婧昊 ,施潇潇 ,黄焕宇 ,印 鉴 (中山大学 计算机科学系 ,广东 广州 510275)
f requency ( t) ≤ε1 或 f requency ( t) ≥ε2
ε 1
是接近
0的一个值 ,ε2 是接近
1的一个值 。也即是说 ,
词 t要么在 D中极少的文本中出现 ,要么在 D中绝大多数的文
本中出现 ,这些词对文本的区分不会产生太大的作用 ,反而会
影响到聚类的效果 ,所以进行文本的特征选取 ,找到能最好的
此外 ,为了解决文本的长度不同的问题 ,每个文本向量的
模都被标准化为 1。设 :
dtfidf = < tf1 log ( n / df1 ) , tf2 log ( n / df2 ቤተ መጻሕፍቲ ባይዱ , …,
tfm log ( n / dfm ) >
(3)
则标准化之后 ,表示为 :
dtfidf =
<
tf1 log ( n / df1 )
9) 输出中心点集 M ,算法结束 。
从上述算法可以看出 ,由于初始中心点集的第一点为确
定的 (最大密度点 ) ,在基于距离最远的贪心算法搜索过程
中 ,其他点也基本上是确定的 ,消除了初始中心点选择的随机
性 。而且由于将稀疏向量排除在搜索集合之外 ,提高了初始
中心点的质量 。
2. 3 算法流程
根据上面的讨论结果 ,与 K均值算法相结合 ,得到一种
法流程 。
2. 1 特征评价及降维 定义词 t在文本 dj中的频率记为 fj,则对词 t来说 ,用下式
度量 t的质量 [4 ] :
∑ [ ∑ ] q ( t)
=
f2j -
j∈A
1 n1
2
fj
j∈A
(6)
其中 | A | = n1 ,词 t至少出现过一次的文本组成了集合 A
中的元素 ,且 fj > 1。 在得到了每个词 t的 q ( t) 之后 ,将词按照 q ( t) 的大小排
0 引言
聚类分析在数据挖掘 、模式识别 、决策支持 、机器学习等 领域有广泛的应用 ,是最重要的数据分析方法之一 。它将数 据对象分为不同的集合 ,使得同一集合中的数据对象相对来 说有更大的相似性 ,而不同一集合里的对象相对来说有更大 的差别 。
文本聚类是一个有着广泛应用领域的研究问题 。目前流 行的文本聚类方法主要有基于划分的方法 (以 K2M eans[1 ]为 代表 )及层次化聚类方法 [2 ]等 。由于 K均值算法简单易行 , 因此是文本聚类中广泛采用的方法之一 ,但由于 K均值算法 初始中心选择的随机性 ,使得其运行结果不稳定 ,且易于陷入 局部极小点 。同时 ,文本聚类问题本身也有其特殊性 。一方 面 ,文本向量是高维向量 ,一般为上千甚至上万维 ;另外 ,文本 向量通常为稀疏向量 ,含有较多的 0,这也为聚类中心的选择 带来困难 。
序 ,选择排在前 α ×100% 的词作为特征词 ,从而实现降维 。
2. 2 适用于稀疏文本矩阵的初始中心点的选择
初始中心点的选择在类 K2M eans算法中非常重要 ,通常
希望找到相互之间距离较远的点作为初始中心点 。但是在一
般的基于贪心算法的初始中心点搜索过程中 ,由于仅仅基于 距离因素 ,往往找到许多孤立点作为中心点 ,且初始中心点选 择的随机性较强 ,导致聚类结果的随机性 。实际上 ,对于初始 中心点 ,除了希望分布得尽量散之外 ,还希望这些中心点具有 一定的代表性 ,即具有较高的密度 。因此 ,在初始点的选择 中 ,除了考虑其散布程度外 ,还应考虑密度因素 。另外 ,在对 文本数据集的研究及分析中发现 ,由于文本向量中含有许多 为稀疏向量 (含有较多 0值的向量 ) ,因此含 0较多的稀疏向 量很有可能成为高密度点被选出 ,因此 ,在进行中心点选择前 应排除这些稀疏向量 。因此 ,提出了一个基于密度及散布特
词 t的所有文本的数目 , n是文本集合 D 的大小 。
在文本聚类中 , 通常使用向量空间模型来表示每个文
本 [3 ] ,在这种模型中 ,每个文本 d被认为是向量空间内的一个
向量 。在这里 ,我们使用了 tf - idf词权重模型 ,则每个文本就
被表示为 :
< tf1 log ( n / df1 ) , tf2 log ( n / df2 ) , …, tfm log ( n / dfm ) > ( 2) 其中 tfi是文本中的第 i个词的频度 , dfi是包含第 i个词的 文本的数目 。
新的经过改良的 K均值聚类算法 ,算法具体描述如下 :
( issrjt@m ail. sysu. edu. cn) 摘 要 : K均值算法是聚类分析中使用最为广泛的算法之一。针对文本聚类所面临的维数灾难 ,稀 疏向量以及标准 K均值算法初始中心点选择的随机性等问题 ,提出了一种面向文本聚类的改进的 K均 值算法 ,通过运用特征选择及降维 、稀疏向量筛除 、基于密度及散布的初始中心点搜索等方法进行改进 。 实验结果表明 ,改进后的算法无论在聚类精度还是在稳定性等方面 ,都明显优于标准的 K均值算法 。 关键词 :文本聚类 ;特征选择 ;初始化 中图分类号 : TP311. 13; TP18 文献标识码 : A
74
计算机应用
2006年
2 算法描述
文中主要解决以下两个问题 : 1) 对原始数据集的每个特征进行分析 ,依据某个标准进 行特征选择的问题 。
2) K2M eans算法对文本聚类时 ,针对文本矩阵稀疏的特 点 ,如何选择聚类的初始中心点的问题 。
下面分别针对这两个问题给出相应的算法并给出整个算
1) 根据公式 ( 8) 得到非稀疏向量集合 Ss;
2) 根 据 公 式 (9) 计 算 集 合 Ss 中 每 个 点 的 密 度
D
en
s
ity
(
x
)
,
并计算平均密度
μ density
;
3) 计算点集 Sd
= { x | D ensity ( x)
≥β3
μ density
,
x
∈ Ss };
4) 初始中心点集 M 初始化为空集 ,即 M = { } ;
针对上述问题 ,本文一方面采用了一种高效的特征评价 指标 [4 ] ,进行特征的过滤和筛选 ,对文本向量进行降维 ;另一 方面 ,提出了一种新的基于密度及散布特性的初始中心点选 择算法 ,对 K - M eans算法进行改进 ,较好地解决了初始点的 选择的影响以及聚类结果不平衡等问题 。
1 文本的向量空间模型及相似度定义
文本聚类可以描述如下 : 对一个给定的文本集合 D = { d1 , d2 , …, dn } 经过聚类 ,最终得到一个集合 C = { c1 , c2 , …, ck } ,其中 ci < D ( i = 1, 2, …, k) , 使得 Π di ( di ∈ D ) , ϖ cj ( cj ∈ C) 有 di ∈ cj,同时使得目标函数 f ( C) 达到最小 。 1. 1 文本的向量空间模型
的超球体内所包含的样本的个数 。
D ensity ( x) = | { p | D ist ( x, p) ≤ε, p ∈ S, x ∈ S } | ( 9)
其中 ,半径 ε的确定是一个较为困难的问题 ,ε取值过低
或过高 ,都不能获得有效的密度估计 。实际上 , 此问题的根源
在于不了解样本间距离的概率分布 。因此在本研究中 ,采用统
1. 2 相似度定义
本文使用欧氏距离 [1 ] 度量文本之间的相似度 。设文本
di, dj ∈ D,则 : d ist ( di, dj ) =
| xi1 - xj1 | 2 +| xi2 - xj2 | 2 + … +| xip - xjp | 2
(5)
收稿日期 : 2005 - 12 - 14;修订日期 : 2006 - 02 - 28 基金项目 :国家自然科学基金 (60573097) ;广东省自然科学基金 (04300462, 05200302) 作者简介 :任江涛 (1975 - ) ,男 ,广西柳州人 ,讲师 ,博士 ,主要研究方向 :数据挖掘与知识发现 、生物信息学 ; 孙婧昊 ( 1983 - ) ,女 ,河南许 昌人 ,硕士研究生 ,主要研究方向 :高维数据挖掘及特征选择 、信息处理和电子商务 ; 施潇潇 ( 1985 - ) ,男 ,广东阳江人 ,主要研究方向 :数据挖 掘与知识发现 ; 黄焕宇 (1980 - ) ,男 ,广东湛江人 ,硕士研究生 ,主要研究方向 :信息处理和数据挖掘 ; 印鉴 ( 1968 - ) ,男 ,湖北武汉人 ,教授 , 博士 ,主要研究方向 :人工智能 、数据挖掘与数据仓库.