AI 语料长度怎么分析?统计分位数、长文本占比与空文本

准备 AI 训练语料前,先看长度分布比只看平均长度有用:少量长文本可能决定截断和分批策略。下面统计字符数的分位数、空文本数量和超过教学阈值的比例,同时区分字符长度与模型 token 数。

准备 AI 训练语料前,先看长度分布比只看平均长度有用:少量长文本可能决定截断和分批策略。下面统计字符数的分位数、空文本数量和超过教学阈值的比例,同时区分字符长度与模型 token 数。

环境与运行方法

本文代码在 Windows、Python 3.11 的本地独立环境执行通过。以下数据全部为人为构造的教学样本,不是客户数据,也不是业务效果测试。

AI 语料长度怎么分析?统计分位数、长文本占比与空文本

新建一个空目录,在终端执行安装命令,把后面的完整代码保存为 demo.py,再执行 python demo.py。文件输出均保存在运行目录,请先在空目录练习。

python -m pip install numpy==2.4.6

明确长度单位与清洗口径

示例对文本 strip 后使用 Python len 计数,得到 Unicode 字符串长度。汉字、标点、英文字母和空格如何计算由这一口径决定;它不等于特定分词器的 token 数,也不等于用户肉眼看到的字形数量。

统计时保留空文本计数,长度分位数则只使用非空文本,避免把空值混入真实内容长度。正式数据的 None、非字符串与编码错误应该单独列异常,不要统一转成字符串“None”。

同时看尾部和代表样本

示例输出 p50、p90、p95、最大值,并统计字符长度大于10的占比。10只是小样本演示阈值;训练时应按模型和分词器确定可接受的 token 上限。默认分位数插值可能得到非整数,这是统计位置插值,不表示文本具有小数字符。

看到长尾后,抽查最长文本的来源和格式,检查是否是拼接错误、模板重复或合法长文。不要仅为了统一长度删除长文;可考虑分段或改变批次,但应保留来源与段落关系。

可复制的完整代码

import numpy as np
from collections import Counter
texts = ["", "   ", "你好", "学习机器学习", "模型需要可靠训练数据", "甲" * 30]
lengths = [len(t.strip()) for t in texts]
nonempty = np.array([n for n in lengths if n > 0])
if nonempty.size == 0:
    raise ValueError("没有非空文本,不能计算长度分位数")
print("all_lengths", lengths)
print("empty_count", sum(n == 0 for n in lengths))
print("quantiles", np.quantile(nonempty, [0.5, 0.9, 0.95]).round(2).tolist())
print("max", int(nonempty.max()))
print("share_over_10", round(float((nonempty > 10).mean()), 3))
print("length_counts", dict(sorted(Counter(lengths).items())))
assert len(nonempty) == 4 and max(lengths) == 30

运行结果与核对方法

下面是本文教学代码在上述本地环境中的实际输出。浮点数末位可能随依赖版本变化。

all_lengths [0, 0, 2, 6, 10, 30]
empty_count 2
quantiles [8.0, 24.0, 27.0]
max 30
share_over_10 0.25
length_counts {0: 2, 2: 1, 6: 1, 10: 1, 30: 1}

首先核对6条样本里有2条清洗后为空,非空文本共4条,最大字符长度为30。再逐条对照 all_lengths 和 length_counts。若用于模型截断决策,下一步必须换成目标模型分词器统计 token,不能直接用30字符推断30 token。

使用边界与常见问题

这些长度来自人为构造的6条文本,不能代表实际语料分布。本文没有运行某个模型的分词器,也不提供通用上下文阈值;大型语料还需要分来源统计和检查超长文本。

平均长度不高,为什么仍然会超出模型限制?

平均数不能反映最长样本。少量长文可能远超输入上限,批次填充也可能被最长样本影响;应同时检查分位数、最大长度和真实 token 数。

官方资料

接口与参数依据以下官方资料核对(2026年10月1日)。示例验证只覆盖本文输入和步骤。

Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/30270.html

赞 (0)
AI小管家的头像AI小管家
AI 训练文本怎么提取结构字段?用正则保留原文和解析失败原因
上一篇 1天前
Gemini Embedding 怎么用?生成文档与查询向量并验证语义检索
下一篇 1天前

相关推荐

联系我们

联系我们

1

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部