探索小型语言模型作为分类器与Jev竞争(分享我的发现)

Reddit r/LocalLLaMA 新闻

摘要

作者通过分析高温度下的对数概率和校准,探索使用如Gemma 4等小型语言模型作为分类器,并在GitHub上分享代码与发现。

(我只花了半天时间用Gemini做这个,觉得会是一个有趣的讨论)。嘿,所以关于Jev的所有讨论,我决定构建一个小的Python工具,看看是否能只用一个能在我的机器上运行的小型语言模型(在我的情况下,是Gemma4 e2b)来复制那种功能。我目前有的工具接受状态、问题和候选(分类)参数,并返回模型在候选之间的置信概率。它根据这些参数预填充系统和用户提示的上下文,然后批量比较可能候选的对数概率。这意味着整个过程(在我的机器上)耗时不到1秒,大部分是预填充时间。Gemma 4在回复中过于自信,即使在对数空间中也是如此。在正常温度设置下,它输出的结果概率接近100%。然而,一旦我们将温度提高到非常高的水平(温度=10对我有效),我们得到的结果就类似于不确定性。以下是一个示例查询:状态:'银行余额:$2,000;债务:$20,000;逾期:真' 问题:'我应该再借一笔贷款吗?' 候选:'是','否'(--温度 = 10) 结果是:候选 原始对数概率 概率 否 -0.0000 80.22% 是 -14.0000 19.78% 有趣的是,如果我们添加一个'null'候选,它的排名比'否'更高:候选 原始对数概率 概率 null -0.0815 52.67% 否 -2.5502 41.15% 是 -21.5190 6.17% 然而,有了'null'候选,我们可以使用一种校准(参考:https://arxiv.org/abs/2102.09690,命令行:--calibrate)来减轻基线不确定性(当其中一个候选反映基线不确定性时使用):候选 原始对数概率 校准概率 否 -2.5502 21.6998 60.60% 是 -21.5190 15.4810 32.54% null -0.0815 -0.0815 6.86% 我最大的收获是,这种方法在目前还没有大量调整的情况下,并不会导致现实的结果。然而,有可能提取语言模型的意见,比直接让它们输出或仅使用第一个标记结果更接近置信概率。我还没有直接与Jev比较(我不想花钱,哈哈),但我很好奇它是如何比较的。如果与laya比较,这完全是苹果和橘子的比较,所以我相信这里也是不同的。所以,是的,我对你的想法或额外的途径感兴趣。感谢阅读(至少我手写了这篇帖子)。TL;DR:在少次通过的小型语言模型中,获得类似置信概率的东西是可能的,尽管即使在对数空间中它们也过于自信。但你也可以使用更高的温度来获得更多样化的响应!代码链接:https://github.com/marcintkasper/universal-classifier
查看原文

相似文章

您可以像使用JEV一样使用任何LLM

Reddit r/LocalLLaMA

本文展示了如何使用任何GGUF模型与llama.cpp进行二元分类任务(如垃圾邮件检测),通过配置参数从logprobs中输出概率。

LLM分类是特征工程

Hacker News Top

本文讨论了直接使用LLMs作为分类器的局限性,并提出将LLMs输出作为特征应用于传统机器学习模型(如逻辑回归),以实现更好的校准、可解释性和性能。