摘 要: 通过利用Apriori算法抽取评价对象的候选特征集,结合计算领域一致度和领域相关度对候选特征进行过滤,实现了对中文客户评论的对象特征挖掘,并且用实验验证了该方法的有效性。
关键词: 特征挖掘;领域一致度;领域相关度
评论挖掘是一种以从评论数据中探寻有用信息为目标的非结构化数据挖掘技术,主要包含评论对象的特征挖掘、评论观点挖掘、评论观点的极性以及强度判断、评论挖掘结果的汇总以及按用户观点排序4个子任务[1]。
评价对象的特征挖掘是指从大量的客户评论中挖掘出用户关注的评价对象特征。这一技术是分析用户对评价对象的具体特征所持的情感倾向的前提,其准确性和全面性是非常重要的。近年来,国内外研究人员对评价对象的特征挖掘进行深入研究,他们采用很多不同方法来对特征进行挖掘[2-6]。本文针对中文客户评论的特征挖掘的性能不够理想的问题[7],提出了一种基于Apriori算法抽取候选特征集,集成领域一致度和领域相关度方法对候选特征进行过滤的方法,实现中文客户评论对象的特征挖掘,并且通过实验验证这一方法的有效性。
1 评论对象的特征挖掘
中文客户评论对象的特征挖掘过程如图1所示。首先,输入不同评论对象的评论语料;然后对这些评论语料进行预处理,利用中科院计算所所研发的ICTCLAS系统对评论文本语料进行分词和二级词性标注,以评论语料中句子为单位,进行词性过滤,提取出评论语料中名词和具有名词功能的形容词或者动词或者名词短语作为项,每一篇评论项组合起来作为一个事务在事务文件中存为一行。将每个评论对象的所有评论语料中的事务都存储在一个事务文件中。经过预处理后,每个评论对象均有一个事务文件。然后,应用Apriori算法从事务文件中提取频繁项集,并通过剪枝方法去除掉一些不合适的频繁项,得到评价对象的候选特征集。最后,利用特征的领域相关度和领域一致度定义综合评定指标,根据该指标对候选特征进行过滤,得到评价对象的特征。
1.1 评价对象的候选特征挖掘
定义1 频繁项:设I是m个项目的集合,T是n个事务集合,其中每个事务S是一个项目集合,并满足S?哿I。由I中的若干项组成的集合称为项集,包含k个项的项集称为k-项集,包含项集的事务数称为该项集的出现频度。如果该项集的出现频度大于或等于预先设定的最小支持度,则称项集为频繁项。
定义2 邻近规则:假设f是频繁项,而且f包含n个词,评论句s包含f,而且在f中的词出现在s中的顺序为:w1,w2,…,wn。如果在s中wi和wi+1(i=1,…n-1)的距离不超过两个词,则可以说f在s中是邻近的。
定义3 独立支持度:频繁项f的独立支持度是指包含f本身但不包含f的超集的句子数量,即f的支持度减去f的超集支持度之和。若f的独立支持度大于最小支持度,则其符合独立支持度规则。
挖掘评价对象的候选特征过程如算法1所示。首先,应用Apriori算法从预处理得到的评价对象的事务文件中,提取满足最小支持度的频繁项集。通过分析评论对象特征的特性,发现3维以上频繁项不可能是特征,所以只提取3维及其以下的频繁项;然后,根据邻近规则,去掉不在其相邻位置的频繁项;根据独立支持度剪枝去掉被包含在其他频繁项的冗余频繁项;因为单字不可能是评价对象的特征,所以,删去频繁项集中的单字。
算法1 评价对象的候选特征挖掘
输入:评论语料事务文件W,评论语料库T
输出:频繁特征集L
方法:
int minsupport,int k;
//初始化最小支持度和频繁项集的最高维度
L0=Apriori(W,minsupport,k);
//通过Apriori算法得到频繁项集L0
for each f∈L0 do
//对于L0中的大于一维的项根据邻近规则重新计算支持度
if f.dimension﹥1 then//如果f的维度大于1
f.count=0;//f的支持度重新设置为0
for each t∈T do//对所有事务扫描一遍
if f在t中是邻近的do//若f在t中符合邻近规则
f.count++;//f的支持度加1
end if
end for
end if
end for
风华电感 L1={f∈L0|f.count≧minsupport}; 大功率电感厂家 |大电流电感工厂