一种基于知识重用的演化聚类方法

文档序号:6622263阅读:277来源:国知局
一种基于知识重用的演化聚类方法
【专利摘要】本发明公开了一种基于知识重用的演化聚类方法,其通过截取t时刻和以时间窗口长度为限制的有限个历史时刻的数据,应用任一静态聚类方法对数据进行聚类分析,并将聚类结果生成离散化0-1矩阵,之后按时间衰减加权离散化0-1矩阵获得加权0-1矩阵,最后用静态聚类方法对加权0-1矩阵进行静态聚类分析,获得t时刻的演化聚类结果。本发明是通过融合历史时刻的多时间截面静态聚类结果,形成知识积累;从短期来看,可以消除数据噪音提高聚类准确率,从长期来看,可以防止数据扰动保持聚类的稳定性。
【专利说明】一种基于知识重用的演化聚类方法

【技术领域】
[0001] 本发明涉及属于数据挖掘和机器学习领域,特别涉及一种基于知识重用的演化聚 类方法,用于多时间截面数据集的演化聚类分析,并可防止数据扰动、抵抗数据噪音。

【背景技术】
[0002] 数据质量指数据满足明确或隐含需求程度的指标,是对于现实世界的真实写照。 数据质量问题不仅仅指出现不正确的数据,还指数据不一致性问题。随着数据量的增加,数 据的内部一致性问题变得极为重要,是广泛存在于各学科数据使用中的一个主题。噪声作 为测量误差的随机部分,它可能涉及到值的失真或加入了伪造的对象数据。
[0003] 传统的静态聚类方法只能针对单一时间截面的数据进行聚类,无法处理数据演化 过程中可能出现的抖动和数据噪音。现有的演化聚类方法只能针对t时刻和前一时刻的动 态数据的静态聚类结果进行聚类融合,知识利用程度不高。同时,这些模型往往需要设定参 数,求解过程也极为复杂。另外,现有分析对于静态聚类结果的数量变化十分敏感,针对演 化过程中点的变化情况也没有较好的应对策略。
[0004] 鉴于上述描述,本发明提供一种基于知识重用的演化聚类方法,其为一种面向动 态变化数据的聚类方法,广泛应用在社区识别、金融产品分析等应用领域,基于知识重用的 演化聚类方法是通过融合历史时刻的多时间截面聚类结果,形成知识积累;短期来看,可以 消除数据噪音提高聚类准确率,从长期来看,可以防止数据扰动保持聚类的稳定性。


【发明内容】

