Matrix completion is the study of recovering an underlying matrix from a sparse subset of noisy observations. Traditionally, it is assumed that the entries of the matrix are "missing completely at random" (MCAR), i.e., each entry is revealed at random, independent of everything else, with uniform probability. This is likely unrealistic due to the presence of "latent confounders", i.e., unobserved factors that determine both the entries of the underlying matrix and the missingness pattern in the observed matrix. For example, in the context of movie recommender systems -- a canonical application for matrix completion -- a user who vehemently dislikes horror films is unlikely to ever watch horror films. In general, these confounders yield "missing not at random" (MNAR) data, which can severely impact any inference procedure that does not correct for this bias. We develop a formal causal model for matrix completion through the language of potential outcomes, and provide novel identification arguments for a variety of causal estimands of interest. We design a procedure, which we call "synthetic nearest neighbors" (SNN), to estimate these causal estimands. We prove finite-sample consistency and asymptotic normality of our estimator. Our analysis also leads to new theoretical results for the matrix completion literature. In particular, we establish entry-wise, i.e., max-norm, finite-sample consistency and asymptotic normality results for matrix completion with MNAR data. As a special case, this also provides entry-wise bounds for matrix completion with MCAR data. Across simulated and real data, we demonstrate the efficacy of our proposed estimator.
翻译:矩阵的完成是研究从一小撮杂杂乱的观测中恢复基本矩阵。 传统上, 假设矩阵的条目“ 完全随机消失” (MCAR), 也就是说, 每个条目的显示都是随机的, 与其它所有内容无关, 概率一致。 这可能是不切实际的, 因为存在“ 间接混淆者 ”, 也就是说, 未观察到的因素, 既决定基本矩阵的条目, 也决定所观察到的矩阵的缺失模式。 例如, 在电影推荐者系统中 -- 矩阵完成程序 -- -- 一个卡通的应用程序 -- 一个强烈讨厌恐怖电影的用户不可能看恐怖电影。 一般来说, 每个条目的显示都是随机随机的, 与其它所有其它所有条目的输入数据。 我们开发了一种正式的因果模型, 并且为各种因果估计提供了新的识别参数。 我们设计了一个程序, 我们称之为“ 特别的近邻 ” (SNNNU), 也不可能观看恐怖电影的用户 。 这些混结者产生“ 不随机的” (MAR) 数据,, 这可能会严重影响任何不正确判断程序, 。 我们的正常的输入的矩阵的完成结果 。 。 我们的精确的精确的矩阵,,, 也证明了我们的精确的完成结果, 。