关系抽取之分段卷积神经网络(PCNN)

article/2025/7/20 11:05:38

文章目录

    • 远程监督
    • PCNN关系抽取
    • PCNN方法论
      • 向量表达
      • 卷积层
      • 分段最大池化层
      • Softmax层
      • 多实例学习
    • Reference

Tensorflow2.2实现,见github仓库。


远程监督

关系抽取训练集标注成本高,一般使用远程监督方法(半监督)自动标注数据。远程监督假设,若知识库中两个实体具有某种关系,则任何包含这两个实体的句子都具有这种关系。

下图为使用远程监督自动标注数据的实例,其中第一句标注正确,而第二句标注错误。

远程监督是快速获取关系抽取训练集的有效方法,但其有 两个缺点

  • 远程监督假设过于强烈,易标注错误,从而引入噪声数据,多数远程监督方法的研究聚焦于降噪
  • 远程监督多用于使用精细特征(句法结构等)的监督模型,这些特征一般使用已有的NLP工具提取,不可避免会引入误差,使用NLP工具提取的传统特征,会造成误差的传播或积累,而且,远程监督语料库多来源于网络的非正式文本,句子长度不一,随着句子长度的增加,传统特征提取的正确性会急剧下降;

PCNN关系抽取

Piecewise Convolutional Neural Networks (PCNNs) with multi-instance learning 解决以上两个难题:

为解决第一个问题,将远程监督关系抽取视为多实例问题。多实例问题中,训练集由很多包组成,每个包多个实例,每个包的标签已知,而包中实例的标签未知。设计目标函数只考虑每一个包的预测标签,PCNN仅选取每包中预测类别最接近真实类别的一个实例作为包的输出,一定程度上可降低包中一些实例标注错误的影响。

为解决第二个问题,使用CNN网络自动提取特征,不使用复杂的NLP预处理。对卷积层输出使用单一最大池化,能一定程度提取文本特征表达,但难以捕获两个实体间的结构信息。PCNN基于两实体位置信息将卷积层输出划分为3个部分,基于此,PCNN可能表现出更好的性能。

PCNN与Text CNN的主要区别在于输入层引入position embedding、池化层分为三段!


PCNN方法论

如图3所示,PCNNS主要由四部分组成:Vector Representation, Convolution, Piecewise Max Pooling and Softmax Output.

向量表达

句子的向量表达为两部分的拼接结果:词嵌入和位置嵌入。

  • 使用skip-gram方法预训练词向量;
  • 使用Position Embeddings表示句子单词到两个实体的相对距离,如下图,单词son到实体Kojo Annan和Kofi Annan的相对距离分别为3和-2。

随机初始化两个位置嵌入矩阵,图3中词嵌入的维度是4,位置嵌入的维度是1。结合词嵌入和位置嵌入,句向量表示为
S = R s × d S=\R^{s\times d} S=Rs×d

其中, s s s是句子长度(单词数), d = d w + d p ∗ 2 d=d_w+d_p*2 d=dw+dp2.

卷积层

对于长度为 s s s的句子,首尾填充 w − 1 w-1 w1长度,则卷积核 w \boldsymbol w w的输出
c ∈ R s + w − 1 , c j = w q j − w + 1 : j , 1 ≤ j ≤ s + w − 1 \boldsymbol c\in\R^{s+w-1},\quad c_j=\boldsymbol w\boldsymbol q_{j-w+1:j},\quad 1\leq j\leq s+w-1 cRs+w1,cj=wqjw+1:j,1js+w1
若使用 n n n个卷积核,则卷积操作的输出为
C = { c 1 , ⋯ , c n } , c i j = w i q j − w + 1 ; j , 1 ≤ i ≤ n C=\{\boldsymbol c_1,\cdots,\boldsymbol c_n\},\quad c_{ij}=\boldsymbol w_i\boldsymbol q_{j-w+1;j}, \quad 1\leq i\leq n C={c1,,cn},cij=wiqjw+1;j,1in

图3中,卷积核的数目为3。

分段最大池化层

卷积层输出维度为 R n × ( s + w − 1 ) \R^{n\times (s+w-1)} Rn×(s+w1),输出维度依赖于句子的长度。为便于应用于下游任务,卷积层的输出必须独立于序列长度,一般采用池化操作,主要思想是仅保留每个feature map中的主要的特征。

使用单一最大池化无法捕获两个实体的结构信息特征,PCNN使用分段最大池化代替单一最大池化,如图3所示,每个卷积核的输出 c i \boldsymbol c_i ci被两个实体划分为3部分,分段最大池化输出长度为3的向量
p i = { p i 1 , p i 2 , p i 3 } , p i j = max ⁡ ( c i j ) 1 ≤ i ≤ n , 1 ≤ j ≤ 3 \boldsymbol p_i=\{p_{i1},p_{i2},p_{i3}\},\ p_{ij}=\max(c_{ij})\quad 1\leq i\leq n,\ 1\leq j\leq 3 pi={pi1,pi2,pi3}, pij=max(cij)1in, 1j3
拼接所有卷积核分段池化层输出为 p 1 : n \boldsymbol p_{1:n} p1:n,经非线性函数输出为(维度与句子长度无关)
g = tanh ⁡ ( p 1 : n ) , g ∈ R 3 n \boldsymbol g=\tanh(\boldsymbol p_{1:n}), \quad\boldsymbol g\in\R^{3n} g=tanh(p1:n),gR3n

