【学习笔记】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)如果真的能加入别人都没有的设计,并且表现还比别人的好,这就是顶刊水平了。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值