核心中的核心算法

财务行为图谱风险引擎

这套算法不是单一模型,而是把专有本体、对象中心事件日志、财务行为图谱、画像基线、规则命中、人工反馈和可回放评测集组合成一套持续进化的风险控制系统。它的目标不是“给一个风险分”,而是解释清楚谁异常、哪里异常、依据是什么、历史如何处理、现在应该怎么做。

5
不可复制资产
专有本体、事件日志、反馈池、人机共审、回放评测。
8
第一版风险信号
重复票据、超标准、预算超额、附件缺失等。
10+
算法模块
本体、实体解析、过程挖掘、图特征、异常检测。
1
统一产物
所有风险最终沉淀为 `RiskObservation`。

不可复制壁垒

复杂算法本身可以被模仿,真正难复制的是长期运行中积累的语义、过程、反馈和评测资产。
Core Barrier
1

专有财务语义本体

把制度条款、费用类型、风险信号、审批场景、预算科目和票据要求归一为公司自己的语义协议。

2

对象中心事件日志

把申请、预算、票据、审批、付款、归档、复盘统一沉淀为可回放事件。

3

风险观察反馈池

每条风险都有证据路径、规则命中、画像偏离、图谱异常、人工结果和算法版本。

4

人机共审行为数据

记录采纳、驳回、补件、退回、升级审批、标记误报和候选规则生成。

5

可回放评测资产

用同一批历史单据、本体版本、规则版本、算法版本和反馈标签评估新算法。

结论:别人可以复制页面、名词和公开算法,但复制不了真实审批过程、公司制度语义、历史处理结果和长期回放集。算法壁垒必须从第一天开始沉淀这些资产。

总体架构

整体架构分为语义、事件、图谱、画像、推理、观察、反馈七层。每层只解决一个问题,避免规则中心、图谱引擎和数字员工职责混乱。
Seven Layers
语义层

本体解析

识别场景、意图、费用类型、风险信号、约束条件。

制度条款

把制度转成可引用、可版本化、可匹配的条款。

标准词典

统一供应商、费用类型、票据类型和风险信号。

事件层

业务事件

申请、提交、上传票据、审批、退回、付款、归档。

多对象日志

一个事件同时绑定单据、票据、员工、供应商和预算。

运行追踪

关联 AgentRun、数字员工任务和工具调用结果。

图谱层

节点

员工、部门、供应商、票据、单据、制度条款、规则。

提交、包含、使用票据、关联供应商、命中规则。

证据路径

形成可展示、可审计、可回放的风险解释链。

推理层

规则命中

确定性规则提供强证据,仍由规则中心治理。

画像偏离

员工、部门、供应商和费用类型的同类基线。

图谱异常

供应商集中、重复票据、审批链异常、时空冲突。

反馈层

人工确认

采纳、误报、忽略、退回、补件、升级审批。

离线回放

用历史样本评估规则和算法版本。

候选优化

生成规则候选、制度更新候选和抽审策略调整。

本体与风险图谱桥接

本体不是一个辅助字段,而是风险图谱的语义骨架。它决定节点类型、边类型、规则适用范围、风险信号口径和看板聚合维度。
Ontology First

本体输出最小协议

ontology_parse_id
ontology_version
domain
scenario
intent
entities
constraints
risk_signals
confidence

图谱节点标准字段

node_type
ontology_type
canonical_key
canonical_id
source_object_type
source_object_id
ontology_parse_id
ontology_version
本体实体 图谱节点 作用 示例
expense_type 费用类型节点 统一规则范围、画像基线和风险看板聚合。 hotel, travel, entertainment
risk_signal 风险信号节点 / 风险观察 把“住宿超标”“酒店超标”等近义说法合并。 accommodation_standard_deviation
document_type 单据、票据、合同、流水 支撑多凭证一致性校验。 invoice, payment_record
policy_clause 制度条款节点 让风险结论能引用制度依据。 差旅住宿标准第 3 条
vendor 供应商 / 商户节点 支撑供应商集中、别名归一、关联交易识别。 上海某酒店管理有限公司
关键约束:图谱边必须来自白名单,例如 submitteduses_invoicepaid_to_vendormatches_policy_clausetriggered_rule。数字员工不能自由创造运行时边类型。

RiskObservation 是唯一风险产物

规则命中、画像偏离、图谱异常、制度条款和人工反馈最终都必须合成风险观察。它是单据详情、工作记录、风险看板和算法回放的统一事实表。
Single Output

输入

  • 本体解析结果
  • 规则命中结果
  • 画像基线偏离
  • 图谱关系异常
  • 历史反馈和相似案例

输出

  • 风险分和风险等级
  • 证据链和制度依据
  • 建议动作和自动化模式
  • 算法版本和置信度
  • 人工反馈状态

用途

  • 单据详情解释风险
  • 工作记录展示任务产出
  • 风险看板聚合态势
  • 规则优化和误报分析
  • 离线回放和算法评测

核心结构

RiskObservation
  subject_type / subject_id
  risk_type / risk_signals_json
  severity / score / confidence_score
  ontology_parse_id / ontology_version
  domain / scenario / intent
  evidence_items_json / evidence_path_json
  related_policy_clauses_json
  comparable_baseline_json
  suggested_actions_json
  source_type / source_id
  automation_mode / control_stage / control_mode
  algorithm_version / feedback_status

风险评分模型

第一版采用可解释加权模型,不用黑盒模型直接给最终结论。复杂模型只提供候选证据,强结论必须能解释。
Explainable Score
risk_score = clip( 0.35 * S_rule + 0.25 * S_anomaly + 0.20 * S_graph + 0.15 * S_policy + 0.05 * S_history, 0, 100 )
S_rule 来自规则中心命中,S_anomaly 来自画像基线偏离,S_graph 来自图谱关系异常,S_policy 来自制度语义,S_history 来自历史反馈。

