Skip to content

cemac/LIFD_ConvolutionalNeuralNetworks

Repository files navigation

Leeds Institute for Fluid Dynamics Machine Learning For Earth Sciences

Convolutional Neural Networks

GitHub release GitHub top language GitHub issues GitHub last commit GitHub All Releases GitHubDOI

LIFD_ConvolutionalNeuralNetworks

This notebook explores Convolutional Neural Networks to detect and categorise Volcanic deformation. To cater for low performance machines additional pre-made models and processed data are provided making this repository 3.1G. Therefore it's advised to read the installation instructions below for a parallel git-clone. No binder link is provided as the datasets used are too large for the free tier.

Recommended Background Reading

If you are unfamiliar with some of the concepts covered in this tutorial it's recommended to read through the background reading below either as you go through the notebook or beforehand.

Quick look

If you want a quick look at the contents inside the notebook before deciding to run it please view the md file generated (note some HTML code not rendered fully)

Quick start

If you're already familiar with git, anaconda and virtual environments the environment you need to create is found in CNN.yml and the code below to install activate and launch the notebook. The .yml file has been tested on the latest linux, macOS and windows operating systems.

git clone  --recurse-submodules -j8 git@github.com:cemac/LIFD_ConvolutionalNeuralNetworks.git
cd LIFD_ConvolutionalNeuralNetworks
wget -O data.tar.gz https://github.com/cemachelen/LIFD_ML_LARGE_FILE_STORE/archive/refs/tags/0.1-alpha.tar.gz
tar -xvf data.tar.gz
cp -rp LIFD_ML_LARGE_FILE_STORE-0.1-alpha/ConvolutionalNeuralNetworks/synthetic_data/*.pkl data/synthetic_data/
conda env create -f CNN.yml # Use the CNN_windows.yml if on windows machine
conda activate CNN
jupyter-notebook

Installation and Requirements

This notebook is designed to run on a laptop with no special hardware required therefore recommended to do a local installation as outlined in the repository howtorun and jupyter_notebooks sections.

These notebooks require some additional data from the VolcNet repository.

If you have cloned already without the --recurse flag then in your gitbash or terminal please run the following code in the LIFD_ENV_ML_NOTEBOOKS directory via the terminal(mac or Linux) or git bash (windows)

git submodule init
git submodule update --init --recursive

If this does not work please clone the VolcNet repository into your ConvolutionalNeuralNetworks folder on your computer

Some data files are also required and instructions to do this are given above in a wget command. The notebook will also prompt you to do this.

Licence information

Creative Commons License
LIFD_ENV_ML_NOTEBOOKS by cemac is licensed under a Creative Commons Attribution 4.0 International License.

Acknowledgements

Thanks to Matthew Gaddes for the basis of this tutotial. This tutorial is part of the LIFD ENV ML NOTEBOOKS please refer to for full acknowledgements.