Hey, thanks for creating this. Not sure if you're ready for public comments yet, but, here are a couple things I notice:
Your README.md contains a typo: I think "layers_test" should instead read "test_layers":
$ python -m test.layers_test
/opt/anaconda/envs/py35/bin/python: No module named test.layers_test
$
$ python -m test.test_layers
original size: torch.Size([1, 50800, 1])
Padding: 12, 1, 11.0
Traceback (most recent call last):
File "/opt/anaconda/envs/py35/lib/python3.5/runpy.py", line 184, in _run_module_as_main
"main", mod_spec)
File "/opt/anaconda/envs/py35/lib/python3.5/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/shawley/fast-wavenet.pytorch/test/test_layers.py", line 12, in
print("dilate1 size: {}".format(sig.size()))
AttributeError: 'tuple' object has no attribute 'size'
Seems that the dilate() routine is returning a different object than expected. When I output sig after the dilate call, as in..
print("original size: {}".format(sig.size()))
sig = dilate(sig, 12)
print("sig = ",sig)
print("dilate1 size: {}".format(sig.size()))
what I see is...
sig = (Variable containing:
( 0 ,.,.) =
0.0000e+00
0.0000e+00
0.0000e+00
⋮
0.0000e+00
0.0000e+00
0.0000e+00
( 1 ,.,.) =
0.0000e+00
0.0000e+00
0.0000e+00
⋮
0.0000e+00
0.0000e+00
0.0000e+00
( 2 ,.,.) =
0.0000e+00
0.0000e+00
0.0000e+00
⋮
0.0000e+00
0.0000e+00
0.0000e+00
...
( 9 ,.,.) =
0.0000e+00
0.0000e+00
0.0000e+00
⋮
0.0000e+00
0.0000e+00
0.0000e+00
( 10 ,.,.) =
0.0000e+00
0.0000e+00
0.0000e+00
⋮
0.0000e+00
0.0000e+00
0.0000e+00
( 11 ,.,.) =
6.5536e+04
1.3107e+05
6.5536e+04
⋮
-3.9977e+06
-4.8497e+06
-2.9491e+06
[torch.FloatTensor of size 12x50800x1]
, 11.0)
Traceback (most recent call last):
File "/opt/anaconda/envs/py35/lib/python3.5/runpy.py", line 184, in _run_module_as_main
"main", mod_spec)
File "/opt/anaconda/envs/py35/lib/python3.5/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/shawley/fast-wavenet.pytorch/test/test_layers.py", line 15, in
print("dilate1 size: {}".format(sig.size()))
AttributeError: 'tuple' object has no attribute 'size'
Not sure how to fix that. Just found your code while searching for a PyTorch version of WaveNet to play around with. I'll be happy to contribute once I learn a little more PyTorch.