大数据可视分析在海洋领域的应用
2021-03-22解翠李明悝陈萍李孝天宋键董军宇赵佳萌
解翠,李明悝,陈萍,李孝天,宋键,董军宇,赵佳萌
1. 中国海洋大学信息科学与工程学院,山东 青岛 266100;2. 中国海洋大学物理海洋教育部重点实验室,山东 青岛 266100
1 引言
随着海洋观测技术和数值仿真技术的不断进步,人们逐渐可以获取到更高分辨率和更大规模的多元时空变化的数据集,这给针对海洋复杂过程的分析研究提供了更多的机会,也带来了很大的挑战。首先,海洋数据本身隐含着复杂的时空过程和多元要素的动态变化,多个时空变量在空间和时间上与多个尺度高度相关,这使得从这些庞杂的数据中获取有价值的模式或发现海洋结构(现象)及其时空演化规律变得困难;同时大数据使得传统的依赖人工发现、评估和解释时空模式或特征的分析方法变得低效;另外对海洋结构及其时空模式的识别目前还是局部粒度的,缺少对其时空模式的整体概览和多尺度细致的分析,而且目前的分析系统也缺少符合海洋研究者探索不同海洋时空情形的高效交互方式;此外,海量海洋大数据导致存储困难、计算时间过长,虽然采用常规的数据约简技术可以降低数据规模,但同时容易引起数据细节甚至关键结构信息的丢失;高纬度的海洋多元要素间的关系分析也变得复杂和困难;传统的2D/3D可视化方法难以应对海量高维复杂时空数据的挑战,视觉混淆和过度绘制问题变得尤为突出。可视分析是结合了机器学习、统计等自动化数据分析算法和交互式可视化来促进数据分析和推理的科学[1],能从大规模和复杂数据中多尺度地提取有用的信息和有意义的知识[2],并通过交互可视化数据探索生成假设和验证,以获得对物理现象的科学洞察,因而可视分析是现有的基于经验、理论和基于数值模式方法进行复杂海洋数据分析研究的有力补充。
为此,笔者将先进的可视分析技术引入复杂海洋数据分析中,开发了多个可视分析系统,用于辅助领域专家探索多元海洋环境要素的时空特征或相关性,分析涡旋及海洋锋等重要海洋结构(现象)的时空特征及其演化规律,呈现可视分析技术在海洋数据分析领域的应用前景,并总结了海洋数据可视分析的基本框架。
2 相关工作
2.1 多元海洋时空数据可视分析
常见的多元海洋时空数据可视分析是围绕研究一个或多个海洋标量(温度、盐度等)和矢量(流场)的变化特征展开的,例如,Stein R J等人[3]提出了一个用于水质研究的交互式可视分析系统,该系统利用剖面、等值面、轮廓面、矢量箭头等方法,对水源盐度和流场数据的时空特征进行多视图协同交互分析。Su T Y等人[4]开发了海洋数据可视分析系统,它支持对等高线、等值面、体绘制和流场的动态模拟,该集成系统采用基于图形处理器(graphics processing unit,GPU)的渲染方法加速标量或矢量场的绘制,直观地分析海量海洋水文环境要素的空间特征,提升了数据分析时交互的速度。
由于海洋数据是由多个相互关联的变量组成的多场数据集,出现了一些基于平行坐标分析多变量关系的可视分析系统。例如,Guo H Q等人[5]提出了一种针对多变量体数据的可视分析系统,利用平行坐标图和基于多维比例尺图对多变量体数据进行可视化和交互分析,实验证明,该系统对不同大小和不同属性的数据集的可视分析具有较高的可扩展性。Yano M等人[6]提出了一个三维可视化系统,利用平行坐标图对全球多个模态水域的多元属性(温度、密度和盐度)进行对比分析,以发现模态相似的水域。Rocha A等人[7]提出了一个用于分析仿真模型中多个海洋标量、矢量间相关性的可视分析系统,以不同的可视化形式同时叠加多个变量的可视化显示,支持灵活的用户交互和多变量切换显示,以满足用户多层次的分析需求。但基于平行坐标的可视分析系统存在线条重叠和视觉混乱的问题,因此又出现了一些带有聚合功能的平行坐标图的新设计。总之,相比传统的可视化分析方法,多元时空数据可视分析系统提供了更多的交互探索和可视化新设计,可在不同程度上提升数据分析的质量和效率。
2.2 海洋结构(现象)的可视分析
大规模海洋数据中隐含着与复杂海洋过程相关的多种结构或现象,这里笔者主要以海洋锋和涡旋等重要海洋结构识别与检测、时空特征分析和演化两个方面介绍相关可视分析系统。
2.2.1 海洋结构(现象)的识别与检测
在海洋中,各种现象/结构时时刻刻都会发生变化,并且每种现象都有其自身的物理特征,因此产生了多种特有结构的检测和分析方法。海洋锋的检测方法主要有梯度法、直方图法、熵方法、Canny边缘算子方法[8]等。常用的涡旋检测方法有3种[9]:第一种是基于几何的方法,该方法利用流场中流线的几何形状确定涡旋;第二种是基于阈值的方法,代表性的阈值法是基于Okubo-Weiss参数检测涡旋;第三种是结合几何法与阈值法的混合检测方法,该方法可以提高涡流检测的准确性和从海平面高度异常识别涡旋多核结构的能力。此外,通过Okubo-We iss参数阈值法识别涡旋,并将其作为训练集,然后通过卷积神经网络(convolutional neural network,CNN)进行特征学习,可实现基于深度学习的涡旋检测[10]。
2.2.2 海洋结构(现象)的时空特征和演化
由于海洋数据规模变大,海洋结构(现象)通常涉及多个变量在空间、时间和多个尺度上的变化,这加大了海洋结构(现象)时空特征及演化分析的难度。Matsuoka D等人[9]提出了一种涡旋检测、跟踪、事件检测和可视化的新方法,分析涡旋演化过程中的合并和分叉,以及涡旋和洋流之间的相互作用等事件。Woodring J等人[11]开发了一个全球海洋涡旋系统,利用折线图、直方图等常见的图表对涡旋的大小、深度进行可视化,还利用大量的高分辨率时空建模数据对涡旋进行多尺度的空间探索分析。可视分析技术确实在时空模式发现和演化分析的效率和质量方面有显著的促进作用,但是在海洋领域应用可视分析技术的研究目前还处于起步阶段,如何应用可视分析技术更好地提升复杂海洋数据分析的能力,值得进一步探索和研究。
3 海洋领域的可视分析技术
3.1 海洋数据及预处理
通常,海洋数据来自观测设备(如卫星、船舶或传感器等),或来自计算机仿真(如海洋大气模型)。海洋和大气在循环系统中相互耦合,因此这里的海洋数据主要指各种海洋环境要素,包括海洋水文数据和海洋气象数据。海洋水文数据包含水深、水温、盐度、水流、波浪、水色、透明度、海冰和海洋光等。海洋气象数据包含气温、压力、湿度、风速、降水、云、雾等[12]。单个时间步长的观测数据和模拟数据全部由空间场数据组成,该空间场数据的每个网格点处都由多个变量组成。因此,各种时间序列的空间场数 据构成了海洋数据集(观测数据集或仿真集)。随着观测技术和计算机模拟技术的不断发展,海洋数据的获取量正在以不可预测的速度迅速增长。同时,海洋数据包含强大的时空过程,涉及多尺度结构之间的复杂相互作用。海洋数据具有异构性高、维度高、体积大、时空变化大以及多种海洋数据属性之间耦合相关的 特点。因此,在收集到海洋数据后,首先要进行数据清洗,以消除重复性数据、缺失数据等;其次要进行数据精简,例如过滤/采样(如简单随机采样、等距抽样、分层抽样等)、降维、分组聚合和模型拟合等[12-13]。
3.2 海洋领域的可视分析技术
3.2.1 海洋领域常用的可视化方法
海洋领域的可视分析系统通常采用科学可视化技术,信息可视化技术用得较少,但信息可视化技术在以挖掘信息和获取知识为目标的大数据分析中尤为重要[1]。早期,多维海洋环境要素(如水温、盐度等标量和流场矢量)可视化的常用方法是使用二维点、线、面、粒子、标记符和3D体进行绘制。对于空间数据可视化,2D地图或基于地球上的投影展示通常是地理分布的首选,同时还需要考虑投影、比例尺和视觉编码设置;对于时间序列数据可视化,通常用时间序列图展示海洋变量或现象的变化趋势。当对象的时空信息维度较高时,三维展示也存在局限性,因此通常还需要结合高维数据可视化方法,如散点图、热图/相关矩阵、投影、平行坐标图以及集成的平行坐标散点图等常用的可视化方式[13]。但是在大数据环境下,平行坐标图会遇到线条密集、重叠 覆盖的问题,根据线条的聚合特征可以对平行坐标图进行简化,减少视觉混淆[1]。
3.2.2 海洋领域常用的交互方法
在大数据可视分析的界面中,还需要提供相应的交互组件以及合适的交互方式来帮助用户使用和管理分析过程。目前,信息可视化中的人机 交互技术主要可以分为5类:动态过滤技术、整体+详细技术、平移+缩放技术、焦点+上下文技术、多视图关联协同技术[1]。但对于一个具体的海洋领域可视分析系 统而言,往往需要依据其特定的分析任务和用户习惯来设计更恰当的交互方式。
常用的交互方式有选择、探索、抽象/具象、过滤、重配置、编码、连接等。选择是海洋数据可视分析系统中最常见的交互技术,允许用户在很多显示项目中标记感兴趣的特定项目,选择这些项目并跟踪它们;探索允许用户通过更改视图来查看无法在视口或显示屏上可视化的项目;抽象/具象可以帮助用户查看不同级别的详细信息,例如执行各种聚合和汇总,实现对海洋数据的多尺度、多分辨率分析;过滤允许用户查看指定范围或条件的数据子集;重配置允许用户更改可视化的空间排列,如排序、重对齐、重布局等常见交互类型,可查看多变量数据集在不同视角下的呈现,以获得更全面的认识;编码允许用户选择不同的视觉通道(如颜色、大小、形状等)来编码多变量数据集的不同数据属性,通过多种可视化的呈现获得对数据的洞察;连接允许用户查看海洋数据项之间的关联和关系,或显示与特定显示项目相关的隐藏项,例如多视图中的刷取和高亮显示,以及与单视图中的高亮选中项关联的其他条目[13]。但就目前海洋研究者日常使用的海洋数据分析工具来看,上述许多交互方式的实际使用率有待提升。
3.2.3 海洋领域常用的分析方法
可视分析技术很好地融合了高效的计算分析方法和专家的经验知识,因而能更好地提高分析的效率和质量。笔者基于海洋研究者日常不同的分析任务,阐述海洋领域的常用计算分析方法。对于多种海洋环境要素特征分析以及多变量之间相关性分析,一方面,采用各种聚类、降维等数据约减的方法来降低数据的维度,如在海洋数据可视分析中经常使用k均值聚类、自组织映射、主成分分析和多维尺度变换等降维方法;另一方面,回归分析在探索数据变量的多元关系方面已经显示出良好的潜力,回归和相关分析已经与平行坐标图集成一种新技术——多维数据浏览器[13]。此外,可以基于改进的Pearson相关 系数和互信息相关性分析(mutual information correlation analysis)方法分别检测多变量间的线性和非线性相关性[12]。
对于海洋结构(现象)识别与跟踪的任务,通常需要根据海洋结构自身的物理特征进行不同的检测和使用不同的跟踪算法。第一类方法使用聚 类来实现对海洋结构边缘位置的识别,但聚类的簇数设置会直接影响检测结果的准确性[14];第二类方法基于正交经验模式分解、主成分分析、小波分析等常用的时空模式检测方法;第三类方法使用机器学习的决策树和类比较等自动数据挖掘技术进行数据驱动的复杂时空模式检测和分析[15]。此外,Fran z K等人[10]提出了一种深度学习的涡旋检测和跟踪框架,该框架结合卷积神经网络的特征学习和特定的图像处理工具,可以更客观、更可靠地检测和跟踪涡旋。可见,结合机器学习和深度学习进行时空模式检测正在成为大数据时代复杂数据分析的一个重要方向。
4 可视分析技术在海洋领域的应用
笔者尝试在海洋领域使用可视分析技术分析复杂的海洋时空数据,主要包括多元海洋时空数据可视分析、海洋结构(现象)可视分析,并在此基础上总结了海洋数据可视分析 的基本框架。
4.1 多元海洋时空数据可视分析
多元海洋时空数据可视分析通常研究多个不同的属性值在时间和空间上的变化规律以及多变量间的相关性。
4.1.1 海洋水文数据可视分析
为了探索海表温度、盐度、流速场以及海面高度等多元海洋要素的时空特征以及相关性,笔者设计了一个多元海洋数据时空特征及相关性分析系统,系统包括用于数据导入、筛选和参数阈值设置的交互面板,海洋标量颜色映射和二维箭头矢量地图,成对的标量属性统计散点图,某网格点的垂向深度和时间上的属性变化趋势折线图,展示多元海洋要素相关性的平行坐标图。除此之外,该系统还包括选择、导航、编码、视图切换、抽象/具象、过滤和关联等交互方式。
选取特定海域数据集进行分析,利用该系统多个视图交互联动的探索,分析海面高度与海平面速度矢量、海表温度与海平面速度矢量、不同水深下盐度场与海平面速度矢量的时空分布特征,以及海面高度与海温、盐度的相关性。分析发现:海表温度与速度矢量的关系比海面高度与速度矢量的关系弱,并且随着水深的增加,速度矢量的分布并没有太剧烈的变化;而盐度场分布变化却出现明显的跳变(跃层),此处也是海水流动相对剧烈的地方。此外,海表温度和海面高度大体呈正相关的线性关系,而海面高度和盐度的相关性不明显。通过大量的案例研究,进一步证明了该系统在探索多个海洋要素的相关性及其时空变化特征方面都有不错的性能。
4.1.2 海洋气象数据可视分析
地球系统模式可以对全球的大气、海洋以及陆面等圈层的多种环境要素进行数值模拟,模式输出的变量维度超过100维,对这些数据的可视分析一般选择感兴趣的十几个变量进行研究。图1以海表温度、云量两种变量为例,展示常用的二维、三维可视化效果。
图1(a)和图1(b)所示分别是模式计算出的某时间的云层分布情况(白色越亮,表示云层越厚)和海表温度分布情况(冷暖色调表示温度的低和高)。图1(c)是将云层分布和海表温度叠加并扩展到三维空间的展示,这种方法不仅改变了视觉效果,还为展示更多的变量特征提供了条件。此外,笔者将大气变量和海洋变量在空间上的分布都绘制在球面上(如图1(d)所示),使视觉效果更加接近真实情况,方便用户理解。这种三维多层的可视化展示可以通过交互设置相机的视角查看各个角度的球面可视化效果,这为更多种类的图形要素在三维空间的布局和动态展示带来了更多的可能性。
4.2 海洋结构(现象)可视分析
可视分析技术不仅可以在多元海洋时空数据分析中发挥积极的作用,也可以用于涡旋、海洋锋等重要海洋结构的时空特征模式探索以及演变规律分析。笔者在这些方面的工作已经取得了初步的成效。
图1 可视化效果
4.2.1 涡旋可视分析
海洋上的涡旋破坏了海水的稳定性,给海洋生物、渔业以及航运造成巨大影响。因此研究涡旋及其演变时空特征具有重要的实际价值。笔者设计了一个涡旋多特征及其演化的可视分析系统,下面分别从系统功能、可视化视图和交互方式、计算分析方法和系统使用方式及案例分析等方面进行阐述。
涡旋多特征可视分析及演化分析系统实现了涡旋特征参数的可视化、时变属性以及动态演变过程的交互可视化。如图2所示,A模块主要进行涡旋空间特征与水文数据分布的球面展示。A-1中设计了3个下拉选择按钮,分别为日期选择、投影切换、海洋水文环境切换(水温、盐度、海表温度);A-2为球面投影视图;A-3为颜色映射条;A-4实现了动画的开关与涡旋比较的操作。框选区B汇总了单日涡旋整体的特征参数数据,包括:数量(num)、经度(lon)、纬度(lat)、面积(area)、半径(radius)、涡旋能量密度(EI)、涡动能(EKE)、涡度(vorticity)、速度(velocity)。框选区C呈现了涡旋数量、平均面积、涡动能、涡旋能量密度随时间演变的趋势,其中框选区C-1为时间轴;框选区C-2为涡旋平均面积随时间的变化趋势;框选区C-3为变量选择框。除此之外,该系统还包括选择、导航、编码、视图切换、抽象/具象、过滤和关联等交互方式,可以更好地帮助用户深入地了解涡旋的特征信息以及生消演变规律。
图2 涡旋多特征可视分析及演化分析系统主界面
该系统的涡旋检测首先采用O W(Okubo-Weiss)参数法检测涡核及冷(蓝色)暖(红色)涡类型,然后通过水平划分,将海表高度异常数据场划分为多层的等高轮廓线集合,再分析每一层中的闭合轮廓是否能拟合到符合涡旋轮廓特征的椭圆上,与 椭圆高度拟合的闭合轮廓被判定为涡旋的轮廓线,然后基于“每一涡旋不同层中的轮廓具有相同的极值点位置和振幅”这一特点,可以分别识别出暖涡和冷涡最外圈的闭合轮廓,将其作为涡旋的边界[9]。接下来基于“相邻时间点内各个涡旋之间特征差异最小的两个涡旋是前后延续的”来判别和跟踪涡旋,这里为了更好地跟踪同一涡旋,笔者考虑了更多的涡旋特征(包括涡核距离、半径、剪切变形率、拉伸变形率和振幅等)的差异值。在此基础上,结合球面上涡旋的选择、缩放、过滤等交互(如图3(a)~图3(c)所示),用户借助统计图表和平行坐标图(如图3(d)所示)的协同联动,可分析不同涡旋间各个特征(如涡动能、涡旋能量密度、涡度等)之间的差异性。从图3可以发现:两个面积较大的涡旋都位于流线密集区域,面积较小涡旋的涡动能、涡旋能量密度、涡度和速度却更大;进一步利用图2中A-4动画的交互控制和其他图表(图2中C区域和B区域)的协同探索,可比较不同涡旋的生消演变过程和规律。
图3 涡旋的聚焦可视化和多属性的平行坐标图
4.2.2 海洋锋可视分析
研究海洋锋面的结构特征和时空变化对于动力热力过程、生态环境、物质输运和海洋养殖等方面都有重要的意义。为此,笔者设计了海洋锋多特征和时空聚类可视分析系统。本系统采用分海区梯度阈值法来检测海洋锋,首先引入Sobel算子,计算研究区域内每个网格点的温度梯度,并根据海洋专家的经验选取温度梯度阈值,温度梯度大于阈值的点,被认为存在海洋锋。然后分析海洋锋这个对象:一方面,该系统提供协同交互的统计图(日历图+雷达图+梯度分布箱线图)和锋面分布地图来辅助用户更好地对海洋锋时空规律进行总结,进行海洋锋统计指标以及海区的比较,帮助用户对不同海区间海洋锋的特征和相似性进行分析,并基于对海洋锋面积的快速定量分析,总结出海洋锋的生消演化规律,这比传统的只通过海洋锋的空间分布地图连同时间切换的分析方式更高效;另一方面,该系统能计算海洋锋强度的度量属性(如强度分布的众数、四分位差、偏度和超值峰度等)和度量海洋锋空间分布聚集程度的莫兰指数,可基于自组织映射网络模型实现海洋锋时空特征的聚类分析与可视化(如图4所示),支持用户依据领域知识对聚类结果进行评价和动态调整,交互式地探索聚类簇内的时空特征规律,完成簇间差异的比较。如图4所示,系统设计了统一的距离矩阵图(U-Matrix用来表征相邻海洋锋聚类簇之间的距离)、成分占比图(Component Plane用来显示海洋锋度量属性的占比情况,帮助发现某些节点的聚类划分是否合理)、平行坐标图(展示多个锋的属性特征)、层次树图(展示聚类后各节点的从属关系)和分布地图等多图表联动的方式对聚类结果进行分析。此外,系统从用户角度出发,采用选择、抽象/具象、编码、探索、连接等有效的交互方式进行海洋锋多特征探索和时空聚类可视分析。
如图4中A步骤所示,基于统一的距离矩阵图和成分占比图,用户判断聚类划分成6 类结果不合理,可以直接在展开的聚类层次树图中手动增删聚簇和调节节点所属的类别,将69、79、89号这3个超值峰度占比较大的节点重新拖到一个新建的红色标识的聚类簇,并将其命名为“Cluster 7”(如图4中B步骤所示),以优化聚类结果。进一步,可以在聚类层次树中选中特定的聚类簇,并对其进行时空模式分析(如图4中C步骤所示),同时图4中的平行坐标图协同地展示该聚类簇中的海洋锋样本,时序散点图中的这些样本也同时高亮突出显示,最右侧的分布地图也同时呈现出这些锋区的地理时空情形。通过以上各个部分的联动交互探索,可以很直观地发现,研究海域中的海洋锋在空间上大部分分布在北边,时间主要集中于上半年和11月、12月,且在超值峰度属性上数据分布比较集中,表现出较强的空间聚集型特征。但这些海洋锋海区的强度离散程度比较大,温度梯度大部分小于对应海区温度梯度的平均值。
图4 基于自组织映射网络的海洋时空聚类 模式探索
4.3 海洋数据可视分析框架
针对海洋数据分析领域,笔者设计和实现了多个视图协同交互的可视分析系统,在此基础上提出了海洋数据可视分析的基本框架。首先对海量和多来源的复杂海洋数据进行清洗整理、精简、高效检索管理和汇总;然后充分与领域用户和专家沟通交流,了解和总结他们的领域需求,确定好分析任务;接下来对于多分辨率、多维和时变数据集,有针对性地设计恰当的多个可视图表和多种交互方式,支持不同的空间、时间尺度和数据维度及属性维度的交互式可视化分析、多维查询和过滤;同时可视分析系统需要集成海洋结构(现象)检测和时空模式发现等自动化的计算分析算法,允许在发现重要的海洋结构(现象)的同时,进行必要的多元属性相关性分析和时序可视化分析,与传统的独立开展时间或空间数据分析和可视化呈现静态结果图相比,该框架能明显提升分析效率;同时支持直接在可视化界面上进行交互控制、评估和优化聚类结果,更容易调整参数设置以动态优化算法,更容易理解自动化检测算法生成的结果,能更好地发现和掌握多尺度的海洋结构(现象)及其时空特征、趋势和异常,同时也可以探索多元海洋要素跟海洋结构(现象)的紧密联系等。
5 结束语
本文侧重于大数据可视分析在海洋领域的应用,分析总结传统海洋分析方法的不足,并将可视分析方法应用到多元海洋时空数据以及海洋结构(现象)的分析中,探究多元海洋时空数据特征以及相关性,分析涡旋及海洋锋等重要的海洋结构时空特征以及演化规律,并总结出海洋数据可视分析的基本框架。但目前海洋大数据的可视分析仍然处于探索阶段,尤其是动态的多维大数据的可视化技术匮乏,需要继续扩展现有的方法或研究新的可视化方法,以及探究新的数据转换和表征技术来应对复杂的异构数据。此外,设计新的交互方式和智能数据分析算法对于促进海洋大数据的可视分析也具有重要的意义。