当前位置: 首页 > news >正文

知识图谱之汽车实战案例综述与前瞻分析

知识图谱的前置介绍

什么是知识图谱

知识图谱本质(Knowledge Graph)上是一种叫做语义网络(semantic network ) 的知识库,即具有有向图结构的一个知识库;图的结点代表实体(entity)或者概念(concept),而图的边代表实体/概念之间的各种语义关系,比如说两个实体之间的相似关系;知识图谱旨在描述真实世界中存在的各种实体或概念及其关系,一般用三元组表示;

知识图谱概念由来

知识图谱(Knowledge Graph )的概念由谷歌 2012 年正式提出,旨在实现更智能的搜索引擎,并且于 2013 年以后开始在学术界和业界普及,并在智能问答、情报分析、反欺诈等应用中发挥重要作用。

知识图谱总体架构 

常用的获取知识的方法 

网络爬虫

网络爬虫原理


 

Schema.org 是一个协作、社区活动,由搜索引擎巨头 Google、Microsoft、Yahoo 和 Yandex 发起,旨在创建、维护和推广一套共同的、通用的数据标记模式(schemas),这些模式可以被搜索引擎和其他web爬虫理解。该项目的目的是为了改善互联网中信息的结构化表示,以便搜索引擎能够更好地理解网页内容,并据此提供更丰富和更精确的搜索结果。

Schema.org 提供的这些模式涵盖了各种实体类型,如人、地点、事件、产品和许多其他内容类型,以及这些实体之间的关系。这些模式通常以JSON-LD、Microdata或RDFa的形式嵌入到网页HTML中,提供了一种方式来注释网页元素,使其含义对机器更加清晰。

例如,如果一个网站使用了Schema.org的标记,它可以告诉搜索引擎,“这里列出的是一项活动,它在这个日期和这个地点举行,由这个组织主办”。这样,搜索引擎可以创建更智能的搜索结果,包括富媒体片段(如星级评分、价格范围、事件日期等),并为用户提供更直观的信息。

在搜索引擎优化(SEO)中,使用Schema.org标记被认为是一种最佳实践,因为它可以增强搜索引擎对网站内容的理解,从而可能提高网站在搜索结果中的表现。

 

wikidata

wikidata一个免费的、开放的、可编辑的知识库,它可以为维基百科和其他维基媒体基金会的项目,以及任何人使用的外部应用程序,提供结构化的数据。Wikidata 旨在成为一个中央存储库,为所有维基百科语言版本和其他维基媒体基金会的知识项目提供公共数据。

在Wikidata上,数据以项(items)和声明(statements)的形式组织。每个项都代表一个概念或实体(如人、地点、概念、事件等),并且有一个独一无二的标识符(称为QID)。声明则用于描述一个项的性质,包括与其他项的关系、属性特征等。

Wikidata是一个动态发展的项目,任何人都可以参与编辑和贡献数据,它通过社区协作,不断增加和改进数据质量。


 

图数据库

neo4j

知识图谱模型设计

设计方法论 

知识图谱设计方法论

UMLS语义网络

UMLS(统一医学语言系统,Unified Medical Language System)是美国国家医学图书馆(National Library of Medicine)建立的医学领域的一种广为接受的知识表示(knowledge representation)标准。UMLS旨在通过标准化大量医学和健康术语,以达成映射多种医学词汇体系的目标,使得不同的医学系统能够通信,并且能够更清晰地理解了各种种类的健康和生物医学代码和术语。

UMLS主要由以下三部分组成:

  1. Meta-thesaurus(元词表):这部分是 UMLS 的核心,包含来自不同来源的医学术语、疾病描述、药物信息等,并关联着多个不同医学词汇体系中的术语。元词表提供统一标识符(UMLS Concept Unique Identifiers, CUIs)来整合各种术语和概念,并显示它们之间的关系。

  2. Semantic Network(语义网络):它为术语和概念建立了一个大范围的分类框架,语义网络包含了广泛的、经过分层的、医学概念类别和类别间关系的定义。每个概念都被分配到一个或多个语义类型,像药物、疾病或医疗设备等,而语义类型之间也定义了多种可能的语义关系,比如"治疗"或"致病"。

    • SPECIALIST Lexicon and Lexical Tools(专家词汇及查词工具):这是一个包含很多与医学相关期名词与单词的大型英语词汇库。结合一组用来解析和构造自然语言的软件工具。专家词库针对生物医疗领域进行了优化,支持文字处理和自然语言理解任务比如段落、句法分析和词形变换。

UMLS 实际上可以视作一种健康医疗领域的知识图谱,因为它组织了大量的医疗术语、概念及它们之间的关联。

知识图谱模型设计之参照法-UMLS语义网络

知识图谱模型设计之参照法-UMLS语义网络

知识图谱模型设计之归纳法

