本文主要是介绍WDK李宏毅学习笔记第八周02_Recursive Structure,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Recursive Structure
文章目录
- Recursive Structure
- 摘要
- 一、Recursive Structure
- 1.1 目的
- 1.2 原理
- 二、Recursive Model
- 2.1 Recursive Neural Tensor Network
- 三、Matrix-Vector Recursive Network
- 3.1 原理
- 方法
- 结论
摘要
本章讲的是Recursive Structure的原理,并举例说明了如何用Recursive Structure设计model让机器判断"not very good"的词性,阐述了Recursive Structure中function f的两种基本设计,后面说明了Matrix-Vector Recursive Network是思想是将word分为两个vector,一个vector表示本身含义,一个vector表示影响其它word的能力。一、Recursive Structure
Recursive network是RNN一种更generalize的形式,RNN是Recursive network的一个subset。
1.1 目的
输入一个word sequence,machine判断该word sequence的sentiment(正面,负面,中性)。
1.2 原理
- 用RNN的做法:如下图,将word Sequence用一组vector(x1,x2,x3,x4)表示,然后找一个初始的h0,将h0和x1丢到function f中,得到h1,依此类推,将最后得到的值丢入function g,得到最后的结果。假如正面-负面分为5档,那么最后的输出是5维的vector。
- 用Recursive Structure的做法:如下图,将x1,x2作为一组,x3,x4作为一组,分别丢入相同的function f,得到h1,h2,再将h1,h2丢入function f,得到h3,将h3丢入g,得到最后的结果。
二、Recursive Model
我们用machine判别“not very good”来举例。很明显,机器需要知道看到not就将词性转向,看到very就将词性加强,于是可以设计如下model,其中f也可以是一个network。
2.1 Recursive Neural Tensor Network
- f最简单的模型是如下图所示,w是一个2X4的矩阵,是由机器直接学到的。这样做的缺点是没有将输入a,b联系起来,机器就没法知道两者之间的关系。
- 改进的f模型如下图,用两个不同的w,求xTwx,再和用上面方法得到的结果相加,该方法将a,b联系起来了,机器就会学的两者之间的联系。
三、Matrix-Vector Recursive Network
3.1 原理
将word分为两部分,一部分代表自己本身的意思,一部分代表影响其他word的能力,然后再进行train,如下图。
方法
- Recursive Structure是采用树状结构,将word分组,每一组分别放入设计好的f中,让机器知道各个word之间的联系,得到的结果再分组放入f中,一层一层递归,最后得到唯一的vector,放入function g中得到最终结果。
- Matrix-Vector Recursive Network是将word分成2部分,一部分表示word自己的意思,一部分表示能够影响其他word的能力,然后再进行model train。
结论
Recursive Structure是采用树状结果进行设计的,可以很好的解决词性判断的问题,Recursive Model的设计并不是难点,重点是function f的设计,如何选择一个合适的f,将每个word联系起来,让机器知道word之间的含义,是很重要的。
这篇关于WDK李宏毅学习笔记第八周02_Recursive Structure的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!