为分类任务微调表示模型
深入讲解为分类任务微调表示模型的完整流程:分类头设计、全量微调 vs LoRA 的选择、小样本场景下的 SetFit 方案,以及过拟合防范与模型评估。
对比 LDA 与 BERTopic 的核心差异,解析 K-Means、层次聚类在文本上的适用场景,以及 UMAP 降维如何配合向量嵌入做高效主题发现。
嵌入模型在大规模相似度计算场景中不可替代。推荐系统就是典型例子:要从百万级候选商品中找出用户可能感兴趣的,需要对所有商品做向量相似度计算。用生成模型逐个评估百万级候选,成本完全不可接受。嵌入模型把所有商品离线编码成向量,用ANN检索毫秒级就能找到最相似的。类似的场景还有:大规模文档去重、语义搜索的召回阶段、异常检测等。核心优势是嵌入向量可以离线计算、索引、批量比较,这是生成模型做不到的。
典型流程:1)用嵌入模型把每篇文档编码成向量;2)用UMAP等降维算法压缩到低维空间;3)用聚类算法(如HDBSCAN或K-Means)分簇;4)对每个簇提取主题表示——可以用c-TF-IDF找关键词,或者直接用LLM对每个簇的样本文档做摘要生成主题标签。BERTopic就是这个流程的开箱即用实现。关键决策点包括:嵌入模型的选择、聚类数量的确定、以及主题表示的质量。
词袋法把文档表示为词频向量,维度等于词表大小,极度稀疏,完全不考虑词序和语义。文档嵌入用神经网络把文档编码成低维稠密向量,融合了词序、上下文、语义等信息。但词袋法不是一无是处:它计算极快,可解释性强(能直接看到哪些词重要),在主题建模中仍然有用——BERTopic就是先用嵌入做聚类,再用基于词袋的c-TF-IDF提取每个簇的关键词。在信息检索中,BM25(基于词袋的方法)在精确关键词匹配上仍然很强。
传统TF-IDF是在单篇文档级别计算词的重要性。c-TF-IDF把同一个簇里的所有文档合并成一个“超级文档”,然后计算每个词在这个簇中相对于其他簇的重要性。这样做的好处是:它直接找出每个主题最具区分度的词,而不是每篇文档最重要的词。传统TF-IDF找出的可能是某篇文档的特有词,c-TF-IDF找出的是整个簇的特征词。这让主题表示更稳定、更有区分度,不会被单篇文档的异常词污染。
LDA是经典概率模型,适合长文档,但短文本效果差,需要预设主题数。BTM专门为短文本设计,用词对共现解决短文本稀疏问题。NMF计算快、主题可解释性好,但语义理解有限。BERTopic用嵌入+聚类+c-TF-IDF,语义质量最高,模块化设计灵活,但计算成本较高。Top2Vec用文档嵌入+聚类自动确定主题数,简单但主题表示质量不如BERTopic。建议:长文档用LDA或BERTopic;短文档用BTM或BERTopic;高质量垂直领域首选BERTopic(可以换用领域专用的嵌入模型)。
基于质心的(如K-Means):简单高效,但必须预设k值,假设簇是球形的,对异常点敏感,每个样本必须属于某个簇。基于密度的(如HDBSCAN):能自动确定簇数,可以发现任意形状的簇,能识别并排除噪声点(不属于任何主题的文档),但对密度变化大的数据可能效果不好,而且参数调优比K-Means复杂。文本聚类中通常首选HDBSCAN,因为主题数量事先不知道,而且总有一些文档不属于任何明确主题。
分开处理的好处在于可以独立优化每个步骤。聚类阶段用嵌入向量的语义相似度来分组,这一步的目标是把相似文档聚在一起。主题表示阶段则可以用完全不同的方法(c-TF-IDF、KeyBERT、甚至LLM摘要)来描述每个簇的主题。如果把两步耍在一起(像LDA那样),聚类和主题表示会互相牵扯,难以单独优化。分开后,你可以先确保聚类质量,再调整主题表示的方法让主题间的区分度更好。
几个方向:1)调整聚类参数——增大HDBSCAN的min_cluster_size让簇更大更集中,减少磎片化;2)合并相似主题——计算主题嵌入的相似度,合并超过阈值的;3)用c-TF-IDF时去掉全局高频词(所有主题都有的词没有区分度);4)换用更好的主题表示方法,比如KeyBERT提取更有语义区分度的关键词,或者用LLM生成更精确的主题标签;5)考虑在聚类前加强降维(调UMAP参数),让相似文档的嵌入更紧凑。
核心思路是用流式聚类检测新簇的出现。具体做法:1)对新到达的内容实时编码为嵌入向量;2)把新向量与现有主题的质心做相似度计算,如果和所有现有主题都不匹配,可能是新兴主题;3)用滑动窗口监控每个簇的增长速度,短时间内快速增长的簇可能是新兴趋势;4)定期用BERTopic的online模式增量更新主题模型。还可以跟踪关键词的时序分布,突然高频出现的新关键词组合也是新兴主题的信号。
分两阶段设计。冷启动阶段:用嵌入模型对所有内容编码,做聚类和主题建模,新用户注册时让他选择感兴趣的主题,然后推荐该主题下质量最高的内容;同时用内容嵌入的相似度做'看了这个的人也喜欢'的推荐。数据积累阶段:有了用户点击、收藏、停留时长等行为数据后,训练协同过滤或行为嵌入模型(类似歌曲嵌入的思路),和内容嵌入融合使用。可以用加权混合:新用户偏重内容嵌入,老用户偏重行为嵌入,权重随数据量动态调整。
RELATED