同类基线偏离

deviation = (x - median(peer)) / max(IQR(peer), epsilon) S_anomaly = 100 * sigmoid(k * (deviation - tau))
用于金额、频次、天数、退回率等指标。样本不足时必须记录降级口径。

图谱异常分

S_graph = min(100, sum(w_i * g_i))
候选信号包括重复票据、供应商集中、审批链异常、时空冲突和相似单据异常。
分数项 证据来源 可解释依据 是否可单独强拦截
S_rule 规则中心 / 决策表 规则版本、命中条件、输入快照。 强制度规则可拦截。
S_anomaly 画像基线 同部门、同职级、同费用类型分位偏离。 不可单独拦截。
S_graph 图谱路径 供应商集中、重复票据、异常审批路径。 高证据覆盖时可复核拦截。
S_policy 制度条款 费用说明、票据、制度条款是否一致。 需结合规则和证据。
S_history 人工反馈 相似单据退回率、确认率、误报率。 不单独拦截,影响权重和门控。

证据链如何展示

图谱不要默认展示成全量关系网。产品上要展示小范围、场景化、可解释的证据链。
Evidence Path
员工张三,P8,研发中心
单据差旅报销 4,860 元
票据酒店发票,1,260 元/晚
供应商上海某酒店
基线同级别 P90 为 760 元/晚
制度住宿标准第 3 条
历史相似 12 笔,8 笔退回

单据详情

面向审批人,解释当前单据为什么异常、应该怎么处理。

工作记录详情

面向管理员,解释数字员工本次任务处理了哪些实体、发现了哪些风险。

风险看板

面向财务和管理层,展示整体风险态势、算法效果和抽审结果。

深度算法层

这些模块构成算法复杂度,但必须全部回到可解释证据和 `RiskObservation`,不能变成不可审计黑盒。
Algorithm Stack

对象中心过程挖掘

把申请、票据、预算、审批、付款、供应商放入多对象事件日志,识别跳步审批、流程绕行、返工循环和付款前异常。

实体解析与主数据归一

归一供应商、商户、酒店、银行户名、员工姓名,避免同一主体被拆成多个节点。

异构图与时序图特征

计算员工、部门、供应商、票据、规则、制度之间的元路径、中心性、邻域风险密度和关系突增。

多模型异常检测组合

组合稳健统计、孤立森林、局部离群、时间突变和周期偏离,但只作为候选风险证据。

决策建模与策略即代码

把规则中心的确定性规则拆成决策表、策略运行和决策追踪,保证版本化和可审计。

反事实风险建议

给出降低风险分的可执行补救动作,例如补充酒店水单、选择协议酒店或增加预算负责人复核。

数据血缘与质量门禁

记录风险观察使用了哪些表、文档、OCR、AgentRun、规则版本和本体版本;低质量数据不触发强风控。

可解释与不确定性控制

保存特征贡献、置信度、低置信度原因和人工复核要求,让每个结论都能被复查。

人机共审门控

系统不应让 AI 直接通过或驳回单据。自动化必须由置信度、风险等级、证据覆盖、历史误报率和金额影响共同决定。
Human in the Loop
if confidence >= theta_auto and severity <= medium and evidence_coverage >= 2 and false_positive_rate <= alpha: automation_mode = "auto" elif confidence >= theta_semi and evidence_coverage >= 1: automation_mode = "semi_auto" else: automation_mode = "assist"
`assist` 只给建议,`semi_auto` 可半自动但保留抽审,`auto` 只允许低风险、高置信、证据充分、历史误报低的场景。

高风险

全量复核,必须展示完整证据链和制度依据。

中风险

按风险类型、金额和历史误报率进入抽审。

低风险

可进入小比例随机抽审,用于监控漏报。

低置信

只生成候选观察,不触发强拦截。

产品体现

核心算法不能只存在后端。它必须在用户能理解的地方体现:详情解释单点风险,看板解释整体态势,工作记录解释数字员工产出。
Product Surface
单据详情风险证据链、基线对比、制度条款、建议动作。
工作记录详情任务范围、处理数量、风险观察、异常关系。
风险看板总览、分布、趋势、排行、算法效果。
规则中心规则定义、版本、测试、发布、候选规则审核。
画像详情员工、部门、供应商和费用类型长期基线。
页面 用户 回答的问题 数据来源
单据详情 审批人 这张单为什么异常,应该怎么处理。 RiskObservation + evidence_path
数字员工工作记录 管理员 这次任务处理了什么,产出了什么风险。 AgentRun + RiskObservation
风险看板 财务 / 管理层 整体风险态势、确认率、误报率、抽审效率。 RiskObservation 聚合
规则中心 管理员 规则如何定义、测试、发布和回滚。 risk_rules + rule_runs

实施路线

第一版不要一次引入全部复杂算法。先打通最小闭环,然后逐步增强图谱、过程挖掘和评测体系。
Execution Plan
建立本体桥接和 RiskObservation

把本体解析、规则命中、画像偏离、图谱路径和人工反馈统一进风险观察模型。

实现第一批 8 个高价值风险信号

重复票据、金额超标准、预算超额、附件缺失、报销发票金额不一致、申请报销不一致、时间地点不一致、供应商集中异常。

落地三个产品入口

单据详情风险证据链、数字员工工作记录详情、分析看板风险看板。

沉淀反馈与回放集

记录人工采纳、误报、退回、补件和升级审批;建立历史样本回放能力。

引入深度算法模块

逐步加入实体解析、对象中心过程挖掘、异构图特征、异常检测组合和反事实建议。