CN112182071B - 数据关联关系挖掘方法、装置、电子设备及存储介质 - Google Patents

数据关联关系挖掘方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN112182071B
CN112182071B CN202011384577.9A CN202011384577A CN112182071B CN 112182071 B CN112182071 B CN 112182071B CN 202011384577 A CN202011384577 A CN 202011384577A CN 112182071 B CN112182071 B CN 112182071B
Authority
CN
China
Prior art keywords
item
item set
association
items
database
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202011384577.9A
Other languages
English (en)
Other versions
CN112182071A (zh
Inventor
李玮巍
曾文佳
宋成业
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lingxi Beijing Technology Co Ltd
Original Assignee
Lingxi Beijing Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lingxi Beijing Technology Co Ltd filed Critical Lingxi Beijing Technology Co Ltd
Priority to CN202011384577.9A priority Critical patent/CN112182071B/zh
Publication of CN112182071A publication Critical patent/CN112182071A/zh
Application granted granted Critical
Publication of CN112182071B publication Critical patent/CN112182071B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24558Binary matching operations
    • G06F16/2456Join operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Fuzzy Systems (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本申请提供一种数据关联关系挖掘方法、装置、电子设备及存储介质,涉及数据处理技术领域。该方法包括:获取事务数据库中记录的多个事务,每个事务包括至少一个项;获取需挖掘关联关系的第一项集与第二项集;通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据;根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系。该方案利用数据库本身所具有的集合运算的功能来获取表征两个项集之间的关联程度的指标数据,无需采用额外的资源来维护项集结构,而是可以直接采用数据库的集合运算来获取相关的指标数据,进而挖掘出两个项集之间的关联关系,效率更高。

Description

数据关联关系挖掘方法、装置、电子设备及存储介质
技术领域
本申请涉及数据处理技术领域,具体而言,涉及一种数据关联关系挖掘方法、装置、电子设备及存储介质。
背景技术
随着现代网络技术的发展,数据成指数增长,对海量数据进行必要的挖掘和处理,为用户提供有价值的信息,以此指导用户做出相应的技术决策和经营管理显得尤为重要。关联分析通常用来描述数据中强关联特征的模式,即发现隐藏在大型数据集中的因果联系,其应用包括在生物医学领域找出具有相关功能的基因组、在网页挖掘中识别用户一起访问的网页、在地球科学中理解地球气候系统不同元素之间的因果联系、在购物数据中挖掘用户的购物习惯等。
目前进行关联分析的方法有Apriori和FP-Growth,这两种方法均是将事务数据库中的数据遍历,然后在数据结构中维护一个包含所有可能的项的集合,如Apriori生成关于项集的格结构,FP-Growth生成关于项集的树结构。然而这两种方法增加新的数据后无法直接使用原有的数据结构,而是需要重新遍历所有的数据,再生成一个新的项集结构,所以,难以通过并行计算来提供计算效率,故而这种方式效率很低。
发明内容
本申请实施例的目的在于提供一种数据关联关系挖掘方法、装置、电子设备及存储介质,用以改善现有技术中关联规则挖掘效率低的问题。
第一方面,本申请实施例提供了一种数据关联关系挖掘方法,所述方法包括:获取事务数据库中记录的多个事务,每个事务包括至少一个项;获取需挖掘关联关系的第一项集与第二项集,所述第一项集与所述第二项集包括至少一个项;通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据;根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系。
在上述实现过程中,利用数据库本身所具有的集合运算的功能来获取表征两个项集之间的关联程度的指标数据,无需采用额外的资源来维护项集结构,而是可以直接采用数据库的集合运算来获取相关的指标数据,即可通过并行运算获得指标数据,进而挖掘出两个项集之间的关联关系,效率更高。
可选地,所述指标数据包括支持度,所述通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据,包括:
通过数据库的集合运算获取所述第一项集与所述第二项集的并集;
从所述事务数据库中查询获得所述并集在所述多个事务中的出现次数;
基于所述出现次数获取表征所述第一项集与所述第二项集的关联程度的支持度。
在上述实现过程中,通过从数据库中查询并集在多个事务中出现的次数,以及通过集合运算快速获得两个项集之间的并集,从而可快速计算出对应的支持度。
可选地,所述指标数据包括置信度,所述数据库的通过集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据,包括:
通过数据库的集合运算获取所述第一项集与所述第二项集的并集;
从所述事务数据库中查询所述并集在所述多个事务中的出现次数以及所述第一项集在所述多个事务中的出现次数;
基于所述并集在所述多个事务中的出现次数以及所述第一项集在所述多个事务中的出现次数,获取表征所述第一项集与所述第二项集的关联程度的置信度。
在上述实现过程中,利用数据库的集合运算可快速实现两个项集的并集运算,从而可直接快速计算出对应的置信度。
可选地,所述指标数据包括提升度,所述通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据,包括:
通过数据库的集合运算获取所述第一项集与所述第二项集的并集;
从所述事务数据库中查询所述并集在所述多个事务中的出现次数、所述第一项集在所述多个事务中的出现次数以及所述第二项集在所述多个事务中的出现次数;
基于所述并集在所述多个事务中的出现次数、所述第一项集在所述多个事务中的出现次数以及所述第二项集在所述多个事务中的出现次数,获取表征所述第一项集与所述第二项集的关联程度的提升度。
在上述实现过程中,利用数据库的集合运算可快速实现两个项集的并集运算,并且通过查找数据库,可快速获得并集在多个事务中的出现次数,从而可快速计算出相应的提升度。
可选地,所述指标数据还包括皮尔森相关系数、IS度量、PS兴趣度、GO兴趣度中的至少一种,通过更多的指标数据来对项集之间的关联程度进行限制,这样可获得项集之间更准确的关联关系。
可选地,所述根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系,包括:
在所述指标数据大于对应的阈值时,确定所述第一项集与第二项集之间的关联关系为强关联关系。
可选地,所述方法还包括:
通过数据库的集合运算获取所述第一项集的补集;
通过数据库的集合运算获取所述补集与所述第二项集之间的关联程度的指标数据;
根据所述补集与所述第二项集之间的关联程度的指标数据分析所述补集与所述第二项集之间的关联关系。
在上述实现过程中,利用集合运算可便于获取第一项集的补集,这样可便于考察第一项集中没有出现的项对第二项集的影响。
可选地,采用分布式数据库存储所述多个事务,这样在进行指标数据计算时,可并行计算,效率更高。
可选地,所述第一项集包括多个,所述方法还包括:
通过数据库的集合运算获取多个第一项集之间的交集和/或差集;
通过数据库的集合运算获取表征所述交集与所述第二项集之间的关联程度的指标数据;和/或通过数据库的集合运算获取表征所述差集与所述第二项集之间的关联程度的指标数据。
在上述实现过程中,通过集合运算可便于获取多个第一项集的交集和/或差集,从而便于考察多个第一项集的相互作用对第二项集的影响。
第二方面,本申请实施例提供了一种数据关联关系挖掘装置,所述装置包括:
事务数据获取模块,用于获取事务数据库中记录的多个事务,每个事务包括至少一个项;
项集获取模块,用于获取需挖掘关联关系的第一项集与第二项集,所述第一项集与所述第二项集包括至少一个项;
指标数据计算模块,用于通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据;
分析模块,用于根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系。
第三方面,本申请实施例提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。
第四方面,本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种数据关联关系挖掘方法的流程图;
图2为本申请实施例提供的一种数据关联关系挖掘装置的结构框图;
图3为本申请实施例提供的一种用于执行数据关联关系挖掘方法的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述。
为了便于对本申请的理解,下面先对本申请中涉及到的一些概念进行介绍。
项与项集:设itemset={item1, item_2, …, item_m}是所有项的集合,其中,item_k(k=1,2,…,m)称为项。项的集合称为项集(itemset),包含k个项的项集称为k项集(k-itemset)。
事务与事务集:一个事务T是一个项集,它是itemset的一个子集,每个事务均与一个唯一标识符Tid相联系。不同的事务一起组成了事务集D,它构成了关联规则发现的事务数据库。
关联规则:用来发现对象之间的联系,例如,发现超市交易数据中不同商品之间的联系。关联规则是形如X→Y的蕴涵式,其中,X和Y分别称为关联规则的先导和后继。
支持度:关联规则X→Y的支持度记为Supp(X→Y),表示项集X和Y在事务集D中出现的频次占比。
置信度:也可称为可信度,关联规则X→Y的置信度可记作conf(X→Y),是项集X和Y在事务集D中出现次数与项集X在D中出现次数的比值。
强关联规则:用来表示有价值的关联规则。
项集的出现频度:指包含项集的事务数,简称为项集的频度、支持度计数或计数。
下述表1为事务数据库中存储的事务的一个示例。
表1
单据编号 商品
1 {牛奶、大米}
2 {啤酒、尿布、鸡蛋、大米}
3 {啤酒、可乐、尿布、牛奶}
4 {啤酒、尿布、牛奶、大米}
5 {可乐、尿布、牛奶、大米}
表中的每一行记录代表一个事务,每个商品可称为一个项,各个商品的多种组合可称为项集。各个项集之间可生成相应的关联规则,如对于关联规则{啤酒,可乐}→{鸡蛋}其隐含的意思为用户在购买啤酒和可乐的情况下是否会同时购买鸡蛋的概率,若概率较大,则称该关联规则为强关联规则,表示很大可能用户在购买啤酒和可乐的同时也会一并购买鸡蛋。本申请实施例提供的方法可用于挖掘这样的关联关系,从而可为超市做交叉销售、安排货架空间及个性化营销、库存管理等提供数据支持。
当然,在其他应用场景下,项和项集不同,其关联规则的先导和后继也不同。例如,在通信领域,为了考察哪些传输设备的开启会影响终端接收数据的速率,这种情况下,构建的关联规则中先导的项集为传输设备,后继的项集为速率,表示在哪些传输设备开启的情况下会出现对应的速率的概率,这样可从海量数据中分析出这种关联关系,可为后续进行传输设备的布设提供一定的数据参考。
所以,需要理解的是,本申请实施例提供的方法可适用于任何需要挖掘关联关系的应用场景,为了便于理解,下述实施例均以购物场景为例进行说明。
请参照图1,图1为本申请实施例提供的一种数据关联关系挖掘方法的流程图,包括如下步骤:
步骤S110:获取事务数据库中记录的多个事务。
以购物场景为例,每个订单可以称为一个事务,每个订单中的商品称为项,所以,每个事务包括至少一个项,多个事务组成的集合称为事务集,这些事务集即构成事务数据库。
在一些实施方式中,事务数据库可存储在云端,当然也可存储在电子设备中。若事务数据库存储在云端,则电子设备可从云端读取事务数据库中的各个事务,若是事务数据库存储在电子设备中,则电子设备可直接读取多个事务。或者,在进行分析时,该事务数据库中记录的多个事务也可以是用户输入电子设备中的。
步骤S120:获取需挖掘关联关系的第一项集和第二项集。
第一项集和第二项集为需要进行关联关系分析所涉及的两个项集,且第一项集和第二项集均包括至少一个项。如上述表1所示,各个商品的一种组合均可生成一个项集,所以,第一项集和第二项集可以是指所有项集中任意两个项集,如第一项集为{啤酒,尿布},第二项集为{鸡蛋,牛奶},此时生成的关联规则即为{啤酒,尿布}→{鸡蛋,牛奶}。
在一些实施方式中,用户可以自己指定第一项集和第二项集,即用户想要知晓第一项集和第二项集之间的关联关系,则用户可在电子设备提供的输入界面上输入或选择第一项集中的各个项以及第二项集中的各个项,从而电子设备可获得用户输入或选择的第一项集或第二项集。
例如,电子设备在获得多个事务后,可从多个事务中提取各个项,然后将各个项进行组合生成多个项集,多个项集可输出给用户以供用户选择,这样用户可便于直接从多个项集中选择第一项集和第二项集。
或者,第一项集和第二项集也可以是指电子设备生成的多个项集中的其中两个不相交的项集,这里可以利用数据库对各个项集进行交集运算,然后筛选出不相交的项集,这些项集组成第一项集和第二项集。这种情况下,第一项集可以为多个,第二项集也可以为多个,但是针对每组关联关系中涉及的第一项集和第二项集均可按照本申请实施例提供的方法进行关联关系的分析。
在上述提到对象之间的联系可采用关联规则X→Y来表示,所以这里第一项集与第二项集之间的关联关系也可以采用关联规则(第一项集→第二项集)来表示。若上述第一项集或第二项集包含不为空的子项集时,则其子项集也可生成多个对应的关联规则。
另外,为了避免生成的关联规则过多造成计算量较大的问题,还可以先获取每个项集的出现频度,即每个项集在多个事务中的出现次数,然后可筛选出出现次数大于预设次数的项集,然后利用这些项集来构建关联规则,这样可先筛选掉一些项集,在后续生成关联规则时可相应减少计算量。
这里需要强调的是,本申请通过集合运算来生成关联规则,这种方式利用了数据库的集合运算特性,不需要专门构建项集的数据结构,从而可有效提高后续指标数据计算的效率。
步骤S130:通过数据库的集合运算获取表征所述第一项集和所述第二项集之间的关联程度的指标数据。
集合运算是指交集、并集、差集等运算,由于数据库支持集合运算,所以,在计算第一项集和第二项集之间的关联程度时,可以直接利用数据库的集合运算快速计算出相应的指标数据。
指标数据是指用于评估第一项集和第二项集之间的关联程度的数据,如指标数据越大,第一项集与第二项集之间的关联程度越大,表示在第一项集出现时第二项集出现的概率较大。
在一些实施方式中,指标数据通常有支持度、置信度、提升度等其他兴趣度等,下述实施例会对各个指标数据的计算过程分别进行介绍。
步骤S140:根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系。
在利用数据库的集合运算快速获得相应的指标数据后,可基于指标数据分析第一项集和第二项集之间的关联关系。如在一些实施方式中,在指标数据大于对应的阈值时,确定第一项集与第二项集为强关联关系,也就是说该第一项集和第二项集构成的关联规则为强关联规则,表示在第一项集出现的时候出现第二项集的概率较大。当然,在指标数据小于或等于相应的阈值时,确定第一项集与第二项集为弱关联关系,即表示第一项集出现的时候第二项集出现的概率较小。
其中,阈值的取值可以根据实际需求灵活取值,在此不特别限定。
在上述实现过程中,利用数据库本身所具有的集合运算的功能来获取表征两个项集之间的关联程度的指标数据,无需采用额外的资源来维护项集结构,而是可以直接采用数据库的集合运算来获取相关的指标数据,即可通过并行运算获得指标数据,进而挖掘出两个项集之间的关联关系,效率更高。
在关联分析领域,支持度可用于评价两个项集在事务中出现的频次占比,若占比较高,则认为两个项集同时出现的概率较高,所以,支持度可用于评价第一项集和第二项集之间的关联程度。也就是指标数据包括支持度,获得支持度的过程为:通过数据库的集合运算获取第一项集和第二项集的并集,然后从事务数据库中查询获得并集在多个事务中的出现次数,基于出现次数获取表征第一项集与第二项集的关联程度的支持度。
其中,支持度的形式定义如下:
Figure 239331DEST_PATH_IMAGE001
;
其中,
Figure 439368DEST_PATH_IMAGE002
表示项集X(本申请实施例中可为第一项集)与项集Y(本申请实施例中可为第二项集)的并集在多个事务中的出现次数,N为多个事务的数量。以上述的表1为例,若第一项集X为{啤酒,尿布},第二项集Y为{鸡蛋},则第一项集和第二项集的并集为{啤酒,尿布,鸡蛋},然后查找该并集在多个事务中的出现次数,通过查找表1,其出现次数为1,则按照上述算式计算出的支持度为1/5。
可以理解地,支持度越大,表明第一项集与第二项集之间的关联程度越大,支持度越小,表明第一项集与第二项集之间的关联程度越小。
在利用支持度来分析第一项集和第二项集之间的关联程度时,可以将计算获得的支持度与相应的支持度阈值进行比较,若支持度大于或等于支持度阈值,则认为第一项集与第二项集为强关联关系,反之,则认为第一项集与第二项集为弱关联关系。
当然,在存在多个关联规则时,针对每个关联规则均会计算出一个支持度,电子设备可对这些关联规则按照支持度大小进行排序,将支持度大于支持度阈值的关联规则筛选出来作为强关联规则,然后可将强关联规则展示给用户,以便用户知晓哪些项集之间为强关联关系。
或者,用户想要知晓大于某个支持度的强关联规则,用户可通过数据库查询语言加入支持度查询条件,使得电子设备可将大于该支持度的强关联规则输出给用户。或者,用户也可以在查询语言中加入top-k查询语言,这样电子设备可输出排序在前k个的强关联规则,从而可在查询时直接实现关联规则的剪枝。
在一些实施方式中,还可以通过置信度对关联规则进行筛选,即指标数据还包括置信度,置信度用于确定项集Y在包含项集X的事务中出现的频繁程度。本申请实施例中,获得置信度的过程为:通过数据库的集合运算获取第一项集与第二项集的并集,然后从事务数据库中查询该并集在多个事务中的出现次数以及第一项集在多个事务中的出现次数,然后基于并集在多个事务中的出现次数以及第一项集在多个事务中的出现次数来获取表征第一项集和第二项集的关联程度的置信度。
其中,置信度的形式定义如下:
Figure 839256DEST_PATH_IMAGE003
其中,
Figure 859165DEST_PATH_IMAGE004
即表示项集X在多个事务中出现的次数,也称为支持度计数。依然以表1为例,若第一项集X为{啤酒,尿布},第二项集Y为{鸡蛋},则第一项集和第二项集的并集为{啤酒,尿布,鸡蛋},然后查找该并集在多个事务中的出现次数,通过查找表1,其出现次数为1,第一项集X在表1中的出现次数为3,则对应的置信度为1/3。
可以理解地,置信度越大,其两个项集的关联程度越大,置信度越小,则两个项集的关联程度越小。
所以,在利用置信度来分析第一项集和第二项集之间的关联程度时,可以将计算获得的置信度与相应的置信度阈值进行比较,若置信度大于或等于置信度阈值,则认为第一项集与第二项集为强关联关系,反之,则认为第一项集与第二项集为弱关联关系。
当然,在存在多个关联规则时,针对每个关联规则均会计算出一个置信度,电子设备可对这些关联规则按照置信度大小进行排序,将置信度大于置信度阈值的关联规则筛选出来作为强关联规则,然后可将强关联规则展示给用户,以便用户知晓哪些项集之间为强关联关系。
在一些实施方式中,还可以采用提升度来对项集的关联程度进行分析,提升度表示在有项集X的情况下,同时有项集Y的概率,其反应了关联规则中项集X和项集Y的相关性。所以,指标数据包括提升度,本申请实施例中获取提升度的过程为:通过数据库的集合运算获取第一项集与第二项集的并集,然后从事务数据库中查询并集在多个事务中的出现次数、第一项集在多个事务中的出现次数以及第二项集在多个事务中的出现次数,然后基于并集在多个事务中的出现次数、第一项集在多个事务中的出现次数以及第二项集在多个事务中的出现次数,获取表征第一项集与第二项集的关联程度的提升度。
其中,提升度的形式定义如下:
Figure 861756DEST_PATH_IMAGE005
可以理解地,基于上述提升度的算式可以看出,若提升度小于1,则X与Y的出现负相关,即一个的出现可能导致另一个的不出现,若提升度大于1,则X与Y的出现正相关,即一个的出现可能蕴含另一个的出现,若提升度等于1,则X与Y的统计独立,即X与Y没有相关性。
所以,在利用提升度对第一项集和第二项集的关联程度进行分析时,可以将提升度阈值设置为1,若计算出的提升度大于该提升度阈值,则认为第一项集与第二项集为强关联关系,若计算出的提升度小于或等于该提升度阈值,则认为第一项集与第二项集为弱关联关系。
上述利用支持度、置信度和提升度来度量第一项集和第二项集之间的关联程度时,可以选择其中一种指标数据进行度量,也可以选择其中两种或三种指标数据进行度量。为了获得更准确的强关联规则,可以选择三种指标数据进行度量,即可先计算出第一项集和第二项集生成的关联规则的支持度,在该支持度大于支持度阈值时,再计算该关联规则的置信度,在置信度大于置信度阈值时,再计算该关联规则的提升度,然后比较提升度是否大于提升度阈值,若是,即确定该关联规则为强关联规则。
当然,其中支持度、置信度和提升度的计算顺序可不做限定,只要满足支持度大于支持度阈值、置信度大于置信度阈值且提升度大于提升度阈值即可确定该关联规则为强关联规则。
而为了提高计算效率,上述的置信度可依赖支持度计算获得,提升度依赖置信度和支持度计算获得,所以,也可以先计算支持度,利用支持度对关联规则进行筛选,然后再计算置信度,再利用置信度对该关联规则进行筛选,最后计算提升度,这样可不必重复多次计算并集的频度,减少了些计算量。
另外,在一些实施方式中,还可以通过其他的指标数据来度量项集之间的关联程度,如指标数据还可以包括皮尔森相关系数、IS度量、PS度量、GO兴趣度中的至少一种。
也就是说,在利用上述的支持度、置信度和/或提升度对第一项集和第二项集的关联程度进行分析后,还可以利用其它指标数据对两个项集的关联程度进行进一步分析,以确定该两个项集生成的关联规则是否为强关联规则。
当然,在上述有多个关联规则时,则可以通过上述的指标数据从多个关联规则中过滤出强关联规则。
另外,现有的算法是基于频繁项集生成关联规则,但是这种分析无法处理频繁项集中不出现的项对另一项集造成的影响。如上表1中{尿布}→{啤酒,牛奶}置信度为2/3,即购买尿布的顾客中只有2/3会同时购买啤酒及牛奶,但{尿布-鸡蛋}→{啤酒,牛奶}置信度为1,即购买尿布的同时不购买鸡蛋的顾客很可能会同时购买啤酒和牛奶,其隐藏的因果含义可能为“被要求单独去超市购买尿布的新生儿父亲购买必须的婴儿用品和自己想要的啤酒后,如果非必须,不太可能一同购买易碎的鸡蛋”。其中,按照现有的方法获得的频繁项集没有出现鸡蛋,这样频繁项集中没出现的鸡蛋,对于购买尿布的顾客是否会同时购买啤酒及牛奶起到的作用无法由现有的方法完成。
所以,本申请实施例中,可以通过补集的方式来挖掘这种关联关系,补集适用于“不出现某项集对结果的影响”的应用场景,如不买尿布的用户是否会购买啤酒、不跑步的人是否愿意购买瑜伽课程、没有信用卡的人是否愿意接受消费金融贷款等。所以,可以通过数据库的集合运算获取第一项集的补集,然后通过数据库的集合运算获取该补集与第二项集之间的关联程度的指标数据,根据补集与第二项集之间的关联程度的指标数据分析补集与第二项集之间的关联关系。
例如,在上述表1中所有项的集合为{牛奶,大米,啤酒,尿布,鸡蛋,可乐},若第一项集为{牛奶,大米},则第一项集的补集为{啤酒,尿布,鸡蛋,可乐},若第二项集为{啤酒,尿布},此时可分析补集对第二项集的影响,生成的关联规则可以为{(牛奶,大米)-鸡蛋}→{啤酒,尿布},其隐含的因果含义可能为用户在购买了牛奶和大米之后,再同时购买啤酒和尿布,并不会购买鸡蛋的概率。
所以,通过补集的方式可以发现第一项集中未出现的项对第二项集造成的影响,从而可挖掘出更多的关联关系。
另外,本申请实施例还可以利用数据库的集合运算的特性,还可以考察多个第一项集的相互作用对第二项集的影响,如第一项集包括多个时,可以通过数据库的集合运算获取多个第一项集之间的交集和/或差集,通过数据库的集合运算获取表征交集与第二项集之间的关联程度的指标数据,和/或通过数据库的集合运算获取表征差集与第二项集之间的关联程度的指标数据。
其中,交集适用于两个项集中同时出现的项对结果的影响的应用场景,如同时购买鸡蛋和牛奶的用户是否会购买啤酒、提出提额要求的客户的标签和提出免息要求的客户的标签中同时出现的标签对电话销售成交额的影响等。差集适用于出现在一个项集但未出现在另一个项集中项对结果的影响的应用场景,如提出提额要求的客户但未提出免息要求的客户的标签对电话销售成交额的影响。
例如,对于第一项集X1和X2,其交集与第二项集的关联程度可采用下述指标数据来衡量:
Figure 281412DEST_PATH_IMAGE006
这种情况下,只需要从数据库查询获取
Figure 976836DEST_PATH_IMAGE007
,或直接查询
Figure 749620DEST_PATH_IMAGE008
的结果进行连接计算得到,从而可以快速计算获得各个指标数据。
对于差集与第二项集之间的关联程度的指标数据的计算过程如下:
Figure 431268DEST_PATH_IMAGE009
在这种情况下也只需要查询
Figure 340318DEST_PATH_IMAGE010
,或由查询
Figure 82009DEST_PATH_IMAGE011
的结果进行连接计算得到。
按照这种方式,可以设定相应的第二项集,然后任意选择多个第一项集,利用数据库的集合运算快速获得多个第一项集的并集和/或差集,从而可考察多个第一项集的相互作用对第二项集的影响,以挖掘更多的关联信息。
另外,在一些应用场景下,为了从时间维度上分析第一项集中的不同项对第二项集的影响,还可以获取第一项集在不同时间点的项,例如,为了考察不同的传输设备对终端设备的速率的影响,则第一项集可以为在不同时刻工作的传输设备。如X1={交换机1,路由器2},X2={交换机1,路由器1,路由器3},X3={交换机2,交换机3,路由器1,路由器3},为了考察这三个时刻对终端设备的速率的影响,可以采用集合运算的方式来考察。
例如,对于项集
Figure 76510DEST_PATH_IMAGE012
,此时可考察项集X对终端设备的速率的影响,其可以如下集合计算的方式完成:
Figure 686483DEST_PATH_IMAGE013
或者,对于项集
Figure 325406DEST_PATH_IMAGE014
,此时可考察项集X对终端设备的速率的影响,其可以如下集合计算的方式完成:
Figure 628211DEST_PATH_IMAGE015
或者,按照上述方式获取第一项集在不同时间点的项,然后考察这些项对结果的影响,还可以针对以下应用场景进行分析,如:客户以月为周期订阅付费服务,在连续的订阅周期上可能存在订阅内容的增减,可以此分析上月的订阅服务增减对次月某服务订阅的影响。
上述算式中的各项参数均可利用数据库的集合运算快速获得,所以,按照上述方式,可以对第一项集进行各种变换,以获得新的项集,获得新的项集与第二项集之间的关联程度,从而可获得与第二项集关联的其他数据,以此挖掘更多的关联关系。
在一些实施方式中,为了提高查询效率,还可以采用分布式数据库存储多个事务,如多个事务分别存储在多个计算节点上。这样各个计算节点可并行统计各个项集的频度,且可并行地生成关联规则,这样可极大地减少了关联规则的生成开销。
请参照图2,图2为本申请实施例提供的一种数据关联关系挖掘装置100的结构框图,该装置100可以是电子设备上的模块、程序段或代码。应理解,该装置100与上述图1方法实施例对应,能够执行图1方法实施例涉及的各个步骤,该装置100具体的功能可以参见上文中的描述,为避免重复,此处适当省略详细描述。
可选地,所述装置100包括:
事务数据获取模块110,用于获取事务数据库中记录的多个事务,每个事务包括至少一个项;
项集获取模块120,用于获取需挖掘关联关系的第一项集与第二项集,所述第一项集与所述第二项集包括至少一个项;
指标数据计算模块130,用于通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据;
分析模块140,用于根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系。
可选地,所述指标数据包括支持度,所述指标数据计算模块130,用于通过数据库的集合运算获取所述第一项集与所述第二项集的并集;从所述事务数据库中查询获得所述并集在所述多个事务中的出现次数;基于所述出现次数获取表征所述第一项集与所述第二项集的关联程度的支持度。
可选地,所述指标数据包括置信度,所述指标数据计算模块130,用于通过数据库的集合运算获取所述第一项集与所述第二项集的并集;从所述事务数据库中查询所述并集在所述多个事务中的出现次数以及所述第一项集在所述多个事务中的出现次数;基于所述并集在所述多个事务中的出现次数以及所述第一项集在所述多个事务中的出现次数,获取表征所述第一项集与所述第二项集的关联程度的置信度。
可选地,所述指标数据包括提升度,所述指标数据计算模块130,用于通过数据库的集合运算获取所述第一项集与所述第二项集的并集;从所述事务数据库中查询所述并集在所述多个事务中的出现次数、所述第一项集在所述多个事务中的出现次数以及所述第二项集在所述多个事务中的出现次数;基于所述并集在所述多个事务中的出现次数、所述第一项集在所述多个事务中的出现次数以及所述第二项集在所述多个事务中的出现次数,获取表征所述第一项集与所述第二项集的关联程度的提升度。
可选地,所述指标数据还包括皮尔森相关系数、IS度量、PS兴趣度、GO兴趣度中的至少一种。
可选地,所述分析模块140,用于在所述指标数据大于对应的阈值时,确定所述第一项集与第二项集之间的关联关系为强关联关系。
可选地,所述分析模块140,还用于:
通过数据库的集合运算获取所述第一项集的补集;
通过数据库的集合运算获取所述补集与所述第二项集之间的关联程度的指标数据;
根据所述补集与所述第二项集之间的关联程度的指标数据分析所述补集与所述第二项集之间的关联关系。
可选地,所述第一项集包括多个,所述分析模块140,还用于:
通过数据库的集合运算获取多个第一项集之间的交集和/或差集;
通过数据库的集合运算获取表征所述交集与所述第二项集之间的关联程度的指标数据;和/或通过数据库的集合运算获取表征所述差集与所述第二项集之间的关联程度的指标数据。
可选地,采用分布式数据库存储所述多个事务。
需要说明的是,本领域技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再重复描述。
请参照图3,图3为本申请实施例提供的一种用于执行数据关联关系挖掘方法的电子设备的结构示意图,所述电子设备可以包括:至少一个处理器210,例如CPU,至少一个通信接口220,至少一个存储器230和至少一个通信总线240。其中,通信总线240用于实现这些组件直接的连接通信。其中,本申请实施例中设备的通信接口220用于与其他节点设备进行信令或数据的通信。存储器230可以是高速RAM存储器,也可以是非易失性的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器230可选的还可以是至少一个位于远离前述处理器的存储装置。存储器230中存储有计算机可读取指令,当所述计算机可读取指令由所述处理器210执行时,电子设备执行上述图1所示方法过程。
可以理解,图3所示的结构仅为示意,所述电子设备还可包括比图3中所示更多或者更少的组件,或者具有与图3所示不同的配置。图3中所示的各组件可以采用硬件、软件或其组合实现。
本申请实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,执行如图1所示方法实施例中电子设备所执行的方法过程。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如:获取事务数据库中记录的多个事务,每个事务包括至少一个项;获取需挖掘关联关系的第一项集与第二项集,所述第一项集与所述第二项集的交集为空,所述第一项集与所述第二项集包括至少一个项;通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据;根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系。
综上所述,本申请实施例提供一种数据关联关系挖掘方法、装置、电子设备及存储介质,该方法利用数据库本身所具有的集合运算的功能来获取表征两个项集之间的关联程度的指标数据,无需采用额外的资源来维护项集结构,而是可以直接采用数据库的集合运算来获取相关的指标数据,进而挖掘出两个项集之间的关联关系,效率更高。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (12)

1.一种数据关联关系挖掘方法,其特征在于,所述方法包括:
获取事务数据库中记录的多个事务,每个事务包括至少一个项;
获取需挖掘关联关系的第一项集与第二项集,所述第一项集与所述第二项集包括至少一个项;
通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据;
根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系;
所述方法还包括:
获取所述第一项集在不同时间点所包含的项,所述第一项集中的项随时间增减变化;
通过数据库的集合运算获取表征所述第一项集中项的增减变化结果与所述第二项集之间的关联程度的指标数据;
根据所述指标数据分析所述增减变化结果与所述第二项集之间的关联关系,所述关联关系表征所述第一项集中的项随时间的增减变化情况对所述第二项集的影响。
2.根据权利要求1所述的方法,其特征在于,所述指标数据包括支持度,所述通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据,包括:
通过数据库的集合运算获取所述第一项集与所述第二项集的并集;
从所述事务数据库中查询获得所述并集在所述多个事务中的出现次数;
基于所述出现次数获取表征所述第一项集与所述第二项集的关联程度的支持度。
3.根据权利要求1所述的方法,其特征在于,所述指标数据包括置信度,所述数据库的通过集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据,包括:
通过数据库的集合运算获取所述第一项集与所述第二项集的并集;
从所述事务数据库中查询所述并集在所述多个事务中的出现次数以及所述第一项集在所述多个事务中的出现次数;
基于所述并集在所述多个事务中的出现次数以及所述第一项集在所述多个事务中的出现次数,获取表征所述第一项集与所述第二项集的关联程度的置信度。
4.根据权利要求1所述的方法,其特征在于,所述指标数据包括提升度,所述通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据,包括:
通过数据库的集合运算获取所述第一项集与所述第二项集的并集;
从所述事务数据库中查询所述并集在所述多个事务中的出现次数、所述第一项集在所述多个事务中的出现次数以及所述第二项集在所述多个事务中的出现次数;
基于所述并集在所述多个事务中的出现次数、所述第一项集在所述多个事务中的出现次数以及所述第二项集在所述多个事务中的出现次数,获取表征所述第一项集与所述第二项集的关联程度的提升度。
5.根据权利要求2-4任一所述的方法,其特征在于,所述指标数据还包括皮尔森相关系数、IS度量、PS兴趣度、GO兴趣度中的至少一种。
6.根据权利要求1所述的方法,其特征在于,所述根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系,包括:
在所述指标数据大于对应的阈值时,确定所述第一项集与第二项集之间的关联关系为强关联关系。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过数据库的集合运算获取所述第一项集的补集;
通过数据库的集合运算获取所述补集与所述第二项集之间的关联程度的指标数据;
根据所述补集与所述第二项集之间的关联程度的指标数据分析所述补集与所述第二项集之间的关联关系。
8.根据权利要求1所述的方法,其特征在于,所述第一项集包括多个,所述方法还包括:
通过数据库的集合运算获取多个第一项集之间的交集和/或差集;
通过数据库的集合运算获取表征所述交集与所述第二项集之间的关联程度的指标数据;和/或
通过数据库的集合运算获取表征所述差集与所述第二项集之间的关联程度的指标数据。
9.根据权利要求1所述的方法,其特征在于,采用分布式数据库存储所述多个事务。
10.一种数据关联关系挖掘装置,其特征在于,所述装置包括:
事务数据获取模块,用于获取事务数据库中记录的多个事务,每个事务包括至少一个项;
项集获取模块,用于获取需挖掘关联关系的第一项集与第二项集,所述第一项集与所述第二项集的交集为空,所述第一项集与所述第二项集包括至少一个项;
指标数据计算模块,用于通过数据库的集合运算获取表征所述第一项集与所述第二项集之间的关联程度的指标数据;
分析模块,用于根据所述指标数据分析所述第一项集与所述第二项集之间的关联关系;
所述分析模块,还用于:
获取所述第一项集在不同时间点所包含的项,所述第一项集中的项随时间增减变化;
通过数据库的集合运算获取表征所述第一项集中项的增减变化结果与所述第二项集之间的关联程度的指标数据;
根据所述指标数据分析所述增减变化结果与所述第二项集之间的关联关系,所述关联关系表征所述第一项集中的项随时间的增减变化情况对所述第二项集的影响。
11.一种电子设备,其特征在于,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如权利要求1-9任一所述的方法。
12.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时运行如权利要求1-9任一所述的方法。
CN202011384577.9A 2020-12-02 2020-12-02 数据关联关系挖掘方法、装置、电子设备及存储介质 Active CN112182071B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011384577.9A CN112182071B (zh) 2020-12-02 2020-12-02 数据关联关系挖掘方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011384577.9A CN112182071B (zh) 2020-12-02 2020-12-02 数据关联关系挖掘方法、装置、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN112182071A CN112182071A (zh) 2021-01-05
CN112182071B true CN112182071B (zh) 2021-04-06

Family

ID=73918358

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011384577.9A Active CN112182071B (zh) 2020-12-02 2020-12-02 数据关联关系挖掘方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN112182071B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114219324A (zh) * 2021-12-17 2022-03-22 中国建设银行股份有限公司 一种服务订单的风险管控方法及相关装置
CN114782121A (zh) * 2021-12-21 2022-07-22 北京京东振世信息技术有限公司 一种识别目标用户的方法和装置
CN114547138A (zh) * 2022-01-26 2022-05-27 国网安徽省电力有限公司信息通信分公司 一种基于改进的Apriori算法的电网数据挖掘方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105260387A (zh) * 2015-09-10 2016-01-20 江苏省邮电规划设计院有限责任公司 一种面向海量事务数据库的关联规则分析方法
CN110032564A (zh) * 2019-03-07 2019-07-19 阿里巴巴集团控股有限公司 一种数据表关联关系的确定方法和装置
CN110795468A (zh) * 2019-10-10 2020-02-14 中国建设银行股份有限公司 数据抽取方法及装置
CN111475707A (zh) * 2019-01-23 2020-07-31 北京京东尚科信息技术有限公司 规则挖掘方法和装置及存储介质
CN111625574A (zh) * 2019-12-09 2020-09-04 昆明理工大学 一种基于布尔矩阵约简的关联规则挖掘算法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160048936A1 (en) * 2013-03-15 2016-02-18 Search For Yeti, LLC Computer-Implemented Methods of and Systems for Analyzing Patent Claims
US10324961B2 (en) * 2017-01-17 2019-06-18 International Business Machines Corporation Automatic feature extraction from a relational database

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105260387A (zh) * 2015-09-10 2016-01-20 江苏省邮电规划设计院有限责任公司 一种面向海量事务数据库的关联规则分析方法
CN111475707A (zh) * 2019-01-23 2020-07-31 北京京东尚科信息技术有限公司 规则挖掘方法和装置及存储介质
CN110032564A (zh) * 2019-03-07 2019-07-19 阿里巴巴集团控股有限公司 一种数据表关联关系的确定方法和装置
CN110795468A (zh) * 2019-10-10 2020-02-14 中国建设银行股份有限公司 数据抽取方法及装置
CN111625574A (zh) * 2019-12-09 2020-09-04 昆明理工大学 一种基于布尔矩阵约简的关联规则挖掘算法

Also Published As

Publication number Publication date
CN112182071A (zh) 2021-01-05

Similar Documents

Publication Publication Date Title
CN112182071B (zh) 数据关联关系挖掘方法、装置、电子设备及存储介质
US11488225B2 (en) Method, medium, and system for surfacing recommendations
US20200192894A1 (en) System and method for using data incident based modeling and prediction
US9087335B2 (en) Multidimensional personal behavioral tomography
Zheng et al. An effective contrast sequential pattern mining approach to taxpayer behavior analysis
US20150278813A1 (en) Determining a temporary transaction limit
US8799193B2 (en) Method for training and using a classification model with association rule models
US11182364B2 (en) Data analysis support apparatus and data analysis support method
US20160132496A1 (en) Data filtering
CN111695023A (zh) 信息推荐方法、装置、存储介质及设备
CN111966886A (zh) 对象推荐方法、对象推荐装置、电子设备及存储介质
CN108428138B (zh) 一种基于客户分群的客户生存率分析装置及分析方法
Zhang Personalised product recommendation model based on user interest
CN117391313A (zh) 基于ai的智能决策方法、系统、设备以及介质
CN112241420A (zh) 一种基于关联规则算法的政务服务事项推荐方法
CN113837843A (zh) 产品推荐方法、装置、介质及电子设备
Zhang et al. The approaches to contextual transaction trust computation in e‐Commerce environments
CN115827994A (zh) 一种数据处理方法、装置、设备、存储介质
Prabhu et al. FI-FCM algorithm for business intelligence
CN112819404A (zh) 数据处理方法、装置、电子设备和存储介质
Aljifri Predicting Customer Churn in a Subscription-Based E-Commerce Platform Using Machine Learning Techniques
US11887168B2 (en) Predicting the value of an asset using machine-learning techniques
US20230376977A1 (en) System for determining cross selling potential of existing customers
CN113469374B (zh) 数据预测方法、装置、设备及介质
Wang et al. Market Basket Analysis based on Apriori and CART

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant