【学习笔记】Day 9

一、进度概述

        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.rhkb.cn/news/397384.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ECR绕过技巧

一、预编译与sql注入 预编译SQL有两个优势: 1、性能更高:预编译SQL,编译一次之后会将编译后的SQL语句缓存起来,后面再次执行这条语句时,不会再次编译。(只是输入的参数不同)。 2、更安全(防止S…

漏洞复现-Apache Struts2 文件上传漏洞(CVE-2023-50164)

1.漏洞描述 Apache Struts2 是一个开源的 Java Web 应用程序开发框架,旨在帮助开发人员构建灵活、可维护和可扩展的企业级Web应用程序。 由于文件上传逻辑存在缺陷,攻击者可以操纵文件上传参数来实现路径穿越,在某些情况下,通过…

HTTP的场景实践

HTTP的场景实践:任选一个浏览器,对于其涉及的请求中的缓存策略展开具体分析 1. 强缓存: Cache-Control用于指定缓存的最长有效时间。 Expires用于指定资源过期的日期。 2. 协商缓存: ETag用于标识资源的唯一标识符,…

ISP代理与双ISP代理的区别

在网络营销、数据采集及隐私保护等领域,代理服务器扮演着至关重要的角色。而在代理服务器的选择中,ISP代理与双ISP代理是两种常见的选择。本文将对这两种代理服务进行详细分析,探讨它们之间的区别以及各自的优势和适用场景。 一、ISP代理概述…

代码规范 —— QMQ 开发规范

优质博文:IT-BLOG-CN 一、代码规范 【1】消费者必须以Consumer结尾,生产者必须以Producer结尾。 【2】选择合适的消费模式:根据业务判断消费模式是集群模式还是广播模式,具体为:MessageConsumerProvider.addListene…

Win系统下使用Docker安装RabbitMQ及延迟插件

Win系统下使用Docker安装RabbitMQ及延迟插件 docker 安装 rabbitmq docker pull rabbitmq:3.12.0-management运行 docker run -d --namerabbitmq --restartalways -p 5672:5672 -p 15672:15672 rabbitmq:3.12.0-management 访问 访问 http://localhost:15672/,…

Docker如何删除没有名字或标签的镜像

如下图,这些没有名字和标签的镜像如何删除呢?下面提供删除方法。 1、找出所有没有名字的镜像 docker images -f "dangling=true"2、删除所有没有名字的镜像 当然,你也可以通过镜像的ID去删除它。 docker rmi -f $(docker images -f "dangli

在远程服务器上创建git仓库并ssh连接到github进行管理

1.生成SSH 公钥,keygen放在.ssh中 2.添加公钥到github 3.确保 SSH 密钥被加载到 SSH 代理中 使用 ssh-add 命令将密钥添加到 SSH 代理中: eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa 检查 SSH 代理中是否列出了密钥: ssh-ad…

MySQL运维-分库分表

介绍 问题分析 拆分策略 垂直拆分 水平拆分 实现技术 Mycat概述 介绍 概念介绍 Mycat配置 schema.xml schema标签 schema标签(table) datanode标签 datahost标签 rule.xml sever.xml system标签 user标签 Mycat分片 分片规则-范围 分片规则-取模 分…

LVS多模式集群攻略!

目录 NAT模式下的lvs集群准备工作具体步骤客户机lvs服务器1服务器2 测试 DR模式下的lvs集群具体流程客户机:路由器LVS服务器1服务器2测试 防火墙标签解决轮询问题LVS持久链接解决方案 NAT模式下的lvs集群 lvs-nat概念:修改请求报文的目标IP,多目标IP的D…

关于RCE

什么是RCE? RCE漏洞,可以让攻击者直接向后台服务器远程注入操作系统命令或者代码,从而控制后台系统。也就是远程命令执行。命令执行是在目标服务器上任意执行系统命令。它属于高危漏洞之一,也属于代码执行的范畴。命令执行漏洞与…

红外遥控与NEC协议详解

文章目录 红外遥控的基本原理发射装置红外接收器 NEC协议的基础知识编码格式什么是“连发码”?NEC协议中的连发码连发码的工作原理 红外遥控的基本原理 红外遥控器通过发射红外光来传输信息,这种光线在肉眼不可见,但可以被接收设备上的红外接…

Linux 下的进程状态

文章目录 一、运行状态运行队列运行状态和运行队列 二、睡眠状态S状态D状态D状态产生的原因 三、暂停状态T状态t 状态 四、僵尸状态为什么有僵尸状态孤儿进程 一、运行状态 R状态:进程已经准备好随时被调度了。 运行队列 每个 CPU 都会维护一个自己的运行队列&am…

【鸿蒙开发基础学习】组件导航 (Navigation)

组件导航 (Navigation) Navigation 是路由容器组件,一般作为首页的根容器,包括单栏(Stack)、分栏(Split)和自适应(Auto)三种显示模式。Navigation 组件适用于模块内和跨模块的路由切换,一次开发,多端部署场景。通过组件级路由能力…

[CSCCTF 2019 Qual]FlaskLight (jinja2模版注入)

两种方法: 1.工具法 进来看见flask到处飘,估计就是ssti ctrlU打开发现两行注释提示GET方式传递参数search 这种有参数的我先直接丢fengjing扫了一下,结果还真搞出来,这工具还是挺牛的,就是没参数的时候搞不了 fengj…

牛客周赛 Round 55 解题报告 | 珂学家

前言 题解 补题这场比赛,好像还是难。 A. 小红的字符串 签到题 枚举最终的字符,求最小的修改 这个方法更有通用性 s input()from math import inf import stringans inf for c in string.ascii_letters:ans min(ans, sum([1 for z in s if z ! c…

【Datawhale X 魔搭 】AI夏令营第四期大模型方向,Task1:智能编程助手(持续更新)

在一个数据驱动的世界里,人工智能的未来应由每一个愿意学习和探索的人共同塑造和掌握。希望这里是你实现AI梦想的起点。 大模型小白入门:https://linklearner.com/activity/14/11/25 大模型开发工程师能力测试:https://linklearner.com/activ…

【前端可视化】 大屏可视化项目二 scale适配方案 g6流程图 更复杂的图表

项目介绍 第二个大屏可视化,整个项目利用scale进行按比例适配。 图表更加复杂,涉及到图表的叠加,mark,地图,g6流程图的能等 始终保持比例适配(本项目方案),始终满屏适配(项目一). echarts绘制较为复杂图表&#xff0…

mysql导入jdbc

每次创建项目都要导入jar包 版本对应 mysql是5xxjdbc也用5xx 下载jdbc.jar包 maven仓库搜索mysql:maven官网 导入jar包 创建lib目录,复制jar包,粘贴到lib当中 导入成功

Android Basis - 密钥和ID认证

书读百遍其义自现,知识点多复习,看到的越多,理解的也越是深刻。也许此时我看到的点是点,十天半个月之后回头看时可能就是新的点或者线了,写博客也是,越写越深刻。 遇到KeyAttestation在gms中的错误 在cts…