zoukankan      html  css  js  c++  java
  • 深度学习与语义表示学习

    深度学习与语义表示学习
    最近自然语言处理与深度学习的一个新发现是,我们可以通过深度学习用实数值向量来表示语句的语义。如图3所示,两句话“John loves Mary”和“Mary is loved by John”的语义向量就相近,而这两句话的语义向量就与“Mary loves John”的语义向量相远。
    四个深度学习方法:单词嵌入(word embedding)、循环神经网络(Recurrent Neural Network)、卷积神经网络(Convolutional Neural Network)、递归神经网络(Recursive Neural Network)的原理,它们是语句语义学习的强有力工具。
    单词嵌入,其中最常用的是称为Word2Vec的工具,将高维的单词向量压缩成为低维的单词向量。矩阵是稀疏的,可以对其进行矩阵分解,这时得到的左矩阵就可以作为单词嵌入使用。它是一个低维稠密矩阵,每一行对应着一个单词,每一列对应着一个话题。
    循环神经网络(RNN),RNN把一句话看成单词的序列,每个单词由一个向量表示,每一个位置上有一个中间表示,由向量组成,表示从句首到这个位置的语义。RNN把句末的中间表示当作整个句子的语义表示。参照图4。RNN与隐马尔可夫模型有相似的结构,但具有更强的表达能力,中间表示没有马尔可夫假设,而且模型是非线性的。
    卷积神经网络(CNN)[5,6]。CNN对句子进行扫描,抽取特征,选择特征,最后组合成句子的语义表示。首先从左到右用一个滑动窗口对句子进行扫描,每个滑动窗口内有多个单词,每个单词由一个向量表示。在滑动窗口内,通过卷积(convolution)操作,进行特征抽取。这样,在各个位置上得到一系列特征。之后再通过最大池化(max pooling)操作,对特征进行选择。重复以上操作多次。
    递归神经网络(ReNN)[7]。ReNN假设对语句进行句法分析,得到句法树。句法树的每个节点上有一个向量中间表示。父节点的表示由其子节点的表示决定,通过神经网络模型化。而根节点的表示就是整个句子的语义表示。参照图6。句法树上的中间表示可以在句法分析的过程中得到,比如在最大间隔分析(max margin parsing)。
  • 相关阅读:
    jquery笔记
    css选择器
    Linq 巧用 Max,Sum
    Linq Aggregate
    Linq 对象的比较 Contains,Max
    Linq SelectMany 交叉连接
    JQ 标签相关知识
    C# HttpClient设置cookies的两种办法 (转发)
    使用 HttpClient 请求 Web Api
    MySQL 避免重复数据的批量插入与批量更新
  • 原文地址:https://www.cnblogs.com/rsapaper/p/7995274.html
Copyright © 2011-2022 走看看