技术领域
[0001] 本发明涉及互联网挖掘技术领域,特别涉及数据挖掘系统及数据挖掘方法。
相关背景技术
[0002] 随着互联网技术的飞速发展,各大厂商在网络上投放的信息数量也越来越多,因此,有必要对数据的挖掘技术进行研究以使客户能从大量的网络信息中找到所需要的信息。目前,各大网络运营商对数据挖掘技术研究的方法大致分为以下几种:一种方法是通过半自动化的方式建立网页分类体系,并引入数据分类和查询词/购买词(query/bidterm)分类等属性特征,结合网页搜索结果进行相关性反馈,从而找到所需要的信息。另一种方法是采用基于字面的文字匹配。再一种方法是采用基于语义的概率潜在语义分析(probabilistic latent semantic analysis,PLSA)相关性模型方式而找到所需要的信息。
[0003] 但是,上述现有的数据挖掘方法均未涉及数据源样本的拓扑结构,难以从系统整体结构和动态演化的角度发现多视图、多粒度的整体结构知识,容易遗漏信息业务中潜在的数据特征,从而给客户提供的信息的挖掘结果不全面。
具体实施方式
[0018] 为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的数据挖掘系统及数据挖掘方法其具体实施方式、结构、特征及功效,详细说明如后。
[0019] 有关本发明的前述及其他技术内容、特点及功效,在以下配合参考图式的较佳实施例详细说明中将可清楚的呈现。通过具体实施方式的说明,当可对本发明为达成预定目的所采取的技术手段及功效得以更加深入且具体的了解,然而所附图式仅是提供参考与说明之用,并非用来对本发明加以限制。
[0020] 图1是本发明实施例提出的数据挖掘系统的主要架构框图。图2是图1的数据挖掘系统对查询词进行纠错提示的示意图。图3是图1的数据挖掘系统对查询词进行辅助提示的示意图。图4是图1的数据挖掘系统对查询词进行相关搜索提示的示意图。图5是图1的数据挖掘系统的广告信息的组织结构的示意图。图6是图1的数据挖掘系统的局部子图结构的示意图。请一并参阅图1至图6,数据挖掘系统包括:数据源整合模块100、存储模块102、挖掘模块106以及输出模块108。
[0021] 此外,数据挖掘系统还可以包括存储器104以及反馈模块110,以整合更多的功能。
[0022] 更具体地,数据源整合模块100,用于对用户提交给搜索引擎的查询词与预先存储的购买词进行相关性匹配,以形成查询词和购买词之间至少一种关联关系对应的至少一种数据源。
[0023] 其中,用户可通过搜索引擎输入查询词以查找用户所需要的信息,例如广告信息。数据源整合模块100整合的数据源例如主要包括q2b、q2q以及b2b三种。
[0024] q2b数据源的形成方式如下:数据源整合模块100对用户提交给搜索引擎的查询词进行分析,并将查询词与买主购买且即时生效的关键词(即购买词)进行相关性匹配。其中,在查询词与购买词进行匹配的过程中,数据源整合模块100可通过在线、离线的方法,采用查询词与购买词两者之间的语义相关性方法对查询词进行各种智能匹配,以使查询词关联到更多的购买词(bidterm),从而形成查询词与购买词之间关联关系的数据源,这种数据源可称为q2b(即query到bidterm的扩展)。
[0025] q2q数据源的形成方式如下:数据源整合模块100对用户提交给搜索引擎的查询词所表现出的特征进行相应扩展,常用的扩展方法有:(1)纠错提示,例如如图2所示当用户通过查询区200输入查询词为“王物”时则在提示区202提示用户是否要查询“王五”;(2)查询词的上下文修改,例如查询词为“北京鲜花快递”时,则将查询词扩展为“鲜花快递北京”等,(3)辅助提示,例如图3对查询词搜索时会有辅助提示,当用户通过查询区300输入“iphone4s”时,则在提示区302会有相关的辅助提示;(4)相关搜索提示,例如如图4所示通过查询区400对查询词搜索时在提示区402列有相关搜索。上述查询词间的关联关系均为查询词的扩展变化,将这种查询词之间的关联关系的数据源称为q2q(query到query的扩展)。
[0026] b2b数据源的形成方式如下:由于在存储器104中存储了买主和代理商所购买的购买词,购买词一般保存在存储器104的数据库中,例如图5所示为一种常见的数据库中存储的广告信息的组织结构,图5中,广告购买词500依附于广告组501,每个广告主(Advertiser)502可以购买多个购买词,每个购买词500也可以被不同的广告主502购买。可见,广告信息的这种组织结构决定了各购买词500之间有一定的关联关系。数据源整合模块100根据广告信息组织结构中购买词500之间的关系、购买词500之间的字面相似情况,语义相关情况,由搜索结果、用户点击行为等关联起来的情况等,从而形成购买词与购买词之间关联关系和等价关系的数据源,这种数据源可称为b2b(bidterm到bidterm的扩展)。
[0027] 存储模块102,利用各数据源的节点与节点(节点即查询词、购买词)之间的关联关系(即图的短串关系),在查询词、购买词之间建立图的存储结构,并将图的存储结构发送到存储器104中进行存储。
[0028] 其中,由于各个数据源均是描述数据业务中实体间的关联关系,它们并不是相互独立的集合,而是彼此联系的,因此可使用图(graph)的数据结构对上述数据源进行抽象表达和存储设计。存储模块102例如可以采用如下方式设计图的存储结构:可以将数据源中的查询词、购买词及其核心成分(例如查询词、购买词的重要词组等)抽象成节点,节点之间的关联关系抽象成边,节点和边附加属性并且可扩展,例如图中的节点可能种类不同,并且根据不同的应用可以表达成二部图(bipartite graph)或其他模型。节点的属性例如可以是所属数据源的类型、对应的字符串文本、行业分类、语义主题、数据的点击、展示等信息。边的属性可以是有向边、带权边(例如节点之间的文本、语义、成分、分类等相关性得分)。如表1所示为一种关系表结构(big table):
[0029] 表1关系表结构(big table)
[0030]
[0031]
[0032] 表1中每一行表示两个查询词/购买词之间的各种特征,此表支持关系的增删查改和其它种类的人工干预。其中,存储模块104将需存储的数据库表设计如下:其基本结构可抽象为两个表,一个表存储节点如表2,另一个表存储关系如表3。其中,节点表表2以节点的md5签名值作为主键,通过节点表表2可以快速查询某个节点的所有节点属性。关系表表3以关系两端的节点的md5签名值作为联合主键,并且通过分片的方法保证同一个节点的所有关系都位于同一个关系表中,这样通过关系表表3,不仅可以快速查询关系属性,还可以快速查询与某个节点有关联的所有其他节点。表2和表3是节点表和关系表的原型设计,其中很多属性都可以进一步丰富化,例如如关系表表3中的score,可以进一步细分为文本、语义、成分、分类等相关性得分等。
[0033] 表2节点数据表的设计
[0034]
[0035] 表3关系数据表的设计
[0036]
[0037] 存储器104,用于存储购买词、查询词、数据源和图的存储结构。
[0038] 挖掘模块106,用于基于存储器104中存储的图的存储结构构建网络拓扑关系图,并作基于图的数据挖掘,并将数据挖掘的结果发送到存储器104中进行存储。
[0039] 其中,基于这些关系融合后的网络拓扑关系图做挖掘的原因主要是:以购买词构成的等价关系为例,如图6所示为局部子图结构的示意图,图6中,节点{a,b,c,d}构成等价关系;节点{e,f,g,h,i}构成等价关系。假设目前的等价关系是通过某种方法找到的,当引入一种新的数据源时即补充了(a,e)的等价关系。如果只是简单的边关系补充,那么对于节点a只不过新增了一条边(a,e);对于节点e也只是新增了一条边(e,a)。但如果用网络的视角进行审视时,则相当于这个图的结构属性发生了改变,即在两个节点组601以及602之间建立了一条长程连接,以最简单的关联挖掘来看,(b,e)、(c,e)、(d,e)、(a,f)、(a,g)、(a,h)和(a,i)都可作为潜在的边关系进行相关验证补充。因为节点含义的不同、关系定义的差别,实际抽象出来的图模型也会有区别。例如购买词关系网络,在现阶段是一个相对封闭的集合,每天新增的购买词数量不会爆炸性增长,由它们构成的网络节点类型单一,商业性强,适合做聚类算法分析。而由购买词及其点击的信息,例如广告,则可以构成一种二部图(bipartite graph),例如simrank算法就是这种抽象的一个典型例子。所以不同的抽象方法对应不同的研究思路,总体上看就是要采用网络拓扑的观点,从系统的总体上开阔视角进行建模。
[0040] 挖掘模块106例如可以使用复杂网络的知识对模型图进行数据挖掘。例如如表4所示的图属性:节点、边、节点数、边数、节点的度和度分布、集聚系数、节点/边的介数、社区挖掘与图聚类(clustering)等即为对模型图进行挖掘的知识点。
[0041] 表4图模型的挖掘知识点及应用场景/研究价值
[0042]
[0043]
[0044] 输出模块108,根据用户输入的不同应用需求,将存储器104中存储的数据挖掘的结果进行输出以使用户对输出结果进行选择,从而触发输出信息的展示。
[0045] 其中,例如用户输入“雷锋”时,输出的挖掘结果为“雷锋的故事”、“雷锋论坛”“学雷锋活动”、等,如果用户选择了其中之一挖掘结果“雷锋的故事”,则会触发相关雷锋故事的输出信息展示。输出模块108例如主要可采用如下两种输出方法:一种是被其他匹配模块例如数据源整合模块100等加载时进行输出;另一种是在客户通过输入查询词查询时进行输出。
[0046] 反馈模块110,用于将用户选择的输出结果反馈给数据源整合模块100以使数据源整合模块100根据反馈模块110的反馈形成至少一种新的数据源、从而使得存储模块102利用各新的数据源之间的节点与节点(节点即查询词、购买词)之间的短串关系,在查询词、购买词之间建立起新的图的存储结构,挖掘模块106基于新的图的存储结构构建网络拓扑关系图,并作基于图的数据挖掘。
[0047] 另外,上述存储模块102将各个数据源在更新入库的时候,可以按照自有的更新节奏,进行异步的、局部的、增量的更新,从而最大限度地保证数据特征和输出结果的相对稳定性。
[0048] 请一并参阅图1至图7,其中图7是本发明实施例提出的数据挖掘方法的步骤流程图。具体地,本发明实施例的数据挖掘方法可大致包括以下步骤S702-S707。
[0049] 步骤S702:对用户提交给搜索引擎的查询词与预先存储的购买词进行相关性匹配,以形成查询词和购买词之间关联关系对应的至少一种数据源。例如数据源整合模块100整合的数据源主要包括q2b、q2q以及b2b三种。
[0050] 步骤S703:利用各数据源之间的节点与节点(节点即查询词、购买词)之间的关联关系(即图的短串关系),在查询词、购买词之间建立图的存储结构,并将图的存储结构发送到存储器104中进行存储。存储模块102使用图的存储结构对上述数据源进行抽象表达和存储设计,例如可以将数据源中的查询词、购买词及其核心成分(例如查询词、购买词的重要词组等)抽象成节点,节点之间的关联关系抽象成边,节点和边附加属性并且可扩展,从而在查询词、购买词之间建立图的存储结构。
[0051] 步骤S705:基于存储器104中存储的图的存储结构构建网络拓扑关系图,并作基于图的数据挖掘,并将数据挖掘的结果发送到存储器104中进行存储。例如挖掘模块106使用复杂网络的知识对图进行数据挖掘。
[0052] 步骤S707:根据用户输入的不同应用需求,将存储器104中存储的数据挖掘的结果进行输出以使用户对输出结果进行选择,从而触发输出信息的展示。
[0053] 步骤S707中具体还可包括步骤:将用户选择的输出结果进行反馈,进行步骤S702。
[0054] 综上所述,本发明通过数据源整合模块100整合了不同种类的数据源,例如q2b(query->bidterm)、b2b(bidterm->bidterm)、q2q(query->query)三种类型的数据源,存储模块102通过分布式的数据库设计对图的关联关系(图的短串间关系)进行存储,再通过挖掘模块106应用图论知识、复杂网络知识刻画由数据源构成的图,对其进行数据分析、并作基于图的数据挖掘,从而使得本发明从多视图、多粒度对业务数据进行了分析,并且能够支持海量数据集、还提供了可复用的扩展服务。
[0055] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来控制相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
[0056] 以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。