Trên GitHub, alphacep/vosk đã đạt 503 sao, nhóm Backend, ngôn ngữ C. VOSK Speech Recognition Toolkit
Tóm tắt dựng từ metadata GitHub của chính dự án — chưa có bài review TopGit. Trang sẽ tự động cập nhật khi bài review đầy đủ được xuất bản.
VÌ SAO CHƯA CÓ REVIEW
TopGit viết bài đầy đủ cho repo có nhiều sao nhất và được yêu cầu nhiều nhất. Trang này là snapshot trong thời gian chờ — xem README gốc ở tab READ ME.
For Kaldi API for Android and Linux please see Vosk API. This is a server project.
This is Vosk, the lifelong speech recognition system.
Concepts
As of 2019, the neural network based speech recognizers are pretty
limited in terms of amount of the speech data they can use in training
and require enormous computing power and time to train and optimize the
parameters. Neural networks have problems with human-like one shot
learning, their decisions are not very robust to unseen conditions and
hard to understand and correct.
That is why we decided to build a system based on large signal database
concept. We apply audio fingerprinting scheme. The audio is segmented on
chunks, the chunks are stored in the database based on LSH hash value.
During decoding we simply lookup the chunks in the database to get the
idea what are the possible phones. That helps us to make a proper decision
on decoding results.
The advantages of this approach are:
We can quickly train on 100000 hours of speech data on very simple hardware
We can easily correct recognizer behavior just by adding samples
We can make sure that recognition result is correct because it is sufficiently
represented in the training dataset
We can parallelize training across thousands of nodes
We support lifelong learning paradigm
We can use this method together with more common neural network training to improve recognition accuracy
The system is robust against noise
The disandvantages are:
The index is really huge, it is not expected to fit a memory of single server
The generalization capabilities of the model are quite questionable, at the same time
the generalization capabilities of the neural networks are also questionable.
For now the segmentation requires conventional ASR, but in the future we might segment ourselves.
The nice to have things in the future would be:
Multilingual training
Our own segmentation
The tool to reduce the model to fit the mobile
Specialized hardware to implement this AI paradigm
Usage
To install the requirements run
pip3 install -r requirements.txt
To prepare the training/verification data create the following two files:
wav.scp list to map uterances to wav files in filesystem
phones.txt the CTM file with phonemes and timings. It could be CTM file from the alignment or
it could be a CTM file from the decoding
The tool will search for segments in the index and report suspicious
segments which you can additionally check and later add to the database
to improve the accuracy of recognition.
Related papers and links
VOSK presentation at NSU (in Russian)
Memory, Modularity, and the Theory of Deep Learnability. Google Tech Talk by Rina Panigrahy shows importance of memory for learning complex functions.
Large Language Models in Machine Translation by Thorsten Brants at al. Google's paper on simple backoff terascale LM.
Deep Learning of Binary Hash Codes for Fast Image Retrieval by Kevin Lin at al. a nice deephash implementation
Episodic Memory in Lifelong Language Learning
Extreme Classification in Log Memory using Count-Min Sketch: A Case Study of Amazon Search with 50M Products
On-device Supermarket Product Recognition Google's good example of kNN for mobile search
Hash-Routed Neural Networks Great idea and solid math
Towards Lifelong Learning of End-to-end ASR Methods get more publicity
Building Scalable, Explainable, and Adaptive NLP Models with Retrieval
Continual Learning for Monolingual End-to-End Automatic Speech Recognition
Mammoth - An Extendible (General) Continual Learning Framework for Pytorch
Progressive Continual Learning for Spoken Keyword Spotting
Online Continual Learning of End-to-End Speech Recognition Models
Có — alphacep/vosk phát hành theo license Apache-2.0, nghĩa là mã nguồn mở để đọc, fork và (tùy license) tái sử dụng. Mã: github.com/alphacep/vosk.
alphacep/vosk có trang demo không?
Dự án có trang chủ ở http://alphacephei.com. Tab "Readme" ở trang này thường có ảnh chụp và hướng dẫn bắt đầu nhanh.
alphacep/vosk dùng license gì?
alphacep/vosk phát hành theo license Apache-2.0. Nên mở file LICENSE trên GitHub để xác nhận — license metadata đôi khi lệch với thực tế dự án.
alphacep/vosk là gì?
alphacep/vosk (alphacep/vosk) là dự án C trên GitHub. Theo mô tả gốc: VOSK Speech Recognition Toolkit
Cùng nhóm Backend còn repo nào?
alphacep/vosk thuộc nhóm Backend trên TopGit, cùng 7 topic GitHub. Trang Trending và Topics liệt kê các repo cùng số sao và cùng ngôn ngữ để so sánh.
Đọc thêm về alphacep/vosk ở đâu?
Trang TopGit này là một snapshot — tab "Readme" hiển thị nguyên văn README của repo (đã bỏ link, giữ ảnh). Repo GitHub ở github.com/alphacep/vosk là nguồn chính thức.
Vì sao alphacep/vosk được xếp vào nhóm Backend?
TopGit xếp alphacep/vosk vào nhóm Backend dựa trên GitHub topics và mô tả của repo (gắn thẻ: "lifelong-learning", "multilingual", "python"). Việc phân loại dựa trên metadata thật của repo, không phải đoán theo cảm tính biên tập.
Đọc đầy đủ README ở tab phía trên.
Chưa chắc vosk có hợp với bạn?
Để ChatGPT, Claude hoặc Perplexity tìm hiểu giúp — bấm bên dưới và xem AI nói gì về vosk.