ZiangLong / LPCNet_pytorch

A Pytorch version of LPCNet, including dump weight
30 stars 14 forks source link

help #1

Open sundekai opened 2 years ago

sundekai commented 2 years ago

请问数据处理后是这样么 data shape:(3200000000,) features shape:(180000000,) 这样执行下去代码会报错:

Traceback (most recent call last): File "/Users/bytedance/Desktop/mywork/lpcnet/main.py", line 33, in dataloader = get_data(pcm_file, feature_file) File "/Users/bytedance/Desktop/mywork/lpcnet/utils.py", line 30, in get_data features = np.reshape(features, (nb_frames*feature_chunk_size, nb_features))* File "<__array_function__ internals>", line 6, in reshape File "/Users/bytedance/opt/anaconda3/envs/lpcnet/lib/python3.7/site-packages/numpy/core/fromnumeric.py", line 298, in reshape return _wrapfunc(a, 'reshape', newshape, order=order) File "/Users/bytedance/opt/anaconda3/envs/lpcnet/lib/python3.7/site-packages/numpy/core/fromnumeric.py", line 57, in _wrapfunc return bound(args, kwds) ValueError: cannot reshape array of size 180000000 into shape (4999995,55)

sundekai commented 2 years ago

感谢您的复现工作 请问这个torch代码有经过测试么,为什么我的loss值下降的非常缓慢,期待您的回复

ZiangLong commented 2 years ago

您好,此代码和原版差不多都要训练120个epoch。Learning rate 是指数下降的,Loss的下降也是先快后慢,我自己的实验数据如下,仅供参考。 1 Epoch Loss 3.0518 2 Epoch Loss 2.8765 3 Epoch Loss 2.8402 4 Epoch Loss 2.8101 5 Epoch Loss 2.8025 6 Epoch Loss 2.8103 7 Epoch Loss 2.7941 8 Epoch Loss 2.7875 9 Epoch Loss 2.7758 10 Epoch Loss 2.7684 ...... 113 Epoch Loss 2.7042 114 Epoch Loss 2.7043 115 Epoch Loss 2.7041 116 Epoch Loss 2.7040 117 Epoch Loss 2.7038 118 Epoch Loss 2.7037 119 Epoch Loss 2.7036 120 Epoch Loss 2.7035

ZiangLong commented 2 years ago

请问数据处理后是这样么 data shape:(3200000000,) features shape:(180000000,) 这样执行下去代码会报错:

Traceback (most recent call last): File "/Users/bytedance/Desktop/mywork/lpcnet/main.py", line 33, in dataloader = get_data(pcm_file, feature_file) File "/Users/bytedance/Desktop/mywork/lpcnet/utils.py", line 30, in get_data features = np.reshape(features, (nb_frames*feature_chunk_size, nb_features)) File "<array_function* internals>", line 6, in reshape File "/Users/bytedance/opt/anaconda3/envs/lpcnet/lib/python3.7/site-packages/numpy/core/fromnumeric.py", line 298, in reshape return _wrapfunc(a, 'reshape', newshape, order=order) File "/Users/bytedance/opt/anaconda3/envs/lpcnet/lib/python3.7/site-packages/numpy/core/fromnumeric.py", line 57, in _wrapfunc return bound(args, kwds) ValueError: cannot reshape array of size 180000000 into shape (4999995,55)

这是由于版本更新导致的问题,使用旧版本的dump_data则不会出现此问题。

sgjh666 commented 2 years ago

您好,请问您当时对应的旧版本是回退到哪一个commit的呢,我尝试了之前的旧版本,最终训练的loss从5.2左右经过训练下降到4.0左右,但使用test生成的语音效果非常差,主要表现为幅值超限严重,请问您这边有遇到过这样的问题吗?

Kristopher-Chen commented 2 years ago

这是由于版本更新导致的问题,使用旧版本的dump_data则不会出现此问题。

请问是基于哪个分支的呢

Kristopher-Chen commented 2 years ago

您好,请问您当时对应的旧版本是回退到哪一个commit的呢,我尝试了之前的旧版本,最终训练的loss从5.2左右经过训练下降到4.0左右,但使用test生成的语音效果非常差,主要表现为幅值超限严重,请问您这边有遇到过这样的问题吗?

类似的现象,搞定了吗

sgjh666 commented 2 years ago

您好,请问您当时对应的旧版本是回退到哪一个commit的呢,我尝试了之前的旧版本,最终训练的loss从5.2左右经过训练下降到4.0左右,但使用test生成的语音效果非常差,主要表现为幅值超限严重,请问您这边有遇到过这样的问题吗?

类似的现象,搞定了吗

我换了一个新的足够大的语料库,然后把源程序中反复读取进行数据增强的部分给去掉了,现在的效果比较正常了,推测可能是由于数据增强中的随机增益倍数太大导致的

Kristopher-Chen commented 2 years ago

你现在是用的哪个版本做得

sgjh666 commented 2 years ago

你现在是用的哪个版本做得

忘记了,对照这里的上传时间找的mozilla那边的git回退回去在那个时间之前的版本

Kristopher-Chen commented 2 years ago

你现在是用的哪个版本做得

忘记了,对照这里的上传时间找的mozilla那边的git回退回去在那个时间之前的版本

