NLP
遇见更好的自己
非淡泊无以明志,非宁静无以致远
展开
-
Skim-Gram优化之Negative Sample
1 Motivation大家也需注意到了Skip-Gram Neural Network存在大量的权重参数。对于我们的例子,我们训练了一个10000*300的Word Vector表。所以在隐藏层和输出层分别有一个3M大小的参数矩阵。因此,在大数据集上训练这个网络是很难的。因此我们需要作出一些优化。skip-gram坐着提出了集中优化方案将常见词对和短语视为一个单词对频繁的词进行抽样,减少训练样本原创 2018-01-22 10:51:23 · 3636 阅读 · 1 评论 -
经典的文本数据预处理流程
首先对文本进行分词,因为可以直接用NLTK的分词器,中文的可以用结巴分词在英文中,往往还需要对单词进行词干提取和词形归一化。在词形归一的过程中如果结合POS Tag可以更好的进行词形归一。去除停用词,得到最终的词列表原创 2018-01-15 11:00:38 · 7885 阅读 · 0 评论 -
Doc2Vector
1 算法思想在word2vector中我们仍然忽略了单词之间的排列顺序对情感分析的影响。即上述的word2vec只是基于词的维度进行"语义分析"的,而并不具有上下文的"语义分析"能力。作为一个处理可变长度文本的总结性方法,Quoc Le 和 Tomas Mikolov 提出了 Doc2Vec方法。除了增加一个段落向量以外,这个方法几乎等同于 Word2Vec。和 Word2Vec 一样,该模型也存在原创 2018-01-23 11:28:27 · 1835 阅读 · 0 评论 -
Tensorflow中dynamic_rnn的用法
1 API接口dynamic_rnn( cell, inputs, sequence_length=None, initial_state=None, dtype=None, parallel_iterations=None, swap_memory=False, time_major=False, scope=None)2原创 2018-01-24 11:19:51 · 3527 阅读 · 0 评论 -
循环神经网络的用法图解-tensorflow
1 one-cell的情况with tf.variable_scope('one_cell') as scope: # One cell RNN input_dim (4) -> output_dim (2) hidden_size = 2 cell = tf.contrib.rnn.BasicRNNCell(num_units=hidden_size) print(原创 2018-01-26 15:57:35 · 1256 阅读 · 0 评论 -
Word2Vector之Skim-Gram模型
key idea:给定中间的词,预测上下文。具体来说,我们选择一个句子的中心词作为输入,选取周围的词作为目标值(每次选取一个,组成词对),所以我们的训练数据格式如下(center,nearby)。我们网络的输出是一个向量,通过计算输出向量与目标值的交叉熵损失,从而调整网络权重。举个栗子,当我们输入‘Soviet’,我们的网络输出‘Union’或者‘Russia’等词。而不是输出‘watermelon原创 2018-01-19 10:51:11 · 3292 阅读 · 0 评论 -
谷歌神经网络机器翻译NMT:人人可利用TensorFlow快速建立翻译模型
绪论机器翻译作为自动翻译语言之间的任务,是机器学习社区中最活跃的研究领域之一。在机器翻译的众多方法中,序列到序列(“seq2seq”)模型最近取得了巨大的成功,并已成为大多数商业翻译系统中的标准。然而,虽然seq2seq模型(如OpenNMT或tf-seq2seq)上有大量的材料,但是缺乏教学人员知识和技能的材料,可以轻松构建高质量的翻译系统。近日,TensorFlow在GitHub上宣布一个新的神翻译 2018-01-28 20:51:33 · 6658 阅读 · 0 评论 -
RNN是怎么从单层网络一步步构造的
1 从单层网络谈起在学习RNN之前,首先要了解一下最基本的单层网络,它的结构如图:输入是x,经过变换Wx+b和激活函数f得到输出y。2 经典的RNN结构(N vs N)在实际应用中,我们还会遇到很多序列形的数据:如:自然语言处理问题。x1可以看做是第一个单词,x2可以看做是第二个单词,依次类推。语音处理。此时,x1、x2、x3……是每帧的声音信号。时间序列问题。例如每天的股票价格等等。序列形原创 2018-01-27 15:47:54 · 1838 阅读 · 1 评论 -
TensorFlow中RNN实现的正确打开方式
上周写了一篇文章介绍了一下RNN的几种结构,今天就来聊一聊如何在TensorFlow中实现这些结构,这篇文章的主要内容为:一个完整的、循序渐进的学习TensorFlow中RNN实现的方法。这个学习路径的曲线较为平缓,应该可以减少不少学习精力,帮助大家少走弯路。一些可能会踩的坑TensorFlow源码分析一个Char RNN实现示例,可以用来写诗,生成歌词,甚至可以用来写网络小说!(项目地址转载 2018-01-29 16:04:10 · 590 阅读 · 0 评论