A speech recognition method and system
By combining the target voice data stream and cache voice data stream, using the GMM model and dynamic adjustment of parameters, the problem that fixed parameters in the existing voice recognition system cannot adapt to new scenarios is solved, and the accuracy and semantic recognition rate of speech recognition are improved.
Patent Information
- Application Number
- CN202210787025.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-07-04
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2042-07-04
AI Technical Summary
The fixed configuration parameters used in the existing speech recognition system cannot adapt to the new dialogue scenario in time, resulting in a low semantic recognition rate of speech data.
By a combination of obtaining the target voice data stream and cache voice data stream, using preset GMM model and dynamically adjusted voice activity detection parameters, cache instructions and noise reduction parameters, non-silent valid data frames are extracted in real time, and noise reduction processing and semantic recognition are performed, and parameter configuration is adjusted according to the recognition rate.
It realizes the flexible adaptation of the speech recognition system in different dialogue scenarios, and improves the accuracy and semantic recognition rate of speech extraction.
Smart Images

Figure CN115148193B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of artificial intelligence technology, and in particular to a speech recognition method and system. Background Art
[0002] With the advancement of science and technology and the rapid development of AI technology, intelligent voice customer service has emerged in scenarios with high repetitiveness such as telephone sales and customer service, such as telecommunications operators' customer service hotlines and marketing hotlines. Intelligent voice customer service is a robot that can imitate human voices and replace human customer service to communicate with customers. During voice communication with customers, the robot cannot directly respond to the customer's voice, but needs to use the voice recognition system on board to recognize the customer's voice data, so as to generate more accurate response results.
[0003] At present, the speech recognition system mainly samples the voice data stream from the customer's voice data, and then uses the preset voice activity detection parameters to perform silence detection on the voice data stream, divides the voice data stream into silent segments and non-silent segments, extracts non-multi-person conversation voice data from the non-silent segments, and uses the preset noise reduction parameters to perform noise reduction, and then obtains the target voice data based on the noise-reduced data and other voice data, and finally converts the target voice data into text data and continues to perform intent recognition.
[0004] The voice activity detection parameters and noise reduction parameters used by the above-mentioned speech recognition system are fixed configuration parameters. When the customer's conversation scenario changes significantly, these fixed configuration parameters cannot adapt to the new conversation scenario in a timely manner, resulting in a large difference between the extracted target voice data and the customer's actual voice data, which in turn makes the semantic recognition rate low. Summary of the invention
[0005] The present application provides a speech recognition method and system, which can be used to solve the technical problem that the fixed configuration parameters used in the existing speech recognition system cannot adapt to the new dialogue scenario in time, thus resulting in a low semantic recognition rate of the speech data.
[0006] In a first aspect, an embodiment of the present application provides a speech recognition method, comprising:
[0007] Acquire a target voice data stream, wherein the target voice data stream is a plurality of sampling signal points obtained after sampling a target voice signal;
[0008] Cache the cached voice data stream according to the cache instruction; the cache instruction includes setting the cache amount, the cached voice data stream is the sampling signal point that meets the set cache amount after sampling the cached voice signal, and the cached voice signal is the latest voice signal obtained after the target voice signal;
[0009] According to the voice activity detection parameters, a non-silent valid data frame is extracted from the voice data stream to be processed by using a preset GMM model; the voice data stream to be processed is a plurality of sampling signal points composed of the target voice data stream and the buffered voice data stream, the voice activity detection parameters include a current sampling rate, an aggressive mode and a silence duration, and the current sampling rate is a sampling rate corresponding to the target voice data stream;
[0010] Perform noise reduction processing on all valid data frames according to noise reduction parameters;
[0011] Converting the effective data frame after the noise reduction process into text data, and performing semantic recognition on the text data to obtain a current semantic recognition rate;
[0012] If the current semantic recognition rate is less than a first preset threshold, adjusting the value of the aggressive mode and the silence duration, and updating the voice activity detection parameter;
[0013] Adjusting the set cache amount and updating the cache instruction;
[0014] The noise reduction parameters are updated.
[0015] In combination with the first aspect, in an implementable manner of the first aspect, extracting non-silent valid data frames from the voice data stream to be processed by using a preset GMM model according to the voice activity detection parameter includes:
[0016] If the current sampling rate is a preset target value, the voice data stream to be processed is framed using a preset data frame length to obtain a plurality of single-frame voice signals;
[0017] If the energy of the single-frame speech signal is greater than a preset minimum threshold value, determining a frequency band likelihood ratio of the single-frame speech signal;
[0018] If the frequency band likelihood ratio of the single-frame speech signal is greater than a preset decision threshold, the single-frame speech signal is determined as non-silent speech data;
[0019] The speech data is smoothed using the parameters of the preset GMM model to obtain a valid data frame.
[0020] In conjunction with the first aspect, in an implementation manner of the first aspect, the method further includes:
[0021] If the frequency band likelihood ratio of the single-frame speech signal is less than or equal to a preset decision threshold, the single-frame speech signal is determined as silent non-speech data;
[0022] If the duration of the non-voice data exceeds the silence duration, the non-voice data is determined as voice end segment data.
[0023] In combination with the first aspect, in an implementation manner of the first aspect, performing noise reduction processing on all valid data frames according to the noise reduction parameter includes:
[0024] Defining a speech probability function of the valid data frame according to an initial noise estimate of the valid data frame;
[0025] Measuring signal classification characteristics of the valid data frame;
[0026] Determining a feature-based speech probability of the valid data frame using the signal classification feature;
[0027] Dynamically weighting the feature-based speech probability of the valid data frame to obtain a weighted speech probability;
[0028] Using the weighted speech probability, modifying the speech probability function of the valid data frame to obtain an updated speech probability function of the valid data frame;
[0029] Updating an initial noise estimate of the valid data frame using the updated speech probability function of the valid data frame;
[0030] The valid data frame is subjected to noise filtering using the updated initial noise estimate of the valid data frame.
[0031] In combination with the first aspect, in an implementable manner of the first aspect, adjusting the value of the aggressive mode and the silence duration includes:
[0032] Detecting whether the current semantic recognition rate is greater than or equal to a second preset threshold;
[0033] If the current semantic recognition rate is greater than or equal to the second preset threshold, adjusting the value of the aggressive mode to the first target value, and adjusting the silence duration to the first silence duration;
[0034] Alternatively, if the current semantic recognition rate is less than the second preset threshold, the value of the aggressive mode is adjusted to the second target value, and the silence duration is adjusted to the second silence duration.
[0035] In combination with the first aspect, in an implementation manner of the first aspect, the adjusting the set cache amount includes:
[0036] The set cache amount is increased according to a preset cache adjustment step until a preset adjustment end condition is met, and the adjustment of the set cache amount is stopped. The preset adjustment end condition includes that the current semantic recognition rate is greater than or equal to the first preset threshold, or the set cache amount reaches one of the maximum preset cache amounts.
[0037] In combination with the first aspect, in an implementation manner of the first aspect, the current sampling rate is determined by:
[0038] The target voice data stream is analyzed and identified by using SIP to obtain a current sampling rate corresponding to the target voice data stream.
[0039] In a second aspect, an embodiment of the present application provides a speech recognition system, comprising: a soft switch component, a cache component, a voice activity detection component, a noise reduction component, and a semantic recognition component connected in sequence, and a control component connected to the soft switch component, the cache component, the voice activity detection component, the noise reduction component, and the semantic recognition component, respectively, wherein the control component is configured to perform the following steps:
[0040] Controlling the soft switch component to obtain a target voice data stream, wherein the target voice data stream is a plurality of sampling signal points obtained after sampling a target voice signal;
[0041] Control the cache component to cache the cached voice data stream according to the cache instruction; the cache instruction includes setting the cache amount, the cached voice data stream is the sampling signal point that meets the set cache amount after sampling the cached voice signal, and the cached voice signal is the latest voice signal obtained after the target voice signal;
[0042] Controlling the voice activity detection component to extract non-silent valid data frames from the voice data stream to be processed using a preset GMM model according to voice activity detection parameters; the voice data stream to be processed is a plurality of sampling signal points composed of the target voice data stream and the buffered voice data stream, the voice activity detection parameters include a current sampling rate, an aggressive mode and a silence duration, and the current sampling rate is a sampling rate corresponding to the target voice data stream;
[0043] Controlling the noise reduction component to perform noise reduction processing on all valid data frames according to the noise reduction parameters;
[0044] If the current semantic recognition rate is less than a first preset threshold, the value of the aggressive mode and the silence duration are adjusted, the voice activity detection parameters are updated, and the set cache amount is adjusted, the cache instructions are updated, and the noise reduction parameters are updated, wherein the current semantic recognition rate is obtained after the semantic recognition component converts the valid data frame after noise reduction processing into text data and performs semantic recognition on the text data.
[0045] In combination with the second aspect, in an implementation method of the second aspect, the semantic recognition component includes a text conversion subcomponent and a semantic recognition subcomponent connected in sequence, the text conversion subcomponent is also connected to the noise reduction component, and the semantic recognition subcomponent is also connected to the control component.
[0046] In combination with the second aspect, in an implementation manner of the second aspect, the control component interacts with the soft switch component, the cache component, the voice activity detection component, the noise reduction component and the semantic recognition component respectively through custom signaling.
[0047] The embodiment of the present application provides a speech recognition method and system. In the speech recognition method, the cached speech signal newly acquired after the target speech signal is sampled and cached. For the to-be-processed speech data stream composed of the target speech data stream and the cached speech data stream, according to the speech activity detection parameter, a preset GMM model is used to extract the non-silent valid data frame from the to-be-processed speech data stream, and the valid data frame is subjected to noise reduction processing, text data conversion and semantic recognition in sequence to obtain the current semantic recognition rate. When the current semantic recognition rate is less than the first preset threshold, the speech activity detection parameter, the cache instruction and the noise reduction parameter are adjusted respectively. The whole method can adjust the configuration parameters such as the speech activity detection parameter, the cache parameter and the noise reduction parameter in real time according to the speech recognition rate, so that the configuration parameters can be continuously corrected according to the actual dialogue scene, so that the configuration parameters can be timely adapted when the dialogue scene changes, the speech extraction accuracy is high, and thus the semantic recognition rate is also high. BRIEF DESCRIPTION OF THE DRAWINGS
[0048] Figure 1 A schematic diagram of a workflow of a speech recognition method provided in an embodiment of the present application;
[0049] Figure 2 A schematic diagram of the structure of a speech recognition system provided in an embodiment of the present application;
[0050] Figure 3 A data interaction diagram of a speech recognition system provided in an embodiment of the present application. DETAILED DESCRIPTION
[0051] In order to make the objectives, technical solutions and advantages of the present application clearer, the implementation methods of the present application will be further described in detail below with reference to the accompanying drawings.
[0052] In order to solve the technical problem that the fixed configuration parameters used in the existing speech recognition system cannot adapt to the new dialogue scenario in time, resulting in a low semantic recognition rate of speech data, this application discloses a speech recognition method through the following embodiments. The speech recognition method provided in the embodiment of this application is applied to the speech recognition system installed in the intelligent voice customer service. Figure 1 As shown in the workflow diagram, a speech recognition method provided in an embodiment of the present application specifically includes the following steps:
[0053] 101: Obtain the target voice data stream.
[0054] The target voice data stream is a plurality of sampling signal points obtained after sampling the target voice signal.
[0055] Specifically, the target speech signal generated from the beginning to the end of the client's speech is a continuous waveform signal in the time domain. The target speech signal that is continuous in the time domain is sampled according to a preset sampling interval to obtain multiple sampling signal points. Among them, the sampling signal point actually represents a section of waveform data, usually 16-bit (binary digit) data. The embodiment of the present application does not limit the specific value of the preset sampling interval, and it can be set according to needs and actual conditions.
[0056] 102: Cache the voice data stream according to the cache instruction.
[0057] The cache instruction includes setting the cache amount. The cached voice data stream is a sampling signal point that meets the set cache amount obtained by sampling the cached voice signal, and the cached voice signal is the latest voice signal obtained after the target voice signal.
[0058] Specifically, the cached voice signal is a voice signal obtained after the target voice signal, and both the target voice signal and the cached voice signal are continuous voice signals in the time domain. That is, after obtaining the target voice data stream, according to the set cache amount, the cached voice data stream that meets the set cache amount will continue to be obtained. The cached voice data stream can be sampled at the same sampling rate as the target voice data stream.
[0059] The minimum preset cache amount and the maximum preset cache amount can be preset according to needs and actual conditions, and the initial value of the set cache amount is set to the minimum preset cache amount. Exemplarily, the minimum preset cache amount can be set to 60ms (milliseconds) data, and the maximum preset cache amount can be set to 1000ms (milliseconds) data. In addition, the minimum preset cache amount can also be set to 0. The embodiment of the present application does not limit the specific settings of the minimum preset cache amount and the maximum preset cache amount.
[0060] In this way, caching the buffered voice data stream can enhance the continuity of the voice data frame, thereby dynamically adjusting the silence compensation, avoiding the situation of swallowing sound, and improving the accurate recognition rate of effective voice data.
[0061] 103: Extracting non-silent valid data frames from the voice data stream to be processed using a preset GMM model according to the voice activity detection parameter.
[0062] The voice data stream to be processed is a plurality of sampling signal points composed of the target voice data stream and the buffered voice data stream. The voice activity detection parameters include the current sampling rate, the aggressive mode and the silence duration. The current sampling rate is the sampling rate corresponding to the target voice data stream.
[0063] Silence is a relative concept and usually refers to data that is neither noise nor valid sound.
[0064] There are many ways to determine the current sampling rate. In some embodiments, SIP can be used to analyze and identify the target voice data stream to obtain the current sampling rate corresponding to the target voice data stream. Among them, SIP (Session initialization Protocol) is an IP (Internet Protocol) telephone signal protocol used to establish, modify and terminate VOIP (Voice over Internet Protocol) calls. In other embodiments, other methods can also be used to determine the current sampling rate, for example, when sampling the voice signal, directly obtain the preset sampling interval and then convert it into the current sampling rate. The embodiments of the present application do not specifically limit this.
[0065] Aggressive mode usually includes four modes, namely normal, low, medium and high, which are distinguished by the values of 0, 1, 2 and 3 of the aggressive mode respectively. The aggressiveness is positively correlated with the value. The value of the aggressive mode can be used to calculate the Gaussian model probability.
[0066] The GMM (Gaussian Mixture Model) model uses the Gaussian probability density function to accurately quantify things. Using the GMM model to process speech data is a voice activity detection technology (VAD), which is mainly used to accurately locate the start and end points of speech from noisy speech, that is, to separate silence from actual speech.
[0067] In some embodiments, according to the voice activity detection parameters, a preset GMM model is used to extract non-silent valid data frames from the voice data stream to be processed, which can be specifically implemented by the following steps:
[0068] Step 1: Check whether the current sampling rate is a preset target value. If the current sampling rate is the preset target value, continue to step 2; if the current sampling rate is not the preset target value, continue to step 10.
[0069] Specifically, in an embodiment of the present application, the preset target value can be set to 8kHz.
[0070] Step 2: divide the voice data stream to be processed into frames using a preset data frame length to obtain multiple single-frame voice signals.
[0071] Specifically, in the embodiment of the present application, the preset data frame length can be set to 20ms (milliseconds). In this way, a relatively stable single-frame speech signal can be obtained, which is more conducive to subsequent calculations.
[0072] According to the preset data frame length, the initial value of the aggressive mode can be set to 0. In addition, the longer the data frame length is, the larger the initial value of the aggressive mode can be set to.
[0073] Step 3: Detect whether the energy of the single-frame speech signal is greater than the preset minimum threshold value. If the energy of the single-frame speech signal is greater than the preset minimum threshold value, execute step 4; if the energy of the single-frame speech signal is less than or equal to the preset minimum threshold value, execute step 8.
[0074] Specifically, in the embodiment of the present application, the preset minimum threshold value can be obtained based on the relevant data set of the current dialogue scene collected in advance. When the energy of the single-frame speech signal is lower than the preset minimum threshold value, the single-frame speech signal can be considered to be in a silent state. The energy of the single-frame speech signal can be determined using a short-term speech energy algorithm, or other algorithms can be used to determine it, and the embodiment of the present application does not specifically limit this.
[0075] Step 4: determine the frequency band likelihood ratio of the single-frame speech signal.
[0076] Step 5: Detect whether the frequency band likelihood ratio of the single-frame speech signal is greater than the preset decision threshold. If the frequency band likelihood ratio of the single-frame speech signal is greater than the preset decision threshold, execute step 6; if the frequency band likelihood ratio of the single-frame speech signal is less than or equal to the preset decision threshold, execute step 8.
[0077] Step six: determine the single-frame voice signal as non-silent voice data.
[0078] Step 7: Use the parameters of the preset GMM model to smooth the speech data to obtain a valid data frame.
[0079] Specifically, the parameters of the preset GMM model include the mean and variance of the speech data.
[0080] Step 8, determining the single frame voice signal as silent voice data;
[0081] Step 9, detect whether the duration of no voice data exceeds the silence duration. If the duration of no voice data exceeds the silence duration, the no voice data is determined as the voice end segment data. Otherwise, no additional processing is performed on the no voice data.
[0082] Specifically, the initial value of the silence duration can be set according to needs and actual conditions, and this application does not make any specific restrictions on this.
[0083] Step 10: resample the voice data stream to be processed so that the current sampling rate meets the preset target value, and then perform the actions of step 2 to step 9 on the new voice data stream to be processed obtained after resampling.
[0084] Exemplarily, if the current sampling rate is 16 kHz, the voice data stream to be processed is downsampled so that the current sampling rate is 8 kHz.
[0085] It should be noted that step 102 and step 103 can be performed simultaneously.
[0086] 104: Perform noise reduction processing on all valid data frames according to the noise reduction parameters.
[0087] In some embodiments, each valid data frame may be subjected to noise reduction processing by the following steps:
[0088] The first step is to define the speech probability function of the valid data frame based on the initial noise estimation of the valid data frame.
[0089] The second step is to measure the signal classification characteristics of valid data frames.
[0090] The third step is to determine the feature-based speech probability of the valid data frame using the signal classification features.
[0091] The fourth step is to weight the feature-based speech probability of the valid data frame by a dynamic factor to obtain a weighted speech probability.
[0092] The dynamic factors include signal classification features and threshold parameters. The threshold parameters can be used to calculate speech probability or noise probability.
[0093] The fifth step is to modify the speech probability function of the valid data frame using the weighted speech probability to obtain an updated speech probability function of the valid data frame.
[0094] Step 6: Update the initial noise estimate of the valid data frame using the updated speech probability function of the valid data frame.
[0095] In the seventh step, the valid data frame is subjected to noise filtering using the updated initial noise estimate of the valid data frame.
[0096] In this way, the voice quality of the valid data frame can be greatly improved, which is beneficial to the accuracy of subsequent text conversion.
[0097] In other embodiments, other methods may be used to perform noise reduction processing on each valid data frame, such as estimating the noise using a recursive averaging method, or using different types of filters, etc., which is not limited in the embodiments of the present application.
[0098] 105: Convert the valid data frame after the noise reduction process into text data, and perform semantic recognition on the text data to obtain a current semantic recognition rate.
[0099] Specifically, the semantic recognition rate is the same as the intention recognition rate, which indicates the recognition rate of correct semantics. For example, the text data contains 100 sentences in total, and 85 sentences are semantically recognized and are completely consistent with the original sentences, then the semantic recognition rate is 85%.
[0100] 106: Detect whether the current semantic recognition rate is less than a first preset threshold value. If the current semantic recognition rate is less than the first preset threshold value, execute step 107; otherwise, execute step 110.
[0101] Specifically, the first preset threshold value may be set to 85%. The first preset threshold value may also be set to other values according to needs and actual conditions, which is not specifically limited in the embodiment of the present application.
[0102] 107: Adjust the value of aggressive mode and silence duration, and update voice activity detection parameters.
[0103] Specifically, in the embodiment of the present application, the value of the aggressive mode and the mute duration can be adjusted in the following manner:
[0104] Step 1: Detect whether the current semantic recognition rate is greater than or equal to a second preset threshold. If the current semantic recognition rate is greater than or equal to the second preset threshold, execute step 2; if the current semantic recognition rate is less than the second preset threshold, execute step 3.
[0105] Step 2: Adjust the value of the aggressive mode to the first target value, and adjust the silence duration to the first silence duration.
[0106] Step three: adjust the value of the aggressive mode to the second target value, and adjust the silence duration to the second silence duration.
[0107] Exemplarily, the second preset threshold value can be set to 75%; the first target value can be set to 2; the second target value can be set to 1; the first silence duration can be set to any value in the range of 700-800ms; the second silence duration can be set to any value in the range of 500-700ms. The embodiment of the present application does not specifically limit the values of the second preset threshold value, the first target value, the first silence duration, the second target value, and the second silence duration.
[0108] In this way, the voice activity detection parameters can be adjusted in real time according to the semantic recognition rate, so that the voice detection can be more in line with the current dialogue scenario, with greater flexibility and a higher semantic recognition rate.
[0109] 108: Adjust the cache size and update the cache instructions.
[0110] Specifically, in the embodiment of the present application, the cache amount can be adjusted and set in the following manner:
[0111] The set cache amount is increased according to the preset cache adjustment step length until the preset adjustment end condition is met, and the set cache amount is stopped from being adjusted. The preset adjustment end condition includes one of the following: the current semantic recognition rate is greater than or equal to the first preset threshold, or the set cache amount reaches the maximum preset cache amount.
[0112] Exemplarily, the preset cache adjustment step size may be set to 60 ms, which is not specifically limited in the embodiments of the present application.
[0113] In this way, the cache size can be adjusted in real time according to the semantic recognition rate, which not only takes into account the accuracy of semantic recognition and the workload of text conversion, but also makes the voice detection more in line with the current dialogue scenario and more flexible.
[0114] 109: Update noise reduction parameters.
[0115] 110: Reduce the cache size and do not adjust other parameters.
[0116] Specifically, in the embodiment of the present application, the set cache amount can be reduced by:
[0117] The set cache amount is reduced according to the preset cache adjustment step until the preset end condition is met, and the set cache amount is stopped from being reduced. The preset end condition includes the current semantic recognition rate being less than the first preset threshold, or the set cache amount reaching the minimum preset cache amount. The specific parameters can be adjusted with reference to step 108.
[0118] After the voice activity detection parameters, cache instructions, and noise reduction parameters are updated, speech recognition is performed in real time according to the updated parameters.
[0119] In this way, the speech recognition method provided in the embodiment of the present application can adjust configuration parameters such as voice activity detection parameters, cache parameters, and noise reduction parameters in real time according to the speech recognition rate, so that the configuration parameters can be continuously corrected according to the actual dialogue scenario, so that the configuration parameters can adapt in time when the dialogue scenario changes, the speech extraction accuracy is high, and then the semantic recognition rate is also high.
[0120] The following is a system embodiment of the present application, which can be used to execute the method embodiment of the present application. For details not disclosed in the system embodiment of the present application, please refer to the method embodiment of the present application.
[0121] Figure 2 The following is a schematic diagram showing the structure of a speech recognition system provided by an embodiment of the present application. Figure 2 As shown, the system provided by the embodiment of the present application has the function of implementing the above-mentioned speech recognition method, and the function can be implemented by hardware, or by hardware executing corresponding software. The system may include: a soft switch component 201, a cache component 202, a voice activity detection component 203, a noise reduction component 204 and a semantic recognition component 205 connected in sequence, and a control component 206 connected to the soft switch component 201, the cache component 202, the voice activity detection component 203, the noise reduction component 204 and the semantic recognition component 205 respectively. Among them, the control component 206 is configured to perform the following steps:
[0122] The soft switch component 201 is controlled to obtain a target voice data stream, where the target voice data stream is a plurality of sampling signal points obtained after sampling a target voice signal.
[0123] The control cache component 202 caches the cached voice data stream according to the cache instruction. The cache instruction includes setting the cache amount. The cached voice data stream is the sampling signal point that meets the set cache amount obtained after sampling the cached voice signal. The cached voice signal is the latest voice signal obtained after the target voice signal.
[0124] The control voice activity detection component 203 extracts non-silent valid data frames from the voice data stream to be processed using a preset GMM model according to the voice activity detection parameters. The voice data stream to be processed is a plurality of sampling signal points composed of the target voice data stream and the cached voice data stream. The voice activity detection parameters include the current sampling rate, the aggressive mode and the silence duration. The current sampling rate is the sampling rate corresponding to the target voice data stream. The specific method for extracting valid data frames can be performed with reference to the aforementioned step 103, which will not be repeated here.
[0125] The noise reduction component 204 is controlled to perform noise reduction processing on all valid data frames according to the noise reduction parameters. The specific method of noise reduction processing can be performed with reference to the aforementioned step 104, which will not be described in detail here.
[0126] If the current semantic recognition rate is less than the first preset threshold, the value of the aggressive mode and the silence duration are adjusted, the voice activity detection parameters are updated, and the set cache amount is adjusted, the cache instructions are updated, and the noise reduction parameters are updated, wherein the current semantic recognition rate is obtained after the semantic recognition component 205 converts the valid data frame after noise reduction processing into text data and performs semantic recognition on the text data.
[0127] In one achievable manner, the semantic recognition component 205 includes a text conversion subcomponent 2051 and a semantic recognition subcomponent 2052 connected in sequence. The text conversion subcomponent 2051 is also connected to the noise reduction component 204 , and the semantic recognition subcomponent 2052 is also connected to the control component 206 .
[0128] In an implementable manner, the control component 206 performs data interaction with the soft switch component 201 , the cache component 202 , the voice activity detection component 203 , the noise reduction component 204 and the semantic recognition component 205 through custom signaling.
[0129] Figure 3 The data interaction diagram of a speech recognition system provided by an embodiment of the present application is exemplarily shown. Specifically, the data interaction process between the soft switch component 201, the cache component 202, the voice activity detection component 203, the noise reduction component 204, the semantic recognition component 205, and the control component 206 is as follows:
[0130] In the first step, the control component 206 sends a start instruction to the soft switch component 201 , sends a cache instruction to the cache component 202 , sends a voice activity detection parameter to the voice activity detection component 203 , and sends a noise reduction parameter to the noise reduction component 204 .
[0131] The control component 206 can control the soft switch component 201 to start acquiring the target voice data stream in real time according to the actual operation of the service, thereby reducing the input of invalid voice streams.
[0132] In the second step, the soft switch component 201 starts to obtain the target voice data stream according to the start instruction, and continues to obtain the buffered voice data stream according to the set buffer amount to obtain the voice data stream to be processed.
[0133] In the third step, the soft switch component 201 sends the voice data stream to be processed to the buffer component 202 .
[0134] In the fourth step, the cache component 202 caches the voice data stream according to the cache instruction.
[0135] In the fifth step, the buffer component 202 sends the voice data stream to be processed to the voice activity detection component 203 .
[0136] In the sixth step, the voice activity detection component 203 extracts non-silent valid data frames from the voice data stream to be processed using a preset GMM model according to the voice activity detection parameters.
[0137] In the seventh step, the voice activity detection component 203 sends the valid data frame and the buffered data to the noise reduction component 204 .
[0138] In the eighth step, the noise reduction component 204 performs noise reduction processing on all valid data frames according to the noise reduction parameters.
[0139] In the ninth step, the noise reduction component 204 sends the noise-reduced data to the semantic recognition component 205 .
[0140] In the tenth step, the semantic recognition component 205 converts the noise-reduced data into text data, and performs semantic recognition on the text data to obtain a current semantic recognition rate.
[0141] In the eleventh step, the semantic recognition component 205 sends the current semantic recognition rate to the control component 206 .
[0142] In step 12, when the control component 206 detects that the current semantic recognition rate is less than the first preset threshold, the control component 206 updates the voice activity detection parameters, the cache instructions and the noise reduction parameters respectively.
[0143] In step 13, the control component 206 sends the updated cache instruction to the cache component 202 , sends the updated voice activity detection parameter to the voice activity detection component 203 , and sends the updated noise reduction parameter to the noise reduction component 204 .
[0144] In this way, in a speech recognition system provided by an embodiment of the present application, the control component can adjust configuration parameters such as voice activity detection parameters, cache parameters, and noise reduction parameters in real time according to the speech recognition rate, so that the configuration parameters can be continuously corrected according to the actual dialogue scenario, so that the configuration parameters can adapt in time when the dialogue scenario changes, the speech extraction accuracy is high, and thus the semantic recognition rate is also high.
[0145] The present application is described in detail above in conjunction with specific implementation methods and exemplary examples, but these descriptions cannot be understood as limiting the present application. Those skilled in the art understand that, without departing from the spirit and scope of the present application, a variety of equivalent replacements, modifications or improvements can be made to the technical solution of the present application and its implementation methods, all of which fall within the scope of the present application. The scope of protection of the present application shall be subject to the attached claims.
Claims
1. A speech recognition method, characterized in that: include: Acquire a target voice data stream, wherein the target voice data stream is a plurality of sampling signal points obtained after sampling a target voice signal; Cache the cached voice data stream according to the cache instruction; the cache instruction includes setting the cache amount, the cached voice data stream is the sampling signal point that meets the set cache amount after sampling the cached voice signal, and the cached voice signal is the latest voice signal obtained after the target voice signal; According to the voice activity detection parameters, a non-silent valid data frame is extracted from the voice data stream to be processed by using a preset GMM model; the voice data stream to be processed is a plurality of sampling signal points composed of the target voice data stream and the buffered voice data stream, the voice activity detection parameters include a current sampling rate, an aggressive mode and a silence duration, and the current sampling rate is a sampling rate corresponding to the target voice data stream; Perform noise reduction processing on all valid data frames according to noise reduction parameters; Converting the effective data frame after the noise reduction process into text data, and performing semantic recognition on the text data to obtain a current semantic recognition rate; If the current semantic recognition rate is less than a first preset threshold, adjusting the value of the aggressive mode and the silence duration, and updating the voice activity detection parameter; Adjusting the set cache amount and updating the cache instruction; The noise reduction parameters are updated.
2. The method according to claim 1, characterized in that The method of extracting non-silent valid data frames from the voice data stream to be processed by using a preset GMM model according to the voice activity detection parameter includes: If the current sampling rate is a preset target value, the voice data stream to be processed is framed using a preset data frame length to obtain a plurality of single-frame voice signals; If the energy of the single-frame speech signal is greater than a preset minimum threshold value, determining a frequency band likelihood ratio of the single-frame speech signal; If the frequency band likelihood ratio of the single-frame speech signal is greater than a preset decision threshold, the single-frame speech signal is determined as non-silent speech data; The speech data is smoothed using the parameters of the preset GMM model to obtain a valid data frame.
3. The method according to claim 2, characterized in that Also includes: If the frequency band likelihood ratio of the single-frame speech signal is less than or equal to a preset decision threshold, the single-frame speech signal is determined as silent non-speech data; If the duration of the non-voice data exceeds the silence duration, the non-voice data is determined as voice end segment data.
4. The method according to claim 1, characterized in that: The performing noise reduction processing on all valid data frames according to the noise reduction parameters includes: Defining a speech probability function of the valid data frame according to an initial noise estimate of the valid data frame; Measuring signal classification characteristics of the valid data frame; Determining a feature-based speech probability of the valid data frame using the signal classification feature; Weighting the feature-based speech probability of the valid data frame by a dynamic factor to obtain a weighted speech probability; Using the weighted speech probability, modifying the speech probability function of the valid data frame to obtain an updated speech probability function of the valid data frame; Updating an initial noise estimate of the valid data frame using the updated speech probability function of the valid data frame; The valid data frame is subjected to noise filtering using the updated initial noise estimate of the valid data frame.
5. The method according to claim 1, characterized in that The adjusting the value of the aggressive mode and the silence duration includes: Detecting whether the current semantic recognition rate is greater than or equal to a second preset threshold; If the current semantic recognition rate is greater than or equal to the second preset threshold, adjusting the value of the aggressive mode to the first target value, and adjusting the silence duration to the first silence duration; Alternatively, if the current semantic recognition rate is less than the second preset threshold, the value of the aggressive mode is adjusted to the second target value, and the silence duration is adjusted to the second silence duration.
6. The method according to claim 1, characterized in that The adjusting the set cache amount includes: The set cache amount is increased according to a preset cache adjustment step until a preset adjustment end condition is met, and the adjustment of the set cache amount is stopped. The preset adjustment end condition includes that the current semantic recognition rate is greater than or equal to the first preset threshold, or the set cache amount reaches one of the maximum preset cache amounts.
7. The method according to claim 1, characterized in that The current sampling rate is determined by: The target voice data stream is analyzed and identified by using SIP to obtain a current sampling rate corresponding to the target voice data stream.
8. A speech recognition system, characterized in that: include: A soft switch component, a cache component, a voice activity detection component, a noise reduction component and a semantic recognition component connected in sequence, and a control component connected to the soft switch component, the cache component, the voice activity detection component, the noise reduction component and the semantic recognition component respectively, wherein the control component is configured to perform the following steps: Controlling the soft switch component to obtain a target voice data stream, wherein the target voice data stream is a plurality of sampling signal points obtained after sampling a target voice signal; Control the cache component to cache the cached voice data stream according to the cache instruction; the cache instruction includes setting the cache amount, the cached voice data stream is the sampling signal point that meets the set cache amount after sampling the cached voice signal, and the cached voice signal is the latest voice signal obtained after the target voice signal; Controlling the voice activity detection component to extract non-silent valid data frames from the voice data stream to be processed using a preset GMM model according to voice activity detection parameters; the voice data stream to be processed is a plurality of sampling signal points composed of the target voice data stream and the buffered voice data stream, the voice activity detection parameters include a current sampling rate, an aggressive mode and a silence duration, and the current sampling rate is a sampling rate corresponding to the target voice data stream; Controlling the noise reduction component to perform noise reduction processing on all valid data frames according to the noise reduction parameters; If the current semantic recognition rate is less than a first preset threshold, the value of the aggressive mode and the silence duration are adjusted, the voice activity detection parameters are updated, and the set cache amount is adjusted, the cache instructions are updated, and the noise reduction parameters are updated, wherein the current semantic recognition rate is obtained after the semantic recognition component converts the valid data frame after noise reduction processing into text data and performs semantic recognition on the text data.
9. The system according to claim 8, characterized in that The semantic recognition component includes a text conversion subcomponent and a semantic recognition subcomponent connected in sequence, the text conversion subcomponent is also connected to the noise reduction component, and the semantic recognition subcomponent is also connected to the control component.
10. The system according to claim 8, characterized in that The control component performs data interaction with the soft switch component, the cache component, the voice activity detection component, the noise reduction component and the semantic recognition component respectively through custom signaling.
Citation Information
Patent Citations
Speech recognition method and device, computer equipment and storage medium
CN108305628A
Intention recognition method, electronic equipment and computer readable storage medium
CN113220839A