3. 金融知识图谱基础:实体、关系、属性的概念;典型金融图谱结构(公司、人物、事件)

在构建金融知识图谱并进行样本偏差校验之前,必须首先理解知识图谱的核心构成要素。金融知识图谱本质上是一种语义网络,它通过实体(Entity)、关系(Relation)和属性(Attribute)三个基本元素,将金融领域中的离散数据转化为结构化的知识体系。本章将系统阐述这三个核心概念,并解析典型的金融图谱结构。

3.1 核心概念定义

知识图谱的三要素构成了其底层数据模型的基础。理解它们的定义与区别,是后续进行数据质量评估和偏差校验的前提。

概念 定义 金融领域示例 数据质量关注点
实体 客观存在且可相互区分的对象,是图谱中的节点。 “贵州茅台酒股份有限公司”、“张三”、“2024年三季报” 实体唯一性、别名合并、缺失检测
关系 实体之间的语义连接,是图谱中的边。 “持股”、“担任”、“隶属于”、“发生” 关系方向性、冗余关系、关系类型错误
属性 描述实体或关系的特征信息,通常以键值对形式存在。 实体属性:“注册资本”、“成立日期”;关系属性:“持股比例”、“任职起始日” 属性值缺失、格式不一致、异常值
样本偏差校验提示: 在金融图谱中,实体对齐(Entity Alignment)是常见的偏差来源。例如,同一家公司在不同数据源中可能被记录为“贵州茅台”、“贵州茅台酒股份有限公司”或“600519.SH”,若未正确合并,将导致关系网络断裂,进而影响基于图结构的抽样代表性。

3.2 实体、关系、属性的详细解析

3.2.1 实体(Entity)

实体是知识图谱中的基本单元。在金融领域,实体通常具有明确的业务含义和唯一标识符(ID)。常见的金融实体类型包括:

  • 公司实体: 上市公司、非上市公司、子公司、母公司等。
  • 人物实体: 高管、股东、实际控制人、分析师、监管人员等。
  • 金融产品实体: 股票、债券、基金、期货、保险产品等。
  • 事件实体: 并购、增发、股权质押、违约、分红等。
  • 宏观实体: 行业、地区、指数、监管政策等。

3.2.2 关系(Relation)

关系定义了实体之间的语义连接,通常表示为(头实体,关系,尾实体)的三元组形式。关系可以是有向的,也可以是无向的。金融图谱中的典型关系包括:

  • 股权关系: “A公司 持股 B公司”、“张三 持有 A公司股票”。
  • 任职关系: “张三 担任 A公司 董事长”。
  • 交易关系: “A公司 收购 B公司”、“A公司 向 C银行 贷款”。
  • 隶属关系: “A公司 属于 白酒行业”、“张三 是 高净值客户”。
  • 事件关联: “A公司 发生 股权质押事件”、“张三 涉及 内幕交易案”。

3.2.3 属性(Attribute)

属性为实体和关系提供更细致的描述。属性值通常是具体的数值、日期、字符串或枚举值。属性质量直接影响图谱的分析能力。

  • 实体属性示例:
    • 公司:{“注册资本”: “100亿”, “上市日期”: “2001-08-27”, “员工人数”: 20000}
    • 人物:{“出生年份”: 1965, “学历”: “硕士”, “国籍”: “中国”}
  • 关系属性示例:
    • 持股关系:{“持股比例”: 0.25, “持股起始日”: “2020-01-01”, “股份性质”: “流通A股”}
    • 任职关系:{“任职起始日”: “2018-06-15”, “任职终止日”: “2024-06-14”, “职务类型”: “独立董事”}
实践建议: 在构建图谱时,建议将频繁用于查询和推理的字段建模为关系,将描述性、低频查询的字段建模为属性。例如,“持股比例”通常建模为关系属性,因为它与具体的持股行为强相关。

3.3 典型金融图谱结构

基于上述三要素,金融知识图谱通常围绕核心实体构建复杂的网络结构。以下展示两种最典型的图谱结构:公司-人物-事件关联网络和供应链上下游网络。

3.3.1 公司-人物-事件关联网络

这是金融风控和投研中最常用的图谱结构。它通过人物(高管、股东)将公司与各类事件连接起来,形成“人-企-事”的三角关系。

公司-人物-事件关联网络示例 公司实体 贵州茅台酒股份有限公司 人物实体 张三(董事长) 人物实体 李四(大股东) 事件实体 股权质押事件 担任 持股 涉及 涉及 发生 图例:蓝色-公司节点 | 红色-人物节点 | 橙色-事件节点 | 箭头表示关系方向 该结构常用于关联交易识别、实际控制人追溯、风险传导路径分析。

3.3.2 供应链上下游网络

在产业链分析中,公司之间的供应、销售、竞争关系构成了另一类重要图谱。这种结构有助于识别系统性风险和行业集中度偏差。

供应链上下游网络示例 上游供应商 A原材料公司 核心公司 B制造企业 下游客户 C零售商 竞争对手 D同行业公司 监管/行业 证监会/行业协会 供应 销售 竞争 监管 供应链图谱用于分析 上下游依赖度和风险传导。

3.4 图谱结构在样本偏差校验中的意义

理解上述图谱结构对于样本偏差校验至关重要。不同的图谱结构会导致不同的偏差类型:

  • 度分布偏差: 在“公司-人物”网络中,少数核心人物(如实际控制人)可能拥有极高的连接度(Degree),导致图采样时过度代表这些中心节点,而忽略边缘节点。
  • 关系类型不平衡: 如果图谱中“持股”关系占比超过90%,而“担保”、“关联交易”等关系极少,则基于关系的样本可能无法反映真实的风险分布。
  • 属性缺失偏差: 在事件实体中,如果“违约事件”的属性(如违约金额、违约日期)大量缺失,则基于该事件构建的训练样本将存在系统性偏差。
关键提醒: 在进行样本偏差校验前,必须首先对图谱的元数据进行统计描述,包括实体类型分布、关系类型分布、属性填充率等。这些统计量是后续偏差检测的基线。例如,若发现“人物”实体数量远低于“公司”实体,则需警惕人物实体抽取的召回率问题。

3.5 三元组数据模型示例

在实际存储中,知识图谱通常以三元组(Triple)的形式组织。以下是一个简单的Python数据模型示例,用于表示金融图谱中的三元组:

# 金融知识图谱三元组数据模型示例
from dataclasses import dataclass
from typing import Optional, Dict, Any

@dataclass
class Triple:
    head_id: str          # 头实体ID
    relation: str         # 关系类型
    tail_id: str          # 尾实体ID
    attributes: Optional[Dict[str, Any]] = None  # 关系属性

# 示例:构建一个持股关系三元组
triple = Triple(
    head_id="company_600519",
    relation="持股",
    tail_id="person_zhangsan",
    attributes={
        "持股比例": 0.05,
        "持股起始日": "2022-03-15",
        "股份性质": "流通A股"
    }
)

print(f"三元组: ({triple.head_id}, {triple.relation}, {triple.tail_id})")
print(f"关系属性: {triple.attributes}")

该数据模型清晰地展示了实体(通过ID引用)、关系(字符串类型)和属性(字典)的分离。在样本偏差校验中,我们可以基于此模型统计不同关系类型的样本量、属性缺失率等关键指标。