BP Neural Network for Speech Recognition

Implement FFT and Backpropagation from scratch for a summer project during junior

Introduction

This project was my capstone project as a junior student and marked the first time I applied the mathematical knowledge I had learned from textbooks to a practical application. I implemented the Fast Fourier Transform (FFT) from scratch to construct voice spectrum features, studied research papers on artificial neural networks, and independently wrote the complete code for the network, including the backpropagation (BP) algorithm. To complement the project, I developed an intuitive and visually appealing software tool with a simple yet elegant GUI to visualize training data. The software also included functionality to generate simulated data for testing the Artificial Neural Network (ANN) and BP algorithm.

Moreover, I implemented three different BP algorithms: the traditional BP, a refined BP with a linear activation response function, and an advanced version using an annealing algorithm to avoid local minima. The project took approximately two months to complete. The moment everything worked and the program successfully recognized the input voice, I couldn’t help but scream with excitement! 😊

Screenshot