Почему преобразование в im2col происходит быстро? - PullRequest
0 голосов
/ 29 февраля 2020

Исходные активации ввода при go преобразовании ядра через im2col для улучшения шаблонов доступа к памяти. Но когда мы конвертируем исходную матрицу в матрицу im2col, мы также получаем доступ к тем же оригинальным паттернам памяти. Итак, почему сама операция im2col не медленная?

1 Ответ

0 голосов
/ 02 марта 2020

Основная причина im2col заключается в том, что вход и ядра могут быть представлены в виде двух больших матриц, а свертка может быть выполнена в умножении одной матрицы. Это ускоряет процесс, потому что умножение матриц может быть очень хорошо распараллелено.

Только доступ к памяти не является проблемой, и, как вы сказали, im2col должен обращаться к исходным тензорам так же, как и простая операция свертки.

...