【论文阅读】Probabilistic Imputation for Time-series Classification with Missing Data
实际应用的多变量时间序列数据通常包含大量缺失值。对此类缺失值进行分类的主要方法是使用特定值(零、平均值、相邻时间步长的值)或可学习参数进行启发式插补。然而,这些简单的策略没有考虑到数据生成过程,更重要的是,由于缺失值的多种可能性,无法有效地捕捉预测中的不确定性。在本文中,提出了一种新的概率框架,用于对缺失值的多变量时间序列数据进行分类。用于缺失值插补的深度生成模型和分类器。
Probabilistic Imputation for Time-series Classification with Missing Data
论文链接:https://icml.cc/virtual/2023/poster/23522
作者:SeungHyun Kim · Hyunsu Kim · EungGu Yun · Hwangrae Lee · Jaehun Lee · Juho Lee
机构:韩国科学技术院(KAIST),赛视智能(Saige Research),三星研究院
关键词:时间序列数据插补,概率模型,不确定性
参考文献:Kim S H, Kim H, Yun E, et al. Probabilistic imputation for time-series classification with missing data[C]//International Conference on Machine Learning. PMLR, 2023: 16654-16667.
摘要
实际应用的多变量时间序列数据通常包含大量缺失值。对此类缺失值进行分类的主要方法是使用特定值(零、平均值、相邻时间步长的值)或可学习参数进行启发式插补。然而,这些简单的策略没有考虑到数据生成过程,更重要的是,由于缺失值的多种可能性,无法有效地捕捉预测中的不确定性。在本文中,提出了一种新的概率框架,用于对缺失值的多变量时间序列数据进行分类。模型由两部分组成:用于缺失值插补的深度生成模型和分类器。
Method
提出的方法在MNAR假设下将supMIWAE扩展到时间序列数据。
设可观察值 x1,Tox _ { 1 , T } ^ { o }x1,To ,缺失值 x1,Tmx _ { 1 , T } ^ { m }x1,Tm ,缺失值的掩码 s1,Ts _ { 1 , T }s1,T ,标签 yyy,潜在空间向量 z1:Tz _ { 1 : T }z1:T 。
Prior
假设Gaussian过程先验对 z1:Tz_{1:T}z1:T 潜在空间中的时间相关性进行编码,可得先验pθ(z1:T)p _ { \theta } ( z _ { 1 : T } )pθ(z1:T):
pθ(z1:T)=∏j=1dN(z1:T,j∣0,K) p _ { \theta } ( z _ { 1 : T } ) = \prod _ { j = 1 } ^ { d } N ( z _ { 1 : T , j } | 0 , K ) pθ(z1:T)=j=1∏dN(z1:T,j∣0,K)
Kij=k(ti,tj)i,j∈{1…T} K _ { i j } = k ( t _ { i } , t _ { j } ) \quad i , j \in \left\{ 1 \ldots T \right\} Kij=k(ti,tj)i,j∈{1…T}
其中,k(.,.)k(.,.)k(.,.) 是核函数,在本文的所有实验中都使用 Cauchy 核。
Decoder
对观察到的 pθ(x1:To∣z1:T)p _ { \theta } ( x _ { 1 : T } ^ { o } | z _ { 1 : T } )pθ(x1:To∣z1:T) 的解码器以自回归方式定义:
pθ(x1,To∣z1,T)=∏t=1TN(xto∣μdec(z1,t),diag(σdec2(z1,t))) p _ { \theta } ( x _ { 1 , T } ^ { o } | z _ { 1 , T } ) = \prod _ { t = 1 } ^ { T } N ( x _ { t } ^ { o } | \mu _ { d e c } ( z _ { 1 , t } ) , d i a g ( \sigma _ { d e c } ^ { 2 } ( z _ { 1 , t } ) ) ) pθ(x1,To∣z1,T)=t=1∏TN(xto∣μdec(z1,t),diag(σdec2(z1,t)))
其中$ (\mu _ { d e c } ( z _ { 1 , t } ) , \sigma _ { d e c }( z _ { 1 , t } ))_{t=1}^{T} $用具有因果掩码的transformer定义。
ht=Transformerdec(z1:t) h _ { t } = T r a n s f o r m e r _ { d e c } ( z _ { 1 : t } ) ht=Transformerdec(z1:t)
(μdec(z1:t),σdec(z1:t))=MLPdec(ht) ( \mu _ { d e c } ( z _ { 1 : t } ) , \sigma _ { d e c } ( z _ { 1 : t } ) ) = M L P _ { d e c } ( h _ { t } ) (μdec(z1:t),σdec(z1:t))=MLPdec(ht)
对观测pθ(x1:To∣z1:T)p _ { \theta } ( x _ { 1 : T } ^ { o } | z _ { 1 : T } )pθ(x1:To∣z1:T)和缺失pθ(x1:Tm∣z1:T)p _ { \theta } ( x _ { 1 : T } ^ { m } | z _ { 1 : T } )pθ(x1:Tm∣z1:T)都使用相同的Decoder。
Missing model
缺失模型pψ(s1:T∣x1:T)p _ { \psi } ( s _ { 1 : T } | x _ { 1 : T } )pψ(s1:T∣x1:T)被假设为随时间步长和特征的独立伯努利分布:
pψ(s1:T∣x1:T)=∏t=1T∏j=1dBern(st,j∣σmis,t,j(x1:T)) p _ { \psi } ( s _ { 1 : T } | x _ { 1 : T } ) = \prod _ { t = 1 } ^ { T } \prod _ { j = 1 } ^ { d } B e r n ( s _ { t , j } | \sigma _ { mis , t , j } ( x _ { 1 : T } ) ) pψ(s1:T∣x1:T)=t=1∏Tj=1∏dBern(st,j∣σmis,t,j(x1:T))
σmis(x1:T)=MLPmis(x1:T) \sigma _ { mis } (x_{1:T})=MLP_{mis}(x_{1:T}) σmis(x1:T)=MLPmis(x1:T)
Classifier
使用基于 transformer 的模型构建分类器:给定一个时间序列数据 x1:Tx_{1:T}x1:T 将观测值 x1:Tox_{1:T}^{o}x1:To 和从解码器生成的插补缺失值打包在一起,首先使用沿时间轴的一维 CNN 处理数据以计算 r1:T=CNN(x1:T)r_{1:T} = CNN(x_{1:T})r1:T=CNN(x1:T) 。 然后用transformer模块处理 r1:Tr_{1:T}r1:T 来计算输出 hTh_ThT。条件分布 pλ(y∣x1:To,x1:Tm)p _ { \lambda } ( y | x _ { 1 : T } ^ { o } , x _ { 1 : T } ^ { m } )pλ(y∣x1:To,x1:Tm) 定义为
Categorical(y∣Softmax(Linearcls(hT)) Categorical(y | Softmax(Linear_{cls}(h_{T})) Categorical(y∣Softmax(Linearcls(hT))
在前向传递过程中,分类器获取观察到的输入 x1:Tox_{1:T}^{o}x1:To 和从解码器 pθ(x1:Tm∣z1:T)p _ { \theta } ( x _ { 1 : T } ^ { m } | z _ { 1 : T } )pθ(x1:Tm∣z1:T)生成的缺失值。 实验发现采用 GRU-D 是有益的,而不是直接使用生成的缺失值 x1:Tmx _ { 1 : T } ^ { m }x1:Tm ,将衰减的缺失值计算如下:
x~1:T:=(x1:To,x1:Tm)wherex1:Tm∼pθ(x1:Tm∣z1:T) \tilde { x } _ { 1 : T } : = ( x ^ { o } _ { 1 : T } , x ^ { m } _ { 1 : T } ) \quad w h e r e \quad x ^ { m } _ { 1 : T } \sim p _ { \theta } ( x ^ { m } _ { 1 : T } | z _ { 1 : T } ) x~1:T:=(x1:To,x1:Tm)wherex1:Tm∼pθ(x1:Tm∣z1:T)
x^t,j=Decay(st,j,xt,j,γx^t,j,xt′,j,x~t,j) \widehat { x } _ { t , j } = D e c a y ( s _ { t , j } , x _ { t , j } , \gamma _ { \widehat { x } _{t,j} } , x _ { t^ { \prime } , j } , \tilde { x } _ { t , j } ) x t,j=Decay(st,j,xt,j,γx t,j,xt′,j,x~t,j)
其中,γx^t=exp(−max(0,Wx^δt+bx^)\gamma _ { \widehat { x }_t } = e x p ( - m a x ( 0 , W _ { \widehat { x } } \delta _ { t } + b _ { \widehat { x } } )γx t=exp(−max(0,Wx δt+bx ) 是可学习的衰减。
Encoder
给定上面定义的生成模型,引入了 ( x _ { 1 : T } ^ { m } , z _ { 1 : T } ) 的变分分布,其分解为:
pθ(x1:Tm∣z1:T)qϕ(z1:T∣x1:To) p _ { \theta } ( x _ { 1 : T } ^ { m } | z _ { 1 : T } ) q _ { \phi } ( z _ { 1 : T } | x _ { 1 : T } ^ { o } ) pθ(x1:Tm∣z1:T)qϕ(z1:T∣x1:To)
这里,编码器 qϕ(z1,T∣x1:To)q _ { \phi} ( z_{1, T}|x_{1:T}^{o})qϕ(z1,T∣x1:To) 被定义为一个自回归模型,如前所述,
qϕ(z1,T∣x1:To)=∏t=1TN(zt∣μenc(x1,to),diag(σenc2(x1,to))) q _ { \phi} ( z_{1, T}|x_{1:T}^{o}) = \prod _ { t = 1 } ^ { T } N ( z _ {t} | \mu _ { enc } ( x _ { 1 , t } ^ { o } ) , d i a g ( \sigma _ { enc } ^ { 2 } ( x _ { 1 , t } ^ { o } ) ) ) qϕ(z1,T∣x1:To)=t=1∏TN(zt∣μenc(x1,to),diag(σenc2(x1,to)))
给定一系列观测值 x1:Tox_{1:T}^{o}x1:To,首先对缺失值应用零插补,即,如果 st,j=1s_{t,j}=1st,j=1 并且 xt,j′=0x_{t,j}^{\prime}=0xt,j′=0 ,则 xt,j′=x1:Tox_{t,j}^{\prime}=x_{1:T}^{o}xt,j′=x1:To。然后,将missing indicators拼接到 x1,T′x_{1,T}^{\prime}x1,T′ ,并将1D CNN应用于时间轴,如r1:T=CNN(x1,T′)r_{1:T}=CNN(x_{1,T}^{\prime})r1:T=CNN(x1,T′)。在计算了 r1:Tr_{1:T}r1:T 之后,与解码器类似,使用具有因果掩码的transformer来计算:
ht=Transformerdec(r1:t) h _ { t } = T r a n s f o r m e r _ { d e c } ( r _ { 1 : t } ) ht=Transformerdec(r1:t)
(μdec(x1:to),σdec(x1:to))=MLPdec(ht) ( \mu _ { d e c } ( x _ { 1 : t }^{o} ) , \sigma _ { d e c } ( x _ { 1 : t }^{o} ) ) = M L P _ { d e c } ( h _ { t } ) (μdec(x1:to),σdec(x1:to))=MLPdec(ht)
Objective
定义了所有组成后,supernotMIWAE的IWAE界限计算如下:
L(K)(λ,θ,ψ,ϕ):=E[log1K∑k=1Kωk] L ^ { ( K ) } ( \lambda , \theta , \psi , \phi ) : = E \left[ \log \frac { 1 } { K } \sum _ { k = 1 } ^ { K } \omega _ { k } \right] L(K)(λ,θ,ψ,ϕ):=E[logK1k=1∑Kωk]
ωk:=pλ(y∣x1:To,xk,1:Tm)pψ(s1:T∣x1:T0,xk,1:Tm)×pθ(x1:To∣zk,1:T)pθ(zk,1:T)/qϕ(zk,1:T∣x1:To) \omega _ { k } : = p _ { \lambda } ( y | x _ { 1 : T } ^ { o } , x _ { k , 1 : T } ^ { m } ) p _ { \psi } ( s _ { 1 : T } | x _ { 1 : T } ^ { 0 } , x _ { k , 1 : T } ^ { m } ) \times p _ { \theta } ( x _ { 1 : T } ^ { o } | z _ { k , 1 : T } ) p _ { \theta } ( z _ { k , 1 : T })/ q _ { \phi }(z _ { k , 1 : T }|x _ { 1 : T } ^ { o }) ωk:=pλ(y∣x1:To,xk,1:Tm)pψ(s1:T∣x1:T0,xk,1:Tm)×pθ(x1:To∣zk,1:T)pθ(zk,1:T)/qϕ(zk,1:T∣x1:To)
其中,ωk\omega _ { k }ωk 是重要性权重项。
ObsDropout
ObsDropout 用来正则化 supnotMIWAE 以获得更好的插补效果。因为前述目标函数缺乏明确的监督目标,使用该目标训练的模型不太可能生成实际的缺失值。
ObsDropout:当将观测到的输入 $x^{o}_{1:T} $和插补缺失值 x1:Tmx^{m}_{1:T}x1:Tm 传递给分类器时,故意删除观测到的输入的某些部分。在不丢弃观测到的输入的情况下,分类器可能严重依赖观测到的输入来进行分类,但如果在训练过程中丢弃了一些观测到的输入,分类器可以更多地关注插补缺失值 x1:Tmx^{m}_{1:T}x1:Tm。因此,鼓励模型生成更多有利于分类的“有用”缺失值。更具体地说,让βββ是一个预定义的Dropout概率。然后,将插补的输入 x^\widehat { x }x 构造到分类器,如下所示:
x^1:T:=(x1:To,x1:Tm)wherex1:Tm∼pθ(x1:Tm∣z1,T) \widehat { x } _ { 1 : T } : = ( x ^ { o } _ { 1 : T } , x ^ { m } _ { 1 : T } ) \quad w h e r e \quad x ^ { m } _ { 1 : T } \sim p _ { \theta } ( x ^ { m } _ { 1 : T } | z _ { 1 ,T} ) x 1:T:=(x1:To,x1:Tm)wherex1:Tm∼pθ(x1:Tm∣z1,T)
mt,j=Bern(1−β) m _ { t,j } = Bern( 1 - \beta ) mt,j=Bern(1−β)
x^t,j=Decay(st,j,xt,j,γx^t,j,xt′,j,x~t,j) \widehat { x } _ { t , j } = D e c a y ( s _ { t , j } , x _ { t , j } , \gamma _ { \widehat { x } _{t,j} } , x _ { t^ { \prime } , j } , \tilde { x } _ { t , j } ) x t,j=Decay(st,j,xt,j,γx t,j,xt′,j,x~t,j)
Prediction
与 SupMIWAE 类似,利用自归一化重要性抽样 (SNIS) 来近似新输入 x1:Tox^{o}_{1:T}x1:To 的预测分布。
实验结果
更多推荐
所有评论(0)