Only Conv2D exists. Conv1D is useful for sequence/time-series data (e.g., IMDB
sentiment classification).
Task
Following the pattern of nn/layers/conv2d.v and nn/internal/conv2d.v:
- Add
nn/layers/conv1d.v — Conv1D layer (in_channels, out_channels, kernel_size, stride, padding)
- Add
nn/internal/conv1d.v — CPU forward/backward kernels (im2col 1D or direct loop)
- Add Conv1D autograd gate
Verification
- Conv1D forward matches PyTorch (
nn.Conv1d) for same weights
- Gradient check passes
Only Conv2D exists. Conv1D is useful for sequence/time-series data (e.g., IMDB
sentiment classification).
Task
Following the pattern of
nn/layers/conv2d.vandnn/internal/conv2d.v:nn/layers/conv1d.v— Conv1D layer (in_channels, out_channels, kernel_size, stride, padding)nn/internal/conv1d.v— CPU forward/backward kernels (im2col 1D or direct loop)Verification
nn.Conv1d) for same weights