A Novel Negative Sample Generating Method for KnowledgeGraph Embedding

摘要

为了有效地提取知识图中的关系和原因,将实体和关系编码到一个连续的低维语义空间中。在负样本生成阶段,大多数知识图嵌入方法更注重替换头或尾实体以提高训练效率,很少替换关系。这些负样本生成方法对关系预测的贡献不大。本文提出了一种新的负三重组生成方法。与仅替换TransE、TransH、TransR等实体的方法相比,本文提出的方法以适当的比例替换实体和关系。在WN18和FB15K等经典数据集上的实验结果表明,该方法在关系链路预测精度上明显优于原始方法,对实体链路预测影响较小。根据实验结果,我们还发现,随着关系替换概率比例的增加,关系链接预测能力增强,实体链接预测能力减弱。

2 Related Work

在TransG[18]中,负三元组不仅通过替换头或尾实体生成,而且通过将关系r替换为从关系集r中均匀抽样的随机关系生成,即

 

它们只是简单地用等概率替换实体和关系来生成负三元组,而忽略了实体和关系替换概率的比例对实体和关系预测性能的影响。

为了提高负训练样本的质量,Type-Constraints[9]采用了约束实体范围生成负样本的策略。受生成式对抗网络(generative adversarial networks, GANs)[7]的启发,KBGAN[5]采用一些知识嵌入模型作为生成器来构造质量更好的负样本。为了获得优异的训练效率,ComplEx[16]研究了正、负样本比例的影响。研究表明,每阳性样本产生更多的阴性样本可以获得更好的结果,每阳性样本产生50个阴性样本是准确性和训练时间之间的良好权衡。

在此工作中,我们将关系替换引入到负样本生成中,并为实体和关系设置不同的替换概率,以获得更好的实体和关系预测结果。

3 The Proposed Negative Samples Generating Method

在本节中,提出了一种新的生成负样本的方法来改进知识表示模型的训练过程。在本文提出的方法中,通过替换正三元组(h;r;t)∈S中的头部实体h、尾部t或关系r来生成负样本集S’,并且每次只替换每个观察三元组中的一个项目。如何设置关联概率和实体替换概率是本文研究的重点。我们分两步解决这个问题。首先,根据知识图中实体和关系的数量设置实体替换概率和关系替换概率,然后根据关系r的所有三元组中的两个统计量设置正尾部实体替换概率:1)每个头部实体的平均尾部实体数量,2)每个尾部实体的平均头部实体数量。详细描述如下。

在许多知识表示模型中,通常采用基于边际的分数函数,以负抽样作为训练目标:

与其他损失函数认为负例为假的假设不同,这个损失函数只是假设负例不如正例有效。它使消极的例子比积极的例子得分低。

在小批量模式下,可采用随机梯度下降法(SGD)对式(3)进行优化[14]。详细的培训程序如下。首先,所有实体和关系的嵌入向量从均匀分布随机初始化。接下来,在每次迭代中,对实体和关系的嵌入向量进行规范化。然后,从集合S中抽取一小部分正事实,对于每一个正事实,相应地生成一个负三元组。将正面事实和生成的负面事实作为小批量的训练样例。然后用恒学习率梯度下降法更新小批量中实体和关系的嵌入向量。

为了改进TransE、TransH和TransR等知识图嵌入方法的训练过程,我们通过用关系替换破坏三元组来扩展负例空间。因此我们的负三重集也可以用第2节中的公式(2)来描述。然后,提出了一种新的生成负三元组的方法,并将其应用于transse、TransH和TransR三种表示模型。受TransH方法的启发,我们对正三元组中的关系、头实体或尾实体设置了不同的替换概率。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/772121.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

vue项目在本地源码方式启动和打包之后在nginx中代理有什么不同

Vue项目在本地源码方式启动和打包之后在Nginx中代理的主要区别在于开发环境与生产环境的配置、性能优化、安全性和部署流程等方面。以下是一些具体的差异点: 开发环境与生产环境: 本地源码启动通常是在开发环境中,使用Vue CLI的vue-cli-servi…

瑞吉外卖实战学习--登录过滤器和判断是否登录过

完善登录功能 1、创建自定义过滤器LoginCheckFiler1.1通过WebFilter创建过滤器1.2 验证是否可以拦截请求1.3 代码 2、在启动类加入注解ServletComponentScan 用来扫描过滤器触发所有的过滤器ServletComponentScan 3、完善过滤器的处理逻辑3.1判断是否需要是要放行的请求3.2判断…

鸿蒙OS应用示例:【数字滚动计时】

