背景
序列标注任务是中文自然语言处理(NLP)领域在句子层面中的主要任务,在给定的文本序列上预测序列中需要作出标注的标签。常见的子任务有命名实体识别(NER)、Chunk提取以及词性标注(POS)等。序列标注任务在e成的主要应用有,简历解析时的字段切分、抽取工作经历(CV)和职位描述(JD)中的实体名词等。
更具体的任务有,在解析一段工作经历长文本的时候,我们希望提取其中的动宾组合来表示该应聘者之于此段工作经历的主要工作内容。以“了解市场情况 , 进行一些项目的商务谈判”为例,HanLP分词器的结果为“了解市场情况 , 进行一些项目的商务谈判”,此时可以提取的粗动宾组合有“了解-情况”和“进行-谈判”,而我们更希望得到更加完整且意义更加丰富的宾语,因此需要将“市场 情况”合并为“市场情况”,将“商务 谈判”合并为“商务谈判”。因此,我们需要一个能够准确提取名词短语(Noun Pharse)的序列标注模型来克服NP字典召回不足的问题。
基础模型及扩展
很长一段时间,条件随机场(CRF)是序列标注任务的标准模型。CRF将句子中每个标记的一组特征作为输入,并学习预测完整句子的最佳标签序列。以命名实体识别为例,一些常见的特征有:标记本身、它的bi-gram和tri-gram、词性信息、chunk类型等。
目前主流的序列标注模型已经被神经网络所替代,基础的框架一般为循环神经网络(RNN)+CRF[1]。这里我们使用双向RNN来提取序列中每一个标记的完整的过去和未来的上下文信息,而长短期记忆网络作为有效改进RNN梯度消失问题的网络已经成为RNN的标配。双向LSTM的层数一般设置为