数据源搜索方法、装置和电子设备与流程

文档序号:22545830发布日期:2020-10-17 02:15阅读:99来源:国知局
数据源搜索方法、装置和电子设备与流程

本发明涉及数据处理的技术领域,尤其是涉及一种数据源搜索方法、装置和电子设备。



背景技术:

现有技术中的数据源搜索技术依托业务应用为核心进行展开,一般地,若新增业务的数据要求与其它业务无关,则需要分析业务规律,定义数据范围,载入新数据源;如果是数据源已有,则需考虑数据合并过程中是否丢弃现有业务所需数据特征部分,如没有则需要重新载入数据源;或者,若新增业务依托于已有业务的中间数据或输出,则需要各个应用的负责人进行沟通,设计接口,进行调用。显然,上述数据源搜索方法严重依赖设计人员经验,设计人员需要足够专业并经过大量计算才能准确定位所需数据来源,如果数据规模小,人工计算尚且可以完成,但是对于大数据应用场景,上述方法显然不能轻易实现数据源的定位。

综上所述,现有技术中的数据源搜索方法存在搜索效率低的技术问题。



技术实现要素:

本发明的目的在于提供一种数据源搜索方法、装置和电子设备,以缓解了现有技术中的数据源搜索方法存在的搜索效率低的技术问题。

第一方面,本发明实施例提供一种数据源搜索方法,包括:获取目标专家业务领域树和目标机器业务领域树,其中,所述目标专家业务领域树为基于初始专家业务领域树结合多分类训练得到的树状的数据业务化解释,所述目标机器业务领域树为基于用户的数据搜索行为得到的网状的数据业务化解释;利用所述目标专家业务领域树和目标机器业务领域树对目标数据源进行搜索,得到所述目标数据源的搜索结果。

在可选的实施方式中,获取目标专家业务领域树和目标机器业务领域树,包括:获取初始专家业务领域树、所述初始专家业务领域树的所有初始标注对象和用户的数据搜索行为;基于所述初始专家业务领域树和预设数量个初始标注对象构建基础数据分类模型;基于所述基础数据分类模型、目标初始标注对象和专家意见确定目标专家业务领域树,其中,所述目标初始标注对象为所述所有初始标注对象中除所述预设数量个初始标注对象之外的初始标注对象;基于所述用户的数据搜索行为将点击跳转关系转换为数据对象之间的直接相似度;基于所述数据对象之间的直接相似度构建目标机器业务领域树。

在可选的实施方式中,基于所述初始专家业务领域树和预设数量个初始标注对象构建基础数据分类模型,包括:基于所述初始专家业务领域树的索引结构中的特征项计算不同数据分类之间的区别特征和相同数据分类的固有特征;基于所述区别特征和所述固有特征对所述初始专家业务领域树的所有树杈节点进行特征标注,得到标注后的专家业务领域树;利用所述标注后的专家业务领域树和预设数量个初始标注对象对初始多分类的逻辑回归模型进行训练,得到目标多分类的逻辑回归模型,其中,所述目标多分类的逻辑回归模型用于确定树杈节点的特征和权重;基于所述树杈节点的特征和权重构建每个数据分类的基础数据分类模型。

在可选的实施方式中,基于所述基础数据分类模型、目标初始标注对象和专家意见确定目标专家业务领域树,包括:利用所述基础数据分类模型对所述目标初始标注对象进行特征提取并预测分类,统计每个数据分类条件的命中次数;基于所述每个数据分类条件的命中次数对每个树杈节点的权重进行调整,得到第一数据分类模型;将所述基础数据分类模型和所述第一数据分类模型进行合并,得到第二数据分类模型;基于所述第二数据分类模型中每个树杈节点权重的大小对所述第二数据分类模型进行重构,得到第三数据分类模型;基于专家意见对所述第三数据分类模型进行调整,得到第四数据分类模型;基于所述第四数据分类模型构建对应的专家业务领域树,并对所述对应的专家业务领域树上的所有树杈节点进行特征标注,得到目标专家业务领域树。

在可选的实施方式中,基于专家意见对所述第三数据分类模型进行调整,得到第四数据分类模型,包括:去除所述目标初始标注对象的分类标注,得到目标未标注对象;基于所述第三数据分类模型对所述目标未标注对象进行分类预测,得到数据分类结果;基于专家意见对所述数据分类结果进行调整,得到所述第四数据分类模型,其中,所述调整包括:修正树杈节点的特征标注。

在可选的实施方式中,基于所述用户的数据搜索行为将点击跳转关系转换为数据对象之间的直接相似度,包括:基于所述用户的数据搜索行为统计展示的数据对象的数量;利用算式计算每个数据对象被随机点击的总次数,其中,n表示所述数据对象的数量,表示用户点击数据对象a跳转后再点击数据对象bi的次数;利用算式计算数据对象之间的直接相似度,其中,f(a,b)表示数据对象a和数据对象b的直接相似度。

在可选的实施方式中,基于所述数据对象之间的直接相似度构建目标机器业务领域树,包括:利用算式dist(a,b)=1-ln(f(a,b))将所述数据对象之间的直接相似度转换为数据对象之间的距离;基于所述数据对象之间的距离构建目标机器业务领域树。

第二方面,本发明实施例提供一种数据源搜索装置,包括:获取模块,用于获取目标专家业务领域树和目标机器业务领域树,其中,所述目标专家业务领域树为基于初始专家业务领域树结合多分类训练得到的树状的数据业务化解释,所述目标机器业务领域树为基于用户的数据搜索行为得到的网状的数据业务化解释;搜索模块,用于利用所述目标专家业务领域树和目标机器业务领域树对目标数据源进行搜索,得到所述目标数据源的搜索结果。

第三方面,本发明实施例提供一种电子设备,包括存储器、处理器,所述存储器上存储有可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述前述实施方式中任一项所述的方法的步骤。

第四方面,本发明实施例提供一种具有处理器可执行的非易失的程序代码的计算机可读介质,述程序代码使所述处理器执行前述实施方式中任一项所述的方法。

本发明提供的数据源搜索方法,包括:获取目标专家业务领域树和目标机器业务领域树,其中,目标专家业务领域树为基于初始专家业务领域树结合多分类训练得到的树状的数据业务化解释,目标机器业务领域树为基于用户的数据搜索行为得到的网状的数据业务化解释;利用目标专家业务领域树和目标机器业务领域树对目标数据源进行搜索,得到目标数据源的搜索结果。

现有技术中的数据源搜索方法严重依赖设计人员的专业经验,并且需要大量计算才能准确定位所需数据来源,对于大数据应用场景,将出现搜索时间长,搜索效率低的技术问题。与现有技术相比,本发明提供的数据源搜索方法,提供了预先构建的目标专家业务领域树和目标机器业务领域树,利用树的结构按照业务逻辑逐层对目标数据源进行搜索,即可得到目标数据源的搜索结果,从而减少了设计人员的计算量,加快了目标数据源的搜索速度,从而有效的缓解了现有技术中的数据源搜索方法存在的搜索效率低的技术问题。

附图说明

为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例提供的一种数据源搜索方法的流程图;

图2为本发明实施例提供的一种业务领域树的可视化效果图;

图3为本发明实施例提供的一种获取目标专家业务领域树和目标机器业务领域树的流程图;

图4为本发明实施例提供的一种常规的导航索引的示意图;

图5为本发明实施例提供的一种将数据对象之间的直接相似度转换为数据对象之间的距离的效果图;

图6为本发明实施例提供的一种电子设备的示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。

因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

下面结合附图,对本发明的一些实施方式作详细说明。在不冲突的情况下,下述的实施例及实施例中的特征可以相互组合。

智慧城市(smartcity)起源于传媒领域,是指利用各种信息技术或创新概念,将城市的系统和服务打通、集成,以提升资源运用的效率,优化城市管理和服务,以及改善市民生活质量,属于以城市基础架构,互联网通讯技术,大数据应用,机器学习为主的泛学科应用。

智慧城市这类的大数据应用难免涉及到数据源的查询功能,当数据量较大时,数据源的搜索效率被视为数据源搜索方法的关键功能指标。现有技术中的数据源搜索方法严重依赖设计人员的经验,如果数据规模小尚且可以完成,但对于大数据应用场景,显然是不可能轻易组织实现的,进而导致数据源的定位速度慢,搜索效率低,有鉴于此,本发明实施提供了一种数据源的搜索方法,用以缓解上文中所提出的技术问题。

实施例一

图1为本发明实施例提供的一种数据源搜索方法的流程图,如图1所示,该方法包括如下步骤:

步骤s12,获取目标专家业务领域树和目标机器业务领域树。

具体的,业务领域树并非学名,而是针对智慧城市这类的大数据应用查找应用设计的一个名字,它使用树的结构连接每一个数据块(数据源搜索的最小对象单位,即叶子节点),每个树干均为行业类别,父节点为子节点的专业解释的合并,子节点除了作为父节点的分支外还需记录这个类别的特有特点,图2为本发明实施例提供的一种业务领域树的可视化效果图,业务领域树是数据的业务化解释的展示,可用于业务人员定位数据,是导航汇聚的核心之一(另一是给予数据特点进行展开的,结果相同,构建方式相同,构建对象有所差异),一个有效的基于业务领域树进行分类导航的数据源搜索功能至少需要一颗目标专家业务领域树和一颗目标机器业务领域树。

在本发明实施例中,目标专家业务领域树为基于初始专家业务领域树结合多分类训练得到的树状的数据业务化解释,目标机器业务领域树为基于用户的数据搜索行为得到的网状的数据业务化解释。目标专家业务领域树是由专家构建的业务脉络,庞大且解释性强,是导航汇聚业务树的基本树,也能够用来作为参考模板供程序学习。目标机器业务领域树是程序自己构建的业务领域树,能够通过学习减少专家工作量,还能提供比目标专家业务领域树更利于查询的树,因为专家的分类虽然有更强的解释性,但未必能够最快引导操作者定位所需的数据源,最大程度减少用户用来发现目标数据源的时间开销的方式才是最好的,相比于分类,目标机器业务领域树能够更准确的描述对象。

步骤s14,利用目标专家业务领域树和目标机器业务领域树对目标数据源进行搜索,得到目标数据源的搜索结果。

在获取到目标专家业务领域树和目标机器业务领域树之后,利用目标专家业务领域树和目标机器业务领域树对目标数据源进行搜索,即可得到目标数据源的搜索结果。通过搜索,操作员能够定位符合要求数据块的路径、文件结构、涉及业务方向、牵扯业务等等,最终被应用于具体业务应用数据来源的确定工作。

本发明实施例中的目标专家业务领域树和目标机器业务领域树,支持多种数据源的搜索方式,包括:导航汇聚搜索、相关性搜索和递进式搜索,搜索的最小对象单位是数据块,对应的是递进式搜索;在数据块之上的是将数据块进行描述并存储在索引结构中,对应的是相关性搜索;导航汇聚是将索引结构依据业务分类或数据特点进行重排,对应的是导航汇聚搜索。

导航汇聚搜索包括:业务数据特点搜索和业务应用特点搜索,业务数据特点搜索提供配置模板供操作员选择对象关键字输入范围进行搜索;业务应用特点搜索提供由机器学习方法构建业务分类树并经由专家标记调整,通过业务领域逐层进行引导缩小查询范围,支持在某一层添加筛选条件。

相关性搜索不同于导航汇聚搜索,它不仅对导航汇聚搜索,还可以对业务领域树的索引结构直接进行搜索。相关性搜索包括:业务领域相关性搜索和数据相似度搜索,业务领域相关性搜索是在无法描述数据对象特征的时候,使用类似的应用场景进行搜索的一种方法,利用其他操作员引用和查询的关系作为训练数据集,将相似的数据描述挂在树结构子节点上,从而通过类似的应用或类似的应用描述定位附近数据源的技术。数据相似度搜索是在既无法确定业务类型,又无法描述数据对象特征的时候,通过对已引用的数据或指明有使用价值的数据进行关联发现,从而发现类似数据的一种方法。

递进式搜索是一种比相关性搜索更为自由的搜索,他的搜索对象已经涵括了具体的数据了,这个一种通过导航汇聚,索引结构不断缩小所需搜索数据范围后,通过抽样技术不断的对数据进行探索和假设,并在此过程中不断提高数据定位的精度,是一类用于数据价值探索,对操作员要求十分高的功能。

本发明提供的数据源搜索方法,包括:获取目标专家业务领域树和目标机器业务领域树,其中,目标专家业务领域树为基于初始专家业务领域树结合多分类训练得到的树状的数据业务化解释,目标机器业务领域树为基于用户的数据搜索行为得到的网状的数据业务化解释;利用目标专家业务领域树和目标机器业务领域树对目标数据源进行搜索,得到目标数据源的搜索结果。

现有技术中的数据源搜索方法严重依赖设计人员的专业经验,并且需要大量计算才能准确定位所需数据来源,对于大数据应用场景,将出现搜索时间长,搜索效率低的技术问题。与现有技术相比,本发明提供的数据源搜索方法,提供了预先构建的目标专家业务领域树和目标机器业务领域树,利用树的结构按照业务逻辑逐层对目标数据源进行搜索,即可得到目标数据源的搜索结果,从而减少了设计人员的计算量,加快了目标数据源的搜索速度,从而有效的缓解了现有技术中的数据源搜索方法存在的搜索效率低的技术问题。

上文中对本发明实施例提供的数据源搜索方法进行了简要的描述,下面对如何获取目标专家业务领域树和目标机器业务领域树的过程进行详细的介绍。

在一个可选的实施方式中,如图3所示,上述步骤s12,获取目标专家业务领域树和目标机器业务领域树,具体包括如下步骤:

步骤s121,获取初始专家业务领域树、初始专家业务领域树的所有初始标注对象和用户的数据搜索行为。

具体的,要构建目标专家业务领域树和目标机器业务领域树,首先要获取初始专家业务领域树、初始专家业务领域树的所有初始标注对象和用户的数据搜索行为,初始专家业务领域树即未经优化的专家业务领域树,初始专家业务领域树的树杈描述的是数据的分类方法,叶子是一类对象,初始标记对象是有分类标注的对象,也即,初始标注对象是专家业务领域树的叶子节点所阐述的对象,例如,动物分类成有脊椎动物和无脊椎动物就是一份树杈节点,鸟类是叶子,黄鹂和白鹭就是初始标记对象。

