中文金融术语抽取模型 (BERT)

基于 BERT 的中文金融术语抽取模型,用于从中文文本中识别领域相关术语。


🧠 模型简介

该模型基于 bert-base-chinese 微调,执行 token-level 分类(NER风格),用于识别文本中的金融术语。

模型适用于翻译辅助、术语提取、金融文本分析等场景。


🏗️ 训练流程

模型使用 Hugging Face Transformers + Datasets 构建完整训练管线。

数据处理

  • 输入格式:CoNLL 格式(token + label)
  • 每个句子以空行分隔
  • 自动构建:
    • label2id
    • id2label
  • 自动划分训练/验证集:
    • dev_ratio = 0.1

🔤 分词与标签对齐

  • 使用:BertTokenizerFast
  • 设置:
    • is_split_into_words=True
  • 使用 word_ids() 对齐 token 与标签
  • 特殊 token(CLS/SEP/PAD)标记为 -100(忽略 loss)

⚙️ 训练配置

  • Base model: bert-base-chinese
  • 任务:Token Classification(NER)
  • 框架:Hugging Face Trainer

超参数

  • learning_rate: 2e-5
  • batch_size: 16
  • num_train_epochs: 5
  • max_seq_length: 256
  • weight_decay: 0.01

🧪 训练策略

  • 评估策略:每个 epoch
  • 保存策略:每个 epoch
  • 最优模型选择:
    • 指标:F1
    • load_best_model_at_end=True

日志

  • TensorBoard logging
  • 每 50 step 记录一次

⚡ 硬件优化

  • 支持 fp16(自动检测 GPU)
  • 提升训练效率

📊 评估方法

使用 seqeval 进行序列标注评估:

  • F1 score(主要指标)
  • classification report(训练时打印)

示例输出:

precision    recall  f1-score   support
...
🎯 适用场景

该模型适用于:

中文金融术语抽取
翻译流程中的术语识别
CAT 工具辅助
金融领域 NLP 任务
🚫 不适用场景

不建议用于:

通用 NER 任务
医疗/法律等高风险领域
无人工审核的自动决策
🚀 使用方法
from transformers import pipeline

pipe = pipeline(
    "token-classification",
    model="你的用户名/bert-base-chinese-finance-term-extractor",
    aggregation_strategy="simple"
)

text = "公司发行了可转换债券和金融衍生品。"
print(pipe(text))
🧾 示例

输入:

"公司发行了可转换债券和金融衍生品。"

输出:

["可转换债券", "金融衍生品"]

⚠️ 局限性
模型针对金融领域,跨领域泛化能力有限
对未见术语识别能力有限
分词可能影响长术语识别
建议人工校验
📜 许可证

该模型基于 CC BY-NC 4.0 数据训练:

✅ 允许非商业使用
❌ 禁止商业用途(除非获得授权)
✅ 需要署名

基础模型 bert-base-chinese 为 Apache 2.0,但微调模型受数据集限制。

🙏 致谢
Base model: bert-base-chinese
Dataset: WMT 2025 术语资源
Framework: Hugging Face Transformers & Datasets
Evaluation: seqeval
Downloads last month
28
Safetensors
Model size
0.1B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for owen4512/bert-base-chinese-finance-term-extractor

Finetuned
(276)
this model