【学习笔记】Day 9

news/2024/9/17 18:58:55/ 标签: 学习, 笔记

一、进度概述

        1、inversionnet_train 试运行——成功

二、详情

        1、inversionnet_train 试运行

        在经历了昨天的事故后,今天最终成功运行了 inversionnet_train,运行结果如下:

        经观察,最开始 loss 值大概为 0.5 左右

        随着训练量的增多,loss 值逐渐减小

        在 700 组左右,减少到 e-2 的数量级

        在 5600 组(30个epoch)左右,减少到 e-3 的数量级 

        最终,loss 趋于 e-4 的数量级

        论文中用30epoch跑到e-3左右
        指标如下: 

补充几点:

        (1)关于这个,之前有提及过,但是在这次配置环境时忘了,记录一下。

        报错原因:以前的 torch.nn.functional 叫 F,之前用的库有这个东西,现在没有了,所以在报错文件中加上以下代码即可

import torch.nn.functional as F

        (2)关于 TrainSize

         代码里默认用48000的 数据进行训练,但不是每个数据集都有这么多数据,需要根据数据集的具体情况做更改。
        在 FlatVal_A 中,共有60个文件,每个文件中有500组数据,故一共有30000组。按照 8:2 分为数据集与测试集。

        (3)关于 Training Loss

        loss 应该达到 e-4 的数量级,具体含义需要等到学习深度学习。这里的图是用 inversionnet_train_light 跑出来的,只用了 500 组数据(即一个 .npy 文件),对比 inversionnet_train,可以明显发现 loss 上的差距(这里只达到了 e-1 数量级),这表明训练集本身对模型还是有较大的影响的,在应用过程中应该注意训练集的量。

        (4)关于批量更改文件

        在使用一个程序前,一定仔细阅读 readme 相关文件,里面会说明相关路径配置以及注意事项,这个问题问出来就显得很不专业。
        选用数据集时,要更改对应选择。

        在批量命名文件时,写了一个脚本,免去了大量体力劳动,这点还是可以的。详细可以参考以下文章:
批量修改文件名方法合集-CSDN博客

最后吐槽一下:
        数据集是真的大,网也是真的烂,下了好久,早知如此,当初就应该配个更大宽带的网。还有就是,跑这么个模型真不容易,负荷挺高的。


后记

        关于 inversionnet_train 和 DL_FWI 的一些理解:(可能存在差错)

        inversionnet_train 理论上是用前48个文件进行训练,相当于期末考试前的测试卷,答了一遍有成绩能对答案,用后12个文件来衡量网络模型的性能,相当于期末考试的考试卷,只有成绩没有答案。
        InversionNet 的极限只能使 mse 到 e-4 次方,这个网络只能做到这么好,制造更好的网络就是要研究的内容了。
        对于结果的评估是分别比较,比如分别对比网络在flat上的成绩和在cruve上的,一般不会直接把不同数据集的相对比。打个比方:如果你只让他练习数学题,他的语文成绩不会太好,但你要是让他练习语文,那他的语文其实能整的不错的。这就是训练集本身的影响

        搞DL-FWI就是看谁设计的网络更真实,比较谁更真实就是用诸如mse这些函数的值来进行。
        研究点在于:
        (1)新的模型,然后用不同数据集来比较网络的性能。
        (2)当然这个新也不一定是完全全新的,比如看到有一个网络本来是用来处理医学的,拿来改改发现它搞FWI也不错,这也算是新的创新点。
        (3)如果真的能加入别人都没有的设计,并且表现还比别人的好,这就是顶刊水平了。 


http://www.ppmy.cn/news/1507247.html

相关文章

使用Selenium调试Edge浏览器的常见问题与解决方案

背景介绍 在当今互联网时代,网页爬虫已经成为数据获取的重要手段。而Selenium作为一款功能强大的自动化测试工具,被广泛应用于网页爬取任务中。虽然Chrome浏览器是Selenium用户的常见选择,但在某些工作环境中,我们可能需要使用Ed…

Ubuntu24.04设置国内镜像软件源

参考文章: Ubuntu24.04更换源地址(新版源更换方式) - 陌路寒暄 一、禁用原来的软件源 Ubuntu24.04 的源地址配置文件发生改变,不再使用以前的 sources.list 文件,升级 24.04 之后,该文件内容变成了一行注…

牛客-热身小游戏

题目链接:热身小游戏 第一种写法:线段树 介绍第二种写法:并查集 对于一些已经查询过的点,我们可以往后跳,进行路径压缩,他们的父亲为下一个点。 a数组记录[ l , r ] 之间的乘积,初始值为1。…

haproxy知识点整理

haproxy知识点整理 haproxy七层代理负载均衡什么是负载均衡为什么使用负载均衡 负载均衡类型四层负载均衡七层负载均衡四层和七层的区别 环境搭建:客户端(client)haproxy服务器两台服务器hapserver1hapserver2 简单的haproxy负载均衡 haproxy的基本配置信息global配置proxies配…

17. ADC开发

1. 概述 bes2700 支持2路ADC 2. 硬件连接 3. 软件开发 电压值计算:电压 = 参考电压/4096(2的12次方) * ADC值

linux中安装nginx方法

