Project DelphiTensors Workshop

Ejercicio F — la convolución y sus tres modos

La convolución desliza un arreglo pequeño — el kernel o filtro — sobre uno más grande, multiplicando y sumando en cada posición. Es la operación en el corazón de toda red neuronal convolucional, y es también como funciona todo filtro de desenfoque, enfoque y detección de bordes.

x = np.array([1., 2., 3., 4., 5.]) k = np.array([1., 0., -1.]) np.convolve(x, k, 'full') # longitud 5+3-1 = 7 np.convolve(x, k, 'valid') # longitud 5-3+1 = 3 np.convolve(x, k, 'same') # longitud 5

valid usa solo las posiciones donde el kernel cabe completamente: por eso la convolución encoge una imagen en kernel_size - 1.