源代码github地址

https://github.com/sunxiangguo/2CLSTM

但是没有开放数据集, 所以需要自己填数据集

摘要

这篇文章说他们认为文本的结构也是一个包含人物性格的重要特征,所以他们使用了一个名叫2CLSTM的模型,由一个双向的LSTM(Long Short Term Memory networks)和一个CNN(卷积神经网络)组成,用于侦测人物性格。同时提出**Latent Sentence Group(LSG)**这个概念来表示一组在某些方面连接很紧密的句向量。最后用这个LSG来分类得到5大性格的true和false。

2CLSTM 过程

2CLSTM包括4个部分, 词嵌入, 2LSTM处理句向量,得到关于上下文的语义信息, CNN学习LSG特征, Softmax分类, 这也就是为什么这个总的模型叫做2CLSTM。

1. 词嵌入

词嵌入说白了就是把单词变成一个向量,或者说把词空间映射成一个连续的向量空间,这里提前使用了GloVe 的已经训练好的词矩阵得到词向量,把单词变为一个100维的向量, 论文里建议最好从数据集里训练出词向量。

2. 2LSTM处理

论文介绍了LSTM, 这里不做过多介绍,关键的一点就是作者通过对词 分别输入到两个LSTM得到词左边和词右边的上下文

此图可以说明

3. CNN学习LSGCNN学习LSG

Sentence Group表示在逻辑和语义结构上紧密相连的几个连续句子,如坐标关系,偏好关系,因果关系等。但是,探测这些具体关系对于大多数文本任务来说是不切实际的。实际运用上,我们经常专注于探测某些维度中句子向量之间的关系。这也就是为什么我们使用Latent 这个词。

所以我们得到LSG 的定义

Latent Sentence Group (LSG) is defined as a synthesis that consists of a number of sentence vectors which are closely connected in some coordinates.

LSG( Latent Sentence Group)定义为一组在某些方面连接很紧密的句向量。

具体我们使用CNN来学习到LSG特征, 每个word通过Fully connected layer ,得到句子向量。 然后在每个维度中,我们使用1,2,3-gram 内核来学习每个坐标中的LSG特征。 通过 dense layermax pooling layer ,最终得到LSG。

4. Softmax分类

把得到的LSG用Softmax来进行分类

使用此公式计算概率

Who Am I? Personality Detection based on Deep Learning for Texts 阅读笔记的更多相关文章

  1. 论文笔记之:Pedestrian Detection aided by Deep Learning Semantic Tasks

    Pedestrian Detection aided by Deep Learning Semantic Tasks CVPR 2015 本文考虑将语义任务(即:行人属性和场景属性)和行人检测相结合, ...

  2. Deep learning with Python 学习笔记(11)

    总结 机器学习(machine learning)是人工智能的一个特殊子领域,其目标是仅靠观察训练数据来自动开发程序[即模型(model)].将数据转换为程序的这个过程叫作学习(learning) 深 ...

  3. Deep learning with Python 学习笔记(10)

    生成式深度学习 机器学习模型能够对图像.音乐和故事的统计潜在空间(latent space)进行学习,然后从这个空间中采样(sample),创造出与模型在训练数据中所见到的艺术作品具有相似特征的新作品 ...

  4. Deep learning with Python 学习笔记(9)

    神经网络模型的优化 使用 Keras 回调函数 使用 model.fit()或 model.fit_generator() 在一个大型数据集上启动数十轮的训练,有点类似于扔一架纸飞机,一开始给它一点推 ...

  5. Deep learning with Python 学习笔记(8)

    Keras 函数式编程 利用 Keras 函数式 API,你可以构建类图(graph-like)模型.在不同的输入之间共享某一层,并且还可以像使用 Python 函数一样使用 Keras 模型.Ker ...

  6. Deep learning with Python 学习笔记(7)

    介绍一维卷积神经网络 卷积神经网络能够进行卷积运算,从局部输入图块中提取特征,并能够将表示模块化,同时可以高效地利用数据.这些性质让卷积神经网络在计算机视觉领域表现优异,同样也让它对序列处理特别有效. ...

  7. Deep learning with Python 学习笔记(6)

    本节介绍循环神经网络及其优化 循环神经网络(RNN,recurrent neural network)处理序列的方式是,遍历所有序列元素,并保存一个状态(state),其中包含与已查看内容相关的信息. ...

  8. Deep learning with Python 学习笔记(5)

    本节讲深度学习用于文本和序列 用于处理序列的两种基本的深度学习算法分别是循环神经网络(recurrent neural network)和一维卷积神经网络(1D convnet) 与其他所有神经网络一 ...

  9. Deep learning with Python 学习笔记(4)

    本节讲卷积神经网络的可视化 三种方法 可视化卷积神经网络的中间输出(中间激活) 有助于理解卷积神经网络连续的层如何对输入进行变换,也有助于初步了解卷积神经网络每个过滤器的含义 可视化卷积神经网络的过滤 ...

