一种新的基于非负矩阵分解的源解析方法技术

技术编号:14916127 阅读:61 留言:0更新日期:2017-03-30 04:54
本发明专利技术提供了一种新的基于非负矩阵分解的源解析方法,属于数学优化、源解析领域。该方法无需预先知道污染源的指纹图谱,采用非负矩阵分解算法对样品浓度数据进行源解析,对每个因子的载荷和得分均做非负约束,并且为非负矩阵分解算法提供了较好的初始值,使得分解算法能够得到全局最优解,获得比较好的源解析结果。

【技术实现步骤摘要】

本专利技术涉及一种新的基于非负矩阵分解的源解析方法,属于数学优化、源解析领域。
技术介绍
通过定量方法进行污染源解析是环境质量评估和环境风险评价的重要依据,常用的定量源解析方法包括化学质量平衡模型(ChemicalMassBalance,简称CMB)、因子分析-多元线性分析方法、非负约束因子分析模型(Non-NegativeMatrixFactorization,简称NMF)。CMB模型的应用条件比较苛刻,需要预先知道污染源的指纹图谱,然而在实际应用过程中污染源的图谱无法事先知道。因子分析-多元线性分析方法在实际应用中,得到的因子载荷矩阵和因子得分矩阵常常是负数,这与实际情况不符合,影响了对污染源的解析。而NMF方法对每个因子的载荷和得分均做非负约束,从而使因子分析的结果与实际情况一致,能取得比较好的源解析结果。尽管NMF方法是目前定量解析方法中比较先进的源解析方法,但是在实际计算过程中,由于NMF方法的结果需要依据随机矩阵的梯度下降方向的多次迭代运算而只能得到局部最优解,因此需要改进NMF的初始化方法以得到更准确的源解析结果。因此,亟需研发一种新的基于非负矩阵分解的源解析方法,改进源解析技术以得到全局最优的源解析结果。
技术实现思路
本专利技术是为了克服上述现有技术的不足,提出了一种新的基于非负矩阵分解的源解析方法,该方法克服了因子分析方法中因子载荷矩阵中存在负值元素的情况,同时也为非负矩阵的分解提供了较好的初始值,加速了非负矩阵分解的迭代优化过程,确保得到全局最优解。本专利技术通过这样的技术方案实现:一种新的基于非负矩阵分解的源解析方法,其特征在于,通过对归一化的样品浓度数据矩阵进行SVD分解得到其特征值矩阵,再依据特征值矩阵分解结果初始化因子载荷矩阵和得分矩阵,然后采用梯度下降法进行非负矩阵分解,求取因子载荷矩阵和污染源贡献率矩阵。实现所述方法包括如下步骤:步骤1,对样品浓度矩阵D进行归一化处理,得到归一化之后的矩阵的D′。步骤2,求解D′的协方差矩阵Z,然后对Z那个SVD分解,得到Z的特征值矩阵E和特征向量矩阵Q。步骤3,根据协方差矩阵的特征值,使用累计方差贡献率提取显著因子。步骤4,以协方差矩阵的分解结果作为NMF分解算法的初始值,并采用梯度下降法对NMF目标函数进行优化,得到因子载荷矩阵和污染源贡献率矩阵。步骤5,采用有效方差最小平方法求解各个污染源的贡献率。相比于以往方法,本专利技术一种新的基于非负矩阵分解的源解析方法具有以下有益效果:(1)结合了因子分析和NMF两种方法的优点,能够解决不同量纲之间的不匹配问题,并且能够保证因子载荷矩阵和源贡献率矩阵均为非负。(2)能够通过累计方法贡献率因数合理估计显著污染源数目。(3)为NMF提供了可靠的初始化方法,既保证了NMF方法能够取得全局最优,同时加速了迭代收敛速率。附图说明图1为本专利技术方法算法流程图。具体实施方式下面结合附图和实施例,对本专利技术方法的详细步骤作进一步说明。为了使本领域普通技术人员更好的理解本专利技术,首先对非负矩阵分解算法的数学表达式进行说明:非负矩阵分解的数学表达为D=S·C(1)式中,D为m行n列的样品数据矩阵,S为m行r列的因子载荷矩阵,C为r行n列的污染源贡献率矩阵。根据式子(1)可以利用样品数据矩阵D找出合理的r值,反推出因子载荷矩阵S和污染源贡献率矩阵C。如下采用表1中黄河口表层沉积物中PAHs含量的监测数据对本专利技术提出的方法进行验证。表1本专利技术的详细步骤如下:1.对样品浓度矩阵进行归一化处理。在本专利技术方法步骤中,为了解决不同污染物浓度的量纲不匹配问题,消除分析过程的偏差,采用如下方式对样品浓度矩阵进行归一化处理。式中,X'为归一化之后的数据,X为某污染物样品浓度数据,Xmin为样品中污染物浓度最小值,Xmax为样品中污染物浓度最大值,则归一化之后的数据X'组成的浓度矩阵表示为D'。2.求取特征值和特征值向量在此步骤中,首先求取D'的协方差矩阵,其算法为:Z=D'D't(3)再对Z进行SVD分解可求得Z的特征值矩阵E和特征向量矩阵Q,即协方差矩阵可以表示为Z=QEQt(4)3.使用累计方差贡献率提取显著因子,确定主要污染源数目。具体判断条件为:式中,r为显著性因子的个数(即主要污染源的数目),m为污染源的数目,λ为特征值。采用表1中的数据,可以求得该组数据的显著因子为3,即可确定主要污染源的数目为3。4.以协方差矩阵的分解结果作为NMF分解算法的初始值,并采用梯度下降法对NMF目标函数进行优化,得到因子载荷矩阵和污染源贡献率矩阵。具体计算步骤为:因子载荷矩阵S初始化为污染源贡献率矩阵C初始化为则NMF的目标函数为采用梯度下降法求解式(6)的最优解,迭代更新策略为当S,C收敛于固定值时,则可求得因子载荷矩阵S和源贡献率矩阵C。5.采用有效方差最小平方法求解各个污染源的贡献率Cj,计算步骤如下:(1)假定初始源贡献率C0=0。(2)计算有效方差的对角矩阵V元素为:其中为第i种污染物的不确定性标准偏差,为第j类污染源的第i种污染物浓度的不确定性标准偏差,C0为上次求得源贡献率。(3)源贡献率计算公式为C1=(StV-1S)-1StV-1D(9)(4)对源贡献率迭代偏差计算,计算方法为如果偏差大于0.001则重复上述步骤(1)-(3),否则,终止迭代计算过程,得到最终的各个源贡献率。将本专利技术中所采用的数据代入上述步骤,可以求得各主要污染源的贡献率如表2所示表2主要污染源污染源贡献率石油燃烧和焦炉燃烧68.77%天然气燃烧8.73%交通燃油22.50%本文档来自技高网...

