system: [SYSTEM]

user: 3. 基于关系指示词库和句法分析的企业供应关系抽取方法 针对现有方法存在的问题，本文选择描述特定公司信息的主题文本，利用文本主题确定供应商信息。在判断供应商、客户和产品三个实体关系时，将过程拆解为两步，首先确定供应商与客户之间的关系，再将产品信息补充到结果中，从而得到完整的企业供应关系。 整体方案如图3所示，包括三个步骤：1) 语句筛选及实体识别，利用关系指示词库筛选与供应关系主题相关的句子，并进行相关的实体识别；2) 公司实体对生成，利用规则将文本描述的目标公司与句子中的公司实体组成公司实体对，确定供应商和客户两个公司的信息；3) 利用句法分析确定产品信息，分析寻找最近句法依赖动词处理句子中出现多个公司或者多个产品时的情况，解决客户与产品之间的对应问题，最终确定一条完整的，包含供应商，客户和产品三个实体的企业供应关系。 图3. 系统整体处理流程图 3.1. 语句筛选及实体识别 语句筛选及实体识别阶段选择主题与企业供应关系相关并且满足包含供应关系最低要求的句子，进行公司名称和产品名称的识别。 1) 关系指示词库过滤无关句子。由于绝大部分存在关系的实例都能在文本中找到一个关系指示词来标识实体之间的关系 [ 14 ] 。因此，本文通过构建企业供应关系指示词进行实体关系类型判断，当句子中包含关键词库中的词时，认为句子主题与供应关系相关。 2) 公司名称识别。公司名称识别模块进行句子中公司名称识别，并在结果上进行标注。本文需要识别的主要是句子中的公司简称，在比较了现有工具后，选择了Stanford NER进行公司名称识别，并利用上市年报释义信息构建了公司词典辅助进行识别。 3) 产品名称识别。金融文本中的产品名称属于产品类别词，针对该特点，本文选择词特征，词性特征，边界词特征和词典特征训练了条件随机场模型进行句子中的产品名称识别。 4) 筛选出至少含有一个或一组公司名称的句子。由上文的定义可知，一条企业供应关系包括供应商公司、客户公司和产品三项信息，其中供应商和客户信息是必不可少的，即至少包含两个公司名称。由于本文抽取文本中供应商信息常常不显式出现，而是以代词代指，而客户名称必定以显式出现。因此本文把包含企业供应关系基本条件设定为至少包含一个或一组公司名称。 3.2. 公司实体对生成 公司实体对生成需要确定供应商和客户，并形成公司实体对。由于本文处理对象是描述特定公司信息的文本，因此供应商是固定的。本阶段主要任务是判断句子是否描述该特定公司的供货信息，若是，则形成(供应商，客户)实体对。以图2中的句子为例，该句子所属文本描述公司为京东方，因此进行公司实体对提取时需要判断“京东方”与文本中其他各公司(华为、OPPO、vivo、小米、中兴、努比亚)是否具备供应关系。 具体上，基于以下规则判断： 1) 句子中显式或隐式出现目标公司信息。句子中描述目标公司的供应关系时，公司名称需要显式或隐式出现，如“公司”，“本公司”等等。以图4文本为例，在描述京东方供应关系文本中，出现了代词“公司”和公司名称“京东方”。 图4. 文本中目标公司出现形式示例 2) 目标公司的信息在句子中作为独立成分存在，不能与其他公司名称存在并列关系。本文寻找的是目标公司的供应关系，即目标公司的供货关系，而供货关系是一对多的关系，因此文本中目标公司都是独立出现，如上图4中，京东方需要作为独立成分出现，而客户公司名称常常会出现多个并列的情况。 公司实体对抽取如下图5所示，首先确定句子来源的文档描述是哪家公司的信息，然后判断句子中是否显示或隐式的带有文档主题公司的信息，若携带目标公司的信息且该信息作为独立成分存在，说明该句子中的供应商就是文档描述的目标公司，将目标公司和句子中已有的公司名称构成公司实体对。 图5. 公司实体对抽取整体流程图 图2中的示例文本为例，该句子来自京东方的企业新闻，可以从中构建(京东方，华为)、(京东方，OPPO)、(京东方，vivo)、(京东方，小米)、(京东方，中兴)和(京东方，努比亚)六组公司实体对。 3.3. 句法分析确定产品信息 由于供应关系实际上为一种供货关系，通常一个供应商对应多个客户信息，而句子中也常常包含多个产品，需要解决哪个产品供应给了哪个客户的问题，即客户与产品之间的对应问题。为此，引入最近句法依赖动词判断法 [ 15 ] 对客户和产品间的关系进行准确判断。 最近依赖动词可以判断实体之间的语义关联，本文通过抽取客户和产品之间最近依存动词来确定客户和产品之间是否存在对应关系，主要用于处理文本中包含多个产品名称或多个客户公司名称的情况。由于具有并列关系的实体在句子中语法角色相同，因此在判断产品信息时，将多个并列的公司或者产品实体作为整体处理。具体可以分为以下两种情况： 1) 句子中包含多组产品名称。以下图6为例，该句子中包含了多个产品名称{锂离子电池，六氟磷酸锂产品，电解液}和一组公司名称{比亚迪，杉杉股份，新宙邦}，需要判断供应商具体给客户供应了哪种产品。 图6. 多产品文本示例图 2) 句子中包含多组客户公司名称。例如下图7中的文本中包含了两组客户公司名称和一个产品名称“激光焊接设备”，需要判断该产品具体供应给了哪组公司。 图7. 多组公司名称文本示例图 以图6为例对本方法进行说明，该文本来自多氟多2017年年报，其中客户公司集合C = {比亚迪，杉杉股份，新宙邦}，产品集合为P = {锂离子电池，六氟磷酸锂产品，电解液}，抽取三个公司实体对(多氟多，比亚迪)，(多氟多，杉杉股份)，(多氟多，新宙邦)。 现在需要确定每个公司实体对中的客户与产品之间对应关系，并将与客户存在对应关系的产品加入到公司实体对中去，形成完整的供应关系。利用最近句法依赖动词进行客户与产品之间对应关系的判断过程如下。 对句子进行依存句法分析，部分分析结果如下图8所示。 图8. 示例部分句法依赖分析结果 由于比亚迪，杉杉股份和新宙邦在句子中具有并列关系，属于同一个实体组，按照最近依赖句法依赖动词判断方法，这三个词对应的最近动词相同，因此，仅对(多氟多，比亚迪)这一个公司实体对进行处理，查找其对应的产品，其它两个实体对(多氟多，杉杉股份)和(多氟多，新宙邦)的处理方式和结果相同，这里不再赘述。 现寻找客户比亚迪与三个产品锂离子电池，六氟磷酸锂产品，电解液之间的最近句法依赖动词，从而确定哪个产品与公司比亚迪对应。首先确定要寻找最近句法依赖动词的实体对 i， e j >，一共包含三个(锂离子电池，比亚迪)、(六氟磷酸锂产品，比亚迪)和(电解液，比亚迪)，其中实体顺序由实体在句中出现的位置确定，寻找最近句法依赖动词过程中各节点统计结果如下 表2所示。 Table 2 The recent dependency verb statistics tabl 实体对 i， e j > e i 的依存节点 e j 的依存节点 e i 的最近动词 e j 的最近动词 最近句法依赖动词 (锂离子电池，比亚迪) 锂离子电池 电解液 无 使用 无 (六氟磷酸锂产品，比亚迪) 六氟磷酸锂产品 电解液 是 使用 有 (电解液，比亚迪) 电解液 电解液 无 使用 无 表2. 最近依赖动词统计表 由上表可知，只有六氟磷酸锂产品与比亚迪之间存在最近依赖动词，其依存路径如下图9所示。因此，将六氟磷酸锂产品加入到供应关系中，获得供应关系为(多氟多，比亚迪，六氟磷酸锂产品)。同理，其余两个公司实体组处理方式相同，最终获得(多氟多，比亚迪，六氟磷酸锂产品)，(多氟多，杉杉股份，六氟磷酸锂产品)和(多氟多，新宙邦，六氟磷酸锂产品)三条企业供应关系。 图9. 实体依存路径图 句子中包含多组公司名称时，处理方式相同，同样是判断客户与产品之间是否存在最近句法依赖动词。当句子中出现多个产品名称或多个客户公司时，对于每一个公司实体对，本文补全产品名称的整体处理流程图如下图10所示。 图10. 利用最近句法依赖动词判断语义关系处理流程图 当句子中只出现一组产品名和一组公司名时，本文默认该产品名为供应关系中对应的产品或者产品组，不再进行额外处理，直接加入到供应关系中去。 3.4. 关系指示词库构建 构建关系指示词库主要基于两点考虑：1) 关系指示词的词频，上下文中某个关系指示词的词频越高，说明该词是一种常用词，越有可能作为实体对之间正确关系的表述；2) 实体与关系指示词之间的距离，具体值的是关系指示词和候选实体对之间在文本中间隔的字词数量，它们之间的距离越接近，说明关系指示词与实体对之间的联系越紧密。 基于以上的考虑，关系关键词库采用人工构建和自动构建相结合的方式。首先通过对上市公司年报语料的观察，筛选出9个关系关键词如表3所示。 Table 3 Examples of initial keyword 编号 词 1 供应商 2 业务 3 合作 4 客户 5 中标 6 销往 7 签订 8 签署 9 承揽 表3. 初始关键词示例 关键词库的扩展借鉴了拔靴法的思想，通过抽取两个句子间的公共词汇来进行词库的扩展，同时考虑了关键词的出现频率，兼顾了关键词提取的覆盖率和准确率，扩展流程如表4所示。 Table 4 Extension method of relation wor 输入：包含现有关系指示词库中关键词的语句集合， 输出：经过扩充以后的关系指示词库 过程： For each 语句集合 set 2. For each 关键词 k ∈ 关键词词库 3. For each 两个包含了同一个 k 且包含两个以上公司名称的不同语句 S1， S2 4. 寻找两个句子中的公共词组 5. 进行去停用词操作 将去停用词以后的关键词词组保存进备选词库，并计算出现频率 7. For each 备选词 word 8. IF word 出现频率大于0.3 THEN 9. 把该词添加到关系指示词库 10. END IF 1 End for 12. End for 13. End for 14. End for 表4. 关系指示词库扩展方法