首页 文章
  • 0 votes
     answers
     views

    使用word2vec使用rnn进行单词预测

    我通过将经过预先训练的 word2vec 单词作为输入来训练网络 . 我想知道我是否可以使用 word2vec 目标字来计算错误成本 . 它似乎不起作用,我从未见过这样的例子或论文 . 是否可以使用word2vec作为计算错误成本的目标值?如果是这样,我应该使用什么样的成本函数?如果没有,请以数学方式解释原因 . 我该如何设置输入和目标?现在我正在使用如下的架构: input : word1, w...
  • 0 votes
     answers
     views

    顺序学习语言翻译的顺序,看不见的单词

    序列到序列学习是一种强大的语言翻译机制,特别是在特定情境的情况下在本地使用它 . 我正在关注this pytorch tutorial的任务 . 但是,该教程没有将数据拆分为培训和测试 . 您可能认为这不是什么大问题,只需将其分开,使用一个块进行培训,另一个进行测试 . 但事情并非那么简单 . 本质上,本教程在引导数据集时创建所看单词的索引 . 索引只是存储在字典中 . 这是在进入编码器RNN之前...
  • 0 votes
     answers
     views

    如何为RNN模型选择标签/目标?

    在训练角色RNN时,如果我们有一个输入X =(x_1,x_2,...,x_t),我们将其分为两部分:X_train =(x_1,x_2,...,x_(t-1)) ,y_train =(x_2,x_3,...,x_t) . 我们为什么要这样做?为什么不设置y_train =(x_(t 1)),即我们想要预测的下一个字符? 我正在尝试用RNN预测其他时间序列数据,这让我很困惑如何为模型选择标签/目标 ...
  • 1 votes
     answers
     views

    重新形成一批具有动态最大长度(张量流量)的张量

    在自然语言处理中,通常填充一批序列 . 这是填充功能 . def pad_sequences(sequences, pad_tok=0): """ Args: sequences: a generator of list or tuple pad_tok: the char to pad with Returns: a list of lis...
  • 0 votes
     answers
     views

    为什么我们需要在递归神经网络中微调字嵌入?

    在theano的关于RNN的教程中,最后一部分提到了这一点 我们通过在每次更新后对它们进行规范化,将单词嵌入保留在单位范围内: self.normalize = theano.function(inputs=[], updates={self.emb: ...
  • 1 votes
     answers
     views

    如何将RNN应用于序列到序列的NLP任务?

    我对NLP任务上的序列到序列RNN感到很困惑 . 以前,我已经实现了一些分类任务的神经模型 . 在这些任务中,模型将字嵌入作为输入,并在网络末端使用softmax层进行分类 . 但神经模型如何进行seq2seq任务呢?如果输入是字嵌入,那么神经模型的输出是什么?这些任务的考试包括问答,对话系统和机器翻译 .
  • 1 votes
     answers
     views

    尝试使用Tensorflow了解CNN的NLP教程

    我正在关注this tutorial以了解NLP中的CNN . 尽管我面前有代码,但仍有一些事情我不明白 . 我希望有人能在这里澄清一些事情 . 第一个相当小的事情是 TextCNN 对象的 sequence_length 参数 . 在github的例子中,这只是 56 ,我认为是训练数据中所有句子的最大长度 . 这意味着 self.input_x 是一个56维向量,它只包含每个单词的句子字典中...
  • 5 votes
     answers
     views

    如何正确使用keras掩膜层?

    Keras掩模层可用于处理RNN的可变长度序列训练 . 当我使用它们时,掩模层的准确度低于单批训练 . 我怀疑我没有正确使用遮罩层 . 我的目标是训练LSTM学习如何拼写单词 . 这些序列是不同的英语单词,用一个热表示法编码 . 下面是数据编码部分的代码: chars 是构成序列的所有字母的集合, mylist 是序列的列表, MAXLEN 是序列的最大长度 . char_indices = di...
  • 5 votes
     answers
     views

    Pyspark如何从word2vec单词嵌入中计算Doc2Vec?

    我有一个pyspark数据框,其中包含大约300k个唯一行的语料库,每个行都有一个“doc”,每个文档包含几个文本句子 . 在处理之后,我有每行/ doc的200维矢量化表示 . 我的NLP流程: 使用正则表达式udf删除标点符号 用nltk雪球udf词干 Pyspark Tokenizer Word2Vec(ml.feature.Word2Vec,vectorSize = 200...
  • 1 votes
     answers
     views

    如何提取用于Doc2Vec的单词

    我正在使用推文准备Doc2Vec模型 . 每条推文的单词数组都被视为一个单独的文档,标记为“SENT_1”,SENT_2“等 . taggeddocs = [] for index,i in enumerate(cleaned_tweets): if len(i) > 2: # Non empty tweets sentence = TaggedDocument(wo...
  • 11 votes
     answers
     views

    使用word2vec对类别中的单词进行分类

    BACKGROUND 我有一些带有一些样本数据的向量,每个向量都有一个类别名称(地点,颜色,名称) . ['john','jay','dan','nathan','bob'] -> 'Names' ['yellow', 'red','green'] -> 'Colors' ['tokyo','bejing','washington','mumbai'] -> 'Places' ...
  • 3 votes
     answers
     views

    使用RNN张量流语言模型来预测测试句子的概率

    我能够使用tensorflow tutorials训练语言模型,模型根据code given here保存为检查点文件 . save_path = saver.save(sess, "/tmp/model.epoch.%03d.ckpt" % (i + 1)) 现在我需要恢复检查点并在以下代码中使用它: def run_epoch(session, m, data, eval...
  • -3 votes
     answers
     views

    在深度学习模型的训练中,我用于输入的数据集中元素的连续顺序是否重要?

    更具体地说,我正在处理NLP问题,并在给定初始字序列的情况下训练LSTM进行单词预测 . 我的数据集是200k reddit评论 . 如果我 randomly feed the examples one at a time (允许重复输入)或者我是否在 sequence (不允许重复)中提供它们是否重要?
  • 2 votes
     answers
     views

    从lm_1b训练模型中提取单词/句子概率

    我已经成功下载了使用CNN-LSTM训练的1B单词语言模型(https://github.com/tensorflow/models/tree/master/research/lm_1b),我希望能够输入句子或部分句子来获得句子中每个后续单词的概率 . 例如,如果我有一个句子,如“说动物的动物”,我想知道下一个词是“woof”与“meow”的概率 . 我知道运行以下命令会生成LSTM嵌入: baz...
  • 3 votes
     answers
     views

    RNN的Tensorflow示例

    我试图在Tensorflow中实现基本的NLP任务,而不使用尽可能多的模块(仅用于学习) 我一直在尝试使用http://www.cnts.ua.ac.be/conll2000/chunking/中的数据实现词性标注器 我在使用前面的嵌入层从头开始实现RNN代码时遇到了一些困难,并且想知道是否有相同的示例和实现 . 我已经看到很多使用Theano和MNIST数据的例子,但是还没有能够在Tensorf...
  • 4 votes
     answers
     views

    如何构建LSTM神经网络进行分类

    我的数据在两个人之间有各种对话 . 每个句子都有某种类型的分类 . 我试图使用NLP网来对话的每个句子进行分类 . 我尝试了一个卷积网并得到了不错的结果(不是突破性的) . 我认为,由于这是一次来回的对话,而LSTM网可能会产生更好的结果,因为之前所说的可能会对后面的内容产生很大的影响 . 如果我遵循上面的结构,我会假设我做了多对多 . 我的数据看起来像 . X_train = [[senten...
  • 5 votes
     answers
     views

    使用Keras Tokenizer生成n-gram

    可以在Keras中使用n-gram吗? 例如,句子在X_train数据框中包含“句子”列 . 我以下列方式使用Keras的tokenizer: tokenizer = Tokenizer(lower=True, split=' ') tokenizer.fit_on_texts(X_train.sentences) X_train_tokenized = tokenizer.texts_to_se...
  • 0 votes
     answers
     views

    使用跳过 - 否定抽样和带有情绪评分的词语进行情绪分析

    我想使用skip-gram负抽样以无监督的学习方式对印尼语twitter消息进行情绪分析 . 这就是我打算这样做的方式: 得到推文 . 将所有这些文件放在一个文本文件中 . 执行学习过程以获得每个单词的向量表示 . 使用tf-idf获取文本中每个句子的句子向量 . 将已经具有情感值的单词(例如来自this list)与句子向量值组合以确定新(测试)推文的情绪 . 我的问题是:我可以用什么进一步的学...
  • 7 votes
     answers
     views

    只训练一些单词嵌入(Keras)

    在我的模型中,我使用GloVe预训练嵌入 . 我希望保持它们不可训练,以减少模型参数的数量并避免过度拟合 . 但是,我有一个特殊的符号,其嵌入我想训练 . 使用提供的嵌入层,我只能使用参数'trainable'以下列方式设置 all 嵌入的可训练性: embedding_layer = Embedding(voc_size, emb_dim, ...
  • 4 votes
     answers
     views

    为什么我们可以使用熵来衡量语言模型的质量?

    我正在阅读<Foundations of Statistical Natural Language Processing> . 它有关于信息熵与语言模型之间关系的以下陈述: ......这里的关键点是,如果模型捕获更多的语言结构,那么模型的熵应该更低 . 换句话说,我们可以起诉熵作为我们模型质量的衡量标准...... 但是这个例子怎么样: 假设我们有一台机器一个接一个地吐出2个字符...
  • 8 votes
     answers
     views

    蒙面张量的损失

    假设我有类似的logits [[4.3, -0.5, -2.7, 0, 0], [0.5, 2.3, 0, 0, 0]] 显然,第一个例子中的最后两个和第二个例子中的最后三个被掩盖,不应该影响损失和梯度计算 . 如何计算此logits和相应标签之间的交叉熵损失?为了理智,这个例子的标签可以是这样的 [[1, 0, 0, 0, 0], [0, 1, 0, 0, 0]] (一个问题:在logits上的...
  • 7 votes
     answers
     views

    您认为Google日历中的“快速添加”功能如何运作?

    我正在考虑一个项目,该项目可能使用类似的功能来处理“快速添加”如何将自然语言解析成可以用某种语义级别理解的东西 . 我有兴趣更好地理解这一点,并想知道你对如何实现这一点的看法 . 如果您不熟悉"Quick Add",请查看Google's KB . 6/4/10 Update对"Natural Language Parsing"(NLP)的进一步研究产生...
  • 6 votes
     answers
     views

    概念上将类似文档聚类在一起?

    这更像是一个概念问题,而不是一个实际的实现,我希望有人可以澄清 . 我的目标如下:给定一组文档,我想对它们进行聚类,使属于同一个集群的文档具有相同的“概念” . 根据我的理解,Latent Semantic Analysis让我找到一个术语 - 文档矩阵的低秩近似,即给定矩阵 X ,它将分解 X 作为三个矩阵的乘积,其中一个是对角矩阵 Σ : 现在,我将继续选择低秩近似,即从 Σ 中仅选择前k个...
  • 2 votes
     answers
     views

    在python中有任何更好的预处理库或实现吗?

    我需要预处理一些文本文档,以便我可以应用分类技术,如fcm e.t.c和其他主题建模技术,如潜在的dirichlet分配e.t.c 为了详细说明预处理,我需要删除停用词,提取名词和关键词并执行词干 . 我用于此目的的代码是: #-------------------------------------------------------------------------- #Extracting...
  • 1 votes
     answers
     views

    是否可以用作者信息补充朴素贝叶斯文本分类算法?

    我正在进行一个文本分类项目,我正在尝试将主题分类分配给国会记录中的演讲 . 使用国会法案项目(http://congressionalbills.org/)中的主题代码,我've tagged speeches that mention a specific bill as belonging to the topic of the bill. I' m使用此作为模型的"training...
  • 0 votes
     answers
     views

    如何确定2个代码片段在功能上是否相同?

    给定2个代码片段,我想检查它们是否在功能上相似 . 通过功能相似性,我的意思是当提供相同的输入时它们应该产生相同的输出 . 我正在使用以下代码片段从给定的代码段中提取功能集: Syntactic Approach :使用基本的NLP技术,如词干,分裂等 . Semantic Approach :使用AST来规范化代码片段,例如:将'for'转换为'while'等 . 在形成令牌之后,我...
  • 0 votes
     answers
     views

    借助Latent Dirichlet分配(LDA)或命名实体确定文档的新颖性/相似性

    鉴于索引或数据库包含大量(短)文档(约100万),我正在尝试为每个新传入的文档进行某种新颖性检测 . 我知道我必须计算新文档与索引中每个文档的相似性 . 如果相似性低于某个阈值,则可以将该文档视为新颖的 . 一种常见的方法 - 我想做的 - 是使用向量空间模型并计算余弦相似度(例如,通过使用Apache Lucene) . 但是这种方法有两个缺点: 1) 它的计算成本很高,并且它没有分别包含文档和...
  • 1 votes
     answers
     views

    潜在的Dirichlet分配与先前的主题词

    Context 我正试图从Scikit-Learn's decomposition module中使用Latent Dirichlet allocation从一组文本中提取主题 . 除了找到/选择的主题词的质量之外,这非常有效 . 在Li et al (2017)的一篇文章中,作者描述了使用先前的主题词作为LDA的输入 . 他们手动选择4个主题和与这些主题相关/属于的主要词 . 对于这些单词,他们...
  • 0 votes
     answers
     views

    对python pandas数据帧进行K折交叉验证 - NLTK分类

    我想使用10倍交叉验证来评估nltk分类模型 . 这是pandas数据框架命名:data(有10k行和10个类) 特性:hello_variant,goodbye_variant,wh_question,yesNo_question,conjuction_start,No_of_tokens 我尝试下面的代码 . 但它给出了一个错误 extract_features = data.drop(...
  • 0 votes
     answers
     views

    TextRank算法空间和时间复杂度

    我试图确定TextRank的空间和时间复杂度本文中列出的算法:https://web.eecs.umich.edu/~mihalcea/papers/mihalcea.emnlp04.pdf 由于它使用的PageRank的复杂度为:O(nm)(n - 节点数,m - 弧/边数),我们在迭代中运行它/直到收敛关键字提取的复杂性我认为它将是:O (i *(nm))并且使用邻接矩阵将空间复杂度设为O...

热门问题