CN113269675B - 基于深度学习模型的时变体数据时间超分辨率可视化方法 - Google Patents
基于深度学习模型的时变体数据时间超分辨率可视化方法 Download PDFInfo
- Publication number
- CN113269675B CN113269675B CN202110542377.XA CN202110542377A CN113269675B CN 113269675 B CN113269675 B CN 113269675B CN 202110542377 A CN202110542377 A CN 202110542377A CN 113269675 B CN113269675 B CN 113269675B
- Authority
- CN
- China
- Prior art keywords
- data
- time
- model
- volume
- variable
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4053—Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/044—Recurrent networks, e.g. Hopfield networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/40—Scaling of whole images or parts thereof, e.g. expanding or contracting
- G06T3/4046—Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
本发明涉及数据处理与建模技术领域。本发明提出了一种基于深度学习模型的时变体数据时间超分辨率可视化方法,首先基于梯度直方图提取关键体素,在保留原始数据空间特征的同时缩减数据规模。接下来,训练多尺度的变分自编码器,获得具有特征提取功能的编码器,以及体数据生成功能的解码器,由此可以将时变体数据序列的生成问题转换为隐变量序列的生成问题,从而可以在更加简洁且能够表达体数据潜在信息的低维特征空间中,对体数据进行处理和生成。在隐空间中,提出两种思路拟合各个时间步数据隐变量之间的时序关系:一种方法是将数据直接投影到二维,在数据整体时序发展趋势的基础上插值得到新数据的隐变量,并进一步得到对应的体数据序列。
Description
技术领域
本发明属于数据处理与建模技术领域,具体涉及一种基于深度学习模型的时变体数据时间超分辨率可视化方法。
背景技术
集合模拟数据,是通过改变不同参数组合运行科学模型所生成的大规模时变多变量体数据。对不同集合成员的多变量体数据序列进行研究,科学家们可以探索并发现各种科学现象的发展规律,以及数据时序发展中的特殊事件。在对集合模拟数据的分析中,能够用于分析使用的时变数据越多,所能够得到的数据动态时空特征的信息也就更准确、更丰富,这对于数据存储空间的需求会非常高。然而集合模拟数据具有大规模、多成员、多变量、时序的特点,通常无法在时序上进行高分辨率的数据存储,而时序上分辨率较低的集合数据将限制专家对科学结论的探索。因此需要找到合适的方法,支持只存储某些关键时间步的体数据,而在对数据进行深入分析探索时,可以通过该方法即时生成缺失时间步的多变量体数据,从而达到减轻数据存储负担的目的。同时,使用这种方法也可以很好的解决数据中由于存储不当所造成的数据缺失、损坏等问题。
现阶段在研究的实现时变多变量体数据时间超分辨率的方法,用于解决时变体数据的缺失问题,以支持后续对数据进行时空动态演变分析。数据的时间超分辨率意味着,对于已有的时间低分辨率的多变量体数据序列,要在已有时间的间隔中生成新的多变量体数据,以达到将时变体数据序列在时间维度上提升分辨率的目的。实现这一目标的传统方法是使用线性插值(linear interpolation,LERP),按照时间间隔的比例计算得到体数据中每个体素位置上的数值。而这种方法的局限性在于,将数据随时间的发展规律视作线性变化,造成了对数据变化剧烈时期生成结果的较大失真;并且线性插值的方法只是关注时变数据中的局部信息,忽略了数据整体的时变趋势。
因此,现阶段需设计一种基于深度学习模型的时变体数据时间超分辨率可视化方法,来解决以上问题。
发明内容
本发明目的在于提供一种基于深度学习模型的时变体数据时间超分辨率可视化方法,用于解决上述现有技术中存在的技术问题,如:现阶段在研究的实现时变多变量体数据时间超分辨率的方法的局限性在于,将数据随时间的发展规律视作线性变化,造成了对数据变化剧烈时期生成结果的较大失真;并且线性插值的方法只是关注时变数据中的局部信息,忽略了数据整体的时变趋势。
为实现上述目的,本发明的技术方案是:
一种基于深度学习模型的时变体数据时间超分辨率可视化方法,包括以下步骤:
S1:采用基于关键体素的数据预处理方法;
统计各变量的时序梯度直方图,并在高梯度值区域内随机选择出关键体素,然后对原始体数据进行体积缩减,从而得到目标原始体数据;
S2:采用基于多尺度变分自编码器的两种时变数据生成方法;
利用多尺度的变分自编码器学习所述目标原始体数据与隐变量空间的映射关系;并然后在所述目标原始体数据对应的隐变量的基础上,分别利用隐变量二维投影以及深度学习方法,编码数据隐变量之间的时序关系,从而得到时间间隔中的未知体数据;
S3:对步骤S2中所得到的各变量、各时间步体数据所对应的隐变量进行可视化。
进一步的,步骤S1包括以下子步骤:
S11:针对不同集合模拟成员的不同变量,分别为其计算和选择关键体素的集合,为原始数据中的每个体素位置统计体素梯度值,梯度是通过计算时间序列中每两个时间步之间差异的平均值得到,如下所示:
式中,s为体素的个数,T为每个集合模拟成员时变数据的时间步个数,和分别为时间步t和时间步t+1时在体素位置s上的数值,得到每个体素位置的梯度值以后,统计梯度直方图,基于梯度直方图,随机选取关键体素,提取关键体素时将梯度值小的部分剔除;
S12:选取关键体素以后,将基于提取到的关键体素集合对原始数据的规模进行压缩,原始数据V的分辨率为100*100*100的规格,压缩后数据设为V′,对原始体数据进行压缩的过程中,首先按照空间排列的顺序沿着三个坐标轴将原始数据分割为100*100*100个小单元,每个小单元为3*3*3大小的立方体,用符号vijk表示,其中表示一个立方体单元中的九个体素点序号,i,j,k=1,2,3,……,100分别表示沿x、y、z轴的每个最小单元的编号,压缩后体数据中每个体素点v′ijk与原始数据中对应位置的单元立方体vijk相对应,用该单元中的9个体素数值的平均值作为压缩后数据体素点v′ijk的值,对于原始数据V中每个体素点的值也作进一步的处理,将关键体素位置上各变量的原始数值保持不变,未被选择的非关键体素上各个变量的值则被置为0。
进一步的,步骤S2包括以下子步骤:
S21:建立变分自编码器模型;
其基本结构为:首先,输入数据的分辨率为3*100*100*100,每个体数据由三个变量组成,分别为温度、水体积分数、小行星体积分数,每个变量数据的分辨率为100*100*100;数据编码的过程由三个Encoder组成,其中每个Encoder包含四层三维卷积神经网络,并且在第一层卷积神经网络后添加一个卷积注意力机制模块;向三个Encoder分别输入一个变量的数据,相同结构的Encoder分别提取三个变量的数据特征,获得三组均值和方差;接下来按照变量的顺序纵向的将均值和方差进行拼接,即可得到当前输入体数据的整体均值和方差向量;
解码部分使用一个Decoder完成,Decoder的结构设计与Encoder的结构设计相对称,由四层三维反卷积神经网络构成;利用多变量整体的隐变量,最后解码输出该时间步下模型重构的多变量体数据;
S22:变分自编码器模型训练过程如下:
输入到模型中的体数据两次经过编码器Encoder得到多维正态分布的均值μ和方差σ;这一步将输入数据编码成隐空间上的一个分布;
得到概率分布N(μ,σ)后,需要在其上随机采样得到中间的隐变量;先在0-1正态分布上随机采样一个点,然后将这个点线性变换到目标正态分布中;
在拟合分布上采样得到隐变量后,将隐变量输入到Decoder中解码出最终模型的输出数据,并计算重构误差;
重构误差进行反向传播,更新模型网络参数,不断优化;
其中,变分自编码器模型的目标函数如下式所示:
从整体来看其包含两个部分,第一项表示模型的重构误差,迫使模型解码出的数据与输入数据尽可能相近;第二项为正则化损失,保证模型中间训练得到的分布接近标准正态分布;
S23:改进变分自编码器模型优化目标;
优化目标包括两个部分,一部分是对隐变量空间添加的约束,即要求编码器生成的数据分布服从标准正态分布,通过计算KL散度实现;另一部分重构误差,控制模型输出数据与真实数据之间的差异,在模型训练中,参数c是人为设置的,是优化函数中两个损失项之间的权重值,
这样模型的优化函数中,重构数据同真实数据之间的MSE与隐变量分布同标准正态分布之间KL散度的比例是1∶1的;
其中,将参数c也作为模型的参数,加入到神经网络中进行反向传播在训练的过程中优化和学习,使模型自己学习和决定目标函数中数据重构误差这一项的权重大小;
S24:变分自编码器模型的多尺度化;其结构如下:
由四层CNN及一个卷积注意力模块组成,输入数据首先经过四层CNN后得到顶层隐变量etop;接下来将已有的etop反卷积,同时将输入数据进行两次卷积操作,二者得到的结果共同组成底层隐变量ebottom;通过将这种多尺度结构得到的etop和ebottom拼接起来得到输入体数据所对应的隐变量后,会继续进行后续重采样、解码输出数据等操作;
S25:多尺度的变分自编码器模型训练过程如下;
重复以下过程,直到模型收敛:
(4)重采样,在0-1正态分布中采样ε,计算z=e_mn+ε*e_std;
(5)模型输出v′i=Decoder1,2,3,4(z),计算损失Loss=Reconstruction_term+KL_term;
(6)反向传播,优化模型参数;
S26:基于二维隐变量插值的时序关系拟合方法,具体如下:
首先训练多尺度的变分自编码器模型,Encoder部分可以将时变数据中的每个时间步各变量的体数据映射到二维隐空间;在特征提取模块,利用训练好的编码器将已知的两个体数据对的各变量映射为二维隐变量;随着模型重构数据质量提升,输入数据所映射的均值作为数据对应的特征向量;
接下来在数据生成模块,针对得到的隐变量对,根据数据的整体时变趋势,插值得到中间的隐变量序列,并进一步利用Decoder生成对应的体数据序列;
S27:基于深度学习框架的时序关系拟合方法,具体如下:
首先训练多尺度的变分自编码器模型,将每个时间步的多变量体数据之间的时序关系也通过模型训练学习,针对所需处理的时变体数据序列,使用循环神经网络拟合学习数据的时序关系,对于已知的两个时间步的体数据对,模型从前向和后向两个方向分别拟合出共享相同时间步的中间待生成的隐变量序列,并由Decoder得到对应的体数据序列,最后将两个方向的体数据序列融合起来作为最后模型的输出。
进一步的,步骤S3具体如下:
提供一个可交互的可视化界面对步骤S2中所得到的各变量、各时间步体数据所对应的隐变量进行可视化;
所述可视化界面包括三个部分:界面左侧的控制面板、主界面上方的各变量二维投影视图、实际时间间隔折线图及其下方的体绘制视图。
与现有技术相比,本发明所具有的有益效果为:
本方案的一个创新点在于,基于多尺度的变分自编码器模型,提出时变多变量体数据生成框架,用以解决上述时变体数据时间超分辨率问题。方法首先基于梯度直方图提取关键体素,在保留原始数据空间特征的同时缩减数据规模。接下来,训练多尺度的变分自编码器,获得具有特征提取功能的编码器,以及体数据生成功能的解码器,由此可以将时变体数据序列的生成问题转换为隐变量序列的生成问题,从而可以在更加简洁且能够表达体数据潜在信息的低维特征空间中,对体数据进行处理和生成。在隐空间中,提出两种思路拟合各个时间步数据隐变量之间的时序关系:一种方法是将数据直接投影到二维,在数据整体时序发展趋势的基础上插值得到新数据的隐变量,并进一步得到对应的体数据序列。这种做法从数据变化的全局出发,避免了传统方法只考虑局部时段的不足,同时对隐变量插值操作更加直观和利于生成任意时间的数据。另一种方法是利用循环神经网络LSTM(long-short term memory)学习拟合这种时序关系得到新数据的隐变量。这种方法与前者及传统线性插值相比,可以更好的学习拟合原始数据的非线性时变趋势,从而生成更加符合原始数据特征的新数据。同时,得益于变分自编码器编码的优势,训练后的模型可以提取原始体数据各变量的隐变量,起到了对数据降维的作用,有助于分析人员从全局对数据整体的时序发展进行探索。
附图说明
图1是本发明具体实施方式的深海冲击数据集示意图。图2是本发明具体实施方式的基于关键体素的数据压缩方法示意图。图3是本发明具体实施方式的集合成员ya31数据各变量梯度体绘制示意图。图4是本发明具体实施方式的集合成员ya31数据各变量的梯度直方图示意图。图5是本发明具体实施方式的各分辨率、各变量数据体绘制结果比较示意图。图6是本发明具体实施方式的卷积注意力模块示意图。图7是本发明具体实施方式的通道注意力部分示意图。图8是本发明具体实施方式的空间注意力部分示意图。图9是本发明具体实施方式的变分自编码器模型基本结构示意图。图10是本发明具体实施方式的Encoder部分的多尺度结构示意图。图11是本发明具体实施方式的变分自编码器模型结构示意图。图12是本发明具体实施方式的基于二维隐变量插值的时序关系拟合方法流程示意图。图13是本发明具体实施方式的对隐变量各点之间线性插值示例示意图。图14是本发明具体实施方式的隐变量的几何表示示意图。图15是本发明具体实施方式的时序关系拟合深度学习模型结构设计示意图。图16是本发明具体实施方式的LSTM细胞结构示意图。图17是本发明具体实施方式的可视化界面设计示意图。图18是本发明具体实施方式的各变量二维投影示意图。图19是本发明具体实施方式的前30个时间步的实际时间间隔示意图。图20是本发明具体实施方式的框选前10个时间步示意图。图21是本发明具体实施方式的时间步7、8、9的各变量体绘制情况示意图。图22是本发明具体实施方式的集合成员yc31的实际时间间隔示意图。图23是本发明具体实施方式的总体步骤示意图。
具体实施方式
下面结合本发明的附图1-23,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
如图23所示,提供一种基于深度学习模型的时变体数据时间超分辨率可视化方法,包括以下步骤:
S1:采用基于关键体素的数据预处理方法;统计各变量的时序梯度直方图,并在高梯度值区域内随机选择出关键体素,然后对原始体数据进行体积缩减,从而得到目标原始体数据;
S2:采用基于多尺度变分自编码器的两种时变数据生成方法;
利用多尺度的变分自编码器学习所述目标原始体数据与隐变量空间的映射关系;并然后在所述目标原始体数据对应的隐变量的基础上,分别利用隐变量二维投影以及深度学习方法,编码数据隐变量之间的时序关系,从而得到时间间隔中的未知体数据;
S3:对步骤S2中所得到的各变量、各时间步体数据所对应的隐变量进行可视化。
(一)数据介绍及数据压缩
本申请所使用的集合数据集的来源等信息,接下来介绍基于关键体素对数据降采样的方法,用于解决由于数据集规模过大不便于模型训练的问题,这种处理方法在削减数据规模的同时能够有效保留数据特征信息。
实验数据介绍部分:
本申请中实验使用深水冲击集合数据集(Deep Water Impact Ensemble DataSet),这一数据集来源于2018年IEEE VIS的科学可视化挑战赛。数据集描述了小行星撞击深海水面的自然现象,使用这一数据集可以探索行星在不同情况下撞击地球海面后会发生的各种现象。数据集包含多个集合成员数据,每个集合模拟成员的数据都是通过运行一系列改变了水、空气、小行星体积三种参数组合的数据模拟系统生成的三维模拟体数据。数据模拟的过程是以小行星从高空坠落开始,到小行星以一定角度进入并撞击水面中心;如图1所示。由于这是一整个的撞击事件的过程,因此每一个集合模拟成员都是一个时变体数据序列。
以一个集合模拟成员数据为例,每个时间步的数据都是具有多变量、时序特点的三维体数据,数据分辨率大小为300*300*300,在每一个体素点上包含多个变量的值,本申请实验中所使用的变量是温度(TEV)、水体积分数(volume fraction,V02)以及行星体积分数(volume fraction of asteroid,V03)。在本申请的实验中,使用了三个集合模拟成员的数据集,集合成员分别命名为ya31、yb31和yc31,三者的区别在于小行星在空中坠落过程中爆炸时的高程不同,三个时间序列数据的时间步个数分别为300个、265个和265个。数据中的时间步直接记录时间戳信息,而各个时间戳之间的间隔划分并不均匀,导致存在一些时间步之间的实际时间差过大从而造成了对应体数据之间的数据差异很大,如果直接使用这一数据集进行特征提取并进一步分析事件演化阶段、变量间关系等,会因为数据缺失而造成分析结果不准确的问题。因此,本申请提出了基于变分自编码器的数据生成方法,并使用这一数据集进行实验,解决时变体数据时间超分辨率问题。
数据压缩处理部分:
集合模拟数据具有大规模、多变量、时变的特点,数据规模过大在模型训练的过程中会消耗大量的时间和空间,影响模型训练的效率。因此在模型训练前,首先基于梯度直方图采样部分关键体素,然后在提取关键体素的基础上对原始数据进行降采样,从而得到缩小分辨率的数据集,这种方法在削减了数据规模的同时,也能够保留原始数据的结构和信息。
基于关键体素对原始体数据进行压缩处理的整体流程示意图如图2所示。
其中,关键体素提取
对于每个体素位置,认为如果某个体素位置上的梯度值随时间发展的变化波动较大,那么这一体素位置在空间中被认为是关键的。因此基于梯度直方图,在平均梯度值大的体素中随机采样出一部分作为关键体素。另外,考虑到每个集合模拟成员是由不同参数组合运行模拟系统得到的,所以对于不同成员的时变体数据序列,数据变化规律不同。此外,每一个集合模拟成员的三种不同的变量数据,其变化趋势也不相同。基于这种考虑,针对不同集合模拟成员的不同变量,都会分别为其计算和选择关键体素的集合。
为了筛选出关键体素的集合,首先为原始数据中的每个体素位置统计体素梯度值,梯度是通过计算时间序列中每两个时间步之间差异的平均值得到,如下所示:
其中,s为体素的个数,在本申请中为27000000个(由原始数据分辨率为300*300*300得到),T为每个集合模拟成员时变数据的时间步个数,和分别为时间步t和时间步t+1时在体素位置s上的数值。图3是集合模拟成员ya31三个变量计算了各体素梯度后的梯度体绘制图像。观察发现,各变量的变化范围(梯度值高的区域)主要集中在空间中间部分,这与数据集是描述行星撞击水面这一事件的真实情况相吻合。
得到每个体素位置的梯度值以后,进一步统计梯度直方图。将每个集合成员中每个变量的梯度直方图都划分为20个区间。以集合成员ya31的三个变量为例,各变量梯度直方图的绘制结果如图4,对于任一变量在27000000个体素中80%左右的体素在整个时间序列上的变化都很小(直方图中第一个区间,其中TEV变量23835850个体素,V02变量21281726个体素,V03变量26095967个体素),因此在提取关键体素时考虑将梯度值较小的部分剔除。
接下来基于梯度直方图,随机选取关键体素。在剔除了小梯度体素后的体素集合中,选择随机采样20%的体素点作为关键体素,为了保证随机采样出来的关键体素的梯度值分布均匀,在梯度直方图中除第一个区间外的其他区间中都分别采样出20%数量的体素点,添加到最后选出的关键体素的集合中。三个集合模拟成员的三个变量都分别进行关键体素的选择,每个集合中关键体素的个数及在整体中所占比例在表1-1中记录:
表1-1各集合模拟成员、各变量中关键体素个数及百分比
TEV | V02 | V03 | |
ya31 | 632830(2.34%) | 1143654(4.24%) | 180807(0.67%) |
yb31 | 1076273(3.99%) | 644060(2.39%) | 602981(2.23%) |
yc31 | 1163434(4.31%) | 373857(1.38%) | 535595(1.99%) |
提取关键体素可以让将注意力集中放在空间上数据变化相对剧烈的区域,而对于空间中一直没有或是变化微小的非关键区域,其中的数值变化对数据整体产生的影响很小,在对数据进行分析时则可以忽略不计,因此可以将这些非关键体素的数值忽略以节省存储空间。在后续所描述的对原始体数据进行压缩的过程就是基于这种想法。
其中,体数据压缩
选取了每个集合成员、每个变量的关键体素以后,接下来为了方便后续模型的训练,将基于提取到的关键体素集合对原始数据的规模进行约简、压缩。原始数据V的分辨率为300*300*300,为了方便后续实验,希望将原始数据的分辨率缩小为100*100*100的规格,压缩后数据设为V′。首先,认为关键体素的选择等同于选择了空间上数据变化较为剧烈的区域,即值得更多关注的区域。同时,在空间上各个体素位置邻域内的数值变化是连续的。基于上述考虑,在对原始体数据进行压缩的过程中,首先按照空间排列的顺序沿着三个坐标轴将原始数据分割为100*100*100个小单元,每个小单元为3*3*3大小的立方体,用符号vijk表示,其中表示一个立方体单元中的九个体素点序号,i,j,k=1,2,3,……,100分别表示沿x、y、z轴的每个最小单元的编号。压缩后体数据中每个体素点v′ijk与原始数据中对应位置的单元立方体vijk相对应,用该单元中的9个体素数值的平均值作为压缩后数据体素点v′ijk的值。对于原始数据V中每个体素点的值也作进一步的处理:上文中提到选取的关键体素可以标识数据空间中变化较为剧烈即值得关注的区域,而非关键体素的区域,其变化对于每个时间步的数据整体的变化起到的作用很小,因此在压缩原始体数据的过程中,将关键体素位置上各变量的原始数值保持不变,未被选择的非关键体素上各个变量的值则被置为0。通过这样的处理,使最后缩小体积的体数据剔除掉了对整体数据影响不大的体素,将注意力更多关注在重点区域上。
对数据基于关键体素压缩,是基于效率的考虑,在保留原始数据的基本结构和关键信息的前提下,减小数据的规模,以方便后续基于该数据的深度学习模型的训练。本申请将以集合模拟成员ya31的各变量数据为例,展示原始体数据在基于关键体素压缩后得到的结果,并对这些结果进行分析和讨论。会比较分辨率为300*300*300(原始数据集)、分辨率为100*100*100、分辨率为50*50*50三种规模大小体数据的体绘制细节、存储空间消耗、模型训练的时间消耗。
(1)体绘制细节比较如图5所示。
(2)时间和空间消耗:
表1-2不同分辨率体数据的时间、空间损耗
50*50*50 | 100*100*100 | 300*300*300 | |
模型循环150次 | 约20min | 约78min | 约71h |
数据所占空间 | 0.98GB | 7.89GB | 203GB |
通过上面的结果比较,基于选取的关键体素对原始体数据进行压缩,可以很好的提高模型训练的效率并节省数据的存储空间(分辨率100*100*100体数据与原始数据相比,模型训练时间缩小54.62倍,数据所占空间缩小25.73倍),同时根据观察到的体绘制结果发现压缩后数据也可以很好的保留原始数据中的信息和特征。考虑到50*50*50分辨率的体数据与原始体数据相比缩小了216倍,并且数据体绘制结果与100*100*100相比也较为模糊,损失数据信息较多可能会造成后面深度生成模型训练结果较大的失真。因此,在本申请中接下来的实验所使用的体数据分辨率统一为100*100*100大小。
(二)针对时变多变量体数据的多尺度变分自编码器
针对时变多变量体数据序列的时间超分辨率问题,本申请首先针对原始数据训练深度生成模型变分自编码器(Variational Auto-Encoder,VAE),由于实验数据是三维体数据,模型基于三维卷积神经网络(CNN)实现,并且在卷积网络的基础上添加了注意力机制,期望模型在训练过程中更加关注体数据中的关键部分。得到可以拟合原始数据分布的生成模型以后,后续将介绍在其基础上生成新数据的方法。首先介绍变分自编码器的基础理论,接下来针对变分自编码器生成结果模糊的问题,将模型结构设计为多尺度的,并优化模型的训练目标。实验结果表明改进后模型所生成结果的质量从数据层面和体绘制结果的层面都得到了一定程度的提升,能够更好的捕获到原始数据中的特征信息。
2.1变分自编码器基础结构
变分自编码器是以标准自动编码器为基础的深度生成模型,标准自动编码器是一种无监督学习方法,它的特点是要尽可能使模型输入数据与输出数据保持一致,基本结构包括:编码器(Encoder)将输入数据映射到低维的隐变量空间上,解码器(Decoder)将隐变量还原为重构数据,通常情况下解码作为编码的逆过程,二者结构是对称的。变分自编码器的基本结构与自动编码器相似,两者的区别在于:(1)为了使解码器具有生成新数据的能力,VAE假设中间隐变量z是服从正态分布的随机变量,这使得VAE不是将输入数据映射到一个点上,而是映射为隐空间中的一个数据分布。(2)模型训练的目标函数不同,VAE的训练目标除了使输入数据与输出数据尽可能相近之外,还要求中间隐变量z服从标准正态分布。下面对论文中针对实验数据所设计的添加注意力机制的VAE的基本结构进行详细介绍。
2.1.1注意力机制
卷积注意力模块(convolutional block attention module,CBAM)是一种为卷积神经网络设计的简单有效的注意力模块。对于一个给定的网络中间生成的特征图(featuremap),CBAM模块可以沿着通道(channel)和空间(spatial)两个独立的维度依次计算出注意力特征图(attention map),并将注意力图与网络产生的特征图相乘来进行特征的自适应学习。CBAM模块可以集成到任何的CNN网络结构中,并与模型结构一起进行训练。
使用CBAM模块是希望能够通过这种注意力机制来提高表现力,关注数据中重要的特征。模块由通道注意力模块(channel attention module)和空间注意力模块(spatialattention module)串联组成(如图6)。针对输入注意力模块中的特征图F∈RC*L*H*W(C为通道数,L、W、H表示三维卷积核的大小),CBAM模块顺序产生一个一维的通道注意力特征图(channel attention map)Mc∈Rc*1*1*1和一个三维的空间注意力特征图(spatialattention map)Ms∈R1*L*H*w,即:
通道注意力模块(如图7)主要是关注哪些通道对网络最后的输出结果起到决定性作用。通道注意力模块首先同时使用平均池化和最大池化对特征图空间维度进行压缩,得到平均池化特征和最大池化特征接下来,通过全连接对两种池化特征分别进行计算,然后将得到的结果相加,并传入sigmoid激活函数,最后输出通道注意力特征图Mc∈Rc *1*1*1。计算过程表示如下:
得到了通道注意力特征图F′后,计算空间注意力特征图,空间注意力特征模块的结构如图8所示。与通道注意力不同,空间注意力主要关注的是空间位置信息,这是对通道注意力的补充。通道注意力模块输出的通道注意力特征图F′作为空间注意力模块的输入,在通道(channel)维度上先后进行最大池化和平均池化操作得到和将两种池化特征拼接(concatenate)后使用卷积操作得到最后的空间注意力特征图(spatial attentionmap)。上述训练过程可以用以下公式表示:
2.1.2模型基本结构
VAE的编码器和解码器可以由多层卷积神经网络、循环神经网络等结构组成。考虑到针对二维图像处理问题通常使用二维卷积神经网络提取图像特征,而本申请所使用的实验数据是三维体数据,可以类比图像数据的特征提取过程,因此在本申请的实验中使用三维卷积神经网络构造模型。编码器由四层三维卷积神经网络组成,逐层抽象数据特征;而解码器的设计与编码器相对称,由四层三维反卷积神经网络组成,将抽象特征再逐层解码为体数据。
在上文对数据的介绍中提到,实验中所使用的数据是集合模拟的时变多变量体数据,每个时间步中的体数据都包含三个变量,因此对编码器的结构做了一点改变,用于提取多个变量的特征。同时,选择在编码过程中添加卷积注意力机制,使模型训练过程中能够更加关注体数据在空间上数据变化剧烈的关键区域。
模型的基本结构如图9所示。首先,输入数据的分辨率为3*100*100*100,每个体数据由三个变量组成,分别为温度(TEV)、水体积分数(V02)、小行星体积分数(V03),每个变量数据的分辨率为100*100*100。数据编码的过程由三个Encoder组成,其中每个Encoder包含四层三维卷积神经网络,并且在第一层卷积神经网络后添加一个卷积注意力机制模块。向三个Encoder分别输入一个变量的数据,相同结构的Encoder分别提取三个变量的数据特征,获得三组均值和方差。接下来按照变量的顺序纵向的将均值和方差进行拼接,即可得到当前输入体数据的整体均值和方差向量。
解码部分使用一个Decoder完成,Decoder的结构设计与Encoder的结构设计相对称,由四层三维反卷积神经网络构成。利用多变量整体的隐变量,最后解码输出该时间步下模型重构的多变量体数据。
2.1.3目标函数与训练过程
变分自编码器的训练过程如下:(1)输入到模型中的体数据两次经过编码器Encoder得到多维正态分布的均值μ和方差σ。这一步将输入数据编码成隐空间上的一个分布。(2)得到概率分布N(μ,σ)后,需要在其上随机采样得到中间的隐变量。为了使模型能够反向传播,采用重参数化技巧(reparameterization trick)。该方法的思路是,先在0-1正态分布上随机采样一个点,然后将这个点线性变换到目标正态分布中。(3)在拟合分布上采样得到隐变量后,将隐变量输入到Decoder中解码出最终模型的输出数据,并计算重构误差。(4)重构误差进行反向传播,更新模型网络参数,不断优化。
VAE的目标函数如公式6所示:
从整体来看其包含两个部分,第一项表示模型的重构误差,迫使模型解码出的数据与输入数据尽可能相近。第二项为正则化损失,保证模型中间训练得到的分布接近标准正态分布。
通过对编码分布添加限制,得到的规则化的隐变量空间具有完备性和连续性,在隐空间中随机采样的任意一点都可以解码出有意义的新数据。然而,基于这种结构以及目标函数训练得到的变分自编码器重构出的结果较为模糊,其原因在于模型训练的过程需要在保证重构数据真实性与要求隐变量服从标准正态分布之间进行权衡,这是一个对抗的过程。在实际的训练中变分自编码器中间的隐变量从拟合出的正态分布中随机采样出来,这种随机的操作同时也使得对于每次输入的真实数据,通过变分自编码器生成的结果与利用标准自编码器得到的结果相比会稍微偏离真实数据。这一问题会影响到后期在此基础上生成的新数据质量。因此,在2.2中会介绍对VAE基本结构的进一步改进,以提升模型训练的效果。
2.2提升模型训练结果的质量
知道使用标准结构的VAE在模型训练后得到的数据重构结果往往不尽如人意,重构的数据较为模糊,这是与同为生成器的GAN相比的一大缺点。因此为了提升变分自编码器模型训练效果,对模型做的两点改进。本申请首先将模型训练时的目标函数稍作修改,在模型的训练过程中,将目标函数中MSE的数据项和KL散度的数据项之间的比重作为训练过程中的一个学习参数。此外,还将Encoder部分设计成多尺度的,在生成隐变量时不再只是使用高级别的特征,同时也拼接底层提取得到的低级别特征一同训练模型,使模型在训练过程中保留更多原始数据信息。
2.2.1改进模型优化目标
通过上文知道,训练VAE的优化目标包括两个部分,一部分是对隐变量空间添加的约束,即要求编码器生成的数据分布服从标准正态分布,通过计算KL散度实现。另一部分重构误差,控制模型输出数据与真实数据之间的差异,通过公式可以知道这一项实际上是与重构数据和真实数据之间的均方误差紧密相关的。在模型训练中,公式6中的参数c是人为设置的,可以看作是优化函数中两个损失项之间的权重值,决定了重构数据的真实度在模型优化中需要起到多大的作用,因此对于这一项在优化函数中的设置对于模型训练的效果有较为重要的影响。
这样模型的优化函数中,重构数据同真实数据之间的MSE与隐变量分布同标准正态分布之间KL散度的比例就是1:1的。大量实验发现,这种设置会使得模型的训练质量不能得到有效提升。而要想找到一个合适的参数c的值,提升模型训练的质量,则需要人为手动的去逐一尝试,这显然不是一个合理的做法。因此考虑将参数c也作为模型的参数,加入到神经网络中进行反向传播在训练的过程中优化和学习,使模型自己学习和决定目标函数中数据重构误差这一项的权重大小。在实际的实验结果表明,对目标函数的这点改进可以促进模型训练得到更好的生成效果。
2.2.2多尺度设计
多层卷积神经网络可以对数据进行逐级抽象,网络层次越高所得到的特征就越抽象,而这些特征相对于原始数据的损失也就越多。多尺度设计希望将不同级别的特征结合,使原始数据的信息在模型训练的过程中不会流失过多,从而导致结果失真严重。多尺度设计的思路在有关生成模型的研究中都有所体现,例如StyleGAN,将特征分为粗糙、中等和高质量三种,层次越高,能够生成的特征就越精细,模型以此渐进的控制生成不同层次的视觉特征。VQ-VAE2将编码过程分为上下两层,顶层潜在空间的维度比底层维度小很多,代表抽象级别更高的特征。上下两层分别进行分层量子化后拼接为中间向量,然后进行解码重构数据。NVAE将编码器和解码器都设计成多尺度结构,编码器逐层得到抽象级别越来越高的特征,然后输入到相应级别的解码器中,逐级向下生成抽象级别越来越低的重构数据。这些文献都说明了多尺度设计的有效性已经得到了比较充分的验证。
受到这些研究的启发,本申请将前文中所描述的VAE结构修改为多尺度的:将输入数据所对应的隐变量分为顶层和底层,输入数据经过Encoder得到顶层隐变量以后,不直接输入到Decoder中进行数据重构,而是在此基础拼接上底层的数据特征。这样得到的隐变量可以包含更加丰富的原始数据信息,使得最后Decoder重构出的数据与输入数据之间差异更小。
多尺度设计的Encoder结构如图10所示,依然由四层CNN及一个卷积注意力模块组成,输入数据首先经过四层CNN后得到顶层隐变量etop。接下来将已有的etop反卷积,同时将输入数据进行两次卷积操作,二者得到的结果共同组成了底层隐变量ebottom。通过将这种多尺度结构得到的etop和ebottom拼接起来得到输入体数据所对应的隐变量后,会继续进行后续重采样、解码输出数据等操作。
2.2.3最终模型结构与训练算法流程
通过上述两点改进,下面是本申请最终使用的VAE模型结构(如图11所示),以及模型的训练过程:
(三)时间超分辨率体数据生成方法
将生成时间步间隔内体数据的问题做如下定义:对于给定的一对分别为时间步i和时间步i+k(k>1)的体数据对(vi,vi+k),的目标是要找到一个方法φ使得:
φ(vi,vi+k)≈V,V={vi+1,vi+2i…vi+k-1} (8)
即通过方法φ可以根据输入的体数据对(vi,vi+k),输出vi和vi+k的时间步间隔中的体数据序列,达到时变数据序列时间超分辨率的目的。
找到方法φ所面临的一个重要挑战,是体数据随时间的变化不是完全线性的,传统的解决方法使用线性插值(linear interpolation,LERP)来生成时间间隔中的三维体数据。然而通过这种方法得到的插值结果只是基于所插值位置的前后邻域范围内的数据生成的,不能捕获到时变数据整体的复杂变化规律以及体数据之间非线性的变化关系。因此使用深度学习来解决这个问题,在生成体数据序列之前,会先使用前文所描述的多尺度变分自编码器对原始的时变体数据进行训练和学习,用隐变量分布去拟合原始数据的数据分布。训练好的模型的Encoder部分能够捕获原始体数据整个时间序列的变化关系,即得到原始体数据映射到隐变量空间中的结果,在这里将模型训练过程中得到的均值作为输入数据对应的隐变量。而Decoder部分对于输入的任意隐变量都可以对应生成具有实际意义并符合原始体数据规律的新的体数据。因此,在此基础之上,要生成两个已知时间步时间间隔中的体数据序列,需要进一步设计如何通过合适的方法利用已知时间步体数据的隐变量,结合时变体数据序列整体的时变规律,在隐空间中拟合出新的隐变量并进一步生成对应的体数据,即所要找到的方法φ,从而解决时变体数据的时间超分辨率问题。
介绍两种根据输入体数据对拟合出新的隐变量并生成对应体数据的思路:第一种思路是将VAE的中间隐变量映射到二维空间,接下来基于已有体数据的整体变化趋势,结合输入体数据对的隐变量插值出待生成体数据的二维隐变量序列,并通过Decoder得到需要生成的体数据序列。第二种思路,不同于第一种方法将各个体数据之间的时序关系以直观的方式呈现,而是将这种数据之间的时序关系也同样利用深度学习的模型训练学习得到,进而设计出一个整合的深度学习框架。在深度学习中普遍使用循环神经网络来处理序列数据,因此在方法二中使用长短期记忆模型(long-shrt time memory,LSTM)来编码各个体数据的隐变量之间的时序关系。接下来会对这两种方法的具体细节进行描述。
3.1基于二维隐变量插值的时序关系拟合方法
基于二维隐变量插值的时序关系拟合方法的具体流程如图12所示,首先训练设计的多尺度变分自编码器模型,Encoder部分可以将时变数据中的每个时间步各变量的体数据映射到二维隐空间。在特征提取模块,会利用已经训练好的编码器将已知的两个体数据对的各变量映射为二维隐变量。由于模型重构数据质量提升,输入数据所映射的均值可以作为数据对应的特征向量。
接下来在数据生成模块,针对上一步骤中得到的隐变量对,会根据数据的整体时变趋势,插值得到中间的隐变量序列,并进一步利用Decoder生成对应的体数据序列。
3.1.1特征提取模块
多尺度变分自编码器的模型细节在上文中已经详细描述,模型结构如图11(多尺度设计变分自编码器结构)所示。所提出的基于隐变量插值的时序关系拟合方法中,由于低维向量更加直观和便于理解与操作,因此在模型中将中间隐变量的维度设置为二维,从而将每个时间步的各变量体数据映射到二维可视空间。可以根据得到的投影视图观察到集合成员不同变量体数据序列的整体时序变化趋势。
在特征提取模块中,对于已知的首尾两个时间步体数据(vi,vi+k),使用训练完成的编码器φEncode提取每个体数据每个变量所对应的二维隐变量(zi,zi+k):
(zi,zi+k)=φEncode(vi,vi+k) (9)
3.1.2数据生成模块
在数据生成模块中,对于不同变量,利用前面提取的首尾时间步体数据的隐变量对(zi,zi+k),基于数据整体的时序发展趋势,插值生成首尾间隔中的隐变量序列Z:
Z=φInterpolate(zi,zi+k) (10)
在二维平面中,通过已知的首尾时间步体数据各变量对应的隐变量,在数据整体的时变曲线上所在的位置,以及数据整体的时变规律,决定了在这两个时间步之间生成的隐变量序列在二维平面上的位置分布关系,就是利用这种直观的位置关系插值得到新数据的隐变量序列。在本申请的实验中,选择使用线性插值实现这一操作,基于原始数据的各个时间步数据对应的散点分布,对各点间隔插值出新的点,对应了时间间隔中生成的体数据序列的隐变量序列,对每个时间步二维隐变量之间插值结果的示例如图13。
接下来将得到的二维隐变量序列通过模型的解码器部分φDecode生成对应的体数据序列V:
V=φDecode(Z) (11)
与直接用首尾两个时间步体数据对各个体素进行线性插值的传统方法相比较,本申请基于每个时间步下体数据特征向量进行低维空间插值的方法,更加直观和便于操作。由于充分考虑了数据的整体时序变化和数据间的非线性关系,生成的体数据也更能够符合数据的实际变化情况。
3.1.3方法合理性分析
在本节所描述的方法流程中,变分自编码器将原始体数据映射为二维隐变量,在二维平面上对体数据隐变量基于数据整体时序发展趋势插值得到时间间隔中的隐变量序列,并进一步生成对应的体数据序列。对于这种做法的合理性,在这一节中会从几何的角度进行分析和讨论。
知道对于自编码器,如果每个训练样本都能够重构的很好,那么就可以将隐变量z看作是样本x的等价表示。而对于VAE,每个样本不是映射为单个的值,而是概率分布。从二维平面上理解,每个样本x所对应的概率分布z可以理解为是一个以均值为中心方差为轴长的椭圆形状(如图14中a)。同时在变分自编码器的模型训练过程中,会强制隐变量空间中隐变量各个维度都服从标准正态分布,这种约束会使得每一个样本所对应的椭圆面排列的更加紧凑,并且存在一定面积上的覆盖(图14中b)。这种“覆盖”使得整个隐空间都是规则、连续的,由此可以认为在二维平面上的任意一点也都可以对应某个未知的真实样本。
因此,对于时间序列中的所有体数据,可以将每个体数据通过模型计算得到的二维均值作为其对应的二维隐变量,他们在散点图中的时序连线,表示了体数据序列随时间的发展变化规律,而每个体数据映射到二维平面上的各点之间的空白区域,按照数据整体的时间发展趋势插值得到的新的点,也就可以理解为是对应了真实数据空间中相应位置的插值时间步下的体数据。从这一角度来说,这一节中所提出的生成数据思路是可行的。
3.2基于深度学习框架的时序关系拟合方法
在这一节,与上一节中提出的时序关系拟合方法不同,在训练好的多尺度变分自编码器基础上,将每个时间步的多变量体数据之间的时序关系也通过模型训练学习,由此设计并实现了一种用于解决体数据时间超分辨率问题的深度学习框架。针对实验所需处理的时变体数据序列,这一深度学习框架使用循环神经网络拟合学习数据的时序关系,对于已知的两个时间步的体数据对,模型从前向和后向两个方向分别拟合出共享相同时间步的中间待生成的隐变量序列,并由Decoder得到对应的体数据序列,最后将两个方向的体数据序列融合起来作为最后模型的输出。这种双向生成的设计可以使模型生成的结果更加真实,包含更多细节。下面会对此模型的结构细节与训练流程进行详细描述。
3.2.1网络结构设计
如图15,展示了本节为实现数据时间超分辨率所设计的深度学习框架,框架结构由循环神经网络与上文中所介绍的多尺度变分自编码器相结合,包含编码模块φEncode(Encoder module),预测模块φPredict(Predicting module),解码模块φDecode(Decodermodule)以及融合模块φBlend(Blending module)。
对于输入的体数据对(vi,vi+k),编码模块首先提取两个时间步下体数据的隐变量(zi,zi+k),即:
(zi,zi+k)=φEncode(vi,vi+k) (12)
接下来输入到预测模块中分别从两个方向拟合出两个前向和后向的长度为k-1的共享相同时间步的隐变量序列,分别用ZF和ZB表示:
ZF=φPredict F(zi),
ZB=φPredict B(zi+k),
φPredict={φPredict F,φPredict B}. (13)
得到了两个时间步共享的隐变量序列后,将每个时间步的隐变量通过解码模块解码生成对应的三维体数据序列VF和VB:
VF=φDecode(ZF),VB=φDecode(ZB) (14)
综上所述,给出基于深度学习框架的时变体数据时间超分辨率方法的训练过程:
在上文中,已经详细介绍了生成模型的编码模块φEncode与解码模块φDecode的结构细节,在这里就不再赘述。本节接下来的内容将会对预测模块和融合模块做详细的描述。
3.2.2预测模块
编码模块φEncode针对输入的三维体数据,可以提取具有空间信息的隐变量。为了将数据的时序关系拟合出来,采用深度学习模型中的循环神经网络来实现这一目的。
循环神经网络(Rerrent Neural Network,RNN)作为神经网络的一种,对具有序列特点的数据非常有效,能够挖掘出数据中的时序信息以及语义信息等,在模型的训练过程中能够结合序列数据的上下文信息,这是其他结构模型所无法实现的。而在循环神经网络中,较为常用的网络结构就是长短期记忆模型(long-short term memory,LSTM),普通结构RNN在处理长序列数据时,在模型序列的末端将会失去起始位置的大量信息,因而无法有效的利用历史信息。LSTM为了缓解这个问题,加入了门控装置有选择性的去存储历史数据中的信息。
与所有循环神经网络相同,LSTM也是重复模块的链式结构。可以将LSTM的一个模块称作一个细胞,其结构如图16所示。LSTM的关键是细胞状态,通过细胞中的遗忘门、输入门和输出门来控制和保护细胞状态。
预测模块φPredict会接收从编码模块φEncoder中每次为输入的体数据对(vi,vi+k)提取得到的隐变量对(zi,zi+k),将预测模块设计成双向的形式,由两部分构成:φPredict F和φPredict B,其中φPredict F与φPredict B的结构设计相同只是方向相反。φPredict F以起始时间步的隐变量向量zi作为输入从正向生成其他时间步的隐变量,注意VAE是将隐变量映射为分布,因此变分自编码器生成的隐变量对二者分别生成均值和方差序列,并进行重采样得到最后的前向隐变量序列:
3.2.3融合模块
通过预测模块,得到了前向隐变量预测序列ZF以及后向隐变量预测序列ZB,解码模块φDecode会将每个隐变量转换为对应的体数据,得到双向的体数据序列VF及VB。
接下来,融合模块φBlend会将前向体数据序列和后向体数据序列融合,作为框架最终输出的拟合体数据序列结果,在这里采用加和的操作融合两个体数据序列。在融合这两个方向的序列的同时,还会使用整体框架的输入体数据对(vi,vi+k):
这么设计融合模块的原因在于,在编码的过程当中多层卷积神经网络会逐渐在数据抽象的过程中丢失输入到模型中的原始体数据中的一部分细节信息,而在模型中循环神经网络的链式结构也使得构建的序列体数据中,位于数据链末端时间步的体数据会因距离原始数据较远而造成与真实数据越来越大的差异。所以,在融合模块中生成整体模型最后的拟合结果时,选择添加上原始体数据对(vi,vi+k)可以帮助消除一些模型中间过程中产生的噪音、在一定程度上补充训练过程中原始数据信息的缺失。
(4)时序可视化设计
在上文中,在训练VAE的基础上,实现了时间超分辨率体数据生成。在模型训练的过程中,也同时得到了对于每个集合成员,每个变量、每个时间步下体数据所对应的二维隐变量(将模型中间得到的均值作为该输入体数据所对应的隐变量)。得到的二维隐变量可以很好的捕获到原始体数据序列整体的时序发展趋势,基于此可以对数据的时序演变进行简单的探索。为此,设计了一个简单的可视化系统,通过交互的手段帮助系统的使用者基于数据时序发展的整体概览,对感兴趣的时间步的体数据进行细致分析和探索。
4.1系统概览
基于模型训练得到的每个变量、每个时间步下体数据的二维隐变量,设计了一个可交互的可视化界面(如图17所示),整个界面包括三个部分:界面左侧的控制面板(图17)、主界面上方的各变量二维投影视图和实际时间间隔折线图(图17)及其下方的体绘制视图(图17)。通过所设计的这个界面,使用者可以依据二维投影的结果得到各变量时序发展的概览,通过点选感兴趣的时间步,可以进一步观察这一时间步的各变量体数据的体绘制结果,从而对各变量数据进行更加直观、细致的观察。
控制面板部分:用户首先可以选定想要进行研究的集合成员数据集,如通过下拉菜单选择集合成员数据集后,右侧界面主视图中会展示对应的三个变量的二维投影视图,方便观察各变量数据随时间的变化趋势。除此之外,用户在投影视图上选择某个时间步后,在控制面板选择生成方法(传统线性插值、隐变量插值方法、深度学习拟合方法)以及想要观察的变量并点击确定按钮,系统会在体绘制视图中绘制出在该时间步后所生成的新的3个时间步的体数据。
二维投影视图部分:界面主视图上方,展示了选定集合成员数据集三个变量,每个时间步体数据的二维隐变量的散点连线图,以及这一集合成员数据集每个时间步之间实际时间间隔折线图。这一视图下,鼠标经过各时间步的散点,三个变量所对应的时间步会同时高亮,方便用户综合比较观察时间步的各变量数据在整体时变曲线上的位置。通过点选某个时间步,在下方体绘制视图部分会分别展示选中时间步的三个变量的数据体绘制。
体绘制视图部分:界面下方的区域会展示数据的体绘制,用户在二维投影视图中点选某个时间步,体绘制视图中会同时渲染出三个变量数据的体绘制结果。同时,在控制面板部分选择了生成方法与要展示变量后,在体绘制视图区域也会渲染由选中方法生成新数据的体绘制结果,方便用户查看相关变量下体数据随时间更细致的变化。在体绘制视图中,每个体绘制结果都支持交互操作,用户可以对数据进行缩放、旋转等,便于观察数据细节。
4.2系统实现及使用
本申请中所描述的可视化界面使用D3.js数据可视化图形库、Echarts交互式图表和浏览器可视化库实现,体绘制部分由vtk.js完成。接下来的内容,会介绍利用这一可视化系统对集合成员各变量数据的时序发展进行简单探索。
4.2.1关键时间步发现
以集合成员ya31的数据集为例,首先观察变量温度(TEV)、水体积分数(V02)行星体积分数(V03)的二维投影视图(图18),温度变量与小行星体积分数变量的曲线形状是一种环形曲线,这也符合数据在发展变化中最后会回归初始状态的真实情况。接下来,发现在数据初始的几个时间步上,三个变量在各时间步下的点都比较分散,而在这个起始阶段,时间步之间的实际时间间隔比较均匀(图19),因此猜测在这一阶段各变量数据的演变情况是非线性的、较为激烈的。
框选前10个时间步的数据点将局部放大,进一步观察(如图20)。查看温度变量的时序变化,发现在前6个时间步中,温度数据随时间发展各点之间距离逐渐加大,证明数据的变化愈加剧烈,并在第6个时间步后每个时间步之间的数据差异逐渐减小。观察水体积分数(V02)这一变量,发现代表了前7个时间步体数据的点基本重合在一起,这证明在这之前空间中的水面都没有发生变化,而在8到9时间步之间的差异突然变大,可以判断在第9个时间步下水面发生了某个事件影响到数据的变化。在变量小行星体积分数(V03)的变化中,也同样可以发现在7到8时间步下的体数据之间差异很大。为此,可以点击7、8、9时间步的体数据进一步观察实际发生了什么情况。
观察图21,通过比较三个时间步下各变量的体绘制,发现在第8个时间步时发生了小行星撞击水面的事件,这解释了时间步8和时间步9中变量水体积分数(V02)的差异很大的现象。
4.2.2时变体数据生成
此处所描述的可视化界面,除了可以帮助用户对各变量的时序发展进行深入探索,进而发现发生事件的关键时间步以外。用户还可以选择想要在其后生成新数据的时间步,并在体绘制视图中渲染出结果,方便用户进行细致观察和操作。
以集合成员yc31为例,在观察图21中温度变量与水体积分数变量的时序变化曲线时,都发现有一对时间步的体数据之间的差异非常大。进一步查看这一成员数据集每个时间步之间的实际间隔(图22)发现,这对时间步之间的时间间隔也非常大,这也就说明前后两个时间步体数据之间较大的差异不是因为发生了特殊事件造成,而是由于中间间隔部分的数据缺失,没有展示出数据实际的连续性的时序演变情况。因此用户可以通过可视化界面上的交互操作,选择时间间隔过大的这对时间步的首端时间步,并通过左侧控制面板选择生成数据的方法,在下方的体绘制视图中展示为所选变量生成的时间间隔中的体数据序列。
基于多尺度变分自编码器训练的中间结果,得到了每个原始体数据所对应的二维隐变量,基于二维隐变量得到的时序连线散点图,帮助更加直观的查看各变量数据整体的时序发展趋势,为此设计了一个可交互的可视化界面,用户可以通过交互操作选择感兴趣的数据深入观察和分析。同时通过这个可视化界面,用户也可以自己选择不同生成方法,以及需要生成数据的时间步,操作得到生成的体数据序列。
以上是本发明的较佳实施例,凡依本发明技术方案所作的改变,所产生的功能作用未超出本发明技术方案的范围时,均属于本发明的保护范围。
Claims (4)
1.一种基于深度学习模型的时变体数据时间超分辨率可视化方法,其特征在于,包括以下步骤:
S1:采用基于关键体素的数据预处理方法;
统计各变量的时序梯度直方图,并在高梯度值区域内随机选择出关键体素,每个体素点对应一组原始体数据,然后对原始体数据进行体积缩减,保留原始数据空间特征的同时缩减数据规模,从而得到目标原始体数据;
其中,原始体数据使用深水冲击集合数据集,该数据集根据小行星撞击深海水面的自然现象,使用这一数据集探索行星在不同情况下撞击地球海面后会发生的各种现象;该数据集包含多个集合成员数据,每个集合模拟成员的数据都通过运行一系列改变水、空气、小行星体积三种参数组合的数据模拟系统生成的三维模拟体数据;数据模拟的过程是以小行星从高空坠落开始,到小行星以一定角度进入并撞击水面中心;每一个集合模拟成员都是一个时变体数据序列;
S2:采用基于多尺度变分自编码器的两种时变数据生成方法;
建立变分自编码器模型;对该变分自编码器模型进行训练、优化和多尺度化后得到多尺度的变分自编码器模型;对多尺度的变分自编码器模型进行训练;利用训练后的多尺度的变分自编码器学习所述目标原始体数据与隐变量空间的映射关系;并在所述目标原始体数据对应的隐变量的基础上,分别利用隐变量二维投影以及深度学习方法,编码数据隐变量之间的时序关系,分别将传统线性插值转变为数据整体时序发展趋势基础上插值的二维拟合以及学习拟合原始体数据非线性时变趋势的环神经网络LSTM学习拟合,从而得到时间间隔中的未知体数据;
S3:对步骤S2中所得到的各变量、各时间步体数据所对应的隐变量进行可视化;
其中,可视化具体如下:
控制面板部分:用户首先选定想要进行研究的集合成员数据集,通过下拉菜单选择集合成员数据集后,右侧界面主视图中展示对应的三个变量的二维投影视图;用户在投影视图上选择某个时间步后,在控制面板选择生成方法以及想要观察的变量并点击确定按钮,系统会在体绘制视图中绘制出在该时间步后所生成的新的3个时间步的体数据;
二维投影视图部分:界面主视图上方,展示选定集合成员数据集三个变量,每个时间步体数据的二维隐变量的散点连线图,以及这一集合成员数据集每个时间步之间实际时间间隔折线图;这一视图下,鼠标经过各时间步的散点,三个变量所对应的时间步同时高亮;通过点选某个时间步,在下方体绘制视图部分分别展示选中时间步的三个变量的数据体绘制;
体绘制视图部分:界面下方的区域会展示数据的体绘制,用户在二维投影视图中点选某个时间步,体绘制视图中同时渲染出三个变量数据的体绘制结果;同时,在控制面板部分选择生成方法与要展示变量后,在体绘制视图区域渲染由选中方法生成新数据的体绘制结果;在体绘制视图中,每个体绘制结果都支持交互操作。
2.如权利要求1所述的一种基于深度学习模型的时变体数据时间超分辨率可视化方法,其特征在于,步骤S1包括以下子步骤:
S11:针对不同集合模拟成员的不同变量,分别为其计算和选择关键体素的集合,为原始数据中的每个体素位置统计体素梯度值,梯度是通过计算时间序列中每两个时间步之间差异的平均值得到,如下所示:
式中,s为体素的个数,T为每个集合模拟成员时变数据的时间步个数,和分别为时间步t和时间步t+1时在体素位置s上的数值,得到每个体素位置的梯度值以后,统计梯度直方图,基于梯度直方图,随机选取关键体素,提取关键体素时将梯度值小的部分剔除;
S12:选取关键体素以后,将基于提取到的关键体素集合对原始数据的规模进行压缩,原始数据V的分辨率为100*100*100的规格,压缩后数据设为V′,对原始体数据进行压缩的过程中,首先按照空间排列的顺序沿着三个坐标轴将原始数据分割为100*100*100个小单元,每个小单元为3*3*3大小的立方体,用符号vijk表示,其中表示一个立方体单元中的九个体素点序号,i,j,k=1,2,3,……,100分别表示沿x、y、z轴的每个最小单元的编号,压缩后体数据中每个体素点v′ijk与原始数据中对应位置的单元立方体vijk相对应,用该单元中的9个体素数值的平均值作为压缩后数据体素点v′ijk的值,对于原始数据V中每个体素点的值也作进一步的处理,将关键体素位置上各变量的原始数值保持不变,未被选择的非关键体素上各个变量的值则被置为0。
3.如权利要求2所述的一种基于深度学习模型的时变体数据时间超分辨率可视化方法,其特征在于,步骤S2包括以下子步骤:
S21:建立变分自编码器模型;
其基本结构为:首先,输入数据的分辨率为3*100*100*100,每个体数据由三个变量组成,分别为温度、水体积分数、小行星体积分数,每个变量数据的分辨率为100*100*100;数据编码的过程由三个Encoder组成,其中每个Encoder包含四层三维卷积神经网络,并且在第一层卷积神经网络后添加一个卷积注意力机制模块;向三个Encoder分别输入一个变量的数据,相同结构的Encoder分别提取三个变量的数据特征,获得三组均值和方差;接下来按照变量的顺序纵向的将均值和方差进行拼接,即可得到当前输入体数据的整体均值和方差向量;
解码部分使用一个Decoder完成,Decoder的结构设计与Encoder的结构设计相对称,由四层三维反卷积神经网络构成;利用多变量整体的隐变量,最后解码输出该时间步下模型重构的多变量体数据;
S22:变分自编码器模型训练过程如下:
输入到模型中的体数据两次经过编码器Encoder得到多维正态分布的均值μ和方差σ;这一步将输入数据编码成隐空间上的一个分布;
得到概率分布N(μ,σ)后,需要在其上随机采样得到中间的隐变量;先在0-1正态分布上随机采样一个点,然后将这个点线性变换到目标正态分布中;
在拟合分布上采样得到隐变量后,将隐变量输入到Decoder中解码出最终模型的输出数据,并计算重构误差;
重构误差进行反向传播,更新模型网络参数,不断优化;
其中,变分自编码器模型的目标函数如下式所示:
从整体来看其包含两个部分,第一项表示模型的重构误差,迫使模型解码出的数据与输入数据尽可能相近;第二项为正则化损失,保证模型中间训练得到的分布接近标准正态分布;
S23:改进变分自编码器模型优化目标;
优化目标包括两个部分,一部分是对隐变量空间添加的约束,即要求编码器生成的数据分布服从标准正态分布,通过计算KL散度实现;另一部分重构误差,控制模型输出数据与真实数据之间的差异,在模型训练中,参数c是人为设置的,是优化函数中两个损失项之间的权重值,
这样模型的优化函数中,重构数据同真实数据之间的MSE与隐变量分布同标准正态分布之间KL散度的比例是1∶1的;
其中,将参数c也作为模型的参数,加入到神经网络中进行反向传播在训练的过程中优化和学习,使模型自己学习和决定目标函数中数据重构误差这一项的权重大小;
S24:变分自编码器模型的多尺度化;其结构如下:
由四层CNN及一个卷积注意力模块组成,输入数据首先经过四层CNN后得到顶层隐变量etop;接下来将已有的etop反卷积,同时将输入数据进行两次卷积操作,二者得到的结果共同组成底层隐变量ebottom;通过将这种多尺度结构得到的etop和ebottom拼接起来得到输入体数据所对应的隐变量后,会继续进行后续重采样、解码输出数据操作;
S25:多尺度的变分自编码器模型训练过程如下;
重复以下过程,直到模型收敛:
(4)重采样,在0-1正态分布中采样ε,计算z=e_mu+ε*e_std;
(5)模型输出v′i=Decoder1,2,3,4(z),计算损失Loss=Reconstruction_term+KL_term;
(6)反向传播,优化模型参数;
S26:基于二维隐变量插值的时序关系拟合方法,具体如下:
首先训练多尺度的变分自编码器模型,Encoder部分可以将时变数据中的每个时间步各变量的体数据映射到二维隐空间;在特征提取模块,利用训练好的编码器将已知的两个体数据对的各变量映射为二维隐变量;随着模型重构数据质量提升,输入数据所映射的均值作为数据对应的特征向量;
接下来在数据生成模块,针对得到的隐变量对,根据数据的整体时变趋势,插值得到中间的隐变量序列,并进一步利用Decoder生成对应的体数据序列;
S27:基于深度学习框架的时序关系拟合方法,具体如下:
首先训练多尺度的变分自编码器模型,将每个时间步的多变量体数据之间的时序关系也通过模型训练学习,针对所需处理的时变体数据序列,使用循环神经网络拟合学习数据的时序关系,对于已知的两个时间步的体数据对,模型从前向和后向两个方向分别拟合出共享相同时间步的中间待生成的隐变量序列,并由Decoder得到对应的体数据序列,最后将两个方向的体数据序列融合起来作为最后模型的输出。
4.如权利要求3所述的一种基于深度学习模型的时变体数据时间超分辨率可视化方法,其特征在于,步骤S3具体如下:
提供一个可交互的可视化界面对步骤S2中所得到的各变量、各时间步体数据所对应的隐变量进行可视化;
所述可视化界面包括三个部分:界面左侧的控制面板、主界面上方的各变量二维投影视图、实际时间间隔折线图及其下方的体绘制视图。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110542377.XA CN113269675B (zh) | 2021-05-18 | 2021-05-18 | 基于深度学习模型的时变体数据时间超分辨率可视化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110542377.XA CN113269675B (zh) | 2021-05-18 | 2021-05-18 | 基于深度学习模型的时变体数据时间超分辨率可视化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113269675A CN113269675A (zh) | 2021-08-17 |
CN113269675B true CN113269675B (zh) | 2022-05-13 |
Family
ID=77231516
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110542377.XA Active CN113269675B (zh) | 2021-05-18 | 2021-05-18 | 基于深度学习模型的时变体数据时间超分辨率可视化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113269675B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113743482B (zh) * | 2021-08-20 | 2023-09-12 | 郑州云智信安安全技术有限公司 | 一种基于车联网obd数据的车辆安全检测方法 |
CN115018705B (zh) * | 2022-05-27 | 2024-06-14 | 南京航空航天大学 | 一种基于增强型生成对抗网络的图像超分辨率方法 |
CN114708608B (zh) * | 2022-06-06 | 2022-09-16 | 浙商银行股份有限公司 | 一种银行票据全自动化特征工程方法及装置 |
CN115228595B (zh) * | 2022-07-20 | 2024-10-25 | 云南品视智能科技有限公司 | 一种基于目标检测的矿带智能分割方法 |
CN115471398B (zh) * | 2022-08-31 | 2023-08-15 | 北京科技大学 | 图像超分辨率方法、系统、终端设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1182613A2 (en) * | 2000-08-22 | 2002-02-27 | Marconi Medical Systems, Inc. | Diagnostic imaging |
SE0401021D0 (sv) * | 2004-04-21 | 2004-04-21 | Sectra Imtec Ab | Datareduktion för framställning av datorgenererad grafik och analys |
CN101809872A (zh) * | 2007-09-28 | 2010-08-18 | 松下电器产业株式会社 | 编码方法、编码器以及解码器 |
CN105334504A (zh) * | 2015-09-08 | 2016-02-17 | 西安电子科技大学 | 基于大边界的非线性判别投影模型的雷达目标识别方法 |
CN109977964A (zh) * | 2019-02-25 | 2019-07-05 | 南京航空航天大学 | 一种基于深度生成模型的sar图像方位角特征提取算法 |
CN110389982A (zh) * | 2019-07-25 | 2019-10-29 | 东北师范大学 | 一种基于空气质量数据的时空模式可视分析系统及方法 |
WO2020014280A1 (en) * | 2018-07-11 | 2020-01-16 | Illumina, Inc. | DEEP LEARNING-BASED FRAMEWORK FOR IDENTIFYING SEQUENCE PATTERNS THAT CAUSE SEQUENCE-SPECIFIC ERRORS (SSEs) |
CN110832596A (zh) * | 2017-10-16 | 2020-02-21 | 因美纳有限公司 | 基于深度学习的深度卷积神经网络训练方法 |
CA3061745A1 (en) * | 2018-11-16 | 2020-05-16 | Royal Bank Of Canada | System and method for generative model for stochastic point processes |
WO2020172524A1 (en) * | 2019-02-22 | 2020-08-27 | National Geographic Society | A platform for evaluating, monitoring and predicting the status of regions of the planet through time |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8521670B2 (en) * | 2011-05-25 | 2013-08-27 | HGST Netherlands B.V. | Artificial neural network application for magnetic core width prediction and modeling for magnetic disk drive manufacture |
US11373272B2 (en) * | 2015-06-05 | 2022-06-28 | MindAptiv, LLC | Digital gradient signal processing system and method for signals comprising at least three dimensions |
KR102501530B1 (ko) * | 2018-12-31 | 2023-02-21 | 한국전자통신연구원 | 시계열 데이터 처리 장치 및 이의 동작 방법 |
-
2021
- 2021-05-18 CN CN202110542377.XA patent/CN113269675B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1182613A2 (en) * | 2000-08-22 | 2002-02-27 | Marconi Medical Systems, Inc. | Diagnostic imaging |
SE0401021D0 (sv) * | 2004-04-21 | 2004-04-21 | Sectra Imtec Ab | Datareduktion för framställning av datorgenererad grafik och analys |
CN101809872A (zh) * | 2007-09-28 | 2010-08-18 | 松下电器产业株式会社 | 编码方法、编码器以及解码器 |
CN105334504A (zh) * | 2015-09-08 | 2016-02-17 | 西安电子科技大学 | 基于大边界的非线性判别投影模型的雷达目标识别方法 |
CN110832596A (zh) * | 2017-10-16 | 2020-02-21 | 因美纳有限公司 | 基于深度学习的深度卷积神经网络训练方法 |
WO2020014280A1 (en) * | 2018-07-11 | 2020-01-16 | Illumina, Inc. | DEEP LEARNING-BASED FRAMEWORK FOR IDENTIFYING SEQUENCE PATTERNS THAT CAUSE SEQUENCE-SPECIFIC ERRORS (SSEs) |
CA3061745A1 (en) * | 2018-11-16 | 2020-05-16 | Royal Bank Of Canada | System and method for generative model for stochastic point processes |
WO2020172524A1 (en) * | 2019-02-22 | 2020-08-27 | National Geographic Society | A platform for evaluating, monitoring and predicting the status of regions of the planet through time |
CN109977964A (zh) * | 2019-02-25 | 2019-07-05 | 南京航空航天大学 | 一种基于深度生成模型的sar图像方位角特征提取算法 |
CN110389982A (zh) * | 2019-07-25 | 2019-10-29 | 东北师范大学 | 一种基于空气质量数据的时空模式可视分析系统及方法 |
Non-Patent Citations (3)
Title |
---|
TSR-TVD:temporal super-resolution for time-varying data analysis and visualization;Han J等;《IEEE Transactions on Visualization and Computer Graphics》;20201231;205-215 * |
基于卷积神经网络的体数据可视化研究;周正磊;《万方数据库》;20181126;1-85 * |
深度学习驱动的可视化;刘灿等;《计算机辅助设计与图形学学报》;20201015(第10期);4-15 * |
Also Published As
Publication number | Publication date |
---|---|
CN113269675A (zh) | 2021-08-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113269675B (zh) | 基于深度学习模型的时变体数据时间超分辨率可视化方法 | |
He et al. | InSituNet: Deep image synthesis for parameter space exploration of ensemble simulations | |
CN110363716B (zh) | 一种基于条件生成对抗网络复合降质图像高质量重建方法 | |
Han et al. | SSR-TVD: Spatial super-resolution for time-varying data analysis and visualization | |
Weiss et al. | Fast neural representations for direct volume rendering | |
Fan et al. | Real‐time monte carlo denoising with weight sharing kernel prediction network | |
Wang et al. | Hybrid attention-based U-shaped network for remote sensing image super-resolution | |
CN116051696B (zh) | 一种可重光照的人体隐式模型的重建方法和装置 | |
CN111862294A (zh) | 基于ArcGAN网络的手绘3D建筑自动上色网络结构及方法 | |
CN107610221B (zh) | 一种基于同构模型表示的三维模型生成方法 | |
Ma et al. | Compression and accelerated rendering of time-varying volume data | |
Bai et al. | Predicting high-resolution turbulence details in space and time | |
Wang et al. | CGNet: a cascaded generative network for dense point cloud reconstruction from a single image | |
Wurster et al. | Deep hierarchical super resolution for scientific data | |
Sen et al. | Interpolation of regularly sampled prestack seismic data with self-supervised learning | |
Gao et al. | Tetgan: A convolutional neural network for tetrahedral mesh generation | |
Zeng et al. | Point cloud up-sampling network with multi-level spatial local feature aggregation | |
Hui et al. | Make-a-shape: a ten-million-scale 3d shape model | |
Gupta et al. | MCNeRF: Monte Carlo rendering and denoising for real-time NeRFs | |
Zhang et al. | Stochastic reconstruction of porous media based on attention mechanisms and multi-stage generative adversarial network | |
Wang et al. | MDISN: Learning multiscale deformed implicit fields from single images | |
Jiao et al. | ESRGAN-based visualization for large-scale volume data | |
Gu et al. | NeRVI: Compressive neural representation of visualization images for communicating volume visualization results | |
Xiao et al. | Multi-dimensional graph interactional network for progressive point cloud completion | |
CN116958451A (zh) | 模型处理、图像生成方法、装置、计算机设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |