4. 数据采集与样本来源:金融数据源分类与采集方法
金融知识图谱的构建质量,从根本上取决于数据采集环节的完整性与准确性。样本偏差往往在数据源头就已埋下,因此理解金融数据源的分类、掌握正确的采集方法、执行严格的数据质量初筛,是偏差校验的第一道防线。
4.1 金融数据源分类:结构化、半结构化、非结构化
金融领域的数据来源广泛,按数据结构化程度可分为三大类。不同类型的数据在采集方式、存储格式、清洗难度上差异显著,直接影响样本偏差的引入方式。
| 数据类别 | 典型特征 | 金融领域示例 | 偏差风险点 |
|---|---|---|---|
| 结构化数据 | 严格的行列格式,字段类型固定,关系明确 | 交易流水、资产负债报表、客户信息表、行情K线 | 字段缺失、异常值、时间戳对齐错误 |
| 半结构化数据 | 具有标签/标记,但无严格固定模式,自描述 | JSON/XML格式的财报、监管公告、新闻RSS | 嵌套层级不一致、字段名变更、编码问题 |
| 非结构化数据 | 无预定义数据模型,以自然语言或二进制形式存在 | 研报PDF、新闻文本、电话会议录音、社交媒体舆情 | 实体歧义、情感偏差、OCR错误、时效性滞后 |
实践提示:在金融图谱项目中,结构化数据通常作为“事实锚点”,半结构化数据提供“关系线索”,非结构化数据贡献“语义扩展”。三者结合时,必须注意时间窗口对齐与实体统一标识,否则极易引入样本选择偏差。
4.2 数据采集方法:API、爬虫、数据库
针对不同数据源,需采用差异化的采集策略。以下对比三种主流采集方法的技术特点与适用场景。
- API(应用程序接口):官方提供的数据获取通道,如Wind、Bloomberg、Tushare、东方财富Level-2行情API。优点是数据规范、实时性高、合规性强;缺点是频次受限、字段固定、成本较高。
- 爬虫(Web Scraping):针对公开网页或非结构化文档的自动化采集,如证监会公告、上市公司官网、财经新闻。优点是灵活获取非标数据;缺点是受反爬机制影响、法律合规风险、数据一致性差。
- 数据库直连:从内部数据仓库或第三方数据库(如Oracle、MySQL、MongoDB)直接抽取。适用于历史交易数据、客户主数据等结构化信息;优点是数据完整、可追溯;缺点是权限管理严格、跨库数据对齐复杂。
采集策略建议:优先使用API获取核心金融指标,用爬虫补充非结构化舆情与公告,通过数据库直连拉取内部交易与客户数据。三者形成“API+爬虫+DB”的混合采集架构,可有效降低单一来源的样本偏差。
4.3 数据质量初筛:四维校验法
数据进入图谱构建流程前,必须经过系统化的质量初筛。我们推荐“四维校验法”,从完整性、一致性、时效性、异常值四个维度进行快速评估。
- 完整性校验:检查必填字段是否缺失,如证券代码、交易日期、金额字段。缺失率超过5%的字段需标记并评估是否可插补。
- 一致性校验:验证同一实体在不同数据源中的标识是否统一,如“600519.SH”与“贵州茅台”的映射关系。不一致记录需建立别名表。
- 时效性校验:确认数据时间戳是否在预期范围内,是否存在未来数据或过期数据。金融数据通常要求T+1以内。
- 异常值检测:使用统计方法(如Z-score、IQR)或业务规则(如涨跌幅超过±10%)识别离群点,防止极端值扭曲图谱关系。
常见偏差陷阱:仅依赖单一数据源(如仅用爬虫获取新闻)会导致“来源覆盖偏差”;忽略非结构化数据的时效性(如使用过时研报)会引入“时间滞后偏差”。初筛阶段必须记录每条数据的来源、采集时间、质量标记,形成数据血缘。
4.4 实战案例:企业财报数据采集与初筛
以构建“上市公司财务知识图谱”为例,展示数据采集与初筛的完整流程。
- 数据源选择:结构化数据(Wind API获取三大报表)、半结构化数据(爬取巨潮资讯网PDF公告)、非结构化数据(爬取券商研报文本)。
- 采集方法:Wind API定时拉取日频数据;Scrapy框架爬取PDF并解析表格;BeautifulSoup提取研报关键段落。
- 初筛结果:完整性校验发现3%的财报缺失“现金流量表”;一致性校验发现“营业收入”字段在API与PDF中存在单位差异(万元 vs 元);时效性校验发现部分研报发布时间晚于财报截止日30天以上;异常值检测识别出2条营收增长率超过1000%的极端记录。
偏差校验要点:对于缺失的现金流量表,需评估是否采用行业均值插补或直接剔除;单位不一致问题必须建立标准化映射表;过时研报应设置时间窗口过滤;极端值需回溯原始公告确认是否为真实数据(如重组导致)。这些初筛动作直接决定了图谱中“财务指标”节点的可靠性。