Giter VIP home page Giter VIP logo

Comments (20)

liruilong940607 avatar liruilong940607 commented on September 3, 2024

你好!

我们release的model就是用exactly这个repo train出来的,所以应该是能够复现的。请问你用了几个GPU训了多少个iteration?

BTW, 关于metrics FID,我们的实现在这里,抱歉没有merge到这个repo里面:https://github.com/liruilong940607/mint/blob/main/tools/calculate_fid_scores.py

from mint.

CuberFan avatar CuberFan commented on September 3, 2024

你好!

我们release的model就是用exactly这个repo train出来的,所以应该是能够复现的。请问你用了几个GPU训了多少个iteration?

BTW, 关于metrics FID,我们的实现在这里,抱歉没有merge到这个repo里面:https://github.com/liruilong940607/mint/blob/main/tools/calculate_fid_scores.py

您好,非常感谢您的回复! 我看到您给出的best模型是214501 iter, batch_size是32,请问您是几个GPU训练的?是否有设置tf/np/random的seed ?如果有设置,seed设置为多少?

我用您的这个repo,是单GPU训练,batch_size是32,训练了大概290000 iter,loss降到了0.0001左右,怎么去挑选最好的模型的呢? 挨个模型测试吗? 我用290000 iter最后生成的模型测试,FID_k大概700多,FID_g大概30左右。这个repo的tools文件夹下,也有一份calculate_scores.py代码,不知道和你个人的repo tools下的calculate_fid_scores.py是否有什么不同?

我个人用pytorch复现的算法,因为是以epoch为单位,和您的代码有所不同,batch_size也是32,单gpu训练,每个epoch大概29个iter,一共训练了1W个epoch,loss降到0.0002,然后就不收敛,比您的算法loss稍微高一点点,用最后一个iter的模型测试,FID_k大概7000多,FID_g大概25左右,另外,我np.random.seed、torch.seed和random.seed,我都设置为1,是否会影响初始化和训练,是否和您的相同?

另外,我有个想法,不知道是否成熟,因为训练出来的舞蹈,人体会在水平方向移动,感觉在飘来飘去,似乎smpl_trans没有训练好,然后我就把trans和pose两个部分,分开来计算MSE loss,然后分别加权求和,似乎这样做更合理一些,目前还在训练中。

@liruilong940607

from mint.

by2101 avatar by2101 commented on September 3, 2024

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

from mint.

CuberFan avatar CuberFan commented on September 3, 2024

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

FIDk/FIDg,这2个参数,我用作者提供的checkpoint跑出来的结果计算,没什么问题,跟论文上写的差不多,只是转换为FBX可视化的动画效果,有点乱,达不到论文提到的效果,即使是音乐和舞蹈匹配的pair,也不能达到很好效果。

原作者说loss可以降到1e-5 ~ 1e-6,但我用他们的代码训练,只能到1e-4左右

from mint.

by2101 avatar by2101 commented on September 3, 2024

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

FIDk/FIDg,这2个参数,我用作者提供的checkpoint跑出来的结果计算,没什么问题,跟论文上写的差不多,只是转换为FBX可视化的动画效果,有点乱,达不到论文提到的效果,即使是音乐和舞蹈匹配的pair,也不能达到很好效果。

原作者说loss可以降到1e-5 ~ 1e-6,但我用他们的代码训练,只能到1e-4左右

我也没搞清楚怎么回事。另外我没有太搞清楚metric计算的Protocol,为什么计算FID的时候是和整个数据集groundtruth做,不是只和测试集。另外就是为什么extract feature的脚本里面有 * 10把数据重复10次的操作。

from mint.

CuberFan avatar CuberFan commented on September 3, 2024

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

FIDk/FIDg,这2个参数,我用作者提供的checkpoint跑出来的结果计算,没什么问题,跟论文上写的差不多,只是转换为FBX可视化的动画效果,有点乱,达不到论文提到的效果,即使是音乐和舞蹈匹配的pair,也不能达到很好效果。
原作者说loss可以降到1e-5 ~ 1e-6,但我用他们的代码训练,只能到1e-4左右

