From 18c95962bb64f92a411bf4e78728acf27324852e Mon Sep 17 00:00:00 2001 From: caoying03 Date: Sun, 25 Dec 2016 18:14:27 +0800 Subject: [PATCH] proj init. --- label_semantic_roles/README.md | 188 ++++++++++++++- .../data/extract_dict_feature.py | 81 +++++++ label_semantic_roles/data/extract_pairs.py | 122 ++++++++++ label_semantic_roles/data/get_data.sh | 29 +++ label_semantic_roles/data/test.list | 1 + label_semantic_roles/data/train.list | 1 + label_semantic_roles/dataprovider.py | 71 ++++++ label_semantic_roles/db_lstm.py | 218 ++++++++++++++++++ label_semantic_roles/image/bi-rnn.png | Bin 0 -> 54400 bytes .../image/linear_chain_crf.png | Bin 0 -> 128221 bytes label_semantic_roles/predict.py | 193 ++++++++++++++++ label_semantic_roles/predict.sh | 43 ++++ label_semantic_roles/test.sh | 40 ++++ label_semantic_roles/train.sh | 29 +++ 14 files changed, 1015 insertions(+), 1 deletion(-) create mode 100644 label_semantic_roles/data/extract_dict_feature.py create mode 100644 label_semantic_roles/data/extract_pairs.py create mode 100755 label_semantic_roles/data/get_data.sh create mode 100644 label_semantic_roles/data/test.list create mode 100644 label_semantic_roles/data/train.list create mode 100644 label_semantic_roles/dataprovider.py create mode 100644 label_semantic_roles/db_lstm.py create mode 100644 label_semantic_roles/image/bi-rnn.png create mode 100644 label_semantic_roles/image/linear_chain_crf.png create mode 100644 label_semantic_roles/predict.py create mode 100755 label_semantic_roles/predict.sh create mode 100755 label_semantic_roles/test.sh create mode 100755 label_semantic_roles/train.sh diff --git a/label_semantic_roles/README.md b/label_semantic_roles/README.md index 4ea990b..ad56af8 100644 --- a/label_semantic_roles/README.md +++ b/label_semantic_roles/README.md @@ -1 +1,187 @@ -TODO: Write about https://github.com/PaddlePaddle/Paddle/tree/develop/demo/semantic_role_labeling +# 语义角色标注(Semantic Role Labeling) + +## 背景介绍 + +语义角色标注任务就是以句子的谓词为中心,研究句子中各成分与谓词之间的关系,并且用语义角色来描述他们之间的关系,这是一种以句子为单位浅层语义分析技术,也就是,不对句子所包含的语义信息进行深入地分析,而只是分析句子的谓词-论元结构。 + +请看下面的例子: + +$$\mbox{[小明]}_{\mbox{Agent}}\mbox{[昨天]}_{\mbox{Time}}\mbox{在[公园]}_{\mbox{Location}}\mbox{[遇到]}_{\mbox{Predicate}}\mbox{了[小红]}_{\mbox{Patient}}\mbox{。}$$ + +在上面的句子中,“遇到” 是谓词(Predicate,通常简写为“Pred”),代表了一个事件的核心,“小明”是施事者(Agent),“小红”是受事者(Patient),“昨天” 是事件发生的时间(Time),“公园”是时间发生的地点(Location)。 + +通过这个例子可以看出,语义角色标注就是要分析出句子描述的事件:时间的参与者(包括施事者、受事者)、事件发生的时间、地点和原因等。 + +在经典方法中,语义角色标注通常又包括三个流程,一是句子中谓词的识别(一般为动词);二是谓词语义的判定(如“打人”、“打饭”中的“打”具有不同的语义),三是谓词支配词识别及角色判定(施事者 Agent、受事者 Patient、方式 Manner、地点 Location、时间 Time 等)。这些流程大多建立在句法分析的基础之上。然而,目前技术下的句法分析准确率不高,句法分析的细微错误也会导致语义角色标注的错误,造成语义角色标注的准确率也收到很大地限制,这也是语义角色标注任务面临的最主要挑战。 + +为了回避无法获得准确率较高的结构树或依存结构树所造成的困难,研究提出了基于语块的语义角色标注方法。也是我们这篇文章所要介绍的方法。基于语块的语义角色标注方法将语义标注方法作为一个序列标注问题来解决,是一个相对简单的过程。一般采用IBO表示方式来定义序列标注的标签集,将不同的语块赋予不同的标签。即:对于一个角色为A的论元,将它所包含的第一个语块赋予标签B-A,将它所包含的其它语块赋予标签I-A,不属于任何论元的语块赋予标签O。根据序列标注的结果就可以直接得到语义角色标注的结果,而且论元识别和论元标注通常作为一个过程同时实现。 + +# 模型概览 + +在这篇文章里,语义角色标注任务被规范化地描述成为一个序列标注问题,在开始构建我们的序列标注模型之前,我们首先介绍三个重要模块。 + +## 双向循环神经网络模型(Bidirectional Recurrent Neural Network) +循环神经网络(Recurrent Neural Network)是一种对序列建模的重要模型,在自然语言处理任务中有着广泛地应用。不同于传统的前馈神经网络(Feed-forward Neural Networks),RNN 引入了循环,能够处理输入之间前后关联的问题。例如,在语言中,由于句子前后单词并不是独立存在,我们要标记句子中的下一个词的语义角色,通常都依赖句子前面的词。 + +RNN 之所以称为循环神经网路,是因为在 RNN 模型中,隐藏层之间的是有连接的,即:隐藏层的输入不仅包括当前时刻输入层的输出,还包括上一时刻隐藏层的输出,网络会对前面时刻的信息进行记忆,并用于当前时刻输出的计算中。于是,当前时刻输出也收到前面时刻的输出的影响。 + +理论上,RNN $t$ 时刻的输出编码了到$t$ 时刻之前所有历史信息,然而,标准的神经网络通常都忽略了未来时刻的上下文信息的引入。如果能像访问历史上下文信息一样,同样访问未来上下文信息,对于许多序列学习任务都是非常有益的。双向 RNN 就是解决这一问题的一种简单有效的方法,由 Bengio 等人在论文\[[1](#参考文献),[2](#参考文献)\]中提出。 + +双向 RNN 每一个训练序列向前和向后分别是两个循环神经网络(RNN),而且这两个都连接着一个输出层。这个结构提供给输出层输入序列中每一个点的完整的过去和未来的上下文信息。下图展示的是一个沿着时间展开的双向循环神经网络。双向 RNN 包含一个前向(forward)和一个后向(backward)RNN 单元,其中包含六个权值:输入到前向隐层和后向隐层($w_1, w_3$),隐层到隐层自己($w_2,w_5$),前向隐层和后向隐层到输出层($w_4, w_6$),在这里,前向隐层和后向隐层之间没有信息流。 + +
+ +
图1. 按时间步展开的双向RNN网络
+
+ + + +理论上,RNN 能够处理任意长度的输入序列,但是在实践中,由于梯度消失和梯度发散问题的存在,建模超长的输入序列依然存在许多优化上的难题。为了能够更好地建模长序列中存在的长程依赖关系,研究者们设计了带有门机制,更加精巧的 LSTM(Long Short Term Memory)\[[3](#参考文献)\] 和 GRU (Gated Recurrent Unit) \[[2](#参考文献)\],于是我们可以利用双向 RNN 的思想,同样道理构建双向 LSTM 和双向 GRU。 + +关于这些不同 RNN 单元的比较,可以参考论文 \[[4](#参考文献)\] 。 + +## Stacked Recurrent Neural Network + +深度网络能够帮助我们学习层次化特征,网络的上层在下层已经学习到的初级特征基础上,学习更复杂的高级特征。堆叠多个 RNN 单元(可以是:Simple RNN , LSTM 或者 GRU)同样能够带来这样的好处。 + +RNN 等价于一个展开地前向网络,于是,通常人们会认为 RNN 在时间轴上是一个真正的“深层网络”。然而,在循环神经网络中,我们对网络层数的定义并非如此直接。 + +输入特征经过一次非线性映射,我们称之为神经网络的一层。按照这样的约定,可以看到,尽管 RNN 沿时间轴展开后等价于一个非常“深”的前馈网络,但由于 RNN 各个时间步参数共享,$t-1$ 时刻隐藏层输出到 $t$ 时刻的映射,始终只经过了一次非线性映射,也就是说 :RNN 对状态转移的建模是 “浅” 的。纵向堆叠多个 RNN 单元 ,令前一个 RNN $t$ 时刻的输出,成为下一个 RNN 单元 $t$ 时刻的输入,帮助我们构建起一个深层的 RNN 网络。和单层 RNN 网络相比,深层 RNN 网络能够更好地建模跨不同时间步的特征\[[5](#参考文献)\]。 + +## 条件随机场 (Conditional Random Field) + +条件随机场 (Conditional Random Filed, CRF)是一种用来标注和划分序列结构数据的概率化结构模型,可以看作是一个无向图模型,或者马尔科夫随机场。我们首先来看看一般的条件随机场是如何定义的。 + +**条件随机场** : 设 $G = (V, E)$ 是一个无向图, $V$ 是结点的集合,$E$ 是无向边的集合。$V$ 中的每个结点对应一个随机变量 $Y_{v}$, $Y = \{Y_{v} | v \in V\}$,其取值范围为可能的标记集合 $\{y\}$,如果以观测序列 $X$ 为条件,每个随机变量 $Y_{v}$ 都满足以下马尔科夫特性: +$$p(Y_{v}|X, Y_{\omega}, \omega \not= v) = p(Y_{v} | X, Y_{\omega} , \omega \sim v)$$ +其中,$\omega \sim v$ 表示两个结点在图 $G$ 中是临近结点,那么,$(X, Y)$ 是一个条件随机场。 + + +CRF 用于序列标注由 Lafferty 等人 \[[7](#参考文献)\] 于2001年提出。 理论上,只要在标记序列中表示了一定的条件独立性, $G$ 的图结构可以是任意的。在序列标注任务中,只考虑 $X$ 和 $Y$ 具有相的图结构:都是一个序列,于是建模一个序列可以形成如图2所示的一个简单的链式结构图。因此,序列标注问题使用的是一种定义在线性链上的特殊条件随机场,称之为线性链条件随机场(linear chain conditional random field)。 + +
+ +
图2. $X$ 和 $Y$ 具有相同结构的线性链条件随机场
+
+ +**线性链条件随机场** :设 $X = (X_{1}, X_{2}, ... , X_{n})$,$Y = {Y_{1}, Y_{2}, ... , Y_{n}}$ 均为线性链表示的随机变量序列,若在给定随机变量序列 $X$ 的条件下,随机变量序列 $Y$ 的条件概率分布 $P(Y|X)$ 满足马尔科夫性:$$p(Y_{i}|X, Y_{1}, ... , Y_{i - 1}, Y_{i + 1}, ... , Y_{n}) = p(Y_{i} | X, Y_{i - 1}, Y_{i + 1})$$ +$$i = 1, 2, ..., n \mbox{(在} i = 1 \mbox{和} n \mbox{时只考虑单边)}$$,则称$P(Y|X)$为线性链条件随机场。$X$表示输入的观测序列,$Y$ 表示对应的输出标记序列。 + +根据线性链条件随机场上的因子分解定理 \[[7](#参考文献)\],在给定观测序列 $X$ 时,一个特定标记序列 $Y$ 的概率可以定义为: +$$\frac{1}{Z(x)} exp(\sum_{j} \lambda_{j}t_{j} (y_{i - 1}, y_{i}, X, i) + \sum_{k} (\mu_k s_k (y_i, X, i)))$$ $$Z(x) = \sum_y exp(\sum_{i, k} \lambda_kt_k(y_{i-1}, y_i, x, i) + \sum_{i, l}\mu_l s_l (y_i, x, i))$$ + +式中$Z(x)$是规范化因子。$t_j$ 是定义在边上的特征函数,依赖于当前和前一个位置,称为转移特征。$s_k$ 是定义在结点上的特征函数,称为状态特征,依赖于当前位置。$\lambda_j$ 和 $\mu_k$ 是对应的权值。于是,条件随机场完全由特征函数 $t_j$ ,$s_k$ 和它们对应的权值$\lambda_j$ ,$\mu_l$ 确定。 + +学习时,对于给定的输入输出变量序列 $X$(表示需要标注的观测序列)和输出变量序列 $Y$ (表示标记序列),利用训练数据集,通过极大似然估计或是正则化的极大似然估计可以求解得到条件概率模型 $\bar{P}(Y|X)$;测试时,对于给定的输入序列 $x$,求出条件概率$\bar{P}(Y|X)$最大的输出序列 $\bar{y}$。关于 CRF 的训练和解码更多的解释,可以参考\[[8](#参考文献)\]。 + +# 数据准备 +## 数据介绍与下载 +在此教程中我们选用 [CoNLL 2005](http://www.cs.upc.edu/~srlconll/) 公共任务中的语义角色标注数据集\[[9](#参考文献)\]。 + +## 提供数据给 PaddlePaddle + +``` +@provider( + init_hook=hook, + should_shuffle=True, + calc_batch_size=get_batch_size, + can_over_batch_size=True, + cache=CacheType.CACHE_PASS_IN_MEM) +def process(settings, file_name): + with open(file_name, 'r') as fdata: + for line in fdata: + sentence, predicate, ctx_n2, ctx_n1, ctx_0, ctx_p1, ctx_p2, mark, label = \ + line.strip().split('\t') + + words = sentence.split() + sen_len = len(words) + word_slot = [settings.word_dict.get(w, UNK_IDX) for w in words] + + predicate_slot = [settings.predicate_dict.get(predicate)] * sen_len + ctx_n2_slot = [settings.word_dict.get(ctx_n2, UNK_IDX)] * sen_len + ctx_n1_slot = [settings.word_dict.get(ctx_n1, UNK_IDX)] * sen_len + ctx_0_slot = [settings.word_dict.get(ctx_0, UNK_IDX)] * sen_len + ctx_p1_slot = [settings.word_dict.get(ctx_p1, UNK_IDX)] * sen_len + ctx_p2_slot = [settings.word_dict.get(ctx_p2, UNK_IDX)] * sen_len + + marks = mark.split() + mark_slot = [int(w) for w in marks] + + label_list = label.split() + label_slot = [settings.label_dict.get(w) for w in label_list] + yield word_slot, ctx_n2_slot, ctx_n1_slot, \ + ctx_0_slot, ctx_p1_slot, ctx_p2_slot, predicate_slot, mark_slot, label_slot + + +``` +## 模型配置说明 +## 数据定义 + +在模型配置中,首先定义通过 define_py_data_sources2 从 dataprovider 中读入数据。 + + +``` +define_py_data_sources2( + train_list=train_list_file, + test_list=test_list_file, + module='dataprovider', + obj='process', + args={ + 'word_dict': word_dict, + 'label_dict': label_dict, + 'predicate_dict': predicate_dict} +) +``` +## 算法配置 +在这里,我们指定了模型的训练参数, 选择L2正则项稀疏、学习率和batch size。 + +``` +settings( + batch_size=150, + learning_method=MomentumOptimizer(momentum=0), + learning_rate=2e-2, + regularization=L2Regularization(8e-4), + is_async=False, + model_average=ModelAverage(average_window=0.5, max_average_window=10000) +) +``` + +## 模型结构 +# 训练模型 +执行sh train.sh进行模型的训练。其中指定了总共需要执行500个pass。 + +``` +paddle train \ + --config=./db_lstm.py \ + --save_dir=./output \ + --trainer_count=4 \ + --dot_period=500 \ + --log_period=10 \ + --num_passes=500 \ + --use_gpu=false \ + --show_parameter_stats_period=10 \ + --test_all_data_in_one_period=1 \ +2>&1 | tee 'train.log' +``` +一轮训练 log 示例如下所示,经过 150 个pass,得到平均 error 为 0.0516055。 + +``` +I1224 18:11:53.661479 1433 TrainerInternal.cpp:165] Batch=880 samples=145305 AvgCost=2.11541 CurrentCost=1.8645 Eval: __sum_evaluator_0__=0.607942 CurrentEval: __sum_evaluator_0__=0.59322 +I1224 18:11:55.254021 1433 TrainerInternal.cpp:165] Batch=885 samples=146134 AvgCost=2.11408 CurrentCost=1.88156 Eval: __sum_evaluator_0__=0.607299 CurrentEval: __sum_evaluator_0__=0.494572 +I1224 18:11:56.867604 1433 TrainerInternal.cpp:165] Batch=890 samples=146987 AvgCost=2.11277 CurrentCost=1.88839 Eval: __sum_evaluator_0__=0.607203 CurrentEval: __sum_evaluator_0__=0.590856 +I1224 18:11:58.424069 1433 TrainerInternal.cpp:165] Batch=895 samples=147793 AvgCost=2.11129 CurrentCost=1.84247 Eval: __sum_evaluator_0__=0.607099 CurrentEval: __sum_evaluator_0__=0.588089 +I1224 18:12:00.006893 1433 TrainerInternal.cpp:165] Batch=900 samples=148611 AvgCost=2.11148 CurrentCost=2.14526 Eval: __sum_evaluator_0__=0.607882 CurrentEval: __sum_evaluator_0__=0.749389 +I1224 18:12:00.164089 1433 TrainerInternal.cpp:181] Pass=0 Batch=901 samples=148647 AvgCost=2.11195 Eval: __sum_evaluator_0__=0.60793 +``` + +# 总结 +# 参考文献 +1. Cho K, Van Merriënboer B, Gulcehre C, et al. [Learning phrase representations using RNN encoder-decoder for statistical machine translation](https://arxiv.org/abs/1406.1078)[J]. arXiv preprint arXiv:1406.1078, 2014. +2. Bahdanau D, Cho K, Bengio Y. [Neural machine translation by jointly learning to align and translate](https://arxiv.org/abs/1409.0473)[J]. arXiv preprint arXiv:1409.0473, 2014. +3. Hochreiter S, Schmidhuber J. [Long short-term memory](http://deeplearning.cs.cmu.edu/pdfs/Hochreiter97_lstm.pdf)[J]. Neural computation, 1997, 9(8): 1735-1780. +4. Chung J, Gulcehre C, Cho K H, et al. [Empirical evaluation of gated recurrent neural networks on sequence modeling](https://arxiv.org/abs/1412.3555)[J]. arXiv preprint arXiv:1412.3555, 2014. +5. Pascanu R, Gulcehre C, Cho K, et al. [How to construct deep recurrent neural networks](https://arxiv.org/abs/1312.6026)[J]. arXiv preprint arXiv:1312.6026, 2013. +6. Sutskever I, Vinyals O, Le Q V. [Sequence to sequence learning with neural networks](http://papers.nips.cc/paper/5346-information-based-learning-by-agents-in-unbounded-state-spaces.pdf)[C]//Advances in neural information processing systems. 2014: 3104-3112. +7. Lafferty J, McCallum A, Pereira F. [Conditional random fields: Probabilistic models for segmenting and labeling sequence data](http://www.jmlr.org/papers/volume15/doppa14a/source/biblio.bib.old)[C]//Proceedings of the eighteenth international conference on machine learning, ICML. 2001, 1: 282-289. +8. 李航. 统计学习方法[J]. 清华大学出版社, 北京, 2012. +9. Palmer M, Gildea D, Kingsbury P. [The proposition bank: An annotated corpus of semantic roles](https://www.cs.rochester.edu/~gildea/palmer-propbank-cl.pdf)[J]. Computational linguistics, 2005, 31(1): 71-106. \ No newline at end of file diff --git a/label_semantic_roles/data/extract_dict_feature.py b/label_semantic_roles/data/extract_dict_feature.py new file mode 100644 index 0000000..da44111 --- /dev/null +++ b/label_semantic_roles/data/extract_dict_feature.py @@ -0,0 +1,81 @@ +# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import sys +import os +from optparse import OptionParser + + +def extract_dict_features(pair_file, feature_file): + + with open(pair_file) as fin, open(feature_file, 'w') as feature_out: + for line in fin: + sentence, predicate, labels = line.strip().split('\t') + sentence_list = sentence.split() + labels_list = labels.split() + + verb_index = labels_list.index('B-V') + + mark = [0] * len(labels_list) + if verb_index > 0: + mark[verb_index - 1] = 1 + ctx_n1 = sentence_list[verb_index - 1] + else: + ctx_n1 = 'bos' + + if verb_index > 1: + mark[verb_index - 2] = 1 + ctx_n2 = sentence_list[verb_index - 2] + else: + ctx_n2 = 'bos' + + mark[verb_index] = 1 + ctx_0 = sentence_list[verb_index] + + if verb_index < len(labels_list) - 1: + mark[verb_index + 1] = 1 + ctx_p1 = sentence_list[verb_index + 1] + else: + ctx_p1 = 'eos' + + if verb_index < len(labels_list) - 2: + mark[verb_index + 2] = 1 + ctx_p2 = sentence_list[verb_index + 2] + else: + ctx_p2 = 'eos' + + + feature_str = sentence + '\t' \ + + predicate + '\t' \ + + ctx_n2 + '\t' \ + + ctx_n1 + '\t' \ + + ctx_0 + '\t' \ + + ctx_p1 + '\t' \ + + ctx_p2 + '\t' \ + + ' '.join([str(i) for i in mark]) + '\t' \ + + labels + + feature_out.write(feature_str + '\n') + + +if __name__ == '__main__': + + usage = '-p pair_file -f feature_file' + parser = OptionParser(usage) + parser.add_option('-p', dest='pair_file', help='the pair file') + parser.add_option('-f', dest='feature_file', help='the feature file') + + (options, args) = parser.parse_args() + + extract_dict_features(options.pair_file, options.feature_file) diff --git a/label_semantic_roles/data/extract_pairs.py b/label_semantic_roles/data/extract_pairs.py new file mode 100644 index 0000000..94a8488 --- /dev/null +++ b/label_semantic_roles/data/extract_pairs.py @@ -0,0 +1,122 @@ +# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import sys +import os +from optparse import OptionParser + + +def read_labels(props_file): + ''' + a sentence maybe has more than one verb, each verb has its label sequence + label[], is a 3-dimension list. + the first dim is to store all sentence's label seqs, len is the sentence number + the second dim is to store all label sequences for one sentences + the third dim is to store each label for one word + ''' + labels = [] + with open(props_file) as fin: + label_seqs_for_one_sentences = [] + one_seg_in_file = [] + for line in fin: + line = line.strip() + if line == '': + for i in xrange(len(one_seg_in_file[0])): + a_kind_lable = [x[i] for x in one_seg_in_file] + label_seqs_for_one_sentences.append(a_kind_lable) + labels.append(label_seqs_for_one_sentences) + one_seg_in_file = [] + label_seqs_for_one_sentences = [] + else: + part = line.split() + one_seg_in_file.append(part) + return labels + + +def read_sentences(words_file): + sentences = [] + with open(words_file) as fin: + s = '' + for line in fin: + line = line.strip() + if line == '': + sentences.append(s) + s = '' + else: + s += line + ' ' + return sentences + + +def transform_labels(sentences, labels): + sen_lab_pair = [] + for i in xrange(len(sentences)): + if len(labels[i]) == 1: + continue + else: + verb_list = [] + for x in labels[i][0]: + if x != '-': + verb_list.append(x) + + for j in xrange(1, len(labels[i])): + label_list = labels[i][j] + current_tag = 'O' + is_in_bracket = False + label_seq = [] + verb_word = '' + for ll in label_list: + if ll == '*' and is_in_bracket == False: + label_seq.append('O') + elif ll == '*' and is_in_bracket == True: + label_seq.append('I-' + current_tag) + elif ll == '*)': + label_seq.append('I-' + current_tag) + is_in_bracket = False + elif ll.find('(') != -1 and ll.find(')') != -1: + current_tag = ll[1:ll.find('*')] + label_seq.append('B-' + current_tag) + is_in_bracket = False + elif ll.find('(') != -1 and ll.find(')') == -1: + current_tag = ll[1:ll.find('*')] + label_seq.append('B-' + current_tag) + is_in_bracket = True + else: + print 'error:', ll + sen_lab_pair.append((sentences[i], verb_list[j - 1], label_seq)) + return sen_lab_pair + + +def write_file(sen_lab_pair, output_file): + with open(output_file, 'w') as fout: + for x in sen_lab_pair: + sentence = x[0] + label_seq = ' '.join(x[2]) + assert len(sentence.split()) == len(x[2]) + fout.write(sentence + '\t' + x[1] + '\t' + label_seq + '\n') + + +if __name__ == '__main__': + + usage = '-w words_file -p props_file -o output_file' + parser = OptionParser(usage) + parser.add_option('-w', dest='words_file', help='the words file') + parser.add_option('-p', dest='props_file', help='the props file') + parser.add_option('-o', dest='output_file', help='the output_file') + (options, args) = parser.parse_args() + + sentences = read_sentences(options.words_file) + labels = read_labels(options.props_file) + sen_lab_pair = transform_labels(sentences, labels) + + write_file(sen_lab_pair, options.output_file) diff --git a/label_semantic_roles/data/get_data.sh b/label_semantic_roles/data/get_data.sh new file mode 100755 index 0000000..a0ef26a --- /dev/null +++ b/label_semantic_roles/data/get_data.sh @@ -0,0 +1,29 @@ +#!/bin/bash +# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +set -e +wget http://www.cs.upc.edu/~srlconll/conll05st-tests.tar.gz +wget http://paddlepaddle.bj.bcebos.com/demo/srl_dict_and_embedding/verbDict.txt +wget http://paddlepaddle.bj.bcebos.com/demo/srl_dict_and_embedding/targetDict.txt +wget http://paddlepaddle.bj.bcebos.com/demo/srl_dict_and_embedding/wordDict.txt +wget http://paddlepaddle.bj.bcebos.com/demo/srl_dict_and_embedding/emb +tar -xzvf conll05st-tests.tar.gz +rm conll05st-tests.tar.gz +cp ./conll05st-release/test.wsj/words/test.wsj.words.gz . +cp ./conll05st-release/test.wsj/props/test.wsj.props.gz . +gunzip test.wsj.words.gz +gunzip test.wsj.props.gz + +python extract_pairs.py -w test.wsj.words -p test.wsj.props -o test.wsj.seq_pair +python extract_dict_feature.py -p test.wsj.seq_pair -f feature diff --git a/label_semantic_roles/data/test.list b/label_semantic_roles/data/test.list new file mode 100644 index 0000000..ec370e8 --- /dev/null +++ b/label_semantic_roles/data/test.list @@ -0,0 +1 @@ +./data/feature diff --git a/label_semantic_roles/data/train.list b/label_semantic_roles/data/train.list new file mode 100644 index 0000000..ec370e8 --- /dev/null +++ b/label_semantic_roles/data/train.list @@ -0,0 +1 @@ +./data/feature diff --git a/label_semantic_roles/dataprovider.py b/label_semantic_roles/dataprovider.py new file mode 100644 index 0000000..360c57e --- /dev/null +++ b/label_semantic_roles/dataprovider.py @@ -0,0 +1,71 @@ +# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from paddle.trainer.PyDataProvider2 import * + +UNK_IDX = 0 + + +def hook(settings, word_dict, label_dict, predicate_dict, **kwargs): + settings.word_dict = word_dict + settings.label_dict = label_dict + settings.predicate_dict = predicate_dict + + #all inputs are integral and sequential type + settings.slots = [ + integer_value_sequence(len(word_dict)), + integer_value_sequence(len(word_dict)), + integer_value_sequence(len(word_dict)), + integer_value_sequence(len(word_dict)), + integer_value_sequence(len(word_dict)), + integer_value_sequence(len(word_dict)), + integer_value_sequence(len(predicate_dict)), integer_value_sequence(2), + integer_value_sequence(len(label_dict)) + ] + + +def get_batch_size(yeild_data): + return len(yeild_data[0]) + + +@provider( + init_hook=hook, + should_shuffle=True, + calc_batch_size=get_batch_size, + can_over_batch_size=True, + cache=CacheType.CACHE_PASS_IN_MEM) +def process(settings, file_name): + with open(file_name, 'r') as fdata: + for line in fdata: + sentence, predicate, ctx_n2, ctx_n1, ctx_0, ctx_p1, ctx_p2, mark, label = \ + line.strip().split('\t') + + words = sentence.split() + sen_len = len(words) + word_slot = [settings.word_dict.get(w, UNK_IDX) for w in words] + + predicate_slot = [settings.predicate_dict.get(predicate)] * sen_len + ctx_n2_slot = [settings.word_dict.get(ctx_n2, UNK_IDX)] * sen_len + ctx_n1_slot = [settings.word_dict.get(ctx_n1, UNK_IDX)] * sen_len + ctx_0_slot = [settings.word_dict.get(ctx_0, UNK_IDX)] * sen_len + ctx_p1_slot = [settings.word_dict.get(ctx_p1, UNK_IDX)] * sen_len + ctx_p2_slot = [settings.word_dict.get(ctx_p2, UNK_IDX)] * sen_len + + marks = mark.split() + mark_slot = [int(w) for w in marks] + + label_list = label.split() + label_slot = [settings.label_dict.get(w) for w in label_list] + yield word_slot, ctx_n2_slot, ctx_n1_slot, \ + ctx_0_slot, ctx_p1_slot, ctx_p2_slot, predicate_slot, mark_slot, label_slot diff --git a/label_semantic_roles/db_lstm.py b/label_semantic_roles/db_lstm.py new file mode 100644 index 0000000..04e2a55 --- /dev/null +++ b/label_semantic_roles/db_lstm.py @@ -0,0 +1,218 @@ +# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math +import os +import sys +from paddle.trainer_config_helpers import * + +#file paths +word_dict_file = './data/wordDict.txt' +label_dict_file = './data/targetDict.txt' +predicate_file = './data/verbDict.txt' +train_list_file = './data/train.list' +test_list_file = './data/test.list' + +is_test = get_config_arg('is_test', bool, False) +is_predict = get_config_arg('is_predict', bool, False) + +if not is_predict: + #load dictionaries + word_dict = dict() + label_dict = dict() + predicate_dict = dict() + with open(word_dict_file, 'r') as f_word, \ + open(label_dict_file, 'r') as f_label, \ + open(predicate_file, 'r') as f_pre: + for i, line in enumerate(f_word): + w = line.strip() + word_dict[w] = i + + for i, line in enumerate(f_label): + w = line.strip() + label_dict[w] = i + + for i, line in enumerate(f_pre): + w = line.strip() + predicate_dict[w] = i + + if is_test: + train_list_file = None + + #define data provider + define_py_data_sources2( + train_list=train_list_file, + test_list=test_list_file, + module='dataprovider', + obj='process', + args={ + 'word_dict': word_dict, + 'label_dict': label_dict, + 'predicate_dict': predicate_dict + }) + + word_dict_len = len(word_dict) + label_dict_len = len(label_dict) + pred_len = len(predicate_dict) + +else: + word_dict_len = get_config_arg('dict_len', int) + label_dict_len = get_config_arg('label_len', int) + pred_len = get_config_arg('pred_len', int) + +############################## Hyper-parameters ################################## +mark_dict_len = 2 +word_dim = 32 +mark_dim = 5 +hidden_dim = 512 +depth = 8 + +########################### Optimizer ####################################### + +settings( + batch_size=150, + learning_method=MomentumOptimizer(momentum=0), + learning_rate=2e-2, + regularization=L2Regularization(8e-4), + is_async=False, + model_average=ModelAverage( + average_window=0.5, max_average_window=10000), ) + +####################################### network ############################## +#8 features and 1 target +word = data_layer(name='word_data', size=word_dict_len) +predicate = data_layer(name='verb_data', size=pred_len) + +ctx_n2 = data_layer(name='ctx_n2_data', size=word_dict_len) +ctx_n1 = data_layer(name='ctx_n1_data', size=word_dict_len) +ctx_0 = data_layer(name='ctx_0_data', size=word_dict_len) +ctx_p1 = data_layer(name='ctx_p1_data', size=word_dict_len) +ctx_p2 = data_layer(name='ctx_p2_data', size=word_dict_len) +mark = data_layer(name='mark_data', size=mark_dict_len) + +if not is_predict: + target = data_layer(name='target', size=label_dict_len) + +default_std = 1 / math.sqrt(hidden_dim) / 3.0 + +emb_para = ParameterAttribute(name='emb', initial_std=0., learning_rate=0.) +std_0 = ParameterAttribute(initial_std=0.) +std_default = ParameterAttribute(initial_std=default_std) + +predicate_embedding = embedding_layer( + size=word_dim, + input=predicate, + param_attr=ParameterAttribute( + name='vemb', initial_std=default_std)) +mark_embedding = embedding_layer( + name='word_ctx-in_embedding', size=mark_dim, input=mark, param_attr=std_0) + +word_input = [word, ctx_n2, ctx_n1, ctx_0, ctx_p1, ctx_p2] +emb_layers = [ + embedding_layer( + size=word_dim, input=x, param_attr=emb_para) for x in word_input +] +emb_layers.append(predicate_embedding) +emb_layers.append(mark_embedding) + +hidden_0 = mixed_layer( + name='hidden0', + size=hidden_dim, + bias_attr=std_default, + input=[ + full_matrix_projection( + input=emb, param_attr=std_default) for emb in emb_layers + ]) + +mix_hidden_lr = 1e-3 +lstm_para_attr = ParameterAttribute(initial_std=0.0, learning_rate=1.0) +hidden_para_attr = ParameterAttribute( + initial_std=default_std, learning_rate=mix_hidden_lr) + +lstm_0 = lstmemory( + name='lstm0', + input=hidden_0, + act=ReluActivation(), + gate_act=SigmoidActivation(), + state_act=SigmoidActivation(), + bias_attr=std_0, + param_attr=lstm_para_attr) + +#stack L-LSTM and R-LSTM with direct edges +input_tmp = [hidden_0, lstm_0] + +for i in range(1, depth): + + mix_hidden = mixed_layer( + name='hidden' + str(i), + size=hidden_dim, + bias_attr=std_default, + input=[ + full_matrix_projection( + input=input_tmp[0], param_attr=hidden_para_attr), + full_matrix_projection( + input=input_tmp[1], param_attr=lstm_para_attr) + ]) + + lstm = lstmemory( + name='lstm' + str(i), + input=mix_hidden, + act=ReluActivation(), + gate_act=SigmoidActivation(), + state_act=SigmoidActivation(), + reverse=((i % 2) == 1), + bias_attr=std_0, + param_attr=lstm_para_attr) + + input_tmp = [mix_hidden, lstm] + +feature_out = mixed_layer( + name='output', + size=label_dict_len, + bias_attr=std_default, + input=[ + full_matrix_projection( + input=input_tmp[0], param_attr=hidden_para_attr), + full_matrix_projection( + input=input_tmp[1], param_attr=lstm_para_attr) + ], ) + +if not is_predict: + crf_l = crf_layer( + name='crf', + size=label_dict_len, + input=feature_out, + label=target, + param_attr=ParameterAttribute( + name='crfw', initial_std=default_std, learning_rate=mix_hidden_lr)) + + crf_dec_l = crf_decoding_layer( + name='crf_dec_l', + size=label_dict_len, + input=feature_out, + label=target, + param_attr=ParameterAttribute(name='crfw')) + + eval = sum_evaluator(input=crf_dec_l) + + outputs(crf_l) + +else: + crf_dec_l = crf_decoding_layer( + name='crf_dec_l', + size=label_dict_len, + input=feature_out, + param_attr=ParameterAttribute(name='crfw')) + + outputs(crf_dec_l) diff --git a/label_semantic_roles/image/bi-rnn.png b/label_semantic_roles/image/bi-rnn.png new file mode 100644 index 0000000000000000000000000000000000000000..e858008f6ad3432a69971c580802268139fbc4a2 GIT binary patch literal 54400 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 P00000NkvXXu0mjfn9af2 literal 0 HcmV?d00001 diff --git a/label_semantic_roles/image/linear_chain_crf.png b/label_semantic_roles/image/linear_chain_crf.png new file mode 100644 index 0000000000000000000000000000000000000000..63b2318c45893080c27695a6ec2887a2eb2aa067 GIT binary patch literal 128221 zcmeEubyU<__dY2lQVP;2B_g22AU%kblmdcuN+Teh1A-tTAR#FsDN0BqjUY%jLl4qD zbjR-uao_KEt>16G@BhE|u66O=S>w#-?6c3apXb^85cpJ4nh>7~9}NwSP*&!#G8!7r zEE*c7AMO?K%ICK)w!k0g_R7+a&~iIy7Qp}D*~)0xqoEOyq5efji~D>N4GoGW`&eAn z1$}u8PhYivXz!HuP;tl4Q_omWm6+tI9Xfni^O#~KWk9{6$|mT2ndOqQ^Kfa7r_QOG zrB)8RCbr+3<=kYe0ts&>rdx;AYeJoMUBt7B+|Bab5&MY{1(VeTpY*!geQ zj{17h>kRji657{-|C4uvpkn?fOZsn6{~Of*X6k>B|9>&{-=pP!G4;QN>OZKx|E>Q2 zzf&rP(SW8|z$m*Eee{kdDGFTH4YRVc%;&-sJ@%Dg2P!|;8>yK^MNb-n5yG2Wy-Kb0 zr+dQc{FnDGzU>C?wXG+S&H_nJBGSVH{c|F2{>xWMnT_ zM}KZqAw4_S2br0fH}o#HeH z&vKu?Fh7am>gxKso{;~~!S+&>S2~q?48Kj{(OQ6*gRqmMWARF->&}oV?e4mU43a^rGV>RwWeBv1AGy_bG1oo%u>Za^@Iu%ZVCo93ER8)7VKFBC2e3Fe|k#%q= z8mV6$%$I0sZDnRh5o=Z6Kly#^16Gti`*Sf4|w}l_Vw$6m0p44t==)Z z(l1}cOJ0pxOi^NEW3McBc6+56)cX(7m)f*QVF?rCKA=sK79LE}A%P}iVmoBGd3jaO zXV*C+Jk@nwXKr*;dL%~X8#T3j7O;N|v$WNg{$!r4E$wFhb~aa4O>OwS9DCvNvXzkK zx-XIFkGU`C?#_~!#OivU#h>jv1h@?wa2E!0;+dG326vry1ur6zjIq7F4Po$_s72og z+d8ui*NY|+JL(ceXx<`xr<5eB95A9y-`z$~k%DJWQP-MaNkuT|A-<>(Lr1v{HWlNpU zlxS&^Jq3nKBR_p&*7Mp=uiPDX-w1^r)pL~6!D_wHU#}FyTZ+tkjpw_*KtfV90v0;$ z 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 $model_list + +paddle train \ + --config=./db_lstm.py \ + --model_list=$model_list \ + --job=test \ + --use_gpu=false \ + --config_args=is_test=1 \ + --test_all_data_in_one_period=1 \ +2>&1 | tee 'test.log' diff --git a/label_semantic_roles/train.sh b/label_semantic_roles/train.sh new file mode 100755 index 0000000..9354e72 --- /dev/null +++ b/label_semantic_roles/train.sh @@ -0,0 +1,29 @@ +#!/bin/bash + +# Copyright (c) 2016 PaddlePaddle Authors. All Rights Reserved +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +set -e +paddle train \ + --config=./db_lstm.py \ + --use_gpu=0 \ + --log_period=5000 \ + --trainer_count=1 \ + --show_parameter_stats_period=5000 \ + --save_dir=./output \ + --num_passes=10000 \ + --average_test_period=10000000 \ + --init_model_path=./data \ + --load_missing_parameter_strategy=rand \ + --test_all_data_in_one_period=1 \ + 2>&1 | tee 'train.log' -- GitLab