Hacker News

使用 Python 3.14 的 ZSTD 模块进行文本分类

使用 Python 3.14 的 ZSTD 模块进行文本分类 对文本的全面分析提供了对其核心组件 Mewayz Business OS 的详细检查。

1 最小阅读量

Mewayz Team

Editorial Team

Hacker News

现在我已经掌握了我需要的所有背景信息。让我写博客文章。

使用 Python 3.14 的 ZSTD 模块进行文本分类

Python 3.14 在标准库中引入了 compression.zstd 模块,它解锁了一种非常强大的方法,无需机器学习模型即可进行文本分类。通过测量压缩器将两个文本压缩在一起的效果,您可以确定它们的相似性(一种称为归一化压缩距离 (NCD) 的技术),现在 Zstandard 使其速度足以满足生产工作负载。

基于压缩的文本分类实际上是如何工作的?

基于压缩的分类背后的核心思想植根于信息论。当像 Zstandard 这样的压缩算法遇到文本块时,它会构建一个内部模式字典。如果两个文本共享相似的词汇、语法和结构,则将它们压缩在一起产生的结果仅比单独压缩较大文本稍大。如果它们不相关,则串联的压缩大小接近两个单独大小的总和。

这种关系由归一化压缩距离公式捕获:NCD(x, y) = (C(xy) - min(C(x), C(y))) / max(C(x), C(y)),其中 C(x) 是文本 x 的压缩大小,C(xy) 是两个串联文本的压缩大小。 NCD 值接近 0 意味着文本高度相似,而值接近 1 意味着它们几乎没有共享信息内容。

这项技术的非凡之处在于它不需要训练数据,不需要标记化,不需要嵌入,也不需要 GPU。压缩器本身充当文本结构的学习模型。在《低资源文本分类:带有压缩器的无参数分类方法》(2023)等论文中发表的研究表明,基于 gzip 的 NCD 在某些基准上可以与 BERT 相媲美,从而重新引发了人们对该方法的兴趣。

为什么 Python 3.14 的 Zstandard 模块会改变 NCD 的游戏规则?

在Python 3.14之前,使用Zstandard需要安装第三方python-zstandard包。通过 PEP 784 引入的新的 compression.zstd 模块直接随 CPython 一起提供。这意味着零依赖开销和由 Meta 久经考验的 libzstd 支持的有保证、稳定的 API。特别是对于分类任务,Zstandard 比 gzip 或 bzip2 具有多个优势:

💡 您知道吗?

Mewayz在一个平台内替代8+种商业工具

CRM·发票·人力资源·项目·预订·电子商务·销售点·分析。永久免费套餐可用。

免费开始 →

速度:在同等比率下,Zstandard 的压缩速度比 gzip 快 3-5 倍,从而可以在几秒而不是几分钟内对数千个文档进行批量分类

可调压缩级别:1 级到 22 级可让您以速度换取比率,从而根据吞吐量要求校准 NCD 精度

字典支持:预先训练的 Zstandard 字典可以显着提高小文本(4KB 以下)的压缩,这正是 NCD 准确性最重要的文档大小范围

流 API:该模块支持增量压缩,支持分类管道处理文本,而无需将整个语料库加载到内存中

标准库稳定性:无版本冲突,无供应链风险 — from Compression import zstd 适用于每个 Python 3.14+ 安装

关键见解:当您需要一个快速、无依赖性的基线来本地处理多语言文本时,基于压缩的分类效果最佳。由于压缩器对原始字节而不是特定于语言的标记进行操作,因此它们可以像英语一样有效地对中文、阿拉伯语或混合语言文档进行分类 - 不需要语言模型。

实际实施是什么样的?

Python 3.14 中的最小 NCD 分类器少于 30 行。您对每个参考文本(每个类别一个)进行编码,然后对于每个新文档,根据每个参考计算 NCD 并分配具有最小距离的类别。核心逻辑如下:

首先,使用 from compression import zstd 导入模块。定义一个函数,该函数接受两个字节字符串,单独压缩每个字符串,压缩它们的串联,并返回 NCD 分数。然后 b

Ready to Simplify Your Operations?

Whether you need CRM, invoicing, HR, or all 207 modules — Mewayz has you covered. 138K+ businesses already made the switch.

Get Started Free →

免费试用 Mewayz

集 CRM、发票、项目、人力资源等功能于一体的平台。无需信用卡。

立即开始更智能地管理您的业务

加入 30,000+ 家企业使用 Mewayz 专业开具发票、更快收款并减少追款时间。无需信用卡。

觉得这有用吗?分享一下。

准备好付诸实践了吗?

加入30,000+家使用Mewayz的企业。永久免费计划——无需信用卡。

开始免费试用 →

准备好采取行动了吗?

立即开始您的免费Mewayz试用

一体化商业平台。无需信用卡。

免费开始 →

14 天免费试用 · 无需信用卡 · 随时取消