MATLAB中LSQR的问题

MATLAB中LSQR的问题,第1张

提示的意思是:由于达到迭代步数,算法停止,但没达到精度要求。相对误差是0.46

要提高精度,就要增加迭代次数。

X = lsqr(A,B,TOL,MAXIT)在这句中把MAXIT用一个较大的数代入,就能增加迭代次数 。

地震面波频散是研究地球内部结构的有力工具。当前这类反演方法常采用两步反演来实现,首先作区域化反演得到相(群)速度分布,然后作S波速度反演得到速度分布的三维图像。

在本项研究中,为了获得研究区高精度面波层析成像结果,在建立大尺度模型时是按照2°×2°的网度进行,而对于小尺度的精细模型则选用1 °×1 °的网度;所采集信号的周期范围也从8 s扩大到400 s;反演成像时,应用改进后的高精度面波频散反演方法。为了保证反演结果稳定可靠,需要较充足的高质量地震面波资料。所以,我们经过对数字地震记录进行处理筛选得到周期在8~400 s之间2500多条高质量的面波频散曲线,这就为我们进行三维结构面波频散反演奠定了坚实的基础。

面波速度反演一般有两种方法:网格法和非网格法。网格法是把研究区域网格化,每一网格中的速度是均匀的,由实际测得的频散数据来反演每一网格的相速度或群速度。路径的积分由网格分段进行,进行射线路径追踪。宋仲和等(1992)采用此方法反演中国大陆及其相邻海域的面波速度结构及地壳上地幔三维S波速度结构。非网格法是把研究区域的速度函数用一组函数展开。非网格法又分为两种:一种是选择一组先验函数,一般选择一组正交函数;另一种是根据路径的分布,由具体路径来确定一组函数。主要有Taran-tola方法和Yanovskaya-Ditmar方法。Tarantola方法是非线性反演方法,它需要选择模型的先验协方差。

张禹慎和Toshiro Tanimoto(1991),张禹慎和马石庄(1997)利用球谐分析方法研究了全球范围(5°×5°),得到周期在85~250 s的Rayleigh波和Love波的相速度变化。在区域性地震面波层析成像方面,Feng Chi-Chi和邓大量(1983),庄真等(1987)则利用适配滤波频时分析和网格反演方法,分别研究了欧亚大陆和太平洋地区的三维速度结构。在目前还没有一个完整的理论能够计算横向非均匀模型的理论频散的情况下,网格反演方法比较成功地解决了从混合路径频散提取较小单元纯路径频散问题。

5.2.2.1 面波频散层析成像原理及方法

由于面波具有频散的性质,每个单色波都以它自己的速度传播,而且它主要沿地球表面进行传播。对于瑞利波基阶振型而言,它的每一个频率的波对其波长约1/3深度内的结构很敏感(Knopoff,1972)。因而,利用面波的这些特性,只要在震源和台站间的速度结构没有很强的横向变化,那么,面波就可以被用来研究这两点间的深处的平均结构信息(特别是海洋和体波难以达到的地区)。由此,随着宽频带数字地震仪的发展,面波层析成像也就逐步发展起来。宽频带数据使得速度结构反演分辨率越来越高。

在面波层析成像的传统方法中,一般假定面波绕地球沿大圆路径传播。传统的大圆近似是Evernden(1953,1954)、Mc Garr(1969)、Capon(1970,1971)用LASA和NOR-SAR台阵观测20~30 s周期范围内异常海洋面波的结果后提出的。而根据费马原理,在几何光学近似和一阶扰动理论情况下,该假定是正确的(Nolet,1989)。依据此原理进行层析成像时,区域化是把所研究的每个区域当作是横向均匀的,每个区域具有区域纯路径群速度。沿着一条路径观测到的总相移,作为沿该大圆路径在各区域相移的总和,而这些区域相移已由相应纯路径相对长度加权了。这是一个用区域相速度的“相位积分近似”的大圆路径有限长度的表达式。

在弱横向不均匀的情况下,大量可测的扰动相对于横向均匀介质的情况可用线性关系式的适当精度来表示,该关系式是由速度扰动幂级数中的一阶项给出。则沿着射线L的两点A1和A2之间的相位变化为

