paddleseg设置yml文件的问题
收藏
在paddleseg的yml文件中设置了
loss:
coef:
- 1
types:
- ignore_index: 100
type: CrossEntropyLoss
0
收藏
请登录后评论
但是在执行训练打印参数设置时还是输出的:
设置的 " ignore_index: 100 " 似乎未生效,这是哪里格式的问题么?
设置yml的格式是有缩进的
loss:
coef:
- 1
types:
- ignore_index: 100
type: CrossEntropyLoss
或者说,执行train时打印的全局参数设置的yml文件格式能直接拷贝过来用么?
ignore_index指定一个忽略的标签值,此标签值不参与计算。默认值为-100。你的数据集里如果不存在标签为100的数据的话,是不会生效的。
嗯,这个理解。我是运行train.py 脚本时是在yml文件里覆盖了这个设置的,但是运行时打印全局设置时,似乎yml里的覆盖未起效果
我现在只能手动把数据集给处理了,把不相关的类别统一设为了255
但总觉得这么干是削足适履。。。
不行,我再试试用 -o 参数覆盖下
如果输出了,肯定不是yml没读取到,那就是这段参数送入代码中没生效?
不行就直接代码里改~~
其实还是改数据集合理,现在一般都是255当unknown,有的数据集是用0标注类别的,用别的都不合适,还是255最方便
我发现生成网络对标注精度要求并不高,脑部能力很强
大黑边都能给补上蓝天白云~~
所以数据集获取能力超强啊。这两天又给我推了一个用标注框做分割的模型,就是没开源。。。
据说号称开源了,就是找不到源码
这个问题应该是因为在解析config时,paddleseg loss的ignore index是根据train_dataset的ignore index来取值的。这么做的目的是因为loss和train_dataset的ignore index理论上应该是一样的,所以用户不需要额外指定loss 的ignore index。
你是不是train_dataset的ignore index还是255呀?