跳至主要內容
Xenny的博客

Xenny的博客

风花雪月本闲,而扰攘者自冗。

友情链接
欢迎找我交换友链
NSSCTF
综合性CTF攻防训练平台
FISTA解决地震反演问题 [WIP]

FISTA解决地震反演问题 [WIP]

  • 迭代收缩阈值算法(Iterative shrinkage-thresholding algorithm, ISTA)是一种用于信号处理和图像重建的优化算法。

    本文将介绍ISTA算法原理和其处理地震反演问题的实际应用。

优化问题

梯度下降

  • 对于一个线性变换问题y=Ax+b\mathbf{y} = \mathbf{A}\mathbf{x} + \mathbf{b},其中A\mathbf{A}y\mathbf{y}已知,b\mathbf{b}为未知噪音,我们需要求解x\mathbf{x}

    本质上这就是一个线性回归问题,从线性回归可知我们可以使用梯度下降解决这个问题。

  • 梯度下降会带来新的问题,对于无约束的优化问题

    minx{F(x)f(x)}.(1) \underset{x}{\min}\{F(x)\equiv f(x)\}.\tag{1}

    若实函数F(x)F(x)在点aa处可微且有定义,梯度下降总是认为F(x)F(x)在点aa沿着梯度相反的方向F(a)-\nabla F(a)下降最快。

    所以当f(x)f(x)连续可微时,若存在一个足够小的数值t>0t>0使得

    x2=x1tF(a).(2) x_2 = x_1 -t\nabla F(a).\tag{2}

    则有F(x1)F(x2)F(x_1) \ge F(x_2)

    梯度下降核心便是通过式2找到序列{xk}\{x_k\},使得F(xk)F(xk1)F(x_k)\ge F(x_{k-1})

    显然,此时初值的选取成了关键,即梯度下降可能陷入局部最优,同时tkt_k的选取(机器学习中的学习率)也是关键,太小会导致迭代太慢,太大会导致无法收敛。


Xenny大约 5 分钟深度学习FISTA
CAUC: Combining Channel Attention U-Net and Convolution for Seismic Data Resolution Improvement

CAUC: Combining Channel Attention U-Net and Convolution for Seismic Data Resolution Improvement

  • DOI:10.1109/LGRS.2023.3322263

  • 地震分析和解释对数据分辨率很敏感。由于复杂的自然环境和有限的采集技术,原始地震数据分辨率通常较低。但地震子波的频率带宽是可调的,所以根据这些特征来提高数据的分辨率是可行的。本文提出了一种通道注意U-Net和物理卷积组合(CAUC)算法来增强地震数据的分辨率。


Xenny大约 4 分钟FWIFWIU-Net
地震反演基本知识

地震反演基本知识

基本概念

  1. 地震数据

    波向地下传播时,由于地下结构不同导致地震波会反射回地表,通过在地表设置检波器收集到的波数据即为地震数据。

  2. 速度模型

    在地震反演中,我们用速度模型来描述地下地质结构,不同的介质波的传播速度不一样,故而可以由速度模型反推介质成分。

  3. 波阻抗(Impedance)

    波阻抗等于速度乘密度,波阻抗越大代表要产生单位振动速度所需的应力越大。

  4. 反射系数

    反射系数代表地震波在地下不同介质界面上发生折射、反射的能量损失程度。计算公式为

    ri=AIi+1AIiAIi+1+AIi,(1) r_i = \frac{AI_{i+1} - AI_{i}}{AI_{i+1} + AI_i},\tag{1}

    其中AIAI代表波阻抗。

  5. 地震褶积

    其实就是子波和反射系数进行卷积运算,一般是在时间域进行运算。本质是把反射系数序列作为一个函数,是地震波传播的数字信号模拟。可以理解为地震波在地下垂直传播过程,在经过不同界面时和反射系数进行叠加。


Xenny原创大约 1 分钟FWIFWI
Pyramid Scene Parsing Network

Pyramid Scene Parsing Network

  • 原文地址:Pyramid Scene Parsing Network

  • 这是一种基于整合全局上下文信息的金字塔池化模块的网络架构,根据全局先验信息能够有效地进行图像分割。

金字塔池化

  • 在深度神经网络中,感受野的大小决定了使用上下文信息的能力。常用的池化例如全局平均池化(GAP)利用全局信息进行池化,但在复杂场景下表现并不好,作者希望能够有一个基于子区域的全局上下文信息表示,于是提出了金字塔池化的概念。

    图1. PSPNet架构

    在金字塔池化模块中,特征图先经过池化操作(使用自适应平均池化)进行下采样,再进行上采样(使用二次线性差值)得到新的特征图并与原特征图拼接。

    同时金字塔池化融合了四个比例的特征(默认是[1, 2, 3, 6])。


Xenny原创大约 2 分钟深度学习深度学习PSPNet
四、PyTorch—自定义反向传播

四、PyTorch—自定义反向传播

  • 神经网络 —— 损失函数 & 反向传播中已经介绍了反向传播的基本概念。

    反向传播的本质就是NN条偏导链,通过最后的loss值往前逐层计算梯度,更新权重。

    PyTorch中,使用loss.backward()便是执行反向传播的过程,不过本文的重点主要是了解如何自定义反向传播过程。一般来说,有两种情况我们需要用到自定义反向传播:

    1. 引入了不可微的函数,此时需要自定义求导方式;
    2. 希望在偏导链中引入新的约束(类似损失函数的惩罚项)。

Xenny原创大约 3 分钟机器学习机器学习PyTorch