Closed hehu56 closed 3 years ago
@hehu56 请问您总共多少图片?几张卡训练?
@qingqing01 单卡训练,想先跑通,图片数量很少只有30张。更换过模型r_101和r_50,也是一样。 训练的配置如下
TrainReader:
batch_size: 4
worker_num: 2
inputs_def:
fields: ['image', 'im_id', 'gt_segm']
dataset:
!COCODataSet
dataset_dir: E:\work\anniu\out_labelme
anno_path: annotations/instance_train.json
image_dir: train
sample_transforms:
- !DecodeImage
to_rgb: true
- !Poly2Mask {}
- !ResizeImage
target_size: 200
max_size: 210
interp: 1
use_cv2: true
resize_box: true
- !RandomFlipImage
prob: 0.5
- !NormalizeImage
is_channel_first: false
is_scale: true
mean: [0.485,0.456,0.406]
std: [0.229, 0.224,0.225]
- !Permute
to_bgr: false
channel_first: true
batch_transforms:
- !PadBatch
pad_to_stride: 32
- !Gt2Solov2Target
num_grids: [40, 36, 24, 16, 12]
scale_ranges: [[1, 96], [48, 192], [96, 384], [192, 768], [384, 2048]]
coord_sigma: 0.2
shuffle: True
@hehu56 你是使用cpu进行训练吗?将TrainReader 中的worker_num设为-1再试下呢
@yghstill cpu和gpu都试过
@yghstill 尝试了-1还是不行
@hehu56 查看一下进程信息和内存占用情况,将batch_size调成1也再试一下
还是不行,cpu30%,内存48%,gpu占用很少 @yghstill
@hehu56 如果worker_num -1, 单卡训练,卡住,感觉是否可能数据里有问题?能否不设置shuffle,每次都固定顺序,batch_size为1,log_iter设置为1,看下是否固定卡到同一个图片上。
数据是通过labelme标注的,然后通过x2coco.py转成coco数据的。暂时还没能解决
我将max_iter从200改为10以后能够跑通了,但不知道是为什么 @yghstill
@hehu56 你改的是max_iters吗?改成10的话,那训10个iter就会停止训练。
是的,训练10个就停止。就不会出现训练卡住的情况,max_iter太大的话就跑着就不跑了。 @yghstill
你好,请问能展示几行你的训练使用的json吗,我也是在用solov2,但是在读取数据方面报错。当我使用coco数据集不会报错,但是当我使用自己的数据集,然后将标注好的xml文件转换成coco的json的时候,就会报错。
这是我的json文件
非常感谢!
@curryJ { "height": 100, "width": 220, "id": 10, "file_name": "9.jpg" } ], "categories": [ { "supercategory": "component", "id": 1, "name": "xi" } ], "annotations": [ { "segmentation": [ [ 15.481171548117155, 15.21757322175732, 43.375174337517436, 15.775453277545331, 42.53835425383543, 39.76429567642957, 61.366806136680616, 40.46164574616458, 63.04044630404463, 43.390516039051604, 63.17991631799163, 59.15062761506276, 44.63040446304045, 59.290097629009765, 42.25941422594142, 79.37377963737796, 13.668061366806137, 78.67642956764296 ] ], "iscrowd": 0, "image_id": 1, "bbox": [ 13.0, 15.0, 50.0, 64.0 ], "area": 3200.0, "category_id": 1, "id": 1 },
@curryJ 使用labelme标注你的数据,改成要求的存放文件名和文件结构,然后使用tools/x2coco.py跑一下就好了
谢谢了。我就是用的tools/x2coco.py,没有报错,生成的json就是我上面贴出来那个样子,就是少了一个Segmentation标签
------------------ 原始邮件 ------------------ 发件人: "notifications"<notifications@github.com>; 发送时间: 2020年12月30日(星期三) 晚上6:29 收件人: "PaddlePaddle/PaddleDetection"<PaddleDetection@noreply.github.com>; 抄送: "PGyoung13"<761478292@qq.com>; "Mention"<mention@noreply.github.com>; 主题: Re: [PaddlePaddle/PaddleDetection] solov2训练时一直卡住 (#1942)
@curryJ 使用labelme标注你的数据,改成要求的存放文件名和文件结构,然后使用tools/x2coco.py跑一下就好了
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.
@curryJ 使用labelme标注你的数据,改成要求的存放文件名和文件结构,然后使用tools/x2coco.py跑一下就好了
我懂了 是我的xml里面没有Segmentation信息,只有bounding box,谢谢了
我也遇到过同样的问题,开始环境是1660ti,cuda10.2,batch_size=2会出现跑一半不动的情况,显卡不干活,把batch_size调成1后能跑通,但是预测结果很诡异,直接对整张图片进行了分类。但是同样的COCO数据集用mask_rcnn跑没有任何问题,预测结果也是对的。 后来换成3080,cuda11.0,batch_size=2时依然会跑一半不动,显卡不工作。
@NewBeeLee 那你后面有解决吗,还是换了别的方法呢
@NewBeeLee 那你后面有解决吗,还是换了别的方法呢 你是不是resnet101的卡住了,我之后用resnet50跑通了,数据集也没动,这两天正在验证效果。
哦哦好的谢谢,我尝试一下 @NewBeeLee
鉴于问题已经解决,当前issue关闭,如果还有问题可以reopen这个issue~
训练自己的数据集到这里一直不动,有的时候会到60个iter。但大部分尝试都是如上所述。