[发明专利]一种基于临界值数据划分的并行KNN文本分类方法有效

专利信息
申请号: 201711192239.3 申请日: 2017-11-24
公开(公告)号: CN107832456B 公开(公告)日: 2021-11-26
发明(设计)人: 何婧;姚绍文;薛岗;王亚西 申请(专利权)人: 云南大学
主分类号: G06F16/35 分类号: G06F16/35;G06K9/62
代理公司: 昆明金科智诚知识产权代理事务所(普通合伙) 53216 代理人: 胡亚兰
地址: 650091 云*** 国省代码: 云南;53
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 临界值 数据 划分 并行 knn 文本 分类 方法
【权利要求书】:

1.一种基于临界值数据划分的并行KNN文本分类方法,其特征在于,所述基于临界值数据划分的并行KNN文本分类方法包括以下步骤:

步骤一,经过预处理后,训练集中的文本就会被处理成统一的格式,即通过词条将文本中的信息处理成键值对的形式;为了反映词条的特征信息,采用TF-IDF算法计算词条的权值,处理过程分为TF和IDF两部分:TF定义为文本中词条出现的频数;IDF定义为反向文本概率,是衡量词条分布的一个重要特性;其中TF的计算公式为:

tfi,j=ni,j/∑knk,j

式中,ni,j表示文本j中词条i的出现次数,∑knk,j表示文本j中所有词条的统计总数;

词条的IDF计算方法为:

idfi,j=log(|D|/|{j:ti∈dj}|)

式中,|D|表示样本数据集中所有文本总数;|{j:ti∈dj}|表示包含词条ti的文本数目(即ni,j≠0的文本数目),若分母为零,表示该词条不在数据集中,此时使用1+|{j:ti∈dj}|来代替分母;

得到词条权重的计算公式如下:

tfidfi,j=tfi,j×idfi,j

特定文本中的高频率的词条就会产生高权重的TF-IDF,从而对数据集中的词条进行筛选和过滤;

步骤二,确定待分类文本的向量,使用TF-IDF方式处理待分类的文本;

步骤三,确定待分类文本的K个近邻文本,基于临界值的数据划分算法得到样本数据集中的中心点集合,将待分类文本与中心点集合进行相似度计算,并根据相似度将待分类文本划分到中心点集合的对应数据集中,选出集合中K个最近邻文本;使用余弦定理并行化处理和TF-IDF,进行待分类文本与K个近邻文本的相似度计算:

其中:di、dj表示任意两个文本向量,wk(di)、wk(dj)表示文本向量di、dj的第k个分量;

所述基于临界值的数据划分算法包括:

1)寻找数据集的中心点集,利用最远中心算法,并结合内切圆划分的几何知识来计算出临界值near_value,计算过程中用到的最远中心算法是对最远距离算法和随机选择算法的结合改进而成的,通过计算数据集中任意两个点之间的距离,并将其中的最小值min_dis进行保存,与之前得到的临界值near_value进行比较,删除所有小于near_value的集合,然后在所有的样本集中找到点与点之间距离最大的集合作为中心点集合;

2)划分原始数据集,将通过最远中心算法得到的中心点集合存入到mapper中,然后按照存储的顺序将原始数据集切分成相同大小的N份,并存入mapper中;开始执行map,此时的map是为了对每个点到中心点集合的距离进行计算,得到计算结果后,将原始数据集中的每个元素按照分类结果划分到对应的集合中;

通过对最远距离算法和随机选取方法的结合,改进出的最远中心算法来选取数据集的中心点;

基于Voronoi的划分:按照最邻近原则,将样本数据集中的每个元素划分到与该元素距离最近的点所在的集合中,在进行数据划分之前,要先寻找划分的基准,也就是数据集的中心点集;

中心点:在数据集合中,与数据集合中所有元素的距离平均值最小的那个点,称之为中心点;首先按照中心点算法寻求中心点,然后再计算数据集中的每个元素到该数据集中心点的距离和为标准,划分数据集;

随机选取K个点做中心点,然后对集合的任意两点间的距离进行计算得到距离和,那么距离最大的即认为是中心点集合;

步骤四,待分类文本的权重计算公式为:

公式P(x,c)计算待分类文本x属于类别c的权重,其中:x表示待分类文本;di是待分类文本x的K近邻文本,sim(x,di)为上述相似度求解公式,表示待分类文本x与文本di的相似度;y(di,c)表示类别属性函数,即若文本di属于c类true为1,false为0;

步骤五,基于P(x,c)的计算,比较待分类文本x在不同类别c上的权重值大小,然后选取权重值最大的类别,将待分类文本x划分到该类别对应的中心点集合中,即完成了对待分类文本的分类;

所述数据划分的方法包括:

提取预处理的数据样本,将样本进行等量划分后放入到各个mapper中,利用最远中心算法,找出中心点集合;找到中心点集合后,对整个数据集中的所有元素进行处理,找出每个元素的最近中心点并将其划分到相应的集合中去;在进行数据划分时候,将计算各个元素到中心点的距离,也就是文本相似度求解;

确定中心点集合的方法包括:

输入:集合D=(D1,D2,...,Dt),临界值α;

输出:中心点集合Di

步骤一:将集合D分别放到mapper中;

步骤二:计算每个mapper中点对之间的距离并记录最小值Di_sum

步骤三:将每个Di_sum和临界值比较,小于临界值的不能成为候选集;

步骤四:在中心点候选集中选出距离和最大的集合Di,作为中心点集;

步骤五:输出中心点集合Di

PS:集合D中的元素初始值设置为空,从而保证中心点的分布更加均匀,有利于后面数据的划分。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于云南大学,未经云南大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201711192239.3/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top