CN109684483B - 知识图谱的构建方法、装置、计算机设备及存储介质 - Google Patents
知识图谱的构建方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN109684483B CN109684483B CN201811510375.7A CN201811510375A CN109684483B CN 109684483 B CN109684483 B CN 109684483B CN 201811510375 A CN201811510375 A CN 201811510375A CN 109684483 B CN109684483 B CN 109684483B
- Authority
- CN
- China
- Prior art keywords
- text corpus
- topic model
- keyword
- topic
- 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
Links
- 238000010276 construction Methods 0.000 title claims abstract description 63
- 238000000034 method Methods 0.000 claims abstract description 41
- 230000009193 crawling Effects 0.000 claims abstract description 24
- 239000011159 matrix material Substances 0.000 claims description 44
- 238000004590 computer program Methods 0.000 claims description 17
- 238000004458 analytical method Methods 0.000 claims description 15
- 238000012216 screening Methods 0.000 claims description 7
- 230000011218 segmentation Effects 0.000 claims description 4
- 238000007405 data analysis Methods 0.000 abstract description 2
- 230000000007 visual effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 19
- 235000014510 cooky Nutrition 0.000 description 14
- 238000012549 training Methods 0.000 description 14
- 238000012545 processing Methods 0.000 description 8
- 238000001228 spectrum Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 238000012800 visualization Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 241000239290 Araneae Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000005111 flow chemistry technique Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007789 sealing Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
- G06F18/24155—Bayesian classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/01—Social networking
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Physics & Mathematics (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Business, Economics & Management (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种知识图谱的构建方法、装置、计算机设备及计算机可读存储介质。方法包括:通过预设方式获取微信公众号列表;根据微信公众号列表访问微信服务器官方接口,获取微信公众号列表中每一个微信公众号的文章列表;根据文章列表爬取微信文章以获取构建知识图谱需要的文字语料。使用预设工具解析文字语料以获取文字语料的主题模型、主题模型的时间分布图谱及所述主题模型的关键词组合;根据文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取文字语料包含的对象及对象的属性;绘制对象及属性之间的关联关系以构建知识图谱。本申请实施例基于数据分析,可以实现高效和可视化整理微信公众号的内容。
Description
技术领域
本申请涉及自然语言处理技术领域,尤其涉及一种知识图谱的构建方法、装置、计算机设备及计算机可读存储介质。
背景技术
日常工作中,每个人的微信号都会关注一些指定的公众号信息和订阅号信息,但是,尤其当关注的公众号信息和订阅号信息比较多时,每个人很难从整体上了解自己关注了哪些方面的内容,甚至由于关注了过多的公众号和订阅号,导致一些公众号信息和订阅号信息来不及浏览,从而降低了对公众号信息和订阅号信息的处理效率。
发明内容
本申请实施例提供了一种知识图谱的构建方法、装置、计算机设备及计算机可读存储介质,能够解决传统技术中对微信公众号关注的公众号信息和订阅号信息处理效率较低的问题。
第一方面,本申请实施例提供了一种知识图谱的构建方法,所述方法包括:通过预设方式获取微信公众号列表;根据所述微信公众号列表访问微信服务器官方接口,获取所述微信公众号列表中每一个微信公众号的文章列表;根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料;使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合;根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性;绘制所述对象及所述属性之间的关联关系以构建知识图谱。
第二方面,本申请实施例还提供了一种知识图谱的构建装置,包括:第一获取单元,用于通过预设方式获取微信公众号列表;第二获取单元,用于根据所述微信公众号列表访问微信服务器官方接口,获取所述微信公众号列表中每一个微信公众号的文章列表;爬取单元,用于根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料;解析单元,用于使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合;第三获取单元,用于根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性;第一构建单元,用于绘制所述对象及所述属性之间的关联关系以构建知识图谱。
第三方面,本申请实施例还提供了一种计算机设备,其包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现所述知识图谱的构建方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器执行所述知识图谱的构建方法。
本申请实施例提供了一种知识图谱的构建方法、装置、计算机设备及计算机可读存储介质。本申请实施例基于微信文章的数据分析,通过预设方式获取微信公众号列表,以访问微信服务器官方接口,获得微信公众号里的微信文章,并解析所述微信文章,根据解析结果构建基于微信公众号的知识图谱,可以实现高效整理和可视化管理微信公众号的内容,减少了人工操作,同时通过微信文章知识图谱的关系工具,将文章列表进行有序整理,可以提高对微信公众号关注的公众号信息和订阅号信息的处理效率。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的知识图谱的构建方法的应用场景示意图;
图2为本申请实施例提供的知识图谱的构建方法的流程示意图;
图3为本申请实施例提供的知识图谱的构建方法的数据流向处理示意图;
图4为本申请实施例提供的知识图谱的构建方法的子流程示意图;
图5为本申请实施例提供的知识图谱的构建方法中主题模型的示意图;
图6为本申请实施例提供的知识图谱的构建方法中另一子流程示意图;
图7为本申请实施例提供的知识图谱的构建方法中共现矩阵示意图;
图8为本申请实施例提供的知识图谱的构建方法中第三个子流程示意图;
图9为本申请实施例提供的知识图谱的构建方法中知识图谱的示意图;
图10为本申请实施例提供的知识图谱的构建装置的示意性框图;
图11为本申请实施例提供的知识图谱的构建装置的另一个示意性框图;以及
图12为本申请实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1为本申请实施例提供的知识图谱的构建方法的应用场景示意图。所述应用场景包括:
(1)终端。图1所示终端上安装有显示关注的微信公众号的知识图谱的应用程序,通过所述应用程序可以显示关注的微信公众号的知识图谱,以方便用户从整体上了解自己关注的微信公众号及订阅号信息,提高公众号及订阅号的处理效率,所述应用程序可以为微信插件,也可以为微信小程序或者为单独的应用程序等形式,所述计算机设备可以为笔记本电脑、平板电脑或者台式电脑等电子设备,图1中的终端与应用程序服务器连接。
(2)应用程序服务器。图1所示应用程序服务器为图1中终端上安装的显示微信公众号的知识图谱的应用程序提供服务的服务器,图1所示应用程序服务器上安装有进行关注的微信公众号的知识图谱构建的工具,以执行知识图谱的构建方法的步骤。图1中的应用程序服务器分别与使用应用程序的终端及微信服务器连接。
(3)微信服务器,是指提供微信服务的服务器。图1中的应用程序服务器与微信服务器相连接,应用程序服务器从微信服务器上爬取微信公众号包含的微信文章,并将微信文章作为构建知识图谱的语料,对所述语料进行解析获取解析结果,根据解析结果构建关于微信公众号的知识图谱。
图1中的各个主体工作过程如下:终端上的应用程序要显示微信公众号的知识图谱时,调用应用程序服务器提供服务,所述应用程序服务器通过终端上的应用程序接收输入设备输入的微信公众号列表或者通过应用程序接口调取微信公众号列表,根据所述微信公众号列表访问微信服务器官方接口,获取所述微信公众号列表中每一个微信公众号的文章列表;根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料;使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合;根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性;绘制所述对象及所述属性之间的关联关系以构建知识图谱,以实现微信公众号信息的可视化,并将可视化的微信公众号的知识图谱通过终端上的应用程序展示。
需要说明的是,图1中仅仅示意出手机作为终端,在实际操作过程中,终端的类型不限于图1中所示,所述终端还可以为笔记本电脑或者平板电脑等电子设备,上述知识图谱的构建方法的应用场景仅仅用于说明本申请技术方案,并不用于限定本申请技术方案,上述连接关系还可以有其他形式。
图2为本申请实施例提供的知识图谱的构建方法的示意性流程图。该知识图谱的构建方法应用于图1中的应用程序服务器中,以完成知识图谱的构建方法的全部或者部分功能。
请参阅图2和图3,图2是本申请实施例提供的知识图谱的构建方法的流程示意图,图3为本申请实施例提供的知识图谱的构建方法的数据流向处理示意图。如图2所示,该方法包括以下步骤S210-S260:
S210、通过预设方式获取微信公众号列表。
其中,知识图谱,是指用可视化技术描述关注的微信公众号包含的信息,通过挖掘、分析、构建、绘制以显示微信用户感兴趣的知识及它们之间的相互联系,通过知识图谱可以反映微信用户感兴趣的话题或者信息。进一步地,个人知识图谱,是指用可视化技术描述微信使用者为个人的用户关注的微信公众号包含的信息,通过挖掘、分析、构建、绘制以显示个人感兴趣的知识及它们之间的相互联系,通过个人知识图谱可以反映一个人感兴趣的话题或者信息。
预设方式,是指通过应用程序编程接口(API端口)或者。接收用户输入的方式提供的公众号列表,是指在微信公众号界面搜索公众号时,会出现对应公众号的链接,通过公众号的链接访问其公众号,接收用户输入的方式提供的公众号,是指接收用户输入公众号,获取公众号对应的连接,以获取用户提供的公众号列表。其中,API,英文为ApplicationProgramming Interface,应用程序编程接口,是预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
具体地,应用程序服务器通过预设方式获取微信公众号列表,是指应用程序服务器通过API端口或者通过终端接收用户提供的公众号,得到待爬取的公众号列表。其中,通过API接口获取公众号列表,是指应用程序服务器启动构建基于微信公众号的知识图谱的应用程序时,获取通过API接口获取微信上个人公众号列表的权限,通过API接口自动获取微信上的个人公众号列表,得到待爬取的公众号列表。通过用户提供公众号列表,是通过终端上显示个人知识图谱的应用程序上提供给用户添加公众号接口的方式,比如添加公众号的名称,获取公众号列表,得到待爬取的公众号列表。
S220、根据所述微信公众号列表访问微信服务器官方接口,获取所述微信公众号列表中每一个微信公众号的文章列表。
其中,微信公众号的文章列表是指微信公众号包含的以列表形式呈现的微信文章。
具体地,应用程序服务器根据所述微信公众号列表,通过微信服务器官方接口逐一访问每一个微信公众号,获取所述微信公众号列表中每一个微信公众号的文章列表。
S230、根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料。
具体地,要构建某微信用户关注的微信公众号的知识图谱时,应用程序服务器获取该微信用户关注的微信公众号列表,根据微信公众号列表,通过访问微信服务器获得每一个公众号的文章列表,再通过网络爬虫程序爬取每一个微信公众号的文章列表中包含的微信文章,将所述微信文章中包含的文字作为构建知识图谱的文字语料。其中,网络爬虫程序,英文为Spider,又叫WebCrawler或者Robot,是一个沿着链接漫游Web文档集合的程序。它一般驻留在服务器上,通过给定的一些URL,利用HTTP等标准协议读取相应文档,然后以文档中包括的所有未访问过的URL作为新的起点,继续进行漫游,直到没有满足条件的新URL为止。
S240、使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合。
其中,预设工具是指解析文字语料以获取目标数据的工具,比如三层贝叶斯概率模型,又称为LDA模型,或者词频-逆文档频率矩阵,又称为TF-IDF。
具体地,应用程序服务器解析所述文字语料的数据,通过对所述文字语料数据的解析,获取所述文字语料数据包含的关键词,通过对所述关键词根据预设规则的筛选,获取满足预设条件的关键词,作为知识图谱内容数据,生成知识图谱内容以获取解析结果。比如,可以将所述文字语料输入三层贝叶斯概率模型,生成所述文字语料的主题模型,根据所述文字语料的时间分布生成所述主题模型的时间分布图谱,使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱,得到和保存关键词共现图谱中超过预设频数的关键词组合作为所述主题模型的关键词组合以获取解析结果。
S250、根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性;
S260、绘制所述对象及所述属性之间的关联关系以构建知识图谱。
具体地,服务器根据主题模型及主体模型的关键词组合对所述文字语料进行分类,获取对应主题下的文章列表,确定所述主题的对象,根据所述文章列表,抽取出含有所述对象的句子构成句子集合,分析所述句子集合,筛选出所述句子集合的属性和所述属性的下级属性,绘制所述对象、所述属性及所述下级属性之间的关联关系以构建知识图谱。
本申请实施例通过预设方式获取微信公众号列表,以访问微信服务器官方接口,爬取微信公众号列表中的每一个微信公众号的文章列表,并解析所述微信文章,从而根据所述每一个微信公众号的文章列表获取包含的微信文章,获取构建个人知识图谱的文字语料,根据解析结果构建基于微信公众号的知识图谱,可以实现高效整理微信公众号的内容,减少了人工操作,同时通过关系图谱的工具,将文章列表进行有序整理出来,实现微信公众号内容的可视化管理,可以提高对微信公众号关注的公众号信息和订阅号信息的处理效率。
在一个实施例中,所述根据所述文章列表爬取微信文章以获取构建知识图谱需要的解析文字语料的步骤之前,还包括:
构建包含代理互联网协议地址池和缓存数据池的爬虫程序。
其中,互联网协议,英文为InternetProtocol,缩写为IP。互联网协议地址英语为InternetProtocolAddress,又译为网际协议地址,缩写为IP地址,英语为IPAddress,简称为IP,是分配给网上上使用网际协议(英语为InternetProtocol,IP)的设备的数字标签。互联网协议地址池,指代理IP池,又称为IP代理池,由多个代理IP组成。由于同一个IP针对一个网站短时间内大量的访问通常会导致IP被封,除了在爬取数据时增加延迟(爬取量不大或者对爬取速度没要求),解决办法就是使用代理IP,可以解决IP被封的问题。
缓存数据池,指Cookies池,由多个Cookies组成。其中,Cookies,又可以使用其单数形式Cookie,指网站为了辨别用户身份、进行会话跟踪而储存在用户本地终端上的数据,通常经过加密。
具体地,由于很多网站做了反爬虫策略,可能会对每个IP做频次控制,为了保证爬取的有效性,避免被反爬虫策略限制,构建代理IP池和Cookies池。代理IP池可以通过爬虫事先从多个免费网站上获取代理IP之后,再做检查判断IP是否可用,可用的话就存放到代理IP池,或者购买收费的代理服务,或者自己搭建代理服务器,稳定,但需要大量的服务器资源。
进一步地,在一个实施例中,所述构建包含代理互联网协议地址池和缓存数据池的爬虫程序的步骤之后,还包括:
更新所述代理IP池的代理IP和所述Cookies池中的Cookies。
由于代理IP和Cookies具有时效性,为了保证爬取连续性,需要不定时更新爬取数据的代理IP和Cookies,以保证IP池和Cookies池中的代理IP和Cookies的有效性,从而保证爬取的连续性。其中,代理IP池可以通过爬虫事先从多个免费网站上获取代理IP之后,再做检查判断IP是否可用,可用的话就存放到代理IP池以进行更新代理IP池中的数据,或者购买收费的代理服务,将购买的代理服务IP存放到代理IP池以进行更新代理IP池中的数据,或者自己搭建代理服务器,将搭建的服务器的代理IP存放到代理IP池以进行更新代理IP池中的数据,同时,若服务器判断代理IP池中的代理IP失效,将失效的代理IP移除所述代理IP池。同时,由于Cookie指网站为了辨别用户身份、进行会话跟踪而储存在用户本地终端上的数据,所以代理IP池的代理IP数据更新后,Cookies池中的Cookies也会对应更新。
构建包含代理互联网协议地址池和缓存数据池的爬虫程序后,通过API端口获取公众号列表,或者通过界面获取用户提供的公众号列表,获得待爬取的公众号列表。
获取公众号列表后,为了提高爬取微信文章的效率,通过封装以目标公众号列表为输入的爬取公众号文章代码到Docker容器中,并且启动Docker容器部署到多台机器上,将抓取的文章列表文件保存在主服务器的目录中。具体地,本申请实施例中利用Docker容器采取分布式***,将多个Docker容器分别分布到不同的机器上,而后将抓取的文章列表文件保存在主服务器的目录中。其中,每个Docker容器中封装以目标公众号列表为输入的爬取公众号文章代码。其中,Docker容器是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口,并且不依赖于任何语言、框架及***,几乎没有性能开销,可以很容易地在机器和数据中心中运行。
请参阅图4,图4为本申请实施例提供的知识图谱的构建方法的子流程示意图。在该实施例中,所述使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合的步骤包括:
S241、将所述文字语料输入三层贝叶斯概率模型以生成所述文字语料的主题模型。
其中,三层贝叶斯概率模型,英文为Latent Dirichlet Allocation,简写为LDA模型,是一种文档主题生成模型,包含词、主题和文档三层结构。
本申请实施例基于微信文章的文字语料和LDA模型,获得主题模型,以及基于该微信文章的文字语料涉及的主题模型的概率分布,保存不同主题下的概率分布数据。
具体地,该生成主题模型的步骤包括:
首先,LDA模型经过训练语料进行训练,获取主题模型。
LDA是一种非监督机器学习技术,基于训练语料和现有技术中的LDA模型,经过训练,获得主题模型。其中,主题模型,是一个能对输入文本段落进行主题分类的模型,以文本段落为输入内容,以不同主题的概率分布为输出。
训练LDA模型时的所述训练语料可以是获取的微信文章,获取的主题模型也就是基于微信文章训练出的微信主题模型,能够提高微信用户涉及的主题模型的准确性。进一步地,训练LDA模型时的训练语料不但可以是微信文章,为了使训练语料来源多样化,从而提高LDA模型训练的准确性,训练时的文字语料还可以是从其他渠道获取的文章语料,比如网站、书籍、报纸杂志等。
其次,将微信公众号的微信文章输入主题模型,获取微信文章涉及的主题的概率分布。
请继续参阅图3,服务器获取一用户的微信公众号列表,根据微信公众号列表,从各个微信公众号中获取微信公众号文章的文章列表,根据每个微信公众号的微信文章列表,获取每个公众号的微信文章,将获取的微信文章作为文章语料,将所述文章语料输入获取的主题模型中,主题模型自动输出微信文章涉及的主题的概率分布,若多篇微信文章涉及不同主题,将获得各个主题的概率分布,保存获取的各个主题下的概率分布数据,从而获取该微信用户的微信公众号文章涉及的主题模型的概率分布,保存不同主题下的概率分布数据。
S242、根据所述文字语料的时间分布生成所述主题模型的时间分布图谱。
其中,时间分布图谱是指基于某一主体在不同时间段的分布情况。所述主体包括不同主题或者不同事件。时间分布图谱是用于观察不同主题在不同时间段的动态展示情况,以及观察不同事件在不同时间段的动态展示情况等。这部分是为了呈现不同主题内容的随着时间的分布变化,以及同一时间内,不同主题对热度的贡献指数。
具体地,将所述文字语料输入LDA模型,以获取根据所述文字语料的时间分布生成所述主题模型的时间分布图谱,从而实现本申请实施例基于微信文章的发布时间,获得并保存不同时间段的概率分布。请参阅图5,图5为本申请实施例提供的知识图谱的构建方法中主题模型的示意图。图5为一个时间分布图谱的例子,图示为某一用户微信公众号关注的医疗主题的文章和财经主题的文章在1-6月份的分布。
S243、使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱,获取所述关键词共现图谱中超过预设频数的关键词组合作为所述主题模型的关键词组合。
其中,词频-逆文档频率矩阵,英文为Term Frequency–Inverse DocumentFrequency简写为TF-IDF。TF-IDF主要通过如果某个词或短语在一篇文章中出现的频率TF高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类。
具体地,通过使用词频-逆文档频率矩阵分析所述文字语料以构建所述文字语料的关键词共现图谱,获取所述关键词共现图谱中超过预设频数的关键词组合作为所述主题模型的关键词组合,作为划分所述文字语料所属主题模型的依据,以归类所述文字语料,比如将文字语料归类为语音识别类,图像识别类或者深度学习类等不同的属性类别中。
进一步地,请参阅图6和图7,图6为本申请实施例提供的知识图谱的构建方法中另一子流程示意图,图7为本申请实施例提供的知识图谱的构建方法中共现矩阵示意图。在该实施例中,所述使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱的步骤包括:
S2431、基于所述文字语料,通过词频-逆文档频率矩阵获得每篇所述微信文章的预设数量关键词;
S2432、对所有预设数量的所述关键词进行汇总和去重,获得不重复的关键词词汇;
S2433、根据所述关键词词汇构建关键词共现矩阵以获取关键词共现图谱。
具体地,基于所述文字语料,通过词频-逆文档频率矩阵获得每篇所述微信文章的预设数量关键词,对所有预设数量的所述关键词进行汇总和去重,获得不重复的关键词词汇,根据所述关键词词汇构建关键词共现矩阵以获取关键词共现图谱。
比如,基于所述文字语料,通过TF_IDF矩阵得到每篇文章的Top10个关键词;对每篇文章的Top10个关键词进行汇总和去重,得到不重复的关键词词汇,{w1,w2,...,wm},其中,m为关键词的个数。获得不重复的关键词词汇的过程包括:
通过TF-IDF获取每篇文章10个关键词的步骤包括:获取每篇微信文章作为所述文字语料,将所述文字语料进行中文分词,获取每篇微信文章形成的词汇库,根据TF-IDF矩阵获取每篇文章中的Top10个关键词。
对每篇文章的Top10个关键词进行汇总和去重,得到不重复的关键词词汇,{w1,w2,...,wm}。其中,m为大于等于10的自然数。比如,有10篇微信文章,将10篇文章每篇文章各自获得的10个关键词进行汇总,获得100个关键词,假若100个关键词中有重复的关键词,去掉重复的关键词,保证关键词都是出现一次,具有唯一性的,得到不重复的关键词词汇。
获得不重复的关键词词汇,使用所述关键词词汇构建关键词共现矩阵,构建关键词共现矩阵的过程如下:横行和纵行为不重复的关键词词汇,{w1,w2,...,wm},遍历所有文章中Top10词汇表的两两组合,对应的词汇位置上加1;最终得到关键词共现矩阵,也就是关键词共现图谱。其中,关键词共现图谱,指的是共现关键词矩阵。
具体地,共现关键词矩阵的构建过程包括:首先,将所有关键词的列表,生成不重复的词汇列表;以词汇列表作为横轴和纵轴,生成初始化的共现关键词矩阵;其次,遍历所有文本的关键词列表,将关键词列表中两两出现的词汇组合,在共现关键词矩阵的对应值加1;最后,直至共现关键词矩阵完成构建。
比如,请参阅图7,若得到的不重复的关键词词汇包括a、b、c、d、e、f、j、h、i及g,以a、b、c、d、e、f、j、h、i及g分别为首行和首列构建共现矩阵,则每行和每列交汇处形成关键词的两两组合,比如aa、ab、ac、ad…ba、bb、bc…,遍历所有文章中是否存在每一个两两组合,若每一篇文章中存在一个两两组合,则在对应的两两组合词汇位置上加1,比如,若aa组合在一篇文章中出现,则在aa对应的位置上加1,若de组合在六篇文章中出现,则在de对应的位置处累积加到6,其中,ab和ba为一个相同的组合,直至共现关键词矩阵完成构建,最后结果请参阅图7。
获得关键词共现图谱后,获取并保存所述关键词共现图谱中超过预设频数的所述主题模型的关键词组合,获取所述关键词共现图谱中超过预设频数的关键词组合作为所述主题模型的关键词组合,作为划分所述文字语料所属主题模型的依据,以归类所述文字语料,比如,获取并保存关键词共现矩阵中频数超过5的关键词组合。
其中,频数,英文为Frequency,又称“次数”,是指将样本按照一定的方法分成若干组,每组内含有这个样本的个体的数目叫做频数,比如,图3中,aa的频数为1,de的频数为6。
具体地,基于共现关键词矩阵,从获取符合条件的关键词组合中,可以得到两点信息:1)哪些关键词属于高出现的关键词;2)热点关键词与哪些关键词相似。
请继续参阅图7,得到和保存关键词共现矩阵中频数超过预设数值的关键词组合,比如,得到和保存关键词共现矩阵中频数超过5的关键词组合,如图7所示,频数超过5的关键词组合为de,则可以判断关键词d和e属于高出现的关键词,还可以进一步判断热点关键词与关键词共现矩阵中的哪些关键词相似,或者热点关键词与d和e是否相似。
S244、获取并保存所述主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合。
具体地,获取并保存所述主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,将所述主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合作为所述文字语料的解析结果。
在一个实施例中,所述将所述文字语料输入三层贝叶斯概率模型以生成所述文字语料的主题模型的步骤包括:
获取经过训练的三层贝叶斯概率模型;
将所述文字语料输入所述三层贝叶斯概率模型以生成所述文字语料的主题模型。
具体地,由于三层贝叶斯概率模型,也就是LDA模型,是一种文档主题生成模型,包含词、主题和文档三层结构,将训练文字语料输入LDA模型,所述LDA模型根据非监督机器学习自动分析所述训练文字语料,将所述文字语料以不同主题的概率分布输出。LDA模型经过训练后,拥有较为准确的识别率,能够根据输入的文字语料,生成所述文字语料对应的主题模型。比如,根据微信公众号包含的微信文章的文字语料属性,所述微信文章主要涉及医疗主题、财经主题、时政主题及历史主题等,通过医疗主题、财经主题、时政主题及历史主题的训练文字语料训练LDA模型,以提高LDA模型的准确性。LDA模型的识别准确率达到预设准确度后,将待识别的文字语料输入所述三层贝叶斯概率模型,就可以准确的生成所述文字语料的主题模型,比如,若待识别的文字语料包含财经主题的微信文章,LDA模型就可以生成所述文字语料的财经主题的模型。
请参阅图8和图9,图8为本申请实施例提供的知识图谱的构建方法中第三个子流程示意图,图9为本申请实施例提供的知识图谱的构建方法中知识图谱的示意图。在该实施例中,所述根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性的步骤包括:
S2501、根据所述主题模型确定所述主题的对象;
S2502、根据所述主题模型对所述文字语料进行分类以获取对应主题下的文章列表;
S2503、根据所述文章列表,抽取出含有所述对象的句子构成句子集合;
S2504、分析所述句子集合以筛选出所述句子集合的属性。
进一步地,在一个实施例中,分析所述句子集合,筛选出所述句子集合的属性和所述属性的下级属性,然后绘制所述对象、所述属性及所述下级属性之间的关联关系以构建知识图谱,以实现对微信文章的知识图谱进行更详细的描述,实现对微信文章信息效率的进一步提高。
其中,对象,是指微信文章中涉及的主题,比如,娱乐、财经、医疗或者时政等主题。属性,用来描述具体某个对象的特征的是属性,是静态的,比如,请继续参阅图9,娱乐下的属性可以包括电影、运动、文艺等属性。二级属性是属性的下位概念,是对属性的进一步具体描述,比如,电影下的属性包括热映等二级属性。
具体地,请继续参阅图9,根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性,以绘制所述对象及所述属性之间的关联关系以构建知识图谱,就是构建对象、属性和二级属性的本体结构。比如,将微信文章涉及的主题分为了娱乐、体育和社会等板块,则对以上的板块构建对象,可以理解为节点。
每个板块都会有事件内容,则在对象上构建属性,事件内容可理解为节点上的属性值。
而事件作为属性,下面可以存在二级属性,比如说最新的事件、最热门的事件等,则在节点上再次构建二级属性。
获取满足预设条件的关键词,根据所述关键词构建对象、属性和二级属性的本体结构,具体分为以下步骤:
首先,根据主题模型领域对文字语料数据进行分类,比如,图像识别类、语音识别类等。可以通过TF-IDF矩阵抽取出每篇微信文章的前十位关键词,并且通过匹配所述前十位关键词是否在对应主题类型所包含的核心关键词中,比如说,语音识别类型的文字语料核心关键词有语音识别,而通过筛选出的微信文章中的关键词中是否有语音识别,若筛选出的微信文章中的关键词中有语音识别,则将微信文章归类为语音识别类的文章列表。
其次,确定同类关键词的对象,根据所述关键词构建对象。比如说,根据关键词语音文档、识别、解码、编码、自然语言处理及学习等语音识别对应的关键词确定深度学习语音识别的对象,并进一步根据关键词得到文字语料中语音识别对象包含的文章列表。
第三,根据对象包含的文章列表,抽取出含有对象的句子构成句子集合,并对该句子集成,进行分词和词性标注,自动筛选出属性,同时检索出所有下级属性,直至不存在下级属性。
第四,知识图谱已经构成,其结构为对象—属性—下级属性。请继续参阅图9,对象“娱乐”包含属性“电影”和“运动比赛”,属性“电影”包括二级属性“最近”和“热映”,属性“运动比赛”包括二级属性“篮球”和“足球”。
需要说明的是,上述各个实施例所述的知识图谱的构建方法,可以根据需要将不同实施例中包含的技术特征重新进行组合,以获取组合后的实施方案,但都在本申请要求的保护范围之内。
请参阅图10,图10为本申请实施例提供的知识图谱的构建装置的示意性框图。对应于上述知识图谱的构建方法,本申请实施例还提供一种知识图谱的构建装置。如图10所示,该知识图谱的构建装置包括用于执行上述知识图谱的构建方法的单元,该装置可以被配置于服务器等计算机设备中。具体地,请参阅图10,该知识图谱的构建装置1000包括第一获取单元1001、第二获取单元1002、爬取单元1003、解析单元1004及第三获取单元1005及第一构建单元1006。
其中,第一获取单元1001,用于通过预设方式获取微信公众号列表;
第二获取单元1002,用于根据所述微信公众号列表访问微信服务器官方接口,获取所述微信公众号列表中每一个微信公众号的文章列表;
爬取单元1003,用于根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料;
解析单元1004,用于使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合;
第三获取单元1005,用于根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性;
第一构建单元1006,用于绘制所述对象及所述属性之间的关联关系以构建知识图谱。
请参阅图11,图11为本申请实施例提供的知识图谱的构建装置的另一示意性框图。如图11所示,在该实施例中,所述知识图谱的构建装置1000还包括:
第二构建单元1007,用于构建包含代理互联网协议地址池和缓存数据池的爬虫程序。
请继续参阅图11,在该实施例中,所述知识图谱的构建装置1000还包括:
更新单元1008,用于更新所述代理互联网协议地址池的代理互联网协议地址和所述缓存数据池中的缓存数据。
请继续参阅图11,在该实施例中,所述解析单元1004包括:
第一生成子单元1041,用于将所述文字语料输入三层贝叶斯概率模型以生成所述文字语料的主题模型;
第二生成子单元1042,用于根据所述文字语料的时间分布生成所述主题模型的时间分布图谱;
分析子单元1043,用于使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱,获取所述关键词共现图谱中超过预设频数的关键词组合作为所述主题模型的关键词组合;
第一获取子单元1044,用于获取并保存所述主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合。
在一个实施例中,所述第一生成子单元1041包括:
第三获取子单元,用于获取经过训练的三层贝叶斯概率模型;
输入子单元,用于将所述文字语料输入所述三层贝叶斯概率模型以生成所述文字语料的主题模型。
在一个实施例中,所述分析子单元1043包括:
第四获取子单元,用于基于所述文字语料,通过词频-逆文档频率矩阵获得每篇所述微信文章的预设数量关键词;
第二获取子单元,用于对所有预设数量的所述关键词进行汇总和去重,获得不重复的关键词词汇;
构建子单元,用于以所述关键词词汇构建关键词共现矩阵以获取关键词共现图谱。
请继续参阅图11,在该实施例中,所述第三获取单元1005包括:
确定子单元1051,用于根据所述主题模型确定所述主题的对象确定所述主题的对象;
第二获取子单元1052,用于根据所述主题模型对所述文字语料进行分类以获取对应主题下的文章列表;
抽取子单元1053,用于根据所述文章列表,抽取出含有所述对象的句子构成句子集合;
筛选子单元1054,用于分析所述句子集合以筛选出所述句子集合的属性。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述知识图谱的构建装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
同时,上述知识图谱的构建装置中各个单元的划分和连接方式仅用于举例说明,在其他实施例中,可将知识图谱的构建装置按照需要划分为不同的单元,也可将知识图谱的构建装置中各单元采取不同的连接顺序和方式,以完成上述知识图谱的构建装置的全部或部分功能。
上述知识图谱的构建装置可以实现为一种计算机程序的形式,该计算机程序可以在如图12所示的计算机设备上运行。
请参阅图12,图12是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备1200可以是台式机电脑或者平板电脑等电子设备,也可以是其他设备中的组件或者部件。
参阅图12,该计算机设备1200包括通过***总线1201连接的处理器1202、存储器和网络接口1205,其中,存储器可以包括非易失性存储介质1203和内存储器1204。
该非易失性存储介质1203可存储操作***12031和计算机程序12032。该计算机程序12032被执行时,可使得处理器1202执行一种上述知识图谱的构建方法。
该处理器1202用于提供计算和控制能力,以支撑整个计算机设备1200的运行。
该内存储器1204为非易失性存储介质1203中的计算机程序12032的运行提供环境,该计算机程序12032被处理器1202执行时,可使得处理器1202执行一种上述知识图谱的构建方法。
该网络接口1205用于与其它设备进行网络通信。本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备1200的限定,具体的计算机设备1200可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图12所示实施例一致,在此不再赘述。
其中,所述处理器1202用于运行存储在存储器中的计算机程序12032,以实现如下步骤:通过预设方式获取微信公众号列表;根据所述微信公众号列表访问微信服务器官方接口,获取所述微信公众号列表中每一个微信公众号的文章列表;根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料;使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合;根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性,绘制所述对象及所述属性之间的关联关系以构建知识图谱。
在一实施例中,所述处理器1202在实现所述根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料的步骤之前,还实现以下步骤:
构建包含代理互联网协议地址池和缓存数据池的爬虫程序。
在一实施例中,所述处理器1202在实现所述构建包含代理互联网协议地址池和缓存数据池的爬虫程序的步骤之后,还实现以下步骤:
更新所述代理互联网协议地址池的代理互联网协议地址和所述缓存数据池中的缓存数据。
在一实施例中,所述处理器1202在实现所述使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合的步骤时,具体实现以下步骤:
将所述文字语料输入三层贝叶斯概率模型以生成所述文字语料的主题模型;
根据所述文字语料的时间分布生成所述主题模型的时间分布图谱;
使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱,获取所述关键词共现图谱中超过预设频数的关键词组合作为所述主题模型的关键词组合;
获取并保存所述主题模型、所述主题模型的时间分布图谱及所述所述主题模型的关键词组合。
在一实施例中,所述处理器1202在实现所述将所述文字语料输入三层贝叶斯概率模型以生成所述文字语料的主题模型的步骤时,具体实现以下步骤:
获取经过训练的三层贝叶斯概率模型;
将所述文字语料输入所述三层贝叶斯概率模型以生成所述文字语料的主题模型。
在一实施例中,所述处理器1202在实现所述使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱的步骤时,具体实现以下步骤:
基于所述文字语料,通过词频-逆文档频率矩阵获得每篇所述微信文章的预设数量关键词;
对所有预设数量的所述关键词进行汇总和去重,获得不重复的关键词词汇;
以所述关键词词汇构建关键词共现矩阵以获取关键词共现图谱。
在一实施例中,所述处理器1202在实现所述根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性的步骤时,具体实现以下步骤:
根据所述主题模型确定所述主题的对象;
根据所述主题模型对所述文字语料进行分类以获取对应主题下的文章列表;
根据所述文章列表,抽取出含有所述对象的句子构成句子集合;
分析所述句子集合以筛选出所述句子集合的属性。
应当理解,在本申请实施例中,处理器1202可以是中央处理单元(CentralProcessing Unit,CPU),该处理器1202还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来完成,该计算机程序可存储于一计算机可读存储介质。该计算机程序被该计算机***中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本申请还提供一种计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时使处理器执行如下步骤:
一种计算机程序产品,当其在计算机上运行时,使得计算机执行以上各实施例中所描述的知识图谱的构建方法的步骤。
所述计算机可读存储介质可以是前述设备的内部存储单元,例如设备的硬盘或内存。所述计算机可读存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述计算机可读存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。
本申请实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本申请实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,终端,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。
以上所述,仅为本申请的具体实施方式,但本申请明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (9)
1.一种知识图谱的构建方法,其特征在于,所述方法包括:
通过预设方式获取微信公众号列表;
根据所述微信公众号列表访问微信服务器官方接口,获取所述微信公众号列表中每一个微信公众号的文章列表;
根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料;
使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合;
根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性,以绘制所述对象及所述属性之间的关联关系以构建知识图谱,即构建对象、属性和二级属性的本体结构,所述对象指微信文章中涉及的主题;
绘制所述对象及所述属性之间的关联关系以构建知识图谱,包括:根据主题模型领域对文字语料数据进行分类,通过TF-IDF矩阵抽取出每篇微信文章的前十位关键词,并且通过匹配所述前十位关键词是否在对应主题类型所包含的核心关键词中,对应主题类型的文字语料核心关键词有对应主题类型所包含的核心关键词,通过筛选出的微信文章中的关键词中是否有对应主题类型所包含的核心关键词,若筛选出的微信文章中的关键词中有对应主题类型所包含的核心关键词,则将微信文章归类为对应主题类型的文章列表;确定同类关键词的对象,根据所述关键词构建对象,根据关键词得到文字语料中对应主题类型对象包含的文章列表;根据对象包含的文章列表,抽取出含有对象的句子构成句子集合,并对该句子集成,进行分词和词性标注,自动筛选出属性,同时检索出所有下级属性,直至不存在下级属性,以构成所述知识图谱,所述知识图谱的结构为对象—属性—下级属性;
所述使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合的步骤包括:
将所述文字语料输入三层贝叶斯概率模型以生成所述文字语料的主题模型;
根据所述文字语料的时间分布生成所述主题模型的时间分布图谱;
使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱,获取所述关键词共现图谱中超过预设频数的关键词组合作为所述主题模型的关键词组合;
获取并保存所述主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合。
2.根据权利要求1所述知识图谱的构建方法,其特征在于,所述根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料的步骤之前,还包括:
构建包含代理互联网协议地址池和缓存数据池的爬虫程序。
3.根据权利要求2所述知识图谱的构建方法,其特征在于,所述构建包含代理互联网协议地址池和缓存数据池的爬虫程序的步骤之后,还包括:
更新所述代理互联网协议地址池的代理互联网协议地址和所述缓存数据池中的缓存数据。
4.根据权利要求1所述知识图谱的构建方法,其特征在于,所述将所述文字语料输入三层贝叶斯概率模型以生成所述文字语料的主题模型的步骤包括:
获取经过训练的三层贝叶斯概率模型;
将所述文字语料输入所述三层贝叶斯概率模型以生成所述文字语料的主题模型。
5.根据权利要求1所述知识图谱的构建方法,其特征在于,所述使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱的步骤包括:
基于所述文字语料,通过词频-逆文档频率矩阵获得每篇所述微信文章的预设数量的关键词;
对所有预设数量的所述关键词进行汇总和去重,获得不重复的关键词词汇;
以所述关键词词汇构建关键词共现矩阵以获取关键词共现图谱。
6.根据权利要求1所述知识图谱的构建方法,其特征在于,所述根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性的步骤包括:
根据所述主题模型确定所述主题的对象;
根据所述主题模型对所述文字语料进行分类以获取对应主题下的文章列表;
根据所述文章列表,抽取出含有所述对象的句子构成句子集合;
分析所述句子集合以筛选出所述句子集合的属性。
7.一种知识图谱的构建装置,其特征在于,包括:
第一获取单元,用于通过预设方式获取微信公众号列表;
第二获取单元,用于根据所述微信公众号列表访问微信服务器官方接口,获取所述微信公众号列表中每一个微信公众号的文章列表;
爬取单元,用于根据所述文章列表爬取微信文章以获取构建知识图谱需要的文字语料;
解析单元,用于使用预设工具解析所述文字语料以获取所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合;
第三获取单元,用于根据所述文字语料的主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合,获取所述文字语料包含的对象及对象的属性,以绘制所述对象及所述属性之间的关联关系以构建知识图谱,即构建对象、属性和二级属性的本体结构,所述对象指微信文章中涉及的主题;
第一构建单元,用于绘制所述对象及所述属性之间的关联关系以构建知识图谱,包括:根据主题模型领域对文字语料数据进行分类,通过TF-IDF矩阵抽取出每篇微信文章的前十位关键词,并且通过匹配所述前十位关键词是否在对应主题类型所包含的核心关键词中,对应主题类型的文字语料核心关键词有对应主题类型所包含的核心关键词,通过筛选出的微信文章中的关键词中是否有对应主题类型所包含的核心关键词,若筛选出的微信文章中的关键词中有对应主题类型所包含的核心关键词,则将微信文章归类为对应主题类型的文章列表;确定同类关键词的对象,根据所述关键词构建对象,根据关键词得到文字语料中对应主题类型对象包含的文章列表;根据对象包含的文章列表,抽取出含有对象的句子构成句子集合,并对该句子集成,进行分词和词性标注,自动筛选出属性,同时检索出所有下级属性,直至不存在下级属性,以构成所述知识图谱,所述知识图谱的结构为对象—属性—下级属性;
第一生成子单元,用于将所述文字语料输入三层贝叶斯概率模型以生成所述文字语料的主题模型;
第二生成子单元,用于根据所述文字语料的时间分布生成所述主题模型的时间分布图谱;
分析子单元,用于使用词频-逆文档频率矩阵分析所述文字语料以获取所述文字语料的关键词共现图谱,获取所述关键词共现图谱中超过预设频数的关键词组合作为所述主题模型的关键词组合;
第一获取子单元,用于获取并保存所述主题模型、所述主题模型的时间分布图谱及所述主题模型的关键词组合。
8.一种计算机设备,其特征在于,所述计算机设备包括存储器以及与所述存储器相连的处理器;所述存储器用于存储计算机程序;所述处理器用于运行所述存储器中存储的计算机程序,以执行如权利要求1-6任一项所述知识图谱的构建方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时使所述处理器执行如权利要求1-6中任一项所述知识图谱的构建方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811510375.7A CN109684483B (zh) | 2018-12-11 | 2018-12-11 | 知识图谱的构建方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811510375.7A CN109684483B (zh) | 2018-12-11 | 2018-12-11 | 知识图谱的构建方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109684483A CN109684483A (zh) | 2019-04-26 |
CN109684483B true CN109684483B (zh) | 2024-07-02 |
Family
ID=66186665
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811510375.7A Active CN109684483B (zh) | 2018-12-11 | 2018-12-11 | 知识图谱的构建方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109684483B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110347894A (zh) * | 2019-05-31 | 2019-10-18 | 平安科技(深圳)有限公司 | 基于爬虫的知识图谱处理方法、装置、计算机设备及存储介质 |
CN110377891B (zh) * | 2019-06-19 | 2023-01-06 | 北京百度网讯科技有限公司 | 事件分析文章的生成方法、装置、设备及计算机可读存储介质 |
CN110442713A (zh) * | 2019-07-08 | 2019-11-12 | 深圳壹账通智能科技有限公司 | 文章管理方法、装置、计算机设备和存储介质 |
CN110543574B (zh) * | 2019-08-30 | 2022-05-17 | 北京百度网讯科技有限公司 | 一种知识图谱的构建方法、装置、设备及介质 |
US11397859B2 (en) * | 2019-09-11 | 2022-07-26 | International Business Machines Corporation | Progressive collocation for real-time discourse |
CN111090801B (zh) * | 2019-12-18 | 2023-06-09 | 创新奇智(青岛)科技有限公司 | 一种专家人脉关系图谱绘制方法及*** |
CN111353019A (zh) * | 2020-02-25 | 2020-06-30 | 上海昌投网络科技有限公司 | 一种微信公众号公号主题分类方法及装置 |
CN111488741A (zh) * | 2020-04-14 | 2020-08-04 | 税友软件集团股份有限公司 | 一种税收知识数据语义标注方法及相关装置 |
CN113569051A (zh) * | 2020-04-29 | 2021-10-29 | 北京金山数字娱乐科技有限公司 | 一种知识图谱构建方法及装置 |
CN111641621B (zh) * | 2020-05-21 | 2022-05-20 | 杭州安恒信息技术股份有限公司 | 物联网安全事件识别方法、装置和计算机设备 |
CN112100405B (zh) * | 2020-09-23 | 2024-01-30 | 中国农业大学 | 一种基于加权lda的兽药残留知识图谱构建方法 |
CN112765367B (zh) * | 2021-01-28 | 2023-06-30 | 浙江富润数链科技有限公司 | 一种主题知识图谱构建方法及装置 |
CN113065657A (zh) * | 2021-04-09 | 2021-07-02 | 顶象科技有限公司 | 一种基于银行对公数据的知识图谱构建方法和装置 |
CN113297388B (zh) * | 2021-04-25 | 2023-08-11 | 中国人民解放军军事科学院战争研究院 | 一种面向博弈分析的战略事件搭链式可视化方法 |
CN114564636B (zh) * | 2021-12-29 | 2024-06-25 | 东方财富信息股份有限公司 | 一种金融信息搜索中台的召回排序算法和层叠式技术架构 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107122444A (zh) * | 2017-04-24 | 2017-09-01 | 北京科技大学 | 一种法律知识图谱自动构建方法 |
CN107633044A (zh) * | 2017-09-14 | 2018-01-26 | 国家计算机网络与信息安全管理中心 | 一种基于热点事件的舆情知识图谱构建方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105956052A (zh) * | 2016-04-27 | 2016-09-21 | 青岛海尔软件有限公司 | 一种基于垂直领域的知识图谱的构建方法 |
US20180060426A1 (en) * | 2016-08-30 | 2018-03-01 | Robert Francis Gluck | Systems and methods for issue management |
CN107168943B (zh) * | 2017-04-07 | 2018-07-03 | 平安科技(深圳)有限公司 | 话题预警的方法和装置 |
CN108763333B (zh) * | 2018-05-11 | 2022-05-17 | 北京航空航天大学 | 一种基于社会媒体的事件图谱构建方法 |
CN108897857B (zh) * | 2018-06-28 | 2021-08-27 | 东华大学 | 面向领域的中文文本主题句生成方法 |
-
2018
- 2018-12-11 CN CN201811510375.7A patent/CN109684483B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107122444A (zh) * | 2017-04-24 | 2017-09-01 | 北京科技大学 | 一种法律知识图谱自动构建方法 |
CN107633044A (zh) * | 2017-09-14 | 2018-01-26 | 国家计算机网络与信息安全管理中心 | 一种基于热点事件的舆情知识图谱构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109684483A (zh) | 2019-04-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109684483B (zh) | 知识图谱的构建方法、装置、计算机设备及存储介质 | |
US7519588B2 (en) | Keyword characterization and application | |
CN107784092A (zh) | 一种推荐热词的方法、服务器及计算机可读介质 | |
US8838633B2 (en) | NLP-based sentiment analysis | |
Ratkiewicz et al. | Detecting and tracking the spread of astroturf memes in microblog streams | |
Pu et al. | Subject categorization of query terms for exploring Web users' search interests | |
CA2897886C (en) | Methods and apparatus for identifying concepts corresponding to input information | |
Liu et al. | Identifying web spam with the wisdom of the crowds | |
CN104978314B (zh) | 媒体内容推荐方法及装置 | |
US10713291B2 (en) | Electronic document generation using data from disparate sources | |
US10061767B1 (en) | Analyzing user reviews to determine entity attributes | |
CN104462553A (zh) | 问答页面相关问题推荐方法及装置 | |
CN109918656B (zh) | 一种直播热点获取方法、装置、服务器及存储介质 | |
Kumar et al. | Hashtag recommendation for short social media texts using word-embeddings and external knowledge | |
CN102200975A (zh) | 一种利用语义分析的垂直搜索引擎***与方法 | |
CN112328857B (zh) | 一种产品知识聚合方法、装置、计算机设备及存储介质 | |
US20150206101A1 (en) | System for determining infringement of copyright based on the text reference point and method thereof | |
CN113204953A (zh) | 基于语义识别的文本匹配方法、设备及设备可读存储介质 | |
KR101543680B1 (ko) | 인터넷을 활용한 개체 검색과 이를 위한 하이브리드 기반의 의견분석 시스템 및 그 방법 | |
CN105512300A (zh) | 信息过滤方法及*** | |
Singh et al. | Mining the blogosphere from a socio-political perspective | |
KR20160002199A (ko) | 연관 키워드를 이용한 이슈 데이터 추출방법 및 시스템 | |
CN107665442B (zh) | 获取目标用户的方法及装置 | |
Hu et al. | Embracing information explosion without choking: Clustering and labeling in microblogging | |
JP2020521246A (ja) | ネットワークアクセス可能なコンテンツの自動化された分類 |
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 |