步骤s122,基于初始专家业务领域树和预设数量个初始标注对象构建基础数据分类模型。

为了得到目标专家业务领域树,首先需要构建基础数据分类模型,利用初始专家业务领域树和预设数量个初始标注对象,机器学习专家业务领域树的数据分类条件,创建基础数据分类模型。本发明实施例不对构建基础数据分类模型时所使用的初始标注对象的数量进行具体限制,用户可以根据实际需求进行设定。

步骤s123,基于基础数据分类模型、目标初始标注对象和专家意见确定目标专家业务领域树。

在得到基础数据分类模型后,基于基础数据分类模型和目标初始标注对象对数据分类模型进行调整,并将调整后的模型回构成业务领域树,经由专家再次检测调整后,得到目标专家业务领域树,其中,目标初始标注对象为所有初始标注对象中除预设数量个初始标注对象之外的初始标注对象。也即,假设将所有初始标注对象共划分为a、b两个集合,若基础数据分类模型构建时使用了a集合中的初始标注对象,那么在步骤s123确定目标专家业务领域树时则需使用b集合中的初始标注对象。

步骤s124,基于用户的数据搜索行为将点击跳转关系转换为数据对象之间的直接相似度。

获取到用户的数据搜索行为后,根据用户在数据源的搜索过程中所产生的数据对象之间的点击跳转关系,可以计算出数据对象之间的直接相似度,例如a为点击对象,b为用户点击a跳转后的展示对象,根据数据对象a的被点击总次数,以及数据对象a和数据对象b之间的点击跳转关系可以确定数据对象a和数据对象b之间的直接相似度。

步骤s125,基于数据对象之间的直接相似度构建目标机器业务领域树。

最后,利用预设处理方法可以根据数据对象之间的直接相似度构建网状的目标机器业务领域树。

上文中对如何获取目标专家业务领域树和目标机器业务领域树的过程进行了描述,下面对具体如何构建基础数据分类模型的过程进行介绍。

在一个可选的实施方式中,上述步骤s122,基于初始专家业务领域树和预设数量个初始标注对象构建基础数据分类模型,具体包括如下步骤:

步骤s1221,基于初始专家业务领域树的索引结构中的特征项计算不同数据分类之间的区别特征和相同数据分类的固有特征。

初始专家业务领域树的索引结构中的特征来源一部分是由初始专家业务领域树已经注明的,可以直接从树杈节点中获取到(很多情况下是没有标注的,即便标注,不同种类专家由于出发点不同,在描述上存在描述不准确和同一语义多次描述的问题);另一部分是零散添加到特征候选库中的,该部分特征占专家描述的主要部分,例如,用户认为大小和长短都是很突出的特征,但并不清晰哪些地方可以用到,那么可以先将上述两种特征添加到特征候选库中。

结合上述特征来源能够构建当前条件下所有数据对象全部可能特征集合,使用这些特征集合对数据对象进行描述,利用确定的特征提取数据对象信息,计算出不同数据分类之间的区别特征和相同数据分类的固有特征,具体为统计一个专家分支中所有被描述的数据块的特征标签,依据特征标签逐级计算不同分支的主要不同点和同一个分支的相同点。

步骤s1222,基于区别特征和固有特征对初始专家业务领域树的所有树杈节点进行特征标注,得到标注后的专家业务领域树。

具体的,不同数据分类之间的区别特征和相同数据分类的固有特征能够用于初始专家业务领域树的解释(特征标注),得到标注后的专家业务领域树供专家分析,还能够用以筛选特征。标注后的专家业务领域树的可视化效果如下:

动物分类

|-兽类(相异与鸟类,不会飞行,不会下蛋)(相似与兽类,团体个数>4)

|-灰狼

|-山狸

|-鸟类(相异与兽类,飞行,下蛋)(相似与鸟类,团体个数<4)

|-丹顶鹤

|-乌鸦

上述可视化效果中,动物,兽类,鸟类,灰狼等等都是数据对象,飞行和下蛋是数据对象的属性。

步骤s1223,利用标注后的专家业务领域树和预设数量个初始标注对象对初始多分类的逻辑回归模型进行训练,得到目标多分类的逻辑回归模型。

在得到标注后的专家业务领域树后,将每个根上的条件向下传递,直到叶子节点包含全部节点信息,保留叶子节点的条件特征项作为下一学习项,基于上述条件特征项构建初始多分类的逻辑回归模型,并利用预设数量个初始标注对象对初始多分类的逻辑回归模型进行训练,得到目标多分类的逻辑回归模型,其中,目标多分类的逻辑回归模型用于确定树杈节点的特征和权重。

需要说明的是,本发明实施例中的训练过程不同于其他神经网络多分类模型的训练,为了保留专家分类依据,只使用了一层线性回归逻辑,且并未使用非线性计算单元。

