作者:香港城市大学 高璟桐
今天跟大家分享一篇WWW 2025 Industry Track来自香港城市大学和华为诺亚提出的一种新型表格数据合成模型 SampleLLM 。它结合了LLM和重要性采样方法,以生成具有丰富语义信息,同时和原数据分布近似的合成数据。
Arxiv版论文链接: https://arxiv.org/abs/2501.16125
参考代码: https://github.com/Applied-Machine-Learning-Lab/SampleLLM
背景
推荐系统的常用数据多为表格数据,因此,表格数据合成在推荐系统领域具有重要意义,其生成质量直接影响模型训练效果。然而,现有通用方法主要基于统计模型和深度学习模型,存在显著的数据依赖性——他们往往在大规模数据上效果较好,而面临推荐场景等典型的稀疏数据时,这些方法往往难以捕捉复杂特征分布,且无法理解特征间的语义关联,导致生成的合成数据与目标分布存在偏差并且应用于用于数据增强时效果不佳。但往往稀疏的数据集更需要表格数据合成的方法来补充其数据量。
当前,尽管大语言模型(LLM)展现出通过少量样本学习和语义理解生成表格数据的潜力,但模型本身内部固有的数据分布和不同外部数据集的数据分布之间存在分布差异。另外,LLM倾向于生成一些“保守”的数据,即语义上各特征之间明显自洽的数据,这容易导致生成结果聚集化,如下图所示,在HELOC数据集上,直接使用LLM生成的数据往往集中在整体数据分布的一定区域。
为解决上述挑战,我们提出SampleLLM,这是一个双阶段优化框架。该方法首次将LLM和分布对齐机制结合并引入推荐系统的表格数据合成领域。在第一阶段,该方法通过给定提示和聚类采样的多样化few-shot样本引导LLM生成初步合成数据;在第二阶段,SampleLLM创新性地采用基于特征归因的重要性采样技术,基于原始数据集特征交互图谱的隐式分布进行精细校准。这种优化机制在基于LLM生成具有丰富语义信息的样本的同时,进一步保证了合成数据和原始数据的分布相似性。
方法
本文提出基于大语言模型的双阶段表格数据合成优化框架SampleLLM。如下图所示,整个框架由两个核心阶段构成:基于给定提示与聚类采样的LLM生成阶段,以及基于特征归因重要性采样的分布对齐阶段。这种两阶段架构既实现显式的语义生成控制,又通过隐式特征交互建模实现数据分布优化。
1)第一阶段
为解决使用few-shot LLM选择样本过于集中的问题,SampleLLM提出基于聚类采样的少样本选择策略用于few-shot样本生成。首先,我们为需要合成样本的数据集设置了人工的提示(
Instruction
)用于数据合成,并使用LLM迭代优化该人工提示多次以生成最终的提示版本。其次,SampleLLM使用聚类采样从原数据中采样出样本,用于few-shot样本生成(
Exemplars
)。这相比随机采样,能够获得更加多样化的样本,避免了LLM生成的样本分布过于集中。在得到
Instruction
和
Exemplars
后,SampleLLM即可根据指示和对应样本合成具有丰富语义信息,且分布多样化的新样本。这里h即为聚类算法,本文中采用kmeans方法。g为从每个聚类中选择样本的方式,本文中为随机采样。
3)特征归因分布对齐
基于LLM生成合成样本后,尽管样本具有丰富的语义信息,LLM本身所带来的分布差异让生成的样本很难替代或增补原数据,直接应用于下游任务。因此SampleLLM拟采用统计方法基于梯度归因的重要性采样方法对齐生成的样本集和原始数据集分布。然而,直接根据特征计算样本重要性权重是困难的,因为这需要计算高维的特征联合分布其中
为第i个样本,
为第k个特征,
为样本标签。如果直接假定所有特征独立分布,可以大大简化计算过程,然而,由于推荐系统数据常常具有复杂且重要的特征交互,这种计算方式会导致计算结果严重偏离原本的数据分布。为了均衡计算量和分布估计准确度,SampleLLM假定数据半独立,即具有重要特征交互的特征组服从特定的联合分布,而其他特征则服从独立分布:每个集合中的特征域将被考虑为服从联合分布,而其他的特征域则服从独立分布。另外,对标签
的分布估计将由一个简单的深度网络得出。
在根据以上特征组合计算出每个样本的重要性权重后,SampleLLM即可采用重要性采样方法进行数据采样。以得到最终的合成数据集。
实验
本文在实验部分主要回答三个研究问题:
- RQ1:与其他的相比,SampleLLM的性能如何
- RQ2:将生成的表格数据代替原数据使用时,其有效性如何?
- RQ3:聚类采样和特征归因方法对SampleLLM整体性能有什么影响
数据集
本文在3个常用的推荐数据集 ML-1M, Amazon, Douban 和两个通用分类数据集 HELOC(二分类), Covertype(多分类) 上进行了实验
对比实验
本文对比了SampleLLM与常用的数据合成方法的性能。 其中,使用合成数据集直接替换原训练集进行训练,测试结果如下:这验证了SampleLLM的有效性。
消融实验
本文采用消融实验验证各模块对模型的贡献:其中:
- w/o LLM (-LLM):以TabDDPM,一个非LLM基线作为 SampleLLM第一阶段LLM的替代方案;
- w/o cluster sampling(-CS):第一阶段不进行聚类采样,而是采用随机采样。
- w/o importance sampling(-IS):不进行第二阶段重要性采样。
实验结果说明,所设计的模块均能够提升模型性能。
线上部署
为了进一步验证SampleLLM的有效性,本文在华为app推荐平台进行了Offline和Online部署实验。实验持续进行 总共一周,最终RPM(Revenue Per Mille)指标提高了2%,ECPM (Effective Cost Per Mille)指标提高1.86%,从而验证了方法的有效性。
总结
本文提出了一种两阶段的表格数据合成模型SampleLLM,以利用LLM生成具有丰富语义信息的高质量样本,同时对齐合成数据与原数据分布。离线和在线实验证明了SampleLLM在推荐任务上的有效性以及在通用任务下的潜力。
更多细节请见原始论文。