Equipment control methods, apparatus, devices and readable storage media
The wake word recognition model trained by machine learning, combined with positive samples, negative samples and similar sample sets, identifies the wake word in the audio to be recognized, which solves the problem of high false wake-up rate of devices and achieves higher wake-up accuracy and user experience.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING XIAOMI MOBILE SOFTWARE CO LTD
- Filing Date
- 2023-09-27
- Publication Date
- 2026-05-26
AI Technical Summary
Existing devices have a high false wake-up rate during voice wake-up, resulting in a poor user experience.
A wake word recognition model trained based on machine learning is adopted. It is trained with positive samples, negative samples and similar sample sets to identify whether the audio to be recognized contains a preset wake word. The optimal decoding path is determined based on acoustic features and decoding graph to distinguish between preset wake words, similar wake words and non-wake words.
It reduces the false wake-up rate of devices, improves user experience, ensures that devices are accurately woken up when needed, and reduces power consumption in non-wake-up states.
Smart Images

Figure CN119724169B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of intelligent voice technology, and in particular to a device control method, apparatus, device and readable storage medium. Background Technology
[0002] Voice wake-up refers to the device detecting a specific segment of the speaker in a continuous voice stream in real time. Voice wake-up is usually used to activate the device or start the system. These devices will set specific preset wake words. When the user says the preset wake word, it means that he / she wants to wake up the device and issue commands to the device.
[0003] However, the current device has a high false wake-up rate. Summary of the Invention
[0004] To overcome the problems existing in the related technologies, this disclosure provides a device control method, apparatus, device and readable storage medium.
[0005] According to a first aspect of the present disclosure, a device control method is provided, comprising:
[0006] Acquire the audio to be identified, which contains speech information;
[0007] The system identifies the audio to be identified based on a preset wake-up word recognition model to determine whether the audio contains a preset wake-up word. The wake-up word recognition model is trained using machine learning methods on training samples. The training samples include a positive sample set and a negative sample set. The positive sample set contains multiple positive samples, each containing a positive audio signal and a positive label. The positive audio signal is the speech audio of the preset wake-up word, and the positive label contains symbols corresponding to all phonemes in the preset wake-up word. The negative sample set contains multiple negative samples, each containing a negative audio signal and a negative label. The negative audio signal is the speech audio that does not contain any phonemes from the preset wake-up word, and the negative label uses preset symbols.
[0008] If the audio to be identified contains the preset wake word, the device is controlled to enter the wake-up state; otherwise, the device is controlled to remain in the non-wake-up state.
[0009] Optionally, the training samples further include a similar sample set, which includes multiple similar samples. Each similar sample includes similar audio and similar tags. The similar audio refers to speech audio that contains some phonemes of the preset wake word. The similar tags include the preset symbol and the symbol in the similar audio that has the same phonemes as the preset wake word.
[0010] Optionally, the step of identifying the audio to be identified based on a preset wake-up word recognition model to determine whether the audio to be identified contains a preset wake-up word includes:
[0011] The audio to be identified is segmented to obtain multiple time-series audio frames;
[0012] Acoustic features are extracted for each audio frame to obtain the acoustic features corresponding to each audio frame;
[0013] The acoustic features corresponding to multiple audio frames are sequentially input into the wake word recognition model to obtain an acoustic score corresponding to each acoustic feature; wherein, the acoustic score includes multiple probability values, each probability value representing the probability that the acoustic feature is a phoneme corresponding to the preset wake word;
[0014] The optimal decoding path corresponding to the audio to be identified is obtained by processing the acoustic score of the acoustic features of each audio frame and the preset decoding map.
[0015] If the optimal decoding path is consistent with the preset wake-up path corresponding to the preset wake-up word, then it is determined that the audio to be identified contains the preset wake-up word.
[0016] Optionally, the decoding graph includes multiple nodes, and at least two of the nodes form any one of the preset wake-up path, non-wake-up path, and similar wake-up path decoding paths. The preset wake-up path is a decoding path that indicates the device entering the wake-up state, and the non-wake-up path and the similar wake-up path are decoding paths that indicate the device entering the non-wake-up state.
[0017] Optionally, the step of processing the acoustic features of each audio frame based on an acoustic score and a preset decoding map to obtain the optimal decoding path corresponding to each audio frame includes:
[0018] Based on the acoustic score of each audio frame, the cost score of each audio frame passing through the corresponding decoding path in the decoding graph is obtained;
[0019] From the multiple decoding paths, the decoding path corresponding to the minimum cost score is selected as the optimal decoding path.
[0020] Optionally, the plurality of decoding paths includes a first decoding path, and the step of obtaining the cost score of each audio frame through the corresponding decoding path in the decoding graph based on the acoustic score of each audio frame includes:
[0021] The cost score of the first decoding path is obtained based on the acoustic score corresponding to the first decoding path and the weight of the first decoding path.
[0022] Optionally, the plurality of decoding paths includes a non-first decoding path, and the step of obtaining the cost score of each audio frame through the corresponding decoding path in the decoding graph based on the acoustic score of each audio frame includes:
[0023] The cost score of the non-first decoding path is obtained based on the cost score of the previous decoding path, the acoustic score of the non-first decoding path, and the weight of the non-first decoding path.
[0024] Optionally, all anti-labels in the anti-sample set use the same preset symbol.
[0025] Optionally, the number of phonemes that are the same between the similar audio and the preset wake word contained in the similar tag is N, where N is greater than or equal to 1.
[0026] According to a second aspect of the present disclosure, a device control apparatus is provided, comprising:
[0027] The acquisition module is configured to acquire audio to be recognized, the audio containing voice information;
[0028] The recognition module is configured to recognize the audio to be recognized based on a preset wake-up word recognition model, and determine whether the audio to be recognized contains a preset wake-up word. The wake-up word recognition model is trained using machine learning methods based on training samples. The training samples include a positive sample set and a negative sample set. The positive sample set contains multiple positive samples, each containing a positive audio and a positive label. The positive audio is the speech audio of the preset wake-up word, and the positive label contains symbols corresponding to all phonemes in the preset wake-up word. The negative sample set contains multiple negative samples, each containing negative audio and a negative label. The negative audio is speech audio that does not contain any phonemes from the preset wake-up word, and the negative label uses preset symbols.
[0029] The control module is configured to control the device to enter a wake-up state if the audio to be identified contains the preset wake-up word, and otherwise control the device to remain in a non-wake-up state.
[0030] According to a third aspect of the present disclosure, an apparatus is provided, comprising:
[0031] processor;
[0032] Memory used to store processor-executable instructions;
[0033] The processor is configured as follows:
[0034] The steps of performing the device control method provided in the first aspect of the embodiments of this disclosure.
[0035] According to a fourth aspect of the present disclosure, a computer-readable storage medium is provided that stores computer program instructions thereon, which, when executed by a processor, implement the steps of the device control method provided in the first aspect of the present disclosure.
[0036] The technical solutions provided by the embodiments of this disclosure may include the following beneficial effects:
[0037] After the device can identify the audio to be identified, it uses a wake word recognition model to identify the audio and determine whether the audio contains a preset wake word. If the preset wake word is not contained, the device is kept in a non-wake state; if the wake word is contained, the device is put into a wake state.
[0038] In this process, since the training samples for training the wake word recognition model include a positive sample set, which contains positive audio and positive labels, the trained wake word recognition model can accurately identify whether the audio to be recognized contains a preset wake word. Since the training samples include a negative sample set, which contains negative audio and negative labels, the trained wake word recognition model can accurately identify whether the audio to be recognized contains a non-preset wake word. In this way, the wake word recognition model can accurately distinguish between preset wake words and non-preset wake words, thereby reducing the false wake-up rate of the device.
[0039] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit this disclosure. Attached Figure Description
[0040] The accompanying drawings, which are incorporated in and form a part of this specification, illustrate embodiments consistent with this disclosure and, together with the description, serve to explain the principles of this disclosure.
[0041] Figure 1 This is a flowchart illustrating a device control method according to an exemplary embodiment;
[0042] Figure 2 This is an operational schematic diagram of a wake-up device according to an exemplary embodiment;
[0043] Figure 3 This is an operational schematic diagram of another wake-up device according to an exemplary embodiment;
[0044] Figure 4 This is a logical schematic diagram illustrating a device control method according to an exemplary embodiment;
[0045] Figure 5 This is a schematic diagram illustrating a wake word recognition model trained according to an exemplary embodiment;
[0046] Figure 6This is a logical schematic diagram illustrating another device control method according to an exemplary embodiment;
[0047] Figure 7 This is a schematic diagram illustrating a decoding diagram according to an exemplary embodiment;
[0048] Figure 8 This is a schematic diagram illustrating another decoding diagram according to an exemplary embodiment;
[0049] Figure 9 This is a block diagram illustrating a device control apparatus according to an exemplary embodiment;
[0050] Figure 10 This is a block diagram illustrating a device according to an exemplary embodiment. Detailed Implementation
[0051] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numerals in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this disclosure as detailed in the appended claims.
[0052] It should be noted that all actions involving the acquisition of signals, information, or data in this disclosure are carried out in compliance with the relevant data protection laws and policies of the country where the location is situated, and with authorization from the owner of the relevant device.
[0053] Figure 1 This is a flowchart illustrating a device control method according to an exemplary embodiment, such as... Figure 1 As shown, the device control method is applied to a device, which can be a mobile phone, television, speaker, smart home device, etc. The smart home device can be a washing machine, air conditioner, microwave oven, etc., which have voice recognition function. The device control method includes the following steps.
[0054] In step S11, the audio to be identified is obtained, which contains voice information.
[0055] The audio to be identified refers to the voice stream emitted by a sound source in the environment in which the device is located, such as the voice spoken by a user, the voice emitted by a television or mobile phone, or the voice emitted by an animal. The device is equipped with an audio acquisition device such as a microphone to collect the audio emitted by the sound source. The audio to be identified can also be the voice stream emitted by the device itself. For example, if the device is a television, the audio emitted by the sound source is the voice stream played by the television.
[0056] In step S12, the audio to be identified is identified based on a preset wake word recognition model to determine whether the audio to be identified contains a preset wake word.
[0057] The wake-word recognition model is trained using machine learning methods based on training samples. Please refer to [link / reference]. Figure 5 As shown, the training samples include a positive sample set and a negative sample set.
[0058] The positive sample set contains multiple positive samples. Each positive sample contains positive audio and positive labels. The positive audio is the speech audio of the preset wake word, and the positive labels contain the symbols corresponding to all phonemes in the preset wake word.
[0059] The preset wake word is a pre-set wake word, such as "Xiao Ai Tongxue". "Xiao Ai Tongxue" has seven phoneme symbols: "x, iao, ai, t, ong, x, ue".
[0060] For a positive sample set A = {a1, a2, a3, ... a4} n} contains n positive samples, each positive sample is represented by a n Represented. Each positive sample a n It includes: positive audio and positive tags. Positive audio refers to the voice audio corresponding to the preset wake word. For example, if the preset wake word is "Xiao Ai Tongxue," then the positive audio is the voice audio of "Xiao Ai Tongxue." Positive tags contain symbols representing all the phonemes in the preset wake word. For example, the pinyin for "Xiao Ai Tongxue" is "xiao ai tong xue," which contains seven phoneme symbols: x, iao, ai, t, ong, x, and ue. The positive tags are these seven phoneme symbols.
[0061] The countersample set contains multiple countersamples. Each countersample contains counteraudio and counterlabels. Counteraudio is speech audio that does not contain any phonemes from the preset wake word. Counterlabels use preset symbols. Counteraudio not containing any phonemes from the preset wake word can also be understood as counteraudio containing non-preset wake words, where any phonemes in the non-preset wake word are different from any phonemes in the preset wake word. For example, the non-preset wake word "Have you eaten?" has seven phoneme symbols: "chi, f, an, l, e, m, a". However, the seven phoneme symbols in "Have you eaten?" are different from the seven phoneme symbols in "Xiao Ai Tongxue": "x, iao, ai, t, ong, x, ue".
[0062] For the antisample set B = {b1, b2, b3, ... b} m} contains m countersamples, each countersample is represented by b m Indicated. Each countersample b mIt includes: anti-audio and anti-label. Anti-audio refers to speech audio that does not contain any phonemes from the preset wake word. For example, "Have you eaten?" or "What day is it today?" do not contain the phonemes of the preset wake word. Anti-label uses a preset symbol. All anti-labels in the anti-sample set use the exact same preset symbol. For example, if the anti-audio is the speech audio of "Have you eaten?" or "What day is it today?", then the anti-labels for "Have you eaten?" and "What day is it today?" can both be represented by the preset symbol "filler". Of course, other symbols can also be used for the preset symbol, and this disclosure does not limit this.
[0063] The reason for uniformly representing anti-labels with preset symbols is that, for the wake word recognition model, all non-preset wake words are the same, and there is no need to distinguish and recognize different non-preset wake words to wake up the device. Therefore, the labels of all non-preset wake words can be set as preset symbols, thereby reducing the computational load of the wake word recognition model.
[0064] Because each user speaks the preset wake-up word at a different speed, the duration for each user to speak the preset wake-up word also varies. Therefore, the device averages the duration of the audio to be recognized spoken by multiple different users to obtain an average duration. When the device subsequently collects audio emitted by the sound source, it can collect audio with a duration longer than the average duration, thus ensuring that the acquired audio contains the complete preset wake-up word.
[0065] In step S13, if the audio to be identified contains the preset wake word, the device is controlled to enter the wake-up state; otherwise, the device is controlled to remain in the non-wake-up state.
[0066] If the audio to be identified contains a preset wake-up word, it means that the audio emitted by the sound source is used to control the device to wake up. At this time, the device can be controlled to switch from a non-wake-up state to a wake-up state. The preset wake-up word emitted by the sound source can be when the sound source and the device are in the same space (for example, when the sound source is a user, the user emits the preset wake-up word towards the device), or when the sound source and the device are in different spaces (for example, when the sound source is a remote user, the remote user remotely emits the preset wake-up word to the near user through a mobile phone, and the near user plays the preset wake-up word through a mobile phone, so the remote user can remotely control the device to wake up).
[0067] The wake-up state refers to the state in which a device can respond to user commands and perform operations. For example, when a user outputs a voice command to play music, the speaker performs the operation of playing music, which is performed in the wake-up state.
[0068] If the audio to be identified does not contain a preset wake-up word, it means that the audio emitted by the sound source is not used to control the device to wake up. In this case, the device can be controlled to be in a non-wake-up state.
[0069] Non-wake-up state includes the device's standby state. In standby state, the device continuously listens to audio sources in the surrounding environment with low power consumption. When a preset wake-up word is detected, the device enters working state and responds.
[0070] Through the above technical solution, since the training samples for training the wake word recognition model include a positive sample set, which contains positive audio and positive labels, the trained wake word recognition model can accurately identify whether the audio to be recognized contains a preset wake word. Since the training samples include a negative sample set, which contains negative audio and negative labels, the trained wake word recognition model can accurately identify whether the audio to be recognized contains a non-preset wake word. In this way, the wake word recognition model can accurately distinguish between preset wake words and non-preset wake words, thereby reducing the false wake-up rate of the device.
[0071] The following describes an optional embodiment of step S12 above. This embodiment explains that in addition to using positive sample sets and negative sample sets to train the wake word recognition model, similar sample sets can also be used to train the wake word recognition model, thereby further reducing the false wake-up rate of the device.
[0072] In related technologies, users can wake up the device by saying a preset wake word, and similar wake words may also wake up the device, resulting in a high false wake-up rate and a poor user experience. For example, please refer to [link to relevant documentation]. Figure 2 As shown, if user A says the preset wake-up word "Xiao Ai Tongxue", the device will be woken up normally and reply with the voice "I am here"; if user B says a similar wake-up word "Wang Tongxue", the device may also be woken up by mistake and reply with the voice "I am here".
[0073] In this disclosure, when user A says the preset wake-up word "Xiao Ai Tongxue," the device will wake up normally and respond with the voice message "I'm here." However, if the user says a non-preset wake-up word or a similar wake-up word, the device will not wake up. For example, please refer to [link to relevant documentation]. Figure 3 As shown, when user A says a wake word similar to "Wang Tongxue", the device remains in a non-wake state and does not respond to the user's voice; when user B says a non-preset wake word such as "hahaha", the device also remains in a non-wake state and does not respond to the user's voice.
[0074] To identify similar wake words, please refer to [link / reference]. Figure 5 As shown, the training samples also include a similar sample set, which includes multiple similar samples. Each similar sample includes similar audio and similar labels. The similar audio refers to speech audio that contains some phonemes from the preset wake word. The similar labels include preset symbols and symbols in the similar audio that have the same phonemes as the preset wake word.
[0075] For similar sample sets C = {c1, c2, c3, ..., c...}z}, containing z similar samples, each similar sample represented by c z Each similar sample c z includes: similar audio and similar labels.
[0076] Similar audio refers to the speech audio containing some phonemes of the preset wake-up word. Taking the four phonemes of the preset wake-up word contained in the similar audio as an example, if the preset wake-up word is "Xiaoi Tongxue", and the audio is "Hello classmate", "Tongxue", "Wang classmate", "Tongxue", etc., the four ending phonemes "t, ong, x, ue" of these audios are the same as the four ending phonemes "t, ong, x, ue" of the preset wake-up word "Xiaoi Tongxue". The audio contains four phonemes out of the seven phonemes of the preset wake-up word, so these audios are similar audios.
[0077] Similar labels include the preset symbol and N symbols in the similar audio that have the same phonemes as the preset wake-up word, where N is greater than or equal to 1. For example, for the phonemes of the similar audio "Wang classmate", it has the same four phonemes "t, ong, x, ue" as the preset wake-up word "Xiaoi Tongxue". So, three of the four phonemes "t, ong, x" can be replaced with the preset symbol filler, and the remaining "ue" phoneme remains unchanged. The resulting similar label is "filler ue". When selecting the symbols in the similar audio that have the same phonemes as the preset wake-up word as the similar label, one or more of the same phonemes can be chosen to remain unchanged. For example, the phoneme ue can be chosen to remain unchanged and the other phonemes can be replaced with the preset symbol filler to obtain the similar label "filler ue", or the phonemes x and ue can be chosen to remain unchanged and the other phonemes can be replaced with the preset symbol filler to obtain the similar label "filler x ue". This disclosure does not make any restrictions on this comparison.
[0078] The reason for replacing a part of the phonemes in the same phonemes between the similar audio and the preset wake-up word with the preset symbol and keeping the other part of the phonemes unchanged to obtain the similar label is as follows: If all the phonemes in the similar audio that are the same as the preset wake-up word are used as the similar label, for example, if the four phonemes "t, ong, x, ue" of "Student Wang" are all used as the similar label, it will cause the similar label to be too close to the positive label of the seven phonemes "x, iao, ai, t, ong, x, ue", and there are too many overlapping phonemes between the preset wake-up word and the similar wake-up word, which affects the wake-up word recognition model to recognize the real preset wake-up word. Therefore, a part of the phonemes in the same phonemes between the similar audio and the preset wake-up word are replaced with the preset symbol, and the other part of the phonemes are kept unchanged to obtain the similar label "filler ue", so as to form a greater difference from the positive label "x, iao, ai, t, ong, x, ue" of the positive sample, and improve the accuracy of the wake-up word recognition model to recognize the preset wake-up word.
[0079] After the wake-up word recognition model has the function of recognizing similar wake-up words, if the audio to be recognized contains a similar wake-up word, the control device is kept in a non-wake-up state.
[0080] In daily life, there are various audio around the device. Taking the preset wake-up word as "Xiaoi Tongxue" as an example, when users talk to each other, they may mention the similar wake-up word "tongxue", they may mention the non-similar wake-up word "You go home immediately", and users may also directly issue the preset wake-up word "Xiaoi Tongxue". Therefore, after the wake-up word recognition model has the ability to distinguish between similar wake-up words, non-preset wake-up words and preset wake-up words, it can distinguish these three types of voice audio, and keep the device in a non-wake-up state in the scenario where the user does not want to wake up the device, thereby reducing the false wake-up rate of the device.
[0081] Through the above technical solution, the device can control the device to be in a non-wake-up state when the audio contains a similar wake-up word, thereby avoiding the device being falsely woken up when the user says a similar wake-up word, reducing the probability of the device being falsely woken up, and improving the user experience.
[0082] The following introduces the specific embodiments related to the above step S12, which are used to explain how to determine which wake-up word among the non-preset wake-up word, preset wake-up word and similar wake-up word is included in the audio to be recognized. Please refer to Figure 4 and Figure 6 as shown, including the following steps.
[0083] In step S21, the audio to be recognized is segmented to obtain multiple audio frames in time series.
[0084] Segmenting the audio to be identified refers to dividing the continuous audio signal into a series of short audio frames. Each audio frame contains a segment of audio signal, which is usually in the range of a few milliseconds to tens of milliseconds.
[0085] The purpose of segmenting the audio to be recognized is to convert the continuous audio signal into discrete audio frames so that subsequent processing and analysis can be performed on each audio frame, and different operations such as independent sound recognition, speech synthesis and audio encoding can be performed on each audio frame.
[0086] In step S22, acoustic features are extracted for each audio frame to obtain the acoustic features corresponding to each audio frame.
[0087] Acoustic feature extraction of an audio frame refers to extracting a set of numerical representations from the audio frame to identify the acoustic features of the audio signal in that audio frame. These acoustic features are typically used for tasks such as speech recognition, speech synthesis, and speech classification.
[0088] In step S23, the acoustic features corresponding to the multiple audio frames are sequentially input into the wake word recognition model to obtain an acoustic score corresponding to each acoustic feature; wherein, the acoustic score includes multiple probability values, each probability value representing the probability that the acoustic feature is a phoneme corresponding to the preset wake word.
[0089] Acoustic score is used to evaluate the similarity or probability of acoustic features being each of the preset wake words. Each acoustic score corresponds to multiple probabilities, and each probability represents the probability that an acoustic feature is a certain phoneme in the preset wake word. The maximum probability among multiple probabilities can be used as the acoustic score of that acoustic feature.
[0090] For example, if the acoustic features of an audio frame are input into the wake word recognition model, and the phoneme of the audio frame is "ue", and the phonemes of the preset wake word "Xiao Ai Tongxue" are "x, iao, ai, t, ong, x, ue", then the probabilities that the phoneme "ue" in the audio frame is one of these seven phonemes are 10%, 10%, 0, 0, 10%, 5%, and 99.7%, respectively. Then, the maximum probability of 99.7% can be used as the acoustic score of the acoustic feature.
[0091] For the audio to be identified, after dividing the audio F into frames, we get X audio frames, represented as F = {f1, f2, f3, ... f...} x The acoustic scores of the acoustic features corresponding to multiple audio frames calculated by the wake word recognition model are H = {h1, h2, h3, ... h}. x}, h1 represents the acoustic score of the acoustic features of the first audio frame f1, h xf represents the Xth audio frame x The acoustic score of the acoustic features.
[0092] In step S24, the optimal decoding path corresponding to the audio to be identified is obtained by processing the acoustic score of the acoustic features of each audio frame and the preset decoding map.
[0093] A decoding graph is a graphical representation structure used in the field of speech recognition technology to perform speech recognition using acoustic and language models. A decoding graph contains multiple nodes, each node representing a different time step, each time step corresponding to an audio frame, and the edges between two adjacent nodes form a decoding path, representing the transition from the previous audio frame to the next audio frame.
[0094] At least two of the nodes constitute any one of the preset wake-up path, non-wake-up path, and similar wake-up path decoding paths. The preset wake-up path is a decoding path that indicates the device enters the wake-up state, and the non-wake-up path and the similar wake-up path are decoding paths that indicate the device enters the non-wake-up state.
[0095] Please see Figure 7 The decoding diagram shown is as follows. Figure 7 In this context, "sil" means silence. <eps>Empty means no output; filler means all pronunciations except the default wake word phonemes; kw-in means start wake-up; kw-out means output wake-up, wake-up successful.
[0096] For example, sil: <eps>For example, " / 1" indicates that the input from the previous node to the next node is mute and the output is empty, and the weight of the decoding path between the previous node and the next node is 1; another example is "x:kw-in / 5", which indicates that the input from the previous node to the next node is phoneme x and the output is wake-up, and the weight of the decoding path between the previous node and the next node is 5; yet another example is "ue:kw-out / 5", which indicates that the input from the previous node to the next node is phoneme ue and the output is wake-up successful, and the weight of the decoding path between the previous node and the next node is 5.
[0097] The decoding diagram proposed in this disclosure includes 10 nodes from 0 to 9, where 0 is the start node and 1, 8, and 9 are the end nodes. Of course, it is not limited to these 10 nodes. When the number of phonemes of the preset wake word changes, the number of nodes will also change accordingly, and this disclosure does not limit this.
[0098] Node 0 has three downstream nodes (node 1, node 2, and node 9). There are four decoding paths from node 0 to its downstream nodes: L0-11, L0-12, L0-2, and L0-9. Specifically, L0-11 represents the first decoding path from node 0 to node 1, L0-12 is the second decoding path from node 0 to node 1, L0-2 is the decoding path from node 0 to node 2, and L0-9 is the decoding path from node 0 to node 9.
[0099] Node 1 has one downstream node (node 0), and there is one decoding path from node 1 to its downstream node: L1-0.
[0100] Node 2 has two downstream nodes (Node 2 and Node 3). There are two decoding paths from Node 2 to its downstream nodes, namely L2-2 and L2-3, which represent the decoding path from Node 2 to Node 2 and the decoding path from Node 2 to Node 3, respectively.
[0101] Node 3 has two downstream nodes (Node 3 and Node 4). There are two decoding paths from Node 3 to its downstream nodes, namely L3-3 and L3-4, which represent the decoding path from Node 3 to Node 3 and the decoding path from Node 3 to Node 4, respectively.
[0102] The 4-node has two downstream nodes (node 4 and node 5). There are two decoding paths from node 4 to its downstream nodes, namely L4-4 and L4-5, which represent the decoding path from node 4 to node 4 and the decoding path from node 4 to node 5, respectively.
[0103] Node 5 has two downstream nodes (node 5 and node 6). There are two decoding paths from node 5 to its downstream nodes, namely L5-5 and L5-6, which represent the decoding path from node 5 to node 5 and the decoding path from node 5 to node 6, respectively.
[0104] Node 6 has two downstream nodes (node 6 and node 7). There are two decoding paths from node 6 to its downstream nodes, namely L6-6 and L6-7, which represent the decoding path from node 6 to node 6 and the decoding path from node 6 to node 7, respectively.
[0105] Node 7 has two downstream nodes (node 7 and node 8). There are two decoding paths from node 7 to its downstream nodes, namely L7-7 and L7-8, which represent the decoding path from node 7 to node 7 and the decoding path from node 7 to node 8, respectively.
[0106] The 8-node has two downstream nodes (node 8 and node 0). There are two decoding paths from node 8 to its downstream nodes, namely L8-8 and L8-0, which represent the decoding path from node 8 to node 8 and the decoding path from node 8 to node 0, respectively.
[0107] Node 9 has two downstream nodes (node 9 and node 0). There are two decoding paths from node 9 to its downstream nodes, namely L9-9 and L9-0, which represent the decoding path from node 9 to node 9 and the decoding path from node 9 to node 0, respectively.
[0108] Figure 7 In this system, each node has an arrow pointing to itself. The purpose of this design is that when a user pronounces a word, the phoneme has a duration. Therefore, as the phoneme appears within that duration, the decoding path will continuously follow the arrow pointing to the node itself. For example, if the duration of phoneme x is 1ms, then within that 1ms duration, the path will continuously follow the arrow pointing to itself. 22 The decoding path; for example, if the duration of the phoneme "ong" is 2ms, then within the 2ms duration, it will consistently follow the L path. 66 The decoding path.
[0109] Each pair of nodes connected to a decoding path corresponds to a decoding rule. The decoding rule includes judgment conditions and corresponding weights, which will be explained below. Figure 7 In the decoding diagram shown, the decoding path between node 0 and node 9 is a similar wake-up path, at least one decoding path between node 0 and node 1 is a non-preset wake-up path, and at least one decoding path between node 1 and node 8 is a preset wake-up path.
[0110] The optimal decoding path for the audio to be identified can be obtained by searching a preset decoding graph based on the acoustic features of each audio frame. This includes: inputting the acoustic score and decoding graph of each audio frame into the decoder; and the decoder determining the optimal decoding path for multiple audio frames in the decoding graph based on the judgment conditions and weights of each node in the decoding graph. Specifically, this includes the following sub-steps:
[0111] Sub-step A1: Based on the acoustic score of each audio frame, obtain the cost score of each audio frame through the corresponding decoding path in the decoding graph.
[0112] The cost score is used to evaluate the matching degree between the audio emitted by the sound source and a preset wake word, or between the audio emitted by the sound source and a non-preset wake word, or between the audio emitted by the sound source and a similar wake word. The higher the acoustic score, the lower the cost score, and the higher the matching degree. A lower cost score means that the audio is more likely to pass through the decoding path; a higher cost score means that the audio is less likely to pass through the decoding path.
[0113] The decoding graph includes multiple nodes. Two adjacent nodes form a decoding path. Decoding paths are categorized into first decoding paths and non-first decoding paths. The first decoding path refers to the first decoding path used to calculate the first audio frame. Non-first decoding paths include the second, third, and so on. The second decoding path is downstream of the first, the third downstream, and so on. Since decoding paths are divided into first and non-first paths, the cost score of each decoding path will be obtained from the following two aspects.
[0114] Firstly, for the first decoding path among multiple decoding paths, the cost score of the first decoding path is obtained based on the acoustic score corresponding to the first decoding path and the weight of the first decoding path.
[0115] The above Figure 7 Of the multiple decoding paths, L0-11, L0-12, L0-2, and L0-9 are the first decoding paths, while the remaining decoding paths are not the first decoding paths.
[0116] To calculate the cost score of the first decoding path, the cost score of the first decoding path can be obtained based on the cost score of the previous decoding path, the acoustic score corresponding to the first decoding path, and the weight of the first decoding path. The calculation formula is as follows:
[0117] L 0N = -log(h1) + w 0N (1)
[0118] L 0N w represents the cost score from node 0 to node N. 0N h1 represents the weight of the first decoding path between node 0 and node N, where N can be any one of 11, 12, 2, and 9. h1 is the acoustic score of the acoustic features corresponding to the first audio frame.
[0119] When N is 11, L 011 W represents the cost score of the first decoding path out of the two initial decoding paths from node 0 to node 1. 011 This represents the weight of the first decoding path from node 0 to node 1.
[0120] When N is 12, L 012 W represents the cost score of the second decoding path out of the two initial decoding paths from node 0 to node 1. 011 This represents the weight of the second decoding path from node 0 to node 1.
[0121] When N is 2, L 02 W represents the cost score of the first decoding path from node 0 to node 2. 02 This represents the weight of the first decoding path from node 0 to node 2.
[0122] When N is 9, L 09 W represents the cost score of the first decoding path from node 0 to node 9. 09 This represents the weight of the first decoding path from node 0 to node 9.
[0123] As can be seen from the above formula (1), when calculating the cost score of the first decoding path, it is based on the weights w of the multiple decoding paths from node 0 to its downstream nodes. 0N And the acoustic score h1 of the first acoustic feature, to calculate the cost score of each decoding path in the multiple decoding paths from node 0 to the downstream node.
[0124] Secondly, for a non-first decoding path among multiple decoding paths, the cost score of the non-first decoding path is obtained based on the cost score of the previous decoding path, the acoustic score of the non-first decoding path, and the weight of the non-first decoding path.
[0125] For the cost score of a non-first decoding path, the cost score of the non-first decoding path can be obtained based on the cost score of the previous decoding path, the acoustic score corresponding to the non-first decoding path, and the weight of the non-first decoding path. The calculation formula is as follows:
[0126] L ij =L ki -log(h x )+w ij (2)
[0127] L ij Let represent the cost score of a non-first decoding path, where i represents the previous node of the non-first decoding path, J represents the next node of the non-first decoding path, and L represents the cost score of the non-first decoding path. ki This represents the cost score of the previous decoding path. For example, when the second decoding path is not the first decoding path, L... ki Then it should be the cost score of the first decoding path; when the third decoding path is not the first decoding path, L ki Then it should be the cost score of the previous non-first decoding path; h x This represents the acoustic score of the x-th acoustic feature. The order of these acoustic scores corresponds to the order of the decoding paths. For example, when calculating the cost score of the first decoding path, the acoustic score of the first acoustic feature should be used; when calculating the cost score of the second decoding path, the acoustic score of the second acoustic feature should be used, and so on. ij The weight of the non-first decoding path.
[0128] As can be seen from the above formula (2), when calculating the cost score of a non-first decoding path, taking the second decoding path as an example, it is based on the acoustic score h of the second acoustic feature. x The cost score L of the previous decoding path ki and the weight w of the second decoding path ij The cost score of the second decoding path is obtained, and the cost scores of the other non-first decoding paths, such as the third and fourth decoding paths, are calculated according to formula (2).
[0129] Finally, after calculation using formulas (1) and (2), the cost score of each decoding path in the decoding graph is obtained. The higher the acoustic score of the acoustic feature, the lower the cost score of the resulting decoding path. The cost score of the previous decoding path is directly proportional to the cost score of the next decoding path, and the acoustic score of the next decoding path is inversely proportional to the cost score of the next decoding path. Thus, if the cost score of the previous decoding path is high and the acoustic score of the next decoding path is low, the cost score of the next decoding path will be higher than that of the previous decoding path; conversely, if the cost score of the previous decoding path is low and the acoustic score of the next decoding path is high, the cost score of the next decoding path will be lower than that of the previous decoding path.
[0130] Sub-step A2: Select the decoding path with the minimum cost score from the multiple decoding paths as the optimal decoding path.
[0131] The optimal decoding path with the lowest cost score among multiple decoding paths is the decoding path with the highest matching degree with the audio to be identified emitted by the current sound source.
[0132] Each node in the decoding graph has its own judgment conditions, which include: if the label corresponding to the audio frame emitted by the sound source is the same as the input parameter in the node's judgment conditions, the acoustic score corresponding to the decoding path between this node and the next node is also higher, and the cost score corresponding to this decoding path is lower; if the label corresponding to the audio frame emitted by the sound source is different from the input parameter in the node's judgment conditions, the acoustic score obtained is lower, and the corresponding cost score is higher.
[0133] For example, the wake-up recognition model can not only output the acoustic score of each acoustic feature, but also output the label corresponding to each audio. For example, when the audio includes the preset wake-up word "Xiao Ai Tongxue", the corresponding label is "x, iao, ai, t, ong, x, ue"; when the audio includes the non-preset wake-up word "Did you eat today?", the corresponding label is "filler"; when the audio includes the similar wake-up word "Wang Tongxue", the corresponding label is "filler ue". The labeling process for this audio is the same as that for the labels of the training samples mentioned above, and will not be repeated here.
[0134] When a user utters the audio phrase "Wang Tongxue," the phonemes of the similar wake word "Wang Tongxue" are "w, ang, t, ong, x, ue," and its tag is "filler ue," which follows the L-axis. 012 When decoding the path, because the filler in the tag filler ue is different from L 012 The input parameter filler is the same for the decoding path, so L 012 This decoding path corresponds to a higher acoustic score, naturally L 012 The cost score for this decoding path will be lower (e.g., 2).
[0135] When the label goes L 09 When decoding the path, because of the difference between ue and L in the tag filler ue 09 The input parameter ue is the same for the decoding path, so L 09 The cost score for this decoding path will also be lower (e.g., 1).
[0136] When the label goes L 08 When decoding the path, since filler ue is the same as decoding path L 02 L 23 L 34 L 45 L 56 L 67 The input parameters are different, so L 02 L 23 L 34 L 45 , L 56 , L 67 The acoustic scores corresponding to these decoding paths are relatively low. After multiple rounds of superposition, the cost score of the next decoding path is higher than that of the previous decoding path, ultimately resulting in a relatively high cost score for L 67 , and although the similar label ue and L 78 have the same input parameters for the decoding path, it will provide a relatively low acoustic score for the L 78 decoding path. However, subtracting this acoustic score from the cost score of the previous decoding path with a relatively large value, the resulting cost score of the L 67 decoding path is still relatively large (for example, when the cost score of the L 78 decoding path is 50 and subtracting the acoustic score of the L 67 decoding path is 0.1, the resulting cost score of the L 78 decoding path, which is 49.9, is still relatively large), so the cost scores of multiple decoding paths included in the L 78 decoding path are all relatively high. 08 Based on this, one can select the L
[0137] decoding path with a relatively low cost score among multiple decoding paths as the optimal decoding path. 09
[0138] In the related art, as shown in Figure 8 , the decoding graph includes a total of 9 nodes from 0 to 8. The 0 node is the starting node, and the 1 and 8 nodes are the ending nodes. When the user emits the audio of "Student Wang", the corresponding labels for "Student Wang" are "w, ang, t, ong, x, ue". When this label takes the L 01 decoding path, since this label is different from each input parameter of L 01 , the cost score corresponding to the L 01 decoding path is relatively high; while "t, ong, x, ue" in this label is the same as the input parameters of the decoding paths of L 45 , L 56 , L 67 , L 78 respectively, so it results in a relatively low cost score for the L 78 decoding path. At this time, the optimal decoding path with the lowest cost score in the entire decoding graph is L 78 . Since the decoding path L 78 is the preset wake-up path, the device will be woken up erroneously.
[0139] Compared with this related art, the present disclosure additionally adds the decoding path L 09 ( Figure 7 (The part in the black box) After the wake word recognition model is trained with positive samples, negative samples, and similar samples, and has the ability to recognize similar wake words, preset wake words, and non-preset wake words, the wake word recognition model will output different labels based on words of different speech types, such as similar wake words, preset wake words, and non-preset wake words. Then, based on the audio labels and acoustic scores output by the wake word recognition model, it is determined whether the optimal decoding path corresponding to the audio emitted by the user is a similar wake-up path. If the optimal decoding path is a similar wake-up path, the device can be controlled not to wake up, thereby further reducing the probability of the device being falsely woken up by similar wake words.
[0140] For example, when a user sends an audio message with the name "Wang Tongxue", the tag corresponding to "Wang Tongxue" is "filler ue", and this tag follows the L... 09 The cost score of the decoding path compared to the L-path 78 The decoding path with the lowest cost score is L, so the decoding path with the lowest cost score in the entire decoding graph is L. 09 The decoding path L 09 It uses a similar wake-up path, so it will not wake up the device.
[0141] It is understandable that the weights corresponding to similar wake-up paths (e.g.) Figure 7 10) is compared to the weight corresponding to the preset wake-up path (e.g.) Figure 7 The purpose of setting the similar wake-up path weight higher (5) is as follows: If the weight of the similar wake-up path is set to be the same as that of the preset wake-up path, the final cost score of the similar wake-up path will be similar to that of the preset wake-up path, which may easily lead to the device being woken up when it should not be. If the weight of the similar wake-up path is set to be smaller than that of the preset wake-up path, when the acoustic scores of the preset wake-up path and the similar wake-up path are the same, the cost score of the similar wake-up path will also be smaller than that of the preset wake-up path, making the device less likely to be woken up and reducing the device's wake-up rate. Therefore, setting the weight of the similar wake-up path higher ensures that when the user speaks a similar wake-up word that is more in line with expectations, the acoustic score of the similar wake-up path will be lower, thus lowering the overall cost score of the similar wake-up path, and preventing the device from being woken up in this situation.
[0142] In step S25, if the optimal decoding path is consistent with the preset wake-up path corresponding to the preset wake-up word, it is determined that the audio to be identified contains the preset wake-up word, and the device will be controlled to be in a wake-up state.
[0143] The preset wake-up path can be as follows: Figure 7 L in 02 Decoding path, L 23 Decoding path, L 34 Decoding path, L 45 Decoding path, L 56 Decoding path, L 67 Decoding path, L 78 Decoding path.
[0144] For example, when a user utters the audio phrase "Xiao Ai Tongxue," the preset wake word "Xiao Ai Tongxue" has the phonemes "x, iao, ai, t, ong, x, ue," and its tags are "x, iao, ai, t, ong, x, ue." When this tag moves to L... 011 Decoding path, L 012 When decoding the path, due to the tags "x, iao, ai, t, ong, x, ue" and "L" 012 The input parameter filler for each decoding path is different, so L 012 The acoustic score corresponding to this decoding path is relatively low, naturally L 012 This decoding path will have a higher cost score.
[0145] When the label goes L 09 When decoding the path, since only "ue" and L are present in the tags "x, iao, ai, t, ong, x, ue",... 09 The input parameter ue is the same for the decoding path, so L 09 The cost score for this decoding path will also be relatively high.
[0146] When the label goes L 08 When decoding the path, since x, iao, ai, t, ong, x, ue” respectively correspond to the decoding path L 02 L 23 L 34 L 45 L 56 L 67 L 78 The input parameters are the same, so L 02 L 23 L 34 L 45 L 56 L 67 L 78 These decoding paths correspond to high acoustic scores. After multiple rounds of stacking, for each decoding path, the cost score of the next decoding path is lower than the cost score of the previous decoding path, ultimately resulting in L... 78 The cost score is the lowest among multiple decoding paths, so L 78 The cost score for the decoding path is low.
[0147] Based on this, the L with the lowest cost score among multiple decoding paths can be selected. 78 The decoding path is considered the optimal decoding path, while L 78 The decoding path is the preset wake-up path, so the control device switches to the wake-up state.
[0148] like Figure 7 As shown, Figure 7 The path contains a third termination node 8. When the termination node of the decoding path with the minimum cost score is the third termination node 8, it means that the decoding path with the minimum cost score is L. 78 Decode the path, at which point you can control the device to switch to wake-up mode.
[0149] In step S26, if the optimal decoding path is consistent with the non-wake-up path corresponding to the non-preset wake-up word, it is determined that the audio to be identified contains the non-preset wake-up word, and the device will be controlled to be in a non-wake-up state.
[0150] Non-wake-up paths can be as follows Figure 7 L in 011 Decoding path, L 012 Decoding path.
[0151] For example, when a user utters the audio "Have you eaten today?", the phonemes of the non-preset wake word "hum" are "h, eng, h, eng", and its tag is "filler". When this tag follows the L... 011 Decoding path, L 012 When decoding the path, due to the tag filler and L 012 The input parameter filler is the same for the decoding path, so L 012 This decoding path corresponds to a higher acoustic score, naturally L 012 The cost score for this decoding path will be lower.
[0152] When the label goes L 09 When decoding the path, due to the tag filler and L 09 The input parameter ue is different for the decoding path, so L 09 This decoding path will have a higher cost score.
[0153] When the label goes L 08 When decoding the path, since the label filler is the same as the decoding path L 02 L 23 L 34 L 45 L 56 L 67 L 78 The input parameters are different, so L 02 L 23 L 34 L 45 L 56 L 67 L 78 The acoustic scores of these decoding paths are relatively low. After multiple rounds of stacking, the cost score of the next decoding path is higher than that of the previous decoding path, ultimately resulting in L... 78 The cost score is the highest among multiple decoding paths, so L 08 The cost scores of multiple decoding paths contained in the decoding path are all high.
[0154] Based on this, the L with the lowest cost score among multiple decoding paths can be selected. 012 The decoding path is considered the optimal decoding path, while L 012 The decoding path is a non-wake-up path, so the control device remains in a non-wake-up state.
[0155] like Figure 7 As shown, Figure 7 If the decoding path with the lowest cost score contains a second termination node 1, then the decoding path with the lowest cost score is L. 011 Decoding path or L 012 Decoding path, at this time you can control the device to remain in a non-wake-up state.
[0156] In step S27, if the optimal decoding path is consistent with the similar wake-up path corresponding to the similar wake-up word, it is determined that the audio to be identified contains the similar wake-up word, and the device will be controlled to be in a non-wake-up state.
[0157] Similar wake-up paths can be as follows: Figure 7 L in 09 Decoding path.
[0158] Continuing with the example in sub-step A2, the optimal decoding path with the minimum cost score is L. 09 The decoding path indicates that the audio currently emitted by the user contains a similar wake word, and the device will be controlled to be in a non-wake state.
[0159] Please see Figure 7 As shown, the weight of the preset wake-up path is greater than that of the non-wake-up path. The purpose of this design is as follows: Combining the above formulas (1) and (2), it can be seen that when the weight of the preset wake-up path is increased, a higher acoustic score is required to obtain a lower cost score. The user needs to emit a more accurate preset wake-up word to obtain a higher acoustic score, thereby lowering the overall cost score. Therefore, setting a larger weight ensures that the user will wake up the device only when emitting an accurate preset wake-up word, thereby improving the accuracy of device wake-up.
[0160] In related technologies, multiple thresholds are set for devices under different usage scenarios to minimize the problem of false wake-ups. For example, when the device is detected to be in use, the normal threshold is used; when the device is detected to be idle, the device automatically starts a timer. When the timer reaches its set time, the normal threshold is raised to the wake-up threshold, thereby reducing the number of times the device is woken up. With the number of times the device is woken up reduced, the false wake-up rate is also reduced accordingly.
[0161] However, this solution can only reduce the false wake-up rate when the device is idle, and cannot cover all false wake-up scenarios. In fact, the false wake-up rate is more likely to be triggered when the device is in use. For example, if the device is a TV, and the TV is playing a TV series, the TV series may play a wake-up word similar to "Wang Tongxue", which will cause the TV to be falsely woken up and respond to the user with the voice "I am here". This undoubtedly reduces the user experience.
[0162] In this disclosure, if the audio source is identified as a similar wake word, the device will not be controlled to wake up. This covers all scenarios of false wake-up of the device, thereby reducing the probability of the device being falsely woken up in both the active and idle states.
[0163] By using the above technical solution, an additional similar wake-up path is added to the decoding graph. When the optimal decoding path with the lowest cost score is the similar wake-up path, the device can still be kept in a non-wake-up state, further reducing the probability of the device being falsely woken up.
[0164] Figure 9 This is a block diagram illustrating a device control apparatus according to an exemplary embodiment. (Refer to...) Figure 9 The device control unit 900 includes: an acquisition module 920, an identification module 930, and a control module 940.
[0165] The acquisition module 920 is configured to acquire audio to be recognized, the audio to be recognized containing voice information;
[0166] The recognition module 930 is configured to recognize the audio to be recognized based on a preset wake-up word recognition model, and determine whether the audio to be recognized contains a preset wake-up word; wherein, the wake-up word recognition model is trained on training samples using machine learning methods, the training samples include a positive sample set and a negative sample set, the positive sample set contains multiple positive samples, each positive sample contains positive audio and a positive label, the positive audio is the speech audio of the preset wake-up word, and the positive label contains symbols corresponding to all phonemes in the preset wake-up word; the negative sample set contains multiple negative samples, each negative sample contains negative audio and a negative label, the negative audio is speech audio that does not contain any phonemes of the preset wake-up word, and the negative label uses preset symbols;
[0167] The control module 940 is configured to control the device to enter a wake-up state if the audio to be identified contains the preset wake-up word, and otherwise control the device to remain in a non-wake-up state.
[0168] Optionally, the training samples further include a similar sample set, which includes multiple similar samples. Each similar sample includes similar audio and similar tags. The similar audio refers to speech audio that contains some phonemes of the preset wake word. The similar tags include the preset symbol and the symbol in the similar audio that has the same phonemes as the preset wake word.
[0169] Optionally, the identification module 930 includes:
[0170] The segmentation submodule is configured to segment the audio to be identified to obtain multiple time-series audio frames;
[0171] The extraction submodule is configured to extract acoustic features for each audio frame to obtain acoustic features corresponding to each audio frame;
[0172] The input submodule is configured to sequentially input the acoustic features corresponding to multiple audio frames into the wake word recognition model to obtain an acoustic score corresponding to each acoustic feature; wherein, the acoustic score includes multiple probability values, each probability value representing the probability that the acoustic feature is a phoneme corresponding to the preset wake word;
[0173] The optimal decoding path determination submodule is configured to process the acoustic score of the acoustic features of each audio frame and a preset decoding map to obtain the optimal decoding path corresponding to the audio to be identified.
[0174] The recognition submodule is configured to determine that the audio to be recognized contains a preset wake-up word if the optimal decoding path is consistent with the preset wake-up path corresponding to the preset wake-up word.
[0175] Optionally, the decoding graph includes multiple nodes, and at least two of the nodes form any one of the preset wake-up path, non-wake-up path, and similar wake-up path decoding paths. The preset wake-up path is a decoding path that indicates the device entering the wake-up state, and the non-wake-up path and the similar wake-up path are decoding paths that indicate the device entering the non-wake-up state.
[0176] Optionally, the optimal decoding path determination submodule includes:
[0177] The cost score calculation submodule is configured to obtain the cost score of each audio frame through the corresponding decoding path in the decoding graph based on the acoustic score of each audio frame.
[0178] The filtering submodule is configured to select the decoding path with the minimum cost score from the multiple decoding paths as the optimal decoding path.
[0179] Optionally, the multiple decoding paths include the first decoding path, and the cost score calculation submodule includes:
[0180] The first decoding path submodule is configured to obtain the cost score of the first decoding path based on the acoustic score corresponding to the first decoding path and the weight of the first decoding path.
[0181] Optionally, the multiple decoding paths include a non-first decoding path, and the cost score calculation submodule includes:
[0182] The non-first decoding path submodule is configured to obtain the cost score of the non-first decoding path based on the cost score of the previous decoding path, the acoustic score of the non-first decoding path, and the weight of the non-first decoding path.
[0183] Optionally, all anti-labels in the anti-sample set use the same preset symbol.
[0184] Optionally, the number of phonemes that are the same between the similar audio and the preset wake word contained in the similar tag is N, where N is greater than or equal to 1.
[0185] Regarding the apparatus in the above embodiments, the specific manner in which each module performs its operation has been described in detail in the embodiments related to the method, and will not be elaborated upon here.
[0186] This disclosure also provides a computer-readable storage medium having stored thereon computer program instructions that, when executed by a processor, implement the steps of the device control method provided in this disclosure.
[0187] Figure 10 This is a block diagram illustrating a device 1000 according to an exemplary embodiment. For example, device 1000 may be a speaker, robot, mobile phone, television, microwave oven, computer, digital broadcasting terminal, messaging device, game console, tablet device, medical device, fitness equipment, personal digital assistant, etc.
[0188] Reference Figure 10 The device 1000 may include one or more of the following components: processing component 1002, memory 1004, power supply component 1006, multimedia component 1008, audio component 1010, input / output interface 1012, sensor component 1014, and communication component 1016.
[0189] Processing component 1002 typically controls the overall operation of device 1000, such as operations associated with display, telephone calls, data communication, camera operation, and recording. Processing component 1002 may include one or more processors 1020 to execute instructions to complete all or part of the steps of the device control method described above. Furthermore, processing component 1002 may include one or more modules to facilitate interaction between processing component 1002 and other components. For example, processing component 1002 may include a multimedia module to facilitate interaction between multimedia component 1008 and processing component 1002.
[0190] Memory 1004 is configured to store various types of data to support the operation of device 1000. Examples of this data include instructions for any application or method operating on device 1000, contact data, phonebook data, messages, pictures, videos, etc. Memory 1004 can be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic storage, flash memory, magnetic disk, or optical disk.
[0191] Power supply component 1006 provides power to various components of device 1000. Power supply component 1006 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power to device 1000.
[0192] Multimedia component 1008 includes a screen that provides an output interface between the device 1000 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen may be implemented as a touchscreen to receive input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors may sense not only the boundaries of the touch or swipe action but also the duration and pressure associated with the touch or swipe operation. In some embodiments, multimedia component 1008 includes a front-facing camera and / or a rear-facing camera. When the device 1000 is in an operating mode, such as a shooting mode or a video mode, the front-facing camera and / or the rear-facing camera may receive external multimedia data. Each front-facing camera and rear-facing camera may be a fixed optical lens system or have focal length and optical zoom capabilities.
[0193] Audio component 1010 is configured to output and / or input audio signals. For example, audio component 1010 includes a microphone (MIC) configured to receive external audio signals when device 1000 is in an operating mode, such as call mode, recording mode, and voice recognition mode. The received audio signals may be further stored in memory 1004 or transmitted via communication component 1016. In some embodiments, audio component 1010 also includes a speaker for outputting audio signals.
[0194] Input / output interface 1012 provides an interface between processing component 1002 and peripheral interface modules, which may be keyboards, click wheels, buttons, etc. These buttons may include, but are not limited to, home buttons, volume buttons, start buttons, and lock buttons.
[0195] Sensor assembly 1014 includes one or more sensors for providing state assessments of various aspects of device 1000. For example, sensor assembly 1014 may detect the on / off state of device 1000, the relative positioning of components such as the display and keypad of device 1000, changes in the position of device 1000 or a component of device 1000, the presence or absence of user contact with device 1000, the orientation or acceleration / deceleration of device 1000, and temperature changes of device 1000. Sensor assembly 1014 may include a proximity sensor configured to detect the presence of nearby objects without any physical contact. Sensor assembly 1014 may also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, sensor assembly 1014 may also include an accelerometer, a gyroscope, a magnetometer, a pressure sensor, or a temperature sensor.
[0196] Communication component 1016 is configured to facilitate wired or wireless communication between device 1000 and other devices. Device 1000 can access wireless networks based on communication standards, such as WiFi, 2G, or 3G, or combinations thereof. In one exemplary embodiment, communication component 1016 receives broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In one exemplary embodiment, communication component 1016 also includes a near-field communication (NFC) module to facilitate short-range communication. For example, the NFC module may be implemented based on radio frequency identification (RFID) technology, Infrared Data Association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0197] In an exemplary embodiment, the device 1000 may be implemented by one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field-programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the device control method described above.
[0198] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 1004 including instructions, which can be executed by a processor 1020 of device 1000 to complete the device control method described above. For example, the non-transitory computer-readable storage medium may be a ROM, random access memory (RAM), CD-ROM, magnetic tape, floppy disk, and optical data storage device, etc.
[0199] Other embodiments of this disclosure will readily occur to those skilled in the art upon consideration of the specification and practice of this disclosure. This disclosure is intended to cover any variations, uses, or adaptations of this disclosure that follow the general principles of this disclosure and include common knowledge or customary techniques in the art not disclosed herein. The specification and examples are to be considered exemplary only, and the true scope and spirit of this disclosure are indicated by the following claims.
[0200] It should be understood that this disclosure is not limited to the precise structures described above and shown in the accompanying drawings, and various modifications and changes can be made without departing from its scope. The scope of this disclosure is limited only by the appended claims.< / eps> < / eps>
Claims
1. A device control method, characterized in that, include: Acquire the audio to be identified, which contains speech information; The system identifies the audio to be identified based on a preset wake-up word recognition model to determine whether the audio contains a preset wake-up word. The wake-up word recognition model is trained using machine learning methods on training samples. The training samples include a positive sample set and a negative sample set. The positive sample set contains multiple positive samples, each containing a positive audio value and a positive label. The positive audio value is the speech audio of the preset wake-up word, and the positive label contains symbols corresponding to all phonemes in the preset wake-up word. The negative sample set contains multiple negative samples, each containing negative audio values and negative labels. The negative audio values do not contain the preset wake-up word. The training samples include the speech audio of any phoneme in the wake word, and all anti-labels in the anti-sample set use the same preset symbol; the training samples also include a similar sample set, which includes multiple similar samples, each of which includes similar audio and similar labels. The similar audio refers to speech audio containing some phonemes of the preset wake word, and the similar labels include the preset symbol and the symbol of the phoneme in the similar audio that is the same as the preset wake word. The similar labels are obtained by replacing a portion of the phonemes in the similar audio that are the same as the preset wake word with the preset symbol, while leaving the other portion of the phonemes unchanged. If the audio to be identified contains the preset wake word, the device is controlled to enter the wake-up state; otherwise, the device is controlled to remain in the non-wake-up state.
2. The method according to claim 1, characterized in that, The step of identifying the audio to be identified based on a preset wake-up word recognition model to determine whether the audio to be identified contains a preset wake-up word includes: The audio to be identified is segmented to obtain multiple time-series audio frames; Acoustic features are extracted for each audio frame to obtain the acoustic features corresponding to each audio frame; The acoustic features corresponding to multiple audio frames are sequentially input into the wake word recognition model to obtain an acoustic score corresponding to each acoustic feature; wherein, the acoustic score includes multiple probability values, each probability value representing the probability that the acoustic feature is a phoneme corresponding to the preset wake word; The optimal decoding path corresponding to the audio to be identified is obtained by processing the acoustic score of the acoustic features of each audio frame and the preset decoding map. If the optimal decoding path is consistent with the preset wake-up path corresponding to the preset wake-up word, then it is determined that the audio to be identified contains the preset wake-up word.
3. The method according to claim 2, wherein the decoding graph includes multiple nodes, and at least two of the nodes form any one of the preset wake-up path, non-wake-up path, and similar wake-up path decoding paths, wherein the preset wake-up path is a decoding path indicating that the device enters the wake-up state, and the non-wake-up path and the similar wake-up path are decoding paths indicating that the device enters the non-wake-up state.
4. The method according to claim 2, characterized in that, The step of processing the acoustic features of each audio frame based on its acoustic score and a preset decoding map to obtain the optimal decoding path corresponding to each audio frame includes: Based on the acoustic score of each audio frame, the cost score of each audio frame passing through the corresponding decoding path in the decoding graph is obtained; From the multiple decoding paths, the decoding path corresponding to the minimum cost score is selected as the optimal decoding path.
5. The method according to claim 4, characterized in that, The multiple decoding paths include a first decoding path. The step of obtaining the cost score for each audio frame traversing the corresponding decoding path in the decoding graph, based on the acoustic score of each audio frame, includes: The cost score of the first decoding path is obtained based on the acoustic score corresponding to the first decoding path and the weight of the first decoding path.
6. The method according to claim 4, characterized in that, The multiple decoding paths include a non-first decoding path. The step of obtaining the cost score for each audio frame traversing the corresponding decoding path in the decoding graph based on the acoustic score of each audio frame includes: The cost score of the non-first decoding path is obtained based on the cost score of the previous decoding path, the acoustic score of the non-first decoding path, and the weight of the non-first decoding path.
7. The method according to claim 1, characterized in that, The number of phonemes that are the same between the similar audio contained in the similar tag and the preset wake word is N, where N is greater than or equal to 1.
8. A device control apparatus, characterized in that, include: The acquisition module is configured to acquire audio to be recognized, the audio containing voice information; The recognition module is configured to recognize the audio to be recognized based on a preset wake-up word recognition model, and determine whether the audio to be recognized contains a preset wake-up word. The wake-up word recognition model is trained using machine learning methods based on training samples. The training samples include a positive sample set and a negative sample set. The positive sample set contains multiple positive samples, each containing a positive audio and a positive label. The positive audio is the speech audio of the preset wake-up word, and the positive label contains symbols corresponding to all phonemes in the preset wake-up word. The negative sample set contains multiple negative samples, each containing negative audio and a negative label. The negative audio does not contain... The training samples include the speech audio of any phoneme in the preset wake-up word, and all anti-labels in the anti-sample set use the same preset symbol; the training samples also include a similar sample set, which includes multiple similar samples, each of which includes similar audio and similar labels. The similar audio refers to speech audio containing some phonemes of the preset wake-up word, and the similar labels include the preset symbol and the symbol of the phoneme in the similar audio that is the same as the preset wake-up word. The similar labels are obtained by replacing a portion of the phonemes in the similar audio that are the same as the preset wake-up word with the preset symbol, while leaving the other portion of the phonemes unchanged. The control module is configured to control the device to enter a wake-up state if the audio to be identified contains the preset wake-up word, and otherwise control the device to remain in a non-wake-up state.
9. A device, characterized in that, include: processor; Memory used to store processor-executable instructions; The processor is configured as follows: Perform the steps of the method according to any one of claims 1 to 7.
10. A computer-readable storage medium having computer program instructions stored thereon, characterized in that, When executed by a processor, the program instructions implement the steps of the method described in any one of claims 1 to 7.