Digital speech recognition methods, devices and media
By reviewing N frames of phoneme probability output data in the speech recognition model and implementing error correction strategies, the problems of mixed recognition and misrecognition in digital speech recognition are solved, the recognition accuracy is improved, and the real-time interaction requirements are met.
Patent Information
- Application Number
- CN202511748679.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-26
- Publication Date
- 2026-03-06
- Estimated Expiration
- 2045-11-26
AI Technical Summary
Existing technologies in digital speech recognition suffer from mixed recognition and misrecognition problems, especially for a large number of similar digital words, which are difficult to distinguish effectively, resulting in low recognition accuracy.
After acquiring the speech to be recognized and performing preliminary decoding using a speech recognition model, the phoneme probability output data of N frames are reviewed to determine whether there is a preset digital confusion type, and correction is performed based on the corresponding error correction strategy, where N is a positive integer greater than 1.
It significantly improves the accuracy of digital speech recognition, reduces mixed recognition and false recognition, adapts to different application scenarios, has strong adaptability, requires little computation, does not increase the computing power burden of devices, and meets the needs of real-time interaction.
Smart Images

Figure CN121214937B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of speech recognition technology, and in particular to a digital speech recognition method, device and medium. Background Technology
[0002] Command word recognition technology currently focuses on two approaches: classification and recognition. The former treats it as a classification problem, directly collecting a large amount of term data for training; that is, the number of categories corresponds to the number of different digits, requiring the collection of corresponding data. The latter fine-tunes a general recognition model using vertical domain data. During recognition, the model first outputs a predicted probability matrix, then decodes the target path score from the probability matrix using the target term's label as the path, determining whether the target command word exists. Classification schemes are mainly applied to scenarios with few terms and functions, allowing for a smaller model. Recognition schemes are primarily applied to scenarios with many terms and functions, demanding higher model capabilities.
[0003] In practical applications, many devices involve a wide variety of digital functions, resulting in a large number of categories for classification tasks. The more categories there are, the harder it is for the classification model to maintain consistent performance. Clearly, classification schemes cannot effectively distinguish between a large number of similar-looking digital contents. Recognition schemes can handle a large number of numbers, but their effectiveness is limited when dealing with similar words, easily leading to issues such as misidentification of target words and misidentification of words outside the target set. There is still significant room for improvement.
[0004] Therefore, how to solve the problems of mixed identification and misidentification of digital data in an efficient and low-cost manner is an urgent technical problem to be solved. Summary of the Invention
[0005] The main objective of this invention is to provide a digital speech recognition method, device, and medium, aiming to solve the technical problem of low accuracy in digital speech recognition in the prior art.
[0006] To achieve the aforementioned objective, the first aspect of this invention provides a digital speech recognition method, the method comprising:
[0007] Acquire the speech to be recognized;
[0008] The speech to be recognized is decoded using a speech recognition model to obtain preliminary recognition results;
[0009] Review the phoneme probability output data of N frames to determine whether there is a preset digital obfuscation type, where N is a positive integer greater than 1;
[0010] If present, the preliminary identification result is corrected based on the error correction strategy corresponding to the digital obfuscation type to obtain the final identification result;
[0011] If it does not exist, the preliminary identification result will be taken as the final identification result.
[0012] A second aspect of the present invention provides a computer device including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the steps of the digital speech recognition method as described in any of the preceding claims.
[0013] A third aspect of the present invention provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of the digital speech recognition method as described in any of the preceding claims.
[0014] Beneficial effects:
[0015] The present invention provides a digital speech recognition method, device, and medium that addresses the limitations of existing classification models in handling large numbers of digits, as these models are prone to digit confusion and misidentification. By reviewing N frames of phoneme probability output data, the present invention accurately identifies preset digit confusion types, such as path inclusion confusion and path position competition confusion, and provides targeted error correction, reducing digit recognition errors at their source. This is particularly effective for easily confused digit terms like "ten minutes / twenty minutes / thirty minutes," significantly improving recognition accuracy. No complex modifications to the speech recognition model architecture or large-scale retraining are required; optimization can be achieved solely through post-decoding frame review and error correction strategies, resulting in low development time and manpower costs. Parameters such as the N-value and confusion type determination criteria can be flexibly adjusted according to different application scenarios, such as edge-side offline speech recognition modules and home appliances / consumer electronic devices, demonstrating strong adaptability. By reviewing only N (N is a positive integer greater than 1) frames of phoneme probability data, the computational load is small, and the computational burden on multiple edge devices is not increased. While completing error correction, it ensures the overall response speed of speech recognition from acquiring the speech to be recognized to outputting the final result, meeting the real-time interaction needs of home appliances, consumer electronics and other devices. Attached Figure Description
[0016] Figure 1 A flowchart illustrating a digital speech recognition method according to an embodiment of the invention;
[0017] Figure 2 This is a schematic block diagram of a computer device according to an embodiment of the invention.
[0018] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation
[0019] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.
[0020] Those skilled in the art will understand that, unless specifically stated otherwise, the singular forms “a,” “an,” “the,” and “the” used herein may also include the plural forms. It should be further understood that the term “comprising” as used in this specification means the presence of features, integers, steps, operations, elements, modules, and / or components, but does not exclude the presence or addition of one or more other features, integers, steps, operations, elements, modules, components, and / or groups thereof. It should be understood that when we say an element is “connected” or “coupled” to another element, it can be directly connected or coupled to the other element, or there may be intermediate elements. Furthermore, “connected” or “coupled” as used herein can include wireless connections or wireless coupling. The term “and / or” as used herein includes all or any modules and all combinations of one or more associated listed items.
[0021] It will be understood by those skilled in the art that, unless otherwise defined, all terms used herein (including technical and scientific terms) have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains. It should also be understood that terms such as those defined in general dictionaries should be understood to have the same meaning as in the context of the prior art, and should not be interpreted in an idealized or overly formal sense unless specifically defined as herein.
[0022] In this embodiment, the aforementioned issues of mixed identification and misidentification related to numbers are explained using three real-world application examples: "ten minutes," "twenty minutes," and "thirty minutes."
[0023] 1. Mixed recognition problem:
[0024] 1.1 During recognition, since "ten minutes" is a subset of "twenty minutes" or "thirty minutes," the shorter the phoneme path during decoding, the faster the path calculation score reaches the threshold, resulting in faster recognition. This makes it easier for "twenty minutes" or "thirty minutes" to be recognized as "ten minutes." In this scheme, such situations are defined as "path inclusion mixed recognition," and numeric entries that meet the path inclusion condition are prone to mixed recognition.
[0025] 1.2 During recognition, because the phoneme path lengths of "twenty minutes" and "thirty minutes" are the same, with only the first two digits of the path differing, meaning the proportion of key distinguishing phonemes is too small, external interference affecting the scores of key distinguishing phonemes can lead to confusion between the two. This solution defines such situations as "path-same-position competition-based confusion recognition," and numeric entries that meet the path-same-position competition condition are prone to confusion recognition.
[0026] 2. Misidentification problem:
[0027] 2.1 When all three terms in the examples above are target command terms, "eighty minutes" is a non-command term. The decoding target does not contain a path that includes "eighty minutes." Decoding will only perform calculations on the paths "ten minutes," "twenty minutes," and "thirty minutes." Obviously, a path that includes "ten minutes" will be misidentified as "ten minutes." This solution defines similar situations as "path inclusion misidentification." Numeric terms that meet the path inclusion condition are highly prone to misidentification. For example, "twenty-two minutes" is a non-command term. The decoding target does not contain a path that includes "twenty-two minutes," but there is a path that includes "twenty minutes." Although it is not a strict inclusion, it will still be misidentified as "twenty minutes."
[0028] 2.2 When "twenty minutes" and "thirty minutes" are the target command words and "eighty minutes" is the non-command word, the model, due to fine-tuning, has insufficient ability to recognize "eight," and will prioritize outputting "two" or "three," which can also lead to misidentification. In this solution, similar situations are defined as "misidentification of out-of-collection words," and numerical entries that meet the criteria for out-of-collection words are highly prone to misidentification.
[0029] Reference Figure 1 This invention provides a digital speech recognition method, comprising the following steps S1-S5:
[0030] S1: Obtain the speech to be recognized.
[0031] The speech to be recognized refers to the speech signal that needs to be recognized as digital content. It typically originates from the microphone of a device with voice interaction capabilities (such as home appliances and consumer electronics). The signal format must conform to the input requirements of the speech recognition model (e.g., PCM format, 16kHz sampling rate). Taking Project A (the voice control function of a certain brand of smart rice cooker) as an example, the user says "heat for twenty minutes" into the rice cooker's microphone. The rice cooker's voice acquisition module converts this speech signal into a standard digital audio signal, which is the speech to be recognized. Accurately acquiring the speech to be recognized is the foundation for subsequent recognition. Ensuring the integrity and standardization of the input speech signal avoids subsequent recognition failures due to signal loss or format errors, providing reliable raw data for digital speech recognition.
[0032] S2: The speech to be recognized is decoded using a speech recognition model to obtain preliminary recognition results.
[0033] A speech recognition model refers to an algorithmic model capable of converting speech to text. In this embodiment, a deep learning-based offline speech recognition model (such as a CNN-Transformer hybrid architecture) is used to adapt to the offline operation scenario of a smart rice cooker. Decoding refers to the process by which the speech recognition model converts the input audio signal into a text sequence. Specifically, the model outputs a phoneme probability matrix based on the audio signal, calculates a score based on a preset path (the phoneme path of the target command word), and outputs the text with the highest probability as the preliminary result. For example, in Project A above, after the speech recognition model built into the smart rice cooker receives the speech "heat for twenty minutes," it first converts the audio signal into a phoneme probability matrix (such as the phoneme probability distribution corresponding to "add," "heat," "two," "ten," "minutes," and "clock"), then calculates a score based on the phoneme path of the target command word (such as "heat for ten minutes," "heat for twenty minutes," and "heat for thirty minutes"), and finally outputs the text "heat for twenty minutes" as the preliminary recognition result. If the model is affected by environmental noise, it may also mistakenly output "heat for ten minutes" as the preliminary recognition result. The speech recognition model completes the initial conversion of speech to text, realizing the core function of digital speech recognition and providing a basis for subsequent error correction processing; the offline model on the device side adapts to home appliances in scenarios without network access, ensuring real-time recognition and improving the user experience.
[0034] S3: Review the phoneme probability output data of N frames to determine if a preset digital obfuscation type exists, where N is a positive integer greater than 1:
[0035] N frames refer to the number of time frames of the phoneme probability data output by the speech recognition model. A "frame" is the smallest time unit for the model to process the speech signal (for example, in this embodiment, each frame corresponds to a 10ms speech signal). The value of N needs to be set according to the pronunciation duration of the digital speech (for example, in Project A, N is set to 10 frames, covering the complete pronunciation time of numbers such as "twenty" and "thirty"); Phoneme probability output data refers to the confidence level corresponding to each phoneme output by the speech recognition model for each frame (the value range is 0 - 1, and the higher the value, the greater the probability that the model determines that the frame contains the corresponding phoneme); The preset digital confusion type refers to the digital recognition error types predefined in Project A, including the above-mentioned path inclusion confusion recognition, path同位 competition confusion recognition, path inclusion misrecognition, and out-of-set word misrecognition. For example, in Project A, if the preliminary recognition result is "heat for ten minutes", the speech recognition model needs to look back at the phoneme probability output data of 10 frames. During the viewing process, it focuses on retrieving whether there are phoneme probabilities corresponding to "two" and "three" (to determine whether there is a risk of path inclusion confusion recognition), whether the phoneme probabilities corresponding to "two" and "three" are both high (to determine whether there is a risk of path同位 competition confusion recognition), whether there are phoneme probabilities corresponding to non-target phonemes such as "eight" (to determine whether there is a risk of path inclusion misrecognition), and whether the phoneme time interval and the number of non-target phonemes are abnormal (to determine whether there is a risk of out-of-set word misrecognition), so as to determine whether there is a preset digital confusion type. By looking back at multiple frames of phoneme probability data, the detailed information in the model recognition process can be traced, avoiding misjudgment caused by relying solely on the preliminary result, providing data support for accurately identifying the digital confusion type, and improving the accuracy of digital recognition error judgment.
[0036] S4: If it exists, based on the error correction strategy corresponding to the digital confusion type, correct the preliminary recognition result to obtain the final recognition result.
[0037] The error correction strategy refers to the result correction rules preset for different digital confusion types. Each confusion type corresponds to a unique error correction logic, ensuring the pertinence and accuracy of the correction process. For example, in Project A, if after looking back at the phoneme probability data of 10 frames, it is found that the phoneme probability corresponding to "two" (0.8) meets the determination threshold (0.6) of path inclusion confusion recognition, it is determined that there is a path inclusion confusion recognition type (the preliminary result "heat for ten minutes" may be a misrecognition of "heat for twenty minutes"). At this time, the corresponding error correction strategy is triggered: compare the total scores of the phoneme paths corresponding to "ten" and "twenty". If the total score corresponding to "twenty" is higher, then correct the preliminary result to "heat for twenty minutes" as the final recognition result. Adopting exclusive error correction strategies for different digital confusion types can accurately correct the errors in the preliminary recognition result, avoid secondary errors caused by "one-size-fits-all" error correction, and significantly improve the accuracy of digital speech recognition.
[0038] S5: If it does not exist, the preliminary identification result shall be taken as the final identification result.
[0039] For example, in Project A, if the initial recognition result is "heat for twenty minutes," after reviewing 10 frames of phoneme probability data, no abnormal phoneme probabilities other than "two" and "three" are detected, and the phoneme probability corresponding to "two" (0.9) is much higher than the judgment threshold, with no digit confusion type characteristics, then "heat for twenty minutes" is directly used as the final recognition result, and the rice cooker is controlled to execute the "heat for twenty minutes" command. Directly outputting the initial result when there is no risk of digit confusion can reduce unnecessary computational overhead, ensure the real-time performance of speech recognition, avoid command delays caused by excessive error correction, and improve the smoothness of user experience.
[0040] The digital speech recognition method in this embodiment is based on a complete process of "acquiring speech - preliminary recognition - risk assessment - on-demand error correction," applicable to device scenarios with voice interaction functions, such as Project A (smart rice cooker voice control). This method first completes the initial conversion from speech to text using a speech recognition model, then determines the presence of digit confusion risk by reviewing multi-frame phoneme probability data, and finally performs specific error correction or directly outputs the result based on the risk type, forming a closed-loop digital speech recognition logic. The constraint that "N is a positive integer greater than 1" ensures that the reviewed data covers the complete time segment of digit pronunciation, avoiding omissions in risk assessment due to insufficient data. The preset digit confusion types are defined based on common digit recognition error scenarios in the actual application of Project A, ensuring the practicality and relevance of the method.
[0041] The digital speech recognition method in this embodiment covers the entire process of digital speech recognition, from signal acquisition to result output, avoiding recognition vulnerabilities caused by missing steps and ensuring that the method can be directly applied to real-world scenarios such as Project A. By pre-setting digital obfuscation types and dedicated error correction strategies, it accurately solves common errors in digital speech recognition, improving the accuracy of digital recognition compared to general recognition methods. It directly outputs preliminary results when there is no risk of obfuscation, balancing recognition accuracy and real-time performance, meeting the command response speed requirements of devices such as smart rice cookers. The method does not depend on specific hardware or model architecture and can be adapted to various home appliances and consumer electronics devices with voice interaction functions, making it widely applicable.
[0042] In one embodiment, the above-mentioned speech recognition model is a speech recognition model fine-tuned based on a mixed training set formed by off-set word data and target command word data in a preset ratio; wherein, the off-set word data refers to word data other than the target command word.
[0043] In this embodiment, the out-of-set word data and the target command word data are first determined.
[0044] Target command word data refers to the pre-set command word speech data that needs to be accurately recognized, such as in Project A (smart rice cooker voice control), including "heat for ten minutes," "heat for twenty minutes," "heat for thirty minutes," etc. Each command word contains 1000 pronunciation samples from different users (covering different ages, genders, and accents), in PCM format with a sampling rate of 16kHz. Off-set word data refers to word data other than the target command words, specifically, in Project A, the speech data of number-related command words that may be mispronounced by users or easily confused by the model, such as "heat for eighty minutes," "heat for twenty-two minutes," "heat for fifteen minutes," etc. Data acquisition methods include extracting number-related samples from existing audio libraries and using speech synthesis tools (such as TTS tools) to generate samples containing the numbers "1-10." Each off-set word contains 500 pronunciation samples, etc. For example, in Project A, the target command word data consists of 3,000 speech samples of phrases like "heat for ten minutes," "heat for twenty minutes," and "heat for thirty minutes." The out-of-collection word data consists of 5,000 speech samples of 10 categories of number-related command words, such as "heat for eighty minutes," "heat for twenty-two minutes," "heat for fifteen minutes," and "heat for one minute." All samples undergo noise reduction preprocessing to ensure data quality. Clearly defining the scope and source of both the target command word data and the out-of-collection word data provides high-quality, targeted training data for subsequent model fine-tuning, avoiding training bias caused by ambiguous data definitions, ensuring the model can accurately learn the features of the target command word, and simultaneously developing the ability to distinguish easily confused out-of-collection words.
[0045] Secondly, a mixed training set is formed according to a preset ratio.
[0046] The preset ratio refers to the proportion of out-of-collection word data to target command word data in the mixed training set. It needs to be set according to the confusion frequency between out-of-collection words and target command words in project A, for example. In this embodiment, the preset ratio is 1:2 (i.e., 1 set of out-of-collection word data paired with 2 sets of target command word data). This ensures that the model, while focusing on learning target command words, fully encounters the easily confused features of out-of-collection words. For example, in project A, 2000 target command words are randomly selected from 3000 data points, and 1000 out-of-collection words are randomly selected from 5000 data points, mixed at a ratio of 1000:2000 to form a mixed training set of 3000 samples. The mixing process uses random shuffling to avoid model bias due to sample order. By controlling the proportion of out-of-collection words and target command words in the training data through the preset ratio, the model's learning intensity for target command words and its ability to distinguish out-of-collection words are balanced. This avoids a decrease in the model's accuracy in recognizing target command words due to too much out-of-collection word data, or a situation where the model still easily confuses out-of-collection words with target command words due to too little out-of-collection word data.
[0047] Finally, the speech recognition model was fine-tuned using a mixed training set.
[0048] Fine-tuning refers to further training a pre-trained speech recognition model (which already possesses basic speech recognition capabilities) using a mixed training set, such as in Project A, to adjust model parameters (such as attention weights in the Transformer layer and convolutional kernel parameters in the CNN layer) to adapt the model to the digit command word recognition scenario of Project A. For example, in Project A, the pre-trained model is a CNN-Transformer model trained on 100,000 general speech data points. Fine-tuning is performed using a mixed training set (3,000 samples): the batch size is set to 32, the learning rate to 1e-5, the number of training epochs to 10, and the cross-entropy loss function is used to optimize the model parameters. During training, the model gradually learns the phoneme differences between "twenty minutes," "eighty minutes," and "twenty-two minutes," further improving its ability to recognize target command words. By fine-tuning the general speech recognition model to suit the specific scenario of Project A, the recognition accuracy of target command words is improved compared to using the general model directly. At the same time, the model's ability to distinguish out-of-collection words is enhanced, reducing the probability of out-of-collection words being misidentified as target command words, thus ensuring the accuracy of the aforementioned "preliminary recognition results".
[0049] In this embodiment, a model is fine-tuned using a hybrid training set of "out-of-set word data + target command word data" to address the problem of general speech recognition models' "insufficient ability to distinguish digit command words and easy confusion between out-of-set words and target command words." Specifically, the definition of out-of-set word data clarifies the data scope (digit-related word data other than the target command word), ensuring the targeted nature of data collection; the preset ratio balances the composition of the training data, avoiding model training bias; and the fine-tuning process selects appropriate training parameters based on hardware computing power (limited computing power of edge devices) and recognition requirements, ensuring that the model can run efficiently on edge devices after fine-tuning, while simultaneously improving digit recognition performance.
[0050] In this embodiment, by fine-tuning the model in a specific scenario, the general model is accurately adapted to the numerical command word recognition requirements of the designated project, solving the problem of the general model being "unsuitable for the environment." The fine-tuned model shows a significant improvement in numerical recognition accuracy. By using out-of-set word data for training, the model learns the features of easily confused words in advance, reducing the error rate of the "preliminary recognition results" and reducing the risk of numerical confusion from the source, thus reducing the pressure on subsequent error correction processes. The proportion of the mixed training set avoids data waste. With limited edge training resources, only a small number of samples are needed to achieve a significant improvement in model performance, with less training time, balancing efficiency and effectiveness. The fine-tuning method does not depend on a specific model architecture and can be applied to subsequent iterative model upgrades (such as replacing it with a lighter MobileNet-Transformer model), providing support for the long-term application of the method.
[0051] In one embodiment, the above-mentioned fine-tuning process includes: performing data augmentation on the digital samples in the mixed training set, and the data augmentation is noise addition and reverberation addition processing to improve the anti-interference recognition ability of the speech recognition model for digital speech.
[0052] In this embodiment, first, the digital samples in the mixed training set are screened.
[0053] Digital samples refer to the speech samples containing numbers (such as "ten", "twenty", "thirty") in the mixed training set. They are the core samples that the model needs to focus on for recognition and are also the sample types that are vulnerable to environmental interference and prone to recognition errors. For example, in Project A, the mixed training set (3000 samples) includes "heat for ten minutes", "heat for twenty minutes" (target command word samples), "heat for eighty minutes", "heat for twenty-two minutes" (out-of-vocabulary samples), etc. All samples containing numbers such as "ten", "twenty", "thirty", "eighty", "twenty-two" are screened out, a total of 2800 samples, which are digital samples; the remaining 200 samples without numbers (such as "stop heating") do not undergo data augmentation processing. Targeted screening of digital samples avoids unnecessary augmentation processing for non-digital samples, reduces waste of computing resources, and at the same time ensures that the focus of data augmentation is concentrated on the digital recognition link that is prone to problems in Project A, improving the efficiency and pertinence of the augmentation processing.
[0054] Secondly, noise addition is performed on the digital samples.
[0055] Noise addition processing means superimposing a noise signal simulating the real environment (such as the noise of a range hood and water flow in a kitchen environment) on the speech signal of the digital sample. The noise intensity is controlled between 20 - 30 dB of the signal-to-noise ratio (SNR) to simulate the actual usage environment of the smart rice cooker in Project A and improve the anti-noise ability of the model. For example, in Project A, the common range hood noise in the kitchen environment (frequency 200 - 2000 Hz, intensity -40 dB) is selected, and through an audio processing tool (such as FFmpeg), this noise is superimposed on the digital sample of "heat for twenty minutes" with an SNR of 25 dB to form an enhanced sample of "heat for twenty minutes + range hood noise"; each digital sample generates 3 enhanced samples of different noise types (range hood, water flow, human voice background), and a total of 8400 noise-added enhanced samples are generated from 2800 digital samples. By adding noise to simulate the actual usage environment interference in Project A, the model is exposed to various noise scenarios during training, improving the robustness of the model to noise and reducing digital recognition errors caused by kitchen noise (such as "twenty minutes" being misrecognized as "ten minutes" due to noise), and the digital recognition accuracy in a noise environment is increased by more than 20%.
[0056] Furthermore, reverberation addition is performed on the digital samples.
[0057] Reverberation processing involves adding simulated reverberation effects from different spaces (such as a kitchen or living room) to the speech signals of digital samples. The reverberation time (RT60) is controlled between 0.2 and 0.5 seconds to simulate the scenario of a user speaking to a smart rice cooker at different spatial distances, improving the model's adaptability to spatial acoustic differences. For example, in Project A, an audio processing tool generates a kitchen space reverberation effect with an RT60 of 0.3 seconds, which is added to the digital sample of "heating for 30 minutes" to form an enhanced sample of "heating for 30 minutes + kitchen reverberation". Each digital sample generates two enhanced samples with different reverberation times (0.3 seconds and 0.5 seconds), resulting in 5600 reverberated enhanced samples from 2800 digital samples. Reverberation processing simulates the scenario of a user using the Project A device in different spatial locations, avoiding the model's inability to recognize only close-range, reverberant speech signals, and improving the model's adaptability to spatial acoustic changes. When the user speaks within a range of 1-3 meters from the rice cooker, the digital recognition accuracy remains at a high level, expanding the device's usability.
[0058] Finally, the enhanced digital samples are incorporated into the mixed training set for fine-tuning.
[0059] For example, in Project A, 8400 noisy enhanced samples and 5600 reverberation enhanced samples were mixed with the original 2800 digit samples and 200 non-digit samples to form a final training set of 17000 samples. The model was then fine-tuned according to the parameters mentioned above (batch size=32, learning rate=1e-5, epoch=10). During training, the model simultaneously learned the original features, noise features, and reverberation features of the digit samples. The enhanced samples enriched the diversity of the training data, avoiding overfitting caused by limited data, and also made the model more resistant to noise and reverberation, providing a more reliable guarantee for the accuracy of the "preliminary recognition results," especially significantly improving recognition performance in complex environments.
[0060] In this embodiment, data enhancement processing using "noise addition + reverberation addition" addresses the issues of insufficient data diversity and weak model anti-interference capability in the mixed training set. Specifically, the selection of digital samples ensures that the enhancement processing focuses on the core recognition object; the parameter settings for noise addition and reverberation addition are determined based on actual test data from usage scenarios, ensuring that the enhancement effect closely matches real-world applications; and the enhanced samples are trained alongside the original samples, balancing the model's learning of original and interfering features and avoiding recognition bias caused by the model's over-reliance on enhanced features.
[0061] In this embodiment, by adding noise and reverberation, the model can maintain a high level of accuracy in complex environments, solving the problem of traditional models "misidentifying when the environment changes." The enhancement process increases the number of training samples and covers various interference scenarios such as noise and reverberation, avoiding model overfitting and ensuring the model's recognition stability under different users and environments. The parameters of the enhancement process are set based on the actual scenario, which is more in line with the actual usage needs of the scenario compared with general data augmentation methods, and the enhancement effect is more significant. The model can be applied directly without additional adaptation. Data augmentation is achieved through software tools, eliminating the need to collect real interference scenario samples, reducing data collection costs. At the same time, the enhancement process can be processed in batches without increasing training time too much.
[0062] In one embodiment, step S3, which involves reviewing N frames of phoneme probability output data to determine whether a preset digital obfuscation type exists, includes:
[0063] S31: If, in the phoneme probability output data of N frames reviewed, a target phoneme containing easily confused terms is found and the score of the target phoneme meets the set threshold, then it is determined that there is a path containing a mixed recognition type.
[0064] Easily confused terms refer to terms in Project A that have a phoneme path inclusion relationship with the target term. For example, easily confused terms for the target term "heat for ten minutes" include "heat for twenty minutes" and "heat for thirty minutes" (the phoneme path of "ten minutes" is a subset of the phoneme paths of "twenty minutes" and "thirty minutes"). Target phoneme refers to the phoneme that distinguishes the easily confused term from the target term. For example, the target phoneme for "heat for twenty minutes" is the phoneme corresponding to "two". The set threshold refers to the confidence threshold for determining whether the target phoneme is valid. In Project A, it is set to 0.6 (floating-point value), meaning that a target phoneme score ≥ 0.6 is considered valid. For example, in Project A, the initial identification result is "heat for ten minutes". Reviewing the 10 frames of phoneme probability output data, the scores of the phoneme corresponding to "two" in frames 3-5 are 0.7, 0.8, and 0.75, respectively, all meeting the set threshold (0.6). Furthermore, "heat for twenty minutes" is an easily confused term for "heat for ten minutes", thus confirming the existence of a path inclusion confusion identification type. Accurate path identification includes mixed identification types, avoiding errors caused by "prioritizing short path terms" (such as "twenty minutes" being misidentified as "ten minutes"), providing a basis for subsequent targeted error correction, and reducing device instruction execution errors caused by such confusion.
[0065] In one embodiment, step S3, which involves reviewing N frames of phoneme probability output data to determine whether a preset digital obfuscation type exists, includes:
[0066] S32: If, in the phoneme probability output data of N frames, the same key phonemes of easily confused words are all output with probability and the results need to be determined by score comparison, then it is determined that there is a path same-position competition confusion recognition type.
[0067] Phonophones refer to phonemes that are in the same position but have different content in the phoneme path of easily confused words. For example, in Project A, the phoneme path of "heat for twenty minutes" and "heat for thirty minutes" is "add-heat-X-ten-minutes". The phonemes corresponding to "two" and "three" at the position "X" are phonophones. The result needs to be determined by score comparison. This means that the scores of the two phonophones are both high (both ≥0.5, the basic threshold for phonophone competition), and it is not possible to directly determine which word is more accurate by a single score. Further score comparison is required. For example, in Project A, the initial identification result was "heating for twenty minutes". Reviewing the 10 frames of phoneme probability output data, it was found that the phoneme corresponding to "two" scored 0.55 and 0.52 in frames 3-4, while the phoneme corresponding to "three" scored 0.53 and 0.51 in frames 3-4. Both types of key phonemes had probability output and scores ≥0.5. The results needed to be compared by calculating the averages (0.535 for "two" and 0.52 for "three"), thus confirming the existence of path-based homophonic competition and mixed identification. Accurately identifying path-based homophonic competition and mixed identification types solves the problem of mutual confusion caused by "low proportion of key distinguishing phonemes and susceptibility to interference," providing a basis for subsequent score comparison and error correction, and improving the recognition accuracy of easily confused terms such as "twenty minutes" and "thirty minutes."
[0068] In one embodiment, step S3, which involves reviewing N frames of phoneme probability output data to determine whether a preset digital obfuscation type exists, includes:
[0069] S33: If a non-target phoneme is detected in the phoneme probability output data of N frames and the score of the non-target phoneme exceeds the abnormal threshold, then it is determined that the path contains a misidentified type.
[0070] Non-target phonemes refer to phonemes that do not belong to the set of phonemes of the target command word. For example, in Project A, the set of phonemes of the target command word includes the phonemes corresponding to "add", "heat", "ten", "two", "three", "minutes", and the phoneme corresponding to "eight" is a non-target phoneme; the anomaly threshold refers to the threshold for determining whether a non-target phoneme may cause misrecognition. For example, in Project A, it is set to 0.7 (floating-point value), that is, when the score of the non-target phoneme > 0.7, it is determined that there is a risk of misrecognition. For example, in Project A, the initial recognition result is "heat for ten minutes". Looking back at the phoneme probability output data of 10 frames, it is detected that the phonemes corresponding to "eight" have scores of 0.75 and 0.72 in the 2nd - 3rd frames, exceeding the anomaly threshold (0.7), and the phoneme path of "heat for eighty minutes" contains the phoneme path of "heat for ten minutes". Therefore, it is determined that there is a misrecognition type included in the path. Timely identifying the misrecognition type included in the path can avoid misrecognizing a non-target command word (such as "eighty minutes") as a target command word (such as "ten minutes"), reduce errors caused by insufficient recognition of non-target phonemes by the model, and improve the accuracy of command word recognition.
[0071] In one embodiment, step S3 of looking back at the phoneme probability output data of N frames to determine whether there is a preset type of digital confusion includes:
[0072] S34: If, within the corresponding recognition interval in the phoneme probability output data of looking back at N frames, it is calculated that the time interval before and after is greater than the time length threshold, and the number of non-target phonemes with scores exceeding the set value statistically meets the preset strategy, then it is determined that there is a misrecognition type of out-of-vocabulary word.
[0073] The recognition interval refers to the time interval of the speech signal corresponding to the preliminary recognition result. For example, in Project A, it is determined by the phoneme timestamp. For example, the recognition interval for "heating for twenty minutes" is frames 1-10. The time length threshold refers to the threshold for judging whether the time interval of phonemes is abnormal. For example, in Project A, it is set to 0.3 seconds (corresponding to 3 frames of data). The preset strategy refers to the rule for judging whether the number of non-target phonemes is abnormal. For example, in Project A, it is set to "the number of non-target phonemes ≥ 2 or the proportion > 20%". For example, in Project A, the preliminary recognition result is "heating for twenty minutes". Looking back at 10 frames of phoneme probability output data (recognition interval frames 1-10), the time interval of adjacent phonemes is calculated: the time interval of frames 5-6 is 0.4 seconds, which is greater than the time length threshold (0.3 seconds). At the same time, the number of non-target phonemes with scores exceeding the set value (0.5) (such as the extra phonemes that "two" appears repeatedly) is 3, which meets the preset strategy (≥ 2). Therefore, it is determined that there is a misrecognition type of out-of-set words (the preliminary result may be a misrecognition of "heating for twenty-two minutes"). It effectively identifies misidentification types of out-of-collection words, solving the misidentification problem caused by the model's insufficient ability to recognize out-of-collection words (such as "twenty-two minutes"). By using time intervals and the number of non-target phonemes for dual judgment, it improves the accuracy of misidentification judgment of out-of-collection words and reduces the probability of the device executing incorrect instructions.
[0074] In one embodiment, step S31, which determines that a path contains a mixed recognition type, is found in the phoneme probability output data of N frames reviewed, and the target phoneme score meets a set threshold:
[0075] S311: Determine the target word corresponding to the preliminary identification result, and the easily confused words that have a phoneme path inclusion relationship with the target word.
[0076] The target term refers to the text term corresponding to the preliminary identification result, such as a command word containing numbers in Project A (e.g., "heat for ten minutes"). Phoneme path inclusion relationship refers to the fact that the phoneme path of one term is a subset of the phoneme path of another term. For example, the phoneme path of "heat for ten minutes" is "add → heat → ten → minutes → clock," while the phoneme path of "heat for twenty minutes" is "add → heat → two → ten → minutes → clock." The former is a subset of the latter, meaning there is a phoneme path inclusion relationship between the two. For instance, in Project A, the preliminary identification result is "heat for ten minutes," and the corresponding target term is "heat for ten minutes." Based on the pre-set phoneme path library for Project A, easily confused terms that have a phoneme path inclusion relationship with "heat for ten minutes" are "heat for twenty minutes" and "heat for thirty minutes" (both of which contain the phoneme path of "heat for ten minutes"). Clearly defining the scope of the target term and easily confused terms avoids subsequent retrieval deviations due to ambiguous definitions of easily confused terms, provides a clear object for the retrieval of specific target phonemes, and ensures the accuracy of the starting point for judging the path inclusion confusion type.
[0077] S312: In the N frames of phoneme probability output data reviewed, retrieve the exclusive target phoneme that distinguishes the easily confused word from the target word.
[0078] The specific target phoneme refers to the phoneme in the phoneme path of the easily confused word that is not included in the phoneme path of the target word. It is the core phoneme that distinguishes the easily confused word from the target word. In Project A, a specific target phoneme needs to be determined for each easily confused word. For example, in Project A, the phoneme path of the easily confused word "heat for twenty minutes" is "add→heat→two→ten→minutes→clock", while the phoneme path of the target word "heat for ten minutes" is "add→heat→ten→minutes→clock". The difference between the two is the phoneme corresponding to "two". Therefore, the specific target phoneme of "heat for twenty minutes" is the phoneme corresponding to "two". Similarly, the specific target phoneme of "heat for thirty minutes" is the phoneme corresponding to "three". In the 10 frames of phoneme probability output data reviewed, the existence of the phonemes corresponding to "two" and "three" is checked frame by frame (i.e., whether the phoneme scores corresponding to "two" and "three" in each frame are > 0). Focusing on the core phonemes that differentiate easily confused terms from target terms avoids invalid searches for irrelevant phonemes and improves search efficiency; at the same time, the clear definition of specific target phonemes ensures the uniqueness of the search object and reduces missed or false detections caused by ambiguity in the search object.
[0079] S313: If the exclusive target phoneme is retrieved and the score of the exclusive target phoneme reaches the preset path inclusion mixed recognition judgment threshold, then it is determined that there is a path inclusion mixed recognition type.
[0080] The path inclusion mixed recognition threshold refers to the confidence threshold for determining whether a specific target phoneme is valid. For example, in Project A, based on a large amount of test data, it is set to 0.55 (floating-point value), meaning that a valid target phoneme is considered effective when its average score is ≥0.55. In Project A, reviewing 10 frames of phoneme probability output data, the phoneme corresponding to "two" scored 0.6, 0.65, and 0.58 in frames 3-5, with an average score of 0.61, reaching the path inclusion mixed recognition threshold (0.55). The phoneme corresponding to "three" scored <0.3 in all frames, failing to reach the threshold. Therefore, based on the validity of the specific target phoneme corresponding to "two," a path inclusion mixed recognition type is determined (the preliminary result is that "heating for ten minutes" may be a misrecognition of "heating for twenty minutes"). Threshold determination ensures the effectiveness of the specific target phonemes, avoids misjudgments caused by low phoneme scores (which may be due to noise interference), and improves the accuracy of path inclusion mixed recognition type determination; at the same time, only the average score of the specific target phonemes needs to be calculated, the amount of computation is small, does not affect the real-time performance of recognition, and is compatible with the computing power of the edge devices in Project A.
[0081] This embodiment provides a three-step judgment process: "determining the term → retrieving the specific phoneme → threshold determination." The definition of phoneme path inclusion relationships is based on the command word phoneme library of Project A, ensuring the accuracy of term association; the retrieval of the specific target phoneme focuses on core differences, improving efficiency; and the setting of the judgment threshold is based on test data from Project A, ensuring the rationality of the judgment standard. It can accurately identify scenarios in Project A where "twenty minutes" and "thirty minutes" are mistakenly identified as "ten minutes."
[0082] In this embodiment, the dual standard of "exclusive target phoneme + threshold judgment" avoids misjudgments caused by noise interference or the appearance of accidental phonemes, and improves the accuracy of judgment for mixed recognition types in the path. The three-step process logic is simple, and the end device (such as a smart rice cooker) can execute it quickly. The judgment process is short and does not affect the overall real-time performance of speech recognition. The process design is based on the command word features of the actual scenario (such as "ten minutes" being a subset of "twenty minutes" and "thirty minutes"). Compared with the general judgment method, it is more suitable for numerical confusion scenarios and the judgment effect is more significant. If a new easily confused word is added based on the actual scenario (such as "heat for forty minutes" in project A), it is only necessary to add its association with the target word and the exclusive target phoneme in the word library. There is no need to modify the judgment process, which is suitable for project iteration.
[0083] In one implementation, step S32, which determines the existence of path-based homonymous competition for phoneme recognition if, in the phoneme probability output data of N frames reviewed, all the co-occurring key phonemes of easily confused words have probability outputs and the results need to be determined by score comparison, includes:
[0084] S321: Determine the target word corresponding to the preliminary identification result, as well as easily confused words with the same phoneme path length as the target word but with differences in some positional phonemes, and extract the phonemes at the differences between the two as co-positional key phonemes.
[0085] The same phoneme path length means that the number of phonemes in two entries is the same. For example, in Project A, the number of phonemes in "heat for twenty minutes" is 6 (heat, for, two, ten, minutes, clock), and the number of phonemes in "heat for thirty minutes" is also 6, so their phoneme path lengths are the same. The difference in phonemes at some positions means that there are only 1-2 phoneme positions different in the phoneme path, and the phonemes at other positions are exactly the same. For example, in "heat for twenty minutes" and "heat for thirty minutes", only the phoneme positions corresponding to "two" and "three" are different. The同位关键音素 (equivalent key phonemes) refer to the phonemes at the different positions. For example, the phonemes corresponding to "two" in "heat for twenty minutes" and "three" in "heat for thirty minutes" are the equivalent key phonemes. For example, in Project A, the preliminary recognition result is "heat for twenty minutes", and the corresponding target entry is "heat for twenty minutes". According to the command word phoneme library of Project A, the confusing entries with the same phoneme path length (both 6 phonemes) as "heat for twenty minutes" and only different in phoneme positions at some parts (only "two" and "three" are different) are retrieved as "heat for thirty minutes". The phonemes corresponding to "two" and "three" at the different positions of the two are extracted as the equivalent key phonemes. Accurately defining the target entry, confusing entries and equivalent key phonemes, avoiding including entries with different phoneme path lengths or too many different positions in the judgment, reducing invalid judgments, and at the same time clarifying the core comparison object (equivalent key phonemes), lay the foundation for subsequent probability retrieval and score comparison.
[0086] S322: In the N-frame phoneme probability output data of the review, retrieve the probability output situation of the equivalent key phonemes.
[0087] Both equivalent key phonemes have probability outputs, and the scores of both equivalent key phonemes are greater than 0 in at least 1 frame in the N-frame data of the review, indicating that the model has detected the existence of both phonemes during the recognition process. For example, in Project A, when reviewing the 10-frame phoneme probability output data, it is retrieved that the phoneme corresponding to "two" has scores of 0.58 and 0.56 (both > 0) in the 3rd - 4th frames, and the phoneme corresponding to "three" has scores of 0.54 and 0.52 (both > 0) in the 3rd - 4th frames, that is, both equivalent key phonemes have probability outputs. By retrieving and confirming that both equivalent key phonemes are detected by the model, excluding the non-competitive scenario caused by the absence of one of the phonemes, ensuring the necessity of subsequent score comparison, and enhancing the pertinence of the judgment.
[0088] S323: If both equivalent key phonemes have probability outputs, and the scores of both equivalent key phonemes are not lower than the preset equivalent competition determination base threshold, it is necessary to calculate the average value of the scores of the two phonemes or count the number of frames in which the scores of the two phonemes meet the preset sub-threshold to compare the determination results, then it is determined that there is a path equivalent competition mis-recognition type.
[0089] The base threshold for同位 competition determination refers to the threshold for determining whether the scores of同位 key phonemes are eligible for competition. For example, in Project A, it is set to 0.5 (floating-point value), that is, when the score ≥ 0.5, it is eligible for competition; the preset sub-threshold refers to the threshold used when counting the number of frames with qualified scores. For example, in Project A, it is set to 0.55 (floating-point value), that is, when the score of a single frame ≥ 0.55, it is determined as a qualified frame; the score comparison determination refers to determining the score difference between two同位 key phonemes by calculating the mean value or counting the number of qualified frames, and judging whether there is a competitive relationship. For example, in Project A, the scores of the phoneme corresponding to "two" in 10 frames are 0.48, 0.58, 0.56, 0.52, 0.49, 0.51, 0.53, 0.47, 0.50, 0.54 respectively, the average score is 0.51, and the number of qualified frames (≥ 0.55) is 2 frames; the scores of the phoneme corresponding to "three" are 0.49, 0.54, 0.52, 0.51, 0.50, 0.53, 0.51, 0.48, 0.52, 0.53 respectively, the average score is 0.51, and the number of qualified frames is 0 frames. The scores of both同位 key phonemes are not lower than the base threshold for同位 competition determination (0.5), and the determination result needs to be compared through the mean value (both are 0.51) and the number of qualified frames (2:0). Therefore, it is determined that there is a path同位 competition mixed recognition type. Screening phonemes eligible for competition through the base threshold can avoid misjudgment caused by phonemes with too low scores participating in the comparison; through the double comparison of the mean value and the number of qualified frames, the score situations of the two phonemes are comprehensively reflected, the competitive relationship is accurately judged, and the determination accuracy of the path同位 competition mixed recognition type is improved.
[0090] In this embodiment, a judgment process of "defining object → retrieval probability → score comparison" is provided. Among them, the limitation of the same phoneme path length and partial position differences ensures the pertinence of easily confused entries; the extraction of同位 key phonemes focuses on the core differences; the score comparison combines the mean value and the number of qualified frames to avoid the limitations of a single index. The entire process is designed based on the command word characteristics of the actual scenario, and can accurately identify the mixed recognition scenario caused by the interference of key differentiating phonemes.
[0091] In this embodiment, through multi-dimensional judgment (path length, phoneme difference, score comparison), the同位 competition scenario such as "twenty minutes" and "thirty minutes" in Project A is accurately identified, the determination accuracy is improved, and misjudgment caused by the interference of key phonemes is avoided; combining the double indexes of the mean value and the number of qualified frames can better reflect the stability of phoneme scores compared with the single mean value comparison, reduce misjudgment caused by accidental high scores, and improve the reliability of the comparison result; the retrieval and calculation operations in the process are simple, the required computing power is low, and it does not affect the real-time performance of speech recognition; for newly added easily confused entries such as "heat for forty minutes" and "heat for fifty minutes" in Project A, only their同位 key phonemes (such as "four" and "five") need to be extracted, and the judgment process does not need to be modified to adapt to the new requirements of the project.
[0092] In one embodiment, if it is detected that there is a non-target phoneme in the phoneme probability output data of looking back at N frames and the score of the non-target phoneme exceeds the abnormal threshold, it is determined that there is a path containing misrecognition type S33, including:
[0093] S331: Determine the target command word corresponding to the preliminary recognition result, and the phoneme set of the target command word, and define the phonemes that do not belong to the phoneme set as non-target phonemes.
[0094] The target command word refers to the preset command word to be executed, such as "heat for ten minutes", "heat for twenty minutes", "heat for thirty minutes"; the phoneme set refers to the set of all phonemes that make up the target command word, such as the phoneme set of "heat for ten minutes" in Project A is the phonemes corresponding to {jia, re, shi, fen, zhong}; the non-target phoneme refers to the phoneme that is not in the phoneme set of the target command word. For example, there is no phoneme corresponding to "eight" in the phoneme set of "heat for ten minutes", so the phoneme corresponding to "eight" is a non-target phoneme. For example, in Project A, the preliminary recognition result is "heat for ten minutes", and the corresponding target command word is "heat for ten minutes"; its phoneme set is the phonemes corresponding to {jia → re → shi → fen → zhong}; according to the phoneme library of Project A, phonemes such as "eight", "two", "three", "five", etc. that are not in this set are defined as non-target phonemes (note: although "two" and "three" are phonemes of other target command words, they are still non-target phonemes for "heat for ten minutes"). Clearly defining the phoneme boundary of the target command word and accurately defining the range of non-target phonemes can avoid misjudging target phonemes as non-target phonemes, provide a clear object for subsequent frame-by-frame retrieval, and ensure the accuracy of the retrieval.
[0095] S332: Perform frame-by-frame retrieval on the phoneme probability output data of looking back at N frames to detect whether there is the defined non-target phoneme.
[0096] Frame-by-frame retrieval means checking whether there is a non-target phoneme (that is, whether the score of the non-target phoneme in each frame > 0) in sequence for the phoneme probability output data of looking back at N frames, ensuring no missed detection. For example, in Project A, when looking back at 10 frames of phoneme probability output data (each frame corresponds to 10 ms of speech), check frame by frame whether there are non-target phonemes such as "eight", "two", "three", etc.: the score of the phoneme corresponding to "eight" detected in the 2nd frame is 0.3 (> 0), and the score of the phoneme corresponding to "eight" detected in the 3rd frame is 0.7 (> 0), that is, the phoneme corresponding to the non-target phoneme "eight" is retrieved. Frame-by-frame retrieval ensures that all time segments of the looked-back data are covered, avoids missed detection of non-target phonemes caused by skipping retrieval, improves the integrity of non-target phoneme detection, and provides comprehensive data support for subsequent score comparison.
[0097] S333: If a non-target phoneme is retrieved, obtain the score of the non-target phoneme;
[0098] S334: Compare the obtained non-target phoneme score with a preset abnormal threshold. If the non-target phoneme score exceeds the abnormal threshold, and the word corresponding to the non-target phoneme has a phoneme path inclusion relationship with the target command word of the preliminary recognition result, then it is determined that there is a path inclusion misidentification type.
[0099] The non-target phoneme score refers to the confidence level of the non-target phoneme in the corresponding frame (value 0-1). For example, in Project A, the average score of all frames where non-target phonemes were found is taken as the final score. The anomaly threshold is the threshold for determining whether a non-target phoneme might cause misidentification. For example, in Project A, based on a large amount of test data, it is set to 0.7 (floating-point value), meaning that an anomaly is determined when the average score is greater than 0.7. For instance, in Project A, the phoneme corresponding to "eight" scores 0.3 in frame 2, 0.7 in frame 3, and 0.8 in frame 4, with an average score of (0.3+0.7+0.8) / 3=0.6, which does not exceed the anomaly threshold (0.7). However, if the scores in frames 2-4 are 0.75, 0.8, and 0.78 respectively, the average score is 0.77, which exceeds the anomaly threshold (0.7). By comparing the average score and the anomaly threshold, low scores of non-target phonemes caused by accidental noise are filtered out, avoiding misjudgments and improving the accuracy of non-target phoneme anomaly detection.
[0100] The term corresponding to a non-target phoneme refers to a command word that contains that non-target phoneme. For example, the term corresponding to the non-target phoneme "eight" is "heat for eighty minutes." In Project A, the term corresponding to the non-target phoneme "eight" is "heat for eighty minutes," and its phoneme path is "add → heat → eight → ten → minutes → clock." The phoneme path of the target command word "heat for ten minutes" is "add → heat → ten → minutes → clock." The former contains the latter, indicating a phoneme path inclusion relationship. Combined with the fact that the average score of the phoneme corresponding to "eight" is 0.77, which exceeds the abnormal threshold (0.7), it is determined that there is a path inclusion misidentification type. By judging the phoneme path inclusion relationship, it is ensured that there is a basis for confusion between the term corresponding to the non-target phoneme and the target command word, avoiding the inclusion of non-target terms without inclusion relationship in the misidentification judgment, and improving the accuracy of path inclusion misidentification type determination.
[0101] This embodiment provides a four-step process: "defining phonemes → frame-by-frame retrieval → score comparison → inclusion relationship judgment." The definition of non-target phonemes is based on the phoneme set of the target command word, ensuring accurate scope; frame-by-frame retrieval covers all review data to avoid missed detections; and score comparison and inclusion relationship judgment provide dual verification to ensure reliable judgment. The entire process closely matches the command word characteristics of real-world scenarios and can effectively identify misidentification problems caused by insufficient recognition of non-target phonemes.
[0102] In one embodiment, step S34, which determines that there is an out-of-set word misidentification type if, within the recognition interval corresponding to the phoneme probability output data of N frames reviewed, the calculated time interval is greater than the time length threshold, and the number of non-target phonemes with scores exceeding a set value satisfies the preset strategy, includes:
[0103] S341: Based on the N frames of phoneme probability output data reviewed, define the speech recognition interval corresponding to the preliminary recognition result, and extract the timestamp information of all phonemes in the interval.
[0104] The speech recognition interval refers to the time range of the speech signal corresponding to the preliminary recognition result within N frames of data. In Project A, this is determined by the start and end frames of the preliminary recognition result. For example, the preliminary recognition result "heat for twenty minutes" corresponds to frames 1-10 in the 10 frames of data review, meaning the recognition interval is frames 1-10. The timestamp information refers to the specific time (in seconds) corresponding to each phoneme in each frame. In Project A, each frame corresponds to 10ms, so the timestamp for frame 1 is 0.01s, for frame 2 it's 0.02s, and so on. For instance, in Project A, the preliminary recognition result is "heat for twenty minutes," and after reviewing 10 frames of phoneme probability output data (frame numbers 1-10), the recognition interval is defined as frames 1-10. The timestamp information for each phoneme in each frame is extracted: frame 1 is 0.01s, frame 2 is 0.02s, ..., frame 10 is 0.1s. Clearly define the time range of the interval to avoid deviations in subsequent time interval calculations due to ambiguous interval boundaries; timestamp information provides basic data for calculating the time interval between adjacent phonemes, ensuring the accuracy of time dimension judgment.
[0105] S342: Calculate the time interval between adjacent phonemes within the recognition interval. If there is at least one set of adjacent phonemes whose time interval is greater than a preset time length threshold, then mark it as an abnormal time interval.
[0106] The time interval between adjacent phonemes refers to the difference in timestamps between two adjacent phonemes within the recognition interval. For example, in Project A, the time interval between frame 3 (0.03s) and frame 4 (0.04s) is 0.01s. The time length threshold is the threshold for determining whether the time interval is abnormal. For example, in Project A, based on normal speaking speed (the time interval between adjacent phonemes in digit pronunciation is usually <0.03s), it is set to 0.03s, meaning that a time interval >0.03s is considered abnormal. For instance, in Project A, the time interval between adjacent phonemes within the recognition interval (frames 1-10) is calculated: the time interval between frame 5 (0.05s) and frame 6 (0.09s) is 0.04s, which is greater than the time length threshold (0.03s), so it is marked as an abnormal time interval. By judging the time interval, the phoneme pauses that may occur when pronouncing words outside the set (such as the longer interval caused by the repeated pronunciation of "two") are captured (e.g., the interval becomes longer due to the repeated pronunciation of "two"), providing a time dimension basis for judging misidentification of words outside the set and improving the comprehensiveness of the judgment.
[0107] S343: From the N frames of phoneme probability output data in the speech recognition interval, filter out non-target phonemes and count the number of non-target phonemes whose scores exceed a preset value.
[0108] The preset setting value refers to the threshold for determining whether the score of a non-target phoneme meets the standard. For example, in Project A, it is set to 0.5 (floating point value), meaning that a non-target phoneme score ≥ 0.5 is considered to meet the standard. The number of non-target phonemes refers to the number of frames with a score ≥ 0.5 within the recognition interval. For example, in Project A, if the non-target phoneme scores of frames 5, 6, and 7 are all ≥ 0.5, then the number is 3. For instance, in Project A, the target command word for the recognition interval (frames 1-10) is "heat for twenty minutes". Its phoneme set is the phonemes corresponding to {add, heat, two, ten, minutes, clock}. The non-target phonemes are the extra phonemes that repeat the word "two" (e.g., the phonemes corresponding to "two" in frames 5 and 6 are repeated non-target phonemes). Non-target phonemes with scores ≥ 0.5 are filtered out: frame 5 score 0.55, frame 6 score 0.53, and frame 7 score 0.48. The number of non-target phonemes that meet the standard is 2. Screen out qualified non-target phonemes and count their number to avoid including low-scoring non-target phonemes (which may be noise) in the statistics, ensuring the validity of the count and providing reliable data for subsequent pre-set strategy judgments.
[0109] S344: If the determination result of the time interval being abnormal is valid, and the number of non-target phonemes whose scores exceed the set value reaches the preset strategy, then it is determined that there is a misidentification type of out-of-set words.
[0110] The preset strategy, as in Project A, defines the rule for determining whether the number of non-target phonemes is abnormal as "the number of qualified non-target phonemes is ≥2". In other words, a number ≥2 is considered abnormal. For example, in Project A, the judgment of abnormal time interval is valid (the interval between frames 5 and 6 is 0.04s > 0.03s), and the number of qualified non-target phonemes is 2, satisfying the preset strategy (≥2). Therefore, it is determined that there is a misidentification of out-of-collection words (the preliminary result is that "heating for twenty minutes" may be a misidentification of "heating for twenty-two minutes"). By using both abnormal time interval and abnormal number of non-target phonemes for judgment, the misidentification of out-of-collection words is accurately identified, avoiding misjudgments caused by a single dimension and improving the accuracy of out-of-collection word misidentification judgment.
[0111] This embodiment provides a process of "defining the interval → time judgment → quantity statistics → double verification". The definition of the identification interval ensures accurate judgment range; the time interval judgment captures the pause features of non-target words' pronunciation; the non-target phoneme quantity statistics reflect the additional phoneme features of non-target words; and double verification (time + quantity) ensures reliable judgment. The entire process is designed based on the features of non-target words in a real-world scenario, effectively identifying misidentification problems caused by non-target words.
[0112] In this embodiment, by employing dual verification (time interval + number of non-target phonemes), the accuracy of identifying out-of-collection words is improved, avoiding misclassification of target command words as out-of-collection words and reducing error correction. Simultaneously considering the characteristics of both the time dimension (pronunciation pauses) and the phoneme dimension (additional non-target phonemes), compared to single-dimensional judgment, it more comprehensively reflects the recognition characteristics of out-of-collection words, thus improving the reliability of the judgment. The time interval calculation and quantity statistics operations in the process are simple and require low computing power. For example, the smart rice cooker in Project A can complete the judgment within 60ms, without affecting the real-time performance of speech recognition. If a new out-of-collection word (such as "thirty-three minutes") is added, only the existing process (judging the time interval and the number of non-target phonemes) needs to be used, without modifying the judgment logic, adapting to the new requirements of the project.
[0113] In one embodiment, step S4, which corrects the preliminary identification result based on the error correction strategy corresponding to the digital obfuscation type to obtain the final identification result, includes:
[0114] S41: If it is determined that there is a path containing a mixed recognition type, then retrieve the complete phoneme path scores of the easily confused words and the target words corresponding to the preliminary recognition results from the N frames of phoneme probability output data, calculate the total score of the two phoneme paths, and take the word corresponding to the phoneme path with the higher total score as the final recognition result.
[0115] The complete phoneme path score refers to the set of scores for all phonemes of the easily confused or target word in the N frames of data reviewed. For example, in Project A, the phoneme path for "heat for ten minutes" (target word) is "add → heat → ten → minutes → clock". Its complete phoneme path score is the score sequence of these 5 phonemes in 10 frames of data. The total score is the sum of the scores of each phoneme in the complete phoneme path. It is used to quantify and compare the overall confidence of different word phoneme paths. The higher the total score, the higher the matching degree between the word and the speech to be recognized. For example, in Project A, the initial recognition result is "heat for ten minutes" (target word). After reviewing 10 frames of phoneme probability output data, it is determined that there is a path containing a mixed recognition type (the easily confused word is "heat for twenty minutes"). The complete phoneme path score is calculated as follows: The phoneme path for "Heating for Ten Minutes" is "Add (0.8 / 0.75 / 0.7…), Heat (0.82 / 0.78 / 0.76…), Ten (0.78 / 0.76 / 0.75…), Minute (0.8 / 0.77 / 0.74…), Clock (0.79 / 0.76 / 0.73…)". The total score is calculated as: 0.8 + 0.82 + 0.78 + 0.8 + 0.79 + (average score of the remaining 5 frames × 5) = 7.2; The phoneme path for "Heating for Twenty Minutes" is "Add (0.8 / 0.75 / 0.7…), Heat (0.82 / 0.7…)". 8 / 0.76…), two (0.7 / 0.72 / 0.68…), ten (0.78 / 0.76 / 0.75…), minutes (0.8 / 0.77 / 0.74…), clock (0.79 / 0.76 / 0.73…), calculate the total score = 0.8 + 0.82 + 0.7 + 0.78 + 0.8 + 0.79 + (average score of the remaining 4 frames × 4) = 8.5; since the total score of "heating for twenty minutes" (8.5) is higher than that of "heating for ten minutes" (7.2), the final recognition result is corrected to "heating for twenty minutes", and the rice cooker is controlled to execute the "heating for twenty minutes" command. By comparing the total score of the complete phoneme path, the bias caused by prioritizing the identification of short path words is avoided. The more matching words are selected from the perspective of overall confidence. For example, in Project A, the error correction accuracy is improved in the path containing mixed recognition scenarios, effectively solving the problem of "twenty minutes / thirty minutes being misidentified as ten minutes" and reducing the deviation of device command execution.
[0116] S42: If it is determined that there is a path co-position competition and mixed recognition type, then based on the scores of the two co-position key phonemes in the N frames of phoneme probability output data, the co-position key phoneme that wins the competition is determined by calculating the average score of the two phonemes or by counting the number of frames in which the scores of the two phonemes meet the preset sub-threshold, and the easily confused word corresponding to the co-position key phoneme is taken as the final recognition result.
[0117] The average score refers to the average value obtained by adding the scores of two homotypic critical phonemes in the N-frame data viewed back, which reflects the overall level of phoneme scores; the preset sub-threshold refers to the threshold used to determine whether the score of a single-frame homotypic critical phoneme meets the standard. For example, in Project A, it is set to 0.55 (floating-point value). That is, when the single-frame score ≥ 0.55, it is determined as a "qualified frame"; the homotypic critical phoneme that wins the competition refers to the homotypic critical phoneme with a higher average score or more qualified frames, and the corresponding entry has a higher matching degree with the speech to be recognized. For example, in Project A, the preliminary recognition result is "Heat for twenty minutes" (the target entry). After viewing back the phoneme probability output data of 10 frames, it is determined that there is a path homotypic competition misrecognition type (the easily confused entry is "Heat for thirty minutes", and the homotypic critical phonemes are the phonemes corresponding to "two" and "three"). Calculate the average score: The scores of the phoneme corresponding to "two" in 10 frames are 0.58 / 0.56 / 0.52 / 0.51 / 0.49 / 0.53 / 0.55 / 0.48 / 0.50 / 0.54, and the average = (0.58 + 0.56 + … + 0.54) / 10 = 0.52; the scores of the phoneme corresponding to "three" are 0.54 / 0.52 / 0.51 / 0.50 / 0.53 / 0.51 / 0.48 / 0.52 / 0.53 / 0.51, and the average = 0.51; count the number of qualified frames (≥ 0.55): The number of qualified frames of "two" is 3 frames (the 1st, 2nd, and 7th frames), and the number of qualified frames of "three" is 0 frames; because the average score of "two" (0.52) is higher than that of "three" (0.51) and the number of qualified frames is more, it is determined that "two" is the homotypic critical phoneme that wins the competition, and the final recognition result remains "Heat for twenty minutes" to ensure the accurate execution of the rice cooker instruction. Through the dual-dimensional determination of "average score + number of qualified frames", it avoids misjudgment caused by a single index, accurately distinguishes entries with highly similar phoneme paths such as "twenty minutes / thirty minutes", and improves the error correction accuracy rate in the path homotypic competition misrecognition scenario in Project A, solving the problem of "mutual misrecognition caused by interference of key distinguishing phonemes".
[0118] S43: If it is determined that there is a path inclusion misrecognition type, then it is determined that the preliminary recognition result is an invalid recognition, and a prompt message of "Please re-enter the voice command" is output, or based on the phoneme path scores of the target command word in the N-frame phoneme probability output data viewed back, the target command word with the highest score is selected as the final recognition result.
[0119] Invalid recognition refers to a preliminary recognition result that does not match the speech to be recognized because it contains high-confidence non-target phonemes and the corresponding word has a phoneme path inclusion relationship with the target command word. The target command word phoneme path score refers to the total score of each phoneme path of all target command words (such as "heat for ten minutes", "heat for twenty minutes", "heat for thirty minutes") in the N frames of data reviewed in Project A. For example, in Project A, the preliminary recognition result is "heat for ten minutes". After reviewing 10 frames of phoneme probability output data, it is determined that there is a path inclusion misrecognition type (the non-target phoneme corresponding to "eight" is detected, with a score of 0.78, which exceeds the abnormal threshold of 0.7, and "heat for eighty minutes" contains the phoneme path of "heat for ten minutes").
[0120] Option 1 (output prompt): If "heat for ten minutes" is determined to be an invalid recognition, the rice cooker display will show "You need to re-enter the voice command" and the prompt will be broadcast through the speaker to guide the user to pronounce it clearly again;
[0121] Option 2 (Re-filter target command words): Retrieve the total score of the phoneme path of all target command words: "Heat for ten minutes" has a total score of 7.2, "Heat for twenty minutes" has a total score of 8.1, and "Heat for thirty minutes" has a total score of 7.8. Select "Heat for twenty minutes" with the highest score as the final recognition result and execute the corresponding instruction (this option is suitable for scenarios where there is still misrecognition even if the user repeatedly inputs the information).
[0122] It offers two flexible solutions: "prompt for re-entry" and "re-filtering". This avoids misidentifying non-target terms (such as "eighty minutes") as target command terms, while matching the optimal target command term as much as possible when the user's pronunciation is unclear. For example, in Project A, the invalid command rate in the path containing misidentified scenarios is reduced, thus balancing recognition accuracy and user experience.
[0123] S44: If it is determined that there is a misidentification of out-of-collection words, the preliminary identification result is determined to be invalid and the prompt message "re-enter voice command" is output. Alternatively, the phoneme path corresponding to the target command word is selected from the N frames of phoneme probability output data, its score is calculated, and the target command word with the highest score is taken as the final identification result.
[0124] Filtering target command word phoneme paths refers to extracting all phoneme paths corresponding to the target command words, as preset in Project A, from the N frames of phoneme probability output data, excluding non-target phoneme paths related to out-of-collection words. The highest-scoring target command word refers to the word with the highest total score among the filtered target command word phoneme paths, which has the highest matching degree with the speech to be recognized. For example, in Project A, the initial recognition result is "heat for twenty minutes". After reviewing 10 frames of phoneme probability output data, it is determined that there is a misidentification type of out-of-collection word (such as the time interval exceeding the threshold of 0.03 seconds by 0.04 seconds, and the number of non-target phonemes meeting the preset strategy is 2, the initial result may be a misidentification of the out-of-collection word "heat for twenty-two minutes").
[0125] Option 1 (output prompt): If "heat for twenty minutes" is determined to be an invalid recognition, the rice cooker will prompt "The instruction was not clearly recognized, please repeat it" via voice prompt to ensure that the incorrect instruction is not executed;
[0126] Option 2 (Re-filtering target command words): Filter out the phoneme paths of "heat for ten minutes", "heat for twenty minutes" and "heat for thirty minutes", calculate the total scores as 7.5, 7.3 and 7.8 respectively, and select "heat for thirty minutes" with the highest score as the final recognition result (suitable for scenarios where the user really needs the target command word, but misrecognition is caused only by repeated pronunciation).
[0127] By using "invalid recognition prompts + target word re-filtering", the risk of misidentifying out-of-collection words (such as "twenty-two minutes") as target command words is effectively avoided, while providing users with a second recognition opportunity. In Project A, the error command execution rate in the out-of-collection word misidentification scenario has been reduced from 35% to below 5%, ensuring the safety of equipment operation and the user experience.
[0128] In this embodiment, a dedicated error correction strategy is designed for four types of digital confusion to avoid secondary errors caused by a "one-size-fits-all" approach to error correction. All error correction steps are based on objective data (phoneme scores, total scores, and frame counts) without any ambiguous judgment criteria, allowing those skilled in the art to directly refer to and implement the strategy. The error correction strategy is well-suited for offline scenarios on the edge, such as Project A (smart rice cooker), with minimal computational load (e.g., total score calculation, average statistics). The rice cooker CPU can complete the error correction within 100ms without affecting the real-time performance of speech recognition. A "re-entry prompt" is provided for misidentification scenarios to prevent the device from "silently executing incorrect commands." A "re-filtering target words" solution is also provided to reduce the number of times users repeat pronunciation and improve the fluency of voice interaction. If new target command words are added to the actual scenario (e.g., "heat for forty minutes"), only the phoneme path score calculation logic for that word needs to be added to the error correction strategy, without modifying the overall error correction framework, thus adapting to project iteration requirements.
[0129] Reference Figure 2The present invention also provides a computer device, the internal structure of which can be as follows: Figure 2 As shown. The computer device includes a processor, memory, network interface, and database connected via a system bus. The processor in this computer device is designed to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores operating devices, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The database of the computer device is used to store speech recognition models, etc. The network interface of the computer device is used for communication with external terminals via a network connection. Furthermore, the computer device may also be equipped with input devices and a display screen, etc. When the computer program is executed by the processor, it implements the digital speech recognition method of any of the above embodiments. Those skilled in the art will understand that... Figure 2 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer equipment on which the present application is applied.
[0130] One embodiment of this application also provides a computer-readable storage medium storing a computer program thereon. When the computer program is executed by a processor, it implements the speech recognition method for numbers in any of the above embodiments. It is understood that the computer-readable storage medium in this embodiment can be a volatile readable storage medium or a non-volatile readable storage medium.
[0131] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in this application and in the embodiments can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual-speed SDRAM (SSRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM).
[0132] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, apparatus, article, or method that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, apparatus, article, or method. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, apparatus, article, or method that includes that element.
[0133] The above description is merely a preferred embodiment of the present invention and does not limit the patent scope of the present invention. Any equivalent structural or procedural transformations made based on the content of the present invention's specification and drawings, or direct or indirect applications in other related technical fields, are similarly included within the patent protection scope of the present invention.
Claims
1. A method of digital speech recognition, characterized by The method comprises: acquiring a voice to be recognized; decoding the voice to be recognized through a voice recognition model to obtain a preliminary recognition result; looking back at N frames of phoneme probability output data to determine whether a preset number confusion type exists, wherein N is a positive integer greater than 1; if the number confusion type exists, correcting the preliminary recognition result based on a correction strategy corresponding to the number confusion type to obtain a final recognition result; if the number confusion type does not exist, taking the preliminary recognition result as the final recognition result; the looking back at N frames of phoneme probability output data to determine whether the preset number confusion type exists comprises: if, in the looking back at N frames of phoneme probability output data, a target phoneme of an easily confused entry is searched and the target phoneme score meets a set threshold, it is determined that a path containing confusion recognition type exists, the easily confused entry refers to an entry having a path containing relationship with a target entry, and the target phoneme refers to a phoneme of the easily confused entry that is different from the target entry; or, if, in the looking back at N frames of phoneme probability output data, homologous key phonemes of the easily confused entry all have probability output and the results need to be determined through score comparison, it is determined that a path homologous competition confusion recognition type exists, the results needing to be determined through score comparison refer to scores of the two homologous key phonemes both not being lower than a basic threshold, and it is unable to directly determine which entry is more accurate through a single score, and the results need to be further compared; or, if, in the looking back at N frames of phoneme probability output data, a non-target phoneme is detected and the non-target phoneme score exceeds an abnormal threshold, it is determined that a path containing misrecognition type exists, the non-target phoneme refers to a phoneme that does not belong to a target command word phoneme set; or, if, in the looking back at N frames of phoneme probability output data, a calculation result of a front and back time interval in a corresponding recognition interval is greater than a time length threshold, and a number of non-target phonemes with scores exceeding a set value meets a preset strategy, it is determined that an out-of-set entry misrecognition type exists, the recognition interval refers to a voice signal time interval corresponding to the preliminary recognition result, and the front and back time interval refers to a time interval of adjacent phonemes.
2. The method of claim 1, wherein, The voice recognition model is a voice recognition model that is fine-tuned based on a mixed training set formed by out-of-set entry data and target command word data in a preset proportion; wherein the out-of-set entry data refers to word data other than target command word data.
3. The method of claim 1 or 2, wherein, The looking back at N frames of phoneme probability output data to determine whether the preset number confusion type exists comprises: determining a target entry corresponding to the preliminary recognition result, and the easily confused entry corresponding to the target entry; searching, in the looking back at N frames of phoneme probability output data, an exclusive target phoneme of the easily confused entry that is different from the target entry; if the exclusive target phoneme is searched and a score of the exclusive target phoneme reaches a preset path containing confusion recognition determination threshold, it is determined that the path containing confusion recognition type exists.
4. The method for recognizing speech of a number according to claim 1 or 2, characterized by, The looking back at N frames of phoneme probability output data to determine whether the preset number confusion type exists comprises: determining a target word corresponding to the preliminary recognition result, and an easily confused word having the same phoneme path length as the target word and only having a difference in partial phonemes, and extracting phonemes at different positions as homophone key phonemes; searching for probability output of the homophone key phonemes in N frames of phoneme probability output data of the review; if both homophone key phonemes have probability output and scores of both homophone key phonemes are not lower than a preset homophone competition judgment basis threshold, determining that there is a path homophone competition misrecognition type by comparing a judgment result obtained by calculating an average of the scores of the two phonemes or by counting a number of frames in which the scores of the two phonemes satisfy a preset sub-threshold.
5. The method for recognizing speech of a number according to claim 1 or 2, characterized by, if it is detected in N frames of phoneme probability output data of the review that there is a non-target phoneme and a score of the non-target phoneme exceeds an abnormal threshold, determining that there is a path containing misrecognition type, including: determining a target command word corresponding to the preliminary recognition result and a phoneme set of the target command word, and defining the non-target phoneme; frame by frame searching for N frames of phoneme probability output data of the review to detect whether there is the defined non-target phoneme; if the non-target phoneme is searched for, obtaining a score of the non-target phoneme; comparing the obtained score of the non-target phoneme with a preset abnormal threshold, and if the score of the non-target phoneme exceeds the abnormal threshold and a word corresponding to the non-target phoneme has a phoneme path containing relationship with the target command word of the preliminary recognition result, determining that there is the path containing misrecognition type.
6. The method for recognizing speech of a number according to claim 1 or 2, wherein if it is calculated that a time interval between a front time and a rear time in a recognition interval corresponding to N frames of phoneme probability output data of the review is greater than a time length threshold and a number of non-target phonemes with scores exceeding a set value satisfies a preset strategy, determining that there is an out-of-set word misrecognition type, including: based on N frames of phoneme probability output data of the review, defining the speech recognition interval and extracting time stamp information of all phonemes in the interval; calculating a time interval between adjacent phonemes in the recognition interval, and if there is at least one group of adjacent phonemes with a time interval greater than a preset time length threshold, marking as time interval abnormal; from N frames of phoneme probability output data of the speech recognition interval, screening out non-target phonemes and counting a number of non-target phonemes with scores exceeding a preset set value; if the determination result of the time interval abnormal is true and the number of non-target phonemes with scores exceeding the set value reaches the preset strategy, determining that there is the out-of-set word misrecognition type.
7. The method for recognizing speech of a number according to claim 1 or 2, characterized by, based on a correction strategy corresponding to the digital confusion type, correcting the preliminary recognition result to obtain a final recognition result, including: if it is determined that there is the path containing misrecognition type, calling complete phoneme path scores of the easily confused word and the target word corresponding to the preliminary recognition result in N frames of phoneme probability output data of the review, calculating total scores of the two phoneme paths, and taking a word corresponding to a phoneme path with a higher total score as the final recognition result; If it is determined that there is a path homonym competition confusion recognition type, scores of two homonym key phonemes in the N frame phoneme probability output data are output based on the review, and the homonym key phoneme winning the competition is determined by calculating the mean of the scores of the two phonemes or counting the number of frames in which the scores of the two phonemes satisfy a preset sub-threshold, and an easy-to-confuse entry corresponding to the homonym key phoneme is taken as the final recognition result; If it is determined that there is a path containing misrecognition type, it is determined that the preliminary recognition result is invalid recognition, and a prompt information "please input the voice instruction again" is output, or a target command word is selected as the final recognition result based on the phoneme path score of the target command word in the N frame phoneme probability output data. If it is determined that there is an out-of-set word misrecognition type, it is determined that the preliminary recognition result is invalid recognition, and a prompt information "please input the voice instruction again" is output, or a target command word is selected as the final recognition result by screening the phoneme path corresponding to the target command word from the N frame phoneme probability output data, calculating the score, and selecting the target command word with the highest score.
8. A computer device comprising a memory and a processor, the memory having stored therein a computer program, characterized in that, The processor executes the computer program to implement the steps of the number voice recognition method according to any one of claims 1 to 7.
9. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the steps of the number voice recognition method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Speech recognition model training method and device and computer equipment
CN113870844A
Voice command word recognition post-processing method, system and equipment and storage medium
CN120431904A
Correcting substitution errors during automatic speech recognition
US20080126100A1