随机推荐

  1. C# 人脸识别库 0.2

    ViewFaceCore 0.2 超简单的 C# 人脸识别库 前言: 首先谢谢大家对这个库的关注,前一篇博文得到了大家的 支持 和 Star,十分开心.本想尽快实现大家的期待的活体检测功能,但是前段时 ...

  2. 小书MybatisPlus第5篇-Active Record模式精讲

    本文为一个系列中的第五节,前四节访问如下地址: 小书MybatisPlus第1篇-整合SpringBoot快速开始增删改查 小书MybatisPlus第2篇-条件构造器的应用及总结 小书Mybatis ...

  3. Arctic Code Vault Contributor 上榜了 go-admin v1.1 beta 版本发布

    Arctic Code Vault Contributor 上榜了,内心比较喜悦,谢谢开源社区的支持,也谢谢广大 coder 的支持: go-admin 是一个基于 Gin + Vue + Eleme ...

  4. Cooperative Groups

    Cooperative Groups 目录 Cooperative Groups 简介 块内组 thread_block tiled_partition Thread Block Tiles Coal ...

  5. css :clip rect 正确的使用方法

    CSS clip 是一个极少使用,但又确实存在的属性. 而且,它其实在CSS2时代就有了. w3school 上有这么一句话: clip 属性剪裁绝对定位元素. 也就是说,只有 position:ab ...

  6. 2020年20个Flutter最漂亮的UI库和项目

    Best-Flutter-UI-Templates 地址:https://github.com/mitesh77/Best-Flutter-UI-Templates The History of Ev ...

  7. 015.Nginx重定向

    一 重定向概述 1.1 重定向介绍 重定向(Redirect)指通过各种方法将各种网络请求重新定个方向转到其它位置(如:网页重定向.域名的重定向.路由选择的变化也是对数据报文经由路径的一种重定向). ...

  8. java代码之美(17) ---Java8 LocalDateTime

    Java8 LocalDateTime 在java8之前我们在处理时间的时候都是用的Date,但它其实有很明显的缺点. 1.我们也会对日期做一些操作,比如加几天.加几分,当月的最后一天等等.有些计算实 ...

  9. 题解 洛谷 P3298 【[SDOI2013]泉】

    考虑到年份数很小,只有 \(6\),所以可以 \(2^6\) 来枚举子集,确定流量指数对应相同的位置,然后通过哈希和排序来计算相同的方案数. 但是这样计算出的是大于等于子集元素个数的方案数,所以还需要 ...

  10. .log文件超过2.56MB?Pycharm的.log文件读取不完全?.log文件无法被调用?

    问题截图: 问题表现情况: 1.pycharm头部出现上图警告 2.该.log文件读取不完全 3.该.log文件无法被调用 解决步骤: 参考博客:https://blog.csdn.net/Shen1 ...