我也没搞清楚怎么回事。另外我没有太搞清楚metric计算的Protocol,为什么计算FID的时候是和整个数据集groundtruth做,不是只和测试集。另外就是为什么extract feature的脚本里面有 * 10把数据重复10次的操作。

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

FIDk/FIDg,这2个参数,我用作者提供的checkpoint跑出来的结果计算,没什么问题,跟论文上写的差不多,只是转换为FBX可视化的动画效果,有点乱,达不到论文提到的效果,即使是音乐和舞蹈匹配的pair,也不能达到很好效果。
原作者说loss可以降到1e-5 ~ 1e-6,但我用他们的代码训练,只能到1e-4左右

我也没搞清楚怎么回事。另外我没有太搞清楚metric计算的Protocol,为什么计算FID的时候是和整个数据集groundtruth做,不是只和测试集。另外就是为什么extract feature的脚本里面有 * 10把数据重复10次的操作。

*10 数据重复操作,是把音乐和视频,随机匹配,然后作为测试数据

from mint.

by2101 avatar by2101 commented on September 3, 2024

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

FIDk/FIDg,这2个参数,我用作者提供的checkpoint跑出来的结果计算,没什么问题,跟论文上写的差不多,只是转换为FBX可视化的动画效果,有点乱,达不到论文提到的效果,即使是音乐和舞蹈匹配的pair,也不能达到很好效果。
原作者说loss可以降到1e-5 ~ 1e-6,但我用他们的代码训练,只能到1e-4左右

我也没搞清楚怎么回事。另外我没有太搞清楚metric计算的Protocol,为什么计算FID的时候是和整个数据集groundtruth做,不是只和测试集。另外就是为什么extract feature的脚本里面有 * 10把数据重复10次的操作。

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

FIDk/FIDg,这2个参数,我用作者提供的checkpoint跑出来的结果计算,没什么问题,跟论文上写的差不多,只是转换为FBX可视化的动画效果,有点乱,达不到论文提到的效果,即使是音乐和舞蹈匹配的pair,也不能达到很好效果。
原作者说loss可以降到1e-5 ~ 1e-6,但我用他们的代码训练,只能到1e-4左右

我也没搞清楚怎么回事。另外我没有太搞清楚metric计算的Protocol,为什么计算FID的时候是和整个数据集groundtruth做,不是只和测试集。另外就是为什么extract feature的脚本里面有 * 10把数据重复10次的操作。

*10 数据重复操作,是把音乐和视频,随机匹配,然后作为测试数据

没太懂,这是为了把样本数弄多一点好算FID?

from mint.

CuberFan avatar CuberFan commented on September 3, 2024

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

FIDk/FIDg,这2个参数,我用作者提供的checkpoint跑出来的结果计算,没什么问题,跟论文上写的差不多,只是转换为FBX可视化的动画效果,有点乱,达不到论文提到的效果,即使是音乐和舞蹈匹配的pair,也不能达到很好效果。
原作者说loss可以降到1e-5 ~ 1e-6,但我用他们的代码训练,只能到1e-4左右

我也没搞清楚怎么回事。另外我没有太搞清楚metric计算的Protocol,为什么计算FID的时候是和整个数据集groundtruth做,不是只和测试集。另外就是为什么extract feature的脚本里面有 * 10把数据重复10次的操作。

我直接用提供的checkpoint生成,然后计算fid,也没有计算出和论文中差不多的结果。。。特别是FID_g,特别特别大。。。

FIDk/FIDg,这2个参数,我用作者提供的checkpoint跑出来的结果计算,没什么问题,跟论文上写的差不多,只是转换为FBX可视化的动画效果,有点乱,达不到论文提到的效果,即使是音乐和舞蹈匹配的pair,也不能达到很好效果。
原作者说loss可以降到1e-5 ~ 1e-6,但我用他们的代码训练,只能到1e-4左右

我也没搞清楚怎么回事。另外我没有太搞清楚metric计算的Protocol,为什么计算FID的时候是和整个数据集groundtruth做,不是只和测试集。另外就是为什么extract feature的脚本里面有 * 10把数据重复10次的操作。