步骤s1224,基于树杈节点的特征和权重构建每个数据分类的基础数据分类模型。

得到目标多分类的逻辑回归模型后,提取目标多分类的逻辑回归模型中的参数(特征和权重)作为单个类别的基础数据分类模型,方便后续操作(专家调整、命中)。

基础数据分类模型的可视化效果如下:

v(对象∈鸟类)=p(飞行)*w(飞行,鸟类)+p(下蛋)*w(下蛋,鸟类)+团体个数*w(团体个数,鸟类);

v(对象∈兽类)=p(飞行)*w(飞行,兽类)+p(下蛋)*w(下蛋,兽类)+团体个数*w(团体个数,兽类);

其中,p(飞行)*w(飞行,鸟类)用于表示数据对象具备飞行属性的概率乘以鸟类会飞行的权重,也就是说,如果只有鸟类会飞,则此项得分高,如果所有的鸟类都会飞,则此项得分高,得分越高,符合这些条件的对象越有可能是鸟类。p(下蛋)*w(下蛋,鸟类)的解释依次类推,团体个数一般指这个数据对象的群体有多少个个体,w(团体个数,鸟类)表示团体个体的数量对这个数据对象是否是鸟类这个结论的支撑程度。

若已知数据对象为兔子,且兔子不飞行不下蛋,团体个数为6,w(飞行,鸟类)=w(下蛋,鸟类)=1,w(飞行,兽类)=w(下蛋,兽类)=-1,w(团体个数,鸟类)=-0.25,w(团体个数,兽类)=0.25。

那么v(兔子∈鸟类)=(-1)*1+(-1)*1+(-0.25)*6=-3.5;

v(兔子∈兽类)=(-1)*(-1)+(-1)*(-1)+0.25*6=3.5,由此可知,v(兔子∈鸟类)<v(兔子∈兽类),因此得出结论,兔子是兽类的可能性更高。

假设数据对象为蝙蝠,若直接使用初始专家业务领域树对应的数据分类模型进行预测,因为蝙蝠会飞,故而蝙蝠会被划分到鸟类;若使用上述基础数据分类模型对蝙蝠进行分类预测,虽然蝙蝠会飞,但是通过相似条件发现的群居特性,那么蝙蝠依旧被划分为兽类,因此,说明基础数据分类模型比初始专家业务领域树对应的数据分类模型有更强的预测能力。

上文中对如何构建基础数据分类模型的过程进行了详细的描述,下面对如何确定目标专家业务领域树进行具体介绍。

在一个可选的实施方式中,上述步骤s123,基于基础数据分类模型、目标初始标注对象和专家意见确定目标专家业务领域树,具体包括如下步骤:

步骤s1231,利用基础数据分类模型对目标初始标注对象进行特征提取并预测分类,统计每个数据分类条件的命中次数。

基础数据分类模型在训练时,使用的是除目标初始标注对象之外其他初始标注对象,将目标初始标注对象带入基础数据分类模型,对每个数据对象进行分类预测,统计每个数据分类条件的命中次数。

步骤s1232,基于每个数据分类条件的命中次数对每个树杈节点的权重进行调整,得到第一数据分类模型。

因为基础数据分类模型无法预测没有出现过的数据分类,这种情况下神经网络无法通过一次又一次的样本训练进行提升,而直接进入震荡,所以需要根据每个数据分类条件的命中次数对每个树杈节点的权重进行调整,使调整后得到的第一数据分类模型能够预测出没有出现过的数据分类。

上述调整过程涉及到数据平滑,so′=so+sn,其中,wo表示上一次搜索的样本权重,wn表示本次搜索的样本权重,so表示上一次搜索中的命中次数,命中次数是指条件被触发的次数,sn表示本次搜索中的命中次数,m表示数据分类的种数,sn,t表示正确的命中次数,如没有标注sn,t=sn,wo′表示下一次搜索计算时使用的样本权重,so′表示下一次搜索计算时使用的命中次数。

如果第一次搜索共包括两个对象,且上述两个对象均具有飞行属性,并均为鸟类,则wo=0,so=0,m=2(鸟类或兽类),w(飞行,鸟类):wn=1,sn,t=sn=2,鸟的飞行权重计算:so′=0+2=2。

如果是第二次搜索,且依旧包括均具有飞行属性的两个对象,并均为鸟类,则so′=2+2=4。

如果第二次搜索中包括具有飞行属性的三个对象,其中两个对象是鸟类,另一个对象是蝙蝠(属于兽类),但误判蝙蝠为鸟类,则so′=2+3=5。

通过上文中的计算,可以看出新的权重小于历史权重,缺失的那一部分预留给新的可能,如果转换为概率(以第一次为计算)可以求得以鸟类计算为例,分子上的数字2表示即会飞,又是鸟的对象的数量,分母中的4是表示会飞的对象的数量,分母中的2表示数据平滑类别,即能飞、不能飞当前的种类一共有两种,p(兽类,飞行)+p(鸟类,飞行)<1,缺失的那部分就是既不是鸟类也不是兽类的可能。

