Skip to content

A CNN implementation in NumPy and PyTorch scripts for experimental work comparing striding and dilation

Notifications You must be signed in to change notification settings

DWhettam/Exploring_Convolutional_Networks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Exploring Convolutional Networks

This repo consists of work implenting CNN's and exploring ways of modelling context in CNN's for an assignment for Edinburgh University's Machine Learning Practical course. The framework used in this project is provided by the University and can be found on GitHub, including complete setup instructions.

The majority of work showcased in this repo is within /mlp/layers.py, including NumPy implementations of f-prop, b-prop and max pooling. Experiments were also conducted within a PyTorch framework comparing the effects of striding and dilation. The PyTorch scripts can be found in /mlp/pytorch_experiment_scripts, and some example experiments can be seen in run-experiments.sh. The experiments found dilation to be more effective at modelling context in CNN's, primarily caused by it's ability to rapidly expand its receptive field. However, if not suitable regularised, both dilation and stride were likely to overfit, giving similar performance for each. A full discussion of results can be seen in the report or this blog post.

About

A CNN implementation in NumPy and PyTorch scripts for experimental work comparing striding and dilation

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published