一种广电知识图谱构建方法及装置与流程

文档序号:21102067发布日期:2020-06-16 20:54阅读:218来源:国知局
一种广电知识图谱构建方法及装置与流程

本发明涉及计算机技术领域,特别是涉及一种广电知识图谱构建方法及装置。



背景技术:

随着我国有线数字电视网络由单向广播电视网向双向化的下一代广播电视网的演进发展,传统广电运营商正由原来的单一网络运营商向综合信息服务运营商转变,在这个转变过程中,及时获取用户的兴趣偏好、收视习惯和消费特征成为了一个关键因素,通过分析海量数据的特性,挖掘数据价值,构建广电知识图谱系统,将极大的方便广电运营商掌握用户行为特征和节目资源特性,从而更加及时准确的服务用户,进而极大的改善用户体验、引导用户消费、提升用户黏性,为广电运营商的个性化服务和智能运营决策提供辅助支持。

虽然,知识图谱借助于图结构的特点表达不同知识节点之间的关系依赖等,但是,现有的知识图谱并不能从多角度展示每个用户的行为习惯和兴趣爱好,从而使得运营商并不能很好的掌握每个用户的特点。



技术实现要素:

本发明提供了一种广电知识图谱构建方法及装置,以解决现有技术中现有的知识图谱并不能从多角度展示每个用户的行为习惯和兴趣爱好,使得运营商并不能很好的掌握每个用户的特点的问题。

一方面,本发明提供了一种广电知识图谱构建方法,包括:

对预设数据源进行分析处理,并存储在数据库中;

基于所述数据库,对用户、节目和套餐进行用户画像、节目标签和套餐标签的画像特征的可视化展示,并从所述数据库中获取人-人、人-节目、人-套餐之间的关系,分别进行知识图谱的可视化展示;

根据所述画像特征和所述知识图谱构建广电行业的知识图谱应用。

优选地,所述数据源包括广电内部的用户收视行为数据、用户订购行为数据、媒资系统数据,以及互联网公开的节目信息数据。

优选地,对预设数据源进行分析处理,包括:

步骤一,建立hive映射表,将hdfs中预处理后的用户收视行为、用户订购行为、媒资系统中的节目信息以及从互联网爬取得到的节目信息的数据导入到hive数据仓库;

步骤二,用分布式计算框架spark从用户收视行为和用户订购行为中分别抽取出用户基本属性信息和套餐基本属性信息,并将媒资系统和互联网的节目信息融合后给节目打标签,最后将生成的标签与节目基本属性信息合并后存入mysql关系型数据库,同理,基于套餐基本属性信息中的包名用自然语言处理技术给套餐打标签,将套餐基本属性信息和套餐标签合并后存入mysql;

步骤三,用spark从用户收视行为和订购行为中对用户观看的节目和订购的套餐的标签进行词频统计,分别挑选次数最多的topn作为用户观看节目的兴趣标签和用户订购套餐的兴趣标签,将用户基本属性信息和用户观看节目的兴趣标签和用户订购套餐的兴趣标签合并后存入mysql。

优选地,所述步骤三之后还包括:

将用spark从用户收视行为和用户订购行为中抽取出用户-观看-节目,用户-订购-套餐的三元组关系并导入neo4j图数据库中进行存储。

优选地,还包括:构建节目标签。

优选地,构建节目标签包括:

步骤一:对节目简介文本进行简繁转换,全部转换为中文后,进行分词处理;

步骤二:利用tf进行词频统计,得到基于所有节目简介分词结果统计的词语词频,并对词频列表进行频率从大到小的排序,使用该词频统计结果,对每个节目简介的分词结果进行过滤,仅保留频率大于预定数值的词语;

步骤三:对选取的高频词语进行去停用词处理;

步骤四:经过去停用词处理后,每个节目简介都会获得一个特征词表,以每个节目的特征词表作为一个样本,构建用于深度学习模型word2vec的训练数据;

步骤五:利用该词向量空间及其所提供的相似词语临近特性,应用kmeans算法计算一个聚类结果;

