Convolution in 1 D
Start course
1h 19m

In this course, discover convolutions and the convolutional neural networks involved in Data and Machine Learning. Introducing the concept of tensor, which is essential for everything that follows.

Learn to apply the right kind of data such as images. Images store their information in pixels, but you will discover that it is not the value of each pixel that matters.

Learning Objectives

  • Understand how convolutional neural networks are essential to the fundamentals of Data and Machine Learning.

Intended Audience


Hello and welcome to this video on one dimensional convolution. In this video we will introduce the one dimensional convolution of two arrays and also have two factions. Let's start with two arrays. Let's say, we have two arrays g and f. G is a short array of only two elements while f is a longer array of several elements. The convolution of f with g is defined as follows. We start from the left side of f and we take a short sub array with the same length as g. In this case two numbers. Then we multiply each element of g with each element of the sub array, we sum the product and store the result as the first element of our convolution array. 

Then we shift the window in f by one and again, perform a product between the new sub array and g also summing at the end. Its second value gets stored in the result as well. We can continue shifting the window and performing products and sum, until we reach the end of the array f and no more shifting is possible. We can indicate this operation with the following formula. The convolution of f with g at position n is given by the sum over another index called m of the product of f and minus m times g of m. Notice that written like this, the formula supposes an odd number of elements in the vector g, but we can always add a zero at the end of g to go from two to three elements. So, no big deal really. The convolution of two functions works in the same way. Only the sum is replaced by an integral, but it's really the same thing. 

Notice that the value of the convolution reaches its maximum when the two patterns perfectly overlap. We will use this later when we talk about 2D convolutions in images. In fact a convolution is useful to detect the position, along the array f or the function f, where there is a pattern that looks exactly like g. Again we will use this to detect patterns in images. In this video, we've introduce the convolution of two arrays and we've explained how it can be used to do pattern matching. A high value for the convolution indicates a match between the array g and the window in the array f. So, thank you for watching and see you in the next video.

About the Author
Learning Paths

I am a Data Science consultant and trainer. With Catalit I help companies acquire skills and knowledge in data science and harness machine learning and deep learning to reach their goals. With Data Weekends I train people in machine learning, deep learning and big data analytics. I served as lead instructor in Data Science at General Assembly and The Data Incubator and I was Chief Data Officer and co-­founder at Spire, a Y-Combinator-­backed startup that invented the first consumer wearable device capable of continuously tracking respiration and activity. I earned a joint PhD in biophysics at University of Padua and Université de Paris VI and graduated from Singularity University summer program of 2011.