숟가락 그만 얹어
Causal Dilated Convolution 본문
WaveNet paper만 봐서는 어떻게 동작하는지 잘 모르겠어서 이것저것 찾아보았다.
1-D convolution에서 causal을 구현하려면 zero padding을 input의 왼쪽 side에만 붙이면 된다. (output[t]가 input[t+1:]에 영향을 받지 않게 된다) Stride가 1이면 input과 output의 shape이 같다. 논문에서의 dilation과 Pytorch에서의 dilation의 의미가 조금 다른 것 같은데, 전자는 두 step 사이의 거리를 2^(dilation)으로 정의한 것 같고 후자는 (dilation - 1)이다.
Input의 양 side에 padding을 붙이고 convolution 계산 후에 오른쪽 side를 제거할 수도 있다.
References
[1] theblog.github.io/post/convolution-in-autoregressive-neural-networks/
[2] discuss.pytorch.org/t/causal-convolution/3456/4
'Research > Operations' 카테고리의 다른 글
Spectral Normalization (0) | 2021.05.22 |
---|---|
Spectral Norm (0) | 2021.05.22 |
Weight Standardization & Batch-Channel Normalization (0) | 2020.10.26 |