2. 金融文本基础
在金融关系抽取与事件三元组构建任务中,模型的上限往往不由网络结构决定,而由输入文本的质量与理解深度决定。金融文本是一种高度专业化、格式多样、术语密集且噪声显著的语料,若直接套用通用 NLP 流程,抽取结果常出现实体边界错位、关系方向颠倒、事件要素缺失等问题。本节从文本类型、语言特点、术语体系、数据来源与预处理五个维度,建立后续抽取工作的语料认知基础。
一、核心原理:金融文本的四种类型与信息密度差异
金融文本并非单一文体,不同来源的文本在结构规整度、术语密度和事件承载能力上差异巨大。理解这些差异,才能为不同文本设计差异化的抽取策略。
- 公告类文本:如上市公司年报、临时公告、招股说明书。结构高度规范,包含固定章节(董事会决议、关联交易、股权变动),实体与关系往往以表格或条款形式出现,是关系抽取的优质语料。
- 新闻资讯类:如财经快讯、深度报道。语言接近自然语言,事件描述完整,但存在指代消解和情感倾向问题,适合事件三元组抽取。
- 研报与评论类:如券商研究报告、分析师点评。包含大量主观判断与预测性表述,关系常以隐含方式表达,抽取时需区分事实与观点。
- 结构化数据衍生文本:如行情摘要、财报数据播报。由模板生成,格式统一但信息冗余低,适合作为规则抽取的补充。
关键判断:同一关系在不同文本中的表达形式可能完全不同。例如“A公司收购B公司”在公告中写作“本次交易完成后,A公司将持有B公司100%股权”,在新闻中写作“A公司宣布全资收购B公司”,在研报中可能写作“A对B的整合有望增厚每股收益”。抽取模型必须能对齐这些异构表达。
二、金融文本的语言特点与术语体系
金融文本的语言特点可归纳为四点:术语密集、缩写与全称混用、数值与单位高度绑定、否定与条件结构频繁。例如“非公开发行”“可转债转股”“质押式回购”“同比扭亏”等术语,若按通用分词处理,极易被切碎,导致实体识别失败。
常见术语可按功能分为以下几类,预处理阶段应建立术语词典并参与分词与实体边界校正:
| 术语类别 | 典型示例 | 对抽取的影响 |
|---|---|---|
| 主体类 | 发行人、控股股东、实际控制人、一致行动人 | 决定关系抽取中的实体角色与方向 |
| 行为类 | 增持、减持、质押、回购、定增、并购 | 直接对应事件类型与关系谓词 |
| 状态类 | 停牌、复牌、退市风险警示、摘帽 | 影响事件状态判断与时间线构建 |
| 数值类 | 万元、亿元、百分点、同比、环比 | 数值归一化与单位换算的关键 |
此外,金融文本中大量使用被动语态和无主句,如“被出具警示函”“拟以自有资金出资”。这类结构在关系抽取时需通过上下文补全施事者,否则会丢失关键三元组。
三、数据来源与预处理流程
金融数据来源可分为公开渠道与授权渠道。公开渠道包括交易所公告、证监会指定信息披露平台、财经新闻网站;授权渠道包括Wind、同花顺、东方财富Choice等终端。不同来源的数据在格式、编码、更新频率上差异明显,预处理需统一处理。
标准预处理流程如下:
- 采集与去重:按股票代码、公告标题、发布时间进行去重,避免同一事件重复抽取。
- 格式解析:PDF公告需转为文本,HTML新闻需提取正文,表格需保留行列结构。
- 清洗与规范化:去除页眉页脚、广告、免责声明;统一全半角、繁简体、日期格式。
- 分句与分词:金融长句需按标点和语义切分,分词时加载金融术语词典。
- 实体预标注:识别公司名、人名、金额、日期、股票代码,为后续关系抽取提供候选。
- 质量抽检:人工抽样核对实体边界与关系方向,形成反馈修正规则。
# 示例:金融文本预处理关键参数
segmenter = FinancialSegmenter(
user_dict="finance_terms.txt", # 金融术语词典
keep_whitespace=False,
split_long_sentence=True,
max_sentence_len=180
)
normalizer = TextNormalizer(
full_to_half=True,
traditional_to_simple=True,
date_format="YYYY-MM-DD",
unit_map={"亿": 1e8, "万": 1e4}
)
实践建议:预处理阶段应保留原始文本与清洗后文本的映射关系。当抽取结果出现偏差时,可回溯到原文定位是分词错误、实体边界错误还是关系方向错误,避免盲目调参。
四、案例场景与常见误区复盘
以某上市公司公告为例,原文写道:“公司控股股东张三拟以协议转让方式向李四转让其持有的5%股份,转让完成后李四将成为公司第二大股东。”这段文本包含至少三个三元组:(张三,转让股份,李四)、(李四,成为,第二大股东)、(张三,控股股东,公司)。若预处理阶段未识别“控股股东”“协议转让”“第二大股东”等术语,分词结果会将“控股股东”切为“控股/股东”,导致实体角色丢失。
常见误区包括:
- 忽视文本类型差异:用新闻抽取模型直接处理公告,导致表格内关系漏抽。
- 术语词典覆盖不足:新出现的金融产品名称未及时更新,实体识别召回率下降。
- 数值单位未归一化:将“1.2亿”与“12000万”视为不同数值,影响事件一致性判断。
- 否定与条件结构误判:将“未发生实质性进展”误抽为“发生进展”,造成事件极性错误。
复盘要点:金融文本预处理不是一次性工作,而是伴随数据源变化持续迭代的工程。建议建立术语词典版本管理、预处理日志和抽样评估机制,确保每一批新数据进入抽取流程前都经过一致性校验。