All Projects → ShinoharaYuuyoru → NoiseReductionUsingGRU

ShinoharaYuuyoru / NoiseReductionUsingGRU

Licence: other
This is my graduation project in BIT. Title: Noise Reduction Using GRU.

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to NoiseReductionUsingGRU

Load forecasting
Load forcasting on Delhi area electric power load using ARIMA, RNN, LSTM and GRU models
Stars: ✭ 160 (+540%)
Mutual labels:  gru, rnn
myDL
Deep Learning
Stars: ✭ 18 (-28%)
Mutual labels:  gru, rnn
Pytorch Kaldi
pytorch-kaldi is a project for developing state-of-the-art DNN/RNN hybrid speech recognition systems. The DNN part is managed by pytorch, while feature extraction, label computation, and decoding are performed with the kaldi toolkit.
Stars: ✭ 2,097 (+8288%)
Mutual labels:  gru, rnn
See Rnn
RNN and general weights, gradients, & activations visualization in Keras & TensorFlow
Stars: ✭ 102 (+308%)
Mutual labels:  gru, rnn
STAR Network
[PAMI 2021] Gating Revisited: Deep Multi-layer RNNs That Can Be Trained
Stars: ✭ 16 (-36%)
Mutual labels:  gru, rnn
Pytorch Rnn Text Classification
Word Embedding + LSTM + FC
Stars: ✭ 112 (+348%)
Mutual labels:  gru, rnn
Haste
Haste: a fast, simple, and open RNN library
Stars: ✭ 214 (+756%)
Mutual labels:  gru, rnn
Theano Kaldi Rnn
THEANO-KALDI-RNNs is a project implementing various Recurrent Neural Networks (RNNs) for RNN-HMM speech recognition. The Theano Code is coupled with the Kaldi decoder.
Stars: ✭ 31 (+24%)
Mutual labels:  gru, rnn
rnn-theano
RNN(LSTM, GRU) in Theano with mini-batch training; character-level language models in Theano
Stars: ✭ 68 (+172%)
Mutual labels:  gru, rnn
Pytorch Seq2seq
Tutorials on implementing a few sequence-to-sequence (seq2seq) models with PyTorch and TorchText.
Stars: ✭ 3,418 (+13572%)
Mutual labels:  gru, rnn
ECGClassifier
CNN, RNN, and Bayesian NN classification for ECG time-series (using TensorFlow in Swift and Python)
Stars: ✭ 53 (+112%)
Mutual labels:  gru, rnn
ConvLSTM-PyTorch
ConvLSTM/ConvGRU (Encoder-Decoder) with PyTorch on Moving-MNIST
Stars: ✭ 202 (+708%)
Mutual labels:  gru, rnn
Gru Svm
[ICMLC 2018] A Neural Network Architecture Combining Gated Recurrent Unit (GRU) and Support Vector Machine (SVM) for Intrusion Detection
Stars: ✭ 76 (+204%)
Mutual labels:  gru, rnn
Skip Thoughts.torch
Porting of Skip-Thoughts pretrained models from Theano to PyTorch & Torch7
Stars: ✭ 146 (+484%)
Mutual labels:  gru, rnn
Rnn Notebooks
RNN(SimpleRNN, LSTM, GRU) Tensorflow2.0 & Keras Notebooks (Workshop materials)
Stars: ✭ 48 (+92%)
Mutual labels:  gru, rnn
Eeg Dl
A Deep Learning library for EEG Tasks (Signals) Classification, based on TensorFlow.
Stars: ✭ 165 (+560%)
Mutual labels:  gru, rnn
Pytorch-POS-Tagger
Part-of-Speech Tagger and custom implementations of LSTM, GRU and Vanilla RNN
Stars: ✭ 24 (-4%)
Mutual labels:  gru, rnn
Easy Deep Learning With Keras
Keras tutorial for beginners (using TF backend)
Stars: ✭ 367 (+1368%)
Mutual labels:  gru, rnn
Rnn ctc
Recurrent Neural Network and Long Short Term Memory (LSTM) with Connectionist Temporal Classification implemented in Theano. Includes a Toy training example.
Stars: ✭ 220 (+780%)
Mutual labels:  gru, rnn
tf-ran-cell
Recurrent Additive Networks for Tensorflow
Stars: ✭ 16 (-36%)
Mutual labels:  gru, rnn

NoiseReductionUsingGRU

Graduation Project Title: Noise Reduction Using GRU(RNN).

This is my graduation project in BIT, 2018.

The project based on Python 3.5 and TensorFlow 1.8.
The project learning from Noise Reduction using RNNs with Tensorflow by adityatb.
Thanks for adityatb's work!
adityatb uses LSTM to build noise reduction model.

With the development of RNN, I think GRU may be a better method.
This graduation project uses MIR-1K dataset and try to use GRU to build noise reduction model.

Introduction

This project includes 2 main part.

  1. CreateNoiseAddedDataset
    This script will add 3 kinds of noises(Brownian, Pink and White) to the clean human voice.
    If you have 1000 human voice files(MIR-1K has 1000 usable files), you will get 3000 noise added files.

  2. GRUTraining
    This is a big part including 5 scripts.

    1. CreateTestDataset.py
      In last step, we have got 3000 files.
      By this script, we randomly separate 1000 files to be used in Test process.

    2. LSTMTestTraining.py
      This script and the next script aim to check LSTM model's performance.
      To see the GRU model works or not.

      adityatb used LSTM model, but the original code has a lot of problems:
      >Python 2.x -> Python 3.x
      >Array overflow problems
      >Fourier trasformation using error
      >No Learning Rate auto change
      >...
      I solved a lot. It is hard to introduce all at here.
      Please refer to the history of git publishment.

    3. ModelTest.py
      This script will use the LSTM model trained in last script and execute 1000 test sounds.
      To listen and compare the spectrum of [clear voice], [noise added sound] and [output] to see the performance.

    4. GRUTraining.py
      This script is modified by LSTMTestTraining.py.
      Change LSTM to GRU in TensorFlow framwork is very easy.

    5. GRUModelTest.py
      This script is modified by LSTMTestTraining.py/

Execute Steps

NOTICE:The detail of the implement, please read the code, refer to the modification history.

  1. CreateNoiseAddedDataset
    Download MIR-1K dataset. Decompress the folder Wavfile. We will get 1000 wav files.
    Set all wav files into the Wavs folder.
    Run CreateNoiseAddedDataset.py.
    We will get 1000 human voice files in ./Training/HumanVoices.
    3000 noise added sounds in ./Training/NoiseAdded.

  2. GRUTraining

    1. CreateTestDataset
      Cut the ./Training folder into this part folder.
      Run CreateNoiseAddedDataset.py.
      We will get 1000 random chosen noise added files in ./Testing/NoiseAdded.
      And in ./Training/NoiseAdded will 2000 files left.

    2. GRUTraining
      Run GRUTraining.py.
      This script will train a GRU model from remaining 2000 files and corresponding pure human voice files.
      Finally we will get TensorFlow checkpoint files in ./TFCheckpoints folder.

    3. GRUModelTest
      Run GRUModelTest.py.
      We will get less than 1000 files(because some noise added files correspond to the same pure human voice file) in ./Testing/ModelOutput folder.
      You can test the model or do something else you like.

FINISH!

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].