步骤六:对于聚类结果的每个簇,选择其中最有代表性的一个特征词作为该簇的表示词,并最终对所有节目的特征词对应的表示词进行统计,以统计结果中较重要的表示词作为该节目的标签。

优选地,所述步骤四包括:

通过word2vec的连续词袋cbow模型和hierarchicalsoftmax框架,利用节目的特征词表作为输入数据进行训练,进而得到了一个足以表征全部特征词的词向量空间,每一个特征词都获得了一个唯一的向量表示,所述cbow模型包含三层:输入层,投影层和输出层。

优选地,所述步骤五包括:

构建一个初始的多类别划分区域,通过计算各个划分区域的质心,在每一轮迭代时不断调整各个样本所属的簇分类,并在下一轮利用新的簇划分结果重新计算质心,如此反复迭代直至稳定,最终可获得一个可靠的聚类结果,以全部特征词在词向量空间中的表示作为输入,构建一个kmeans模型,训练出特征词的聚类结果,每个特征词将属于一个特定的簇。

本发明第二方面提供了一种广电知识图谱构建装置,包括:

存储分析模块,用于对预设数据源进行分析处理,并存储在数据库中;

可视化模块,用于基于所述数据库,对用户、节目和套餐进行用户画像、节目标签和套餐标签的画像特征的可视化展示,并从所述数据库中获取人-人、人-节目、人-套餐之间的关系,分别进行知识图谱的可视化展示;

处理模块,根据所述画像特征和所述知识图谱构建广电行业的知识图谱应用。

本发明第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有信号映射的计算机程序,所述计算机程序被至少一个处理器执行时,以实现上述任一种所述的广电知识图谱构建方法。

本发明有益效果如下:

本发明提供的广电大数据知识图谱不仅可以直观全面的表示出广电领域典型应用场景下的海量知识信息,而且还可以多角度的展示每个用户的行为习惯和兴趣偏好,从而帮助广电运营商管更好的掌握每个用户的特点,进而进行精准化推荐和市场分析等。

上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:

图1是本发明实施例的一种广电知识图谱构建方法的流程示意图;

图2是本发明实施例的广电知识图谱系统架构图;

图3是本发明实施例的广电用户画像构建系统流程图;

图4是本发明实施例的节目标签构建流程示意图;

图5是本发明实施例的基于cbow的word2vec模型示意图;

图6是本发明实施例的知识库构建流程示意图;

图7是本发明实施例的典型知识图谱场景示意图;

图8是本发明实施例的属性图模型示意图;

图9是本发明实施例的广电知识图谱系统首页效果示意图;

图10a是本发明实施例的广电知识图谱系统基本信息效果图;

图10b是本发明实施例的广电知识图谱系统基本信息效果图;

图10c是本发明实施例的广电知识图谱系统基本信息效果图;

图11是本发明实施例的广电知识图谱系统单节点关系图谱效果图;

图12是本发明实施例的广电知识图谱系统双节点关系图谱效果图;

图13是本发明实施例的广电知识图谱系统智能推荐效果图;

图14是本发明实施例的一种广电知识图谱构建装置的结构示意图。

具体实施方式

下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。

本发明第一实施例提供了一种广电知识图谱构建方法,参见图1,该方法包括:

s101、对预设数据源进行分析处理,并存储在数据库中;

由于广电领域主要的业务场景为用户观看节目、用户付费购买套餐等,因此构建知识图谱时的数据节点可分为用户、节目、套餐三大类,而用户与节目、用户与套餐之间存在着关联关系。

本发明实施例构建广电知识图谱的数据源主要由两大部分组成,其一是来自广电内部的用户收视行为数据、用户订购行为数据、媒资系统数据,这部分数据的特点是数据量庞大,数据真实可靠,但缺乏整理和聚合;其二是来自互联网公开的节目信息数据,可以对媒资系统中的数据进行补充、丰富和完善。

s102、基于所述数据库,对用户、节目和套餐进行用户画像、节目标签和套餐标签的画像特征的可视化展示,并从所述数据库中获取人-人、人-节目、人-套餐之间的关系,分别进行知识图谱的可视化展示;

