【模型压缩】 LPPN论文阅读笔记

news2024/11/25 13:30:07

LPPN论文阅读笔记

LPPN: A Lightweight Network for Fast Phase Picking

背景

 深度学习模型的问题在于计算复杂度较高,在实际数据处理中需要面临较高的处理代价,且需要专用的加速处理设备,如GPU。随着数据累积,迫切需要设计一种能够保证精度的轻量化高速震相拾取模型,以提高处理海量数据的效率,这种模型同时可以方便地部署在设备端。

  • 具有更少的训练参数和轻量级网络在处理大规模数据集所需要
  • 轻量级网络保证CPU上的运行效率
  • 轻量级网络也减少训练所需要的标记数量
  • 嵌入式系统总是需要比较小的内存需求模型,轻量级网路的模型尺寸比较小,适合嵌入到现场进行地震信号处理
  • LPPN使用深度可分离卷积的优化减少模型参数 提高性能
  • 渴求轻量级网络和传统方法相当的拾取精度以及比较高的速度实现

LPPN首先对一小部分的波形的相位类型进行分类,然后使用回归输出所需要相位的准确起始时间。该结构使用深度卷积的优化减少了模型参数并且提高性能

模型设计

  • 相位选择包括两个任务:相位确定和起始时间选择
  • LPPN完成两个工作:确定时间序列小区间的相位类型和选择期望相位的时间,分别对应分类问题和回归问题
  • 深度神经网络根据从标记波形中学习到的特征来选择相位。特征数量和感受野是影响网络性能的两个重要因素。
  • 虽然更多的特征可以更好地描述波形,但是也会导致更高的计算成本,适当数量有助于不降低性能的情况下提高效率
  • 对于地震图,可以将感受野视为提取特征的时间窗口长度。接受野是CNN针对输入控件特定特征所关注的区域
  • 对于相位选择,来自更广泛的感受野的特征可以提高对P/S或噪声的分类可靠性

模型架构

  • 大多数相位拾取网络将输出每一个输入数据点的概率,那么LPPN的思路是输出连续的几个点的相位类型概率,降低计算成本

  • 首先确定是否存在所需的相位,然后选择相位时间

  • 如果输入的地震图长度是T个点,LPPN的总下采样率是S,那么有T/S概率输出 S是步长,每一个输出都是原始波形的一个小片段的概率,然后确定它所属的类型。第I个输出代表从Is到is + S - 1的S个采样点的概率,is是数据采样点的索引,对应于时间ti。那么准确的相位到达可能不精确的从ti开始。

  • 分类和回归都是基于从连续T点提取的特征,但是输出将减少到由步幅控制的T/S

  • 100HZ 30.71S 采样点是3072,那么采取大约30s的窗口来确保用于特征提取的足够长度。

在这里插入图片描述

  • 分类的损失使用交叉熵损失函数
  • 回归的损失函数使用均方差损失

LPPN的网络优化

  • LPPN设计用于在各种设备上运行,在训练时可以配置特征数量和步长,网络内部也进行优化
  • n代表模型的特征数目
  • 特征提取是通过七个CNN块进行的,每一个块执行两个任务:使用前一个块的特征并执行下采样来减少输出的长度,同时它扩展了特征的数量来恢复长度,将足够信息传递给下一个层。
  • 每一个块包括两个点卷积层和一个深度卷积层,形成一个卷积单元来取代传统的CNN卷积层,这样的优化将参数数量减少45%
  • 特征提取的输出被进一步输入到扩大感受野模块中,该模块使用三个下采样层和三个上采样层组成

LPPN的训练与性能评估

  • 对比PhaseNet数据集

  • 使用STEAD数据集

  • 评价指标

    • 预测和标记到达时间之间的时间残差的精度 召回率 平均值 标准差
  • one-hot向量:p [0,1,0] s[0,0,1] 噪声[1,0,0]

在这里插入图片描述

  • 真正的P到时位于该段内部,表明相位分类是正确的

  • 时间窗口是0.16s 说明窗口有16个点,

  • 分段的初始时间t在真正的P时间拾取之前,在加上回归模块提供的&t之后,预测的P时间更加接近真实的P时间

  • LPPN 可以使用不同的步长来节省内存占用并且加快相位拾取,但是较大的步长也会演唱回归的时间窗口,可能会导致比较低的精度

  • 测试发现,步长为16的中等模型可以在模型性能和计算成本方面提供平衡的配置

  • 对于所有模型,精度和召回率都随着信噪比的增加而增加,并且对于高信噪比,差异较小。对于低信噪比的波形,所有模型都表现出比较差的性能,但是参数比较多、步幅比较小的模型通常比其他模型更好,表明LPPN模型更适合处理期望比较低的SNR波形数据

