1. 引言
从20世纪60年代以来,数学地质开始迅速的发展。它是地质学与数学和计算机科学相互渗透、紧密结合而逐步形成的一门地质学的边缘科学 [1] 。随着全球地质勘探的积累以及分析仪器的发展,海量地质数据迎面而来。鉴于大数据是大容量 、多样性、高速增长、低价值密度的数据集合,传统手段已难于管理和有效发挥其价值 [2] ,如何快速的处理这些数据并得到其在地质上所表示的一般规律成了科研工作者的难题。
松辽盆地是中国东北部的一个大型中、新生代沉积盆地,地跨黑龙江省、吉林省、辽宁省和内蒙古自治区,是当今世界上最大的典型陆相沉积盆地之一,也是我国最主要的含油气盆地。泥岩作为一种典型的沉积岩,遍布于松辽盆地。而它在地质上也有很重要的存在意义,一是可以作为盖层来保存流体 [3] ,二是在一定的还原环境中也可以堆积大量的浮游生物等有机体从而转变为生油层。泥岩是沉积岩中数量最多分布最广的岩石,大多数泥岩是在静水环境中沉积的,其颜色和成分常能反映沉积时的介质条件 [4] 。本文借助RapidMiner软件来对松辽盆地泥岩的主量元素数据进行快速的处理和分析。
2. RapidMiner简介
RapidMiner是世界领先的数据挖掘解决方案,数据挖掘过 程简单,强大和直观。它提供数据挖掘和机器学习程序,其中包括数据加载和转换,数据的预处理和可视化,预测分析和统计建模,评估和部署。它是用Java编程语言的。而且提供图形用户界面,用户可以不用编程,通过简单拖拽算子来设计和执行工作流程分析,易于学习和掌 [5] 。其解决方案覆盖了各个领域,包括汽车、银行、保险、生命科学、制造业、石油和天然气、零售业及快消行业、通讯业、以及公用事业等各个行业。2015年在KDnuggets第16届年度数据挖掘大会分析软件投票位中位居第2,仅次于R语言。因为其具备GUI特性,所以很适合于数据挖掘的初学者入门。
RapidMiner中的功能均是通过连接各类算子(operator)形成流程(process)来实现的,整个流程可以看做是工厂车间的生产线,输入原始数据,建造模型,输出结果。其建模的一般流程是:新建一个库(Repository),选择需要的算子(operator)放入主流程(mainprocess)中,设置算子的相关参数(parameter),进行算子连接,最后执行流程以得到结果。
3. 松辽盆地泥岩数据处理和分析
3.1. 数据准备
在地质勘探中,常会使用X荧光光谱仪对岩石样品进行元素的定性定量分析,然后利用这些数据大概的判断一下地质背景、地质构造成因、成岩成矿推断等各种应用。大庆油田在数十年来勘探松辽盆地中积累了大量的元素分析数据,现在我们想要利用RapidMiner对其进行一个简单的统计和分类。首先,我们将4766块岩石样品的无机元素常量数据导入到系统里面,见图1。
从图1可见,每一个样品我们共分析了11个常量元素,这11个常量元素就基本占到样品里90%以上的含量,是地质应用常用的分析数据。但是在数据里出现了值为0的情况,这可能是因为其元素含量在百万分之一以下从而导致荧光光谱仪无法正常的测量。鉴于之后我们要用到K均值聚类法进行数据分类,值为0的数据会造成分类偏差,所以数据处理的第一个步骤就是要引入“过滤”算子,过滤掉所有存在数值为0的样品。
另外从岩石样品的岩性上来看,数据里存在着100多种不同种类的岩石分类,在此我们选用泥岩作为分析的指标,故而数据处理的第二个步骤是在“过滤”算子只留下岩性为泥岩的样品数据,见图2。
经过以上两步的数据过滤后,我们提炼出2719块泥岩样品的数据,然后就可进行K均值聚类法进行数据分类。
3.2. K均值聚类法算法原理
在数据处理完毕以后,我们希望对泥岩样品做个简单的分类概况,这里将用到K均值聚类法。
K均值聚类属于基于原型的聚类方法,数据集会聚出k个簇,它也是是最简单最常用的聚类算法之一。该算法将指定用户事先设定簇的个数,目标是找出各簇的质心(centroid),而后与各质心相邻的数据点聚成各簇,从而实现聚类。簇的质心可以是该簇内所有点的均值,即进行k均值聚类;也可以是中位点,即进行k中心点聚类。质心并不一定是真实存在的数据点,也可以是虚拟的点,只要它能最大程度的代表这个簇就行。其原理非常简单,对于给定的数据集总能有解。不过多数情况下这个解只是局部最优,并非全局最优。
K均值聚类的计算过程是先初始化k个质心,然后找出距离最近质心的各个数据点,从而形成个簇。确定每一簇以后,就可以计算各簇的新质心。然后更新各个数据点至最近的质心,确定新的簇并再一次更新质心,直到各数据点不再变更自己所属的簇或者这个变更不再显著为止。这样最后确定的质心就是数据内部各簇的代表或者原型,它们可以描述整个模型。
K均值聚类的优点是简单、易于实现、结果易懂。虽然该算法的确可以处理高维数据集,但多次迭代和运行的计算成本还是很高的。最好的方法是一开始时把k值设的比较小,而后慢慢增大直到拟合 [6] 。
3.3. 流程设计
RapidMiner提供了很方便的可视化流程设计界面,用户只需要简单的拖曳算子即可完成,本次为泥岩分类的整个流程图见图3。
其中各个算子的作用如下:
“Retrieve常量元素”:即未经过处理的原始样品常量元素的数据集,可以是各种数据库格式,本例里为excel格式。
“Filter Examples”:过滤算子,我们通过设置必要的参数过滤掉数值为0以及岩性为非泥岩的样品。
“Select Attributes”:选择属性算子,我们只选择了所有数值型的泥岩元素数据方便K均值聚类算法进行计算分类。
“Clustering”:分类算子,内含K均值聚类算法。
3.4. 运行与解析
把评估算子的输出与总结果借口连接起来,就可以保存并运行该流程了。其运算过程仅花费了3秒的时间,很高效。运行的结果有2种表达的方式,第一种见图4。
Figure 4. Classification results of mudstone
图4. 泥岩分类结果
即为分类的概况总结,从2719块泥岩样品从通过K均值聚类法得到两种分类以及每种分类的数量。而RapidMiner亦会提供每一类的元素平均含量结果见图5。
从以上两种图解可以分析出,cluster_0类(计142块样品)为富钙的钙质泥岩;cluster_1类(计2577块样品)为富硅的硅质泥岩。
另外仅选用“过滤”算子我们从颜色上进行分类,发现松辽盆地的泥岩也可分为两类,其中红、褐色泥岩11块,暗色(黑色、灰色等)泥岩2708块。
Figure 5. Average element content of two kinds of mudstones
图5. 两类泥岩的元素平均含量
4. 结论
1) 松辽盆地的沉积填充中,泥岩约占58%,且主要构成为硅质泥岩,其主量元素的平均含量为氧化铁5.260%、锰0.092%、钛0.493%、氧化钙1.221%、氧化钾3.385%、硫0.210%、磷0.114%、二氧化硅64.789%、三氧化二铝13.760%、氧化镁1.183%、氧化钠1.800%。
2) 松辽盆地泥岩多为暗色系,说明盆地是在还原环境中沉积而形成的。