当 BERT 在金融圈里“翻车”:语义、情绪与真实的风险
哈喽大家好,我是小叶。
最近在整理一份关于“非结构化文本风控”的笔记。如果你关注 NLP 在金融领域的应用,一定听过 FinBERT。它的核心逻辑是在通用的 BERT 基础上,用了大量的路透社新闻和 10-K 报表做二次预训练。
听起来很牛,对吧?我也曾觉得这就是风控的“银弹”。但当我真正把这些模型丢到某几家暴雷公司的年报里时,我发现:AI 也会被“话术”耍得团团转。
1. 那些被“掩盖”的风险词汇
在金融文本里,真正的风险往往不是直接说“我们要倒闭了”,而是用极其隐晦的修辞。比如:“鉴于宏观环境的不确定性,公司正在积极优化资产结构。”
在通用 BERT 眼里,“积极”、“优化”、“结构”全是正面词汇。哪怕是 FinBERT,如果预训练语料里这种“官样文章”太多,它也会学到一种偏见:只要辞令足够体面,风险就不存在。
我的反思:
AI 擅长的是“概率提取”,而不是“逻辑挖掘”。在风控场景下,我们要找的不是“情绪”,而是“异常”。比如,如果一家公司连续三年的 MD&A(管理层讨论与分析)段落重复率高达 90%,这本身就是一种巨大的风险信号——说明他们根本没在认真经营,或者在隐瞒什么。
2. 🛠️ 实战中的小技巧:不仅看它说了什么,更要看它没说什么
如果你现在在做类似的项目,我建议你别只盯着 [CLS] 向量的情感分类结果。试试这几个思路:
- 相似度对比:计算今年年报和去年年报的余弦相似度(Cosine Similarity)。如果相似度过高,说明公司在“复制粘贴”;如果相似度极低,说明业务发生了剧变。
- 证据链提取:别让模型只输出“风险等级:高”。要求它输出“依据段落”。你会发现,当要求模型给出证据时,很多所谓的“高风险”其实只是因为文本里提到了几个敏感词,而不是逻辑上的风险。
- 负面实体关联:结合图神经网络(GNN)。如果 BERT 识别出年报里提到了某家关联公司,而 GNN 发现那家公司已经违约了,这才是真正的预警。
3. 给同行的一点真心话
现在大家都在卷大模型(LLM),卷参数量。但金融风控最缺的不是算力,是对金融常识的对齐。
我曾见过一个模型给某家公司的“大幅计提减值”打了高分(正面),因为它觉得“大幅”、“增加”是积极信号。这就是典型的缺乏常识。
我的做法:
我现在会在 Prompt 或者微调(Fine-tuning)时,加入一套“金融逻辑约束”。比如:明确告知模型,“计提减值”在大多数情况下是负面财务信号,“关联交易增加”是潜在的利益输送信号。只有把这些“内功”打扎实,模型才不会变成一个只会玩文字游戏的复读机。
4. 碎碎念
其实,做风控的人都有点“悲观主义”。我们总是在寻找那 1% 的崩塌可能。AI 的加入,是为了帮我们把那些繁琐的阅读工作自动化,而不是取代我们的判断力。
最近我在尝试用 RAG(检索增强生成)去对比不同券商对同一份财报的解读差异。发现这种“分歧”往往蕴含着巨大的套利空间。等我跑通了,再跟大家细聊。
合规提醒:本文仅供学术探讨。风控模型需经过严格回测与压力测试,不建议直接用于信贷决策。