Convolution

Resources

Main Idea

The convolution is an Operator mapping from two functions to another, on the same domain. For two functions f and g both mapping RdR it is defined as

(fg)(x)=Rdf(y)g(xy)dy.

This is well-defined for a variety of conditions, such as

The function g is often referred to as the Kernel. In many applications, this operation is discretized, such as in Convolutional Neural Networks, which are actually cross-correlations (f(x)g(x)=f(x)g(x)). The discrete convolution for d=1 can be given as

(fg)(xj)=if(xi)g(xjxi),

(possibly off by a constant based on Δx), also requiring boundary conditions for i to have a finite range.

Properties