/
glebestraikh
/
adept
Обзор
Документация
Войти
/
glebestraikh
/
adept
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/conv_utils.cpp
34 строки
2 KB
kolkir
Implement generic backprop tests for Conv2d
16 май 2025, 23:37
16 май 2025, 23:37
ec8923f
Код
Авторство
О чём код?
#include <adept/conv_utils.hpp> namespace adept { std::vector<index_t> conv2d_out_size(const Shape& input_size, const ParamArray<2>& kernel_size, const ParamArray<2>& stride_size, const ParamArray<2>& padding_size, const ParamArray<2>& dilation_size) { std::vector<index_t> sizes; for (size_t i = 0; i < 2; ++i) { sizes.push_back((input_size.dim(i + input_size.rang() - 2) + 2 * padding_size[i] - (dilation_size[i] * (kernel_size[i] - 1)) - 1) / stride_size[i] + 1); } return sizes; } std::vector<index_t> transposed_conv2d_out_size(const Shape& input_size, const ParamArray<2>& kernel_size, const ParamArray<2>& stride_size, const ParamArray<2>& padding_size, const ParamArray<2>& output_padding_size, const ParamArray<2>& dilation_size) { std::vector<index_t> sizes; for (size_t i = 0; i < 2; ++i) { auto in_size = input_size.dim(i + input_size.rang() - 2); sizes.push_back((in_size - 1) * stride_size[i] - 2 * padding_size[i] + (dilation_size[i] * (kernel_size[i] - 1) + 1) + output_padding_size[i]); } return sizes; } } // namespace adept