[0005] 本发明的目的在于提供一种基于知识重用的演化聚类方法,本发明所述基于知识 重用的演化聚类方法是通过融合历史时刻的多时间截面静态聚类结果,形成知识积累,以 时间为轴构建出知识重用框架,从短期来看,可以消除数据噪音提高聚类准确率,从长期来 看,可以防止数据扰动保持聚类的稳定性。
[0006] 为了实现上述目的及一些其他目的,本发明提供的技术方案为:
[0007] -种基于知识重用的演化聚类方法,其特征在于,包括以下步骤:
[0008] 步骤一、截取数据库中动态社区中或者金融产品中t时刻η个样本的数据作为基 础数据;
[0009] 步骤二、设定时间窗口长度为k,k < 10,若t-k < 0,则按相同时间间隔连续跟踪 截取η个样本的t-ι个单时间窗口的变化数据,应用任一静态聚类方法将获得的t时刻的 基础数据和t-Ι个单时间窗口的变化数据进行分析获得包括样本数η,η个样本所属聚类数 m以及η个样本与所属聚类的对应关系的t个静态聚类结果,并将t个静态聚类结果分别转 化为对应t个的离散化0-1矩阵;
[0010] 步骤三、若t-k > 0,则按相同时间间隔连续跟踪截取η个样本的k-ι个单时间窗 口的变化数据,应用任一静态聚类方法将获得的t时刻的基础数据和k-Ι个单时间窗口的 变化数据进行分析获得包括样本数η,η个样本所属聚类数m以及η个样本与所属聚类的对 应关系的k个静态聚类结果,并将k个静态聚类结果分别转化为对应的k个离散化0-1矩 阵;
[0011] 步骤四、通过时间顺序将步骤二的t个的离散化0-1矩阵或者步骤三的k个离散 化0-1矩阵加权获得加权0-1矩阵I或II ;
[0012] 步骤五、最后应用所述静态聚类分析所述加权0-1矩阵I或II,剔除其中的数据噪 音,获得最终动态数据的演化聚类结果,修正t时刻的静态聚类结果,明确η个样本在动态 社区中或者金融产品中的所属聚类,其中,t> 1,η> 1以及m> 1。
[0013] 优选的是,所述步骤三中将静态聚类结果生成离散化o-l矩阵具体方法为:矩阵 中"行"代表样本,"列"代表该时刻的聚类,矩阵中每一行向量代表样本在对应聚类中是否 出现,出现为1,否则为0。
[0014] 优选的是,所述步骤三中将静态聚类结果生成离散化0-1矩阵具体方法中当生成 离散化0-1矩阵时,如果出现了与静态聚类结果中不同的样本则在矩阵中相应"行"和"列" 均记为0。
[0015] 优选的是,步骤四中获得加权0-1矩阵,其中,权重值设置为以t时刻的权重值为 最大,之前的单个时间窗口的权重值逐渐减小,加权方法为:所述"行"不变,所述"列"相接。
[0016] 优选的是,所述步骤三中相邻两个单时间窗口的时间间隔值为任何时间单位的1。
[0017] 优选的是,所述步骤二中t个静态聚类结果分别或者步骤三中k个静态聚类结果 会储存在数据库中形成以时间为轴的知识重用框架。
[0018] 优选的是,当服务器检测到在分析同一个动态社区或者金融产品中用到储存在数 据库中相同时刻的知识重用框架的静态聚类结果时,可直接从数据库中调取相应的静态聚 类结果。
[0019] 优选的是,所述动态社区可以为"新浪微博",所述样本为"新浪微博用户",所述聚 类为"新浪微博社团",所述金融产品可以为"股票市场",所述样本为不同的"股票",所述聚 类为按价格高低分成的"价格区"。
[0020] 优选的是,还包括:
[0021] 步骤一、截取数据库中"新浪微博" t时刻η个"新浪微博用户"的数据作为基础数 据;
[0022] 步骤二、设定时间窗口长度为k,k < 10,若t_k < 0,则按相同时间间隔连续跟踪 截取η个样本的t-Ι个单时间窗口的变化数据,应用任一静态聚类方法将获得的t时刻的 基础数据和t-Ι个单时间窗口的变化数据进行分析获得包括η个"新浪微博用户"的数量, η个"新浪微博用户"属于哪个"新浪微博社团",以及所具有的m个"新浪微博社团"数量的 对应关系的t个静态聚类结果,并将t个静态聚类结果分别转化为对应t个的离散化0-1 矩阵;
[0023] 步骤三、若t-k > 0,则按相同时间间隔连续跟踪截取η个样本的k-Ι个单时间窗 口的变化数据,应用任一静态聚类方法将获得的t时刻的基础数据和k-Ι个单时间窗口的 变化数据进行分析获得包括η个"新浪微博用户"的数量,η个"新浪微博用户"属于哪个 "新浪微博社团",以及所具有的m个"新浪微博社团"数量的对应关系的k个静态聚类结果, 并将k个静态聚类结果分别转化为对应的k个离散化0-1矩阵;
[0024] 步骤四、通过时间顺序将步骤二的t个的离散化0-1矩阵或者步骤三的k个离散 化0-1矩阵加权获得加权0-1矩阵I或II,其中,具体方法为矩阵中"行"代表"新浪微博 用户","列"代表k时刻的"新浪微博社团",矩阵中每一行向量代表"新浪微博用户"在对应 "新浪微博社团"中是否出现,出现为1,否则为0 ;
[0025] 步骤五、最后应用所述静态聚类分析所述加权0-1矩阵I或II,剔除其中的数据噪 音,获得最终动态数据的演化聚类结果,修正t时刻的静态聚类结果,明确η个"新浪微博用 户"在"新浪微博"中所属的"新浪微博社团",其中,t> 1,η> 1以及m> 1。
[0026] 本发明所提供基于知识重用的演化聚类方法的有益效果是:
[0027] 本发明所述基于知识重用的演化聚类方法是通过融合历史时刻的多时间截面静 态聚类结果,形成知识积累,以时间为轴构建出知识重用框架,在获取某一历史时刻的聚类 结果时,不用重复统计,可以直接从数据库中调取知识重用框架中的静态聚类结果,节省时 间,从短期来看,可以消除数据噪音提高聚类准确率,从长期来看,可以防止数据扰动保持 聚类的稳定性。本发明利用知识重用概念构建演化聚类算法,能够融合多个时间截面的知 识信息,大大提高了聚类的准确性;本发明还能根据t时刻样本的移入和移出情况,自动调 整0-1矩阵,具有一定的扩展性,并且当在将静态聚类结果生成离散化0-1矩阵中,如果生 成离散化0-1矩阵时出现了与静态聚类结果中不同的样本则在矩阵中相应"行"和,列"均 记为〇,去除不必要的数据干扰;本发明还通过启发式求解策略进行演化问题求解,简单易 行、灵活性强。

