热点事件确定方法及装置、计算机设备及存储介质与流程

文档序号:17696234发布日期:2019-05-17 21:33阅读:162来源:国知局
热点事件确定方法及装置、计算机设备及存储介质与流程
本发明涉及数字挖掘
技术领域
,特别是涉及一种热点事件确定方法、一种热点事件确定装置、一种计算机设备以及一种计算机存储介质。
背景技术
:网络热点事件一般具有突发性和阶段性,网络热点事件的发现(networkhoteventsmining,nhem)也可以称为话题检测与跟踪(topicdetectionandtracking,简称tdt),目前对网络热点事件的发现和挖掘,一般使用各种各样的聚类算法进行数据挖掘。在目前的数据挖掘机制中,其实现简单,但基于不同类型的聚类技术计算量庞大,聚类结果好坏与新文档的添加顺序有关,敏感性大,在运用到热点事件的确定时会导致热点事件挖掘结果的不准确。技术实现要素:基于此,有必要提供一种热点事件确定方法、一种热点事件确定装置、一种计算机设备以及一种计算机存储介质,以提高挖掘确定热点事件的准确度。据此,一个实施例中采用以下技术方案:一种热点事件确定方法,包括步骤:获取历史事件数据库中的各事件序列,任意一个事件序列包括具有时间前后关系的各事件以及各事件的发生次数;对任意一个事件序列,根据该事件序列中的各事件的发生次数,确定该事件序列中的各事件在该事件序列中的事件价值参数值;还根据该事件序列在该历史事件数据库中的序列顺序,确定该事件序列的序列近期有效性参数值,并根据该事件序列的序列近期有效性参数值,确定该事件序列中的各事件在该事件序列中的事件近期有效性参数值;对任意一个事件,根据该事件在各事件序列中的事件价值参数值,确定该事件的事件价值参数总值,并根据该事件在各事件序列中的事件近期有效性参数值,确定该事件的事件近期有效性总值;根据各事件的事件价值参数总值和事件近期有效性总值,从各事件中确定热点事件。一种热点事件确定装置,包括:获取模块,用于获取历史事件数据库中的各事件序列,任意一个事件序列包括具有时间前后关系的各事件以及各事件的发生次数;价值确定模块,用于对任意一个事件序列,确定该事件序列中的各事件的事件价值参数值;还用于对任意一个事件,根据该事件在各事件序列中的事件价值参数值,确定该事件的事件价值参数总值;近期有效性确定模块,用于对任意一个事件序列,确定该事件序列的序列近期有效性参数值,并确定该事件序列中的各事件在该事件序列中的事件近期有效性参数值;还用于对任意一个事件,根据该事件在各事件序列中的事件近期有效性参数值,确定该事件的事件近期有效性总值;热点事件确定模块,用于根据各事件的事件价值参数总值和事件近期有效性总值,从各事件中确定热点事件。一种计算机设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上所述的方法的步骤。一种计算机存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如上所述的方法的步骤。基于如上所述的实施例的方案,其基于历史事件数据库中的具有时间前后关系的各事件以及各事件的发生次数的事件序列,通过确定事件序列中的各事件的事件价值参数值,并据此确定各事件的事件价值参数总值,并通过确定各事件序列的序列近期有效性参数值,据此确定各事件的事件近期有效性总值,从而基于各事件的事件价值参数总值和事件近期有效性总值确定出热点事件,从而通过基于时序特征的事件序列来对热点事件进行挖掘确定,突破了不能进行蕴含时序特征的热点事件预测的局限,提高了热点事件预测的准确性和性能。附图说明图1是一个本实施例方案的工作环境的示意图;图2是一个实施例的终端/服务器的组成结构的示意图;图3是一个实施例中的热点事件确定方法的流程示意图;图4是一个应用示例中插入第一个事件序列的序列树、反向索引表及查找表的示意图;图5是一个应用示例中插入第二个事件序列的序列树、反向索引表及查找表的示意图;图6是一个应用示例中插入第三个事件序列的序列树、反向索引表及查找表的示意图;图7是一个应用示例中插入第四个事件序列的序列树、反向索引表及查找表的示意图;图8是一个应用示例中插入第五个事件序列的序列树、反向索引表及查找表的示意图;图9是一个应用示例中压缩频繁子序列后的序列树的示意图;图10是一个应用示例中合并一个子序列分支之后的序列树的示意图;图11是一个应用示例中合并第二个子序列分支之后的序列树的示意图;图12是一个应用示例中合并第三个子序列分支之后的序列树的示意图;图13是一个应用示例中压缩频繁子序列并合并子序列分支后的序列树的示意图;图14是一个实施例中的热点事件确定装置的结构示意图。具体实施方式为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的较佳的实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的
技术领域
的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“或/及”包括一个或多个相关的所列项目的任意的和所有的组合。图1示出了本发明一个实施例中的工作环境示意图,如图1所示,其工作环境涉及终端/服务器101以及服务器102,终端/服务器101与服务器102之间可以通过网络进行通信。终端/服务器101可以从各服务器102获得各种历史已发生的事件的信息,并存于历史事件数据库中,该历史事件数据库可以设置在终端/服务器101上,或者是设置在终端/服务器101之外的数据库服务器上。终端/服务器101从服务器102获取的,可以是具有时间前后关系的各事件以及各事件的发生次数的事件序列,也可以是从服务器102获取已发生的各事件后,再形成具有时间前后关系的各事件以及各事件的发生次数的事件序列。本发明实施例涉及的是终端/服务器101挖掘确定出热点事件的方案。终端/服务器101在一个实施例中的组成结构示意图如图2所示,其包括通过系统总线连接的处理器、供电模块、存储介质、内存和通信接口。其中,该处理器用于提供计算和控制能力,支撑整个终端/服务器的运行。该存储介质存储有操作系统、数据库和一种热点事件确定装置的计算机应用程序,该热点事件确定装置被处理器执行时实现一种热点事件确定方法。该内存为存储介质中的计算机应用程序的运行提供环境,通信接口用于进行网络通信。本领域技术人员可以理解,图2中示出的结构,仅仅是与实施例方案相关的部分结构的框图,并不构成对本实施例方案所应用于其上的终端/服务器的限定,具体的终端/服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。图3示出了一个实施例中的热点事件确定方法的流程示意图,如图3所示,该实施例中的热点事件确定方法包括步骤s301至步骤s304。步骤s301:获取历史事件数据库中的各事件序列,任意一个事件序列包括具有时间前后关系的各事件以及各事件的发生次数。一个事件序列组成了一个完整的信息流,在一个事件序列中,包含有两个以上的事件,各事件在具体应用中也可以称之为项目,一个事件包含有具体的事件名称,同时可以携带有时间戳标识或者是用以表示时间先后顺序的标识(例如事件号),以标识一个事件序列中的各事件之间的前后关系。以事件号为例,可以设定为事件号更大的事件在事件号更小的事件之后发生。在历史事件数据库中,可以包含有多个事件序列,各事件序列也可以基于事件发生的先后顺序进行排序。在一个具体示例中,可以基于各事件序列中的第一个事件的发生时间来决定各事件序列的先后顺序。步骤s302:对任意一个事件序列,根据该事件序列中的各事件的发生次数,确定该事件序列中的各事件在该事件序列中的事件价值参数值;还根据该事件序列在该历史事件数据库中的序列顺序,确定该事件序列的序列近期有效性参数值,并根据该事件序列的序列近期有效性参数值,确定该事件序列中的各事件在该事件序列中的事件近期有效性参数值。这里的事件价值参数值,在一定程度上体现了事件的价值或者风险。一个示例中,确定任意一个事件序列中的事件在该事件序列中的事件价值参数值的方式可以是:根据该事件序列中的各事件的事件价值单位值,以及该事件序列中的各事件在该事件序列中的发生次数,确定各事件在该事件序列中的事件价值参数值。其中,事件价值单位值可以结合实际需要自定义设定。在一个应用示例中,可以是将事件的事件价值单位值与该事件在该事件序列中的发生次数的乘积,作为该事件在该事件序列中的事件价值参数值。这里的事件序列的序列近期有效性参数值,在一定程度上体现了事件序列的近期有效程度。一个示例中确定事件序列的序列近期有效性参数值时,可以根据时间衰减因子、历史事件数据库中的事件序列数目、以及该事件序列在该历史事件数据库中的序列顺序确定,从而得出与时间有关的近期有效值。该时间衰减因子可以是一个自定义的数值。在确定了事件序列的序列近期有效性参数值之后,可将该序列近期有效性参数值,作为该事件序列中的各事件在该事件序列中的事件近期有效性参数值。步骤s303:对任意一个事件,根据该事件在各事件序列中的事件价值参数值,确定该事件的事件价值参数总值,并根据该事件在各事件序列中的事件近期有效性参数值,确定该事件的事件近期有效性总值。在一个示例中,在确定事件的事件价值参数总值时,对任何一个事件而言,可以是将该事件在各事件序列中的事件价值参数值的和值,作为该事件的事件价值参数总值。在确定事件的事件近期有效性总值时,对任何一个事件而言,可以是将该事件在各事件序列中事件近期有效性参数值的和值,作为该事件的事件近期有效性总值。步骤s304:根据各事件的事件价值参数总值和事件近期有效性总值,从各事件中确定热点事件。在一个具体示例中,可以在事件的事件价值参数总值大于或者等于事件价值阈值、且该事件的事件近期有效性总值大于或者等于近期有效值阈值时,确定该事件为热点事件。基于如上所述的实施例的方案,其基于历史事件数据库中的具有时间前后关系的各事件以及各事件的发生次数的事件序列,通过确定事件序列中的各事件的事件价值参数值,并据此确定各事件的事件价值参数总值,并通过确定各事件序列的序列近期有效性参数值,据此确定各事件的事件近期有效性总值,从而基于各事件的事件价值参数总值和事件近期有效性总值确定出热点事件,从而通过基于时序特征的事件序列来对热点事件进行挖掘确定,突破了不能进行蕴含时序特征的热点事件预测的局限,提高了热点事件预测的准确性和性能。在一些技术场景中,对于两个或以上的事件序列而言,其可能会包含有相同的两个以上的事件,且这两个以上的事件在这些事件序列中的前后顺序相同,在此情况下,出于减少计算量的目的,可以针对这两个以上的事件作为一个整体来进行考虑。在一个实施例中,可将这两个以上的事件组成的整体组成的子序列,即包含该至少两个事件的子序列,称之为一个事件。此时,针对该事件(即该子序列)中的原本的事件称之为子事件,即在此情况下,这类事件为包含至少两个子事件的子序列。其中,这类事件(即子序列)的事件价值参数值为该子序列中的各子事件的事件价值参数值的和值。在一个实施例中,该子序列可以是历史事件数据库中、包含该子序列的事件序列的数目大于或者等于最低支持度阈值的子序列。即在包含两个以上的事件组成的整体的事件序列的数目大于或等于最低支持度阈值时,才将这个包含两个以上的事件的整体作为一个子序列(或者说一个整体的事件)来看待。在此情况下,在一个示例中,当上述确定的热点事件为子序列时,可以将所述子序列中时间在后的子事件确定为预测的将要发生的热点事件,即该子序列中时间在后的子事件被预测为将要发生的热点事件,从而同时实现了对未来的热点事件的预测。在一个应用示例中,在上述获取历史事件数据库中的各事件序列之后,还可以进一步生成事件序列树、反向索引表以及查找表。随后,可根据历史事件数据库中的各事件序列的序列顺序,对任何一个事件序列,执行下述过程:以事件作为节点,将各事件序列中的各事件的信息存储在所述序列树,事件的信息包括:事件所在节点的节点名称、事件所在节点的父节点、事件所在节点的子节点、事件的事件价值参数值以及事件近期有效性参数值;在反向索引表中添加事件序列的标识以及该事件序列中的各事件的索引信息;在查找表中添加事件序列的标识,并将该事件序列的标识指向该事件序列中的各事件在序列树中的最后一个节点。从而,基于序列树、反向索引表以及查找表的存储结构,可以用以存储事件序列的关键有用信息。其中,反向索引表可用以快速地找出给定事件所出现的相关序列,而查找表用以链接序列树和反向索引表,它指向序列树中的各个事件序列的最后一个树节点,其作用在于通过事件序列标识可以快速地从序列树中快速地检索出相关事件序列的集合在一个示例中,针对上述包含两个以上子事件的子序列,可以将该子序列作为一个树节点添加到序列树中。此时,在将各事件序列添加到序列树中之前,可对各事件序列进行分析,当出现某个子序列的所在的事件序列的数目(即包含该子序列的事件序列的数目)大于或等于最低支持度阈值时,可将该子序列作为一个新项(或者说新的事件、子序列事件等),作为一个节点添加到序列树中。从而可以据此减少序列树的节点数,以压缩序列树的存储空间。其中,在一个示例中,在事件序列中时间在前的第一个事件不是已有的序列树的根节点时,在序列树中创建该第一个事件的根节点。在一个示例中,还可以包括如下步骤:识别所述序列树中只有一个叶子节点的分支,并将各只有一个叶子节点的分支分别合并表示为一个树节点。从而针对只有一个叶子节点的分支,可以将其合并为一个树节点在序列树中进行表示,从而可以减少序列树的节点数,压缩序列树的存储空间。基于如上所述的实施例,以下结合其中一个具体的应用示例进行举例说明。涉及时效性的时序特征成为网络事件发展中需要应用的一个重要特征,例如日常生活中的互联网爆发的热点事件,其先后发生顺序隐藏着极其重要的有用价值信息。大部分数据属于序列模型,它们本身具有一定连续性,因此一个能刻画时序特征的模型是实现数据内容理解的重要基础。而且,对于不同的热点事件,其内在的蕴含着的价值(价值、风险值、权重、兴趣度等)各不相同,本发明的具体示例,结合历史事件发生的时序特征、演化趋势和频率特性,探测确定热点事件,并在此基础上可预测未来可能发生的网络热点事件,进而可以达到资讯推荐以及用户跟踪的目的。在该具体应用示例中,首先需要从历史事件数据库中获得各事件序列,该历史事件数据库是一个时序性的数据库,数据库中存储的数据具有时序性。一个具体应用示例中的历史事件数据库存储的内容可如下表1所示。下表1所示中,示出的是数据库中原始存储的内容的示例。出于简要说明的目的,表1中仅示出了数据库中的5条事件序列。表1:时序型的历史事件数据库(原始)将表1中的事件(项目)“深圳山体滑坡”用字母代号a表示、“首位幸存者获救”用字母代号b表示、“遇难者默哀活动”用字母代号c表示、“深涉案嫌疑人”用字母代号d表示、“第二届世界互联网大会”用字母代号a表示,则表1可转换为下表2所示。表2序列事件(项目):发生次数s1{a}:3,{b}:6,{c}:2s2{a}:1,{b}:3s3{a}:9,{b}:3,{d}:8,{c}:5s4{b}:4,{c}:2s5{e}:3,{a}:2,{b}:3,{a}:1上表1、表2中,序列表示一个事件序列,一个事件序列是一个完整的信息流。其中,s1、s2、s3、s4、s5为各事件序列的标识,且s1、s2、s3、s4、s5之间可以按一定的规则排序,例如按时间排序(如基于s1、s2、s3、s4、s5中的第一个事件的发生事件的排序)。上述事件(项目)是事件序列中最小组成单位,对于一个事件序列而言,其由多个事件组成,而且这多个事件是有序的,如表2中的事件序列s1中的事件(项目)包括有{a,b,c}。其中,事件可以用或者结合时间戳来标识,或者可以是用以表示时间先后顺序的标识(例如事件号eventid),以标识一个事件序列中的各事件之间的前后关系。以事件号eventid为例,可以认为事件号eventid更大的事件在eventid更小的事件之后发生。在上述表2中,还包含有各事件的发生次数的信息,如表2中的事件序列s1中,事件a发生了3次,事件b发生了6次,事件c发生了2次。基于上述内容可以确定,本示例中的历史事件数据库包含有多个序列(即事件序列),每个事件序列由多个事件event组成,且每个事件序列中的多个事件是时间有序的,因此,本示例的历史事件数据库为序列数据库。在获得历史事件数据库中的各事件序列之后,即可确定各事件序列中的各事件在各事件序列中的事件价值参数值,即各事件序列中的各事件的价值。为了确定事件序列中的各事件中的事件价值参数值,需要先获得各事件的单位价值(事件价值单位值)。结合表2所示,一个应用示例中的各事件的单位价值(事件价值单位值)如下表3所示:表3:事件的单位价值表事件abcde单位价值612193如上表3所示,该表中记录了时序性的历史事件数据库中各事件对应的单位价值(事件价值单位值),其与事件序列无关,一个事件的单位价值一经确定后,尽管是出现在不同的事件序列中,其单位价值也不会改变,因此也可以称之为单位外部价值,是外部价值或风险的一种表现形式,表示的是发生某一件事件相对应的单位价值(或风险),如图3所示中,事件a发生一次的单位价值为6;事件b发生一次的单位价值为12;事件c、d、e发生一次的单位价值分别为1、9、3。基于各事件的单位价值(事件价值单位值),以及当前事件序列中的事件在该事件序列中的发生次数,可确定该事件在该事件序列中的事件价值参数值,该事件价值参数值具体可以为该事件的事件价值参数值与该事件在该事件序列中的发生次数的乘积。结合表2、表3所示,事件a在事件序列s1中的事件价值参数值(事件a在事件序列s1中的价值)为:6(事件a的单位价值)×3(事件a在序列s1中的发生次数=18)。其他的各事件在事件序列中的事件价值参数值可参考同样的方式进行处理。在一个示例中,在获得各事件在各事件序列中的事件价值参数值(价值)之后,可进一步根据各事件在事件序列中的事件价值参数值,确定各事件序列的序列价值参数值,然后根据各事件序列的序列价值参数值,确定该历史事件数据库的价值参数总值。其中,在根据各事件在该事件序列中的事件价值参数值,确定该事件序列的序列价值参数值时,可以将该事件序列中的各事件在该事件序列中的事件价值参数值的和值,作为该事件序列的序列价值参数值。序列价值参数值体现了事件序列的价值或者风险。结合表2、表3所示,事件序列s2包含事件a和b,事件序列s5包含事件e、a和b,则事件序列s2的序列价值参数值(序列s2的价值)为:事件a在序列s2中的价值(事件价值参数值)6×1+事件b在序列s2中的价值(事件价值参数值)12×3=42。类似地,事件序列s5的序列价值参数值(序列s5的价值)为3×3+2×6+3×12+1×6=63。而在根据各事件序列的事件价值参数值,确定该历史事件数据库的价值参数总值时,可以将历史事件数据库中的各事件序列的事件价值参数值的和值,作为历史事件数据库的价值参数总值。结合表2、表3所示,包含序列s1至s5的数据库的价值参数总值(总价值)为:92+42+167+50+63=414。另一方面,在一个示例中,在获得各事件在各事件序列中的事件价值参数值(价值)之后,可以确定获得各事件的事件价值参数总值。对于任何一个事件而言,可以是将该事件在各事件序列中的事件价值参数值的和值,作为该事件的事件价值参数总值。结合表2所示,则由于事件c在事件序列s1、s3、s4中出现,则事件c的事件价值参数总值为:事件c在序列s1中的事件价值参数值+事件c在序列s3中的事件价值参数值+事件c在序列s4中的事件价值参数值。随后,确定各事件序列的序列近期有效性参数值,该序列近期有效性参数值在一定程度上体现了事件序列的近期有效程度。一个示例中确定事件序列的近期有效性参数值时,可以根据时间衰减因子、历史事件数据库中的事件序列数目、以及该事件序列在该历史事件数据库中的序列顺序确定,从而得出与时间有关的有效值,用以表示该事件序列的近期有效性。该时间衰减因子可以是一个自定义的数值。一个具体应用示例中确定事件序列的序列近期有效性参数值可以采用下述公式进行:其中,scurrent表示历史事件数据库中的事件序列数目,sq表示该事件序列在该历史事件数据库中的序列顺序,δ表示自定义的时间衰减因子,取值区间为δ∈(0,1]。假设将δ设置为0.1,且表2所示的历史事件数据库总共包括有10条事件序列,那么,事件序列s1的序列近期有效性参数值为r(s1)=(1–0.1)(10-1)=0.3874,事件序列s2的序列近期有效性参数值为r(s2)=(1–0.1)(10-2)=0.4305。在确定了事件序列的序列近期有效性参数值之后,可将该事件序列的序列近期有效性参数值,作为该事件序列中的各事件在该事件序列中的事件近期有效性参数值。在确定了各事件在各事件序列的事件近期有效性参数值之后,可确定各事件的事件近期有效性总值,该事件近期有效性总值具体可以是该事件在各事件序列中事件近期有效性参数值的和值。在确定各事件的事件价值参数总值和事件近期有效性总值之后,即可确定该事件是否为热点事件。一个示例中,从各事件中确定热点事件时,可以在事件的事件价值参数总值大于或者等于事件价值阈值(也可称为最低价值阈值)、且该事件的事件近期有效性总值大于或者等于近期有效值阈值时(也可称为最低近期有效阈值)时,确定该事件为热点事件。即当事件的事件价值参数总值大于或者等于事件价值阈值、且该事件的事件近期有效性总值大于或者等于近期有效值阈值时,该事件可被称为近期有效的高价值事件,并可将其判定为是热点事件。该事件价值阈值、近期有效值阈值可以进行自定义设定。在上述方案的执行过程中,可对其做进一步的优化,对于历史事件数据库中的频繁子序列,可将该频繁子序列整体作为一个事件,完成上述过程。在本实施例的方案中,对于序列x和序列y,如果存在着一个顺序的映射,使得x中的每个事件都被包含于y中的某个事件,则称为x被包含于y,x是y的子序列,例如序列d->a是序列d->ab->a的子序列。将整个序列集中包含序列s的序列的数目记为序列s的支持度,则如果有一个序列s,它是数据集d的某序列的子序列,则其支持度为:support(s)=序列s在数据集d的n个序列中出现的次数。在此情况下,通过设置最低支持度阈值min_support,则当某个序列s的支持度support(s)大于或者等于最低支持度阈值min_support时,可以将该序列s称为频繁序列,或者称为序列模式。序列模式的作用在于,假设得到了<{深圳山体滑坡},{首位幸存者获救}>这样的序列模式(尖括号表示它里面的元素是有序的,前一个在后一个之前发生),那么就可以认为,如果发生事件{深圳山体滑坡},则之后极有可能发生事件{首位幸存者获救}。据此,在该具体示例方案中,在获得历史事件数据库中的事件序列之后,可对历史事件数据进行分析,确定出数据库中是否存在支持度达到最低支持度阈值的子序列,并将该子序列作为一个事件整体进行分析。其中,针对子序列而言,该子序列在其所属的某个事件序列中的价值(事件价值参数值)为:该子序列中的各事件在该事件序列中的价值的和值,该和值可以为加和。结合表2、表3所示,仅包含事件b、c的子序列bc在事件序列s3中的价值为:事件b在序列s3中的价值12×3+事件c在序列s3中的价值1×5=41。在获得子序列在其所属(或者包含它)的各个事件序列中的价值之后,对该子序列在包含它的所有事件序列中的价值求和,从而获得该子序列在数据库中的总价值,即该子序列的事件价值参数总值。另一方面,针对子序列,还可以计算出该子序列在包含它的事件序列中的近期有效值(即该子序列在该事件序列中的事件近期有效性参数值),在具体示例中,子序列在该事件序列中的近期有效值,可等于该事件序列的近期有效值(即该事件序列的序列近期有效性参数值)。对该子序列在其出现的各事件序列中的近期有效值加总求和,从而可以获得该子序列在数据库中的近期有效值(即该子序列的事件近期有效性总值)。在确定各子序列在数据库中的总价值(即子序列的事件价值参数总值)和在数据库中的近期有效值(即子序列的事件近期有效性总值)之后,即可将该子序列结合其他时间分析热点事件。一个示例中,可以在子序列在数据库中的总价值大于或者等于事件价值阈值(也可称为最低价值阈值)、且该子序列在数据库中的近期有效值大于或者等于近期有效值阈值时(也可称为最低近期有效阈值),确定该事件为热点事件,确定该子序列为近期有效的高价值子序列。同时还可以将子序列中时间在后的子事件确定为预测的将要发生的热点事件,即该子序列中事件在后的子事件被预测为将要发生的热点事件,从而同时实现了对未来的热点事件的预测。该事件价值阈值、近期有效值阈值可以进行自定义设定。在一个具体示例中,还可以进一步生成事件序列树、反向索引表以及查找表。随后,可根据历史事件数据库中的各事件序列的序列顺序,对任何一个事件序列,执行下述过程:以事件作为节点,将各事件序列中的各事件的信息存储在所述序列树,事件的信息包括:事件所在节点的节点名称、事件所在节点的父节点、事件所在节点的子节点、事件的事件价值参数值以及事件近期有效性参数值;在反向索引表中添加事件序列的标识以及该事件序列中的各事件的索引信息;在查找表中添加事件序列的标识,并将该事件序列的标识指向该事件序列中的各事件在序列树中的最后一个节点。结合表2、表3所示的示意图为例,假设表2对应的数据库实际包含10条事件序列,在插入第一个事件序列s1<a,b,c>之后的序列树、反向索引表及查找表的示意图如图4所示,图4所示中,a:18,0.3874表示事件a在序列s1中的价值(事件价值参数值),0.3874表示序列s1的近期有效值,也即插入序列s1后的事件a的近期有效值。紧接着,插入第二个事件序列s2<a,b>之后的序列树、反向索引表及查找表的示意图如图5所示,图5所示中,节点a、b的价值和近期有效值由于叠加了在时间序列s2中的数据,从而发生了变化。类似地,插入第三个事件序列s3<a,b,d,c>之后的序列树、反向索引表及查找表的示意图如图6所示,插入第四个事件序列s4<b,c>之后的序列树、反向索引表及查找表的示意图如图7所示。如图7所示,在插入s4<b,c>时,由于已存在的事件b的节点不是序列树的根节点,从而需要在序列树中创建一个事件b的根节点。类似地,插入第五个事件序列s5<e,a,b,a>之后的序列树、反向索引表及查找表的示意图如图8所示。参考图8中所示的初始建立的序列树,可以发现序列树中事件序列s1、s2、s3、s5具有共同的子序列<a,b>,假设最低支持度阈值为3,该子序列为频繁子序列,假设最低价值阈值为150,则该子序列为高价值子序列。在此情况下,可以对该子序列<a,b>进行压缩,以节省序列树的存储空间。在其中一个示例中,可以在基于数据库中的事件序列分析识别出子序列<a,b>为频繁子序列时,则在集合中生成对应的新项,并在插入每一个事件序列时,在涉及到该子序列<a,b>时,都用该对应的新项来替代。假设将该子序列<a,b>用新项x来替代,则压缩了频繁子序列<a,b>后的序列树的示意图如图9所示。对比图8与图9可见,原本初始构建的序列树需要11个节点,但经过上述为频繁子序列生成新项来替代之后,只需要9个节点,从而节约了序列树的存储空间。另一方面,参考图8中所示的初始建立的序列树,可以发现,初始生成的序列树中包含有只有一个叶子节点的分支,这种只有一个叶子节点的分支,会占用较多的节点存储的空间,因此,在一个示例中,还可以进一步对这类分支进行合并,即将只有一个叶子节点的分支合并表示为一个树节点,从而减少序列树的节点数。针对图8中所示的初始建立的序列树,在识别出序列树中的只有一个叶子节点的子序列分支后,假设子序列分支<d,c>合并后记为dc,合并子序列分支<d,c>之后的序列树的示意图如图10所示。类似地,假设子序列分支<b,c>合并后记为bc,合并子序列分支<b,c>之后的序列树的示意图如图11所示。假设子序列分支<e,a,b,a>合并后记为eaba,合并子序列分支<e,a,b,a>之后的序列树的示意图如图12所示。对比图8与图12可见,原本初始构建的序列树需要11个节点,但经过上述合并3个子序列分支之后,只需要6个节点,从而节约了序列树的存储空间。其中,在另一个示例中,上述压缩频繁子序列、为频繁子序列生成新项的压缩方式,以及针对只有一个叶子节点的子序列分支进行合并的压缩方式,可以同时进行。针对图8中所示的初始建立的序列树,一个应用示例中压缩频繁子序列并合并子序列分支后的序列树的示意图如图13所示,对比图8与图13可见,原本初始构建的序列树需要11个节点,但经过同时采用上述两种压缩方式进行压缩之后,只需要5个节点,最大程度地节约了序列树的存储空间。基于与上述方法相同的思想,一个示例中还提供一种热点事件确定装置。图14示出了一个示例中的热点事件确定装置的结构示意图。如图14所示,该示例中的热点事件确定装置包括:获取模块1401、价值确定模块1402、近期有效性确定模块1403以及热点事件确定模块1404。其中,获取模块1401,用于获取历史事件数据库中的各事件序列,任意一个事件序列包括具有时间前后关系的各事件以及各事件的发生次数;一个事件序列组成了一个完整的信息流,在一个事件序列中,包含有两个以上的事件,各事件在具体应用中也可以称之为项目,一个事件包含有具体的事件名称,同时可以携带有时间戳标识或者是用以表示时间先后顺序的标识(例如事件号),以标识一个事件序列中的各事件之间的前后关系。以事件号为例,可以设定为事件号更大的事件在事件号更小的事件之后发生。在历史事件数据库中,可以包含有多个事件序列,各事件序列也可以基于事件发生的先后顺序进行排序。在一个具体示例中,可以基于各事件序列中的第一个事件的发生时间来决定各事件序列的先后顺序。价值确定模块1402,用于对任意一个事件序列,根据该事件序列中的各事件的发生次数,确定该事件序列中的各事件在该事件序列中的事件价值参数值;还用于对任意一个事件,根据该事件在各事件序列中的事件价值参数值,确定该事件的事件价值参数总值。这里的事件价值参数值,在一定程度上体现了事件的价值或者风险。一个示例中,确定任意一个事件序列中的事件的事件价值参数值的方式可以是:根据该事件序列中的各事件的事件价值单位值,以及该事件序列中的各事件在该事件序列中的发生次数,确定各事件在该事件序列中的事件价值参数值。其中,事件价值单位值可以结合实际需要自定义设定。在一个应用示例中,可以是将事件的事件价值单位值与该事件在该事件序列中的发生次数的乘积,作为该事件在该事件序列中的事件价值参数值。这里的事件序列的近期有效性参数值,在一定程度上体现了事件序列的近期有效程度。一个示例中确定事件序列的近期有效性参数值时,可以根据时间衰减因子、历史事件数据库中的事件序列数目、以及该事件序列在该历史事件数据库中的序列顺序确定,从而得出与时间有关的有效值。该时间衰减因子可以是一个自定义的数值。在确定了事件序列的近期有效性参数值之后,可将该近期有效性参数值,作为该事件序列中的各事件在该事件序列中的事件近期有效性参数值。近期有效性确定模块1403,用于对任意一个事件序列,根据该事件序列在该历史事件数据库中的序列顺序,确定该事件序列的近期有效性参数值,并根据该事件序列的序列近期有效性参数值,确定该事件序列中的各事件在该事件序列中的事件近期有效性参数值;还用于对任意一个事件,根据该事件在各事件序列中的事件近期有效性参数值,确定该事件的事件近期有效性总值。在一个示例中,在确定事件的事件价值参数总值时,对任何一个事件而言,可以是将该事件在各事件序列中的事件价值参数值的和值,作为该事件的事件价值参数总值。在确定事件的事件近期有效性总值时,对任何一个事件而言,可以是将该事件在各事件序列中事件近期有效性参数值的和值,作为该事件的事件近期有效性总值。热点事件确定模块1404,用于根据各事件的事件价值参数总值和事件近期有效性总值,从各事件中确定热点事件。在一个具体示例中,可以在事件的事件价值参数总值大于或者等于事件价值阈值、且该事件的事件近期有效性总值大于或者等于近期有效值阈值时,确定该事件为热点事件。在一些技术场景中,对于两个或以上的事件序列而言,其可能会包含有相同的两个以上的事件,且这两个以上的事件在这些事件序列中的前后顺序相同,在此情况下,出于减少计算量的目的,可以针对这两个以上的事件作为一个整体来进行考虑。在一个实施例中,可将这两个以上的事件组成的整体组成的子序列,即包含该至少两个事件的子序列,称之为一个事件。此时,针对该事件(即该子序列)中的原本的事件称之为子事件,即在此情况下,这类事件为包含至少两个子事件的子序列。其中,这类事件(即子序列)的事件价值参数值为该子序列中的各子事件的事件价值参数值的和值。在一个实施例中,该子序列可以是历史事件数据库中、包含该子序列的事件序列的数目大于或者等于最低支持度阈值的子序列。即在包含两个以上的事件组成的整体的事件序列的数目大于或等于最低支持度阈值时,才将这个包含两个以上的事件的整体作为一个子序列(或者说一个整体的事件)来看待。在此情况下,在一个示例中,热点事件确定模块1404在确定的热点事件为子序列时,可以将所述子序列中时间在后的子事件确定为预测的将要发生的热点事件,即该子序列中时间在后的子事件被预测为将要发生的热点事件,从而同时实现了对未来的热点事件的预测。在一个示例中,如图14所示,该装置还可以包括:序列树处理模块1405,用于生成事件序列树,并根据历史事件数据库中的各事件序列的序列顺序,对任何一个事件序列,以事件作为节点,将各事件序列中的各事件的信息存储在所述序列树,事件的信息包括:事件所在节点的节点名称、事件所在节点的父节点、事件所在节点的子节点、事件的事件价值参数值以及事件近期有效性参数值;反向索引表处理模块1406,用于生成反向索引表,并根据历史事件数据库中的各事件序列的序列顺序,对任何一个事件序列,在反向索引表中添加事件序列的标识以及该事件序列中的各事件的索引信息;查找表处理模块1407,用于生成查找表,并根据历史事件数据库中的各事件序列的序列顺序,对任何一个事件序列,在查找表中添加事件序列的标识,并将该事件序列的标识指向该事件序列中的各事件在序列树中的最后一个节点。从而,基于序列树、反向索引表以及查找表的存储结构,可以用以存储事件序列的关键有用信息。其中,反向索引表可用以快速地找出给定事件所出现的相关序列,而查找表用以链接序列树和反向索引表,它指向序列树中的各个事件序列的最后一个树节点,其作用在于通过事件序列标识可以快速地从序列树中快速地检索出相关事件序列的集合。在一个示例中,该序列树处理模块1405,还在事件序列中时间在前的第一个事件不是已有的序列树的根节点时,在序列树中创建该第一个事件的根节点。如图14所示,一个示例中的热点事件确定装置还可以包括:分支合并模块1408,用于识别所述序列树中只有一个叶子节点的分支,并将各只有一个叶子节点的分支分别合并表示为一个树节点。基于如上所述的示例,在一个实施例中还提供一种计算机设备,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行所述程序时实现如上述各实施例中的任意一种热点事件确定方法。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性的计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机系统的存储介质中,并被该计算机系统中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。据此,在一个实施例中还提供一种存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如上述各实施例中的任意一种热点事件确定方法。以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1