Coder Social home page Coder Social logo

mind-neural-decoder's Introduction

MIND-neural-decoder

This repository contains the official TensorFlow implementation of the following paper:

MIND: Maximum Mutual Information Based Neural Decoder - https://ieeexplore.ieee.org/document/9895352

If you use the repository for your experiments, please cite the paper.

The paper presents a neural decoding strategy that is based on the mutual information maximization, denoted as MIND. MIND is a simple feedforward neural network trained to estimate density-ratios and the mutual information. By design, it can provide estimates of the following quantities:

  • A-posteriori probabilities
  • Bit-error-rate
  • Probability of error
  • Entropy of the source
  • Conditional entropy
  • Mutual information

The sample code is developed for the supervised approach (see the paper) and for binary modulation schemes but can easily be extended to M-PAM, M-QAM and more. Coding strategies such as repetition, hamming and convolutional codes are described in the original paper and can be implemented. MIND considers also channel non-linearities.

Two noise options are available to train your own MIND model:

  • AWGN
  • Middleton

To train and test a decoder of binary AWGN noisy samples use the following command

python MIND.py

To train and test a decoder of received samples affected by truncated Middleton noise (a.k.a. Bernoulli-Gaussian) with K=5, use the following command

python MIND.py --noise Middleton

Training and testing parameters such as training epochs, batch and test sizes can be given as input

python MIND.py --epochs 500 --batch_size 32 --test_size 10000

mind-neural-decoder's People

Contributors

nuletizia avatar tonellolab avatar

Stargazers

 avatar

Forkers

mseif2016

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.