步骤s1233,将基础数据分类模型和第一数据分类模型进行合并,得到第二数据分类模型。

进一步的,在得到基础数据分类模型和第一数据分类模型后,将两者合并,得到第二数据分类模型。为了便于理解,下面举例说明。

假设基础数据分类模型的可视化效果为:

v(对象∈鸟类)=p(飞行)*1+p(下蛋)*0.99;

v(对象∈兽类)=p(飞行)*(-1)+p(下蛋)*(-0.99);

第一数据分类模型的可视化效果为:

v(对象∈鸟类)=p(飞行)*0.3333+p(下蛋)*0.3331;

v(对象∈兽类)=p(飞行)*(-0.3333)+p(下蛋)*(-0.3331);

假定专家给定的决议样本是200个,合并模型获得第二数据分类模型,其可视化效果为:

v(对象∈鸟类)=p(飞行)*0.9934+p(下蛋)*0.9818;

v(对象∈兽类)=p(飞行)*(-0.9934)+p(下蛋)*(-0.9818)。

步骤s1234,基于第二数据分类模型中每个树杈节点权重的大小对第二数据分类模型进行重构,得到第三数据分类模型。

得到第二数据分类模型后,依据权重的绝对值所占比例,从上至下重构树,得到第三数据分类模型。具体的,利用算式计算树杈节点的权重,沿用上述举例中的第二数据分类模型,可得aw(飞行)=abs(0.9934)+abs(-0.9934)=1.9868,aw(下蛋)=abs(0.9818)+abs(-0.9818)=1.9636,aw(飞行)>aw(下蛋),所以在重构树时,优先构建飞行,再构建下蛋,第三数据分类模型的可视化效果为:

动物分类

|-飞行

|-下蛋

|-鸟类

|-不飞行

|-不下蛋

|-兽类

步骤s1235,基于专家意见对第三数据分类模型进行调整,得到第四数据分类模型。

在得到第三数据分类模型后,需要专家介入,对第三数据分类模型进行检测并进行调整,检测时先检验叶子节点是否异常,再判断叶子节点内部样本是否正常,对异常的树杈节点进行调整,最终得到第四数据分类模型。

步骤s1236,基于第四数据分类模型构建对应的专家业务领域树,并对对应的专家业务领域树上的所有树杈节点进行特征标注,得到目标专家业务领域树。

在一个可选的实施方式中,上述步骤s1235,基于专家意见对第三数据分类模型进行调整,得到第四数据分类模型,具体包括如下步骤:

步骤s12351,去除目标初始标注对象的分类标注,得到目标未标注对象。

步骤s12352,基于第三数据分类模型对目标未标注对象进行分类预测,得到数据分类结果。

具体的,初始标注对象中包括分类标注和属性标注,为了确定第三数据分类模型的分类效果,将目标初始标注对象的分类标注去除,得到目标未标注对象,然后利用第三数据分类模型对目标未标注对象进行分类预测,得到数据分类结果。

步骤s12353,基于专家意见对数据分类结果进行调整,得到第四数据分类模型。

专家在检验数据分类结果时,对叶子节点进行标注,其可视化效果如下:

for某个分类节点in逆序(叶子节点熵列表):

计算节点内部每一项方差得方差列表

for一个样本in逆序(方差列表):

if专家连续检验无问题:

break

上文中的逆序是指由大到小的顺序,也就是说,无需对所有样本进行标注检验,只用检测最容易误判的对象,如最容易误判的对象群体都没有误判,则无需对典型样本进行判断,这里通过先定位最容易误判的分类,再定位最容易误判个体,最终获取被标记错误的个体。

相比于调整最终的样本,调整树杈则快的多,其中,调整包括:修正树杈节点的特征标注,调整树杈包括层的标注及从属关系的调整,层的标注即为每一层添加关键字方便操作源理解;从属关系调整相当于交换节点层,通常不会出现该类问题,层高度越高,修正特征权值差距越大,修正代价越大,应尽量配置好初始模板避免从属调整,从属调整的层数越高,需要重复的次数越多,而叶子节点错误则会很快收敛,需要注意的是永远存在少部分误分,例如通过飞行和下蛋永远无法正确分类蝙蝠,需要专家设定族群数量,或索引结构中存在族群数量标签,才能通过引入新的维进行正确分类。

目标专家业务领域树虽然便于理解,但却不是数据源查找的最佳选择,最适于查找的数据结构应由查询关系构建,操作员通过领域信息最少步骤定位数据源的数据结构是最理想的机器业务领域树结构,其取决于两个需求,最大化统一所有的查询模式(设计逻辑让更多人查的更快)以及最小化查询跳数,对应数学逻辑上的归纳、化简与优化。

