Closed fcaspe closed 6 days ago
Also linking issue #144 for visibility.
Sounds good! The stride counter idea sounds great! Feel free to push changes and I'll also take a look at that!
Attention: Patch coverage is 95.00000%
with 2 lines
in your changes missing coverage. Please review.
Project coverage is 94.76%. Comparing base (
a8ae9c5
) to head (717df48
). Report is 4 commits behind head on main.
Files with missing lines | Patch % | Lines |
---|---|---|
RTNeural/torch_helpers.h | 89.47% | 2 Missing :warning: |
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Alright, I think I've made all the changes that I want to make... Still need to do a pass for cleanup and documentation, but if @fcaspe wants to have another look and make sure I didn't mess things up too bad, that would be much appreciated :).
Just reviewed. The 'StridedConv1d` class is a good idea. The examples look good and cleaner than mine. I also tried on the conv models I am developing and they are working ok with this new version!
@fcaspe Awesome! I'm going to go ahead and merge this PR.
Hi Jatin!
This library is really awesome, I have been using it for low latency inference of big convolutional autoencoders, so I have implemented the 1d Transposed Convolution and convolutional strides.
ConvTranspose1d is implemented with RTNeural's
Conv1D
class, but a different loading function has to be called,RTNeural::torch_helpers::loadConvTranspose1D
. Seetorch_convtranspose1d_test.cpp
for an example.Conv1d strides are implemented using a
.skip()
method that performs a single stride step. This just updates the circular buffer of theConv1D
layer with the new input we jump over. For example, if strides=2 is required, then.skip()
has to be called every time after a.forward()
call is made. Seetorch_conv1d_stride_test.cpp
for an example.I know these new functionalities are not fully incorporated into the library. For instance, strides are still missing in
Conv1DT
and the non-streaming versions ofConv1D
andConv2D
. Let me know what you think about these additions and I will be happy to improve them so that hopefully they can be integrated into the library!Best, Franco