精华内容
下载资源
问答
  • 知识图谱-数据融合

    2017-03-29 17:18:22
    知识图谱多源数据融合的流程,方法,非常实用,全面解决知识图谱遇到的问题
  • 融合知识图谱语义信息的推荐方法.pdf
  • 融合知识图谱与协同过滤的推荐模型.pdf
  • 融合知识图谱和短期偏好的推荐算法.pdf
  • 融合知识图谱及贝叶斯网络的智能推荐方法.pdf
  • 融合知识图谱与用户评论的商品推荐算法.pdf
  • 融合知识图谱和协同过滤的电源推荐算法.pdf
  • 融合知识图谱与深度学习的药物发现方法.pdf
  • 进而利用结构化数据转化、文本抽提以及数据融合等技术, 研究基于环境信息融合的知识图谱构建方法; 最后将生成的知识图谱存入图谱数据库,并搭建知识图谱应用平台, 提供递归查询功能, 实现环境知识图谱的可视化, ...
  • 项目的数据处理部分

    笔者的论文项目部分分享,主要内容为使用Neo4j构建知识图谱,使用python实现融合知识图谱推荐算法与相关的简单交互界面。
    内容脑图如下图:主要学习自项亮的推荐系统实践与唐宇迪的推荐系统实战 其中不足 望多多指正
    在这里插入图片描述

    1.项目的环境配置

    本次实验的全部代码开发,均在win10、64bit、16g环境下进行开发、运行。
    实验中构建电影知识图谱的运行环境为Neo4j 4.2.3公共版、Python3,电影知识图谱与推荐算法的实现均在Python3环境下的jupyter notebook编辑工具中完成,推荐系统的实现开发环境为pycharm,研究项目进行开发前需要准备安装到的Python库如下表:

    库名作用
    Pandas读取csv数据,用于完成算法实现过程中的相关矩阵计算。
    Json进行数据解析,用于完成实验中的数据处理。
    Re进行正则匹配,用于完成实验中的数据处理。
    Neo4j实现Python对图数据库的连接,用户完成实验中的电影知识图谱、推荐系统的构建。
    tkinter实现推荐系统的界面展示部分

    2.数据源分析

    2.1 TMDB 5000 数据

    课题选择的数据集来自知名数据网站Kaggle的tmdb-movie-metadata电影数据集,其中包含约5000部电影的数据。 本实验使用数据集中的电影数据表tmdb_5000_movies.csv进行实验。

    其字段构成如下图所示:
    在这里插入图片描述

    2.2Netflix Prize data数据

    包含了1999.12.31-2005.12.31期间匿名用户提供的超过一亿部电影的评分数据。数据集大约给出了480189个用户和17770部电影评级。主要包含了电影信息(电影id、评分、名称、上映时间)、用户息(用户id、打分分数、打分时间)

    其主要字段如下图所示:
    在这里插入图片描述

    3.数据处理

    3.1TMDB 5000 数据处理

    数据记录的是近5千部奈飞电影的相关信息,如工作人员、预算金额、电影的风格、主题等,本文在建立电影知识库构建电影知识图谱时,结合实际业务场景(选取实际场景中用户比较关注的几个信息,提高信息提取效率,节省计算量),选取去实际业务场景中常用的genres(电影风格)、keywords(电影关键字)、production companies(制作公司)、original title(电影名)字段用户电影知识图谱的构建。本质是从该数据集中提取出对本次实验有作用的字段存入新的csv文件(新表的字段信息包含需要提取的字段名、电影的title)用于电影知识图谱的构建。

    其中数据处理的源码(以提取电影的genres(电影风格)为例)如下:

    pattern = re.compile("[A-Za-z0-9]+")
    out_genre = open("../out_genre.csv","w",encoding='utf-8')
    df = pd.read_csv("../tmdb_5000_movies.csv", sep=",") #读取数据
    df = df[["genres", "keywords", "original_title","production_companies"]]
    for _, row in df.iterrows():
    	title = row["original_title"]
    	if not pattern.fullmatch(title):
    		continue
    	title = "\"" + title + "\""
    	for g in row["genres"]:
    		genre = g["name"]
    		genre = "\"" + genre + "\""
    		out_genre.write(f"{title},{genre}\n")	
    

    3.2Netflix Prize data数据集处理

    Netflix Prize data数据集主要记录的是1988~2005期间Netflix电影社区近一兆的匿名用户的电影评分记录,本文主要利用该数据集收集获取用户对于电影的行为信息,故提取数据集中的电影基本的名称(title)、id与对应用户id对其的评分信息(ratings)的字段信息,构成新的csv形式的数据集,用于下一阶段的知识图谱构建。

    其中关于Netflix 电影的处理(以提取核心数据out_grade为例)源码如下:

    out_grade = open("../out_grade.csv","w")
    out_grade.write("user_id,title,grade\n")
    files = ["../combined_data_1.txt"]
    for f in files:
        movie_id = -1
        for line in open(f,"r"):
            pos = line.find(":")
            if pos != -1: # is a new user
                movie_id = int(line[:pos])
                continue
            line = line.strip().split(",")
            user_id = int(line[0])
            rating = int(line[1])
            out_grade.write(f"{user_id},{d_movie[movie_id]},{rating}\n")
          
    out_grade.close()
    
    展开全文
  • 融合知识图谱表示学习和矩阵分解的推荐算法.pdf
  • 融合知识图谱的双线性图注意力网络推荐算法.pdf
  • 融合知识图谱与深度学习的疾病诊断方法研究.pdf
  • 知识图谱数据融合

    千次阅读 2019-11-27 16:32:52
    知识图谱的实体往往面临数据融合的问题,因为知识图谱的数据源可能有多个,在不同数据源有对同一实体的不同表达,即使在同一个数据源里也可能存在这种情况,需要通过一定手段将其合并。 知识图谱数据融合过程通常...

    知识图谱的实体往往面临数据融合的问题,因为知识图谱的数据源可能有多个,在不同数据源有对同一实体的不同表达,即使在同一个数据源里也可能存在这种情况,需要通过一定手段将其合并。

    知识图谱的数据融合过程通常如下:

     

     

    知识融合流程图

    1,数据预处理:输入的原始数据源往往存在脏数据和格式不一致数据,需要进行人工进行规整,这一步过程是实际工程中比较费时但是作用很大的工作,没有好的数据处理后续的算法效果往往也不会好。

    2,数据分组:我们的目标是找出所有相同的实体,如果不进行数据分组,我们的计算量会是两两比较,对于海量数据的时候计算量过于庞大,所以要事先进行分组。分组的效果既要保证能够比较均衡地分而治之,又要尽量保证不要漏分。

    常见的方法包括通过数据本身的类目信息进行分组,比如在融合商品数据的时候可以根据商品的类目信息进行分组;或者根据数据的关键信息,比如在融合人物数据的时候可以根据其出生日期进行分组。

    3,属性相似度:经过上一步的分组,每个分组下的实体是有可能是相同的实体的集合,接下来需要对实体的属性进行计算相似度,有了实体各个属性的相似度才容易进行下一步的实体相似度计算。

    常见的方法包括:

    3.1)纯字符串的:计算编辑距离,levenshtein distance,计算字符串A通过插入/删除/替换操作变换到字符串B的距离;

    3.2)集合类型:计算Jaccard相似度,计算集合交集个数/集合并集个数;

    3.3)文档类型:通过tf-idf找出每篇文档的关键词,再通过余弦相似度计算关键词集合的相似度。

    4,实体相似度:

    有了实体各个属性的相似度,可以来计算实体相似度了。常见的方法分为两种:

    4.1)回归:通过实体各个属性的相似度,直接判断实体的相似度。可以直接对各个属性相似度拍权重,也可以通过逻辑回归的方式计算出各个属性相似度的权重。

    4.2)聚类:直接通过聚类操作,计算出相似实体。可以进行层次聚类,相关性聚类,Canopy+K-means聚类等。

    展开全文
  • 知识图谱融合知识图谱对齐Summary

    千次阅读 2020-05-08 19:34:09
    Ref:多知识图谱融合算法探索 1. 知识融合的常见问题 数据质量问题:命名模糊,数据输入错误,数据都市,数据格式不一致,缩写问题 数据规模问题:数据量过大,或数据量过小。数据种类多样性。在知识图谱对齐的...

    两个(或多个)知识图谱的融合是怎么实现的呢?所谓融合,可以理解存在以下三种操作:1)实体词在新的上下级位置上进行插入;2)不同图谱中的同义实体词完成合并;3)三元组关系随着实体词位置变化而动态调整.

    1. 知识融合的常见问题

    数据质量问题:命名模糊,数据输入错误,数据都市,数据格式不一致,缩写问题
    数据规模问题:数据量过大,或数据量过小。数据种类多样性。在知识图谱对齐的时候,我们不仅通过实体名匹配,也会使用多种关系,链接,图谱层次。

    2. 知识融合(对齐)的常见步骤

    1. 数据预处理:1) 语法正规化 2) 数据正规化
    2. 记录链接:把实体通过相似度进行连接
    3. 相似度计算:分成属性相似度和实体相似度。其中,属性相似度可以通过编辑距离(Levenstein,Wagner and Fisher, edit distance with Afine Gaps)集合相似度(Jaccard, Dice)基于向量的相似度(Cosine,TFIDF)。实体相似度可通过聚合,聚类(Canoy+K-means此法不用指定K,可分为层次聚类,相关性聚类)
    4. 分块(blocking):从所有三元组中找到潜在的匹配并分到一块中,减少运算量。
    5. 负载均衡:保证所有的分块中实体书目相当,做Map-reduce。
    6. 结果评估

    3. 知识图谱对齐的常见方法

    3.1 传统的基于概率模型的方法

    考虑各个实体的属性,不考虑实体间的关系,通过评估各种相似度来对齐实体,本质上为分类问题。

    3.2 机器学习方法

    1. 通过属性,比较实体或属性向量,进而判断实体匹配与否
    2. 聚类方法
    3. 主动学习:通过机器与人的交互学习(类似的有ActiveAtlas系统)

    4. 近年来在知识图谱方面的突破

    4.1 小规模知识图谱的融合

    一般来讲,小规模的知识图谱融合由人工完成为主,多以WordNet为参照做相似度计算求得对齐

    1. First-world-first-sence策略:把未见到的词连接到与其词性相同,同一集合的词上。但是这种方法对于领域图谱并不适用。
    2. VCU:使用相似度计算如果相似度大于阈值,认为相同,可以对齐。这种方法简单有效。但是未考虑到去除噪声,也未使用KG的结构。
    3. TALN:使用BabelNet更多的假如句法,词性,短语等信息
    4. MSeirku:加入了消歧机制。
      所有这些方法都离不开简单的相似度排序方法

    参考论文:
    1. VCU at Semeval-2016 Task 14: Evaluating similarity measures for semantic taxonomy enrichment
    2. TALN at SemEval-2016 Task 14: Semantic Taxonomy Enrichment Via Sense-Based Embeddings
    3. MSejrKu at SemEval-2016 Task 14: Taxonomy Enrichment by Evidence Ranking

    4.2 中等规模的KG Alignment

    当知识图谱规模小的时候,多使用词法句法信息,规模变大后可以使用图谱的结构特征信息

    1. Enriching Taxonomies with Functional Domain Knowledge: 使用了图语义特征,图中心度特征。在语义理解上提升许多
    2. Improvement on 1:使用了模糊聚类算法,发现并概念化新的实体,找到实体在图中的位置。

    参考论文:
    1. Enriching Taxonomies With Functional Domain Knowledge
    2. Using Taxonomy Tree to Generalize a Fuzzy Thematic Cluster

    4.3 大规模的KG Alignment

    本质上是不同的领域的实体对齐,形成与以上的链接。使用了基于知识表示的实体对齐。可以使用上下级的结构特征,和语义特征。

    1. Entity Alignment Between KGs using attribute embedding: 不同于TransE,PTransE等KGE模型关注的是学习实体和路径。本论文关注的是实体属性。可分为三个部分:谓词对齐,知识表示(embedding)和实体对齐。这类对齐要求把两个KG映射到一个向量空间中。使用谓词对齐模块查找相似的谓词。并使用统一命名。相当于使用谓词匹配反推实体对齐
    2. Iterative entity Alignment via joint KE: Background(大多知识图谱对齐依赖的是外部信息如Wikipedia) 本文提出一种基于联合知识图谱嵌入的方法。分为三部分:1)知识表示-TransE,2)联合表示-将多个KG映射到同一空间,使用机器翻译模型Seq2Seq,线性变换函数,参数共享,3)知识对齐迭代。

    参考论文:(前三个基于字符相似度,后三个基于知识图嵌入)
    1. RDF-AI: an Architecture for RDF Datasets Matching, Fusion and Interlink
    2. Limes: a time-efficient approach for large-scale link discovery on the web of data
    3. Holistic Entity Matching Across Knowledge Graphs
    4. Entity Alignment between Knowledge Graphs Using Attribute Embeddings
    5. Iterative Entity Alignment via Joint Knowledge Embeddings
    6. Collective Embedding-based Entity Alignment via Adaptive Features

    5. 如何识别和扩展图谱中的同义词

    对知识图谱中的同义不同形的词进行合并,可以理解为一种知识对齐。由于不同形的词长的不一样,所以不能简单地用词相似度来合并,需要考虑实体的语义和结构等特征。

    目前工业界的办法:

    1. 去结构化数据里面寻找同义词对,如各种百科,权威知识图谱等
    2. 对非结构化数据做语义分析,找到同义词对。

    本文着重讨论一下在非结构化数据集上,常见的挖掘思路有哪些。一般来说,这一类工作分为以下几个步骤:
    1) 从文本中提取mention词,简单的做法可以直接使用分词,选取一些特定分词结果做同义词挖掘。如果需要考虑语料中可能出现的新词或者不同语言表述,则需要配合Pattern挖掘、NER或名词短语抽取等方式获取候选词。
    2) 准备好已有的同义词表作为种子数据
    3) 获取所有种子词和候选词的特征,通常该任务的特征会从两个角度考虑,分别是local context和global context,通俗的讲就是局部特征和全局特征,前者着重于词本身,常见字级别特征、词级别特征等;后者则是考虑目标词在数据集中的分布特征或者词所在句子、段落的语义特征
    4) 根据各自实际工作中数据集的特点,已有的paper从不同的角度进行建模,比如使用分布特征与pattern特征交叉验证,或是只考虑改进词本身的预训练向量,或是重点考虑候选词与目标同义词集合的分布差异。此处在下一节具体展开讨论。

    参考论文:
    1. Multi-Distribution Characteristics Based Chinese Entity Synonym Extraction from The Web (使用模板配对)
    2. Hierarchical Multi-Task Word Embedding Learning for Synonym Prediction (使用词向量方法)
    3. SurfCon: Synonym Discovery on Privacy-Aware Clinical Data
    4. Automatic Synonym Discovery with Knowledge Bases
    5. Mining Entity Synonyms with Efficient Neural Set Generation

    6. 扩展阅读:Automating the expansion of a knowledge graph

    在图谱的开发和应用上,有两个限制知识图谱的因素,图谱的规模局限性和新词汇的跟新延迟性。本文介绍了一种知识图谱的自动扩充方法,用以及时跟进新出现的词汇,把新词加入到知识图谱中。也可以理解成是对知识图谱的版本管理。

    本文把新加入的词分为新词新意和旧词新意。通过爬取社交媒体的数据获取新词。在通过实体抽取等方法抽取新词的解释,关系(关系抽取)等知识。生成一个知识子图,再把子图融合到主知识图谱中。本文使用了ConceptNet作为数据集进行了验证。

    在模型选取上,本文使用了Multilingual BERT作为模型处理多语言的语义文本,使模型无语言依赖性。这样,支持从多语网站爬取对新词的信息。模型包括三个部分:爬虫,语义分析器,知识挖掘模型。

    实验部分的评估方法:

    1. 使用了对知识图谱扩展后的具体例子,说明新的KG中包含了新词。
    2. 对新KG做数据分析,给出metadata,证明新KG中有更多的实体出现。
    3. 对语义分析,给出一种消融实验,验证每个模块的作用。

    小结

    文章分别介绍了在不同图谱规模下,不同的图谱融合算法,我们可以根据当下的数据情况进行选择。当图谱规模较小时,我们还是推荐上文介绍的小规模图谱融合的方法,可解释性高,算法简单,同时可达到不错的效果。当图谱规模非常大时,图谱自身就是一个可解释性非常高的模型,此时采用层次聚类或知识表示抽象化图谱结构,才能达到较好的效果。在实际应用中,需要根据不同的业务建立不同的图谱,散落在各业务线的数据,永远只是服务于自身业务,并不能发现业务之间的潜在联系。为了实现跨业务语义解析和推荐,图谱融合是关键,需要根据不同业务的特点选择不同的融合算法,复杂不一定是最好。从以上研究中可以看到,如何丰富并更好的抽象新实体的外部语义环境和其在图谱中的关联结构,依然是今后研究的重点。

    Ref:
    多知识图谱的融合算法探索
    如何扩充知识图谱中的同义词

    展开全文
  • 融合知识图谱表示学习的栈式自编码器推荐算法.pdf
  • 融合知识图谱和用户行为信息的个性化推荐算法研究.pdf
  • 基于多源数据融合的Java代码知识图谱构建方法研究
  • 基于多源数据融合的Java代码知识图谱构建方法研究.pdf
  • 针对现有协同过滤推荐算法可解释性不高和基于内容推荐信息提取困难、推荐效率低等问题,提岀一种融合知识图谱和协同过滤的混合推荐模型,其由知识图谱与深度学习结合模型RCKD和知识图谱与协同过滤结合模型RCKC构成。...
  • 1.4亿知识图谱数据免费下载,知识图谱,通用知识图谱融合了两千五百多万的实体,拥有亿级别的实体属性关系。
  • 融合知识图谱与深度学习的文物信息资源实体关系抽取方法研究.pdf
  • 其次,提出了基于空间关系的知识图谱构建技术流程,重点研究了流程中的空间关系抽取和多源地理数据融合问题,并构建了面向地理空间数据的知识图谱;最后,论述了知识图谱在地理空间领域的应用方向。研究可以促进地理...
  • 项目的图谱构建部分

    笔者的论文项目部分分享,主要内容为使用Neo4j构建知识图谱,使用python实现融合知识图谱推荐算法与相关的简单交互界面。
    内容脑图如下图:主要学习自项亮的推荐系统实践与唐宇迪的推荐系统实战 其中不足 望多多指正
    在这里插入图片描述

    1.图数据简介

    1.1.简单介绍

    属性图、三原图与超图是目前主用在应用的三种图数据库,本实验选用的Neo4j的模型为属性图,属性图的数据模型主要有四种特征。主要为具有节点和关系、关系具有属性、节点具有属性和标签与关系有名称和两个开始、结束的节点。

    此外,目前运用较多的关系型数据库与Neo4j图数据库都具有的相同点是图数据库也有一个计算引擎存在。可以存储大型的图数据集,是用来实现全局图计算的数据库核心构建[8]。关于图数据的计算引擎流程如下图所示:

    在这里插入图片描述
    目前,开发中使用的主流图数据如下表所示:

    名称Neo4jArangoDBOtientDBJanusGraphHugeGraph
    可用文档很多(成功案例多)很多很多很少只有国内文档
    开源社区版开源企业版不开源开源开源开源
    基础语言Java、scalaC、c++、JavaScriptJavaJavac++
    支持编程语言.Net Java JavaScript Groovy Clojure PHP Python Ruby Scala ……C# Clojure Java Ruby……C C# C++ Java……Clojure Java Python……C++ Java PHP Python

    1.2Neo4j的优势与应用现状

    相比于其他的图数据库,Neo4j与传统的关系型数据库类似,不需要掌握过深的数学集合理论,也不需要掌握掌握系统的图论知识,只需要了解掌握一定的SQL知识与一定的Cypher语言基础即可上手操作,对新手友好。作为最近几年才发展起来的新兴技术,Neo4j一直紧随大数据时代步伐不断前行,越发凸显出相对于传统关系型数据的强大优势,并且随着选用Neo4j作为需求实现工具的开发者的数量的不断增多,Neo4j的相关使用文档也变着越来越完善与系统化;另外,Neo4j也支持相对较多的编程语言如Python、Java等。综上,笔者最终原Neo4j作为本文知识图谱的实现工具。

    面向语义网络的RDF图模型,与面向结构化实体的属性图模型是目前知识图谱的主要应用领域。随着大数据的不断发展及其时代的到来,通过Neo4j实现的属性图由于其可理解性与便捷性正受到越来越多开发者的青睐。

    知识图是图数据库的最基本的基础应用方案。 它充分利用其图模型在存储和查询中的优势,电子商务,金融,法律,医疗,智能家居等领域的决策系统,推荐系统,智能问答系统等多个行业都存在知识图谱为其知识信息的身影。图数据库主要被应用处理复杂、可变的网络型数据,其效率比传统关系数据要快出2-3个数量级。 基于图数据库应用程序的优势,越来越多的开发人员和研究人员开始致力于将基于图数据库的知识图应用于推荐领域[。

    2.电影图谱的构建

    2.1图谱主体的构建

    本文电影知识图谱的构建,从TMDB 5000数据集中获取电影信息(电影主题、名称、关键字、制作方),从Netflix数据集中获取用户的行为信息,再以电影的title作为知识图谱的主题,利用从数据中获取的相关信息构建电影主题、评分、关键字等关系三元组,完成电影知识图谱的初步构建,在通过基于余弦相似度完成用户间相似度的计算加入用户间的相似关系,是电影知识图谱的信息更加完整,为下一步推荐系统提供用户的相关知识信息基础。具体在Neo4j图数据库中构建的电影关系如下表所示:

    关系名三元组内容作用
    RATEDUser_rated—>movie向图谱存入电影评分信息
    HAS_GENREMovie_HAS_GENRE—>GENRE向图谱存入电影主题信息
    HAS_KEYWORDMovie_HAS_KEYWORD—>KEY WORD向图谱存入电影关键词信息
    HAS_PRODUCTORMovie_HAS_PRODUCTOR—>PRODUCTOR向图谱存入电影制作方信息
    SIMILARITYUser SIMILARITY—>User向图谱用户间相似度信息

    其中构建图谱时以TMDB 5000数据集中电影作为知识库主体,构建源码如下:

    session.run("""
    	LOAD CSV WITH HEADERS FROM "file:///out_movies.csv" AS csv
    	CREATE (:Movie {title: csv.title})
    	""")
    

    2.2.图谱主体关系的构建

    完成电影主体构建后,再通过Neo4j三元组的形式构建主体关系,其中评分关系为电影与用户间的知识关系,记录某用户id对某电影的id的评分信息,其关系形式为多对多,构建源码如下:

    session.run("""
    	LOAD CSV WITH HEADERS FROM "file:///out_keyword.csv" AS csv
    	MERGE (m:Movie {title: csv.title})
    	MERGE (k:Keyword {keyword: csv.keyword})
    	CREATE (m)-[:HAS_KEYWORD]->(k)
    	""")
    

    基于此元组得到的电影评分关系实现结果如下图
    在这里插入图片描述

    电影主题关系记录的是电影的主题信息,其关系形式为多对多(如电影Congo的电影主题为Action和Thriller),主题关系构建源码如下

    session.run("""
    	LOAD CSV WITH HEADERS FROM "file:///out_genre.csv" AS csv
    	MERGE (m:Movie {title: csv.title})
    	MERGE (g:Genre {genre: csv.genre})
    	CREATE (m)-[:HAS_GENRE]->(g)
    	""")
    

    源码得到的电影主题关系实现结果如下图

    在这里插入图片描述
    电影图谱的关键词关系主要记录电影的关键词信息,其关键形式为多对多,如电影Avatar的关键词为space war、space colony等,主题为space war的电影有Avatar、Cargo等,关键词关系的构建源码如下

    session.run("""
    	LOAD CSV WITH HEADERS FROM "file:///out_keyword.csv" AS csv
    	MERGE (m:Movie {title: csv.title})
    	MERGE (k:Keyword {keyword: csv.keyword})
    	CREATE (m)-[:HAS_KEYWORD]->(k)
    	""")
    

    得到的电影风格关系实现结果如下图
    在这里插入图片描述
    电影图谱的制作方关系主要记录电影的制作方信息,关系形式为多对多(如电影Avatar的制作方为Twentieth Century Fox Film Corporation、Dune Entertainment等,制作方Dune Entertainment制作的电影有Avatar、Prometheus等),制作方关系构建源码如下

    session.run("""
    	LOAD CSV WITH HEADERS FROM "file:///out_productor.csv" AS csv
    	MERGE (m:Movie {title: csv.title})
    	MERGE (p:Productor {name: csv.productor})
    	CREATE (m)-[:HAS_PRODUCTOR]->(p)
    	""")
    

    得到的电影制作方关系实现结果如下图
    在这里插入图片描述
    电影图谱的相似度关系是在构建推荐系统时记录的用户与用户之间的相似度信息,关系形式为多对多(比如用户1与用户2的相似度为0.68),构建用户相似关系的部分源码如下

    session.run(f"""
    	MATCH (u1:User {{id : {userid}}})-[r1:RATED]-(m:Movie)-[r2:RATED]-(u2:User)
    	WITH
    		u1, u2,
    		COUNT(m) AS movies_common,
    		SUM(r1.grading * r2.grading)/(SQRT(SUM(r1.grading^2)) * SQRT(SUM(r2.grading^2))) AS sim
    	WHERE movies_common >= {movies_common} AND sim > {threshold_sim}
    	MERGE (u1)-[s:SIMILARITY]-(u2)
    	SET s.sim = sim
    	""")
    

    得到的电影观众间相似度关系实现结果如下图
    在这里插入图片描述
    利用TMDB 5000与Netflix数据集获取电影知识信息,以电影为主体添加关系(具体见表)构建电影知识库,使用Neo4j构建得到的知识图谱最终结果果如下图

    在这里插入图片描述

    展开全文
  • 知识图谱之知识融合

    万次阅读 2018-08-27 19:55:49
    最近在“小象学院”上知识图谱的课程,做了一些笔记,现整理了一下 1、什么是知识融合 将来自不同知识库的同一实体融合在一起 目标:融合各层面的知识 合并两个知识图谱(本体),需要确认的是: (1)等价实例...
  • Data matching: concepts and techniques for record linkage, entity resolution, and duplicate detection
  • 在人类获取知识的过程中越来越关注事物的本质,借助人工智能以及大数据分析的能力,在其基础上衍生了各类各样的智能应用,其中知识图谱的构建,至关重要。封面智媒云一直关注于知识图谱构建的趋势发展。借助多年知识...
  • 知识图谱融合 它是解决知识图谱异构问题的有效途径,通过建立异构本体或异构实例之间的联系,使得异构的知识图谱相互沟通,实现它们之间的互操作。 知识图谱的异构问题 语言层不匹配: 语法不匹配、逻辑表示不...
  • 知识图谱入门——知识融合

    千次阅读 2019-01-04 09:22:14
    文章首发于博客du_ok’s Notes,本文链接为知识图谱入门——知识融合 本文介绍了知识融合相关的技术和典型的知识融合工具。 知识融合相关概念 相关的术语: 知识融合 (Knowledge Fusion) 本体对齐 (Ontology ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,713
精华内容 3,885
关键字:

数据融合知识图谱