常规的导航索引是逐层有分类打开,如图4所示,鼠标放置于图标上还会有关键字出现,包括之前标注的解释,条件,但是如果数据有很多层,上述导航索引方式虽然科学,但是不够人性化,如果能在点击动物分类的时候就直接将常用的结果选项显示在当前页面则更好,因此,下面对如何根据用户的数据搜索行为构建目标机器业务领域树的过程进行介绍。

在一个可选的实施方式中,上述步骤s124,基于用户的数据搜索行为将点击跳转关系转换为数据对象之间的直接相似度,具体包括如下步骤:

步骤s1241,基于用户的数据搜索行为统计展示的数据对象的数量。

步骤s1242,利用算式计算每个数据对象被随机点击的总次数。

步骤s1243,利用算式计算数据对象之间的直接相似度。

具体的,首先根据用户的数据搜索行为记录下数据的查询过程中所展示的数据对象的数量,然后利用算式计算每个数据对象被随机点击的总次数,其中,n表示数据对象的数量,表示用户点击数据对象a跳转后再点击数据对象bi的次数,最后利用算式计算数据对象之间的直接相似度,其中,f(a,b)表示数据对象a和数据对象b的直接相似度。

为了便于理解,下面举例说明,通常考虑到数据平滑,往往需要给附一个初值,为通过a点击bi的期望,也即,用户点击数据对象a跳转后再点击数据对象bi的次数,假设一段时间点击兽类的操作次数共200次,两个初始对象灰狼和山狸依据最大熵进行取值,即各100次,则也即,默认的从属关系大概每层是0.7311的相似度。

当灰狼被多点10次的时候,

当出现一个新的连接蝙蝠并创建30次的时候,其中,新的连接由相似或用户条件查询过程中创建。

在一个可选的实施方式中,上述步骤s125,基于数据对象之间的直接相似度构建目标机器业务领域树,具体包括如下步骤:

步骤s1251,利用算式dist(a,b)=1-ln(f(a,b))将数据对象之间的直接相似度转换为数据对象之间的距离。

步骤s1252,基于数据对象之间的距离构建目标机器业务领域树。

假设数据对象a和数据对象b相连,数据对象b和数据对象c相连,但数据对象a和数据对象c不相连,如果直接使用上述直接相似度的计算方式,则会发现无法确定数据对象a和数据对象c的相似度,所以当数据对象是很大的一张网络中的n个节点时,为了构建机器业务领域树,还需要利用算式dist(a,b)=1-ln(f(a,b))将数据对象之间的直接相似度转换为数据对象之间的距离。

若数据对象a和数据对象b相连,数据对象b和数据对象c相连,数据对象a和数据对象c不相连,则dist(a,c)需满足|dist(a,b)-dist(b,c)|≤dist(a,c)≤dist(a,b)+dist(b,c)。相似还是相似,只不过是转换为距离来统一度量,实现相似的跳转,dist(a,c)的取值是将所有对象的距离尽可能的确认后,计算出来所有点熵最大时候的最佳所在点(尽可能稀疏的情况下),由专家固定其中几个点可以大大加速计算过程。图5为本发明实施例提供的一种将数据对象之间的直接相似度转换为数据对象之间的距离的效果图,根据数据对象之间的距离即可构建网状的目标机器业务领域树。

获取到目标专家业务领域树和目标机器业务领域树后,即可利用上述两棵树快速完成目标数据源的搜索,减少了设计人员的计算量,有效的缓解了现有技术中的数据源搜索方法存在的搜索效率低的技术问题。

实施例二

本发明实施例还提供了一种数据源搜索装置,该数据源搜索装置主要用于执行上述实施例一所提供的数据源搜索方法,以下对本发明实施例提供的数据源搜索装置做具体介绍。

该装置主要包括:获取模块10,搜索模块20,其中:

获取模块10,用于获取目标专家业务领域树和目标机器业务领域树,其中,目标专家业务领域树为基于初始专家业务领域树结合多分类训练得到的树状的数据业务化解释,目标机器业务领域树为基于用户的数据搜索行为得到的网状的数据业务化解释。

搜索模块20,用于利用目标专家业务领域树和目标机器业务领域树对目标数据源进行搜索,得到目标数据源的搜索结果。

现有技术中的数据源搜索方法严重依赖设计人员的专业经验,并且需要大量计算才能准确定位所需数据来源,对于大数据应用场景,将出现搜索时间长,搜索效率低的技术问题。与现有技术相比,本发明实施例提供的数据源搜索装置,提供了预先构建的目标专家业务领域树和目标机器业务领域树,利用树的结构按照业务逻辑逐层对目标数据源进行搜索,即可得到目标数据源的搜索结果,从而减少了设计人员的计算量,加快了目标数据源的搜索速度,从而有效的缓解了现有技术中的数据源搜索方法存在的搜索效率低的技术问题。

可选的,获取模块10包括:

获取单元,用于获取初始专家业务领域树、初始专家业务领域树的所有初始标注对象和用户的数据搜索行为。

第一构建单元,用于基于初始专家业务领域树和预设数量个初始标注对象构建基础数据分类模型。

确定单元,用于基于基础数据分类模型、目标初始标注对象和专家意见确定目标专家业务领域树,其中,目标初始标注对象为所有初始标注对象中除预设数量个初始标注对象之外的初始标注对象。

转换单元,用于基于用户的数据搜索行为将点击跳转关系转换为数据对象之间的直接相似度。

第二构建单元,用于基于数据对象之间的直接相似度构建目标机器业务领域树。

可选的,第一构建单元包括:

第一计算子单元,用于基于初始专家业务领域树的索引结构中的特征项计算不同数据分类之间的区别特征和相同数据分类的固有特征。

标注子单元,用于基于区别特征和固有特征对初始专家业务领域树的所有树杈节点进行特征标注,得到标注后的专家业务领域树。

训练子单元,用于利用标注后的专家业务领域树和预设数量个初始标注对象对初始多分类的逻辑回归模型进行训练,得到目标多分类的逻辑回归模型,其中,目标多分类的逻辑回归模型用于确定树杈节点的特征和权重。

第一构建子单元,用于基于树杈节点的特征和权重构建每个数据分类的基础数据分类模型。

可选的,确定单元包括:

预测子单元,用于利用基础数据分类模型对目标初始标注对象进行特征提取并预测分类,统计每个数据分类条件的命中次数。

第一调整子单元,用于基于每个数据分类条件的命中次数对每个树杈节点的权重进行调整,得到第一数据分类模型。

合并子单元,用于将基础数据分类模型和第一数据分类模型进行合并,得到第二数据分类模型。

重构子单元,用于基于第二数据分类模型中每个树杈节点权重的大小对第二数据分类模型进行重构,得到第三数据分类模型。

第二调整子单元,用于基于专家意见对第三数据分类模型进行调整,得到第四数据分类模型。

第二构建子单元,用于基于第四数据分类模型构建对应的专家业务领域树,并对对应的专家业务领域树上的所有树杈节点进行特征标注,得到目标专家业务领域树。

可选的,第二调整子单元具体用于:

去除目标初始标注对象的分类标注,得到目标未标注对象。

基于第三数据分类模型对目标未标注对象进行分类预测,得到数据分类结果。

基于专家意见对数据分类结果进行调整,得到第四数据分类模型,其中,调整包括:修正树杈节点的特征标注。

可选的,转换单元包括:

统计子单元,用于基于用户的数据搜索行为统计展示的数据对象的数量。

第二计算子单元,用于利用算式计算每个数据对象被随机点击的总次数,其中,n表示数据对象的数量,表示用户点击数据对象a跳转后再点击数据对象bi的次数。

第三计算子单元,用于利用算式计算数据对象之间的直接相似度,其中,f(a,b)表示数据对象a和数据对象b的直接相似度。

可选的,第二构建单元包括:

转换子单元,用于利用算式dist(a,b)=1-ln(f(a,b))将数据对象之间的直接相似度转换为数据对象之间的距离。

第三构建子单元,用于基于数据对象之间的距离构建目标机器业务领域树。

实施例三

参见图6,本发明实施例提供了一种电子设备,该电子设备包括:处理器60,存储器61,总线62和通信接口63,所述处理器60、通信接口63和存储器61通过总线62连接;处理器60用于执行存储器61中存储的可执行模块,例如计算机程序。

其中,存储器61可能包含高速随机存取存储器(ram,randomaccessmemory),也可能还包括非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。通过至少一个通信接口63(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网,广域网,本地网,城域网等。

总线62可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。

其中,存储器61用于存储程序,所述处理器60在接收到执行指令后,执行所述程序,前述本发明实施例任一实施例揭示的流过程定义的装置所执行的方法可以应用于处理器60中,或者由处理器60实现。

处理器60可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器60中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器60可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(digitalsignalprocessing,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(field-programmablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器61,处理器60读取存储器61中的信息,结合其硬件完成上述方法的步骤。

本发明实施例所提供的一种数据源搜索方法、装置和电子设备的计算机程序产品,包括存储了处理器可执行的非易失的程序代码的计算机可读存储介质,所述程序代码包括的指令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,或者是该发明产品使用时惯常摆放的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

此外,术语“水平”、“竖直”、“悬垂”等术语并不表示要求部件绝对水平或悬垂,而是可以稍微倾斜。如“水平”仅仅是指其方向相对“竖直”而言更加水平,并不是表示该结构一定要完全水平,而是可以稍微倾斜。

在本发明的描述中,还需要说明的是,除非另有明确的规定和限定,术语“设置”、“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。

最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1