*10 数据重复操作,是把音乐和视频,随机匹配,然后作为测试数据

没太懂,这是为了把样本数弄多一点好算FID?

可以这么理解,数据量太少,同时也测试音乐和舞蹈视频不匹配的情况下生成情况

from mint.

mingdianliu avatar mingdianliu commented on September 3, 2024

你好,我也是用pytorch复刻了一遍模型,但结果一般。你的model在test dataset上的loss也能到0.0001吗?我训练了200000 iteration,test dataset的loss一直停留在0.01,training loss到0.002

from mint.

CuberFan avatar CuberFan commented on September 3, 2024

你好,我也是用pytorch复刻了一遍模型,但结果一般。你的model在test dataset上的loss也能到0.0001吗?我训练了200000 iteration,test dataset的loss一直停留在0.01,training loss到0.002

注意:参数的初始化方法非常重要,初始化正确的话,training loss可以达到0.0002的。你这个0.002,太大了,肯定不对。
另外,一个epoch的迭代次数太少了,可以把数据复制10次再进行训练。

from mint.

mingdianliu avatar mingdianliu commented on September 3, 2024

我看到原代码只有在cross_output_layer进行了参数初始化,Transformer并没有进行初始化。warm up我还没设置,我设置下试试。

我用的数据集是crossmodal_train.txt中的sequence按照论文的window大小进行split后,把window moving step设置为1后得到的数据集,每个epoch有18000个数据,不知道这样对不对。

from mint.

CuberFan avatar CuberFan commented on September 3, 2024

我看到原代码只有在cross_output_layer进行了参数初始化,Transformer并没有进行初始化。warm up我还没设置,我设置下试试。

我用的数据集是crossmodal_train.txt中的sequence按照论文的window大小进行split后,把window moving step设置为1后得到的数据集,每个epoch有18000个数据,不知道这样对不对。

你检查一下所有全连接层的默认初始化方式,似乎是不同的。
还有PositionEmbedding 和 CrossModalLayer

from mint.

CuberFan avatar CuberFan commented on September 3, 2024

是crossmodal_train.txt中的sequence按照论文的window大小进行split后,把window moving step设置

每个视频的采样,采用随机的初始位置start,你仔细看看TF源代码的迭代器

from mint.

mingdianliu avatar mingdianliu commented on September 3, 2024

感谢提醒!我来复现一下

from mint.

mingdianliu avatar mingdianliu commented on September 3, 2024

是crossmodal_train.txt中的sequence按照论文的window大小进行split后,把window moving step设置

每个视频的采样,采用随机的初始位置start,你仔细看看TF源代码的迭代器

我直接使用原作者tensorflow的代码,按照readme的步骤train了一遍。40万iteration,loss到0.0004这样。

from mint.

CuberFan avatar CuberFan commented on September 3, 2024

是crossmodal_train.txt中的sequence按照论文的window大小进行split后,把window moving step设置

每个视频的采样,采用随机的初始位置start,你仔细看看TF源代码的迭代器

我直接使用原作者tensorflow的代码,按照readme的步骤train了一遍。40万iteration,loss到0.0004这样。

loss至少要收敛到0.0001才可以

from mint.

hunting777 avatar hunting777 commented on September 3, 2024

是crossmodal_train.txt中的sequence按照论文的window大小进行split后,把window moving step设置

每个视频的采样,采用随机的初始位置start,你仔细看看TF源代码的迭代器

我直接使用原作者tensorflow的代码,按照readme的步骤train了一遍。40万iteration,loss到0.0004这样。
我也是差不多0.0004这样,而且测试demo很有问题,请问你后面有解决么

from mint.

mingdianliu avatar mingdianliu commented on September 3, 2024

是crossmodal_train.txt中的sequence按照论文的window大小进行split后,把window moving step设置

每个视频的采样,采用随机的初始位置start,你仔细看看TF源代码的迭代器

