一种基于行为时间序列的区块链节点聚类方法
一种基于Apriori算法的区块链聚类方法[发明专利]
专利名称:一种基于Apriori算法的区块链聚类方法专利类型:发明专利
发明人:李宝次
申请号:CN201911353803.4
申请日:20191225
公开号:CN111178422A
公开日:
20200519
专利内容由知识产权出版社提供
摘要:本发明公开了一种基于Apriori算法的区块链聚类方法,该聚类方法包括如下步骤:P1、输入事务数据,通过共识架构形成区块链节点;P2、对区块链节点进行汇总,形成事务项目集合I={A1,A2,A3,A4,A5,A6};P3、对项目集合进行挖掘,形成候选项集C1;P4、引入Apriori算法,对候选项集C1进行剪枝,得到频繁项集F1;P5、对频繁项集F1进行聚类优化,从而获得聚类结果,通过多种方式来对输入数据和统计数据进行汇总,然后进行验证剔除,极大的减小了对比工作量和冗余程度,并且借助于区块链的公开准确性,保证了数据统计处理的高效性,同时可以选出最优的初始聚类中心,从而确定出最优聚类的数目k值,提高聚类精度。
申请人:山东公链信息科技有限公司
地址:250014 山东省济南市历下区燕子山路15号301室
国籍:CN
代理机构:北京盛凡智荣知识产权代理有限公司
代理人:邓凌云
更多信息请下载全文后查看。
基于时间序列的聚类算法研究
基于时间序列的聚类算法研究第一章引言1.1 研究背景随着数据的不断积累和应用场景的不断增加,时间序列数据的重要性逐渐凸显。
时间序列数据具有时间关联性,包含了丰富的信息,因此在很多领域中都具有广泛的应用,如金融领域的股票价格预测、传感器数据的分析、交通流量的预测等。
而时间序列数据的聚类分析是探索和发现时间序列数据的特征、规律和模式的一种重要方法。
因此,时间序列的聚类算法研究具有重要的理论意义和实际应用价值。
1.2 研究目的本文的研究目的在于探索和研究基于时间序列的聚类算法,提高时间序列数据的分析能力和模式识别能力。
通过对时间序列数据的聚类分析,可以帮助人们更好地理解数据的规律和特征,为各个领域的决策提供科学依据。
第二章相关工作综述2.1 时间序列聚类算法概述时间序列聚类算法是指将具有相似特征的时间序列数据归为一类的算法。
常见的时间序列聚类算法包括基于距离的聚类算法、基于密度的聚类算法和基于模型的聚类算法等。
这些算法都有各自的优势和适用场景。
2.2 基于距离的聚类算法基于距离的聚类算法是一种常见的时间序列聚类算法。
该算法通过计算时间序列数据之间的距离来确定数据的相似性,然后将相似性较高的数据归为一类。
其中,欧氏距离、曼哈顿距离和动态时间规整等距离度量方式常被应用于时间序列聚类算法中。
2.3 基于密度的聚类算法基于密度的聚类算法是另一类常见的时间序列聚类算法。
该算法通过计算时间序列数据点的密度来确定数据的相似性和离群点。
DBSCAN (Density-Based Spatial Clustering of Applications with Noise)算法是一种基于密度的聚类算法,通过设定一定的密度阈值,将具有足够高密度的数据归为一类,从而实现聚类分析。
第三章基于距离的时间序列聚类算法3.1 欧氏距离和曼哈顿距离的应用欧氏距离和曼哈顿距离是常用的距离度量方式,广泛应用于时间序列聚类算法中。
本章将介绍欧氏距离和曼哈顿距离的计算方法和应用,并探讨其在时间序列聚类中的优缺点。
机器学习中的时间序列聚类方法
机器学习中的时间序列聚类方法时间序列聚类方法是机器学习领域中的重要技术之一,它可以应用于多个领域,如金融、交通、医疗等,用于发现时间序列数据中的模式和结构。
本文将介绍几种常见的时间序列聚类方法,包括基于距离的方法、基于模型的方法以及基于特征的方法。
一、基于距离的时间序列聚类方法基于距离的时间序列聚类方法是通过计算时间序列之间的距离来衡量它们的相似性,从而进行聚类。
其中最常用的方法是动态时间规整(Dynamic Time Warping,DTW)。
DTW方法在计算距离时可以忽略时间轴的缩放和平移,因此对于长度、形状变化较大的时间序列数据也有较好的适应性。
除了DTW方法外,还有其他基于距离的方法,如欧氏距离、曼哈顿距离等。
二、基于模型的时间序列聚类方法基于模型的时间序列聚类方法是通过建立数学模型来描述时间序列数据的生成过程,然后通过模型之间的比较来进行聚类。
常见的基于模型的方法包括隐马尔可夫模型(Hidden Markov Model,HMM)、自回归模型(Autoregressive Model,AR)等。
这些方法在聚类时可以考虑到时间序列的统计特性和概率模型,对于某些特殊的时间序列数据有较好的效果。
三、基于特征的时间序列聚类方法基于特征的时间序列聚类方法是通过提取时间序列数据的特征向量,然后使用传统的聚类算法进行聚类。
常见的特征包括时域特征(如均值、标准差)、频域特征(如傅里叶系数)、小波变换特征等。
这些特征可以将时间序列数据转化为向量空间中的点,从而使用传统的聚类算法进行处理。
总结:机器学习中的时间序列聚类方法包括基于距离的方法、基于模型的方法以及基于特征的方法。
基于距离的方法通过计算时间序列之间的距离来衡量相似性,常用的方法有动态时间规整(DTW)。
基于模型的方法通过建立数学模型来描述时间序列数据的生成过程,可以考虑到时间序列的统计特性,常见的方法有隐马尔可夫模型(HMM)。
基于特征的方法将时间序列数据转化为特征向量,然后使用传统的聚类算法进行处理,常用的特征包括时域特征、频域特征等。
基于时间序列的聚类分析方法研究
基于时间序列的聚类分析方法研究一、引言随着数据量不断增加,人们对数据挖掘算法的需求越来越高。
而数据挖掘算法中的聚类分析方法可以帮助人们在数据量较大的情况下,快速发现数据的规律和特征。
其中,基于时间序列的聚类分析方法是一种在时间序列中搜索重复模式并进行聚类分析的方法。
本文将介绍基于时间序列的聚类分析方法的定义、流程、算法等内容。
二、基于时间序列的聚类分析方法的定义基于时间序列的聚类分析方法是一种利用时间对数据进行分类的方法。
通过寻找时间序列中的规律和相似性,可以将相似的时间序列进行聚类,以便发现数据的规律和特征。
三、基于时间序列的聚类分析方法的流程1. 数据准备:首先,需要将原始时间序列进行数据清洗和预处理,对数据进行标准化、归一化等操作,以便后续处理。
2. 相似度计算:对于时间序列中的每个子序列,需要计算与其他子序列的相似度。
常用的相似度计算方法包括欧氏距离、曼哈顿距离等。
3. 聚类算法:可以使用常见的聚类算法,如K-means、DBSCAN等,对相似的时间序列进行聚类分析。
4. 结果评估:对聚类结果进行评估,可以使用聚类有效性指标,如轮廓系数,来评估聚类的质量。
四、基于时间序列的聚类分析方法的算法1. K-means算法K-means算法是基于距离的聚类算法,它将数据分为K个簇,使每个数据点到其所属的簇内的所有数据点的距离之和最小化。
该算法的具体步骤为:(1)随机选择K个初始中心点。
(2)计算每个数据点到中心点的距离,并将其分配到最近的簇中。
(3)更新每个簇的中心点。
(4)重复第2和3步,直到中心点不再改变或达到预定的迭代次数。
2. DBSCAN算法DBSCAN算法是一种密度聚类算法,它将数据分为若干个簇,这些簇由密集的数据点组成,并且簇与簇之间较为稀疏。
该算法的具体步骤为:(1)选取一个未访问的核心点。
(2)找出与该核心点密度可达的所有点,加入到该簇中。
(3)重复第1和2步,直到所有的核心点都被访问。
基于时间序列的聚类算法
基于时间序列的聚类算法时间序列在数据分析中占据着非常重要的位置,它通常被应用在金融、生物医学、气象、交通等领域。
在这些行业中,时间序列数据的量非常庞大,智能化的分析方法便显得尤为重要。
在这种情况下,基于聚类算法的时间序列分析就成为了一种有效的解决方案。
时间序列聚类分析算法分为两大类:基于距离的和基于相似度的。
距离聚类算法以欧几里得距离、曼哈顿距离、切比雪夫距离等为衡量标准,将时间序列数据归到不同的簇中。
基于相似度聚类算法,则将时间序列数据之间的相似度作为衡量标准,通过这些相似度,将时间序列数据归到不同的簇中。
在实际应用中,基于距离的算法通常应用于短周期的时间序列数据,而基于相似度的算法则更加适合于具有更长周期的时间序列数据。
因为在短周期的时间序列数据中,噪音和离群点可能会对距离的计算产生较大的影响,而在长周期的时间序列数据中,离群点的影响相对较小。
下面将介绍两种较为常见的基于时间序列的聚类算法——K-means聚类算法和DBSCAN聚类算法。
K-means聚类算法K-means聚类算法是一种非常经典和常用的聚类算法,它在时间序列聚类分析中也得到了广泛的应用。
该算法主要分为以下几个步骤:首先定义簇的个数k,随机选取k个点作为簇的中心;对于剩余的每一个点,根据它与每个簇中心的距离,将它分配到距离它最近的簇中;计算每个簇内的所有点的平均值,将该平均值作为新的簇中心;重复第二步和第三步,直到簇的中心不再发生变化或者达到指定的最大迭代次数。
K-means聚类算法的优点在于:该算法速度快、易于实现,并且可以很容易地解释结果。
缺点在于:由于它是基于距离的算法,因此在处理存在噪音和离群点的短周期时间序列数据时,准确度可能较低。
DBSCAN聚类算法DBSCAN聚类算法是一种基于密度的聚类算法,它可以有效地处理存在噪音和离群点的短周期时间序列数据。
该算法主要分为以下几个步骤:选取一个任意的数据点,将其作为一个核心对象;对于核心对象的邻域内的所有点,如果它们的密度符合某个预设的阈值,将它们放入同一个簇中;对于属于同一个簇的点,继续迭代,扩大这个簇的范围,直到达到某个终止条件;将未被归入任何一个簇中的点作为离群点。
一种基于时间序列的计算机数据挖掘聚类方法[发明专利]
专利名称:一种基于时间序列的计算机数据挖掘聚类方法专利类型:发明专利
发明人:李洁,孙燕,石成富
申请号:CN201510992669.8
申请日:20151225
公开号:CN105631475A
公开日:
20160601
专利内容由知识产权出版社提供
摘要:本发明公开了一种基于时间序列的计算机数据挖掘聚类方法,该计算机数据挖掘聚类方法通过对输入样本集X、Y进行去噪、归一化处理,并对处理后的时间序列进行极值点求取,得到极值点序列Xˊ、Yˊ;再对Xˊ、Yˊ进行等长处理,等长处理后得到长度相等的分类序列X”、Y”;然后对处理后的序列X”、Y”进行类距离计算,将距离最大的两类进行合并,合并后类别数减少一个;接着对处理后的分类序列X”、Y”循环执行类距离计算并且合并距离最大的两类,直到聚类数等于预设的数据,即可聚类结束;最后输出聚类结果。
该方法能够有效地处理数据量大、维度高的时间序列数据,方法简单易行,不依赖于具体序列,能高效地进行数据挖掘聚类,将海量数据有效压缩并保留其数据的主要特征。
申请人:石成富
地址:400055 重庆市巴南区花土湾5号附7号
国籍:CN
更多信息请下载全文后查看。
一种基于层次化聚类学习的区块链共识方法
一种基于层次化聚类学习的区块链共识方法
尚新;赵鹏
【期刊名称】《信息技术与信息化》
【年(卷),期】2018(0)9
【摘要】为解决目前主流区块链中普遍采用的POW、POS或者PBFT等共识算法存在算力浪费或者TPS处理效率低等问题,本文提供了一种利用层次化聚类学习在区块链中达成共识的方法.该方法具体步骤如下:确定区块链中带聚类节点筛选指标;根据指标,计算每个待聚类节点的特征值;根据每个待聚类节点的特征值,利用机器学习对所述多个待聚类节点进行循环聚类处理,确定出目标节点;目标节点即为区块链共识节点.该方法可降低区块链达成共识的时间,提高共识效率.
【总页数】3页(P17-18,21)
【作者】尚新;赵鹏
【作者单位】山东省数字证书认证管理有限公司山东济南 250014;浪潮通用软件有限公司山东济南 250101
【正文语种】中文
【相关文献】
1.一种结合K-Means的层次化的搜索结果聚类方法 [J], 于洪;谌强
2.一种基于深度学习的层次化钓鱼网站检测方法 [J], 胡俊;摆亮;吕志泉
3.一种层次化的检索结果聚类方法 [J], 张刚;刘悦;郭嘉丰;程学旗
4.一种新型的基于Levenshtein距离层次聚类的时序操作优化方法 [J], 朱坚;杨博;
王永健;唐晓婕;李宏光
5.一种基于层次聚类的空间非合作目标重构方法 [J], 朱昂帆;杨佳琪;王立
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
权利要求书
1. 一种基于行为时间序列的区块链节点聚类方法,包括如下步骤:
(1)提取每个区块链节点的行为时间序列;
(2)初始随机选取k个行为时间序列对应作为k个类别的聚类中心,分别记为O1,O2,…,O k,k为大于1的自然数;
(3)逐个对行为时间序列进行分类:对于待分配的行为时间序列x,计算其与各聚类中心O1,O2,…,O k的相似度,若其中聚类中心O i与行为时间序列x的相似度最高,则将行为时间序列x归为类别i,进而分配下一个行为时间序列;待所有行为时间序列均分配完成后更新各类别的聚类中心,进而执行步骤(4)的判断过程,i为自然数且1≤i≤k;
(4)判断各类别新的聚类中心是否与旧的聚类中心完全一致:若是,则停止并输出聚类结果即当前所有行为时间序列的分类结果,各行为时间序列的分类结果即为对应区块链节点的聚类结果;若否,则返回步骤(3)重新对行为时间序列进行分类。
2. 根据权利要求1所述的区块链节点聚类方法,其特征在于:所述行为时间序列为关于区块链节点账户余额、交易频率、交易金额或区块生成速度的特征信息随时间变化的数值序列。
3. 根据权利要求1所述的区块链节点聚类方法,其特征在于:所述步骤(3)中采用DTW算法计算行为时间序列x与各聚类中心O1,O2,…,O k的相似度。
4. 根据权利要求1所述的区块链节点聚类方法,其特征在于:所述步骤(3)中更新各类别聚类中心的具体方法为:对于任一类别,计算该类别中每一行为时间序列相对其他所有同类行为时间序列的平均相似度,取平均相似度最高的行为时间序列作为该类别新的聚类中心。
5. 根据权利要求4所述的区块链节点聚类方法,其特征在于:对于类别i 中的任一行为时间序列,采用DTW算法计算该行为时间序列与其他各同类行为时间序列的相似度,进而求和平均后即得到该行为时间序列相对其他所有同类行为时间序列的平均相似度。
6. 根据权利要求1所述的区块链节点聚类方法,其特征在于:所述步骤(4)
中进一步判断聚类中心更新的次数,若更新次数超过一定阈值,则停止并输出聚类结果即当前所有行为时间序列的分类结果,各行为时间序列的分类结果即为对应区块链节点的聚类结果。
说明书
一种基于行为时间序列的区块链节点聚类方法
技术领域
本发明属于区块链技术领域,具体涉及一种基于行为时间序列的区块链节点聚类方法。
背景技术
区块链(Blockchain)技术是在去中心化、互相不信任环境下维持公共总账的底层技术。
其本质是基于密码学方法实现分布式、不可篡改的交易账簿,每个区块链网络中的节点都保存有记录所有交易的公共账本。
在公有区块链网络中,任何实体都可以申请成为网络中的节点。
因此,在公有链中往往具有数量庞大的节点,其中一些节点可能尝试在网络中作弊来非法获利,黑客节点可能故意破坏网络的正常运行来展示技术,有敌意的节点可能蓄谋使整个网络陷入瘫痪。
因此对节点进行聚类,将节点划分成若干个类内相互相似的类簇,有助于对大量节点的维护和发现有异常行为的节点。
发明内容
为解决对区块链节点进行聚类分析的问题,本发明提供了一种基于行为时间序列的区块链节点聚类方法,能够自动将区块链节点按照其行为时间序列聚类成若干类簇。
一种基于行为时间序列的区块链节点聚类方法,包括如下步骤:
(1)提取每个区块链节点的行为时间序列;
(2)初始随机选取k个行为时间序列对应作为k个类别的聚类中心,分别记为O1,O2,…,O k,k为大于1的自然数;
(3)逐个对行为时间序列进行分类:对于待分配的行为时间序列x,计算其与各聚类中心O1,O2,…,O k的相似度,若其中聚类中心O i与行为时间序列x的相似度最高,则将行为时间序列x归为类别i,进而分配下一个行为时间序列;
待所有行为时间序列均分配完成后更新各类别的聚类中心,进而执行步骤(4)的判断过程,i为自然数且1≤i≤k;
(4)判断各类别新的聚类中心是否与旧的聚类中心完全一致:若是,则停止并输出聚类结果即当前所有行为时间序列的分类结果,各行为时间序列的分类结果即为对应区块链节点的聚类结果;若否,则返回步骤(3)重新对行为时间序列进行分类。
所述行为时间序列为关于区块链节点账户余额、交易频率(每月或每周)、交易金额或区块生成速度等特征信息随时间变化的数值序列。
优选地,所述步骤(3)中采用DTW(Dynamic Time Warping,动态时间归整)算法计算行为时间序列x与各聚类中心O1,O2,…,O k的相似度;选择DTW是为了能够度量两个不同长度的行为时间序列之间的相似度。
所述步骤(3)中更新各类别聚类中心的具体方法为:对于任一类别,计算该类别中每一行为时间序列相对其他所有同类行为时间序列的平均相似度,取平均相似度最高的行为时间序列作为该类别新的聚类中心。
对于类别i中的任一行为时间序列,采用DTW算法计算该行为时间序列与其他各同类行为时间序列的相似度,进而求和平均后即得到该行为时间序列相对其他所有同类行为时间序列的平均相似度。
所述步骤(4)中进一步判断聚类中心更新的次数,若更新次数超过一定阈值,则停止并输出聚类结果即当前所有行为时间序列的分类结果,各行为时间序列的分类结果即为对应区块链节点的聚类结果。
本发明区块链节点聚类方法能够对区块链节点进行聚类,将节点划分成若干个类内相互相似的类簇,有助于对大量节点的维护和发现有异常行为的节点;同时,用户可以根据自己的需要选择使用节点的哪个属性(如交易金额、交易频率)构建时间序列。
附图说明
图1为本发明区块链节点聚类方法的流程示意图。
具体实施方式
为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。
本发明基于行为时间序列的区块链节点聚类方法,包括如下步骤:
1. 提取每个区块链节点的行为时间序列。
每个区块链节点的信息包括账户余额,每月(或每周)交易频率,交易金额,生产区块的速度等。
对于单个节点,将其有价值的某个信息(例如交易金额)随时间变化的序列提取为用户行为的特征,记为该节点的行为时间序列。
2. 计算每两个行为时间序列之间的相似度。
时间序列的相似度使用动态时间弯曲算法DTW计算。
选择DTW是为了能够度量两个不同长度的时间序列之间的相似度。
3. 随机选择k个时间序列作为初始聚类中心,记为O1,O2,…,O k。
4. 对每个时间序列a进行分类,如果在a与O1,O2,…,O k的相似度中,与O i 的相似度最高,则将a归入第i个类别。
5. 记录当前的聚类中心O1,O2,…,O k为旧的聚类中心。
6. 所有时间序列分类完成后,为每个类别计算新的聚类中心O i。
使用第2步计算好的序列间相似度,计算类别i中一个时间序列到类别i中的其他序列之间的平均相似度,选择到同类其他时间序列平均相似度最高的时间序列作为该类的新的聚类中心。
依此,k个类别有k个新的聚类中心O1,O2,…,O k。
7. 如果新的聚类中心和旧的聚类中心相同,则停止循环返回聚类结果,否则循环执行第4步到第7步,直到循环次数超过阈值。
以下对于一个金融交易的区块链网络,需要根据该网络中区块链节点的交易金额序列对它们进行聚类;如图1所示,采用上述方法对该区块链网络进行聚类的具体实施过程如下:
首先,提取区块链网络中每个节点的交易金额时间序列。
然后,使用动态时间规整DTW算法计算每两个时间序列之间的相似度。
随后,随机选择k个时间序列作为初始的聚类中心,记为O1,O2,…,O k。
对每个时间序列进行分类,根据其到每个聚类中心的距离,将其划分到距
离最近的聚类中。
例如,对于一个时间序列s,如果s到O1,O2,…,O k的距离中,离O2最近,则把s划分到第2个类别中;如果s到O1,O2,…,O k的距离中,离O7最近,则把s划分到第7个类别中,以此类推。
待所有时间序列分类完成后,为每个类重新计算类的聚类中心。
对于任一类别i,计算类别i中一个时间序列到类别i中的其他序列之间的平均相似度,选择到同类其他时间序列平均相似度最高的时间序列作为该类的新的聚类中心。
依此,k个类别有k个新的聚类中心O1,O2,…,O k。
如果新的聚类中心和旧的聚类中心相同,则停止循环并返回当前聚类结果,否则判断一下是否迭代循环次数达到了阈值,如达到了阈值则结束并返回当前聚类结果。
如没有达到阈值,则跳转并继续循环过程。
上述对实施例的描述是为便于本技术领域的普通技术人员能理解和应用本发明。
熟悉本领域技术的人员显然可以容易地对上述实施例做出各种修改,并把在此说明的一般原理应用到其他实施例中而不必经过创造性的劳动。
因此,本发明不限于上述实施例,本领域技术人员根据本发明的揭示,对于本发明做出的改进和修改都应该在本发明的保护范围之内。
本发明公开了一种基于行为时间序列的区块链节点聚类方法,该方法能够对区块链节点进行聚类,自动将区块链节点按照其行为时间序列划分成若干个类内相互相似的类簇,有助于对大量节点的维护和发现有异常行为的节点;同时,用户可以根据自己的需要选择使用节点的哪个属性(如交易金额、交易频率)构建时间序列。
图1
摘 要 附 图。