【专利附图】

【附图说明】
[0028] 图1为本发明所述的基于知识重用的演化聚类方法流程图。
[0029] 图 2 为 000011. SZ、000055. SZ、600008. SH、600138. SH 和 600742. SH 在 7 月的开盘 价的走势图。
[0030] 图3为本发明实施例2中7月12日分成的5个聚类的股票分布图。
[0031] 图4为本发明实施例2中不同时刻(时间窗口)每个类包含股票数目走势图。
[0032] 图5为本发明实施例2中相邻时刻静态聚类结果的相似程度图。
[0033] 图6为本发明实施例2中相邻时刻演化聚类结果的相似程度图。

【具体实施方式】
[0034] 下面结合实施例,以及结合附图,对本发明做进一步的详细说明,以令本领域技术 人员参照说明书文字能够据以实施。
[0035] 如图1所示,本发明提供的基于知识重用的演化聚类方法,包括以下步骤:
[0036] 步骤一、截取数据库中动态社区或者金融产品t时刻η个样本的数据作为基础数 据;
[0037] 步骤二、设定时间窗口长度为k,k < 10,若t_k < 0,则按相同时间间隔连续跟踪 截取η个样本的t-Ι个单时间窗口的变化数据,应用任一静态聚类方法将获得的t时刻的 基础数据和t-Ι个单时间窗口的变化数据进行分析获得包括样本数η,η个样本所属聚类数 m以及η个样本与所属聚类的对应关系的t个静态聚类结果,并将t个静态聚类结果分别转 化为对应t个的离散化0-1矩阵;
[0038] 步骤三、若t-k > 0,则按相同时间间隔连续跟踪截取η个样本的k-Ι个单时间窗 口的变化数据,应用任一静态聚类方法将获得的t时刻的基础数据和k-1个单时间窗口的 变化数据进行分析获得包括样本数η,η个样本所属聚类数m以及η个样本与所属聚类的对 应关系的k个静态聚类结果,并将k个静态聚类结果分别转化为对应的k个离散化0-1矩 阵;
[0039] 其中,将静态聚类结果生成离散化0-1矩阵具体方法为:矩阵中"行"代表样本, "列"代表该时刻的聚类,矩阵中每一行向量代表样本在对应聚类中是否出现,出现为1,否 则为〇,在次过程中如果出现了与静态聚类结果中不同的样本则在矩阵中相应"行"和"列" 均记为0 ;
[0040] 相邻两个单时间窗口的时间间隔值为任何时间单位的1 ;
[0041] 步骤二中t个静态聚类结果分别或者步骤三中k个静态聚类结果会储存在数据库 中形成以时间为轴的知识重用框架,当服务器检测到在分析同一个动态社区或者金融产品 中用到储存在数据库中相同时刻的知识重用框架的静态聚类结果时,可直接从数据库中调 取相应的静态聚类结果;
[0042] 步骤四、通过时间顺序将步骤二的t个的离散化0-1矩阵或者步骤三的k个离散 化0-1矩阵加权获得加权0-1矩阵I或II,其中,权重值设置为以t时刻的权重值为最大,之 前的单个时间窗口的权重值逐渐减小,且权重值为按时间衰减顺序设置,加权方法为:"行" 不变,"列"相接;
[0043] 步骤五、最后应用静态聚类分析加权0-1矩阵I或II,剔除其中的数据噪音,获得 最终动态数据的演化聚类结果,修正t时刻的静态聚类结果,明确η个样本在动态社区中或 者金融产品中的所属聚类,其中,t > 1,η > 1以及m> 1。
[0044] 动态社区可以为"新浪微博",样本为"新浪微博用户",聚类为"新浪微博社团";所 述金融产品可以为"股票市场",所述样本为不同的"股票",所述聚类为按价格高低分成的 "价格区"。因此,本发明基于知识重用的演化聚类方法可以表述为还包括以下步骤:
[0045] 步骤一、截取数据库中"新浪微博" t时刻η个"新浪微博用户"的数据作为基础数 据;
[0046] 步骤二、设定时间窗口长度为k,k < 10,若t_k < 0,则按相同时间间隔连续跟踪 截取η个样本的t-Ι个单时间窗口的变化数据,应用任一静态聚类方法将获得的t时刻的 基础数据和t-Ι个单时间窗口的变化数据进行分析获得包括η个"新浪微博用户"的数量, η个"新浪微博用户"属于哪个"新浪微博社团",以及所具有的m个"新浪微博社团"数量的 对应关系的t个静态聚类结果,并将t个静态聚类结果分别转化为对应t个的离散化0-1 矩阵;
[0047] 步骤三、若t-k > 0,则按相同时间间隔连续跟踪截取η个样本的k-Ι个单时间窗 口的变化数据,应用任一静态聚类方法将获得的t时刻的基础数据和k-Ι个单时间窗口的 变化数据进行分析获得包括η个"新浪微博用户"的数量,η个"新浪微博用户"属于哪个 "新浪微博社团",以及所具有的m个"新浪微博社团"数量的对应关系的k个静态聚类结果, 并将k个静态聚类结果分别转化为对应的k个离散化0-1矩阵;
[0048] 步骤四、通过时间顺序将步骤二的t个的离散化0-1矩阵或者步骤三的k个离散 化0-1矩阵加权获得加权0-1矩阵I或II,其中,具体方法为矩阵中"行"代表"新浪微博 用户","列"代表k时刻的"新浪微博社团",矩阵中每一行向量代表"新浪微博用户"在对应 "新浪微博社团"中是否出现,出现为1,否则为ο;
[0049] 步骤五、最后应用静态聚类分析加权0-1矩阵I或II,剔除其中的数据噪音,获得 最终动态数据的演化聚类结果,修正t时刻的静态聚类结果,明确η个"新浪微博用户"在 "新浪微博"中所属的"新浪微博社团",其中,t> 1,η> 1以及m> 1。
[0050] 实施例1
[0051] 下面以社团动态演化为例,说明本发明方法:
[0052] 假设动态变化个体集合D =[屯,d2, d3, d4, d5],其中φ表示某个动态变化的个体, 在不同时刻其可能属于不同的社团;同时,假设采取的历史时刻为k = 3。为求解t时刻的 社团演化聚类结果,需按照如下步骤操作:
[0053] 首先,利用静态聚类算法凝聚层次聚类,对k个历史时刻的个体集合进行聚类,以 识别不同时刻,某个个体所属的社团。本例中k = 3,所以需要分别对和t时刻的 个人集合进行聚类,假设得到不同时刻的社团划分结果为Ct = [1,1,2,2,3],Ct_i = [1,1, 2,2,1],Ct_2 = [1,1,2,2,2];
[0054] 其次,将k个时刻的社团划分结果Ct,Cg,Ct_ 2分别转化为相应的0-1矩阵Ut,Ut_i, Ut_2,矩阵中"行"代表某个个体,"列"代表k个时刻的所有社团标号,矩阵中每一行向量代 表某个体在对应社团中是否出现,出现为1,否则为0 ;
[0055] 第三,根据社团划分的时间窗口长度k = 3,分别设置不同时刻的社团划分 权重分别为wt = k = 3, wtH = k-Ι = 2, wt_2 = k-2 = 1。进行权重归一化后,得到 w,=可,77,由此生成的加权为 2 3 6
[0056]