1、首先确保系统已经安装gcc,如没安装,请先自行安装 2、安装nginx 将openssl-1.1.1j.tar.gz、pcre-8.44.tar.gz、zlib-1.3.tar.gz、nginx-1.20.0.tar.gz解压到当前目录,命令如下: tar -zxvf openssl-1.1.1j.tar.gz tar -zxvf…

【RISC-V设计-08】- RISC-V处理器设计K0A之BMU

【RISC-V设计-08】- RISC-V处理器设计K0A之BMU 文章目录 【RISC-V设计-08】- RISC-V处理器设计K0A之BMU1.简介2.顶层设计3.端口说明4.总线时序4.1 总线写时序4.2 总线读时序 5.代码设计6.总结 1.简介 总线管理单元(Bus Management Unit,简称 BMU&#x…

Linux安全与高级应用(四)深入探索MySQL数据库:安装、管理与安全实践

文章目录 标题:全面解析LAMP平台部署及应用第一部分:LAMP平台概述第二部分:准备工作第三部分:安装和配置PHP第四部分:配置Apache第五部分:测试LAMP平台第六部分:部署phpMyAdmin总结 &#x1f44…

【海贼王航海日志:前端技术探索】CSS你了解多少?(三)

目录 1 -> 浏览器调试工具——查看CSS属性 1.1 -> 打开浏览器 1.2 -> 标签页含义 1.3 -> elements标签页使用 2 -> 元素的显示模式 2.1 -> 块级元素 2.2 -> 行内元素/内联元素 2.3 -> 改变显示模式 3 -> 盒模型 3.1 -> 边框 3.2 ->…

MySql-索引事务

在面试中,对于mysql相关的面试题常看的两部分也是我们学习时需要重点了解的内容:索引与事务。 目录 索引 B树 B树结构 B树创建 事务 重点:事务的基本特性 一、原子性 二、一致性 三、持久性 四、隔离性 索引 索引的核心内容&#…

白骑士的Matlab教学进阶篇 2.3 信号处理

系列目录 上一篇:白骑士的Matlab教学进阶篇 2.2 数值计算 信号处理在现代工程和科学领域中扮演着至关重要的角色。MATLAB作为一个强大的数学计算平台,提供了丰富的工具和函数来帮助研究人员和工程师处理各种信号问题。本文将深入介绍MATLAB中信号处理的…

C# 集合操作的艺术:深入解析数据分区策略与高效筛选技巧(Skip、SkipWhile、Take、TakeWhile)

文章目录 概述Skip 和 SkipWhile 方法Take 和 TakeWhile 方法综合应用示例总结 在C#中,LINQ(语言集成查询)提供了一种非常方便的方式来处理数据集合。本文将详细介绍四种数据分区方法:Skip、SkipWhile、Take、TakeWhile&#xff0…

【Pytorch实用教程】PyTorch中的torch.clamp()函数

torch.clamp() 是 PyTorch 中一个用于张量元素值限制的函数。它可以将张量中的元素限制在一个指定的范围内,即将所有小于最小值的元素设为最小值,将所有大于最大值的元素设为最大值。 函数签名 torch.clamp(input, min=None, max=None, *, out=None)参数

springboot Isolation.READ_COMMITTED不生效解决办法

问题描述 springbootmybatis可读已提交不生效,先在springboot查询出结果然后在数据库修改值后在Java再次读取,结果读取的还是修改之前的值 原因: 是mybatis二级缓存导致的 解决办法 方案一 ​​​​​​​Resource private SqlSession sqlSession;…

白骑士的Matlab教学附加篇 5.1 MATLAB开发工具

系列目录 上一篇:白骑士的Matlab教学实战项目篇 4.4 机器学习与AI 在 MATLAB 开发过程中,选择合适的编辑器和集成开发环境(IDE)至关重要。一个好的编辑器不仅可以提高编程效率,还可以帮助开发者更好地管理和调试代码。…

使用samba在ubuntu和windows之间共享文件

1、在ubuntu上安装samba 在终端输入命令 sudo apt update sudo apt install samba 2、配置samba 打开samba 的配置文件 sudo nano /etc/samba/smb.conf 在文件末尾添加以下内容 [shared] path /home/lzx available yes valid users lzx read only no browsable yes…

【云原生】看一眼haproxy,秒变技术大佬(理论篇)

一、负载均衡 1、什么是负载均衡? 负载均衡:Load Balance,简称LB,是一种服务或基于硬件设备等实现的高可用反向代理技术,负载均衡将特定的业务(网络服务、网络流量等)分担给指定的一个或多个后端特定的服务器或设备&…

【面试常问之网络】网络故障排查方面

目录 一、一台主机的网络出现了问题,如何排查(网络故障排查思路)? 二、一台主机提供的服务器访问起来很慢,如何排查原因? 三、导致网络变慢的原因(网络卡顿排查思路) 四、一个由虚拟机中的web应用提供的服务,使用浏览器无法访问该服务,如何排查原因 五、一个服务…

C# Type 对象序列化与反序列化

Type 对象序列化与反序列化 🍤序列化🥩反序列化 🍤序列化 var ty xxx.GetType(); var fullTypeName ty.AssemblyQualifiedName;🥩反序列化 ty Type.GetType(fullTypeName);

合并图片为pdf

1.先使用IDM在网页下载: 2.按文件类型分组,在按名称大小排序,之后使用Acrobat合并文件成一个pdf即可