Softmax层

首先将输出转化为类别分数(softmax转换为类别概率)
o = W 1 g + b , W 1 ∈ R n 1 × 3 n , o ∈ R n 1 \boldsymbol o=W_1\boldsymbol g+b,\quad W_1\in\R^{n_1\times 3n},\ \boldsymbol o\in\R^{n_1} o=W1g+b,W1Rn1×3n, oRn1

多实例学习

为降低数据标注错误的影响,PCNN使用多实例(半监督)学习。

考虑包含 T T T个包的训练集 { M 1 , M 2 , ⋯ , M T } \{M_1,M_2,\cdots,M_T\} {M1,M2,,MT},其中 M i = { m i 1 , m i 2 , ⋯ , m i q i } M_i=\{m_i^1,m_i^2,\cdots,m_i^{q_i}\} Mi={mi1,mi2,,miqi},包中 q i q_i qi个不同实例互为独立。对于实例 m i j m_i^j mij,神经网络 Θ \Theta Θ输出向量 o \boldsymbol o o,其中第 r r r个关系对应的概率为
p ( r ∣ m i j ; θ ) = e o r ∑ k = 1 n 1 e o k p(r|m_i^j;\theta)=\frac{e^{o_r}}{\sum_{k=1}^{n_1}e^{o^k}} p(rmij;θ)=k=1n1eokeor

将目标函数定义为极小化每个包的损失,从而降低包中部分数据标注错误的影响。每个包的标签已知,包中实例标签未知,训练过程中将包中实例在包标签上的最大概率作为预测输出,则目标函数定义为
J ( θ ) = ∑ i = 1 T log ⁡ p ( y i ∣ m i j ; θ ) , j ∗ = arg ⁡ max ⁡ j p ( y i ∣ m i j ; θ ) J(\theta)=\sum_{i=1}^T\log p(y_i|m_i^j;\theta),\quad j^*=\arg\max_jp(y_i|m_i^j;\theta) J(θ)=i=1Tlogp(yimij;θ),j=argjmaxp(yimij;θ)


Reference

1. Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks
2. EMNLP 2015 | PCNN实现远程监督在关系提取中的应用


http://chatgpt.dhexx.cn/article/KSVqDAgU.shtml

相关文章

脉冲耦合神经网络(PCNN)阅读笔记

摘要 本文采用高级视觉模型来描述灵长类视觉系统中的信息传递和连接。信息链接方案,如状态相关模块化和时间同步,被视为视觉系统使用期望组合信息的方法,以填充缺失信息和删除不需要的信息。研究了使用基于生理学理论模型的链接方法结合当前…

PCNN的知识抽取

PCNN是一个结构简单的CNN网络, 它最初被用于在已知实体对位置时, 辨别实体对关系的网络. 上图是论文里带的PCNN结构图. PCNN的输入由两部分构成, 一部分是词本身的词向量word, 另一部分是词相对于实体词的位置信息position. PCNN优秀的地方就在于加入了位置信息, 具体如下: 1.…

基于PCNN脉冲耦合神经网络的图像分割

目录 1.算法描述 2.仿真效果预览 3.MATLAB核心程序 4.完整MATLAB 1.算法描述 脉冲耦合神经网络(PCNN-Pulse Coupled Neural Network)与传统神经网络相比,有着根本的不同。PCNN有生物学的背景,它是依据猫、猴等动物的大脑皮层上…

【MATLAB图像融合】[13]PCNN脉冲耦合神经网络基本原理

→这是一篇学习笔记。 →但考虑要发出来,还是排版了,请放心食用。 PCNN在图像融合中应用广泛 1、脉冲耦合的神经元之间有有耦合和无耦合两种形式。,有耦合的神经元之间存在能量传播,产生同步脉冲发放,从而将输入相似的…

【图像特征提取】基于matlab脉冲耦合神经网络(PCNN)图像特征提取【含Matlab源码 1868期】

⛄一、脉冲耦合神经网络(PCNN)图像特征提取简介 1 引言 随这生物神经学的迅速发展及其研究的进一步深入,国外对一种叫做第三代人工神经网络的模型——脉冲耦合神经网络模型——PCNN(Pulse Coupled Neural Network)模型…

脉冲耦合神经网络(PCNN)-pulse coupled neural network

摘要 本文采用高级视觉模型来描述灵长类视觉系统中的信息传递和连接。信息链接方案,如状态相关模块化和时间同步,被视为视觉系统使用期望组合信息的方法,以填充缺失信息和删除不需要的信息。研究了使用基于生理学理论模型的链接方法结合当前图…