我直接使用原作者tensorflow的代码,按照readme的步骤train了一遍。40万iteration,loss到0.0004这样。
我也是差不多0.0004这样,而且测试demo很有问题,请问你后面有解决么

我后续没有解决这个问题

from mint.

Aourbro avatar Aourbro commented on September 3, 2024

本人用Pytorch复刻了一版,也增加了valid过程,结果发现,FID_k最好的是第21个epoch,为101,后面越训练,FID_k的值越大,波动比较大,也不知道什么原因。 loss值降到0.0002左右,基本就不收敛了,FID_k的值能达到7000多, FID_g的值25左右。 使用原作者tensorflow原代码,从头开始训练,loss值降到0.0001后,基本就不收敛了,FID_k的值达到700多,FID_g也就30多,也是完全复现不了原作者放出的训练好的模型。 @liruilong940607

TF: 2.3 cuda: 10.1

pytorch: 1.9.1 cuda: 10.1

阶段进展更新了,pytorch复刻版训练已经收敛,复现了原作者的指标参数,解决方法如下:

1、每一层的初始化方法与TF版保持一致,注意检查每一层的默认初始化方法 2、由于训练集只有952个视频,如果多个GPU同时训练,batch_size设置为32,那么每个epoch只包含几个迭代,建议方法是加载列表后,把列表复制10倍或20倍,这样每个epoch的迭代次数就变为原来的10倍或20倍 3、训练足够多的epoch,如果训练的时候,迭代器中把训练数据列表复制了10倍或20倍,那么loss要收敛到0.00011级别,至少训练800个epoch,0-200 epoch是lr=1e-4,200-500 epoch时lr=1e-5,500-800 是1e-6

另外,我在最后一个CrossTransformer后面,最后一个fc前面,增加了一个2层双向的LSTM,训练下来,loss收敛到0.00011左右,FIDk最小可以达到22.3,比原作者给出的指标还小,但这个指标小,并不代表着生成的舞蹈动作很好,效果如原作者给出的模型类似,只有少数几个效果还行,其他的都不怎么样。

你好,我现在也在尝试使用pytorch复现这个项目,现在遇到了一些问题,请问方便交流一下吗

from mint.

Sun-Happy-YKX avatar Sun-Happy-YKX commented on September 3, 2024

本人用Pytorch复刻了一版,也增加了valid过程,结果发现,FID_k最好的是第21个epoch,为101,后面越训练,FID_k的值越大,波动比较大,也不知道什么原因。 loss值降到0.0002左右,基本就不收敛了,FID_k的值能达到7000多, FID_g的值25左右。 使用原作者tensorflow原代码,从头开始训练,loss值降到0.0001后,基本就不收敛了,FID_k的值达到700多,FID_g也就30多,也是完全复现不了原作者放出的训练好的模型。 @liruilong940607

TF: 2.3 cuda: 10.1

pytorch: 1.9.1 cuda: 10.1

阶段进展更新了,pytorch复刻版训练已经收敛,复现了原作者的指标参数,解决方法如下:

1、每一层的初始化方法与TF版保持一致,注意检查每一层的默认初始化方法 2、由于训练集只有952个视频,如果多个GPU同时训练,batch_size设置为32,那么每个epoch只包含几个迭代,建议方法是加载列表后,把列表复制10倍或20倍,这样每个epoch的迭代次数就变为原来的10倍或20倍 3、训练足够多的epoch,如果训练的时候,迭代器中把训练数据列表复制了10倍或20倍,那么loss要收敛到0.00011级别,至少训练800个epoch,0-200 epoch是lr=1e-4,200-500 epoch时lr=1e-5,500-800 是1e-6

另外,我在最后一个CrossTransformer后面,最后一个fc前面,增加了一个2层双向的LSTM,训练下来,loss收敛到0.00011左右,FIDk最小可以达到22.3,比原作者给出的指标还小,但这个指标小,并不代表着生成的舞蹈动作很好,效果如原作者给出的模型类似,只有少数几个效果还行,其他的都不怎么样。

您好,请问一下您方便分享一下您复现代码的仓库吗

from mint.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.