有空帮忙git branch,多谢

然后你说的‘把源程序中反复读取进行数据增强的部分给去掉了‘具体指的是什么?,只是把这个计数去掉了吗 if (count*FRAME_SIZE_5MS>=10000000 && one_pass_completed) break;

sgjh666 commented 2 years ago

你现在是用的哪个版本做得

忘记了,对照这里的上传时间找的mozilla那边的git回退回去在那个时间之前的版本

有空帮忙git branch,多谢

然后你说的‘把源程序中反复读取进行数据增强的部分给去掉了‘具体指的是什么?,只是把这个计数去掉了吗 if (count*FRAME_SIZE_5MS>=10000000 && one_pass_completed) break;

大概是去年二月份还是一月份的版本,除了这个循环计数去掉之外,我把里面的随机增益,就是计算gain的部分给注释掉了

Kristopher-Chen commented 2 years ago

话说数据集换了的话,稀疏的那几个参数需要怎么配置呢,原始的话可能10个epoch就到了

sgjh666 commented 2 years ago

话说数据集换了的话,稀疏的那几个参数需要怎么配置呢,原始的话可能10个epoch就到了

我没有改其他的东西,只是把epochs调大了,因为我初始的loss会在5.2左右需要更多的轮数,不知道为什么大家的第一轮都只有3左右

Kristopher-Chen commented 2 years ago

话说数据集换了的话,稀疏的那几个参数需要怎么配置呢,原始的话可能10个epoch就到了

我没有改其他的东西,只是把epochs调大了,因为我初始的loss会在5.2左右需要更多的轮数,不知道为什么大家的第一轮都只有3左右

我也是,第一轮5.3,跑了二三十轮还有4.6

StanislavJochman commented 1 year ago

If someone is still having this issue solution is following:

  1. Go to https://github.com/xiph/LPCNet/ and clone repo
  2. Before running anything do git checkout -b new_branch 2139eb3
  3. Run everything according to Readme.md
  4. Success
uuuuuvp commented 1 month ago

话说数据集换了的话,稀疏的那几个参数需要怎么配置呢,原始的话可能10个epoch就到了

我没有改其他的东西,只是把epochs调大了,因为我初始的loss会在5.2左右需要更多的轮数,不知道为什么大家的第一轮都只有3左右

我也是,第一轮5.3,跑了二三十轮还有4.6

我跑了120个epoch,最后还是5.1,已经懵圈了

uuuuuvp commented 3 weeks ago

_libgcc_mutex 0.1 conda_forge conda-forge _openmp_mutex 4.5 2_gnu conda-forge ca-certificates 2024.7.4 hbcca054_0 conda-forge certifi 2024.7.4 pypi_0 pypi charset-normalizer 3.3.2 pypi_0 pypi idna 3.7 pypi_0 pypi ld_impl_linux-64 2.40 hf3520f5_7 conda-forge libffi 3.4.2 h7f98852_5 conda-forge libgcc-ng 14.1.0 h77fa898_0 conda-forge libgomp 14.1.0 h77fa898_0 conda-forge libnsl 2.0.1 hd590300_0 conda-forge libsqlite 3.46.0 hde9e2c9_0 conda-forge libstdcxx-ng 14.1.0 hc0a3c3a_0 conda-forge libzlib 1.3.1 h4ab18f5_1 conda-forge ncurses 6.5 h59595ed_0 conda-forge numpy 1.21.6 pypi_0 pypi nvidia-cublas-cu11 11.10.3.66 pypi_0 pypi nvidia-cuda-nvrtc-cu11 11.7.99 pypi_0 pypi nvidia-cuda-runtime-cu11 11.7.99 pypi_0 pypi nvidia-cudnn-cu11 8.5.0.96 pypi_0 pypi openssl 3.3.1 h4bc722e_2 conda-forge pillow 9.5.0 pypi_0 pypi pip 24.0 pyhd8ed1ab_0 conda-forge python 3.7.12 hf930737_100_cpython conda-forge readline 8.2 h8228510_1 conda-forge requests 2.31.0 pypi_0 pypi setuptools 69.0.3 pyhd8ed1ab_0 conda-forge sqlite 3.46.0 h6d4b2fc_0 conda-forge tk 8.6.13 noxft_h4845f30_101 conda-forge torch 1.13.1 pypi_0 pypi torchaudio 0.13.1 pypi_0 pypi torchvision 0.14.1 pypi_0 pypi tqdm 4.66.5 pypi_0 pypi typing-extensions 4.7.1 pypi_0 pypi urllib3 2.0.7 pypi_0 pypi wheel 0.42.0 pyhd8ed1ab_0 conda-forge xz 5.2.6 h166bdaf_0 conda-forge

上面是我的依赖,是因为环境问题导致loss始终降不下来吗,你们的环境又是什么呢?

uuuuuvp commented 3 weeks ago

如果有人仍然遇到此问题,解决方案如下:

  1. 转到 https://github.com/xiph/LPCNet/ 并克隆存储库
  2. 在运行任何内容之前,请执行以下操作git checkout -b new_branch 2139eb3
  3. 根据以下标准运行一切Readme.md
  4. 成功

我尝试了你的方法,没有成功