中国华北地区岩石圈三维结构及演化

式中,C(s)是相速度。

利用费马原理,忽略掉由于远离大圆的路径畸变的变化,相位扰动可能与沿大圆积分的速度扰动有关:

中国华北地区岩石圈三维结构及演化

式中,C0是平均的大圆相速度。该式就是经典面波层析成像的基础(Nolet,1989)。

基于上述理论,针对于我们所要解决的问题,采用两步法研究地壳上地幔三维速度结构。即首先进行网格化反演,求得面波纯频散,然后由所得的纯频散数据反演华北地区地壳上地幔三维速度结构。具体步骤如下:

1)对原始记录进行预处理,测定面波频散曲线。它包括截取瑞利面波,进行频率时域分析等,以得到实际频散数据。采用频率时域分析法测定群速度频散,对实测地震记录经仪器频响特性校正得到时间信号X(t),在对X(t)进行Fourier变换得到谱函数X(f),以不同的频率点为中心乘以窗函数,作Fourier逆变换求出该频率或周期Tk(k=1,…,M)、ti(i=1,…,N)的瞬时谱振幅Aik。以到时ti(或换算为群速度Ui)为纵坐标,周期Tk为横坐标,绘制矩阵ANM的等值线图,Aik的最大值连线即为所求的群速度频散曲线。

2)对研究区域进行网格划分,计算理论群速度。即采用网格化纯路径频散反演方法得到各块的纯频散数据。

3)为了有效得到S波速度分布,必须选择一个合理的初始模型,本研究利用已有的大地测量、地质、地球物理资料,改进地球圈层结构模型,对每一块建立地壳上地幔的三维速度结构模型作为反演计算的初始模型,使得我们进行该区面波频散反演计算时的S波速度值得到很好的约束。

4)由得到的每块纯频散数据作为初始数据,并利用LSQR及单纯形替换法、SVD方法等广义线形反演方法,对每一块的纯频散曲线进行反演求取该单元的S波速度、P波速度以及密度等随深度的分布。

5)对所得中国及邻区地壳上地幔的三维速度结构进行横向、纵向成像。分析研究该区域地壳上地幔三维速度结构、构造演化及其动力学性质。

为了研究地壳上地幔三维速度结构,我们首先采用网格化纯路径频散反演得到各网格单元的纯频散数据。纯路径频散适于研究大范围内某种分格尺度上的分区平均构造及横向不均匀性的有效方法。基于纯路径频散,首先对研究区域剖分为n个网格单元;并把每个网格看作是横向均匀的,且具有区域纯路径群速度值。然后求取大园路径或进行射线追踪;对某一周期T,根据第j个网格所假定的群速度Uj(T)计算出第i条路径(i=1,2,…,mm为反演区域内的总射线条数)的理论群速度υi(T)。根据费马原理,在几何光学近似和一阶扰动理论情况下,可以假定面波绕地球沿大圆路径传播。因而,我们首先根据震源和台站位置,求出面波传播的大圆路径,并记下它在所通过的网格中的路径长度。如对于第i条路径,我们可求出它在第j个网格单元内的长度dij以及大圆路径总长度Di。根据上述理论,假定该大圆路径的总相移为各均匀网格单元相移之和,而网格边界上无相移。所以第i条路径的理论群速度υi(T)为

中国华北地区岩石圈三维结构及演化

如果第i条路径实测的群速度为ui(T),而待求的第j(j=1,2,…,n)个网格单元内的区域纯路径群速度值为uj(T),同理可得

中国华北地区岩石圈三维结构及演化

用(5.4)式减去(5.3)式,可得出第i条路径实测群速度与理论群速度之差(即群速度的扰动)为

中国华北地区岩石圈三维结构及演化

写成矩阵形式如下:

中国华北地区岩石圈三维结构及演化

