Survey of Approaches to Parameter Tuning for Database Systems
-
摘要:
数据库系统具有大量的配置参数,参数配置不同会导致系统运行时很大的性能差异. 参数优化技术通过选择合适的参数配置,能够提升数据库对当前场景的适应性,因此得到国内外研究人员的广泛关注. 通过对现有的数据库参数调优方法进行总结分析,根据参数优化方法是否具有应对环境变化的能力,将现有工作分为固定环境下的数据库参数优化方法和变化环境下的数据库参数优化方法2类. 对于固定环境下的参数优化方法,按照方法是否具有从历史任务中学习的能力将研究工作分为传统的参数优化方法和基于机器学习的参数优化方法2类并分别进行介绍. 对于变化环境下的参数优化方法,按照不同的变化场景对现有工作进行分类介绍. 最后,总结了现有工作中各类方法的优缺点,并对目前研究中待解决的问题和可能发展的方向进行了讨论.
Abstract:Database systems contain a vast number of configuration parameters controlling nearly all aspects of runtime operation. Different parameter settings may lead to different performance values. Parameter tuning can improve the adaptability of database to current environment by selecting appropriate parameter settings. However, parameter tuning faces several challenges. The first challenge is the complexity of parameter space, while the second is the insufficient samples caused by the expensive performance measurements. Moreover, the optimal parameter configuration is not universal when the environment changes. Therefore, regular users and even expert administrators grapple with understanding and tuning configuration parameters to achieve good performance. We summarize and analyze the existing work on parameter tuning for database systems and classify them into two categories: tuning approaches under fixed environments and tuning approaches under changed enviroments, according to whether the approaches have the ability to cope with environmental changes. For the first one, the research work is divided into traditional parameter tuning and machine learning-based parameter tuning according to whether the approaches can learn from historical tasks. For the second one, the existing approaches are introduced according to different environmental change scenarios, respectively. Finally, we summarize the pros and cons of various approaches and discuss some open research problems for parameter tuning.
-
Keywords:
- database systems /
- parameter tuning /
- performance tuning /
- machine learning /
- self-driving database
-
随着互联网服务平台进入存量增长阶段,已注册用户不断产生各种交互行为. 在这种情况下,为现有用户提供更精准的服务已经成为大多数在线服务平台的首要任务. 序列推荐可以显式地建模用户的序列行为,对未来时刻用户可能感兴趣的物品进行预测. 早期的研究[1]根据购买相似物品的用户群来建立相关性模型. 然而,用户交互的项目数量与项目总数相比微不足道,导致严重的稀疏性问题. 许多研究[2-4]引入项目侧信息(如类别、标题、主页图像等)来丰富了项目表示. 尽管可以在一定程度上缓解稀疏性问题,然而这类信息都是商家按照模板上传生成的,缺乏多样性.
互联网上存在着大量丰富的用户生成内容,这是一种用户自发创造的多模态信息,包括评论、图片、视频、评级等,可以作为购买和浏览等基本交互的补充. 研究人员尝试从用户生成内容中挖掘用户偏好,以应对稀疏性问题的挑战[5-8],然而,数据中存在的广告或误操作等噪音限制了推荐系统的性能. 如图1中,用户评论中存在着“绿色、优惠”等与真实偏好无关的噪音,影响用户文本偏好的捕获. 部分工作[9-10]利用不同模态间的一致性信息来减少噪音的干扰,但必须承认的是,完全消除用户生成内容中的噪音是不现实的.
大型语言模型(large language model,LLM)的兴起为推荐系统注入了新的活力,也为解决噪音问题带来了新的可能.LLM可以进行深度的语义分析,理解用户的隐含意图,生成个性化的推荐. 但大型语言模型的训练数据与推荐场景并不相关,语义空间难对齐. 部分工作试图通过调整指令来引导大型语言模型生成更准确的推荐结果,但结果容易被干扰,还可能会出现幻觉问题.
针对上述问题,本文提出了一种基于大型语言模型的可信多模态推荐算法(large language model-based trusted multi-modal recommendation,Large-TR),它利用大型语言模型强大的语义理解能力过滤多模态数据中的噪音,对多模态用户偏好进行建模. 此外,针对噪音无法完全消除的问题,我们还设计了一种可信决策机制,动态评估推荐结果的不确定性,在高风险场景下保证推荐结果的可用性. 在4个广泛使用的公开数据集上的实验结果显示,相对于其他基线算法,本文提出的算法有更好的性能表现.
综上,本文的主要贡献包括3个方面:
1)我们借助大型语言模型过滤低质量多模态信息中的噪音,建模更精确和细致的用户偏好,有效提高推荐性能;
2)我们设计了一种简单但有效的可信决策机制,可以动态评估推荐结果的可信度,保证推荐系统在有噪音的情况下依然可用;
3) 我们在4个广泛使用的真实数据集上进行了实验,实验结果表明本文提出的算法可以显著提高性能.
1. 相关工作
1.1 多模态序列推荐
序列推荐从用户的历史交互序列中建模用户偏好的演变过程,预测下一个可能交互的商品. 早期序列推荐的工作[11-14]大多基于马尔可夫链假设,但稀疏性问题严重限制了性能的上限. Zhou等人[15]尝试建模项目与属性之间的关系,以增强项目的表示. Xie等人[16]从商品的描述、标题等文本信息中挖掘用户偏好,提升推荐性能. 很多情况下,图像作为一种视觉内容,可以提供语言无法表达的视觉信息. 受此启发,有工作提出[17]将视觉信号纳入用户偏好的建模过程,预测下一个可能交互的商品. 近年来,微视频作为电商平台新兴的内容形式,包含多场景、多角度的商品展示,Lei等人[18]提出了基于微视频的序列推荐算法. 综上,基于多模态的序列推荐已经开始集成来自图像、文本和其他模态(如视频和音频)的信息,以实现对项目更全面的表示和对用户偏好更准确的理解. 但现有方法仍面临2个主要问题:1)仅依赖商品相关的侧信息来丰富商品表征,未能直接对用户偏好进行建模,导致对用户需求的理解不够深入;2)多模态信息中往往存在不匹配不规范的噪音数据,严重影响推荐系统的性能. 因此本文提出了一种基于用户生成内容的多模态序列推荐方法,通过大型语言模型丰富的语义理解能力对多模态内容降噪,从用户的角度挖掘序列偏好和行为趋势.
1.2 基于大型语言模型的推荐
语言模型在推荐系统的发展中扮演着至关重要的角色. 早期研究[19-20]已经发现,语言模型框架具有统一建模各类推荐任务的潜力. 随着大型语言模型的出现,推荐领域迎来了巨大的进步. 这些大型语言模型具备极强的语言理解、生成和泛化能力,为解决推荐系统中的冷启动、个性化推荐和可解释性等问题提供了新的思路和方法. 但实现这一目标通常需要大量的推荐数据进行训练. 近期,Dai等人[21]通过特定的指令激发大型语言模型直接生成推荐结果,进一步证实了大型语言模型在推荐领域的巨大潜力. 在此基础上,部分研究[22-23]对指令进行微调,以期望将大型语言模型与推荐系统的语义空间尽可能对齐,从而获得更好的推荐效果. 基于大型语言模型的推荐方法仍处于探索阶段,其性能很大程度上依赖于指令的质量,生成结果易干扰,如何确保生成鲁棒的推荐结果是未来需要重点关注的问题. 因此,本文并没有通过大型语言模型直接生成推荐结果,而是利用大型语言模型已表现出的强大的语义理解与分析能力,过滤多模态交互数据中存在的噪音,将多模态信息和大型语言模型的知识共同注入到推荐系统中,提高推荐结果的准确性和鲁棒性.
2. 问题定义
给定用户U的历史交互序列SU={I1,I2,…,IN},用户U对序列中每个商品的文本评论可以表示为RU={rU1,rU2,…,rUN},相应地,商品I收到的所有文本评论可以表示为RI={rI1,rI2,…,rIM}. 本文收集交互序列中每个商品的首页图片作为多模态内容中的图片信息,表示为GU={gU1,gU2,…,gUN}. 因此,本文的目标是通过观察到的交互序列SU和多模态内容(RU,RI,GU),预测出用户与未观察到的商品交互的概率,并提供预测结果的不确定性.
3. 基于大型语言模型的可信多模态推荐算法
本文提出的算法模型整体架构如图2所示,包括了大型语言模型去噪模块、多视图序列偏好模块和可信决策模块3个部分. Large-TR的设计基于以下假设:1)大型语言模型有理解图像和文本语义的能力.2)用户生成的多模态信息是揭示用户偏好的重要补充. 3)用户侧和商品侧都可以获得有效的推荐结果.
3.1 大型语言模型去噪
用户的文本评论是体现个人偏好的重要信息来源,但其中存在的广告、误评等噪音屡见不鲜. 商品图片作为商家上传的模板化内容,其内容质量更高,还可以提供语言无法表达的视觉信息. 分析图像和文本之间的关联性,我们可以更好地判断评论的真实性和准确性. 大型语言模型在图文匹配的稀疏场景下具有很强的泛化能力,并在少量甚至零样本任务中实现了非常可观的性能. 我们假设大型语言模型已经具有理解图文信息,判断其是否一致的能力,我们需要做的就是通过调整提示符来触发这种能力. 提示符是提供给大型语言模型的文本片段,用来设定上下文或指示大型语言模型如何继续生成文本,广泛应用于各种自然语言处理任务,如文本生成、文档总结等. 本文旨在利用大型语言模型强大的图文理解能力,判断用户的评论文本与商品图片是否相关,从而过滤文本中的噪音. 为此,我们参考了相关上下文学习[24]和指令调整[22]的工作,并将这种能力表示为具有特定领域提示的任务.
图2左侧说明了我们如何调整提示符从大型语言模型中引出图文匹配的功能,我们的提示由2个部分组成:1)描述:需要设计领域相关的文本,增强大型语言模型对执行相关任务所需知识的感知能力.2)任务:给定用户的评论与相应的商品图片,要求大型语言模型给出回答. 在优化过程中,我们会为大型语言模型添加示例,以帮助其准确理解任务要求. 随后,通过真实标签对模型输出进行评估,并基于评估结果不断改进提示符的设计,以提升模型的图文匹配能力. 相关的提示符优化过程在附录A中给出.
为了更有效地将大型语言模型过滤后的多模态信息用于后续的推荐任务,我们利用预训练模型对文本和图片进行嵌入处理. 对于文本,我们将输入的文本句子分割成多个词汇单元token,并在句子的开头添加[CLS]和[SEP]等特殊标记. 预训练模型会输出[CLS]的隐藏状态,它可以表示整个句子的语义信息,用于下游任务. 具体来说,我们将rUn和rIm视为token序列,即rUn={tokent}|rUn|t=1,rIm={tokent}|rIm|t=1,每个评论按如下方式进行嵌入:
{\boldsymbol{t}}_{n}^{U}={F}_{\mathrm{t}}\left({r}_{n}^{U}\right),{\boldsymbol{t}}_{m}^{I}={F}_{\mathrm{t}}\left({r}_{m}^{I}\right),{\boldsymbol{t}}_{n}^{U},{\boldsymbol{t}}_{m}^{I}\epsilon{\mathbb{R}}^{{d}_{\mathrm{t}}}\text{,} (1) {F}_{\mathrm{t}}(\cdot ) 是Bert(bidirectional encoder representations from Transformers)模型[25]. 根据式 \left(1\right) 我们可以获得文本嵌入 {\boldsymbol{T}}^{U}=[{\boldsymbol{t}}_{1}^{U},{\boldsymbol{t}}_{2}^{U},… ,{\boldsymbol{t}}_{N}^{U}] 和 {\boldsymbol{T}}^{I}=[{\boldsymbol{t}}_{1}^{I},{\boldsymbol{t}}_{2}^{I},… ,{\boldsymbol{t}}_{M}^{I}] . 通过汇总和分析不同用户对同一商品的多样化评论,我们可以提取到更全面、更丰富的商品特征信息,还可以在一定程度上过滤掉那些与商品无关的用户文本偏好. 基于上述考虑,我们通过共同注意力机制[26](co-attention mechanism)提取 {R}^{U} 和 {R}^{I} 之间的匹配模式,对用户的文本偏好进行重新建模. 具体来说,该机制分为3个步骤:
1) 构建亲和力矩阵.
{\boldsymbol{A}}^{UI}=\boldsymbol{tan}h\left({\left({\boldsymbol{T}}^{I}\right)}^{\mathrm{T}}{\boldsymbol{M}}^{R}{\boldsymbol{T}}^{U}\right),{\boldsymbol{A}}^{UI}\epsilon{\left(-\mathrm{1,1}\right)}^{M\times N} \text{,} (2) 其中 {\boldsymbol{M}}^{R} 是一个参数矩阵, {\boldsymbol{A}}^{UI} 中第 i 行第 j 列的元素表示 {R}^{I} 第 i 个评论与 {R}^{U} 第 j 个评论之间的相似性.
2)我们对 {\boldsymbol{A}}^{UI} 实施行行最大化操作,然后使用 softmax 生成相关性向量.
{\boldsymbol{a}}^{UI}=softmax\left(RowMax\left({\boldsymbol{A}}^{UI}\right)\right),{\boldsymbol{a}}^{UI}\epsilon{\left(\mathrm{0,1}\right)}^{M}. (3) 3)对商品评论矩阵进行关注度聚合,计算最终的相关性嵌入,并与原文进行拼接.
{\tilde{\boldsymbol{t}}}_{n}^{U}={\boldsymbol{t}}_{n}^{U}\earth{\boldsymbol{a}}^{UI}{\boldsymbol{T}}^{I},{\tilde{\boldsymbol{t}}}_{n}^{U}\epsilon{\mathbb{R}}^{{d}_{\mathrm{t}}}, (4) 式 \left(4\right) 中的 \earth 代表向量连接操作,这一步代表对 {S}^{U} 中的每个 {r}_{n}^{U} 重新建模以获得重构的用户文本偏好: {\tilde{\boldsymbol{T}}}^{U}=[{\tilde{\boldsymbol{t}}}_{1}^{U},{\tilde{\boldsymbol{t}}}_{2}^{U},… ,{\tilde{\boldsymbol{t}}}_{N}^{U}] . 许多偏好信息通常很难通过文字准确传达,图像可以提供直观的视觉展示,捕捉到用户对物品外观、风格、颜色等方面的偏好. 与文本嵌入方式类似,我们使用预训练模型对每张图片进行嵌入:
{\boldsymbol{z}}_{n}^{U}={F}_{\mathrm{v}}\left({g}_{n}^{U}\right),{\boldsymbol{z}}_{n}^{U}\epsilon{\mathbb{R}}^{{d}_{\mathrm{v}}}, (5) 其中 {F}_{\mathrm{v}}(\cdot ) 是CLIP(contrastive language-image pre-training)模型[27],用户视觉偏好可以表示为 {\boldsymbol{Z}}^{U}=[{\boldsymbol{z}}_{1}^{U}, {\boldsymbol{z}}_{2}^{U},… ,{\boldsymbol{z}}_{N}^{U}] . 图文嵌入模块均支持灵活的嵌入维度,也支持扩展到更多的模态. 这些预训练模型可以看作对模态信息进行特征提取的编码器. 文本偏好和视觉偏好的结合可以增强对用户多层次、多维度偏好的理解. 因此,我们将文本偏好和视觉偏好作为多模态视角进行整合:
{\boldsymbol{x}}_{1}^{U}={\boldsymbol{W}}_{\mathrm{m}}\left[{\boldsymbol{Z}}^{U}\earth{\tilde{\boldsymbol{T}}}^{U}\right],{\boldsymbol{x}}_{1}^{U}\epsilon{\mathbb{R}}^{{d}_{\mathrm{m}}\times N}, (6) 其中 {\boldsymbol{W}}_{\mathrm{m}}\epsilon{\mathbb{R}}^{{{d}_{\mathrm{m}}\times (d}_{\mathrm{t}}+{d}_{\mathrm{v}})} 代表权重矩阵. 为了尽可能地让用户的文字偏好和视觉偏好保持对齐,减少文本偏好可能带来的噪音干扰,本文使用跨模态损失函数[28]. 图像-文本对可以构造为 \{\left({r}_{i}^{U},{g}_{j}^{U}\right),{o}_{ij}{\}}_{i,j=1}^{N} ,其中 {o}_{ij} =1表示图文是匹配的. 因此,图文匹配的投影概率可以表示为
{p}_{ij}=\dfrac{\mathrm{e}\mathrm{x}\mathrm{p}\left(\right({\tilde{\boldsymbol{t}}}_{i}^{U}{)}^{\mathrm{T}}{\bar{\boldsymbol{z}}}_{j}^{U})}{\displaystyle\sum\limits_{k=1}^{N}\mathrm{e}\mathrm{x}\mathrm{p}\left(\right({\tilde{\boldsymbol{t}}}_{i}^{U}{)}^{\mathrm{T}}{\bar{\boldsymbol{z}}}_{k}^{U})}, (7) 其中 {\bar{\boldsymbol{z}}}_{j}^{U}=\dfrac{{\boldsymbol{z}}_{j}^{U}}{\left|\right|{\boldsymbol{z}}_{j}^{U}\left|\right|} 代表归一化的图像表示, ({\tilde{\boldsymbol{t}}}_{i}^{U}{)}^{\mathrm{T}}{\bar{\boldsymbol{z}}}_{j}^{U} 是文本偏好 {\tilde{\boldsymbol{t}}}_{i}^{U} 在图像偏好 {\boldsymbol{z}}_{j}^{U} 上的标量投影. 通过计算投影概率 {p}_{ij} 和真实匹配概率 {q}_{ij} 之间的KL散度(Kullback-Leibler),得到文本与图像间的损失函数:
{\mathcal{L}}_{\mathrm{r}\mathrm{e}\mathrm{c}}({S}^{U})=\frac{1}{N}\sum _{i=1}^{N}\sum _{j=1}^{N}{p}_{ij}\mathrm{l}\mathrm{n}\frac{{p}_{ij}}{{q}_{ij}+\varepsilon }, (8) 其中 \varepsilon 是一个非常小的数用于避免数值溢出的问题, {q}_{ij}=\dfrac{{o}_{ij}}{\displaystyle\sum\limits_{k=1}^{N}{p}_{ik}} 代表 \left({r}_{i}^{U},{g}_{j}^{U}\right) 归一化的真实匹配概率. 通过最小化损失函数,可以使投影概率分布曲线的形状接近真实匹配概率分布曲线的形状,从而使得匹配的图像文本对的投影值最大,不匹配的图像文本对投影值最小.
3.2 多视图序列偏好
在推荐领域,使用项目唯一标识符(identity,ID)对项目进行表示一直是主流做法. 本文认可项目ID的作用,也希望尽可能地保留原始项目ID的信息,不受其他因素的干扰. 因此,本文将其视为一个独立的视图. 具体来说,将交互序列 {S}^{U} 输入到项目嵌入层,以获得商品视角的嵌入:
{\boldsymbol{x}}_{2}^{U}={F}_{i}({S}^{U}),{\boldsymbol{x}}_{2}^{U}\in {\mathbb{R}}^{{d}_{\mathrm{i}}\times N}. (9) 众所周知,项目ID和多模态信息都能提供有效的推荐,然而,仅仅将两者拼接或者融合在一起会丢失有价值的语义信息. 因此我们认为应该从互补但独立的视角 {\{{\boldsymbol{x}}_{v}^{U}\}}_{1}^{\left|V\right|} 来考虑最终的推荐结果, v=1 代表多模态信息的视角, v=2 代表项目ID的视角,视角的数量可以随着推荐系统的需求进一步扩展. 我们使用门控循环单元 GRU (gated recurrent unit)来捕获各个视图中的顺序信息:
{\boldsymbol{h}}_{v,t}^{U}=GRU\left({\boldsymbol{h}}_{v,t-1}^{U},{\boldsymbol{x}}_{v,t}^{U}\right), (10) 其中 {\boldsymbol{h}}_{v,t}^{U} 代表视角 v 的隐藏状态,我们使用隐藏状态作为每个视图下学习到的偏好. 直接将隐藏状态送入 softmax 网络层就可以产生推荐结果,但由于 softmax 函数会使得网络更倾向于选择置信度最高的类别,而忽视其他可能的选择. 这种情况下,即使某些推荐结果并不准确,它们也会被模型过度自信地排在前面. 这可能导致用户接收到与其实际兴趣不符的推荐,降低推荐系统的可靠性和用户满意度. 因此,需要设计一种能够有效保障推荐结果可靠性的方法,以提升推荐性能.
3.3 可信决策
本文并没有像传统做法一样简单地将所有视角中的信息整合到一个表征中,而是在证据层面评估每种视角的置信度,最后整合不同视角的信息获得每个项目的推荐概率和当前预测的总体不确定性.
推荐本质上是一种具有 \left|I\right| 个类别的多分类问题. 只需把传统的分类器稍加改动转化为基于证据的分类器,神经网络可以从输入中捕捉证据来诱导分类意见[29]. 我们将传统分类器 softmax 层替换为激活函数层(即 ReLu 层). 因此,对于第 v 个视图,这些非负值就被视为证据向量 {\boldsymbol{e}}_{v}=\left[{e}_{v,1},{e}_{v,2},… ,{e}_{v,\left|I\right|}\right] . 基于主观逻辑[30]的可信决策理论定义了一个基于证据获得不同类别概率(信念质量)和总体不确定性(不确定性质量)的理论框架. 证据与狄利克雷分布参数密切相关,即狄利克雷分布的参数 {\alpha }_{v,i} 是由证据 {e}_{v,i} 导出的:
{\alpha }_{v,i}={e}_{v,i}+1, (11) 主观逻辑会为每个项目分配一个信念质量 {b}_{v,i} ,并为该视角下的整体框架分配一个总体不确定性 {c}_{v} . 在视角 v 中, \left|I\right|+1 个质量值是非负的,且总和为1,
\sum _{i=1}^{\left|I\right|}{b}_{v,i}+{c}_{v}=1. (12) 其中 {b}_{v,i}\ge 0 表示第 i 个项目被推荐的概率, {c}_{v} 代表该视角下的总体不确定性. 具体计算方式如下:
{b}_{v,i}=\frac{{e}_{v,i}}{{D}_{v}}=\frac{{\alpha }_{v,i}-1}{{D}_{v}},{c}_{v}=\frac{\left|I\right|}{{D}_{v}}, (13) 式 \left(13\right) 中 {D}_{v}=\displaystyle\sum\limits_{i=1}^{\left|I\right|}\left({e}_{v,i}+1\right)=\displaystyle\sum\limits_{i=1}^{\left|I\right|}{\alpha }_{v,i} 代表狄利克雷强度. 信念分配可以被视为主观意见,也就是说,项目 i 的证据越多,它被分配的概率也就越大.
不同视角的质量往往因样本质量不同而存在差异,对于不同视角间的融合,我们提出了一种自适应的融合方法,并不是给每个视角分配固定权重. Dempster-Shafer 理论允许将不同来源的证据结合起来,在我们的算法模型中,它结合了多模态视角信息和商品ID视角信息的质量分配集,从而获得联合质量. 这里可以灵活扩展到多个视图融合. 具体来说, {M}_{1}=\{{\left\{{b}_{1,i}\right\}}_{i=1}^{\left|I\right|},{c}_{1}\} 代表多模态视角的质量集, {M}_{2}= \{{\{{b}_{2,i}\}}_{i=1}^{\left|I\right|},{c}_{2}\} 代表商品ID视角的质量集,两者一起计算可以得到联合质量集 M ,
M={M}_{1}\earth{M}_{2}. (14) 各部分更具体的计算规则如下:
{b}_{i}=\frac{1}{1-\beta }\left({b}_{1,i}{b}_{2,i}+{b}_{1,i}{c}_{2}+{b}_{2,i}{c}_{1}\right),c=\frac{{c}_{1}{c}_{2}}{1-\beta }, (15) 其中 \beta =\displaystyle\sum\limits_{i\ne j}{b}_{1,i}{b}_{2,j} 代表2个质量集中的冲突程度, \dfrac{1}{1-\beta } 用于归一化. 因此,相应的联合证据和狄利克雷分布的参数可以诱导为
表 2 各数据集的实验结果Table 2. Experimental Results for Each Datasetk 模型 Amazon-Beauty Amazon-Sport Amazon-Toys Yelp Recall /% NDCG /% Recall /% NDCG /% Recall /% NDCG /% Recall /% NDCG /% 10 GRU4Rec 5.29 2.66 3.12 1.57 3.70 1.84 3.61 1.84 Caser 4.74 2.39 2.27 1.18 3.61 1.86 3.80 1.97 Bert4Rec 5.29 2.37 2.95 1.30 5.33 2.34 5.24 3.27 SASRec 8.28 3.71 5.26 2.33 8.31 3.75 6.50 4.01 RNS 8.96 4.04 5.32 2.35 9.36 4.25 6.76 4.12 DIF-SR 9.08 4.46 5.56 2.64 10.13 5.04 6.98 4.19 MMSRec 9.49 4.76 6.35 3.23 11.54 6.14 7.49 4.52 本文 9.43 4.85 6.39 3.35 11.83 6.92 8.43 4.90 20 GRU4Rec 8.93 3.44 4.82 2.01 5.88 2.39 5.92 2.43 Caser 7.31 3.02 3.64 1.53 5.66 02.38 6.08 2.55 Bert4Rec 8.15 3.09 4.65 1.73 7.87 2.97 7.56 3.85 SASRec 11.97 4.64 7.73 2.95 11.68 4.60 9.28 4.71 RNS 12.31 4.78 7.74 2.99 12.31 5.12 9.54 4.72 DIF-SR 12.84 5.41 7.98 3.25 13.82 4.97 10.03 2.96 MMSRec 13.41 5.77 9.57 4.23 10.03 7.04 11.07 5.25 本文 14.34 6.22 10.18 4.72 11.68 7.83 12.69 5.95 注:加粗的数字代表最佳实验结果. D=\frac{\left|I\right|}{c},{e}_{i}={b}_{i}\times D,{\alpha }_{i}={e}_{i}+1. (16) 综上,我们可以得到估计的联合证据 \boldsymbol{e} 和狄利克雷分布的相应参数 \boldsymbol{\alpha } ,从而得出每个商品的最终概率和总体不确定性. 相应的损失函数由交叉熵损失调整得到:
{\mathcal{L}}_{\mathrm{c}\mathrm{e}\mathrm{r}}\left({\boldsymbol{\alpha }}_{v}\right)=\sum _{j=1}^{\left|I\right|}{y}_{ij}\left(\psi \left({D}_{\boldsymbol{v}}\right)-\psi \left({\alpha }_{v,j}\right)\right), (17) 其中 \psi (\cdot ) 是digamma函数. 损失函数是交叉熵损失函数在 {\boldsymbol{\alpha }}_{v} 确定的单纯性形上的积分,它允许每个样本的正确标签比其他类别标签产生更多的证据. 因此,本文提出的算法模型总体损失函数为
L={\mathcal{L}}_{\mathrm{r}\mathrm{e}\mathrm{c}}\left({S}^{U}\right)+\lambda \left(\sum _{v=1}^{\left|V\right|}{\mathcal{L}}_{\mathrm{c}\mathrm{e}\mathrm{r}}\left({\boldsymbol{\alpha }}_{v}\right)+{\mathcal{L}}_{\mathrm{c}\mathrm{e}\mathrm{r}}\left(\boldsymbol{\alpha }\right)\right). (18) 4. 实 验
为了验证模型的有效性,本文在4个真实公开的数据集上进行了实验. 首先介绍数据集、评估指标、基线方法和参数设置. 随后将模型的性能与基线的性能进行比较. 最后进行消融实验并回答以下问题:
问题1. 模型能否超越经典的序列推荐方法和多模态序列推荐方法.
问题2. 不同的组件如何影响模型的性能.
问题3. 超参数的设置对模型有何影响.
4.1 数据集
本文选择了4个真实世界的公共数据集进行实验,包括Amazon-Beauty,Amazon-Sport,Amazon-Toys,Yelp.我们为所有数据集选择了产品图片和用户评论作为附加的多模态信息. 参照以前的方法[31]对数据进行预处理,保留5次及5次以上交互的用户和项目. 然后,根据时间戳对每个用户的交互进行排序. 所有交互都被视为隐式反馈. 4组数据的统计结果如表1所示:
表 1 数据集Table 1. Dataset数据集 用户 项目 交互 稀疏度/% Amazon-Beauty 22 363 12 101 198 502 99.93 Amazon-Sport 35 598 18 357 256 3083 99.91 Amazon-Toys 19 412 11 924 167 597 99.93 Yelp 30 499 20 068 2 563 083 99.95 4.2 评估指标
为了评估序列推荐系统的性能,本文采用Top- k 召回率 ( Recall@k ) 和 Top- k 归一化折扣累积增益 ( NDCG@k )2种评价指标,值越高,表示模型的性能就越好. 其中 k 从{10,20}2个常用指标中选择. Recall 的计算公式如下:
Recall=\frac{\left|R\left(u\right)\bigcap T\left(u\right)\right|}{T\left(u\right)}, (19) 其中 R\left(u\right) 表示模型预测出需要推荐给用户的商品集合, T\left(u\right) 表示真实测试集中被推荐的集合. NDCG 的计算公式是
NDCG=\frac{DCG}{IDCG}. (20) 式(20)中各部分的详细计算公式如下:
DCG=\sum _{i=1}^{p}\frac{{2}^{{rel}_{i}}-1}{\mathrm{l}\mathrm{b}\left(i+1\right)},IDCG=\sum _{i=1}^{\left|REL\right|}\frac{{2}^{{rel}_{i}}-1}{\mathrm{l}\mathrm{b}\left(i+1\right)}. (21) 其中 {rel}_{i} 表示第 i 个位置的商品用户是否喜欢,喜欢为1,否则为0. REL 表示将被推荐的商品相关性从大到小排序后的集合, IDCG 的分子都为1,它代表了召回集合中的商品按用户喜欢相关性排序的最理想情况. 根据文献[32]的建议,我们以完整排名的方式评估模型性能,以进行公平比较. 排名结果来自整个项目集,而不是样本集上获得的.
4.3 基线方法
我们选择了2类方法进行比较:经典的序列推荐方法(即 GRU4Rec,SASRecCaser,BERT4Rec)和结合不同侧信息的新方法,其中包括利用商品属性的 DIF-SF、利用评论信息的RNS和利用多模态信息的 MMSRec. 以上提到的方法都只考虑了与项目相关的侧信息.
GRU4Rec[3]:基于会话的推荐模型,使用门控循环单元更好地捕获用户序列行为,提高推荐性能.
SASRec[31]:序列推荐模型,利用自我注意力机制分析整个用户行为序列,预测下一个可能交互的商品.
Caser[33]:序列推荐模型,采用卷积滤波器捕获全局级别和局部级别的用户序列行为模式.
BERT4Rec[34]:具有双向编码器的序列推荐模型,它使用类似完形填空任务去训练双向编码器并预测被屏蔽的项目.
DIF-SR [16]:考虑商品各种属性的序列推荐模型,它将和商品相关的侧信息从输入层转移至注意力层,并将注意力计算与项目表征分离开来.
RNS[35]:文本评论驱动的序列推荐模型,综合考虑了用户的内在偏好和序列行为模式.
MMSRec[36]:自监督的多模态模型,整合了视觉模态和文本模态的特征,采用双塔架构和自监督学习来提高序列推荐性能.
4.4 参数设置
对于以上提到的模型,我们都使用了公开的源代码和真实世界的数据集. 模型中的用到的超参数,我们遵循了原作者的建议,列出了每个基线方法在建议超参数设置下的最优结果. 本文提出的模型Large-TR基于pytorch实现,大型语言模型为qwen-max-
1201 ,使用自适应梯度算法进行了100次训练,批样本大小为 32,学习率为0.001. 对于其他超参数,我们遍历所有参数设置以找便到最优结果,包括:隐藏层大小∈{100, 200, 400, 500, 600, 700,1000 },层数∈{1, 2, 3, 4},图像嵌入维数∈{256, 512,1024 },文本嵌入维数∈{256, 512,1024 }. 不同数据集的结果可能会有所差异.4.5 总体性能(问题1)
在4个数据集上的实验结果如表2所示. 通过这些结果,我们可以观察到模型Large-TR在多模态序列推荐中展示出了优异的性能. 在大多数情况下,包含辅助信息的推荐方法(如MMSRec,RNS,DIF-SR)在性能表现上优于传统的推荐方法(如GRU4Rec,Caser,BERT4Rec,SASRec),这验证了引入辅助信息提升性能的可行性. 此外,MMSRec相较于其他引入辅助信息的方法(如RNS,DIF-SF)表现更为出色,这表明使用多模态内容的方法与仅使用单一模态的推荐方法相比,能让模型从更多维度和更丰富的上下
文中提取信息,从而更准确地反映用户的真实意图和兴趣偏好. 最后,Large-TR几乎在所有基线方法中均取得了最优表现. 这主要得益于以下几个方面首先,我们充分利用了用户生成的多模态内容,这使得我们的算法模型具有更丰富和多样化的输入特征. 其次,我们特别考虑了多模态内容中存在的噪音问题,设计了基于大型语言模型的降噪策略,提高了数据质量. 最后,通过可信决策机制,我们从多模态信息和项目信息2个视角获取一致且可信的推荐决策.
4.6 消融实验(问题2)
为了确定各种类型的辅助信息对模型Large-TR的影响,我们使用不同的辅助信息进行了消融实验. 我们采用在推荐平台上常见的数据:项目ID、用户评论(文本信息),商品图片(视觉信息). 针对以上数据,我们分别设计了4种类型的实验如表3所示:
表 3 各数据集的辅助信息消融结果Table 3. Side-Information Ablation Results for Each Dataset% 辅助信息 Amazon-Beauty Amazon-Sport Recall @1 0 NDCG @ 10 Recall @1 0 NDCG @ 10 项目ID 5.29 2.66 3.12 1.57 项目ID+图片 7.21 3.78 4.84 2.39 项目ID+文本 8.93 4.49 5.50 2.67 全部 9.43 4.85 6.39 3.35 实验结果表明,仅使用文本或图片信息就能提高推荐性能,这证明了侧面信息的有效性. 此外,2种模态信息的结合也能进一步提高推荐性能,这表明我们提出的融合算法可以有效地利用来自不同模态的信息.
此外,为了研究模型Large-TR中不同组件对实验结果的影响,我们设计了相应的消融研究,并分别在Amazon-Beauty,Amazon-Sport,Yelp 数据集上进行了实验,实验结果如表4所示:
表 4 各数据集的组件消融结果Table 4. Component Ablation Results for Each Dataset% 实验 Amazon-Beauty Amazon-Toys Yelp Recall @ 10 NDCG @ 10 Recall @ 10 NDCG @ 10 Recall @ 10 NDCG @ 10 T1 8.82 4.49 9.36 4.25 7.11 4.32 T2 9.11 4.67 10.88 5.98 8.01 4.73 T3 9.43 4.85 11.83 6.92 8.43 4.90 相关实验设置如下:
T1. Large-TR w/o LLM:图片和文本经过对应的编码器后直接拼接,其他部分不变;
T2. Large-TR w/o Trust:可信决策部分由单层 softmax 代替,其他部分不变;
T3. Large-TR w/o LLM&Trust:包含所有组件的模型.
根据实验结果,我们可以得出以下结论:引入大型语言模型去噪和可信决策2个组件可以有效提升推荐算法的性能,这说明我们模型设计是合理且有效的. 大型语言模型利用其丰富的语义知识,过滤不相关的图文内容,显著提高了多模态数据质量. 最后,可信决策机制在证据层面评估每个视角的置信度,整合不同视角的信息获得每个项目的推荐概率和当前预测的总体不确定性,提供可信推荐.
4.7 参数设置(问题3)
本节主要研究了网络的隐藏层维度和层数这2个超参数对实验结果的影响,图3显示了模型Large-TR在不同隐藏层维度设置下的Recall@10和 NDCG@10 分数. 4个数据集的结果表明,当隐藏层维度大小为600时,模型性能最佳. 图4显示了不同网络层数与模型性能的关系,可以看出网络层数为2时,模型效果最好.
5. 总 结
本文探讨了基于多模态内容的序列推荐问题,针对如何从噪声较多的用户生成内容中获得可信推荐这一挑战,提出了Large-TR方法. 该方法利用大型语言模型的丰富语义知识,识别和过滤用户生成内容中的噪声,提高多模态数据质量. 接着,从商品ID和多模态信息2个视角挖掘用户偏好,动态评估推荐结果的不确定性,并提供相应的推荐结果及置信度. 在4个公开数据集上的实验结果表明,该模型在性能上优于大多数现有的序列推荐模型. 最后的消融实验证明了Large-TR中各个组件的有效性. 未来的工作会考虑可解释的可信推荐系统,帮助用户更好地理解推荐结果. 此外,对置信度的评估也是一个值得深入研究的方向.
作者贡献声明:闫萌提出了算法思路和实验方案,并撰写论文;徐偲辅助写作并修改论文;黄海槟负责数据处理、实验实施及图表绘制;赵伟与管子玉提供了关键的指导意见.
-
表 1 基于机器学习的数据库系统参数优化与性能预测方法
Table 1 Machine Learning-Based Parameter Tuning and Performance Prediction Approaches for Database Systems
类别 方法 机器学习技术 训练难度 目标 基于传统机器学习技术 iTuned[1] 高斯过程回归 ☆ 参数优化 OtterTune[3,41] 因子分析、k-means、Lasso、高斯过程回归 ☆ 参数优化 Ishihara等人[42] 高斯过程回归 ☆ 参数优化 iBTune[43] 深度神经网络 ☆☆☆ 参数优化 Rodd等人[44] 神经网络 ☆☆☆ 参数优化 Zheng等人[45] 神经网络 ☆☆☆ 参数优化 ACTGAN[46] 生成式对抗网络、Lasso ☆☆☆ 参数优化 Siegmund等人[47] 逐步线性回归 ☆ 性能预测 Nair等人[48] 分类与回归树 ☆ 性能预测 DeepPerf[49] 深度前馈神经网络、Lasso ☆☆☆ 性能预测 基于深度强化学习技术 CDBTune[50] DDPG ☆☆☆ 参数优化 QTune[51] DS-DDPG ☆☆☆ 参数优化 注:☆表示训练难度级别. 表 2 变化环境下的数据库系统参数优化与性能预测方法
Table 2 Parameter Tuning and Performance Prediction Approaches for Database Systems Under Environmental Changes
类别 方法 特点 目标 工作负载变化 OtterTune[3,41] 根据工作负载特征向量进行映射 参数优化 D-OtterTune[56] 动态负载匹配 参数优化 Rafiki[38] 在代理模型中包含工作负载特征和最具影响力的参数 参数优化 SOPHIA[57] 结合工作负载预测和成本效益分析器确定何时更改参数配置 参数优化 OPTIMUSCLOUD[58] 针对动态工作负载对数据库和云配置参数进行联合调优 参数联合优化 Kossmann等人[59] 同时考虑工作负载预测和运行时性能监视来及时确定调优点 参数优化 Kossmann等人[60] 基于组件的自治数据库系统框架 参数优化 软件版本变化 Mühlbauer等人[61] 识别跨软件变体和系统版本的性能变化 性能预测 硬件配置变化 Valov等人[62] 性能预测模型在不同硬件平台间的迁移 性能预测 多种环境变化 Jamshidi等人[63] 重用源环境数据 性能预测 ResTune[64] 采用元学习策略来提取历史任务的调优经验 参数优化 Jamshidi等人[65] 不同的环境中存在不同形式的可迁移知识,有助于学习性能预测模型 性能预测 Javidian等人[66] 配置参数的因果影响可以在不同环境中以高可信度进行迁移 性能预测 BEETLE[67] 选择最合适的源环境(Bellwether环境) 参数优化 表 3 各种参数优化方法的对比评估
Table 3 Comparative Evaluation of the Various Approaches for Parameter Tuning
方法 复杂性 样本需求 动态变化性 精确性 通用性 手工参数优化方法 ☆ ☆☆ ☆ ☆☆ ☆ 基于规则的参数优化方法 ☆ ☆☆☆ ☆ ☆ ☆ 基于模型的参数优化方法 ☆ ☆☆☆ ☆ ☆☆ ☆ 基于搜索的参数优化方法 ☆☆ ☆☆ ☆ ☆ ☆☆☆ 基于传统机器学习的参数优化方法 ☆☆ ☆ ☆ ☆☆ ☆☆☆ 基于深度强化学习的参数优化方法 ☆☆☆ ☆☆ ☆☆ ☆☆☆ ☆☆ 变化环境下的数据库参数优化方法 ☆☆☆ ☆☆ ☆☆☆ ☆☆☆ ☆☆ 注:星号数量标识不同方法在5个方面的表现,星号越多表现越好. -
[1] Duan Songyun, Thummala V, Babu S. Tuning database configuration parameters with iTuned[J]. Proceedings of the VLDB Endowment, 2009, 2(1): 1246−1257 doi: 10.14778/1687627.1687767
[2] Van Aken D. On automatic database management system tuning using machine learning[D]. Pittsburgh, PA: Carnegie Mellon University, 2021
[3] Van Aken D, Pavlo A, Gordon G J, et al. Automatic database management system tuning through large-scale machine learning[C] //Proc of the 2017 ACM Int Conf on Management of Data. New York: ACM, 2017: 1009−1024
[4] Xu Tianyin, Zhang Jiaqi, Huang Peng, et al. Do not blame users for misconfigurations[C] //Proc of the 24th ACM Symp on Operating Systems Principles. New York: ACM, 2013: 244−259
[5] Babu S, Borisov N, Duan Songyun, et al. Automated experiment-driven management of (database) systems[C/OL] //Proc of the 12th Workshop on Hot Topics in Operating Systems (HotOS). New York: ACM, 2009 [2021-09-10]. https://www.usenix.org/legacy/event/hotos09/tech/full_papers/babu/babu.pdf
[6] 李国良, 周煊赫, 孙佶, 等. 基于机器学习的数据库技术综述[J], 计算机学报, 2020, 43(11): 2019−2049 Li Guoliang, Zhou Xuanhe, Sun Ji, et al. A survey of machine-learning-based database techniques[J]. Chinese Journal of Computers, 2020, 43(11): 2019−2049 (in Chinese)
[7] Chaudhuri S. An overview of query optimization in relational systems[C] //Proc of the 17th ACM SIGACT-SIGMOD-SIGART Symp on Principles of Database Systems. New York: ACM, 1998: 34−43
[8] Kossmann D. The state of the art in distributed query processing[J]. ACM Computing Surveys, 2000, 32(4): 422−469 doi: 10.1145/371578.371598
[9] Lu Hongjun. Query Processing in Parallel Relational Database Systems[M]. Los Alamitos, CA: IEEE Computer Society Press, 1994
[10] Herodotou H, Chen Yuxing, Lu Jiaheng. A survey on automatic parameter tuning for big data processing systems[J]. ACM Computing Surveys, 2020, 53(2): Article No. 43
[11] Huang Changwu, Li Yuanxiang, Yao Xin. A survey of automatic parameter tuning methods for metaheuristics[J]. IEEE Transactions on Evolutionary Computation, 2019, 24(2): 201−216
[12] 柴茗珂,范举,杜小勇. 学习式数据库系统: 挑战与机遇[J]. 软件学报,2020,31(3):806−830 Chai Mingke, Fan Ju, Du Xiaoyong. Learnable database systems: Challenges and opportunities[J]. Journal of Software, 2020, 31(3): 806−830 (in Chinese)
[13] 孙路明,张少敏,姬涛,等. 人工智能赋能的数据管理技术研究[J]. 软件学报,2020,31(3):600−619 doi: 10.13328/j.cnki.jos.005909 Sun Luming, Zhang Shaomin, Ji Tao, et al. Survey of data management techniques powered by artificial intelligence[J]. Journal of Software, 2020, 31(3): 600−619 (in Chinese) doi: 10.13328/j.cnki.jos.005909
[14] 孟小峰,马超红,杨晨. 机器学习化数据库系统研究综述[J]. 计算机研究与发展,2019,56(9):1803−1820 doi: 10.7544/issn1000-1239.2019.20190446 Meng Xiaofeng, Ma Chaohong, Yang Chen. Survey on machine learning for database systems[J]. Journal of Computer Research and Development, 2019, 56(9): 1803−1820 (in Chinese) doi: 10.7544/issn1000-1239.2019.20190446
[15] Costa R L C, Moreira J, Pintor P, et al. A survey on data-driven performance tuning for big data analytics platforms[J]. Big Data Research, 2021, 25: 100206
[16] Lu Jiaheng, Chen Yuxing, Herodotou H, et al. Speedup your analytics: Automatic parameter tuning for databases and big data systems[J]. Proceedings of the VLDB Endowment, 2019, 12(12): 1970−1973 doi: 10.14778/3352063.3352112
[17] Yan Zhengtong, Lu Jiaheng, Chainani N, et al. Workload-aware performance tuning for autonomous DBMSs[C] //Proc of the 37th IEEE Int Conf on Data Engineering (ICDE). Piscataway, NJ: IEEE, 2021: 2365−2368
[18] Van Aken D, Yang Dongsheng, Brillard S, et al. An inquiry into machine learning-based automatic configuration tuning services on real-world database management systems[J]. Proceedings of the VLDB Endowment, 2021, 14(7): 1241−1253 doi: 10.14778/3450980.3450992
[19] Renouard J. MySQLTuner [CP/OL]. (2014-02-22)[2021-06-08].https://github.com/major/MySQLTuner-perl
[20] Oracle Corporation. Oracle database performance tuning guides [EB/OL]. 2014[2021-06-08]. https://docs.oracle.com/cd/E11882_01/server.112/e41573/toc.htm
[21] International Business Machines Corporation. IBM tuning guides [EB/OL]. 2012[2021-06-08]. https://www.ibm.com/docs/en/control-center/6.1.2?topic=processor-tuning-database-server
[22] Microsoft Corporation. Microsoft Azure SQL database tuning guides [EB/OL]. 2021[2021-09-13]. https://docs.microsoft.com/en-us/azure/sql-database/sql-database-automatic-tuning
[23] Oracle Corporation. WebLogic database tuning [EB/OL]. 2018[2021-06-08].https://docs.oracle.com/cd/E13222_01/wls/docs92/perform/dbtune.html
[24] Xu Tianyin, Jin Long, Fan Xuepeng, et al. Hey, you have given me too many knobs!: Understanding and dealing with over-designed configuration in system software[C] //Proc of the 10th Joint Meeting on Foundations of Software Engineering. New York: ACM, 2015: 307−319
[25] Jin Dongpu, Qu Xiao, Cohen M B, et al. Configurations everywhere: Implications for testing and debugging in practice[C] //Proc of the 36th Int Conf on Software Engineering. New York: ACM, 2014: 215−224
[26] Kwan E, Lightstone S, Storm A, et al. Automatic configuration for IBM DB2 universal database[R]. New York: IBM, 2002
[27] Storm A J, Garcia-Arellano C, Lightstone S S, et al. Adaptive self-tuning memory in DB2[C] //Proc of the 32nd Int Conf on Very Large Data Bases. New York: ACM, 2006: 1081−1092
[28] Tian Wenhu, Martin P, Powley W. Techniques for automatically sizing multiple buffer pools in DB2[C] //Proc of the 2003 Conf of the Centre for Advanced Studies on Collaborative Research. New York: ACM, 2003: 294−302
[29] Dias K, Ramacher M, Shaft U, et al. Automatic performance diagnosis and tuning in Oracle[C/OL] //Proc of the 2nd Biennial Conf on Innovative Data Systems Research (CIDR). 2005: 84−94. [2021-07-14].https://database.cs.wisc.edu/cidr/cidr2005/papers/P07.pdf
[30] Yagoub K, Belknap P, Dageville B, et al. Oracle’s SQL performance analyzer[J]. IEEE Data Engineering Bulletin, 2008, 31(1): 51−58
[31] Belknap P, Dageville B, Dias K, et al. Self-tuning for SQL performance in Oracle database 11g[C] //Proc of the 25th IEEE Int Conf on Data Engineering. Piscataway, NJ: IEEE, 2009: 1694−1700
[32] Narayanan D, Thereska E, Ailamaki A. Continuous resource monitoring for self-predicting DBMS[C] //Proc of the 13th IEEE Int Symp on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems. Piscataway, NJ: IEEE, 2005: 239−248
[33] Tran D N, Huynh P C, Tay Y C, et al. A new approach to dynamic self-tuning of database buffers[J]. ACM Transactions on Storage, 2008, 4(1): Article No. 3
[34] Sullivan D G, Seltzer M I, Pfeffer A. Using probabilistic reasoning to automate software tuning[J]. ACM SIGMETRICS Performance Evaluation Review, 2004, 32(1): 404−405 doi: 10.1145/1012888.1005739
[35] Yoon D Y, Niu Ning, Mozafari B. DBSherlock: A performance diagnostic tool for transactional databases[C] //Proc of the 2016 Int Conf on Management of Data. New York: ACM, 2016: 1599−1614
[36] Wei Zhijie, Ding Zuohua, Hu Jueliang. Self-tuning performance of database systems based on fuzzy rules[C] //Proc of the 11th Int Conf on Fuzzy Systems and Knowledge Discovery (FSKD). Piscataway, NJ: IEEE, 2014: 194−198
[37] Zhu Yuqing, Liu Jianxun, Guo Mengying, et al. BestConfig: Tapping the performance potential of systems via automatic configuration tuning[C]//Proc of the 8th Symp on Cloud Computing. New York: ACM, 2017: 338−350
[38] Mahgoub A, Wood P, Ganesh S, et al. Rafiki: A middleware for parameter tuning of NoSQL datastores for dynamic metagenomics workloads[C] //Proc of the 18th ACM/IFIP/USENIX Middleware Conf. New York: ACM, 2017: 28−40
[39] Debnath B K, Lilja D J, Mokbel M F. SARD: A statistical approach for ranking database tuning parameters[C] //Proc of the 24th IEEE Int Conf on Data Engineering Workshop. Piscataway, NJ: IEEE, 2008: 11−18
[40] Lima M I V, de Farias V A E, Praciano F D B S, et al. Workload-aware parameter selection and performance prediction for in-memory databases[C/OL] //Proc of the 33rd SBC Brazilian Symp on Databases (SBBD). 2018: 169−180. [2021-08-01].https://sbbd.org.br/2018/wp-content/uploads/sites/5/2018/08/169-sbbd_2018-fp.pdf
[41] Zhang Bohan, Aken D V, Wang J, et al. A demonstration of the ottertune automatic database management system tuning service[J]. Proceedings of the VLDB Endowment, 2018, 11(12): 1910−1913 doi: 10.14778/3229863.3236222
[42] Ishihara Y, Shiba M. Dynamic configuration tuning of working database management systems[C] //Proc of the 2nd IEEE Global Conf on Life Sciences and Technologies (LifeTech). Piscataway, NJ: IEEE, 2020: 393−397
[43] Tan Jian, Zhang Tieying, Li Feifei, et al. iBTune: Individualized buffer tuning for large-scale cloud databases[J]. Proceedings of the VLDB Endowment, 2019, 12(10): 1221−1234 doi: 10.14778/3339490.3339503
[44] Rodd S F, Kulkarni U P. Adaptive tuning algorithm for performance tuning of database management system[J]. arXiv preprint, arXiv: 1005.0972, 2010
[45] Zheng Chonghuan, Ding Zuohua, Hu Jieliang. Self-tuning performance of database systems with neural network[C] //Proc of the 10th Int Conf on Intelligent Computing: Intelligent Computing Theory. Berlin: Springer, 2014: 1−12
[46] Bao Liang, Liu Xin, Wang Fangzheng, et al. ACTGAN: Automatic configuration tuning for software systems with generative adversarial networks[C] //Proc of the 34th IEEE/ACM Int Conf on Automated Software Engineering (ASE). Piscataway, NJ: IEEE, 2019: 465−476
[47] Siegmund N, Grebhahn A, Apel S, et al. Performance-influence models for highly configurable systems[C] //Proc of the 10th Joint Meeting on Foundations of Software Engineering. New York: ACM, 2015: 284−294
[48] Nair V, Menzies T, Siegmund N, et al. Using bad learners to find good configurations[C] //Proc of the 11th Joint Meeting on Foundations of Software Engineering. New York: ACM, 2017: 257−267
[49] Ha H, Zhang Hongyu. DeepPerf: Performance prediction for configurable software with deep sparse neural network[C] //Proc of the 41st IEEE/ACM Int Conf on Software Engineering (ICSE). Piscataway, NJ: IEEE, 2019: 1095−1106
[50] Zhang Ji, Liu Yu, Zhou Ke, et al. An end-to-end automatic cloud database tuning system using deep reinforcement learning[C] //Proc of the 2019 Int Conf on Management of Data. New York: ACM, 2019: 415−432
[51] Li Guoliang, Zhou Xuanhe, Li Shifu, et al. QTune: A query-aware database tuning system with deep reinforcement learning[J]. Proceedings of the VLDB Endowment, 2019, 12(12): 2118−2130 doi: 10.14778/3352063.3352129
[52] Tibshirani R. Regression shrinkage and selection via the Lasso[J]. Journal of the Royal Statistical Society:Series B (Methodological), 1996, 58(1): 267−288 doi: 10.1111/j.2517-6161.1996.tb02080.x
[53] Rasmussen C E. Gaussian processes in machine learning[C] //Proc of the 2003 Summer School on Machine Learning. Berlin: Springer, 2003: 63−71
[54] Lillicrap T P, Hunt J J, Pritzel A, et al. Continuous control with deep reinforcement learning[J]. arXiv preprint, arXiv: 1509.02971, 2015
[55] Hasselt H. Double Q-learning[J]. Advances in Neural Information Processing Systems, 2010, 23: 2613−2621
[56] 沈忱,邰凌翔,彭煜玮. 面向自动参数调优的动态负载匹配方法[J]. 计算机应用,2021,41(3):657−661 Shen Chen, Tai Lingxiang, Peng Yuwei. Dynamic workload matching for automatic parameter tuning[J]. Journal of Computer Applications, 2021, 41(3): 657−661 (in Chinese)
[57] Mahgoub A, Wood P, Medoff A, et al. SOPHIA: Online reconfiguration of clustered NoSQl databases for time-varying workloads[C] //Proc of the 2019 USENIX Annual Technical Conf (USENIX ATC’19). Berkeley, CA: USENIX Association, 2019: 223−240
[58] Mahgoub A, Medoff A M, Kumar R, et al. OPTIMUSCLOUD: Heterogeneous configuration optimization for distributed databases in the cloud[C] //Proc of the 2020 USENIX Annual Technical Conf (USENIX ATC’20). Berkeley, CA: USENIX Association, 2020: 189−203
[59] Kossmann J, Schlosser R. A framework for self-managing database systems[C] //Proc of the 35th IEEE Int Conf on Data Engineering Workshops (ICDEW). Piscataway, NJ: IEEE, 2019: 100−106
[60] Kossmann J, Schlosser R. Self-driving database systems: A conceptual approach[J]. Distributed and Parallel Databases, 2020, 38(4): 795−817 doi: 10.1007/s10619-020-07288-w
[61] Mühlbauer S, Apel S, Siegmund N. Identifying software performance changes across variants and versions[C] //Proc of the 35th IEEE/ACM Int Conf on Automated Software Engineering (ASE). Piscataway, NJ: IEEE, 2020: 611−622
[62] Valov P, Petkovich J C, Guo Jianmei, et al. Transferring performance prediction models across different hardware platforms[C] //Proc of the 8th ACM/SPEC Int Conf on Performance Engineering. New York: ACM, 2017: 39−50
[63] Jamshidi P, Velez M, Kästner C, et al. Transfer learning for improving model predictions in highly configurable software[C] //Proc of the 12th IEEE/ACM Int Symp on Software Engineering for Adaptive and Self-Managing Systems (SEAMS). Piscataway, NJ: IEEE, 2017: 31−41
[64] Zhang Xinyi, Wu Hong, Chang Zhuo, et al. ResTune: Resource oriented tuning boosted by meta-learning for cloud databases[C] //Proc of the 2021 Int Conf on Management of Data. New York: ACM, 2021: 2102−2114
[65] Jamshidi P, Siegmund N, Velez M, et al. Transfer learning for performance modeling of configurable systems: An exploratory analysis[C] //Proc of the 32nd IEEE/ACM Int Conf on Automated Software Engineering (ASE). Piscataway, NJ: IEEE, 2017: 497−508
[66] Javidian M A, Jamshidi P, Valtorta M. Transfer learning for performance modeling of configurable systems: A causal analysis[J]. arXiv preprint, arXiv: 1902.10119, 2019
[67] Krishna R, Nair V, Jamshidi P, et al. Whence to learn? Transferring knowledge in configurable systems using BEETLE[J]. IEEE Transactions on Software Engineering, 2021, 47(12): 2956−2972 doi: 10.1109/TSE.2020.2983927
[68] Pavlo A, Angulo G, Arulraj J, et al. Self-driving database management systems[C/OL] //Proc of the 8th Biennial Conf on Innovative Data Systems Research (CIDR). 2017 [2021-07-01].https://15721.courses.cs.cmu.edu/spring2020/papers/27-selfdriving/p42-pavlo-cidr17.pdf
-
期刊类型引用(6)
1. 韩宇捷,徐志杰,杨定裕,黄波,郭健美. CDES:数据驱动的云数据库效能评估方法. 计算机科学. 2024(06): 111-117 . 百度学术
2. 刘传磊,张贺,杨贺. 地铁保护区智能化巡查系统开发及应用研究. 现代城市轨道交通. 2024(09): 23-30 . 百度学术
3. 董文,张俊峰,刘俊,张雷. 国产数据库在能源数字化转型中的创新应用研究. 信息通信技术与政策. 2024(10): 68-74 . 百度学术
4. 阎开. 计算机检测维修与数据恢复技术及应用研究. 信息记录材料. 2023(08): 89-91 . 百度学术
5. 冯丽琴,冯花平. 基于人脸识别的可控化学习数据库系统设计. 数字通信世界. 2023(10): 69-71 . 百度学术
6. 张惠芹,章小卫,杜坤,李江. 基于数字孪生的高校实验室高温设备智能化监管体系的探究. 实验室研究与探索. 2023(11): 249-252+282 . 百度学术
其他类型引用(11)