学习成为统计学家:用于不同值数量估计的学习型估计器
机器学习
2022-02-08 v1 数据库
摘要
估计一列中不同值的数量(NDV)对数据库系统中的许多任务(如列存压缩与数据剖析)十分有用。本工作关注如何从随机(在线/离线)样本中推导出准确的NDV估计。此类高效估计对于即便扫描一次数据也不可行的任务至关重要。现有的基于样本的估计器通常依赖启发式方法或假设,且因数据假设易被破坏而在不同数据集上表现不够稳健。另一方面,由于公式结构复杂,从最大似然估计等原则性公式推导估计器极具挑战。我们提出将NDV估计任务构建于监督学习框架中,旨在学习一个模型作为估计器。为此,我们需要回答若干问题:i)如何使学习型模型与工作负载无关;ii)如何获取训练数据;iii)如何执行模型训练。我们推导了学习框架的条件,在该条件下学习型模型与工作负载无关,即模型/估计器可用合成生成的训练数据训练,随后作为例如用户自定义函数(UDF)直接部署至任意数据仓库,为未见过的表与工作负载提供高效(CPU上微秒级)且准确的NDV估计。我们在九个真实数据集上将学习型估计器与最先进的基于样本的估计器比较,以展示其更优的估计精度。我们已在线发布用于训练数据生成、模型训练及学习型估计器的代码以保证可复现性。
引用
@article{arxiv.2202.02800,
title = {Learning to be a Statistician: Learned Estimator for Number of Distinct Values},
author = {Renzhi Wu and Bolin Ding and Xu Chu and Zhewei Wei and Xiening Dai and Tao Guan and Jingren Zhou},
journal= {arXiv preprint arXiv:2202.02800},
year = {2022}
}
备注
Published at International Conference on Very Large Data Bases (VLDB) 2022