Giter Club home page Giter Club logo

hypelcnn's Introduction

HypeLCNN Overview

This repository includes source codes for paper "A Deep Learning Classification Framework with Spectral and Spatial Feature Fusion Layers for Hyperspectral and Lidar Sensor Data"

Developed using Tensorflow 1.x(Tested on version 1.10 to 1.15). This repository includes a complete suite for hyperspectral and lidar, neural net based classification. Primary features :

  • Support for hyperparameter estimation
  • Plug-in based neural network implementation( via NNModel interface )
  • Plug-in based data set integration( via DataLoader interface )
  • Data efficient implementations for training( memory efficient/in-memory/record based )
  • Ability to use data set integration in classic machine learning methods
  • Training, classification and metrics integration for neural networks
  • Sample implementations for capsule network and neural networks
  • CPU/GPU/TPU(work in progress) based training
  • GAN based data augmenter integration
  • Cross fold validation support

Source codes can be used for best practices of applying tensorflow in training large data sets, integrating metrics, merging two different neural networks for data augmentation

NOTE : Data set files are too large to commit on repository.

Requirements

Work with Python 3.6. Library requirements are placed in "requirements.txt".

Source Files

  • PHD.ipynb : A sample notebook for executing the developed neural network application
  • NNModel.py : Neural Network definition interface, provides methods for declaring loss function, base parameter values, hyper parameter value range
  • CNNModelv2.py : Model declaration source code for CNN Model V2
  • CNNModelv4.py : Model declaration source code for CNN Model V4 ( Primary network model(HypeLCNN) for the paper )
  • CNNModelv5.py : Model declaration source code for CNN Model V5 ( Dual CNN )
  • CAPNModelv2.py : Capsule Network Model v2
  • class_ml_trainer : SVM and Random Forest Classifier implementation using scikit-learn
  • DataImporter.py : DataImporter interface class
  • InMemoryImporter.py : Tensorflow(1.x)-Placeholder based in memory data importer(fastest but memory inefficient implementation)
  • GeneratorImporter.py : Tensorflow(1.x)-Generator based data importer(memory efficient but slower than in memory implementation
  • TFRecordImporter.py : Tensorflow(1.x)-TFRecord based data importer. TFRecord files can be created using utilities\tfrecord_writer.py
  • DataLoader.py : DataLoader interface class, used for integrating different data sets to the training/inference system
  • GRSS2013DataLoader.py : GRSS2013 data set loader implementation
  • GRSS2018DataLoader.py : GRSS2018 data set loader implementation
  • GULFPORTDataLoader.py : Gulfport data set loader implementation
  • deep_classification_gpu.py : Main training execution class
  • load_checkpoint_calc_accuracy : Loads a checkpoint file and performs scene classification using a dataset
  • monitored_session_runner.py : Tensorflw(1.x) Monitored session runner implementation
  • *.json : Parameter value files
  • utilities\cycle_gann_inference : Gan inference implementation
  • utilities\cycle_gann_training : Gan training runner
  • utilities\tfrecord_writer : TF record generator from samples

In progress

  • Data set file commit
  • Source code documentation
  • Refactoring for cleaner code
  • TF 2.x/Pytorch implementation

hypelcnn's People

Contributors

aligokalppeker avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.