You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Excel表格读取数据训练SpaCy自定义实体模型

问题解答

完全可以将大批量SpaCy训练数据存储在Excel中,只需在训练前将Excel内容转换为SpaCy要求的TRAIN_DATA格式即可,不会影响正常训练流程。

Excel存储规范

你可以按照以下规则设计Excel表格的列,降低后续格式转换的出错概率:

  • 列1:text,存储完整的待标注文本,比如Who is Shaka Khan?
  • 列2:entity_start,存储实体的起始索引,需和SpaCy的索引规则保持一致,从0开始计数
  • 列3:entity_end,存储实体的结束索引,需符合SpaCy的左闭右开规则
  • 列4:entity_type,存储实体的类型标签,比如PERSON、LOC

如果一条文本对应多个实体,给每个实体单独占一行即可,text列重复填充同一段文本。

格式转换示例代码

你可以借助pandas读取Excel后批量转换为目标格式,参考代码如下:

import pandas as pd

# 读取Excel训练数据
df = pd.read_excel("你的训练数据存储路径.xlsx")

train_data = []
# 按文本内容分组,聚合同一段文本的所有实体
for text, group in df.groupby("text"):
    entities = []
    for _, row in group.iterrows():
        entities.append((row["entity_start"], row["entity_end"], row["entity_type"]))
    train_data.append((text, {"entities": entities}))

转换后得到的train_data就可以直接用于SpaCy模型训练,和你原本直接定义的TRAIN_DATA格式完全一致。

注意事项
  • 要确保Excel中存储的实体起始、结束索引和SpaCy的索引规则完全匹配,避免出现实体偏移报错
  • 如果数据体量极大,建议分批读取Excel内容进行转换,避免内存占用过高
  • 转换完成后可以随机抽取几条数据和原Excel标注对照,确认格式转换没有出错

内容的提问来源于stack exchange,提问作者user17551439

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 01:06:00