s103、根据所述画像特征和所述知识图谱构建广电行业的知识图谱应用。

总体来说,本发明实施例的核心是针对广电业务的特点和需求,提出并设计了一套广电知识图谱系统,通过构建数据节点标签,完成用户画像和知识库的构建,同时提供交互式分析和可视化功能,以方便分析人员进行运营分析。

图2为本发明实施例的广电知识图谱系统架构图,如图2所示,本发明实施例的广电知识图谱系统总体架构自底向上分为四层:数据源、存储分析层、可视化层和应用层。

本发明实施例所述数据源包括广电内部的用户收视行为数据、用户订购行为数据、媒资系统数据,以及互联网公开的节目信息数据。

本发明实施例中通过存储分析层对预设数据源进行分析处理,包括:

步骤一,建立hive映射表,将hdfs中预处理后的用户收视行为、用户订购行为、媒资系统中的节目信息以及从互联网爬取得到的节目信息的数据导入到hive数据仓库;

步骤二,用分布式计算框架spark从用户收视行为和用户订购行为中分别抽取出用户基本属性信息和套餐基本属性信息,并将媒资系统和互联网的节目信息融合后给节目打标签,最后将生成的标签与节目基本属性信息合并后存入mysql关系型数据库,同理,基于套餐基本属性信息中的包名用自然语言处理技术给套餐打标签,将套餐基本属性信息和套餐标签合并后存入mysql;

步骤三,用spark从用户收视行为和订购行为中对用户观看的节目和订购的套餐的标签进行词频统计,分别挑选次数最多的topn作为用户观看节目的兴趣标签和用户订购套餐的兴趣标签,将用户基本属性信息和用户观看节目的兴趣标签和用户订购套餐的兴趣标签合并后存入mysql。

步骤四,将用spark从用户收视行为和用户订购行为中抽取出用户-观看-节目,用户-订购-套餐的三元组关系并导入neo4j图数据库中进行存储。

本发明实施例的可视化层包含基本信息和知识库的可视化展示,底层存储分别为mysql和neo4j数据库,通过javajdbc接口从mysql数据库中获取用户、节目和套餐基本信息进行用户画像、节目标签和套餐标签可视化展示,利用javaapi或者restapi从neo4j数据库中获取人-人、人-节目、人-套餐之间的关系,分别进行可视化展示。

本发明实施例广电用户画像构建的系统流程图如图3所示,该流程图描述了以海量数据为基础构建整个广电大数据用户画像的过程。

在可视化层,需要对基础数据进行清洗与消岐,由于数据量巨大,这一部分将应用spark进行处理,最终生成的数据能够有效的支持后续的数据加工和关联。基础数据的处理包括包含用户基本属性的用户库、包含套餐基本属性的套餐库以及包含节目基本属性的节目数据库等的建立。典型的处理如:无效信息的过滤、属性值的清洗等。

可视化层的处理单元的一个关键点在于数据的标签构建。

1)套餐标签构建

套餐库中的套餐来自于广电运营商的业务设计,套餐基本属性信息中的套餐名包含了重要的信息,直接通过自然语言处理技术进行分词即可得到足以表征其特点的标签。

2)节目标签构建

节目库中的部分节目由于没有相关媒资信息,数据具有一定的残缺性,其基本信息需要从互联网上进行爬取,并从中选取非结构化的节目简介文本作为标签构建的数据来源,然后采用一种基于word2vec词嵌入和kmeans聚类的标签构建方法进行标签构建,方法流程如图4所示。

步骤一:对节目简介文本进行简繁转换,全部转换为中文后,应用自然语言处理领域常见的中文分词技术进行分词处理。

步骤二:利用tf进行词频统计,得到基于所有节目简介分词结果统计的词语词频,并对词频列表进行频率从大到小的排序。使用该词频统计结果,对每个节目简介的分词结果进行过滤,仅保留频率大于一定数值的词语(该数值动态可调,目的是保证大部分节目都可以有相应的特征词来表示)。

