精华内容
下载资源
问答
  • 目录 一、概要 1)背景 2)摘要 二、内容 1)传统的bag of words ...2)本文的paragraph vector ...本文是我学习word2vec和paragraph2vec之后写下的一篇文章,如有错误,请指正以共同学习。 2)摘要 parag...

    目录

    一、概要

    1)背景

    2)摘要

    二、内容

    1)传统的bag of words

    2)本文的paragraph vector

    3)算法

    (1)word2vec的算法原理

    (2)paragraph vector算法

    三、总结


    一、概要

    1)背景

    本文是我学习word2vec和paragraph2vec之后写下的一篇文章,如有错误,请指正以共同学习。

    2)摘要

    paragraph vector,顾名思义——段向量,是对段落的一种的向量化表示。如果之前对word vector了解较少,建议阅读《word2vec 的数学原理》。那么paragraph vector有什么用呢?说白了就是保存上下文信息。举个简单的例子,一个句子的下一个词是什么,一定只和本句子有关吗?答案自然是否定的。例如,一个句子为:那是(),请填空。显然,根据句子本身无法推断出括号里需要填的是什么,有可能那是猪,也有可能那是猫。这就需要根据整个段落的信息来判断到底是猪还是猫了。这个时候,段向量就派上了用场。

    本文主要是根据Mikolov的《Distributed Representations of Sentences and Documents》总结得到的。其英文原文很容易阅读,英语不错的同学建议直接阅读原文(强烈推荐作者其他关于word embedding的的文章)。

    论文百度网盘链接:https://pan.baidu.com/s/1mY3QwUzbRLD9gYcYPhf9mA 密码:nns4。

    二、内容

    1)传统的bag of words

    词袋模型:对于一个文本,忽略词序和文法,将整个文本仅仅看作一些词语的集合。显然,这种模型的局限性很大。例如对于词序,“草吃牛”和“牛吃草”的意义相去甚远,但是在词袋模型中并不考虑词序,因此词袋模型将其同一对待。

    2)本文的paragraph vector

    本文所介绍的paragraph vector的特点如下:

        1、能为不同长度的段落训练出同一长度的向量(具体这个向量的含义是什么,没人能解释清楚)。

        2、不同段落的词向量不共享。说白了就是,每出现一个新段落,就要训练一个新的向量与之对应。其实也很好理解,不同段落的主题的不一样,其段向量自然不一样。

        3、词向量共享。根据训练集训练出来的词向量在任何地方都是通用的,不同段落的同一词语的意思应该是一致的,所以词向量不变。

    3)算法

    (1)word2vec的算法原理

    本文不是讲解word2vec的,因此在这里只是简要提一下。如有不懂,强烈建议阅读《word2vec 的数学原理》

    其主要作用机理如图所示。假设要预测“the cat sat”的下一个单词“on”:

    输入:"the"、"cat"、"sat"的词向量。(实际情况可能还要输入on后面的单词。也有人可能会问,不是要求这些单词的词向量吗,怎么变成了输入呢。其实初始时,要求给每个单词初始化一个随机向量,然后通过BP算法不断调整,最后得到的向量才是我们想要的)

    中间层:将输入的向量求和;将输入的向量求和再平均;将输入的向量按顺序连接起来。以上三种方法都有可能出现,讲道理第三种应该是最合适的,因为连接保留了顺序信息,但对应的参数量也会变大,所以效率和精度实在难以兼顾。

    输出层:根据softmax函数计算概率。

    优化:根据BP算法,使这个网络输出为"on"的概率不断变大,直到收敛或者满足条件。此时得到的向量便是我们所需要的词向量。

    注:无论是CBOW还是skip_gram都只是模型(上图对应CBOW模型)。而针对这两种模型,都有不同的优化方法,例如Hierarchical Softmax和Negative sampling方法。

    (2)paragraph vector算法

    理解了上面的算法,剩下的就简单了。

    其差别就是在一个输入上:多了一个paragraph vector。将此段向量和其他词向量通过拼接或相加的方式输入到隐藏层,然后根据softmax函数计算输出层的概率。算法和上面的一样,只不过多了一个输入。

    注意点:

    1、测试时,会出现不同的段落。例如,我们要测试the dog sat 的下一个单词,这个句子出现在段落P中,但段落P在之前并未出现过,也就是我们尚不知道段落P的向量("the"、“dog”,“ sat”的词向量都是知道的,已经训练出来了)。此时的做法是固定词向量,只将段向量当作变量来进行BP算法,直到收敛,得到最终的段向量。再根据这个新训练的段向量去进行预测

    2、论文中提到,将CBOW和Skip_gram模型结合起来一起来训练段向量效果更佳。

    3、主要的算法流程如上,具体实施时会进行很多优化,例如霍夫曼树的使用。

    三、总结

    论文中提到的段向量的算法只是众多段向量算法的一种。而这个算法又是由word2vec演化而来的,所以理解了word2vec之后,再来了解这个算法就会很容易。但是至今为止,词向量乃至神经网络都缺少现实的理论基础(现实意义?),例如我们得到的词向量或者段向量的每一维到底代表什么,都无从得知。所以,词向量还有很长的路要走!!再说点题外话,BP算法类似于现实中的负反馈调节,根据结果不断调整参数,让参数去适应结果。词向量的训练亦是如此。但是,我们是否可以从另一个角度出发:我们能否为语言设计一个数据结构(类似向量这种),使得这种数据结构在数学上的意义和在现实中的意义一致,然后我们用这种数据去预测或者翻译就简单多了(因为计算机能够理解其数学意义,而数学意义又对应着现实意义)。当然这是一种猜测(用word2vec训练出的词向量在数学意义上确实达到了某种一致,例如同义的词语其欧式距离会很接近)。

     

    展开全文
  • 蔡氏方程matlab重构代码###段落向量DM模型 用法: python test.py training_text testing_text 输出: para_vectors_train.txt和para_vectors_test.txt 如果您使用该代码,请引用本文: 刘洋,刘志远,蔡达成,...
  • user2vec 根据paragraph2vec思想,计算user2vec。 7. Supervised Learning of Universal Sentence Representations from Natural Language Inference Data Natural Language Inference 自然语言推理 ...
    1. Distributed Representations of Words and Phrases and their Compositionality
      The Skip-gram Model
      Hierarchical Softmax
      Negative Sampling
      高频词的子采样
    2. Distributed Representations of Sentences and Documents
      提出Paragraph Vector,结构和word2vec很像,唯一的区别,增加了para_id,paragraph vector代表缺失的上下文信息
      这里写图片描述
      单词无序的paragraph vector
      这里写图片描述
    3. Topic2Vec: Learing Distributed Representations of Topics
      和单词在相同的语义空间学习topic的表示
      Word2vec
      这里写图片描述
      Topic2vec
      这里写图片描述
      这里写图片描述
      这里写图片描述

    4. A Hierarchical Neural Autoencoder for Paragraphs and Documents

    普通的seq2seq model是句子输入完成后进行encode和decode
    这里写图片描述
    Hierarchical Seq2seq model 是先进行encode-word encode-sentence decode-sentence decode-word
    这里写图片描述

    Hierarchical LSTM with Attention model 采用回退策略,通过连接当前decode阶段和输入句子来考虑哪部分输入对当前的decode起更大作用。
    这里写图片描述
    5. Convolutional Neural Networks for Sentence Classification
    word用vector表示,CNN卷积计算h个单词,产生新的特征
    这里写图片描述
    6. E-commerce in Your Inbox: Product Recommendations at Scale
    用自然语言模型的历史log建立和表示商品的低纬度表示
    这里写图片描述
    这里写图片描述

    prod2vec-topK 根据product vector 计算和指定商品cos值最相似的K个item
    prod2vec-cluster grouping similar products into clusters ,从簇中推荐item
    user2vec 根据paragraph2vec思想,计算user2vec。
    这里写图片描述
    7. Supervised Learning of Universal Sentence Representations from Natural Language Inference Data
    Natural Language Inference 自然语言推理
    希望提出像图像一样,一个通用框架学习句子的表示,可以迁移到其他任务上这里写图片描述

    encoder部分的结构
    这里写图片描述

    展开全文
  • 蔡氏方程matlab重构代码###段落向量DM模型 用法: python test.py training_text testing_text 输出: para_vectors_train.txt和para_vectors_test.txt 如果您使用该代码,请引用本文: 刘洋,刘志远,蔡达成,...
  • word2vector & paragraph2vector 技术分享

    千次阅读 2017-04-07 21:38:18
    在FastText 那章节,提到了word2vector。这里就专门分享下word2vector的一些技术细节吧。第一次深入调研word2vector是在15年下半年的时候,当时团队leader希望我来负责这块技术在文本挖掘项目的的落地。15年那会,我...

    范涛
    发表于2017-04-07

    前言       

    在FastText 那章节,提到了word2vector。这里就专门分享下word2vector的一些技术细节吧。第一次深入调研word2vector是在15年下半年的时候,当时团队leader希望我来负责这块技术在文本挖掘项目的落地。15年那会,我调研的时候,这块技术在国内已经传播很广泛了,各种技术应用和分享都很多,这对我来说是一件非常利好的事情(站在巨人的肩膀上,哈哈)。拿word2vector来说,吸引大家眼球的是他对海量数据的支持以及快速训练。他之前那些基于深度学习的深度语言模型可能效果好,但是速度太慢,对大数据不够scalable,导致在工业界应用很难。但是word2vector解决了这个问题,所以,立马在工业界有了相对广泛的运用。目前在工业界常见的应用有:词云,词典扩充,分类,情感分析,一些dnn模型embedding层初始权重矩阵等。那什么是paragraph2vector ?  paragraph2vector 其实word2vector的一种扩展,是文档的一种向量表示。其实paragraph2vector是一种更为直接的表示,因为实际上大家应用的时候很少直接用词向量,更多是需要对文档进行向量表示而进行的文档级别的应用比如分类,聚类等。但是实际paragraph2vector目前应用上有个问题,还是不够scaleable,基本文档数过百万的时候就容易爆内存。


    主题

           下面就分享下之前的调研结果:

           



    参考文献

    (6) Mikolov T, Sutskever I, Chen K, et al. Distributed representations of words and phrases and their compositionality[C]//Advances in neural information processing systems. 2013: 3111-3119.

    展开全文
  • paragraph2vec工作受质疑

    千次阅读 2015-05-11 19:52:07
    Quoc V. Le ICML2014的工作《Distributed Representations of Sentences and Documents》一直饱受争议,很多学者都宣称其工作无法重现。  ICLR2015文章《ENSEMBLE OF GENERATIVE ANDDISCRIMINATIVETECHNIQUES ...

           Quoc V. Le ICML2014的工作《Distributed Representations of Sentences and Documents》一直饱受争议,很多学者都宣称其工作无法重现。

           ICLR2015文章《ENSEMBLE OF GENERATIVE ANDDISCRIMINATIVETECHNIQUES FORSENTIMENTANALYSIS OFMOVIEREVIEWS》在文章中直接对该工作进行了评价:

    In our experiments, to match the results from (Le & Mikolov, 2014), we followed the suggestion by QuocLe to use hierarchical softmax instead of negative sampling. However, this produces the 92.6% accuracy resultonly when the training and test data are not shuffled. Thus, we consider this result to be invalid.


    《ENSEMBLE OF GENERATIVE ANDDISCRIMINATIVETECHNIQUES FORSENTIMENTANALYSIS OFMOVIEREVIEWS》文章地址:http://arxiv.org/pdf/1412.5335v6.pdf


    展开全文
  • EM-Tree算法文档的默认支持方式是用哈希签名的方法,个人觉得这种文档签名方式不够准确,用之前分享的Paragraph2vector技术(在文档表示上效果较好)来替换EM-tree文档默认签名方式。下面在一些分类文档的上的聚类...
  • 《文本嵌入式表示方法实战》系列文章是基于2017年我于研一下半学期做的两场长时间的组会汇报ppt上形成的文章(学习和实验长达3个月,因为...(一)文本嵌入式表示方法实战(词、句和段落向量:Word2Vec,GloVe,P...
  • Paragraph

    2017-03-30 20:36:21
  • Paragraph comprehension - ASVAB Section Eight Paragraph comprehension认证题库
  • ParaGraph-开源

    2021-04-27 18:37:37
    ParaGraph:参数图形计算器。 ParaGraph可以一次绘制多个函数的图形,执行数字演算,查找极值,绘制对数图,绘制极坐标图,将曲线拟合到数据,执行基本矢量运算等等。
  • 2、大家知道,Mikolov提出的paragraph vec方法就是在CBOW的输入层增加了一个paragraph vec,那请问整个算法过程是:①先用原先CBOW的方法根据整个语料库训练出词典中每个词的向量以及网络中的参数;然后固定所有词...
  • WORD Paragraph

    2012-11-28 09:54:37
    没有找到WORD的Paragraph中文vba api 注释,查看WPS http://www.wps.cn/wpsapi/apishow/type-WPS-Paragraph.htm
  • Latex paragraph如何换行

    千次阅读 2019-06-01 21:15:02
    综述 Latex paragraph如何换行 代码 \paragraph{8位基础ALU}~{} \newline new info
  • Paragraph_Joiner-源码

    2021-03-18 11:14:11
    Paragraph_Joiner
  • HTML paragraph

    2015-06-16 22:32:02
    1. ...... 一段话,会自动空一行 2. 换行 3. ...... 输出样式和......里的一样
  • Understand logical progression in a paragraph 文章目录Understand logical progression in a paragraphGeneral paragraph structureRead and Discusswhat makes an effective paragraph?General structure of a ...
  • HTML段落paragraph

    2019-05-25 16:48:04
    HTML段落paragraph 标签:<p>段落内容</p>...(2)出场率很高 代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>HT...
  • Document Embedding with Paragraph Vectors TLDR; The authors evaluate Paragraph Vectors on large Wikipedia and arXiv document retrieval tasks and compare the results to LDA, BoW and word vector averagi...
  • wpf Paragraph 写入内容

    千次阅读 2013-04-08 18:00:20
    flowdocument.Blocks.Clear();//清空  Paragraph paragraph = new Paragraph(new Run("asb"));  flowdocument.Blocks.Add(paragraph);
  • Paragraph2vec 是一种非监督学习方式,输入为文本,输出则是文本对应的向量表示。 连续分布式向量表示。文本可以是可变的长度(对应于 sentence 及 documents)。 向量表示可以用来预测文章中的 word。可以连接 ...
  • paragraph:参数表面图
  • 科研热点对科学研究具有指导意义,目前的科研热点发现主要依赖文本聚类技术,针对文本表示存在的特征语义表达能力不强、无法揭示词语之间潜在联系的问题,提出了一种基于Paragraph Vector模型的科研热点发现方法。...
  • How Apache Zeppelin runs a paragraph

    千次阅读 2017-02-20 16:18:22
    转发一篇zeppelin的主力committer Jongyoul Lee的讲解zeppelin的paragraph的运行机制的文章,原文地址:https://medium.com/apache-zeppelin-stories/how-apache-zeppelin-runs-a-paragraph-783a0a612ba9#.a85u5nlh4
  • const Paragraph = require ( '@editorjs/paragraph' ) ; 下载到项目的源目录 从存储库上传文件夹dist 将dist/bundle.js文件添加到您的页面。 从CDN加载 您可以从加载特定版本的软件包。 ...
  • 1.必须new Paragraph时传入字体参数,若new 完后用paragraph.Font设置则不会显示 //可以正常显示 BaseFont baseFont = BaseFont.CreateFont( "SIMKAI.TTF", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDE
  • paragraph tool online

    2021-05-19 11:39:26
    https://quillbot.com/
  • 语言:English (United States) 使用此chrome扩展程序更改paragragh的背景颜色。 此chrome扩展程序将突出显示网页上使用的每个段落。 段落将以不同的颜色突出显示。 再次单击将删除突出显示的颜色。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 54,540
精华内容 21,816
关键字:

paragraph2