Diffusion models for missing value imputation in tabular data
arxiv [Submitted on 31 Oct 2022, last revised 11 Mar 2023 ]
代码:https://github.com/pfnet-research/CSDI_T
摘要
本文介绍了一种名为 “TabCSDI” 的新方法,用于猜测表格中缺失的信息,当计算机从不完整的数据中学习时,这是一个很大的挑战。它基于一种成功创建图像和声音的技术,但现在已应用于数据表,旨在有效地处理数字和类别。作者测试了表示类别和数字的不同方法,发现他们的做法极大地影响了该方法的成功。在测试中,与其他已知方法相比,“TabCSDI” 表现良好,尤其是在处理混合类型数据方面,这在现实世界中很常见。该研究强调了选择正确的方式来表示不同类型数据的重要性,因为这会显著影响填写缺失信息的准确性。
1 Introduction(引言)
在现实世界的应用中,用于训练预测模型的数据集通常包含缺失值。这种现象可能由多种原因引起,例如人为错误、隐私问题以及数据收集的困难。例如,在人口普查数据中,一些人可能不愿意透露他们的敏感信息,比如就业信息。在医疗保健数据中,不同的患者可能进行了不同的健康检查,这导致数据集对每个患者有不同的可用健康特征。从技术上讲,缺失数据问题可以分为三类:完全随机缺失(MCAR)、随机缺失(MAR)、非随机缺失(MNAR)(详见Rubin和Van Buuren)。
根据Jarrett等人的说法,缺失值插补方法可以分为两类。第一类是迭代方法。它基于使用所有其他可用特征来估计一个特征的条件分布的思想。在一个迭代中,我们将训练一个条件分布估计器来预测每个特征的值。我们将多次重复这个过程,直到过程收敛,即最新的迭代没有根据预先指定的收敛标准显著改变预测输出。这种方法已经被广泛研究,其中最著名的方法之一是基于链式方程的多重插补(MICE)。第二类是深度生成模型方法。在这种方法中,我们将训练一个生成模型,根据观察到的值在缺失部分生成值。可以归类为这种方法的先前方法包括使用去噪自编码器的多重插补(MIDA)、使用变分自编码器处理不完整异构数据(HIVAE)、加权重要性自编码器(MIWAE)和生成对抗性插补网络(GAIN)。最近,扩散模型是一种生成模型,在各种领域如计算机视觉、时间序列数据、化学和自然语言处理中展示了其相对于其他生成模型的有效性。然而,据我们所知,尚未提出用于表格数据缺失值插补的扩散模型。
本文的目标是基于扩散模型方法为时间序列数据插补中缺失值的最新发展,开发一种用于缺失值插补的方法,称为条件得分基础扩散模型(TabCSDI)。CSDI最初是为时间序列数据设计的,它不支持分类变量,而这些对于表格数据是必要的。为了解决这个问题,作者提出了CSDI的一个变体,称为TabCSDI,用于表格数据,使其支持分类和数值特征。作者的实验结果表明,TabCSDI可以成功训练,与现有的迭代方法和生成方法相比,取得了竞争性的性能。我们还可以观察到,分类嵌入方法的选择可能会影响性能。
2 Problem formulation(问题阐述)
设 X = ( R ∪ { ∅ } ) d X = (R ∪ \{∅\})^d X=(R∪{ ∅})d是一个输入空间,其中 R 表示实数空间,“∅”表示一个缺失值。在缺失值插补中,作者给定一个 d 维的训练数据集 X t r = { x i } i = 1 n X_{tr} = \{x_i\}^n_{i=1} Xtr={ xi}i=1n,其中 n 是数据的数量。不失一般性, x i x_i xi 的第 j 个特征定义为 x i j ∈ X x^j_i ∈ X xij∈X,其中一个特征可以是缺失的、数值变量或分类变量。本文重点研究归纳设置,目标是找到一个插补函数 f : X → R d f : X → R^d f:X→Rd,该函数将允许缺失值的输入 X 转换为 d 维实数值 R d R^d Rd。一个理想的 f 应该能够用合理的值替换缺失值。
为了评估 f 的性能,我们给定测试输入数据$ X_{te} = {x_i}^n_{i=1} $和真实值 Y t e = { y i i ∈ R : x i j =