NTFS 数据流隐写学习

NTFS 数据流隐写学习 —— 概念学习: NTFS文件系统中存在NTFS数据流文件也被称为 Alternate data streams(ADS), 是NTFS磁盘格式的一个特性之一每个文件都有主文件流和非主文件流,主文件流能够直接看到;…

CTF隐写知识

通用知识 通用软件 010或winhex或HxD或HexEditXP 一.在文件中加入字符 jpg文件头 FF D8 jpg 文件尾 FF D9 FF D9后面的都是增加的内容; 增加的可能是字符串,也可能是另一个文件(就是把多个文件的十六进制放在一起) 二.ZIP格式文件分离 十…

图片隐写术总结

0x00 前言 之前还没有见到drops上有关于隐写术的总结,我之前对于隐写术比较有兴趣,感觉隐写术比较的好玩。所以就打算总结总结一些隐写术方面的东西。写的时候,可能会有错误的地方,请不吝赐教,谢谢。 本篇章中用到的隐…

图像隐写分析——生成含密图像 Stego Image

文章目录 一 图像隐写分析的数据集二 含密图像展示三 结语 一 图像隐写分析的数据集 小编本科毕设的题目是《基于深度学习的图像隐写分析》,图像隐写分析问题本质上是一个二分类(binary classifier)问题,即判断一张图片中是否含有…

图片LSB信息隐写

LSB(全大写)有时也指Least Significant Byte,指多字节序列中最小权重的字节。指的是一个二进制数字中的第0位(即最低位) RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化…

F3隐写

F3隐写 文章目录 F3隐写1. 引言2. 实验环境3. 实现使用的现有外部库4. 实现思路> **预处理**> **DCT量化**>**秘密信息嵌入**> **Z字形序列化**>**Huffman编码**>**反Z字形序列化**>**提取秘密信息** 5.验证6. 总结 1. 引言 数字隐写技术是一种在数字媒体…

TTL隐写

#拿到一个长成这样的文件,里面是意义不明的数字 63 63 63 255 63 63 63 255 63 63 63 255 63 63 63 255 63 63 63 255 63 63 63 255 63 127 63 255 63转换为2进制,并设置为8位数的2进制,就会有很神奇的事情发生 with open(C:/Users/brighten…

深度学习之图像隐写去除(DDSP模型 Steganography Removal)

文章目录 一 前言二 论文内容2.1 Abstract2.2 Introduction2.3 Background2.3.1 Prior Work2.3.2 Super Resolution GAN 超分辨率GAN 2.4 Data2.5 Deep Digital Steganography Puricication (重头戏)2.5.1 Autoencoder Architecture2.5.1 GAN Training 2.6 Result 三 训练结果四…

SRNet隐写分析网络模型 (pytorch实现)

文章目录 一 SRNet隐写分析模型介绍二 SRNet网络概述三 训练结果展示 一 SRNet隐写分析模型介绍 SRNet模型是宾汉姆顿大学(Binghamton University)Jessica教授团队于2018年提出的图像隐写分析网络模型,应该说是当时SOTA(state-of-the-art)的隐写分析网络模型了&…

GIF隐写

CTF DAY1的倒数第二题: 首先 打开图片 发现打不开 用010 Editor 发现图片开头少了文件头 添加文件头 使得图片能够看到 这时候打开图片 发现 密码一闪而过 这时候 用到另一个软件 Namo_Gif 打开刚刚已经恢复好的GIF 可以清楚的看到每一帧 对于每一帧 修改他…

隐写术--总结

文章来源:http://bobao.360.cn/learning/detail/243.html 1.增加数据的方式 隐藏信息 另存为.zip后解压,正常的.JPG图片在文本编辑器(winhex)中,16进制是以FF D9结尾 原理:a.先制作一个1.zip 把含有隐藏…

隐写术技术深入分析

文章目录 0x01 隐写术概要0x02 特征0x03 隐写术应用0x04 题目解析思路 0x01 隐写术概要 首先看一下官方定义,“隐写术是一门关于信息隐藏的技巧与科学,所谓信息隐藏指的是不让除预期的接收者之外的任何人知晓信息的传递事件或者信息的内容。” 简单说就…

隐写术基础

目录 前言 一. 隐写系统模型 二. 隐写分析系统模型 三. 对比隐写技术与密码技术 四. 隐写术的基本术语与概念 4.1 不可感知性 4.2 安全性 4.3 隐蔽性 4.4 鲁棒性 4.5 隐藏容量 4.7 检测粒度 总结 前言 隐写术是一门关于信息隐藏的技巧与科学,所谓信息隐…

CTF学习之MISC之图片隐写与文档隐写

CTF学习之MISC之图片隐写 隐写术概述 图片隐写技术图片EXIF信息隐写图片LSB低位隐写 隐写术(Stega) 隐写术(Steganography,简写Stega) 一门关于信息隐藏的技巧与科学 信息隐藏:不让除预期的接收者之外的…