步骤三:对选取的高频词语进行去停用词处理,去除常见的无意义词汇,包括所有非名词和非形容词词汇,以及名词中不能表达特性的词汇。

步骤四:经过去停用词处理后,每个节目简介都会获得一个特征词表,以每个节目的特征词表作为一个样本,构建用于深度学习模型word2vec的训练数据。word2vec的全称是word2vector,是一项基于迭代方法的词向量训练模型。本发明中,我们选用word2vec的连续词袋模型(continuousbag-of-words,cbow)和hierarchicalsoftmax框架,利用节目的特征词表作为输入数据进行训练,进而得到了一个足以表征全部特征词的词向量空间,每一个特征词都获得了一个唯一的向量表示。cbow模型包含三层:输入层,投影层和输出层,如图5所示。

word2vec构建一个神经网络拓扑,当输入一个多个词语组成的序列时,cbow模型是以该词语的临近词语的词向量表达作为输入,并指定输出为该词语的词向量表达。根据神经网络的工作原理,经过多轮迭代后,所有用于word2vec训练的词语单元都将得到一个向量表示,由于该向量的获得是考虑词语左右两侧词语的向量,故除了能够唯一的表示某个词语外,也使得词向量空间中具有相似意思的词语的分布较为接近。

步骤五:利用该词向量空间及其所提供的相似词语临近特性,应用kmeans算法计算一个聚类结果。kmeans是机器学习领域中的一种聚类分析算法。它的基本原理是先构建一个初始的多类别划分区域,然后通过计算各个划分区域(称为簇)的质心,在每一轮迭代时不断调整各个样本所属的簇分类,并在下一轮利用新的簇划分结果重新计算质心,如此反复迭代直至稳定,即可获得一个可靠的聚类结果。我们以全部特征词在词向量空间中的表示作为输入,构建一个kmeans模型,训练出特征词的聚类结果,每个特征词将属于一个特定的簇。

步骤六:对于聚类结果的每个簇,我们选择其中最有代表性的一个特征词作为该簇的表示词,并最终对所有节目的特征词对应的表示词进行统计,以统计结果中较重要的表示词作为该节目的标签。

3)用户画像构建

对于用户表中的用户,我们结合上面所述的数据关联,以用户观看过的节目和订购过的套餐的标签集合进行统计分析,选取最重要的标签构成该用户的标签表示,包括节目兴趣标签和套餐兴趣标签,最终与用户属性信息整合成用户画像。

知识库是知识图谱的核心,知识图谱只是知识库呈现的一种方式,本发明重点放在知识库构建上。知识库构建流程如图6所示,自底向上包括数据获取、知识库构建和知识库存储。

数据获取来源于非结构化数据、半结构化数据以及结构化数据。其中非结构化数据主要为互联网上爬取的节目信息,半结构化数据包括套餐基本信息和媒资数据,结构化数据包括用户基本属性、套餐基本属性和节目基本属性。

知识库构建包括信息抽取、知识融合和知识加工。我们利用spark分别从直播收视行为、点播收视行为和套餐订购行为中抽取出用户实体、节目实体、套餐实体以及用户与节目之间和用户与套餐之间的观看和订购关系,此外还包括各类实体的属性和属性值;接下来对于不同来源的实体,我们根据实体的id及其属性进行实体去歧和共指消解,实现不同来源的三元组关系的融合,最后去除重复和信息丢失的三元组关系后完成知识库的构建。

图7是将三种不同的实体节点数据连接成一个有向的图结构。该图展示的是从用户视角出发,指向其所订购的套餐以及其所观看过的节目的典型知识图谱场景。

这种图结构的知识库一般采用图数据库进行存储,neo4j是目前最流行的图数据库,它不仅提供了存储功能,而且还提供简洁的可视化交互式查询界面,方便我们对数据质量和分析模型进行快速的验证,节省科研探索时间。与传统数据库不同,neo4j底层会以图的方式把用户定义的节点以及关系存储起来,通过这种方式,可以高效的实现从某个节点开始,通过节点与节点间关系,找出两个节点间的联系,其属性图模型如图8所示。一个图中会记录节点和关系两种不同的数据,关系可以用来关联两个节点数据,且节点和关系都可以拥有自己的属性。

