102 lines
3.0 KiB
Markdown
102 lines
3.0 KiB
Markdown
# AutoSchemaKG 思路在 new2 中的落地方式
|
||
|
||
参考:
|
||
|
||
- Paper: https://arxiv.org/abs/2505.23628
|
||
- GitHub: https://github.com/HKUST-KnowComp/AutoSchemaKG
|
||
- 代码中可重点参考:
|
||
- `atlas_rag/kg_construction/triple_extraction.py`
|
||
- `atlas_rag/kg_construction/concept_generation.py`
|
||
|
||
## 不能照搬的部分
|
||
|
||
AutoSchemaKG 偏开放域文本 KG,目标是无需预定义 schema 自动构建 ATLAS。当前项目是城市知识图谱,已经有高德 POI 这种结构化、高可信、带坐标的数据源。因此 new2 不应完全抛弃领域锚点,而应采用混合架构:
|
||
|
||
```text
|
||
结构化高可信数据:作为 Anchor Layer
|
||
非结构化多源数据:作为 Evidence Layer
|
||
LLM 抽取:产出 Candidate Knowledge
|
||
Schema 自动演化:只生成 Proposal,不直接改生产图谱
|
||
```
|
||
|
||
## 要吸收的核心思想
|
||
|
||
AutoSchemaKG 的关键不是“多抽几个三元组”,而是:
|
||
|
||
1. 抽取阶段覆盖实体、事件、实体关系、事件关系。
|
||
2. 把 Relation 本身也作为可概念化对象。
|
||
3. 通过 Conceptualization 给实例和关系建立抽象语义桥。
|
||
4. Schema 不是一次写死,而是由数据持续诱导与修正。
|
||
|
||
对应到 new2:
|
||
|
||
```text
|
||
stage_1: Entity-Entity Relation
|
||
stage_2: Entity-Event Participation / HappensAt
|
||
stage_3: Event-Event Relation
|
||
stage_4: Concept Induction
|
||
stage_5: Schema Proposal & Review
|
||
```
|
||
|
||
## new2 的统一抽取输出
|
||
|
||
每次抽取必须输出:
|
||
|
||
```json
|
||
{
|
||
"entities": [],
|
||
"events": [],
|
||
"concepts": [],
|
||
"relations": [],
|
||
"statements": [],
|
||
"schema_proposals": [],
|
||
"evidence_links": []
|
||
}
|
||
```
|
||
|
||
其中:
|
||
|
||
- `entities`:现实对象,例如地点、机构、人物、设施。
|
||
- `events`:有时间锚点或动作过程的事实。
|
||
- `concepts`:抽象类别、主题、场景、标签、业务语义。
|
||
- `relations`:关系类型定义或候选关系。
|
||
- `statements`:带主语、谓词、宾语、证据、置信度的候选事实。
|
||
- `schema_proposals`:模型发现的新类型、新字段、新关系建议。
|
||
|
||
## Schema Auto 更新原则
|
||
|
||
模型不能直接修改正式 schema。正确流程是:
|
||
|
||
```text
|
||
抽取发现新类型/字段/关系
|
||
-> 写入 schema_proposals
|
||
-> 合并相似 proposal
|
||
-> 统计证据数量、来源数量、置信度
|
||
-> 人工审核
|
||
-> 生成 schema version
|
||
-> 后续抽取使用新版本 schema
|
||
```
|
||
|
||
## 城市领域初始 Seed Schema
|
||
|
||
城市 KG 先给一个轻量 seed,不要过度建模:
|
||
|
||
```text
|
||
Entity:
|
||
Place, Area, Organization, Person, Facility, Product, Route
|
||
|
||
Event:
|
||
OpeningEvent, RenovationEvent, FestivalEvent, HistoricalEvent,
|
||
AwardEvent, OperationChangeEvent, IncidentEvent
|
||
|
||
Concept:
|
||
NightTour, LocalFood, HistoricalLandmark, BusinessDistrict,
|
||
FamilyFriendly, FirstTimerFriendly, CulturalTourism, TransitConvenient
|
||
|
||
Relation:
|
||
LOCATED_IN, NEAR, IN_CELL, HAS_CONCEPT, HAS_EVENT, SUPPORTED_BY,
|
||
OPERATED_BY, HAS_FACILITY, PARTICIPATED_BY, BEFORE, AFTER, RELATED_TO
|
||
```
|
||
|
||
后续业务迁移时,只替换 seed schema 与 prompt,不替换 KG 内核。
|