【权利要求】
1. 一种基于知识重用的演化聚类方法,其特征在于,包括以下步骤: 步骤一、截取数据库中动态社区中或者金融产品中t时刻η个样本的数据作为基础数 据; 步骤二、设定时间窗口长度为k,k < 10,若t-k < 0,则按相同时间间隔连续跟踪截取 η个样本的t-Ι个单时间窗口的变化数据,应用任一静态聚类方法将获得的t时刻的基础 数据和t-Ι个单时间窗口的变化数据进行分析获得包括样本数η,η个样本所属聚类数m以 及η个样本与所属聚类的对应关系的t个静态聚类结果,并将t个静态聚类结果分别转化 为对应t个的离散化0-1矩阵; 步骤三、若t-k > 0,则按相同时间间隔连续跟踪截取η个样本的k-Ι个单时间窗口的 变化数据,应用任一静态聚类方法将获得的t时刻的基础数据和k-Ι个单时间窗口的变化 数据进行分析获得包括样本数η,η个样本所属聚类数m以及η个样本与所属聚类的对应关 系的k个静态聚类结果,并将k个静态聚类结果分别转化为对应的k个离散化0-1矩阵; 步骤四、通过时间顺序将步骤二的t个的离散化0-1矩阵或者步骤三的k个离散化0-1 矩阵加权获得加权0-1矩阵I或II ; 步骤五、最后应用所述静态聚类分析所述加权0-1矩阵I或II,剔除其中的数据噪音, 获得最终动态数据的演化聚类结果,修正t时刻的静态聚类结果,明确η个样本在动态社区 中或者金融产品中的所属聚类,其中,t> 1,η> 1以及m> 1。
2. 如权利要求1所述基于知识重用的演化聚类方法,其特征在于,所述步骤三中将静 态聚类结果生成离散化0-1矩阵具体方法为:矩阵中"行"代表样本,"列"代表该时刻的聚 类,矩阵中每一行向量代表样本在对应聚类中是否出现,出现为1,否则为〇。
3. 如权利要求2所述基于知识重用的演化聚类方法,其特征在于,所述步骤三中将静 态聚类结果生成离散化0-1矩阵具体方法中当生成离散化0-1矩阵时,如果出现了与静态 聚类结果中不同的样本则在矩阵中相应"行"和"列"均记为〇。
4. 如权利要求3所述基于知识重用的演化聚类方法,其特征在于,步骤四中获得加权 0-1矩阵,其中,权重值设置为以t时刻的权重值为最大,之前的单个时间窗口的权重值逐 渐减小,加权方法为:所述"行"不变,所述"列"相接。
5. 如权利要求4所述的基于知识重用的演化聚类方法,其特征在于,所述步骤三中相 邻两个单时间窗口的时间间隔值为任何时间单位的1。
6. 如权利要求5所述的基于知识重用的演化聚类方法,其特征在于,所述步骤二中t个 静态聚类结果分别或者步骤三中k个静态聚类结果会储存在数据库中形成以时间为轴的 知识重用框架。
7. 如权利要求6所述的基于知识重用的演化聚类方法,其特征在于,当服务器检测到 在分析同一个动态社区或者金融产品中用到储存在数据库中相同时刻的知识重用框架的 静态聚类结果时,可直接从数据库中调取相应的静态聚类结果。
8. 如权利要求7所述的基于知识重用的演化聚类方法,其特征在于,所述动态社区可 以为"新浪微博",所述样本为"新浪微博用户",所述聚类为"新浪微博社团";所述金融产品 可以为"股票市场",所述样本为不同的"股票",所述聚类为按价格高低分成的"价格区"。
9. 如权利要求8所述的基于知识重用的演化聚类方法,其特征在于,还包括: 步骤一、截取数据库中"新浪微博" t时刻η个"新浪微博用户"的数据作为基础数据; 步骤二、设定时间窗口长度为k,k < 10,若t-k < 0,则按相同时间间隔连续跟踪截取 η个样本的t-Ι个单时间窗口的变化数据,应用任一静态聚类方法将获得的t时刻的基础数 据和t-Ι个单时间窗口的变化数据进行分析获得包括η个"新浪微博用户"的数量,η个"新 浪微博用户"属于哪个"新浪微博社团",以及所具有的m个"新浪微博社团"数量的对应关 系的t个静态聚类结果,并将t个静态聚类结果分别转化为对应t个的离散化0-1矩阵; 步骤三、若t-k > 0,则按相同时间间隔连续跟踪截取η个样本的k-Ι个单时间窗口的 变化数据,应用任一静态聚类方法将获得的t时刻的基础数据和k-Ι个单时间窗口的变化 数据进行分析获得包括η个"新浪微博用户"的数量,η个"新浪微博用户"属于哪个"新浪 微博社团",以及所具有的m个"新浪微博社团"数量的对应关系的k个静态聚类结果,并将 k个静态聚类结果分别转化为对应的k个离散化0-1矩阵; 步骤四、通过时间顺序将步骤二的t个的离散化0-1矩阵或者步骤三的k个离散化0-1 矩阵加权获得加权0-1矩阵I或II,其中,具体方法为矩阵中"行"代表"新浪微博用户", "列"代表k时刻的"新浪微博社团",矩阵中每一行向量代表"新浪微博用户"在对应"新浪 微博社团"中是否出现,出现为1,否则为0 ; 步骤五、最后应用所述静态聚类分析所述加权0-1矩阵I或II,剔除其中的数据噪音, 获得最终动态数据的演化聚类结果,修正t时刻的静态聚类结果,明确η个"新浪微博用户" 在"新浪微博"中所属的"新浪微博社团",其中,t> 1,η> 1以及m> 1。
【文档编号】G06F17/30GK104156418SQ201410377347
【公开日】2014年11月19日 申请日期:2014年8月1日 优先权日:2014年8月1日
【发明者】张玉超, 邓波, 彭甫阳, 李冬红, 李海龙 申请人:北京系统工程研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1