APP下载

基于贝叶斯网络的蟹塘养殖水质分析与预测∗

2019-11-29夏润清

计算机与数字工程 2019年11期
关键词:结点贝叶斯水质

夏润清

(江苏大学电气与信息工程学院 镇江 212013)

1 引言

河蟹养殖已成为水产养殖中最具活力和发展前景的支柱产业之一,其养殖方式以蟹塘养殖为主,而如何分析评估蟹塘水质对河蟹生长的适宜指数,并实时调控水质,已成为养殖的关键因素。国内对水质分析评估的方法较多,文献[1]将模糊数学法应用于水质分析,有效地评估水质局部变化,但没有给出水质变化趋势以及水质因子间因果关系。文献[2]将灰色聚类方法应用于水质分析,较准确地预测水质整体变化,也没有给出水质因子间的因果关系。文献[3]采用BP 神经网络[4]进行水质预测分析,但水质环境变化具有不确定性,且是区域评估。

本文在收集阳澄湖河蟹养殖与配载中心近两年蟹塘水质监测数据的基础上,结合数据融合[5]技术,构建了反映水质因子与适宜指数之间关系的贝叶斯网络模型[6],利用贝叶斯网络克服水质因子变化的不确定性,降低推理过程的复杂性,以期提高蟹塘水质评估的准确性,为健康的蟹塘养殖提供科学参考。

2 贝叶斯网络构建

在阳澄湖各蟹塘设置多个水质传感器[7],构成监测节点组,所有水质数据通过4G网络,传送至养殖中心。由于同一块蟹塘分布的各监测节点易受水位、光照等环境因素影响,需要对各水质数据进行数据融合,进而提高数据精度。水质数据的采集基于蟹塘养殖水质监测系统,系统构成如图1 所示。

图1 阳澄湖水质远程监测系统架构框图

2.1 传感器数据融合

设Pi,j,i=1,2,…,b,j=1,2,…,s 为第i 类传感器的第j 位置观测值,且各传感器的量测方差为σ2i,j,则水质参数的自适应加权数据融合为

2.2 水质指标选取

随着水产养殖行业的发展,养殖手段益发科学、健康,相关养殖水质指标纷繁多样,常见的水质指标如表1 所示。某些水质指标之间存在互相关性[8],直接用于贝叶斯网络,会导致模型结构过于复杂,且模型的预测精度也难以保证。为了减少水质指标之间的相关性,引入相关系数矩阵,对多个水质指标进行筛选,以期获取相关性较小、代表性较强的水质指标。

以2016 年阳澄湖大闸蟹养殖与配载中心1 号蟹塘水质监测数据为样本数据(如图2 所示)。某些参数的变化趋势相似,存在明显的相关。为此,建立其相关系数矩阵的color map[9](如图3 所示),两个水质指标之间的相关性越高,色彩越深,水质指标的筛选主要针对color map 中色彩较深的部分。

由图3 可知,A3、A6、A10 与众多水质因子有较高相关性,综合专家经验,舍去A3(EC)、A6(Chl-a)与A10(NO2N)两个水质因子,用剩余水质因子构建贝叶斯网络模型。

表1 水质指标及离散化标准

图2 2016年一号蟹塘水质监测信息

图3 水质因子相关系数矩阵的color map

2.3 贝叶斯网络模型构建

贝叶斯网络N 可以表示为二元组N=(G,Θ),其中G=(V,E) ,V 是贝叶斯网络的变量集,,且,即Xi取有限离散值,E 是变量对应的结点之间有向边的集合,若存在有向边由Xi指向Xj,则Xi被称为Xj的父结点,反之,Xj为Xi的子结点,Xj的父结点集用pa(Xj)表示,Xi的子结点集用de(Xi)表示,而Θ={θ1,θ2,…,θn}表 示 结 点 Xj在 其 父 结 点 集pa(Xj)不同状态下的条件概率表,是基于贝叶斯网络做预测分析时的主要依据。

根据阳澄湖大闸蟹养殖与配载中心2010 年~2017 年各蟹塘的出蟹率,选取9 块蟹塘,划分成适宜河蟹养殖水质(A类)和一般河蟹养殖水质(B类)两类,A类下辖8块蟹塘,B类有1块蟹塘,养殖时期的蟹塘水质指标数据1000组,总计9000组数据,对所选数据基于式(1)作数据融合处理,根据表1 水质指标零散化标准,再进行水质数据零散化处理,二次处理后的数据构成贝叶斯网络模型的训练数据集D。

贝叶斯网络模型的结构学习采用著名的K2算法[10~11],K2 算法依据评分函数获取最优模型结构[12~13]。K2的打分公式:

