Closed macaulishxcoo closed 1 year ago
作者,你好! 请问下,这个tmp_config_file临时配置文件是用来干什么的,源码中默认的写入的c盘文件地址我一直写不进去,我尝试把文件权限改了和重新改了个临时文件的地址,还是一直报错: PermissionError: [Errno 13] Permission denied: 'C:\Users\xxx\AppData\Local\Temp\tmpka33seex\tmp4j0_xtf7.py' 而且我发现,源码中 with tempfile.TemporaryDirectory() as temp_config_dir: temp_config_file = tempfile.NamedTemporaryFile( dir=temp_config_dir, suffix=fileExtname) temp_config_name = osp.basename(temp_config_file.name) 将tmp_config_file默认的文件地址已经确定了,要想将临时文件的路径改成指定路径还不是那么简单。 这种问题,您之前有遇到过吗?是怎么解决的呢?谢谢!
你好,感谢你对我们工作的关注。因为我之前是在Linux系统上跑的,所以并没有遇到过这样的问题,你可以在Linux上配置一下环境重新运行一下看看是否还会出现问题。
你好,
这些mode主要用于不同数据的加载。因为有些情况下,模型同时需要加载两种增广的数据,有些情况只需要弱增广数据,有些情况需要加载额外的样本索引用于挑选,因此设置了不同的加载模式。
祝好, 一帆
李一帆 | |
---|---|
@. | ---- Replied Message ---- | From | @.> | | Date | 8/31/2023 23:39 | | To | @.> | | Cc | @.> , @.***> | | Subject | Re: [JackYFL/DISC] PermissionError (Issue #6) |
作者,你好!我对代码里的一些细节有点疑问,想向您请教下: def getitem(self, index): if self.mode == 'train': img_id, target = self.train_imgs[index] img_path = self.train_dir + img_id image = Image.open(img_path).convert('RGB') img = self.transform_fixmatch(image) return img, target
elif self.mode == 'train_single':
img_id, target = self.train_imgs[index]
img_path = self.train_dir + img_id
image = Image.open(img_path).convert('RGB')
img = self.transform_train(image)
return img, target
elif self.mode == 'train_index':
ind = index
img_id, target = self.train_imgs[index]
img_path = self.train_dir + img_id
image = Image.open(img_path).convert('RGB')
img = self.transform_fixmatch(image)
return img, target, ind
代码中把数据分成了很多份,train,train_single,train_index等,这么划分数据的目的是什么,每份数据起什么作用,划分有什么技巧吗?希望您解答下。
— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you commented.Message ID: @.***>
十分感谢您的回复!
如果我要训练一个本身已经带噪声的数据,并不需要再往数据中加入其他噪声,是不是只要设置percent=0,就代表我们训练的数据是我们原来的数据?
另外,我可能问题比较多,后续可能还会有些问题向您请教,非常感谢你的耐心答复。
是的,如果percent=0意味着使用原本的给定标签而不加入其他噪声。
作者,你好!
请问论文中Inst.是什么噪声类型?和sym和asym噪声有什么区别?
源码disc方法中是没有加入warmup预热?我现在出现准确率在start_epoch训练范围内,准确率上升很快,但是超过这个范围,准确率出现异常,下降成很小,且不再更新?如果我想数据学习的更好,我是不是应该start_epoch设置得越大越好,前提是如果准确率一直在上升得情况下,这个值对最终得结果会影响很大吗?还是说主要用来降低训练过程中的过拟合?这个值在我训练我自己的数据集时应该怎么设置呢?
谢谢,期待回复!
感谢你对我们工作的关注,
inst. noise是一种样本相关的标签噪声,即对于不同样本采用不同的加噪方式,这里我们使用的是《Part-dependent label noise: Towards instance-dependent label noise》中的加噪方法。sym.和asym.为样本无关的标签噪声,即加噪过程与样本特征无关。
DISC中,start_epoch为控制warm-up的epoch数目。warm-up的时间并不一定是越大越好,和数据集有关系,warm-up时间太久容易记住原始数据集中的噪声标签。
作者,你好!
在这几天调试代码跑我自己的数据集时,我突然想到了一个问题,在处理噪声数据集时,训练集是带噪声的,测试集或验证集我们应该选用干净的数据集还是从总的数据集里面进行随机划分?测试集或验证集带噪生是不是会对最后的测试结果产生很大影响?
验证集通常情况下应该与训练集同分布,但是实际情况需要和你对比的方法保持一致。测试集应该选用带有干净标签的数据集。验证集带噪声可能会对结果产生一定影响,因为利用带噪数据集挑选出来的模型不一定是最优的。
作者,你好!
论文中对数据是否强弱增强是不是对最后的训练结果会产生很大的影响?我目前训练损失一直震荡的原因我猜可能是对数据增强导致原本的特征发生了很大的改变,尤其是强增强,因为我的数据是关于缺陷的数据,有很多缺陷是极其微小的,一个简单的数据增强操作就可能改变原来的特征,但是论文中对数据强弱增强又是disc算法中一个比较关键的操作。
强弱增广确实会对结果产生一定影响,你可以参考论文中对这个操作的消融实验。具体需要多大程度的强增广,需要根据数据的特点来决定,如果是缺陷检测任务不建议直接使用randaug里面的增广方式。
hello,
when I run the program, the error is reported, I thought it was a file permission issue, but I couldn't find that file. how to solve it?
Traceback (most recent call last): File "F:\80_workspace02\pytorch_04\DISC-main\main.py", line 240, in
main()
File "F:\80_workspace02\pytorch_04\DISC-main\main.py", line 27, in main
config = load_config(args.config, _print=False)
File "F:\80_workspace02\pytorch_04\DISC-main\utils\tools.py", line 45, in load_config
configfile = Config(filename=filename)
File "F:\80_workspace02\pytorch_04\DISC-main\utils\config.py", line 30, in init
cfg_dict = self._file2dict(filename, True)
File "F:\80_workspace02\pytorch_04\DISC-main\utils\config.py", line 86, in _file2dict
Config._substitute_predefined_vars(filename,
File "F:\80_workspace02\pytorch_04\DISC-main\utils\config.py", line 65, in _substitute_predefined_vars
with open(temp_config_name, 'w') as tmp_config_file:
PermissionError: [Errno 13] Permission denied: 'C:\Users\xxx\AppData\Local\Temp\tmpka33seex\tmp4j0_xtf7.py'
looking forward to a reply