模型设计流程
知识图谱模型设计之归纳法-产品生命周期模型

知识图谱语义类型设计:高层抽象可复用(参照与对标)

知识图谱语义类型设计:底层明细需适配(归纳法)
知识图谱语义类型设计:底层明细需适配(归纳法)

知识图谱语义类型设计:底层明细需适配(归纳法)-事件中抽取


 

开源框架NLP 框架

通用实体命名识别



CoreNLP,CRF

知识图谱可视化

Apache ECharts

D3 by Observable | The JavaScript library for bespoke data visualization

汽车项目可视化(基于 ECharts)

推荐系统介绍

常见的推荐系统分类
推荐系统得体系结构

推荐系统得策略模型

知识图谱和推荐系统相结合

知识图谱与推荐系统的融合,可以提升推荐内容的准确性和效果。

三种融合方式

  1. 基于实体属性的推荐:利用知识图谱中实体的属性信息来推荐内容,例如,根据用户的兴趣属性推荐相关的内容。

  2. 基于实体关系的推荐:通过分析知识图谱中实体间的关系,如朋友关系、喜好关系等,来推荐用户可能感兴趣的内容。

  3. 基于知识图谱特征向量的推荐:使用知识图谱中实体的特征向量来生成推荐,这些向量可以捕捉实体的深层次特征,从而提高推荐的个性化程度。

三种训练模式

  • 一次训练:在推荐系统中直接使用知识图谱数据进行训练。
  • 联合训练:同时训练推荐系统和知识图谱模型,使它们共享知识。
  • 交替训练:先训练推荐系统,然后使用其输出来更新知识图谱,再反过来用更新后的知识图谱来训练推荐系统。
推荐系统和知识图谱的结合训练的三种模式

RippleNet工作原理和实现机制

RippleNet是一个结合了知识图谱和推荐系统的框架,旨在通过利用知识图谱中的结构化事实来增强推荐系统的效果。在这个框架中,知识图谱的每个实体(如电影、演员、导演)和关系(如"演员参演电影")被用来丰富用户和物品的表示。

RippleNet网络结构

下面是RippleNet的工作原理和实现机制的简要说明:

RippleNet工作原理和实现机制

  1. 输入

    • 用户u:用户的唯一标识。
    • 物品v(例如,推荐系统中的电影或商品):物品的唯一标识。
    • 用户点击历史Vu​:用户过去的行为记录,如用户点击或购买的物品列表。
  2. 知识图谱

    • 知识图谱包含大量的事实,这些事实以三元组(头实体h,关系r,尾实体t)的形式表示
  3. 种子

    • 用户历史中的每个物品都被视为传播的种子点。这些种子点在知识图谱中被激活,从而影响与用户历史相关的其他实体。
  4. 传播(Propagation)

    • RippleNet通过多个跳数(Hop)对知识图谱进行传播,每一跳都会从当前实体扩散到与之关联的实体,这些实体集合称为"波纹集"(Ripple Set)。
    • 每个跳数可以看作是一层网络,每一层都会收集与上一层相关的实体和关系。
  5. 波纹集的影响

    • 用户的嵌入向量(User Embedding)受到波纹集影响,这些集合包含了用户兴趣的上下文信息。
    • 例如,如果用户点击了某部电影,那么与这部电影相关的导演、演员等实体就会影响用户的表示。
  6. 加权平均与Softmax

    • 每个波纹集会对应一个潜在的用户兴趣表示,这些表示通过加权平均得到用户的最终嵌入。
    • Softmax函数用于将加权后的用户嵌入向量转换为与特定物品相关联的预测概率。
  7. 预测

    • 用户嵌入和物品嵌入(Item Embedding)被送入神经网络中进行计算,输出用户点击给定物品的预测概率。
    • 最终,预测概率被用于生成推荐列表,优先推荐那些具有较高点击概率的物品。

简而言之,RippleNet利用知识图谱中的关系网络来富化用户和物品的表示,使得推荐结果能够更加准确地反映用户的潜在兴趣。通过跳数(Hop)不断传播,它能够考虑到用户历史行为的多个层面,从而实现更深层次的个性化推荐。

相关资料

知识图谱+推荐系统 RippleNet:论文解读+代码 - 知乎

OpenKG.CN – 开放的中文知识图谱

相关文章:

知识图谱之汽车实战案例综述与前瞻分析

