Hacker News new | ask | show | jobs
by lacker 2111 days ago
IMO calling it "convolution" in deep learning is extra confusing, because the word "convolution" means many fairly different things in other contexts.

The idea behind convolution in deep learning is that, if a particular pattern of pixels is meaningful, then it is probably also meaningful if you shift the whole thing in some direction. So you can force some layers of the network to be the same under translation, and it'll be faster to pick up some sorts of patterns.

2 comments

You didn't explain why its faster though.

It's faster because its reduces the dimensionality of the inputs down to something manageable (hundreds or low thousands). You can replace convolutions with most other types of dimensionality reduction (including other types of layers) and outside of image tasks you'll get very similar or even better performance.

I wonder if that’d work by doing a 2d Fourier transformer on an image before hand, but you’re not reducing dimensionally that way.
Convolution has been an established term in image processing long before convnets were invented in the 90s (or 80s or whenever). It's the same thing. It's useful to learn a bit of basic image processing, edge detection etc before jumping straight into the flashiest shiniest DL model with no basic foundations to conceptualize what is happening.

(Even before that it has been used in signal processing.)