讨论

  • LPPN是从目标检测模型修改来处理地震波形的。LPPN只输出S个连续点的一个概率来预测相位类型,而不是每个输入点的输出概率。
  • 可训练参数的数量表示模型的大小,内存需要存储这些参数,那么较大的步幅将减少内存需求
  • 当模型被训练并且应用于真实的数据集之后,模型的性能会下降,可以通过添加一些局部样本,通过迁移学习提高性能

STanford EArthquake Dataset (STEAD): A Global Data Set of Seismic Signals for AI

斯坦福地震数据集

  • 局部地震波形(350km地震内)
  • 没有地震信号的地震噪声波形
  • 地震通常由配备一个垂直和两个正交水平传感器的三分量一起记录
  • 第一个到达的脉冲是P波
  • 地震并不是产生地震波的唯一来源。
  • 尽管有数百TB的存档地震波形数据和数千万个人类拾取参数可用,但还没有存在用于地震波形的大型高质量标记基准数据集
  • 每个模型都使用不同的数据集进行训练和演示其性能。在没有标准基准的情况下,作者设置了自己的评估性能标准。这抑制了进展,因为它很难确定每种方法的相对性能以及优缺点

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/780966.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

IDE/mingw下动态库(.dll和.a文件)的生成和部署使用(对比MSVC下.dll和.lib)

文章目录 概述问题的产生基于mingw的DLL动态库基于mingw的EXE可执行程序Makefile文件中使用Qt库的\*.a文件mingw下的*.a 文件 和 *.dll 到底谁起作用小插曲 mingw 生成的 \*.a文件到底是什么为啥mingw的dll可用以编译链接过程转换为lib引导文件 概述 本文介绍了 QtCreator mi…

17 界面布局--登录界面

要点: 利用widgets做布局:水平,垂直,栅格 利用弹簧设置收缩 widget宽高比实际控件大很多:设置Fixed 如果需要去除其余边框间隙可以设置layout 将最小尺寸和最大尺寸设置为固定即为固定尺寸 设置窗口标题:wi…

基于DeepFace模型设计的人脸识别软件

完整资料进入【数字空间】查看——baidu搜索"writebug" 人脸识别软件(无外部API) V2.0 基于DeepFace模型设计的人脸识别软件 V1.0 基于PCA模型设计的人脸识别软件 V2.0 更新时间:2018-08-15 在观看了吴恩达老师的“深度学习课程”,了解了深…

关于新手学习Ubuntu使用vim,如何使用c/cpp的编译器以及如何使用makefile的详细记录

ubuntu下 首先如何编辑 1.启动vim编辑器 打开终端,输入vim,按回车键。 vim gcc.c 2.进入编辑模式 输入i ,进入插入模式。就可以修改文件内容了。 按“ESC”退出编辑模式。 3.退出 Shift键 “:”,切换到命令模式。 输入“q”后回车&…

基于OpenCV的红绿灯识别

基于OpenCV的红绿灯识别 技术背景 为了实现轻舟航天机器人实现红绿灯的识别,决定采用传统算法OpenCV视觉技术。 技术介绍 航天机器人的红绿灯识别主要基于传统计算机视觉技术,利用OpenCV算法对视频流进行处理,以获取红绿灯的状态信息。具…

【Linux】Tcp服务器的三种与客户端通信方法及守护进程化

全是干货~ 文章目录 前言一、多进程版二、多线程版三、线程池版四、Tcp服务器日志的改进五、将Tcp服务器守护进程化总结 前言 在上一篇文章中,我们实现了Tcp服务器,但是为了演示多进程和多线程的效果,我们将服务器与客户通通信写成了一下死循…

【Linux】 由“进程”过渡到“线程” -- 什么是线程(thread)?

知识引入初识线程1.什么叫做进程?2.什么叫做线程?3.如何看待我们之前学习的进程? 理解线程创建线程函数调用1.线程一旦被创建,几乎所有资源都是被线程所共享的2.与进程之间切换相比,线程的切换 初识线程总结&#xff1…

JWT 的使用

一、简介 JWT将用户的一些信息存储在客户端,访问后台时会带着JWT,服务器要对这个JWT进行检验。 由于signKey是存放在服务器端的,所以比较安全只要JWT被篡改就会立刻发现。 JWT认证的优势 1.简洁:JWT Token数据量小,传…

WebRTC带宽评估 -- Transport-wide Congestion Control

