  Automatic speech recognition (ASR) is a key area in computational
linguistics, focusing on developing technologies that enable computers to
convert spoken language into text. This field combines linguistics and machine
learning. ASR models, which map speech audio to transcripts through supervised
learning, require handling real and unrestricted text. Text-to-speech systems
directly work with real text, while ASR systems rely on language models trained
on large text corpora. High-quality transcribed data is essential for training
predictive models. The research involved two main components: developing a web
application and designing a web interface for speech recognition. The web
application, created with JavaScript and Node.js, manages large volumes of
audio files and their transcriptions, facilitating collaborative human
correction of ASR transcripts. It operates in real-time using a client-server
architecture. The web interface for speech recognition records 16 kHz mono
audio from any device running the web app, performs voice activity detection
(VAD), and sends the audio to the recognition engine. VAD detects human speech
presence, aiding efficient speech processing and reducing unnecessary
processing during non-speech intervals, thus saving computation and network
bandwidth in VoIP applications. The final phase of the research tested a neural
network for accurately aligning the speech signal to hidden Markov model (HMM)
states. This included implementing a novel backpropagation method that utilizes
prior statistics of node co-activations.
