Tensorflow在NLP方向实例
Tensorflow实谷歌开源的深度学习框架,是神经网络方向目前最火的框架。应用方向包括语音识别、计算机视觉和自然语言处理等方向。本专栏会结合word2vec,CNN,RNN,LSTM等技术,解决一些自然语言处理方向的问题,预期会在文本挖掘(聚类分类情感分析)等方向。
北邮张博
读论文,写程序
展开
-
Tensorflow模型的保存与恢复
最近在写对话生成的代码时,遇到一个问题就是在预测阶段,对于相同的输入,每一次生成的文本都不一样,而且生成的结果乱七八糟。因此定位到是训练好的模型没有restore,特此记录一下TensorFlow中模型的保存与恢复问题,即tf.train.saver函数的使用。创建Saver模型保存,先要创建一个Saver对象:如saver=tf.train.Saver()在创建这个Sav原创 2018-01-17 09:49:28 · 4132 阅读 · 0 评论 -
基于深度学习的大规模多标签文本分类任务总结
自然语言处理方向的论文仿真到现在,有以下想法: 1. 很多模型都为启发式算法,从直观上很好理解,但是对于大多数人来说,就是一个黑盒,70%时间都在处理数据和调参。 2. 在数据竞赛中,常用的模型就是CNN和RNN,先调出baseline,然后再进行模型融合(model ensemble)。在以上步骤的约束下,数据竞赛比的就是设备的计算能力和个人的调参能力。 3. 在自然语言处理与NLP实战的...原创 2017-10-18 15:32:49 · 20738 阅读 · 5 评论 -
Ask Me Anything: Dynamic Memory Networks for Natural Language Processing 阅读笔记及tensorflow实现
本篇要介绍的论文:Ask Me Anything: Dynamic Memory Networks for Natural Language Processing 是DMN(Dynamic Memory Networks)的开端,在很多任务上都实现了state-of-the-art的结果,如:question answering (Facebook’s bAbI dataset), text cl原创 2017-09-27 15:20:21 · 3480 阅读 · 2 评论 -
Implementation of Hierarchical Attention Networks for Document Classification的讲解与Tensorflow实现
放完暑假回到实验室,tensorflow的代码已经忘得都差不多了。因此急需要对以前的代码进行复习,并且对未来一段时间的方向进行安排。在github上有一篇使用了最近几年深度学习常用模型,来做文本分类的例子。是作者brightmart参加知乎“看山杯”数据竞赛的各种模型的baseline的代码,因此拿来做以后这段时间学习的规划。下面是这个开源项目所用模型: 专栏里实现过使用char-CNN和ch原创 2017-09-06 17:11:01 · 6145 阅读 · 2 评论 -
基于Char-RNN Language Model进行文本生成(Tensorflow生成唐诗)
上一篇文章利用CharRNN进行语言模型的训练,语言模型的本意就是为了判断一个句子的概率。在文本生成领域就可以根据当前词预测下一个词,因此大有用途。比如在各种科技网站上随处可见的生成唐诗,歌词,小说,以及代码,为了加深我们对RNN的实现熟练程度,这里再推荐阅读两篇源码中文古诗自动作诗机器人和生成英文、写诗、歌词、小说、生成代码、生成日文两个。个人觉得第二个代码封装性更好,并且训练效果更好。但是第一个原创 2017-08-04 11:48:36 · 18923 阅读 · 8 评论 -
基于循环神经网络实现基于字符的语言模型(char-level RNN Language Model)-tensorflow实现
前面几章介绍了卷积神经网络在自然语言处理中的应用,这是因为卷积神经网络便于理解并且易上手编程,大多教程(比如tensorflow的官方文档就先CNN再RNN)。但RNN的原理决定了它先天就适合做自然语言处理方向的问题(如语言模型,语音识别,文本翻译等等)。因此接下来一段时间应该会着重研究RNN,LSTM,Attention等在NLP的应用及其tensorflow实现。在介绍本篇文章之前,先推荐几篇学原创 2017-07-25 15:45:38 · 11162 阅读 · 0 评论 -
基于字符的卷积神经网络实现文本分类(char-level CNN)-论文详解及tensorflow实现
卷积神经网络从ImageNet做起,后来自然语言处理领域开始觉察到CNN对于文本处理可能会有用,因此也开始自觉使用CNN。专栏前三篇文章讲了文本相似度方向的论文,本文实现论文为Text Understanding from Scratch和Character-level Convolutional Networks for Text Classification 这两篇文章作者都是纽约大学Yann原创 2017-07-21 11:27:48 · 20681 阅读 · 21 评论 -
Tensorflow实例-CNN处理句子相似度(MPCNN)
前两篇使用CNN处理句子相似度的文章,实际上使用了很简单的CNN模型,按照自己对CNN的理解实现了代码。完成以后,就开始翻阅论文,想了解一些经典的处理句子相似度的方法。 这篇文章 发表在仅次于ACL会的EMNLP会议上,使用多个粒度窗口大小的卷积滤波器,后面跟着多种类型的池化方式,目的是为了从多个角度去解析句子(Multi-perspective),尽可能多的提取句子的语义和句法结构,具体的方式大家原创 2017-04-10 20:59:58 · 15621 阅读 · 2 评论 -
Tensorflow实例-CNN处理句子相似度(下)
接上篇进行分析。这篇文章着重分析使用tensorflow构造神经网络进行训练。在阅读本文之前,请确保已经明白上文提到的embedding层的作用。模型构建1、初始化权重,embedding层 因为是两个句子,所以定义两个输入input_s1和input_s2,上文说到input_s1的shape是[s_count, sentence_length],代码中的shape=[None, senten原创 2017-04-06 21:26:17 · 6135 阅读 · 6 评论 -
Tensorflow实例-CNN处理句子相似度(上)
Tensorflow中关键的两个步骤,首先对数据进行处理,转化为合适的tensor作为input输入到图中。其次使用tensorflow对神经网络进行构建。本篇文章作为深度学习实战的第一篇,会尽量用通俗的语言解释在这两部分中的关键的点。本篇任务为计算句子相似度,代码上传至github(2017年10月24日对代码进行重构),感兴趣的同学可以下载并进行仿真,加深对tensorflow的理解。代码较长,原创 2017-04-06 20:47:10 · 16280 阅读 · 12 评论 -
CNN模型和RNN模型在分类问题中的应用(Tensorflow实现)
在这篇文章中,我们将实现一个卷积神经网络和一个循环神经网络语句分类模型。 本文提到的模型(rnn和cnn)在一系列文本分类任务(如情绪分析)中实现了良好的分类性能,并且由于模型简单,方便实现,成为了竞赛和实战中常用的baseline。cnn-text-classification-tf博客,使用CNN做文本分类项目,start两千多。阅读这个项目源码,可以了解tensorflow构建项目的关键步骤,原创 2017-11-05 17:45:38 · 6233 阅读 · 1 评论 -
NLP入门实例推荐(Tensorflow实现)
自然语言处理(NLP)是机器学习的应用之一,用于分析、理解和生成自然语言,以便人类与计算机,人类与人类更好的交流。自然语言处理按照任务类型可以分为分类、匹配、翻译、结构化预测、与序贯决策过程。自然语言处理中的绝大多数问题皆可归入下图其中的一个。这为我们学习自然语言处理提供了大的指导方向,让我们可以心无旁骛的寻找、理解和复现论文。在自然语言处理发展的过程中,出现了如下趋势: 第一,传统的基于句法-语原创 2017-04-06 17:34:18 · 38745 阅读 · 13 评论