CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing


注:当Buffer不为空时,[ROOT,parse]不能把parse移出去。算法终止的条件是Stack长度为1,Buffer为空



2n,每个词都要进出stack一次,所以每个词两个操作。




注:sentence本身就是一个list,另外这里不是传的引用,改变buffer不会改变sentence.





注:这个题稍微有些难度,应用到了浅拷贝,通过这个题也能体会到浅拷贝的用途。另外unfinished_parses是处理完一个Transition后就要判断是否要删除其中已经处理完的parse(判断条件是parse的stack长度为1,buffer长度为0)。算法的具体流程总结如下:


另外看了一个关于浅拷贝与深拷贝的图,觉着不错,引用过来:



CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第1张图片

CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第2张图片



CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第3张图片

CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第4张图片



CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第5张图片

CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第6张图片

(i) 参考了答案,第一条CS231n里提过,第二条挺有新意。

CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第7张图片

(ii)题目里有两句话挺重要,m: a rolling average of the gradients; v: a rolling average of the manitudes of the gradients.

    这里理解是大数除大数,小数除小数。



CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第8张图片

CS224n (Spring 2017) assignment 2-----2. Neural Transition-Based Dependency Parsing_第9张图片


你可能感兴趣的:(CS224n作业)