一种使用CNN来提取特征的模型,通过CNN的filter的大小来获得不同的n-gram的信息,模型的结构如下所示:

输入

输入使用word2vec的50维词向量,加上 position embeddingposition embedding 是一句话的每个单词距离两个entity的距离,比如:

In the morning, the <e1>President</e1> traveled to <e2>Detroit</e2>

句子的长度为n,那么对于第i个单词,他的distance就是i-n, 所以distance的范围是 -n + 1 ~ n -1,position embedding是一个 \((2n-1) * m_d\) 的矩阵,\(m_d\)是embedding的维度。一句话中有两个entity,所以每个单词要计算两次distance。最后将word embedding position embedding拼接起来作为模型的输入,输入数据的shape是 \((m_e + 2m_d) * n\), \(m_e\)是embedding的维度, \(m_d\)是 position embedding的维度。

卷积

采用多个卷积核捕获更多的特征。如果卷积核的大小是 w, 那么,会有权重矩阵 \(\mathbf{f}=\left[\mathbf{f}_{1}, \mathbf{f}_{2}, \ldots, \mathbf{f}_{w}\right]\), f是卷积核,\(f_i\)是大小和\(x_i\)一致的weight。

\[s_{i}=g\left(\sum_{j=0}^{w-1} \mathbf{f}_{j+1}^{\top} \mathbf{x}_{j+i}^{\top}+b\right)
\]

模型中会有多个不同大小的卷积核, 每种卷积核最后会经过max pooling,最后得到的向量再输入到linear层中

\[p_{\mathbf{f}}=\max \{\mathbf{s}\}=\max \left\{s_{1}, s_{2}, \ldots s_{n-w+1}\right\}
\]

s是一个大小为w的卷积核在一句话上经过卷积得到的各个位置的score, 池化操作就是找到这句话中的最大的score。往往同样大小的卷积核会有n个,那么这些卷积核的池化结果就是长度为n的张量。也就是输出的size是(batch, n),如果有m种大小不同的卷积核,则把所有卷积核的输出拼到一起。也就是(batch, n * m)

分类

最后接入到全连接层进行分类

关系抽取--Relation Extraction: Perspective from Convolutional Neural Networks的更多相关文章

  1. [转] Understanding Convolutional Neural Networks for NLP

    http://www.wildml.com/2015/11/understanding-convolutional-neural-networks-for-nlp/ 讲CNN以及其在NLP的应用,非常 ...

  2. Understanding Convolutional Neural Networks for NLP

    When we hear about Convolutional Neural Network (CNNs), we typically think of Computer Vision. CNNs ...

  3. 《Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Neural Networks》论文笔记

    论文题目<Deep Feature Extraction and Classification of Hyperspectral Images Based on Convolutional Ne ...

  4. Convolutional Neural Networks卷积神经网络

    转自:http://blog.csdn.net/zouxy09/article/details/8781543 9.5.Convolutional Neural Networks卷积神经网络 卷积神经 ...

  5. Deep learning_CNN_Review:A Survey of the Recent Architectures of Deep Convolutional Neural Networks——2019

    CNN综述文章 的翻译 [2019 CVPR] A Survey of the Recent Architectures of Deep Convolutional Neural Networks 翻 ...

  6. 论文解读二代GCN《Convolutional Neural Networks on Graphs with Fast Localized Spectral Filtering》

    Paper Information Title:Convolutional Neural Networks on Graphs with Fast Localized Spectral Filteri ...

  7. Notes on Convolutional Neural Networks

    这是Jake Bouvrie在2006年写的关于CNN的训练原理,虽然文献老了点,不过对理解经典CNN的训练过程还是很有帮助的.该作者是剑桥的研究认知科学的.翻译如有不对之处,还望告知,我好及时改正, ...

  8. A Beginner's Guide To Understanding Convolutional Neural Networks(转)

    A Beginner's Guide To Understanding Convolutional Neural Networks Introduction Convolutional neural ...

  9. (转)A Beginner's Guide To Understanding Convolutional Neural Networks

    Adit Deshpande CS Undergrad at UCLA ('19) Blog About A Beginner's Guide To Understanding Convolution ...

随机推荐

  1. WebStorm 配置 Vue3 的文件模板

    WebStorm 默认的 Vue 模板不是 setup 函数(组合式 API)模板,而是 Options API 模板.在设置中搜索 File and Code Templates 编辑创建 vue ...

  2. Lua环境搭建编译[Lua5.2+VS2010]

    这里是我编译的和一个测试Demo:http://download.csdn.net/detail/allh45601/6783653 大家如果看我下边说的不是很清楚,可以下载这个具体工程: 群:103 ...

  3. 一例智能网卡(mellanox)的网卡故障分析

    一例智能网卡(mellanox)的网卡故障分析 背景:这个是在centos 7.6.1810的环境上复现的,智能网卡是目前很多 云服务器上的网卡标配,在oppo主要用于vpc等场景,智能网卡的代码随着 ...

  4. Python入门系列(六)一篇学会python函数

    函数 函数是只在调用时运行的代码块. def my_function(): print("Hello from a function") my_function() 信息可以作为参 ...

  5. 【pytest官方文档】解读- 如何自定义mark标记,并将测试用例的数据传递给fixture函数

    在之前的分享中,我们知道可以使用yield或者return关键字把fixture函数里的值传递给test函数. 这种方法很实用,比如我在fixture函数里向数据库里插入必要的测试数据,那我就可以把相 ...

  6. KingbaseESV8R6垃圾回收受到参数old_snapshot_threshold的影响

    垃圾回收影响因素 影响垃圾回收的因素有很多,垃圾回收不及时,最直接导致表膨胀,详情查看文档<KingbaseESV8R6 垃圾回收原理以及如何预防膨胀>. vacuum回收垃圾的tuple ...

  7. 利用c++编写bp神经网络实现手写数字识别详解

    利用c++编写bp神经网络实现手写数字识别 写在前面 从大一入学开始,本菜菜就一直想学习一下神经网络算法,但由于时间和资源所限,一直未展开比较透彻的学习.大二下人工智能课的修习,给了我一个学习的契机. ...

  8. Taurus.MVC 微服务框架 入门开发教程:项目集成:6、微服务间的调用方式:Rpc.StartTaskAsync。

    系统目录: 本系列分为项目集成.项目部署.架构演进三个方向,后续会根据情况调整文章目录. 开源地址:https://github.com/cyq1162/Taurus.MVC 本系列第一篇:Tauru ...

  9. Exchange如何将邮件转发给外部邮件地址

    Exchange如何将邮件转发给外部邮件地址 最近遇到一个需求.一位已经离职的员工需要将后续的邮件转发给他自己的私人邮箱.安全,行政的审核通过后,这个问题就到了技术部门了. Exchange可以很方便 ...

  10. thinkphp5.1中适配百度富文本编辑器ueditor

    百度富文本编辑器ueditor虽然很老,但是功能齐全,我近期需要能批量粘贴图片的功能,但是找不到,很无奈.然后现在就分享一下如何把ueditor适配到thinkphp5.1,有知道如何批量上传图片的艾 ...