深度学习
文章平均质量分 89
liuchongee
这个作者很懒,什么都没留下…
展开
-
深度学习对话系统理论篇--数据集和评价指标介绍
对话系统常用评价指标当前对话系统之所以还没有取得突破性的进展,很大程度上是因为没有一个可以准确表示回答效果好坏的评价标准。对话系统中大都使用机器翻译、摘要生成领域提出来的评价指标,但是很明显对话系统的场景和需求与他们是存在差别的,这也是当前模型效果不是很好的原因之一。从对话系统不同的层次角度来评价对话系统的效果时,每个层面会有不同的关注点,如下图所示:从上图可以看出,黄色标识人类的主观角度,而蓝色表原创 2018-01-19 10:41:58 · 9427 阅读 · 1 评论 -
记忆网络之Hierarchical Memory Networks
记忆网络之Hierarchical Memory Networks这是Bengio团队在2017年发表在ICLR上面的论文“hierarchical Memory Networks”,这篇论文的主要思想是使用分层结构的Memory,目的是在维持准确度的基础上实现训练速度的提升。因为当需要的记忆量很大时,对所有的记忆进行Attention操作,必然会及其浪费时间,而通过本文提出的Hierarchica原创 2017-10-14 16:37:08 · 2035 阅读 · 0 评论 -
tensorflow中RNNcell源码分析以及自定义RNNCell的方法
我们在仿真一些论文的时候经常会遇到一些模型,对RNN或者LSTM进行了少许的修改,或者自己定义了一种RNN的结构等情况,比如前面介绍的几篇memory networks的论文,往往都需要按照自己定义的方法来构造RNN网络。所以本篇博客就主要总结一下RNNcell的用法以及如何按照自己的需求自定义RNNCell。tf中RNNCell的用法介绍我们直接从源码的层面来看一看tf是如何实现RNNCell定义原创 2017-10-31 16:44:16 · 10797 阅读 · 3 评论 -
深度学习装机、系统、环境配置指南--预算15000
随着要处理的任务越来越复杂,对计算能力要求越来越高,所以最近萌生了要自己配一台深度学习主机的想法。只是苦于一直没有钱==然后很幸运的被评上了国奖,果断入手!!!!然后就是历时一周的各种查资料看博客上京东看价钱的来回对比,终于从一个完全小白变身成入门级玩家。下面就详细说一下自己的配置和装机经历,满满的血泪史啊。。。主机配件先来说一下关于主机配件的选择,由于预算只有15000左右,所以呢只能配一个单显卡原创 2017-10-29 21:43:47 · 10703 阅读 · 5 评论 -
记忆网络之Dynamic Memory Networks模型介绍及代码实现
记忆网络之Dynamic Memory Networks今天我们要介绍的论文是“Ask Me Anything: Dynamic Memory Networks for Natural Language Processing”,这篇论文发表于2015年6月,从题目中就可以看得出来,本文所提出的模型在多种任务中均取得了非常优秀的表现,论文一开始说道,NLP中很多任务都可以归结为QA问题,所以本文...原创 2017-10-11 17:14:26 · 14218 阅读 · 8 评论 -
记忆网络之Hierarchical Memory Networks(架构分层)
记忆网络之Hierarchical Memory Networks(架构分层)这是中科院去年发表的一篇论文“Hierarchical Memory Networks for Answer Selection on Unknown Words”。其仿真代码作者已经开源,是用Lasagne实现的。虽然和上一篇一样都叫做“Hierarchical Memory Networks”,但是却千差万别。上一篇主原创 2017-10-18 20:03:29 · 4095 阅读 · 0 评论 -
记忆网络之Key-Value Memory Networks tensorflow实现
记忆网络之Key-Value Memory Networks tensorflow实现前面我们介绍了Key-Value Memory Networks这篇论文,这里我们介绍一下该论文使用tensorflow的实现方法。其实github上面有一个实现方案,但是该方案用于仿真bAbI任务的数据集,与QA任务还有一定的区别,又与之前一篇End-to-End MemNN已经对该数据进行了仿真实现,所以这篇文原创 2017-10-08 21:41:40 · 2946 阅读 · 1 评论 -
记忆网络之Key-Value Memory Networks
记忆网络之Key-Value Memory Networks今天要介绍的这篇文章是Facebook在2016年6月发表的一篇文章,相比之前的两篇可以说是更加完美的将Memory Networks应用的了QA任务上。End-To-End那篇文章相比第一篇解决的强监督的问题,从而提出一种端到端的记忆网络,但仍然没有运用到QA的数据集上(虽然专栏的第三篇文章介绍了两篇使用该模型进行QA数据集训练的方法,但原创 2017-09-30 16:22:44 · 4201 阅读 · 0 评论 -
Tracking the World State with Recurrent Entity Networks--阅读笔记和TensorFlow实现
这篇论文是facebook在前段时间ICLR会议上发表的论文,提出了一种Recurrent Entity Network的模型用来对world state进行建模,实时的根据模型的输入对记忆单元进行更新,从而得到对world的一个即时的认识。该模型可以用于机器阅读理解、QA等领域。下面对论文所提出的模型架构进行一个简单的概述:1,论文提出了一种新的动态记忆网络,其使用固定长度的记忆单元来存储世界上的原创 2017-09-12 21:08:32 · 2624 阅读 · 2 评论 -
记忆网络之open-domain QA 应用
记忆网络之open-domain QA 应用前面两篇文章分别介绍了Memory Networks和End-To-End MemNN两种模型,但是都是基于bAbI数据集进行的介绍,更像是一种阅读理解式的任务,也就是给定一段文字和一个问题,从中找出答案。然而平时遇到的QA任务,往往并不会给定一段材料和问题,而是直接给一个问题需要给出答案,那么这种情况下应该如何使用记忆网络的模型来解决呢?我们这次结合两篇原创 2017-09-28 21:17:11 · 3609 阅读 · 0 评论 -
记忆网络之End-To-End Memory Networks
记忆网络之End-To-End Memory Networks这是Facebook AI在Memory networks之后提出的一个更加完善的模型,前文中我们已经说到,其I和G模块并未进行复杂操作,只是将原始文本进行向量化并保存,没有对输入文本进行适当的修改就直接保存为memory。而O和R模块承担了主要的任务,但是从最终的目标函数可以看出,在O和R部分都需要监督,也就是我们需要知道O选择的相关记原创 2017-09-26 11:37:48 · 3736 阅读 · 1 评论 -
记忆网络之Memory Networks
Memory Network是深度学习的一个小分支,从2014年被提出到现在也逐渐发展出了几个成熟的模型,我比较关注的是其在QA领域的应用和发展。本专栏会选择几篇论文比较系统的介绍Memory Network相关的模型和应用。对一些论文也会结合TensorFlow的实现进行介绍。第一篇要介绍的论文是FaceBook在2014年发表的论文“Memory Networks”,与其同期提出的“Neural原创 2017-09-25 10:40:41 · 7130 阅读 · 0 评论 -
记忆网络之Neural Turing Machines
记忆网络之Neural Turing Machines前面介绍了Memory Networks相关的几篇文献,接下来让我们从新回到Memory的起点,也就是DeepMind在14年发表的“Neural Turing Machines”这篇论文。这是第一篇提出使用外部memory模块来增强神经网络记忆能力的论文,我将结合Tristan Deleu的博客对该论文进行介绍。(因为论文很长,前面两章都是从历原创 2017-10-23 20:08:50 · 2467 阅读 · 0 评论 -
记忆网络之Gated End-To-End Memory Networks
记忆网络之Gated End-to-End Memory Networks今天要介绍的论文“gated end-to-end memory networks”时16年10月份发布的,他是在End-To-End Memory Networks这篇论文的基础上做了一些修改。因为End-To-End Memory Networks在multi-fact QA、 positional reasoning、原创 2017-11-03 21:16:30 · 1541 阅读 · 0 评论 -
从头实现深度学习的对话系统--新版本tf seq2seq API构建chatbot
上篇文章我们使用tf.contrib.legacy_seq2seq下的API构建了一个简单的chatbot对话系统,但是我们已经说过,这部分代码是1.0版本之前所提供的API,将来会被弃用,而且API接口并不灵活,在实际使用过程中还会存在版本不同导致的各种个样的错误。所以我们有必要学习一下新版本的API,这里先来说一下二者的不同:新版本都是用dynamic_rnn来构造RNN模型,这样就避免原创 2018-01-10 11:43:14 · 8749 阅读 · 10 评论 -
HRED+VHRED+AWI模型介绍
这次会介绍三篇文章,因为原理比较相似,都是采用分层架构来解决多轮对话问题,三篇论文如下所示:Building End-To-End Dialogue Systems Using Generative Hierarchical Neural Network Models(HRED)A Hierarchical Latent Variable Encoder-Decoder Model for原创 2018-02-02 12:24:03 · 6548 阅读 · 1 评论 -
从头实现深度学习的对话系统--简单chatbot代码实现
从头实现深度学习的对话系统–简单chatbot代码实现本文的代码都可以到我的github中下载:https://github.com/lc222/seq2seq_chatbot预训练好的模型可以到我的百度云网盘中下载:链接:https://pan.baidu.com/s/1hrNxaSk 密码:d2sn前面几篇文章我们已经介绍了seq2seq模型的理论知识,并且从tensorflo原创 2017-12-29 11:13:27 · 12972 阅读 · 10 评论 -
A Diversity-Promoting Objective Function for Neural Conversation Models论文阅读笔记
本文是李纪为的论文“A Diversity-Promoting Objective Function for Neural Conversation Models”阅读笔记。违章提出使用MMI代替原始的maximum likelihood作为目标函数,目的是使用互信息减小“I don’t Know”这类无聊响应的生成概率。一般的seq2seq模型,倾向于生成安全、普适的响应,因为这种响应更符合语法原创 2018-01-23 20:46:17 · 2193 阅读 · 0 评论 -
从头实现一个深度学习的对话系统--tf.contrib.seq2seq API介绍
这篇文章就简单从源码的角度上分析一下tf.contrib.seq2seq下提供的API,首先来讲这个文件夹下面的几个文件和函数上篇文章中都已经提到而且介绍了他们之间的关系和如何使用,如果对源码不感兴趣就不用看下去了~~BasicDecoder和dynamic_decode为了简单起见,从decode的入口dynamic_deocde函数开始分析: dynamic_deco原创 2018-01-12 11:00:17 · 7814 阅读 · 4 评论 -
从头实现一个深度学习对话系统--Seq-to-Seq模型详解
上一篇文章已经介绍了几篇关于Seq-to-Seq模型的论文和应用,这里就主要从具体的模型细节、公式推导、结构图以及变形等几个方向详细介绍一下Seq-to-Seq模型。这里我们主要从下面几个层次来进行介绍:Seq-to-Seq框架1Seq-to-Seq框架2Seq-to-Seq with Attention(NMT)Seq-to-Seq with Attention各种变形Seq-to-Se原创 2017-12-17 13:03:02 · 12903 阅读 · 4 评论 -
从头实现一个深度学习的对话系统--1,论文简介
上篇文章我们介绍了DRL用于对话系统的应用,看完论文我们会发现,其是在一个Seq-to-Seq模型的基础上进行重新训练进而得到效果的提升,那么自然我们会想到如何使用Seq-to-Seq模型构造基础的对话系统呢,接下来我会使用几篇文章来一步步介绍使用Seq-to-Seq构造对话系统过程中所用到的知识和代码。首先让我们从提出Seq-to-Seq模型的论文说起:本文主要介绍下面几篇Seq-to-Seq刚被原创 2017-12-15 09:43:42 · 5074 阅读 · 1 评论 -
从头实现一个深度学习对话系统--tensorflow Seq-to-Seq API介绍和源码分析
上一篇文章中我们已经分析了各种seq2seq模型,从理论的角度上对他们有了一定的了解和认识,那么接下来我们就结合tensorflow代码来看一下这些模型在tf中是如何实现的,相信有了对代码的深层次理解,会在我们之后构建对话系统模型的时候有很大的帮助。tensorflow版本升级之后把之前的tf.nn.seq2seq的代码迁移到了tf.contrib.legacy_seq2seq下面,其实这部分API原创 2017-12-20 19:32:45 · 6741 阅读 · 1 评论 -
记忆网络之在对话系统中的应用
记忆网络之在对话系统中的应用前面几天看了下Jason Weston等人在对话系统方面的工作,可以看成是对Memory Networks的扩展吧,应用到了对话领域中,主要看了下面三篇论文,基本上是按照发表时间顺序来的,接下来我们逐篇来介绍一下其主要工作内容:evaluating prerequisite qualities for learning end-to-end dialog system原创 2017-11-16 22:00:50 · 3078 阅读 · 0 评论 -
Deep Reinforcement Learning for Dialogue Generation阅读笔记
文章亮点本文是使用深度增强学习DRL的方法来解决多轮对话问题。首先使用Seq-to-Seq模型预训练一个基础模型,然后根据作者提出的三种Reward来计算每次生成的对话的好坏,并使用policy network的方法提升对话响应的多样性、连贯性和对话轮次。文章最大的亮点就在于定义了三种reward(Ease of answering、Information Flow、Semantic Cohe...原创 2017-12-08 11:15:17 · 2918 阅读 · 0 评论 -
论文“Teaching Machines to Converse”阅读笔记
李纪为博士论文阅读笔记这是李纪为大神的博士毕业论文,趁热赶紧读一读,为自己科研道路指明方向。论文的下载地址是他的github1.1 背景知识介绍对话系统的分类及方法:Chit-Chat-oriented Dialogue Systems: 闲聊型对话机器人,产生有意义且丰富的响应。 Rule-based system:对话经过预定义的规则(关键词、if-else、机器学习方法等)处理,然后执行相原创 2017-11-28 16:48:08 · 1992 阅读 · 0 评论 -
深度学习与文本分类总结第二篇--大规模多标签文本分类
上一篇博客中我们已经总结了文本分类中常用的深度学习模型,因为知乎的本次竞赛是多标签的文本分类任务,这也是我第一次接触多标签分类,所以想单独写一篇博客来记录这方面的相关知识。原创 2017-09-07 20:54:26 · 22721 阅读 · 8 评论 -
tensorflow中如何进行可视化和减轻过拟合
TensorFlow可视化界面与过拟合最近因为一些需要所以做了一个关于TensorFlow如何使用tensorboard进行可视化以及如何减轻模型训练过程中的过拟合现象的小demo。这里就直接发出来供大家参考~~本文代码可以前往我的github进行查看。TensorFlow可视化界面–tensorboard介绍tensorflow提供了一个十分强大的功能–tensorboard可视化面板,我想这也是原创 2017-08-15 10:30:29 · 9860 阅读 · 0 评论 -
CNN在句子相似性建模的应用--tensorflow实现篇2
上节已经介绍了数据预处理部分代码,本节则详细介绍一下模型构建和训练部分。旨在以一个新手的角度出发,详细介绍一下tf中不同类型cnn的使用方法以及其中tensor的shape变化,来感受一下其运行过程的细节。代码可以在我的github上下载模型初始化首先我们介绍一下模型构建部分。这部分代码全部写在model.py文件中。为了方便调用,我们写了一个MPCNN_Layer类来实现整个论文模型的构建。首先是原创 2017-03-21 15:55:55 · 7984 阅读 · 12 评论 -
CNN在句子相似性建模的应用--模型介绍篇
最近在读“Multi-Perspective Sentence Similarity Modeling with Convolution Neural Networks”这篇论文,该文通过CNN层对两个句子分别进行建模,然后添加一个句子相似性测量层来计算两个句子的相似度。首先可以看一下其模型的架构图方便有一个直观的理解: 可以看到一个句子首先被转化为嵌入矩阵[sentence_length,原创 2017-03-16 15:53:51 · 7321 阅读 · 1 评论 -
论文Convolutional Naural Networks for Sentence Classification--模型介绍篇
最近读了Yoon Kim发表的Convolutional Naural Networks for Sentence Classification一文。这是一篇将CNN和NLP结合的文章,接下来我们会分模型介绍和代码实现两部分来介绍该论文。论文所提出的模型结构如下图所示: 1,这里的输入层显示有两个channel,其实我们可以看作是一个,因为后文中说到这两个channel分别是static和no原创 2017-03-04 15:45:17 · 6561 阅读 · 11 评论 -
CNN在句子相似性建模的应用续--基于attention的多角度CNN模型
今天我们来介绍一下“UMD-TTIC-UW at SemEval-2016 Task 1: Attention-Based Multi-Perspective Convolutional Neural Networks for Textual Similarity Measurement”这篇论文。其实本篇论文和之前所说的Multi-Perspective CNN原理是一样的。只不过做了一些小原创 2017-03-24 14:17:43 · 8831 阅读 · 8 评论 -
论文Convolutional Naural Networks for Sentence Classification--TensorFlow实现篇
其实该论文作者已经将文章代码提供了出来,该代码用的是Theano实现的,但是因为最近看了TensorFlow,所以想着用用练练手,所以本文主要参考Denny Britz的一篇博文 来实现CNN和本篇论文,其代码也上传到了github上。说到Denny Britz,大神就是大神,之前也读过他一篇介绍CNN在NLP领域应用场景和方法的文章,写的很透彻也被很多国内网友翻译和转载,他的博客上有很多好的文章,原创 2017-03-04 20:57:36 · 9223 阅读 · 11 评论 -
ABCNN基于注意力的卷积神经网络用于句子建模--模型介绍篇
本文是Wenpeng Yin写的论文“ABCNN: Attention-Based Convolutional Neural Network for Modeling Sentence Pairs”的阅读笔记。其实该作者之前还发过一篇“Convolution Neural Network for Paraphrase Identification”。ABCNN是基于之前发的这篇论文加入了注意力机制。原创 2017-04-07 19:51:41 · 17062 阅读 · 4 评论 -
CNN与句子分类之动态池化方法DCNN--TensorFlow实现篇
本文是paper“A Convolutional Neural Network for Modelling Sentences”基于TensorFlow的实现方法,代码和数据集都可以到我的github上面进行下载。数据集及处理方法本文仿真的是论文的第二个实验,使用的数据集是TREC。该数据集是QA领域用于分类问题类型的。其中问题主要分为6大类别,比如地理位置、人、数学信息等等,这里使用one-hot原创 2017-03-29 16:34:29 · 8394 阅读 · 10 评论 -
CNN与句子分类之动态池化方法DCNN--模型介绍篇
本文是针对“A Convolutional Neural Network for Modelling Sentences”论文的阅读笔记和代码实现。这片论文的主要贡献在于其提出了一种动态pooling的方法。传统卷积神经网络中所用到的pooling方法一般是max-pooling,且pooling的size是固定不变的。本文通过k-max-pooling的方法可以在高层获取句子中位置较远的词语之间的原创 2017-03-28 17:44:35 · 11730 阅读 · 0 评论 -
CNN用于句子分类时的超参数分析
本文是“A Sensitivity Analysis of (and Practitioners’ Guide to) Convolutional Neural Networks for Sentence Classification”这篇paper的阅读笔记。这篇paper的主要工作是对“Convolutional Naural Networks for Sentence Classificati原创 2017-03-27 22:29:48 · 4151 阅读 · 0 评论 -
使用微信监管你的TF训练
以TensorFlow的example中,利用CNN处理MNIST的程序为例,我们做了下面一点点小小的修改。 1,首先导入了itchat和threading两个包分别用于微信和县线程(因为要有一条线程专门负责接收微信消息,另一个线程运行TF程序); 2,写了个itchat的handler。作用是,如果收到微信消息,解析消息内容,然后执行相应的操作。(开始,停止,参数等) 3,将原本程序在con转载 2017-03-07 16:16:08 · 956 阅读 · 0 评论 -
cs224d课程Lecture1总结
1,词向量传统方法是使用类似于WordNet或《同义词词林》的方式来表示词语之间的关系(上下位、同义词、相似度等), 但是这种方法存在很大局限性(人工、新词、主观误差等),所以这里提出词向量的方法表示单词。其实就是找到一种映射关系,将单词编码为更小的“词空间”中的一个向量。可以知道,一定存在一个远小于总词汇量的 N维空间可以编码所有的单词。这样可以通过计算两个词向量之间的“距离”来表示其相似度原创 2016-11-02 14:46:54 · 1478 阅读 · 0 评论 -
斯坦福CS231n 课程学习笔记--线性分类器(笔记篇)
最近学习了斯坦福的CS231n(winter 2016)系列课程,收获很大,作为深度学习以及卷积神经网络学习的入门很是完美。学习过程中,主要参考了知乎上几位同学的课程翻译,做得很好,在这里也对他们表示感谢,跟课程相关的很多资源都可以在该专栏中找到。推荐大家把每个笔记的翻译都完整的看一下。关于该课程视频的中文字幕也在翻译进行中,目前第一集已经翻译完成,感兴趣的同学可以也可以看看参与进去。此外,完成课程原创 2016-09-23 20:04:44 · 4366 阅读 · 2 评论 -
Language Modeling with Gated Convolutional Networks(句子建模之门控CNN)--模型简介篇
最近忙着实验室的项目,一直没有时间做仿真,所以就先写一下之前看的一篇文章,总结一下吧。这次要说的是Gated CNN,这也是第一次将门限控制引入到CNN中的文章,感觉十分有新意,效果也很棒。下面我们来看一下,文章的主要贡献包括:提出一种新的门控机制缓解梯度传播,降低梯度弥散等现象相比LSTM,模型更加简单,收敛速度更快 模型的结构图如下所示: 首先我们可以通过堆叠CNN来标识长文本,提原创 2017-04-19 11:17:01 · 15785 阅读 · 6 评论