您好, 访客   登录/注册

浅析海洋数据成果质量问题与清洗方法

来源:用户上传      作者:

  摘要:随着上海市水务海洋数据中心的建设运行,每天都要汇聚全市多个涉海部门的大量海洋类监测数据。针对这些不同源端数据存在的一些结构问题、格式问题、缺失问题、噪点问题等,进行了技术清洗和规范整合。
  关键词:海洋;数据治理;数据清洗
  中图分类号:P285.7 文献标识码:A 文章编号:1007-9416(2019)08-0222-02
  0 引言
  随着信息时代的发展,各类海洋数据成果的数量也呈现几何级别的增长趋势,海洋数据目前主要可以分类为海洋基础地理数据、海洋基础资料数据、海洋管理专题信息、海洋业务运行数据、海洋综合信息产品和海洋元数据等,这些数据集合的存储结构模式存在着结构化数据、半结构化数据以及非结构化数据,其中非结构化数据所占的比例巨大。由于存在着大量的数据质量问题,这些数据在进行整合應用分析前需要进行清洗以保证正确的分析结果,本文主要探讨了当前海洋数据成果中存在的质量问题以及对应这些问题的清洗方法。
  1 海洋数据成果存在的质量问题
  目前海洋数据成果存在的问题类型主要可以分为以下八种情况:
  1.1 海洋数据结构存在问题
  指的是某些海洋数据集合中的海洋对象数据结构不满足关系型数据库的范式定义。比如:在航道对象中定义的宽度属性存在上下限的范围,根据数据库的第一范式规则应该定义两个字段分别用于填写宽度上限和宽度下限,而某些数据源中则把航道的宽度数据使用一个字段进行表示上下限“10-20”。
  这类问题通常发生在半结构化和非结构化类型的数据源中,数据管理单位没有把海洋对象的属性进行完全区分,导致原本是两种或以上的属性字段被记录在一个属性字段中。
  1.2 海洋数据属性字段格式规范不统一
  指的是某些数据源中海洋对象的属性字段格式存在随意性,标准规范不统一。比如:在非结构化数据源中对于日期格式的定义有些是年月日,有些是日月年。
  这类问题通常发生在非结构化类型的数据源中,因为非结构化数据缺乏一些必要的数据类型,导致存储相关数据时根据输入者的习惯确定相关格式,导致出现了很多不符合规范格式的数据。
  1.3 海洋数据属性单位不规范
  指的是海洋数据属性在单位上不统一,不规范。比如:在深度的计量上有些使用“米”作为单位,有些使用“千米”作为单位。
  这类问题在结构化、半结构化和非结构化的数据源中常见,因为缺乏相关的数据标准,数据的管理者通常按照自身习惯自由选择单位进行数据的填报,导致不同数据源制式单位的不一致。
  1.4 海洋数据记录中存在离散型噪点
  是指数据记录中出现了明显的离散点或者异常值。比如:监测雨量的气象站点出现了负值雨量的情况。
  这类问题发生的原因可能是由于监测设备出现了跳数或者异常,导致入库数据存在问题。
  1.5 海洋数据记录的重复存储
  指同一数据记录被进行重复存储。比如:外高桥码头被同时存储为两条数据记录。
  这类问题在结构化、半结构化和非结构化的数据源中常见,主要由于缺乏对于数据对象的主键定义,导致数据库中存在重复记录。
  1.6 无效的海洋数据记录
  是指某些无效的数据记录被存储在数据源中。比如:因为录入错误,某个并不存在的监测站点保存在海洋监测站点表中,或者原对象被改名、废除等,但是数据源没有及时进行更新。这类问题在结构化、半结构化和非结构化的数据源中常见。
  1.7 海洋数据记录的属性缺失
  指的是数据记录的某些属性发生了丢失,包含海洋监测数据记录或海洋实体对象记录等。比如:监测站点在上传记录中丢失监测值。这类问题在结构化、半结构化和非结构化数据源中常见,主要由于海洋监测数据记录的属性缺失可能由于监测硬件设备异常导致;海洋实体对象记录的属性丢失可能是由于缺乏相关的数据支持导致无法填写。
  1.8 海洋数据记录的缺失
  指在海洋数据记录在数据源中的存储缺失,包含海洋监测数据记录或海洋实体对象记录等。海洋实体对象记录的缺失可能是由于对于新建的对象或者改名的对象没有实时更新至数据库中导致;监测数据记录的丢失可能由于数据入库过程中发生了通讯异常或是监测硬件发生故障导致。
  2 海洋数据清洗方法
  2.1 人工智能处理
  针对海洋数据结构问题、海洋数据属性字段格式规范问题、海洋数据属性单位规范问题以及无效的海洋数据记录问题,需要根据可能出现的情况,在数据交换过程中定义相关的数据清洗流程,并不断的通过数据集训练人工智能神经网络判别上述问题并进行修正,例如对于不满足数据库定义第一范式的数据结构问题,需要把源数据通过对比和字段拆分,比如表示航道宽度的“10-20”拆分为下限的10和上限的20并分别存储在两个字段中;将存在数据字段格式问题的数据记录转换为标准规范格式,比如在对时间字段进行标准化时,可以尝试通过数字位数去识别年份,通过数值范围去区别月份跟日期,或者可能出现的年月日组合情况去识别时间并转换为日期格式存储;对于属性单位不一致的情况,首先要确定标准的单位制式,然后根据单位之间的差距进行换算处理,比如米和千米差了1000倍,假设使用米作为标准单位,需要对使用千米的数据乘以1000等;对于无效数据记录可以根据每年海洋数据的更新频次进行判别,如果出现较长年份未更新的情况,则把数据记录标志为无效。
  2.2 海洋数据去重
  解决海洋数据记录的重复存储问题可以通过对交换的源端数据进行排序后筛选,根据判别唯一性条件的数据属性字段对数据集合进行排序,通过比较排序后相邻的数据记录的相似度和重复性情况,通过分析后对判定为重复记录的数据进行合并。
  2.3 海洋缺失数据插值   对于海洋数据记录的属性缺失和海洋数据记录的缺失问题可以通过插值法进行修正和补充,常见的插值法主要有均值填充法和热卡填充法。对于实时监测数据发生的少数数据属性丢失或者记录丢失情况可以选用均值填充法,选择丢失数据邻近关系最大的一组记录计算均值,然后使用均值进行填充属性或者插入缺失记录;对于缺失较大规模的监测数据属性或者数据记录,比如丢失了某一段时间的数据,可以选用热卡填充法进行补充数据,在历史数据库中根据丢失数据日的自然状况如:风速、风向、温度等设定排序条件,选择历史数据源中与丢失时间段情况相似度最高的记录进行填补。对于实体对象数据出现的属性丢失或者记录丢失,可以采用热卡填充法,选择数据库中存储与丢失记录相似或最近的对象记录进行填补。除上述两种常见的插值法外,还存在回归填补法、多重填补方法、K-最近邻法、有序最近邻法、基于贝叶斯的方法等,可以根据海洋数据的实际情况进行选择使用。
  2.4 海洋数据去噪
  对于海洋数据记录中存在离散型噪点问题可以分为不满足数据属性字段规范性约束条件数据(比如:长度字段出现了负值)和离散型噪点数据。
  对于明显不满足数据属性字段规范性约束条件的数据,可以通过设定相关属性字段的值域范围边界,在数据交换过程对于属性值超出边界的记录进行过滤,后续可以采用插值法填补被过滤的记录。
  对于离散型噪点数据的判定,通常可以基于箱型图进行分析,先把历史样本数据进行从小到大排序,然后获取位于25%处的数值设为下四分位值即L,获取位于75%处的数值设为上四分位值即U,由此可计算出上四分位与下四分位的插值IQR,即:IQR=U-L,然后在数据抽取过程中出现属性值超过下界L-1.5IQR或者超过上界U+1.5IQR视为离散型噪点进行过滤。使用箱型图进行分析的优势在于确定异常值范围边界的条件是根据样本数据进行判定,结果比较客观。除了基于箱型图的噪点判定方法外,还有根据属性字段之间的距离差,根据属性字段的空间密度分布情况进行判断的方法,可以根据具体的实际情况进行分析应用。
  3 关键技术
  3.1 海洋数据规范
  对于海洋数据成果进行数据清洗,规范标准的制定是重要的环节,完善的标准规范一般包含以下内容:
  3.1.1 海洋对象范围的确定
  标准规范中需要确定海洋对象范围,需要明确规定海洋数据集合中存在的要素对象以及其分类,对于一些相似或者相近的对象可以直接合并归类为一种海洋对象实体。
  3.1.2 对象属性的规范
  标准规范需要明确各个海洋对象属性的数量、名称以及其约束性条件,包括:必填项与选填项、默认值等。
  3.1.3 字段类型的规范
  标准规范需要定义各个海洋对象属性的字段类型、字段大小、字段所使用的单位以及字段取值的阈值范围。
  3.1.4 对象名称的规范
  针对同一对象在不同单位出现不同名存储的情况,规范标准需要规定最终具有命名权利的机构,其它单位要根据确定规范的对象名称对其数据进行调整。
  3.2 管理制度的规范
  对于海洋数据管理需要明确落实责任单位主体,对于数据的更新机制、沟通反馈机制、数据质量评估机制以及考评机制需要作出明确规定。
  3.2.1 ETL技术
  ETL技术主要由三个部分组成:数据的抽取(Extract)、数据的清洗转换(Transform)和数据的加载(Load)。使用ETL工具将来自各个不同的数据源中存储的海洋数据资源抽取到指定的中转数据存储中,然后通过对海洋数据进行质量清洗转换后根据业务需要写入不同业务模式的数据库用于应用分析,以提高分析的准确度。主流开源的ETL工具有Apache Kafka、Apache Camel、Logstash和Kettle等。
  3.2.2 人工智能技術
  人工智能技术是通过深层神经网络算法来模拟人类的大脑学习过程,从而去解决相关的问题,用于训练神经网络的样本数据量多少以及算法的有效性决定了人工智能解决问题的能力强弱。在海洋数据质量处理方面,可以通过历史积累的大量海洋数据资源帮助人工智能技术进行模仿式的学习,将事先分类完成正确的海洋数据与存在质量问题的海洋数据反复引导人工智能识别、判断和修正,从而建立人工智能海洋数据质量判别知识储备库,为之后自动进行数据甄别和改正提供技术支撑。主流开源的人工智能框架有TensorFlow、Apache SystemML、Caffe和OpenCog等。
  4 结语
  本文对海洋数据集合中存在的问题进行了分类,并逐一进行了成因的分析,并对这些问题在数据交换过程进行清洗的方法进行了探讨,这些方法对于提高海洋数据质量有着重要的帮助。如何将这些方法跟实际的海洋数据整合工作相结合,为提升海洋数据清洗工作效率发挥更好的作用,值得更多的思考。
  参考文献
  [1] 黄冬梅,赵丹枫,魏立斐,等.大数据背景下海洋数据管理的挑战与对策[J].计算机科学,2016(6):17-23.
  [2] 宋德瑞,曹可,张建丽,等.大数据视域下的海洋信息化建设构想[J].海洋开发与管理,2017(9):50-52.
  [3] 许莉莉,汤海荣,张燕歌.海洋信息化标准体系研究[J].中国标准导报,2015(1):49-51.
  [4] 王洪艳,郭云峰.大数据技术在人工智能中的应用研究[J].数字技术与应用,2015(12):109-110.
  [5] 刘高岭.海洋信息元数据目录服务系统的设计与实现[D].青岛:中国海洋大学,2008.
  Analysis on the Quality Problems and Cleaning Methods of Marine Data
  LV Wen-bin1,QIN Li-wei2,HONG Min-shen2
  (1.Shanghai Ocean Information Center,Shanghai  200050;2.Shanghai Net Yue Information Technology Co., Ltd.,Shanghai  200050)
  Abstract:With the construction and operation of the Shanghai Water and Marine Data Center, a large number of marine monitoring data from various sea-related departments in the city are gathered every day. For some structural problems, format problems, missing problems, noise problems, etc. of these different source data, technical cleaning and specification integration were carried out.
  Key words:ocean; data governance; data cleaning
转载注明来源:https://www.xzbu.com/8/view-15057929.htm