本发明实施例的知识图谱系统主要包括三大块功能:首页、基本信息、数据分析。

首页主要以数字和图的方式展示系统中包含的用户数、节目数、套餐数以及关系数等统计数据,同时用饼状图、柱状图、树形图以及环形图等从不同维度对用户类型、节目类型等进行多维分析,具体效果如图9所示。

基本信息部分分别从用户、节目和套餐的角度以列表的形式展示,方便用户查看和查询这三类实体的属性记录,其中用户信息除了性别、年龄等基本属性外,还给出了个性化的节目标签和套餐标签;节目信息列表中列出了部分节目属性信息和节目标签,通过点击查看详情可以查看更丰富的节目属性;套餐信息包含套餐名称和价格等基本属性,同时也给出了套餐标签。具体示例分别如图10a、10b和10c所示。

数据分析部分包括知识图谱和智能推荐两块功能,知识图谱又可细分为单节点关系查询和双节点关系查询。通过单节点查询结果是从以某节点为中心层级展开节点及节点之间的关系,如查询用户id为28089749的3度全部关系,如图11所示。

而双节点查询可以查询用户、节目、套餐任意两者之间的关系,如查询用户id为123504102和节目id为4058786的3度全部关系类型,如图12所示。

智能推荐是推荐与该用户有共同观看或者订购行为的用户观看的其他节目和订购的其他套餐。如查询用户id为27988189的全部推荐,如图13所示。

总体来说,本发明的关键在于,应用word2vec词嵌入和kmeans聚类等机器学习和深度学习方法来支持构建一套高可用的广电知识图谱系统。

广电大数据知识图谱系统不仅可以直观全面的表示出广电领域典型应用场景下的海量知识信息,而且还可以多角度的展示每个用户的行为习惯和兴趣偏好,从而帮助广电运营商管更好的掌握每个用户的特点,进而进行精准化推荐和市场分析等。而采用word2vec词嵌入和kmeans算法进行数据的标签标定,很大程度上解决了数据中存在的标签离散、分布稀疏等问题,word2vec词向量空间可以使得对特征词的表达更加精准,而使用该词向量空间的近似词临近分布的特性,可以支持kmeans算法将相似的特征词进行聚类,之后通过选取统一的表示词来表示一组特征词,使得原本稀疏分散的特征词被统一到一个有限的容量,进而使得不同节目可以被树状的组织起来,同时,在利用节目标签构建用户标签时也使得标签的统计排序具有了实际意义,从而使得利用节目标签和用户观看记录来构建用户偏好标签得以实现。

本发明第二实施例提供了一种广电知识图谱构建装置,参见图14,包括:

存储分析模块,用于对预设数据源进行分析处理,并存储在数据库中;

可视化模块,用于基于所述数据库,对用户、节目和套餐进行用户画像、节目标签和套餐标签的画像特征的可视化展示,并从所述数据库中获取人-人、人-节目、人-套餐之间的关系,分别进行知识图谱的可视化展示;

处理模块,根据所述画像特征和所述知识图谱构建广电行业的知识图谱应用。

其中,本发明实施例的存储分析模块用于实现本发明第一实施例中存储分析层的相应功能,可视化模块用于实现本发明第一实施例中可视化层的功能,处理模块用于实现本发明第一实施例中应用层的功能。

本发明实施例的相关内容可参见本发明第一实施例进行理解,在此不做详细赘述。

本发明第三实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有信号映射的计算机程序,所述计算机程序被至少一个处理器执行时,以实现本发明第一实施例所述的广电知识图谱构建方法。本发明实施例的相关内容可参见本发明第一实施例进行理解,在此不做详细论述。

在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。

在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。

类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。

本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。

此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。

本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的分布式文件系统数据导入装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。

应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

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