知识图谱的前置介绍 什么是知识图谱 知识图谱本质(Knowledge Graph)上是一种叫做语义网络(semantic network ) 的知识库,即具有有向图结构的一个知识库;图的结点代表实体(entity)或者概念(con…...

网关Gateway

什么是网关? 网关实质上是一个网络通向其他网络的 IP 地址,是当前微服务项目的"统一入口"。 网关能做什么? 反向代理 、鉴权、 流量控制、 熔断、 日志监控等 图片原文:http://t.csdnimg.cn/SvUJh 核心概念 Router(…...

java 生成一个当前时间的时间搓

开发过程中 用时间搓数值格式存储 会更加精准 那么 我们在一些日常增删查改中就可以用时间搓来记录操作时间 就一行代码 long timestamp System.currentTimeMillis();他就能生成当前时间的时间搓 运行结果如下 然后 我们可以在 http://shijianchuo.wiicha.com/ 上进行转换查…...

金融中IC和IR的定义

当谈到金融领域时,IC(Information Coefficient)和IR(Information Ratio)通常是用来评估投资组合管理绩效的指标。它们都涉及到投资者对信息的利用和管理的效果。 信息系数(IC - Information Coefficient&a…...

Git(2):Git环境的安装

本教程里的git命令例子都是在Git Bash中演示的,会用到一些基本的linux命令,在此为大家提前列举: ls/ll 查看当前目录cat 查看文件内容touch 创建文件vi vi编辑器(使用vi编辑器是为了方便展示效果,学员可以记事本、edi…...

Pytest单元测试系列[v1.0.0][pytest插件常用技巧]

使用pytest-xdist并发执行测试 pytest-xdist:Run Tests in Parallel [https://pypi.python.org/pypi/pytest-xdist] 在自动化测试中有些资源只能同时被一个测试用例访问,如果不需要同时使用同一个资源,那么测试用例便可以并行执行 执行命令…...

嵌入式培训机构四个月实训课程笔记(完整版)-Linux系统编程第五天-Linux消息共享内存练习题(物联技术666)

更多配套资料CSDN地址:点赞+关注,功德无量。更多配套资料,欢迎私信。 物联技术666_嵌入式C语言开发,嵌入式硬件,嵌入式培训笔记-CSDN博客物联技术666擅长嵌入式C语言开发,嵌入式硬件,嵌入式培训笔记,等方面的知识,物联技术666关注机器学习,arm开发,物联网,嵌入式硬件,单片机…...

04set注入专题/简单类型/数组/List/Set/Map/空字符串/null/特殊符号

1.1注入外部Bean 在之前使用的案例就是注入外部Bean的方式。 <!-- class属性声明要管理哪个类中的对象 property标签的name是提示set方法名ref标签指明注入的bean的id--><bean id"userServiceBean" class"com.powernode.spring6.service.UserService…...

Linux引导和服务管理

目录 一.Linux引导&#xff1a; 1、Linux开机启动的完整过程&#xff1a; 2、bios的作用&#xff1a; 3、boot&#xff1a; 4.mbr: 5、grub&#xff1a; 6、加载内核文件&#xff1a; 7、启动进程&#xff1a; 8、centos6与centos7的区别&#xff1a; 9、完整的过程 …...

HarmonyOS 应用开发学习笔记 ets自定义组件及其引用 @Component自定义组件

Component注解的作用是用来构建自定义组件 Component组件官方文档 自定义组件具有以下特点&#xff1a; 可组合&#xff1a;允许开发者组合使用系统组件、及其属性和方法。 可重用&#xff1a;自定义组件可以被其他组件重用&#xff0c;并作为不同的实例在不同的父组件或容器…...

在做题中学习(43):长度最小的子数组

LCR 008. 长度最小的子数组 - 力扣&#xff08;LeetCode&#xff09; 解法&#xff1a;同向双指针-------滑动窗口算法 解释&#xff1a;本是暴力枚举做法&#xff0c;因为全部是正整数&#xff0c;就可以利用单调性和双指针解决问题来节省时间 思路&#xff1a; 如上面图&am…...

如何将 element-ui 中的 el-select 默认展开

<el-form-item label"藕粉桂花糖糕" prop"state" required><el-selectref"mySelect"v-model"form.state"style"width: 280px"placeholder"请选择"><el-option label"藕粉" :value"…...

Typora基本用法

文章目录 一、标题标题快捷键 二、段落1.换行2.分割线 三、文字显示1.字体2.上下标 四、列表1.无序列表2.有序列表3.任务列表 五、区块显示六、代码显示1.行内代码2.代码块 七、链接八、脚注九、图片插入十、表格十一、流程图十二、表情符号十三、数学公式的输入1.公式的插入①…...

读元宇宙改变一切笔记02_元素(上)

1. 很多组织和机构都想在元宇宙的定义上掌握话语权&#xff0c;使得它的定义中存在矛盾之处&#xff0c;也有大量含义混淆之处 1.1. 微软 1.1.1. 在谈论“多个元宇宙” 1.1.2. 微软首席执行官萨提亚纳德拉将元宇宙描述为一种可以将“整个…...

听GPT 讲Rust源代码--compiler(2)

File: rust/compiler/rustc_codegen_cranelift/build_system/prepare.rs 在Rust源代码中&#xff0c;rust/compiler/rustc_codegen_cranelift/build_system/prepare.rs文件的作用是为Cranelift代码生成器构建系统准备依赖项。 具体来说&#xff0c;该文件的主要目标是处理Crane…...

SpringCloud系列篇:核心组件之负载均衡组件

&#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 接下来看看由辉辉所写的关于SpringCloud的相关操作吧 目录 &#x1f973;&#x1f973;Welcome Huihuis Code World ! !&#x1f973;&#x1f973; 一.负载均衡组件是什么 二.负载均衡…...

多线程模板应用实现(实践学习笔记)

出处&#xff1a;B站码出名企路 个人笔记&#xff1a;因为是跟着b站的教学视频以及文档初步学习&#xff0c;可能存在诸多的理解有误&#xff0c;对大家仅供借鉴&#xff0c;参考&#xff0c;然后是B站up阳哥的视频&#xff0c;我是跟着他学。大家有兴趣的可以到b站搜索。加油…...

Linux系统中MYSQL重置密码(针对root忘记密码)

⼀ .进⼊MySql配置⽂件中 vi /etc/my.cnf 在最后⼀⾏添加免密码登陆: skip-grant-tables :wq 保存退出 ⼆.重启MySql service mysql restart 或 systemctl restart mysqld.service 三. 登陆数据库 mysql -uroot -p 让输⼊密码直接回⻋就可以 四.修改MySql密码 use mysql…...

蓝桥杯基础知识1 字母大小写转换

蓝桥杯基础知识1 字母大小写转换 isalpha()判断一个字符是否为字母。 isalnum()判断一个字符是否为十进制数字字符或者字母&#xff0c;是否属于a~ z或A~ Z或0~9。 isdigit() 判断一个字符是否是十进制数字字符。十进制数字是&#xff1a;0 1 2 3 4 5 6 7 8 9 isalnum()和isdig…...

攀登者1 - 华为OD统一考试

OD统一考试 分值: 100分 题解: Java / Python / C++ 题目描述 攀登者喜欢寻找各种地图,并且尝试攀登到最高的山峰。 地图表示为一维数组,数组的索引代表水平位置,数组的元素代表相对海拔高度。其中数组元素0代表地面。 例如:[0,1,2,4,3,1,0,0,1,2,3,1,2,1,0],代表如下…...

React hook之useRef

React useRef 详解 useRef 是 React 提供的一个 Hook&#xff0c;用于在函数组件中创建可变的引用对象。它在 React 开发中有多种重要用途&#xff0c;下面我将全面详细地介绍它的特性和用法。 基本概念 1. 创建 ref const refContainer useRef(initialValue);initialValu…...

c++ 面试题(1)-----深度优先搜索(DFS)实现

操作系统&#xff1a;ubuntu22.04 IDE:Visual Studio Code 编程语言&#xff1a;C11 题目描述 地上有一个 m 行 n 列的方格&#xff0c;从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子&#xff0c;但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

vue3 字体颜色设置的多种方式

在Vue 3中设置字体颜色可以通过多种方式实现&#xff0c;这取决于你是想在组件内部直接设置&#xff0c;还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法&#xff1a; 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...

OkHttp 中实现断点续传 demo

在 OkHttp 中实现断点续传主要通过以下步骤完成&#xff0c;核心是利用 HTTP 协议的 Range 请求头指定下载范围&#xff1a; 实现原理 Range 请求头&#xff1a;向服务器请求文件的特定字节范围&#xff08;如 Range: bytes1024-&#xff09; 本地文件记录&#xff1a;保存已…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

leetcodeSQL解题:3564. 季节性销售分析

leetcodeSQL解题&#xff1a;3564. 季节性销售分析 题目&#xff1a; 表&#xff1a;sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...

Ascend NPU上适配Step-Audio模型

1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统&#xff0c;支持多语言对话&#xff08;如 中文&#xff0c;英文&#xff0c;日语&#xff09;&#xff0c;语音情感&#xff08;如 开心&#xff0c;悲伤&#xff09;&#x…...

实现弹窗随键盘上移居中

实现弹窗随键盘上移的核心思路 在Android中&#xff0c;可以通过监听键盘的显示和隐藏事件&#xff0c;动态调整弹窗的位置。关键点在于获取键盘高度&#xff0c;并计算剩余屏幕空间以重新定位弹窗。 // 在Activity或Fragment中设置键盘监听 val rootView findViewById<V…...

GitFlow 工作模式(详解)

今天再学项目的过程中遇到使用gitflow模式管理代码&#xff0c;因此进行学习并且发布关于gitflow的一些思考 Git与GitFlow模式 我们在写代码的时候通常会进行网上保存&#xff0c;无论是github还是gittee&#xff0c;都是一种基于git去保存代码的形式&#xff0c;这样保存代码…...