其中,b是走时残差向量,A是网格单元内射线长度dij与大圆路径总长度Di比值的大型稀疏矩阵,X是待求的理论群速度与实测群速度倒数之差向量。求解矩阵方程(5.6)式,对于面波层析成像来说,矩阵A是一个大型稀疏矩阵。这一矩阵通常是奇异的,其逆算子往往不存在,因而必须采用迭代方法,即求其广义逆。通常广义逆有两种方法。一类是最小二乘解意义下的广义逆,即求误差向量L2的最小范数。奇异值分解法(SVD),共轭梯度法(CG),及最小二乘共轭梯度法(LSQR)都属这类方法;另一类寻求Moore—Penrose意义下的广义逆,它不求误差向量L2的极小,而是求模型参量的最小范数解,属于这类方法的有正交化算法ORTH及阻尼最小范数解DMNLS法等。而我们的目的是寻找一种精度高、受数据误差干扰小、收敛快的算法。它应具备:①能充分利用先验信息,对反演参数进行约束,使反演结果更为合理,接近真实模型;②采用数学方法把病态问题转化为良态问题求解;③能充分利用大型稀疏矩阵的特点,减少计算机内存和提高计算精度。通过大量实践证明(曹俊兴,1996),SVD法计算精度高,但计算速度慢,且不能利用大型稀疏矩阵的特点;正交化算法ORTH计算精度与SVD相近,但计算速度也较慢;而最小法二乘共轭梯度法(LSQR,见下述)具有收敛快、稳定性好的特点,以及易于用阻尼因子控制其反演结果质量,且能充分利用大型稀疏矩阵的特点,因此,它被认为是最适合于求解矩阵方程(5.6)式的算法。

图5.8 网格化纯路径频散反演方法流程图

根据上述原理,我们设计了一套比较成熟的计算软件(图5.8),并在实际中得到应用。在编制程序过程中,根据大型稀疏矩阵的特点,对(5.6)式中的非零元素采取了按行存储格式,这样不但占用内存少,而且也减少了计算量。地震射线的分布不均匀以及台站的影响,使得反演结果出现偏差,因而在程序实现中,我们对射线进行了归并和剔除,对台站附近的单元数据用其周围的单元数据内插得到。这样虽然降低了反演结果的分辨率,但避免了假异常的出现。

LSQR即最小二乘QR 分解(Least Square or Decomposition),它将Lanczos迭代方法结合到共轭梯度(CG)方法中并类似于CG的一种算法,它直接求解Ax=b,而不同于CG的求解 。它也属于迭代算法,在迭代求解过程中使残差范数 单调减少的同时也使 单调减少,因而得到期望解。在求解过程中只涉及非零元素,减少了存储空间,提高运算速度,所以该方法特别适于求解系数为大型稀疏矩阵的方程组,在处理实际资料时可加阻尼来减小噪音。

LSQR求解大型稀疏方程组的算法如下。Paige和Saunders(1982)将Lanczos迭代方法(Lanczos,1950)结合到共轭梯度方法中,提出了一个与CG算法相类似的算法,称之为LSQR方法。LSQ R算法与CG算法的主要差别在于前者求解的是Ax=b而后者求解的是 。求解Ax=b时观测数据误差的放大因子是奇异值的倒数,求解 时观测数据误差的放大因子是奇异值平方的倒数,因此,对于病态问题,LSQ R 算法较CG算法的效果要好,但是,当数据误差较大时LSQR 算法仍会发散。为提高LSQR 算法的抗噪能力,可对迭代求解过程施加一定的阻尼,构成阻尼LSQR 算法。

5.2.2.2 地震面波频散及波形反演的原始数据处理

为了利用地震面波的频散特性来研究岩石圈三维结构,搜集了90°~140°E,10°~42°N范围内约600个地震事件,并从中挑选出200个事件。这些地震事件起自1982年,终止于2000年,震级大部分都在5.0~7.0之间,震源深度小于100km。利用了GDSN、地震台网中部分地震台站的数字化地震记录。这些台站都有三分量的长周期数字地震仪,其采样速率均为1个样点/s。

    LDA在模式识别领域( 比如人脸识别,舰艇识别等图形图像识别领域 )中有非常广泛的应用,因此我们有必要了解下它的算法原理。  

  不同于PCA方差最大化理论, LDA算法的思想是将数据投影到低维空间之后,使得同一类数据尽可能的紧凑,不同类的数据尽可能的分散 。因此,LDA算法是一种有监督的机器学习算法。同时,LDA有如下两个假设:(1)原始数据根据样本均值进行分类。(2)不同类的数据拥有相同的协方差矩阵。当然,在实际情况中,不可能满足以上两个假设。但是 当数据主要是由均值来区分的时候,LDA一般都可以取得很好的效果 。

    (1)计算类内散度矩阵

    (2)计算类间散度矩阵

    (3)计算矩阵

    (4)对矩阵 进行特征分解,计算最大的d个最大的特征值对应的特征向量组成W。

    (5)计算投影后的数据点

