SeLATM:面向数据探索与资源效率的片段级智能体主题建模
arXiv编号:arXiv:2609.31460v1
摘要
主题建模是挖掘文档集合隐藏主题的有效技术,广泛应用于多行业文本挖掘与数据分析。近期出现基于大语言模型LLM的主题建模方法:通过提示大模型生成主题,再将主题分配给文档,输出的主题可读性显著优于LDA等传统算法。但该类方案存在明显缺陷:无法输出单篇文档上的多主题分布;主题粒度容易过宽或过窄;计算资源开销随文档数量、文档长度急剧增长,对工业级大数据场景非常不友好。
本文提出**SeLATM(Segment‑Level Agentic Topic Modeling,片段级智能体主题建模)**框架解决上述痛点。采用片段级主题生成,搭配智能体反馈迭代精炼回路。多组数据集实验表明:SeLATM相比传统LLM主题建模方法,大幅降低LLM调用资源消耗,同时取得更优建模质量。
关键词
主题建模;片段级聚类;智能体反馈回路;大语言模型;文本挖掘;工业数据分析
目录
- 引言
- SeLATM框架
- [2.1 片段级主题建模](#2.1 片段级主题建模)
- [2.2 智能体主题精炼反馈回路](#2.2 智能体主题精炼反馈回路)
- [2.3 多视图父级主题构建](#2.3 多视图父级主题构建)
- 实验设计
- [3.1 数据集](#3.1 数据集)
- [3.2 评测指标](#3.2 评测指标)
- [3.3 基线方法](#3.3 基线方法)
- [3.4 模型与超参数](#3.4 模型与超参数)
- 实验结果
- [4.1 公开数据集实验结果](#4.1 公开数据集实验结果)
- [4.2 业务数据集实验结果](#4.2 业务数据集实验结果)
- [4.3 LLM Token消耗对比](#4.3 LLM Token消耗对比)
- [4.4 父级主题建模效果](#4.4 父级主题建模效果)
- 相关工作
- 结论
- 参考文献
- [附录A 评测指标、基线实现、消融实验](#附录A 评测指标、基线实现、消融实验)
- [附录B 全套提示词](#附录B 全套提示词)
- [附录C 输出样例](#附录C 输出样例)
1 引言
主题建模用于从语料库挖掘有意义主题,在科研、工业数据探索场景大量使用。传统方法如LDA把主题表示为词分布。而LLM驱动方案直接提示模型生成人类可读的自由文本主题,并将主题分配给文档。
现有LLM主题建模存在三大核心痛点:
- 无法输出文档‑多主题分布:现实中文档通常覆盖多个主题,不同主题占比各不相同;现有LLM方案大多给文档分配单一主题;即便支持多主题,也不能量化每个主题对文档的贡献占比,可解释性不足。
- 资源开销巨大 :需要对每篇文档做主题分配,LLM调用复杂度 O ( N × L ) O(N\times L) O(N×L), N N N文档数, L L L文档长度;长文档金融、法律业务场景开销爆炸。
- 主题精炼能力不足:多数方案完全忽略精炼步骤,或者只做主题合并;仅做合并会产生过于宽泛、内部不一致的大主题,缺少主题拆分能力。
本文核心思想:不在完整文档粒度做主题分配;将文档切分为句子/段落片段,对片段聚类簇生成主题 ,从片段粒度向上聚合得到文档的多主题贡献分布;再引入多智能体协作的反馈回路,同时支持主题拆分、主题合并双向精炼。
本文主要贡献
- 提出SeLATM片段级主题建模:文档切分为文本片段,对片段聚类簇生成主题,省去逐文档主题分配步骤;可以输出每篇文档的多主题贡献占比,显著降低LLM资源开销。
- 设计智能体迭代精炼反馈回路:包含一致性评估智能体、多样性评估智能体、拆分智能体、合并智能体、规划智能体;同时支持主题拆分、合并双向操作,修正过宽/过窄主题。
- 实现多视图聚类构建父级高层主题,得到层级主题结构。
- 在公开数据集与3套无真值工业金融业务数据集开展实验;SeLATM在多数指标优于基线;token开销显著低于同类LLM主题建模方案。
2 SeLATM框架
2.1 片段级主题建模
写作基本原理:句子、段落片段通常聚焦单一核心主题;语义相近片段组成的聚类簇,天然对应一个公共主题。
完整步骤:
- 文本切分 :将文档 D i D_i Di切分为文本片段 D i = { s i 1 , s i 2 , ... , s i M } D_i=\{s_{i1},s_{i2},...,s_{iM}\} Di={si1,si2,...,siM};使用句法规则切分句子/段落,不依赖LLM做切分,避免引入额外开销。
- 片段向量化与聚类
e i j = E m b ( s i j ) e_{ij}=Emb(s_{ij}) eij=Emb(sij)
使用凝聚层次聚类(Agglomerative Clustering) ,相比K‑means稳定性更强;输出片段簇集合 C = { C 1 , C 2 , ... , C K } \mathcal C=\{C_1,C_2,...,C_K\} C={C1,C2,...,CK}。
K K K为用户设定超参数,代表主题粒度;不是严格真值数量,下游精炼回路会修正粒度。 - MMR采样 :大簇使用最大边际相关性MMR采样选出代表性片段,减少送入LLM的输入长度。
C ~ k = { C k if ∣ C k ∣ ≤ n S S a m p l e M M R ( C k , n S ) otherwise \tilde{C}{k}= \begin{cases} C{k} & \text{if } |C_{k}| \leq n_S \\ Sample_{MMR}(C_{k}, n_S) & \text{otherwise} \end{cases} C~k={CkSampleMMR(Ck,nS)if ∣Ck∣≤nSotherwise
n S n_S nS:每一个簇采样片段数量超参数。 - 主题生成智能体 A T G A_{TG} ATG :输入簇采样片段,输出主题名称+主题描述:
( t k , d k ) = A T G ( C ~ k ) (t_k,d_k) = \mathcal{A}_{TG}(\tilde{C}_k) (tk,dk)=ATG(C~k) - 文档‑主题分布计算 :基于文档内部各个片段所属簇,统计得到文档 D i D_i Di的主题分布, p i k p_{ik} pik代表主题 t k t_k tk对该文档的贡献占比:
p i k = 1 ∣ D i ∣ ∑ j = 1 M 1 ( f c ( s i j ) = C k ) p_{ik}= \frac{1}{|D_i|}\sum_{j=1}^{M} \mathbb 1\left(f_c(s_{ij})=C_k\right) pik=∣Di∣1j=1∑M1(fc(sij)=Ck)
计算复杂度收益:LLM调用复杂度由原来 O ( N × L ) O(N\times L) O(N×L)降低为 O ( K × n S × l ) O(K\times n_S \times l) O(K×nS×l); K K K主题数, n S n_S nS采样数, l l l片段平均长度,三者远小于原始 N N N、 L L L。
2.2 智能体主题精炼反馈回路
算法伪代码(Algorithm 1)
python
def agentic_refinement_loop(Tg, C, C_tilde, e_max, T_tol):
"""
Tg: {(t1,d1)...(tK,dK)} 主题与描述
C: 完整片段簇集合
C_tilde: MMR采样后簇
e_max: 最大迭代轮次
T_tol: 容忍上限,连续无改善则提前终止
"""
tolerance = 0
for i in range(e_max):
if tolerance > T_tol:
break
# 拷贝当前状态
Ci, Ctil_i, Tgi = copy(C), copy(C_tilde), copy(Tg)
# 1.一致性评估,输出拆分反馈
coh_fb = Ecoh(Ctil_i, Tgi)
Ci, Tgi = Asplit(coh_fb, Ci, Tgi)
Ctil_i = update_sample_clusters(Ci)
# 2.多样性评估,输出合并反馈
div_fb = Ediv(Tgi)
Ctil_i, Tgi = Amerge(div_fb, Ctil_i, Tgi)
Ci = update_full_clusters(Ctil_i)
# 3.重评估
coh_r_fb = Ecoh(Ctil_i, Tgi)
div_r_fb = Ediv(Tgi)
# 规划智能体判断迭代是否带来改进
out = Aplan(coh_fb, coh_r_fb, div_fb, div_r_fb)
if out.is_improved:
C, C_tilde, Tg = Ci, Ctil_i, Tgi
tolerance = 0
else:
tolerance += 1
return C, C_tilde, Tg
各智能体分工:
- 一致性评估智能体 E c o h E_{coh} Ecoh:评估主题名称、描述与簇内片段匹配一致性;一致性差标记该主题需要拆分,并给出改进反馈。
- 拆分操作智能体 A s p l i t A_{split} Asplit :对需要拆分的簇重新聚类为2个子簇;如果拆分后其中一个子簇占比>80%,跳过拆分;否则使用 E c o h E_{coh} Ecoh反馈提示 A T G A_{TG} ATG为新子簇生成主题名称描述,更新簇集合。
- 多样性评估智能体 E d i v E_{div} Ediv:全局评估全部主题之间区分度,识别应当合并的主题分组,输出合并改进反馈。
- 合并操作智能体 A m e r g e A_{merge} Amerge :合并指定簇采样片段,结合反馈调用 A T G A_{TG} ATG生成合并后主题。
- 规划智能体 A p l a n A_{plan} Aplan:对比迭代前后主题质量报告,判断本轮迭代是否产生有效改进;连续多轮无改善达到容忍阈值,提前终止循环。
要点:现有基线大多只有合并操作,SeLATM同时具备拆分+合并双向能力,解决主题过度宽泛的问题。
2.3 多视图父级主题构建
在得到基础主题之后,构建高层父主题,形成层级主题体系:
- 对每个主题构建多视图嵌入:拼接片段簇质心嵌入、主题名字嵌入、主题描述嵌入。
- 在主题层面再次执行凝聚层次聚类。
- 使用主题生成智能体 A T G A_{TG} ATG,为高层聚类簇生成父主题名称、描述。
3 实验设计
3.1 数据集
公开数据集(带真值标签)
- Banking77:1947条,金融意图分类数据集
- Bills:1000条法案文档
- Wiki:1100条长维基文档
内部业务数据集(无真值标签,摩根大通金融业务)
- CCC:客户聊天机器人会话,603条
- BCR:聊天机器人用户评论,1250条
- CI:客户问题摘要,3000条
| 数据集 | 数据规模 | Token平均长度 | 标签数量 |
|---|---|---|---|
| Banking77 | 1 947 | 13 | 77 |
| Bills | 1 000 | 233 | 101 |
| Wiki | 1 100 | 3 950 | 207 |
| CCC | 603 | 116 | ‑ |
| BCR | 1 250 | 15 | ‑ |
| CI | 3 000 | 17 | ‑ |
3.2 评测指标
- 聚类类指标(有真值数据集)
- P1:纯度调和平均;ARI调整兰德指数;NMI归一化互信息。
SeLATM输出多主题分布,评测取贡献占比最高主题作为预测标签;出现占比相同视为新类别。
- LLM‑as‑Judge大模型裁判指标(全部数据集均可使用)
- TA主题准确率(Topic Accuracy);TC主题完备度(Topic Completeness)。
使用自一致性解码,生成5条推理路径打分取平均;打分档位:0 / 1/3 / 2/3 / 1。
| TA标签 | TC标签 | 得分 |
|---|---|---|
| INCORRECT | NOT COVERED | 0 |
| PARTIALLY CORRECT | MINORLY COVERED | 1/3 |
| MOSTLY CORRECT | MOSTLY COVERED | 2/3 |
| COMPLETELY CORRECT | COMPLETE | 1 |
3.3 基线方法
- 嵌入类主题模型
- BERTopic;C‑Top2Vec
- LLM驱动主题生成+逐文档分配
- TopicGPT;LLooM;TIDE
- LLM辅助神经主题模型
- LLM‑ITL
3.4 模型与超参数
- 主题生成智能体:gpt‑4o‑2024‑08‑06
- 向量化模型:text‑embedding‑3‑small‑1
- LLM‑as‑Judge裁判模型:gpt‑4.1‑mini‑2025‑04‑14
- 超参数 K K K(主题数量):Banking77/Bills=100;Wiki=250;业务数据集=50;
- n S n_S nS:簇采样片段数,通过网格搜索确定;
- 迭代轮次:0 /1 /3 /5轮精炼回路。
4 实验结果
4.1 公开数据集实验结果
SelATM‑Iter:0代表不开启精炼回路;Iter:1/3/5代表开启对应轮次智能体精炼。
在不开启精炼(Iter:0)条件下,15项评测中有10项取得最优;TA主题准确率相比最优基线平均提升21%。
- 聚类指标P1、ARI、NMI受精炼回路影响很小;拆分合并只修改部分主题命名,大部分片段‑簇归属保持不变。
- LLM裁判指标TA、TC在迭代3轮时整体达到峰值;t检验p<0.05,对比Iter‑0具备统计显著提升;迭代到5轮部分数据集性能出现回落,过多迭代带来过度合并,主题变得宽泛模糊。
4.2 业务数据集实验结果
业务数据集无真值标签,只报告LLM‑as‑Judge指标TA、TC。
- Iter‑0版本在6项评测中5项显著优于基线;开启精炼之后进一步提升;
- BCR数据集Iter‑5取得最佳;CCC数据集Iter‑3最优;CI数据集迭代收益不显著;迭代过多会出现主题泛化导致指标下滑。
4.3 LLM Token消耗对比
- Iter‑0(无精炼):token消耗仅为TIDE的24.4% ,TopicGPT的8.19%;
- Iter‑1:约为TIDE的55%;
- Iter‑3‑5:token开销上升,但依然低于TopicGPT。
证明片段级策略可以大幅降低LLM调用成本;工业大数据场景收益明显。
4.4 父级主题建模效果
父主题平均可以达到基础主题92%的TA/TC性能;相比基线TIDE,Bills、Wiki数据集TA、TC分别达到2.2倍、2.6倍提升;多视图聚类构建层级主题效果显著。
5 相关工作
- 传统主题建模:LDA、NMF基于词袋;BERTopic、C‑Top2Vec使用文档嵌入做聚类。缺点:主题是词分布,人类可读性差。
- LLM驱动主题建模:TopicGPT、LLooM、TIDE,直接让大模型生成可读主题,但是需要逐文档做主题分配,计算开销高;多数方案只支持主题合并,缺少拆分能力。
- LLM‑ITL:神经主题建模为主,LLM仅做主题重命名,降低开销,但主题命名质量有限。
- LLM智能体迭代自精炼Self‑Refine系列工作:依靠反馈循环迭代优化输出;SeLATM将该思想引入主题建模领域,设计拆分/合并双向操作。
6 结论
针对现有LLM主题建模无法输出多主题分布、资源开销高、主题粒度难以控制的痛点,本文提出SeLATM片段级智能体主题建模框架。
- 在片段粒度完成聚类与主题生成,省去逐文档主题分配;可以输出文档的多主题贡献占比,同时显著降低LLM token开销。
- 引入多智能体双向精炼回路,同时支持主题拆分、合并操作,修正过宽、过窄主题;进一步提升主题命名质量。
- 多视图聚类生成父级高层主题,得到层级主题体系。
在公开数据集以及金融行业业务数据集验证:SeLATM在主题准确率、完备度指标整体优于对比基线;即便开启精炼迭代,多数情况下token开销仍然低于现有LLM主题建模方案。
局限性:迭代轮次过高会发生过度合并,主题泛化导致性能下降;未来工作改进规划智能体的判断逻辑,识别过度合并现象。
7 参考文献
完整参考文献查阅原始arXiv网页:https://arxiv.org/html/2609.31460v1
附录简要说明
- 附录A :聚类指标完整公式;基线实现说明;K‑means对比消融;拆分操作消融; n S n_S nS超参数网格搜索完整表格。
- 附录B:全套智能体提示词:主题生成、一致性评估、拆分、合并、规划智能体prompt、Pydantic结构化输出schema。
- 附录C:公开数据集、业务数据集主题输出样例。