其中,G 是贝叶斯网络结构,D 是训练数据集,n 是水质指标与水质类别一起构成的结点数量,n=10,qi是pa(Xi)的配置数,配置数qi控制K2打分公式计算的顺序与复杂程度,qi≤9000,ri表示结点Xi的可能取值数量,Nijk表示训练数据集D中满足条件:配置数qi=j,Xi=Xki 的实例数,并且有

鉴于水质指标数量较多,贝叶斯网络结构学习复杂,本文K2 打分公式可以分解到与每个结点对应的局部测度,简化结构学习过程。K2 的局部打分公式为

K2 算法需要水质变量之间存在既定的变量序,譬如变量序中结点Xi排在Xj之前,则Xj不会作为Xi的父节点。依据蟹塘养殖专家知识,对九个水质变量以及蟹塘水质类别这十个结点预先排序,X10为最前序列。同时,限定各结点最大父节点数

K2 算法打分公式的应用较为复杂,以如下例子做详细说明:pH,TN,TW 是蟹塘养殖中的三个水质结点变量,三者构成简单的贝叶斯网络,假设根据已有知识可以确定贝叶斯网络可能为图4 中A、B两种结构,数据集D0见表2。

图4 实例贝叶斯网络结构

表2 训练数据集D0

贝叶斯网络在K2算法下的结构学习以打分公式为结构筛选依据,步骤如下:

K2算法伪代码:

k2(X,O,m,D,πi)

输入: X={X1,X2,…,Xn} %变量结点O%结点顺序

m%变量父节点个数的上界

D%完整数据集

πi%结点Xi的父节点集

输出:贝叶斯网络

步骤实现:

for i=1 to n do

πi=∅;

Z=∅;

Fold=f(i,πi;%k2打分 )

Start=true;

while Strat( t rue) and |πi|<m do

Z ←结点集Xexcept( Xi)-πi中使

f( i ,πi∪{Z })达到最大的结点;

Fnew=f( i ,πi∪{Z });

if Fnew>Foldth en Fold=Fnew;

πi=πi∪{ Z };

else Start=false;

end if

end while

return(πi) ;

end for

通过K2 算法对训练数据集D 的学习,借助Netica[14~15]编译,获得了反映蟹塘水质与水质指标之间关系的贝叶斯网络,如图5所示。

图5 阳澄湖蟹塘水质贝叶斯网络

易见,Tw、TN、TP、NO3-_N、NH4+_N、MDA 是直接决定蟹塘水质是否适宜河蟹生长的水质指标,属于主导因素,pH、COD、DO 属于辅助因素,在分析预测时可以赋予较小的权重。因此,依据获得的贝叶斯网络模型作水质预测分析时,围绕Tw、TN、TP、NO3-_N、NH4+_N、MDA这六个变量进行。

2.4 模型推理

基于贝叶斯网络模型的因果推理能力,可以由部分水质指标预测蟹塘水质类型(A 类或者B 类),也可以基于已知的水质类型与部分水质指标推测某些水质指标的状态。对测试数据集D1中任意的100 条数据实例进行模型精度测试,引入混淆矩阵,并计算其Kappa 系数[16]。Kappa 系数能衡量分类的精度,本次精度测试实验的混淆矩阵[17]见表3。

表3 蟹塘水质分类预测与实际情况

根据表3 中的混淆矩阵,计算得本次精度测试的Kappa 系数为0.807,Kappa 系数0.8~1 属于完全一致性标准范畴,这说明本文使用贝叶斯网络对蟹塘水质分类状况及水质指标的预测分析是可行的。

3 结语

本文对蟹塘水质与水质指标之间复杂的因果关系进行了贝叶斯网络建模,遴选了9 项水质指标以及水质分类共计10 个结点构成了贝叶斯网络结构模型,以期为水质预测或者水质指标分析提供科学依据。贝叶斯网络结构所对应的CPT 表基于训练数据集D 学习构建。训练数据集D 中数据都经过自适应加权数据融合处理,精度高、误差小。使用K2算法学习构建贝叶斯网络。由贝叶斯网络可知,蟹塘水质受Tw、TN、TP、NO3-_N、NH4+_N、MDA六项水质指标直接影响,因果关系级别较高,对该六项水质指标应作重点监测管理。模型精度测试Kappa系数0.807,表明本文使用贝叶斯网络对蟹塘水质分析预测是准确可行的。

猜你喜欢

结点贝叶斯水质
LEACH 算法应用于矿井无线通信的路由算法研究
基于地下水水质检测方法的研究
基于八数码问题的搜索算法的研究
关于如何做好水质环境监测的质量保证研究
基于贝叶斯网络的海盗袭击事件影响因素
租赁房地产的多主体贝叶斯博弈研究
租赁房地产的多主体贝叶斯博弈研究
贝叶斯公式的应用和推广
水质的年轮——读《时光的年轮》