以上就是使用LDA进行降维的算法流程。实际上LDA除了可以用于降维以外,还可以用于分类。 一个常见的LDA分类基本思想是假设各个类别的样本数据符合高斯分布 , 这样利用LDA进行投影后,可以利用极大似然估计计算各个累呗投影数据的均值和方差,进而得到该类别高斯分布的概率密度函数 。当一个新的样本到来后,我们可以将它投影,然后将投影后的样本特征分别带入各个类别的高斯分布概率密度函数,计算它属于这个类别的概率,最大的概率对应的类别即为预测类别。LDA应用于分类现在似乎也不是那么流行。

    class sklearn.discriminant_analysis.LinearDiscriminantAnalysis(solver='svd', shrinkage=None, priors=None, n_components=None, store_covariance=False, tol=0.0001)

参数:

(1)solver: str类型,默认值为"svd",

    svd:使用奇异值分解求解,不用计算协方差矩阵,适用于特征数量很大的情形,无法使用参数收缩(shrinkage)。

    lsqr:最小平方QR分解,可以结合shrinkage使用。

    eigen:特征值分解,可以结合shrinkage使用。

 (2)shrinkage: str or float类型,默认值为None

    是否使用参数收缩

    None:不使用参数收缩

    auto:str,使用Ledoit-Wolf lemma

    浮点数:自定义收缩比例。

   (3)components:int类型,需要保留的特征个数,小于等于n-1

属性:

(1)covariances_:每个类的协方差矩阵,shape = [n_features, n_features]

(2)means_:类均值,shape = [n_features, n_feateures]

(3)priors_:归一化的先验概率。

(4)rotations_:LDA分析得到的主轴,shape = [n_features, n_component]

(5)scalings_:数组列表,每个高斯分布的方差σ

     特点:

        降维之后的维数最多为类别数-1。所以当数据维度很高,但是类别数少的时候,算法并不适用 。LDA算法既可以用来降维,又可以用来分类。但是目前来说,主要还是用于降维。在我们 进行图像识别相关的数据分析时,LDA是一个有力的工具 。

    优点:

   (1) LDA在样本分类信息依赖均值而不是方差的时候,比PCA之类的算法较优 。

   (2)在降维过程中可以使用类别的先验知识经验,而像PCA这样的无监督学习则无法使用类别先验知识。

    缺点:

    (1)LDA不适合非高斯分布样本进行降维,PCA也存在这个问题。

    (2)LDA降维最多降到类别数K-1的维数,如果我们降维的维度大于k-1,则不能使用LDA。 当然目前有一些LDA的进化版算法可以绕过这个问题 。

    (3) LDA在样本分类信息依赖方差而不是均值的时候,降维效果不好 。

    (4)LDA可能过度拟合数据。

    二者都有 降维 的作用。

1.左 边是PCA,属于无监督方法 ,当数据没有标签时可以用它。 右边是LDA,属于监督学习方法 。考虑了数据的分类信息,这样数据在低维空间上就可以分类了,减少了很多的运算量。

2. PCA主要是从特征的协方差角度考虑,追求的是在降维之后能够最大化保持数据的内在信息 。它不考虑分类信息,因此降低维度后,信息损失降到最低,但分类上可能会变得更加困难。 LDA追求的是降维后的数据点尽可能容易被区分 。降维后的样本数据在新的维度空间有最大的类间距离和最小的类内方差,数据在低维空间有最佳的可分离性。

3. PCA降维后的维度数目是和数据维度相关的 ,原始数据是n维,那么PCA后维度为1、2~n维。 LDA后的维度数目是和类别的个数相关的 ,原始数据是n维,一共有C个类别,那么LDA后维度为1、2~C-1维。

4. PCA投影的坐标系都是正交的 。 LDA关注分类能力,不保证投影到的坐标系是正交的 。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11744554.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存