【技术保护点】
一种新的基于非负矩阵分解的源解析方法,其特征在于,包括如下步骤:步骤1,对样品浓度矩阵D进行归一化处理,得到归一化之后的矩阵的D′;步骤2,求解D′的协方差矩阵Z,然后对Z那个SVD分解,得到Z的特征值矩阵E和特征向量矩阵Q;步骤3,根据协方差矩阵的特征值,使用累计方差贡献率提取显著因子;步骤4,以协方差矩阵的分解结果作为NMF分解算法的初始值,并采用梯度下降法对NMF目标函数进行优化,得到因子载荷矩阵和污染源贡献率矩阵;步骤5,采用有效方差最小平方法求解各个污染源的贡献率。

【技术特征摘要】
1.一种新的基于非负矩阵分解的源解析方法,其特征在于,包括如下步骤:步骤1,对样品浓度矩阵D进行归一化处理,得到归一化之后的矩阵的D′;步骤2,求解D′的协方差矩阵Z,然后对Z那个SVD分解,得到Z的特征值矩阵E和特征向量矩阵Q;步骤3,根据协方差矩阵的特征值,使用累计方差贡献率提取显著因子;步骤4,以协方差矩阵的分解结果作为NMF分解算法的初始值,并采用梯度下降法对NMF目标函数进行优化,得到因子载荷矩阵和污染源贡献率矩阵;步骤5,采用有效方差最小平方法求解各个污染源的贡献率。2.根据权利要求1所述一种新的基于非负矩阵分解的源解析方法,其特征在于,所述步骤1的具体步骤为:在本发明方法步骤中,为了解决不同污染物浓度的量纲不匹配问题,消除分析过程的偏差,采用如下方式对样品浓度矩阵进行归一化处理:X′=X-XminXmax-Xmin]]>式中,X'为归一化之后的数据,X为某污染物样品浓度数据,Xmin为样品中污染物浓度最小值,Xmax为样品中污染物浓度最大值,则归一化之后的数据X'组成的浓度矩阵表示为D'。3.根据权利要求1所述一种新的基于非负矩阵分解的源解析方法,其特征在于,所述步骤2的具体步骤为:首先求取D'的协方差矩阵,其算法为:Z=D'D't,再对Z进行SVD分解可求得Z的特征值矩阵E和特征向量矩阵Q,即协方差矩阵可以表示为Z=QEQt。4.根据权利要求1所述一种新的基于非负矩阵分解的源解析方法,其特征在于,所述步骤3的具体步骤为:使用累计方差贡献率提取显著因子,确定主要污染源数目。具体判断条件为:(T通常设置为0.85)式中,r为显著性因子的个数(即主要污染源的数目...

【专利技术属性】
技术研发人员:高泽晋单保庆张洪
申请(专利权)人:中国科学院生态环境研究中心
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1