简述:在RTP包中增加transport-wide-cc扩展头,放置传输层面的包序号。视频接收端记录RTP包的接收时间,并通过RTCP Feedback消息反馈到视频发送端,发送端结合缓存的RTP包发送时间,基于丢包和延迟估算当前带宽&#xff0c…

zabbix 企业级监控 (3)Zabbix-server监控mysql及httpd服务

目录 web界面设置 server.zabbix.com 服务器操作 编辑 chk_mysql.sh脚本 查看web效果 web界面设置 1. 2. 3. 4. 5. 6. 7. 8. server.zabbix.com 服务器操作 [rootserver ~]# cd /usr/local/zabbix/etc/ [rootserver etc]# vim zabbix_agentd.conf UnsafeUserParameters1 Us…

Java当中的栈

栈的理解 栈(Stack)是一种受限的线性数据结构,所谓受限是指栈只暴露栈顶和栈底的操作,其底层是由数组实现的。栈的特性是先进后出。 常用方法 注意上面的peek()方法和pop()方法的区别! 实例 import java.util.Stack…

【计算机视觉 | 图像分割】arxiv 计算机视觉关于图像分割的学术速递(7 月 19 日论文合集)

文章目录 一、分割|语义相关(12篇)1.1 Disentangle then Parse:Night-time Semantic Segmentation with Illumination Disentanglement1.2 OnlineRefer: A Simple Online Baseline for Referring Video Object Segmentation1.3 MarS3D: A Plug-and-Play Motion-Aware Model for…

LeetCode74.Search-A-2d-Matrix<搜索二维矩阵>

题目: 思路: 矩阵,搜索数是否在矩阵内。那就查找他是否在每一行中。如果符合这一行的范围,那就一直找这一列是否存在,如果存在返回true;否则false; 代码是: //codeclass Solution …

Istio 安全管理 加密证书中心

1 tls认证 2 设置ACL 允许哪些客户端可以访问 哪些客户端不能访问 3 istio里面的认证 加密是可以分为三种类型 对称加密(加密和解密用的是同一个密钥)非对称加密哈希函数 对称加密 A要发送数据传送给B,那么A要使用一个密钥,里面…

MySQL-数据库读写分离(下)

♥️作者:小刘在C站 ♥️个人主页: 小刘主页 ♥️努力不一定有回报,但一定会有收获加油!一起努力,共赴美好人生! ♥️学习两年总结出的运维经验,以及思科模拟器全套网络实验教程。专栏&#xf…

Verilog 学习之路二——基础学习总结(摘取自菜鸟教程)

目录 1 Verilog 设计方法2. 基础语法2.1 格式2.2 数值表示数值种类表示方法 2.3 数据类型2.4 表达式 3. 编译指令4. 连续赋值5. 过程结构6 过程赋值7 时序控制8 语句块9 循环10 函数例子-数码管译码 1 Verilog 设计方法 Verilog 的设计多采用自上而下的设计方法(to…

TypeScript + React 环境搭建

React 安装 vscode 或者 webstrom 代码编辑器TypeScript 开发环境搭建1.1、下载 node.js1.2、安装 node.js1.3、npm 安装 typeScript1.4、创建和编写 ts 文件1.5、编译1.6、运行 js文件 React 环境搭建2.1、homebrow2.2、安装 cnpm:2.3、安装yarn:2.4、安…

[oeasy]python0074[专业选修]字节序_byte_order_struct_pack_大端序_小端序

进制转化 回忆上次内容 上次 总结了 计算字符串值的函数 eval 四种进制的转化函数 binoctinthex 函数名前缀目标字符串所用进制bin0b二进制oct0o八进制hex0x十六进制eval无前缀十进制 数字41 和 字符串"41" 的不同 字符串"41" 两个字符字符存储依据是…

部署ELK+Kafka+Filebeat日志收集分析系统

部署ELKKafkaFilebeat日志收集分析系统 文章目录 部署ELKKafkaFilebeat日志收集分析系统一、ELK 简介1、ELK日志分析系统组成2、Elasticsearch(es)3、Logstash4、Kibana5、日志处理步骤 二、Elasticsearch介绍1、Elasticsearch核心概念2、开启分片副本的…

AcWing 244. 谜一样的牛—树状数组、二分

题目链接 AcWing 244. 谜一样的牛 题目描述 分析 这道题挺巧妙的,感觉树状数组方面的题就是比较难想,先分析一下样例,样例中每头牛前面比自己低的牛的数量分别为 0 1 2 1 0牛的高度是1~n的排列,如何分析出每头牛的高度呢&…