-
Notifications
You must be signed in to change notification settings - Fork 23
Description
🚀 Feature Proposal: Visualising the effect of various kernels in a Convolutional Neural Network
📌 Summary
Kernels play a very important role in convolution similar to that of weights in the case of regular neural networks. They help extract different features of an image. I propose the following features:
- Users can upload their own image
- Users can choose the size of the kernel matrix
- Certain pre-defined kernels to extract the edges, vertices can be provided. This will help the user with basic visualisation
🎯 Motivation
Images are an important part of deep learning. Providing an option to visualise the convolution operation and the effect of kernels can help strengthen AlgoLab's position as an interactive machine learning framework.
🛠 Proposed Features
- Image Input
The image can either be an input from the user or the image can be obtained from the internet. - Kernel Input
The user can choose to use a default kernel for a particular purpose or can play around with the same. - Output Visualisation
The output image after convolution with the kernel is shown to the user.
This can be included under the "Deep Learning Section" proposed in Issue#47.
📊 Example Workflow
- User uploads an image
- User chooses the kernel they want to use
- AlgoLab performs the convolution operation internally and visualises the same.
This feature can also be extended to other operations frequently used in Convolution Neural Networks like Max Pooling, Average Pooling and so on. Additionally the image after convolution at different depths of a CNN can also be visualised. This will help amateur learners strengthen their conceptual understanding.