论文部分内容阅读
在软件生命周期的概念建模阶段,需求常常是以基于自然语言的文本形式表示的。这些需求文本汇聚了从各个干系人那里收集到的信息,由需求工程师分析并完成概念建模。随着软件系统复杂度的不断增加,需要处理的需求文本量可能会变得非常巨大,为了尽可能缩短分析和建模时间,减轻需求工程师的工作负担,越来越多的研究人员在需求文本自动建模领域做出尝试。其中,如何采用统一的方法完成建模过程,如何充分利用现有的自然语言处理技术(Natural LanguageProcessing, NLP)提取文本信息,如何描述人工建模过程中所使用到的领域相关知识等问题一直是自动建模领域的研究热点。针对上述问题,本文开展了以下研究工作:(1)提出了一个关系信息抽取框架,定义了一个原子的关系三元组,将建模过程转化为从文本中抽取若干原子关系信息的过程。该抽取过程被划分为文本分析、实体抽取和语义模型表示等三个步骤。对于关系实体在语法树上有确定的位置关系,属于短距离依赖的情况,以i*框架中的策略依赖(Strategy Dependency, SD)模型为例,采用基于规则的方法,有序地定义一系列语义规则,提出一个语义自动机匹配算法,获得语义模型表示;而对于关系实体属于长距离依赖的情况,则以新闻文本的事件时序关系建模为例,采用基于机器学习的方法,分层次抽取特征值,采用支持向量机(Support Vector Machine,SVM)算法预测关系类型。(2)框架中构建了三个面向领域的辅助建模资源:领域词典、修正规则库和背景知识库。本文引入基于转换的错误驱动学习方法,自动获取修正规则,形成修正规则库,来修正错误的分词和词性标注。通过处理维基百科的领域相关文档,以统计学的方法计算领域词典中词汇之间的相关度,并以基于规则的方法获得概念之间的能动关系,构成背景知识库。(3)本文设计并实现了基于该方法框架的自动建模系统CREAT3,可以支持策略依赖模型和事件时序模型的自动构建,并且提供丰富的用户交互功能。同时完成了一系列试验,将系统得到的模型和人工抽取结果进行对比,结果显示该系统可以获得相当高的准确率,同时也保证了很高的召回率,证明了方法的实用性和有效性,并且该方法采用统一的方法分解和处理建模问题,并辅助以领域背景知识,较相关工作具有更好的可扩展性。