THUDM / VisualGLM-6B

Chinese and English multimodal conversational language model | 多模态中英双语对话语言模型
Apache License 2.0
4.1k stars 418 forks source link

微调时,微调数据一大就卡住,10000样本就跑不通 #176

Open Eumenides28 opened 1 year ago

Eumenides28 commented 1 year ago

CPU利用率800%,GPU利用率0%,怀疑都卡在读取数据中

1049451037 commented 1 year ago

可以修改Dataset类,在init函数里只保存文件索引,等到getitem的时候再从硬盘读取数据。

https://github.com/THUDM/VisualGLM-6B/blob/main/finetune_visualglm.py#L108

CiciCR7 commented 1 year ago

能说一下具体操作吗,这样的话,现在可以训多少数据呢,我也是到了10000张就不跑了。有什么进一步的改进方法吗

sunxiaoyu12 commented 1 year ago

能说一下具体操作吗,这样的话,现在可以训多少数据呢,我也是到了10000张就不跑了。有什么进一步的改进方法吗

我把代码改了之后,微调16000张数据可以,bs是4

CiciCR7 commented 1 year ago

好的谢谢你,我发现可能也与图片的像素大小有关系,之前我的超过10000张,其实是可以训练的,只是太慢了,所以linux界面没有显示,我后面设计一个进度记录打印,就能看出来一直在跑了。但是效果现在调的还不行,要不是过拟合,要不就是不太准确,可能是我的数据集是偏工业场景,电力场景,有点难拟合

xushenkun commented 1 year ago

@CiciCR7 麻烦问下加进度在哪里呢,目前跑起来一直不现实日志和信息,GPU也是100%,不知道是否有问题,数据集大概1w2

CiciCR7 commented 1 year ago

就在finetune_visualglm.py文件里的FewShotData()类里的init函数里的image=processor()函数的下面添加print()打印数字就行了,设置一个i变量,每次加一。如果我说的不清楚,可以加q 2117387545一起讨论