实现效果: 代码示例: RollingText.ets 组件封装 RollingText.ets 组件封装 /*** 滚动文字特效*/ Component export default struct RollingText {private num:numberprivate timerId: number -1State counter: number 0aboutToAppear() {this.timerId…

Git基础(25):Cherry Pick合并指定commit id的提交

文章目录 前言指定commit id合并使用TortoiseGit执行cherry-pick命令 前言 开发中,我们会存在多个分支开发的情况,比如dev,test, prod分支,dev分支在开发新功能,prod作为生产分支已发布。如果某个时候,我们…

3.26C++

定义一个矩形类(Rectangle),包含私有成员:长(length)、宽(width), 定义成员函数: 设置长度:void set_l(int l) 设置宽度:void set_w(int w) 获取长度:int…

【Linux】线程同步{死锁/线程同步相关接口/由浅入深理解线程同步}

文章目录 1.死锁1.1概念1.2死锁的必要条件 2.线程同步相关接口2.1pthread_cond_init/destroy()2.2int pthread_cond_wait2. 3linux下的条件变量及其作用2.4int pthread_cond_signal/broadcast();2.5Linux下 阻塞和挂起的异同2.6阻塞,挂起,和进程切换的关…

【MySQL】数据库--基础

目录 一、概念: 二、连接数据库[Dos命令] 三、SQL 语句分类 一、概念: MySQL 是一种开源的关系数据库管理系统 (RDBMS)数据库-表的本质仍然是文件 二、连接数据库[Dos命令] mysql -h:mysql服务的主机(默认连接到本机服务器&…

轻松掌握:使用 API 接口自动缩短网址的秘诀

在互联网的世界里,网址缩短已经成为了一种时尚和必要。长而复杂的网址不仅难以记忆,还可能让人望而却步。但是,现在有了 API 接口,我们可以轻松地将网址自动缩短,让分享变得更加简单和高效!本文将以具体例子…

自增不再简单:深入探索MySQL自增ID的持久化之道

概述 MySQL中的自增特性估计大家或多或少都是用过。一张表中只能由一个自增字段,通常我们会把它设置为主键,但是随着大家系统越来越分布式,为了一些性能和可扩展性问题,大家目前选择更多的都是分布式ID(雪花算法、UUI…

【python】Jupyter Notebook 修改默认路径

文章目录 一、修改前(一)问题(二)修改前的默认路径 二、修改配置文件、更改路径(一)找到配置文件并打开(二)创建目标文件夹、得到新的路径(三)修改配置文件 三…

大模型时代的向量数据库:原理解析和应用案例

大家好,在人工智能领域,数据处理和加工的需求愈发增加。随着人们深入探索AI高级的应用,如图像识别、语音搜索和推荐引擎等,数据的复杂性也在不断地增加。此时传统的数据库存储方式已不能完全满足需求,向量数据库应运而…

su怎么做展厅模型---模大狮模型网

要在SketchUp中创建展厅模型,你可以按照以下基本步骤进行: 绘制基本结构: 使用SketchUp的绘图工具(线条、矩形、圆形等)来创建展厅的基本结构,包括墙壁、地板和天花板等。确保按照实际尺寸和比例进行绘制。 添加家具和展品&…

【C++教程从0到1入门编程】第十三篇:STL中list类的模拟实现

一、list的模拟实现 #include<iostream> #include<assert.h> #pragma once namespace jyr {template<class T>struct _list_node{_list_node<T>* _next;_list_node<T>* _prev;T _data;_list_node(const T& val T()):_next(nullptr), _prev(…

Zabbix 配置使用

目录 配置流程 添加组机组 添加模板 添加主机 配置图形 配置大屏 Monitoring 配置地图 最新数据 故障 使用IT服务 使用报表 资产管理 全局搜索 导入导出 用户权限 用户组权限 用户 匿名用户 调试模式 与 LDAP 对接 维护模式 故障确认 批量更新 配置流程…

【办公类-21-10】三级育婴师 视频转文字docx(等线小五单倍行距),批量改成“宋体小四、1.5倍行距、蓝色字体、去掉五分钟”

作品展示 背景需求 今天将最后3个育婴师操作视频做整理 第1步&#xff1a;视频MP4转MP3 【办公类-40-01】20240311 用Python将MP4转MP3提取音频 &#xff08;家长会系列一&#xff09;-CSDN博客文章浏览阅读393次&#xff0c;点赞9次&#xff0c;收藏6次。【办公类-40-01】20…

[项目前置]websocket协议

websocket协议介绍 WebSocket 协议是一种在单个 TCP 连接上进行全双工通讯的协议。 WebSocket 使得客户端和服务器之间的数据交换变得更简单&#xff0c;允许服务器主动向客户端推送数据。它在 2011 年成为国际标准&#xff0c;现在被所有现代浏览器支持。WebSocket 设计用于…

iNet Network Scanner Mac 网络扫描工具

iNet Network Scanner for Mac是一款功能强大的网络扫描工具&#xff0c;专为Mac用户设计。它提供了全面而深入的网络分析功能&#xff0c;使用户能够轻松获取Mac连接的网络和设备的详细信息。 软件下载&#xff1a;iNet Network Scanner Mac v3.1.0激活版 这款软件具备多种扫描…

业务服务:xss攻击

文章目录 前言一、使用注解预防1. 添加依赖2. 自定义注解3. 自定义校验逻辑4. 使用 二、使用过滤器1. 添加配置2. 创建配置类3. 创建过滤器4. 创建过滤器类5. 使用 前言 xss攻击时安全领域中非常常见的一种方法&#xff0c;保证我们的系统安全是非常重要的 xss攻击简单来说就…

TCP(socket 套接字)编程 1

一、TCP套接字编程架构如下 二、相关代码实现 1、服务器端代码 package com.company;import java.io.IOException; import java.net.InetSocketAddress; import java.net.ServerSocket; import java.net.Socket;public class Main {public static void main(String[] args) {…

javaWeb健身房管理系统

一、简介 随着人们健康意识的增强和生活水平的提高&#xff0c;健身已经成为了现代人生活中不可或缺的一部分。为了更好地管理健身房的日常运营&#xff0c;我们设计并开发了一款基于 JavaWeb 的健身房管理系统。本系统采用了最新的技术&#xff0c;包括 Spring Boot、MyBatis…