warfbro's picture
Upload README.md with huggingface_hub
fe9a41e verified
|
Raw
History Blame Contribute Delete
2.37 kB
metadata
language:
  - zh
license: apache-2.0
pipeline_tag: token-classification
tags:
  - pytorch
  - transformers
  - named-entity-recognition
  - token-classification
  - ner
  - ernie
  - crf
  - chinese-nlp
  - person-name-extraction
  - financial-documents
library_name: transformers
base_model: nghuyong/ernie-3.0-base-zh

人名提取 — Human Name Extraction

基于 ERNIE 3.0 + CRF 的中文金融批复人名提取工具。双模型集成架构,差异自动交 LLM 裁定。

模型说明

  • 底模:ERNIE 3.0 Base (Chinese),118M 参数
  • 架构:ERNIE 编码器 → Linear(768→3) → CRF (BIO 标注)
  • 任务:从金融监管批复标题中提取人名(B-PER / I-PER)
  • 训练数据:2,530 条正例 + 1,000 条对抗负例(地名/公司名误识别)

双模型

权重文件 说明
finetune_best.pt 全参数微调(ERNIE 不冻结)
frozen_best.pt 冻结 ERNIE + 对抗训练

快速开始

pip install torch>=2.4.0 "transformers==4.46.0" pytorch-crf openpyxl pandas "numpy<2"

# 单模型提取
python extract.py input.xlsx output.xlsx

# 双模型集成(差异交 LLM 裁定)
python ensemble_extract.py input.xlsx output.xlsx

输入格式

xlsx:A 列(标题),L 列(机构名等需在标题中删除的内容)

输出

内容
A列 原始标题
B列 提取人名(分隔)
C列 方法(一致/LLM裁定
D列 姓名字数

流水线

标题 → L列机构名剔除 → 模型推理 → 去等N人 → 英文括号扩展 → 存在性校验 → 输出

LLM 配置(集成裁定用)

项目根目录 llm 文件,OpenAI 兼容格式:

api_key=sk-xxxxxxxx
api_url=https://api.deepseek.com/chat/completions
model=deepseek-chat

文件结构

├── config.py            # 全局配置
├── model.py             # 模型定义 (ErnieCRF)
├── extract.py           # 单模型提取入口
├── ensemble_extract.py  # 双模型集成提取
├── llm_resolver.py      # LLM API 调用
├── rule.py              # 规则提取(备选)
├── finetune_best.pt     # 模型A 权重
├── frozen_best.pt       # 模型B 权重
├── llm                  # LLM 配置模板
└── README.md            # 本文件