Patent Description:
The present disclosure relates to the technical field of speech recognition, and in particularly to a method for constructing a decoding network, a speech recognition method, a device thereof, an apparatus thereof, and a storage medium.

Speech recognition is realized based on a language model, and most of the existing speech recognition schemes are based on a universal language model. In a recognition scheme based on the universal language model, the universal language model is first converted into a general decoding network, and a to-be-recognized speech is decoded by applying the general decoding network.

The recognition scheme based on a universal language model can accurately recognize a general word, but is possible to recognize a domain related term as a general word having similar pronunciation with the professional word. In other words, the conventional recognition scheme based on a universal language model has a low accuracy in recognizing a domain related term. <CIT> provides a method and a system for automatic speech recognition. The method includes generating a decoding network that includes a primary sub-network and a classification sub-network. The primary sub-network includes a classification node corresponding to the classification sub-network. The classification sub-network corresponds to a group of uncommon words. Speech input is received and decoded by instantiating a token in the primary sub-network and passing the token through the primary network. When the token reaches the classification node, the method includes transferring the token to the classification sub-network and passing the token through the classification sub-network. When the token reaches an accept node of the classification sub-network, the method includes returning a result of the token passing through the classification sub-network to the primary sub-network. The result includes one or more words in the group of uncommon words. A string corresponding to the speech input is output that includes the one or more words.

The technical solutions in the embodiments of the present disclosure are clearly and completely described in the following with reference to the accompanying drawings in the embodiments of the present disclosure. Apparently, the embodiments described herein are only a part rather than all of the embodiments of the present disclosure. Any other embodiments obtained by those skilled in the art based on the embodiments in the present disclosure without any creative work fall within the protection scope of the present disclosure.

The present disclosure generally relates to a speech recognition system for speech recognition. The speech recognition system may receive a speech inputted by a user, and recognize, by using a decoding network, the speech inputted by the user as a text and output the text. In a possible implementation, the speech recognition system may be implemented on a terminal device. In a basic configuration, the terminal device has an input element (such as a microphone, a sensor, a touch screen, a button) and an output element (such as a display screen, a speaker). The terminal device may be a computing device suitable for speech recognition, such as a smartphone, a tablet computer, a notebook computer, a personal computer, a smart watch, a wearable device, a TV, and a game device. A speech is inputted by a user through the input element (such as a microphone) of the terminal device. The speech inputted by the user is recognized by the terminal device by using a decoding network, and an obtained result of the speech recognition is outputted through the output element. In addition to the input element and the output element, the terminal device further includes a processor and a memory which communicate with each other via a communication bus. The processor may be a central processing unit CPU and/or graphics processing unit GPU, a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or any other programmable logic device, discrete gate or transistor logic device. The general processer may be a microprocessor or any conventional processor. The memory may include a computer storage medium in a form of volatile and/or non-volatile memory, such as a read-only memory (ROM), a random access memory (RAM). The memory has a program stored thereon, which may be invoked by the processor.

In another possible implementation, the speech recognition system may be implemented on a single server, and the server may receive data provided from the terminal device through a network, and may further provide data to the terminal device through the network. The speech recognition system may also be implemented on multiple servers, and similar to the above, the servers may receive data provided from the terminal device through the network and provide data to the terminal device through the network. The network may be, but is not limited to, a local area network (LAN), a wide area network (WAN), and the like. In a case where the speech recognition system is implemented on the server, the terminal device obtains the speech inputted by the user through an input device of the terminal device, and transmits the speech to the server through the network; the server recognizes, by using a decoding network, the speech received from the terminal device to obtain a speech recognition result, and output the speech recognition result to the terminal device through the network; and the terminal device outputs the speech recognition result through the output element. The server may include a processor and a memory, which communicate with each other via a communication bus. The processor may be a central processing unit CPU and/or graphics processing unit GPU, a general-purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or any other programmable logic device, discrete gate or transistor logic device, discrete hardware component. The general-purpose processor may be a microprocessor or any conventional processor. The memory may include a computer storage medium in a form of volatile and/or non-volatile memory, such as a read-only memory (ROM), a random access memory (RAM). The memory has a program stored thereon, which may be invoked by the processor.

Considering that the speech recognition system may obtain a low recognition effect when recognizing a speech containing a professional word in a domain by using a general decoding network, the inventor has conducted a research as follows in order to improve the accuracy in recognizing a domain related term. Based on an initial concept, training is performed with a corpus of a specific domain to obtain a domain language model, the trained domain model is then interpolated into a universal language model, and the universal language model after interpolation is converted into a target decoding network. Alternatively, the universal language model after interpolation may be converted into a weighted finite state machine (WFST), which is used as the target decoding network. After obtaining the target decoding network, a speech recognition may be performed by using the target decoding network.

It should be noted that the universal language model may be widely used and is suitable for various common situations, and the domain language model is a language model obtained by training with words that are common in a specific field but not common in other fields. Interpolating the domain language model into the universal language model can not only maintain original knowledge of the universal language model, but also increase a probability of occurrence of a professional word that never appears in the universal language model. Therefore, by interpolating the domain language model into the universal language model, a language model suitable for a specific domain may be obtained, and the target decoding network obtained by converting such language model, when being used for speech recognition, may lead to higher recognition accuracy.

The inventor realized that although the above solution may improve the accuracy of recognizing a domain related term, there are problems as follows. After interpolating the domain language model into the universal language model, it is necessary to regenerate a decoding network, such as WFST, based on the universal language model after interpolation. Since the universal language model after interpolation has a large scale, it requires a lot of time (more than a few hours) and a lot of storage resources to generate the decoding network, therefore the solution is difficult to be applied to an industrial system.

In order to solve the problems, the inventor continued to study and proposed another solution. According to the concept of this solution, a decoding network generated based on a universal language model is used as a general decoding network; a domain language model is obtained by training with a corpus of a specific domain, and a decoding network generated based on the domain language model is used as a domain decoding network; and search is performed in the general decoding network for any path existing in the domain decoding network, and a weight of such path is modified.

However, in the above solution, the search requires a long time as the path in the general decoding network is too huge. In other words, although this solution avoids the problem of consuming a lot of resources to regenerate the decoding network, it still takes a long time.

After a further study, the inventor finally proposed a solution that perfectly solves the above-mentioned problems in the research and development. The solution provided in the present disclosure is described through the following embodiments.

A method for constructing a decoding network is provided according to an embodiment of the present disclosure. Referring to <FIG>, which shows a schematic flowchart of the method for constructing a decoding network, the method may include steps S101 to S103.

In step S101, a universal language model, a domain language model, and a general decoding network generated based on the universal language model are obtained.

The domain language model is obtained by training with a corpus of a specific domain, and the general decoding network is obtained by performing a binary conversion on the universal language model.

In step S102, a domain decoding network is generated based on the universal language model and the domain language model.

It should be noted that a decoding process in a speech recognition system is essentially a comparison of scores for decoding paths. Based on this, according to the present disclosure, the domain decoding network is generated by performing interpolation on the universal language model and the domain language model. Although the domain decoding network needs to be generated, the time and storage resources consumed to generate the domain decoding network are significantly reduced compared to the time and storage resources consumed by the aforementioned "regenerating the decoding network based on the universal language model after interpolation".

A process of generating the domain decoding network based on the universal language model and the domain language model may refer to the subsequent description of the embodiments.

In step S103, the domain decoding network is integrated with the general decoding network to obtain a target decoding network.

In the method for constructing a decoding network provided by the embodiments of the present disclosure, a domain decoding network may be generated based on a universal language model and a domain language model, and the domain decoding network is integrated into the general decoding network, so that a target decoding network capable of decoding to-be-recognized speech data is obtained. With the method for constructing a decoding network provided by the embodiments of the present disclosure, the target decoding network obtained by integrating the domain decoding network with the general decoding network may accurately recognize both a general word and a domain related term. Compared with the general decoding network, the target decoding network constructed in the embodiments of the present disclosure can improve the accuracy of speech recognition for a domain related term. In addition, the time and storage resources consumed in generating the domain decoding network are significantly reduced compared to the time and storage resources consumed in regenerating the general decoding network.

The step S102 of generating a domain decoding network based on the universal language model and the domain language model in the foregoing embodiment is described below.

Referring to <FIG>, which shows a schematic flowchart of a process of generating a domain decoding network based on a universal language model and a domain language model, the process may include steps S201 to S202.

In step S201, interpolation is performed on the universal language model and the domain language model.

A part on which the interpolation is performed includes all parts in the domain language model and a part in the universal language model which also appears in the domain language model.

In an embodiment, the universal language model and the domain language model may each be an n-gram model. Based on this, when performing interpolation on the domain language model and the universal language model in this embodiment, the part on which the interpolation is performed includes all n-gram entries in the domain language model and a n-gram entry in the universal language model which also appears in the domain language model. In other words, the part on which the interpolation is performed includes only the n-gram entry that appears in the domain language model, and does not include any n-gram entry that never appears in the domain language model.

It should be noted that the interpolation on the n-gram entry in the domain language model and the n-gram entry that is in the universal language model and also appears in the domain language model is essentially a probabilistic interpolation on these n-gram entries. Assuming that the domain language model and universal language model are both third-ordered language models, a tri-gram probabilistic interpolation formula is expressed as follows: <MAT> where p(ωn|ωn-<NUM>ωn-<NUM>) represents a probability of occurrence of ωn under occurrence of ωn-<NUM> and ωn-<NUM>, pB represents a probability of an n-gram entry that is in the universal language model and also appears in the domain language model, pold represents a probability of the n-gram entry in the domain language model, and pnew represents a probability of the n-gram entry after interpolation is performed on the n-gram entry in the domain language model and the n-gram entry in the universal language model which also appears in the domain language model , and α represents an interpolation coefficient.

In step S202, a domain decoding network is generated based on the part on which the interpolation is performed.

In an embodiment, the domain decoding network is obtained by performing a binary conversion on the part on which the interpolation is performed.

Since the number of n-gram entries in the part on which the interpolation is performed (that is, the n-gram entries that only appear in the domain language model) is small, generating the domain decoding network based on the part on which the interpolation is performed consumes little time and little storage resources.

The step S103 of integrating the domain decoding network with the general decoding network to obtain a target decoding network in the foregoing embodiment is described below.

There are various ways to integrate the domain decoding network with the general decoding network.

In a possible implementation, the target decoding network may be obtained by connecting the domain decoding network and the general decoding network in parallel.

In a case of decoding to-be-recognized speech data by using the target network obtained by connecting the domain decoding network and the general decoding network in parallel, the to-be-recognized speech data is inputted into the domain decoding network and the general decoding network respectively, for decoding, to obtain a decoding path in the general decoding network and a decoding path in the domain decoding network. A score for the decoding path in the general decoding network is compared with a score for the decoding path in the domain decoding network, and the decoding path with a higher score is determined as a final decoding path. In other words, the final decoding path is either the decoding path in the domain decoding network or the decoding path in the general decoding network. Finally, a decoding result is generated based on the final decoding path.

The inventor found after study that the target decoding network obtained by connecting the domain decoding network and the general decoding network in parallel may accurately recognize a speech containing only a general word or only a domain related term, but the recognition accuracy is not good for a speech containing both a general word and a domain related term. It is understandable that, in some cases, the to-be-recognized speech may be a continuous speech containing a large number of words, usually including both general words and professional words. Therefore, the decoding network obtained by connecting the domain decoding network and the general decoding network in parallel is not suitable for recognizing a continuous speech that contains a large number of words.

In view of the above-mentioned problems, another implementation for integrating the domain decoding network with the general decoding network is provided in the present disclosure. A basic idea of such implementation is to cascade the domain decoding network and the general decoding network, so that a target decoding network obtained by cascading the domain decoding network and the general decoding network can accurately recognize a speech containing both a general word and a professional word, and is suitable for recognizing a continuous speech containing a large number of words.

Referring to <FIG>, which shows a schematic flowchart of a process of cascading the domain decoding network and the general decoding network, the process may include steps S301 to S302.

In step S301, virtual nodes are added for each of the general decoding network and the domain decoding network.

The virtual nodes include a start node and an end node.

In step S302, the general decoding network and the domain decoding network are cascaded by means of the start node and the end node.

In an embodiment, a process of cascading the general decoding network and the domain decoding network by means of the start node and the end node includes: connecting the end node for the general decoding network and the start node for the domain decoding network in a direction from the end node for the general decoding network to the start node for the domain decoding network; and connecting the end node for the domain decoding network and the start node for the general decoding network in a direction from the end node for the domain decoding network to the start node for the general decoding network.

Reference is made to <FIG>, which shows a schematic diagram of a target decoding network obtained by cascading the domain decoding network and the general decoding network. As shown in <FIG>, the general decoding network includes node <NUM>, node <NUM> and node <NUM>, and the domain decoding network includes node <NUM>, node <NUM> and node <NUM>.

In order to cascade the domain decoding network and the general decoding network, a virtual start node and a virtual end node are created for the domain decoding network, and a virtual start node and a virtual end node are created for the general decoding network. The start node created for the general decoding network and node <NUM> in the general decoding network are connected in a direction from the start node to node <NUM>; node <NUM> in the general decoding network and the end node created for the general decoding network are connected in a direction from node <NUM> to the end node; the end node created for the general decoding network and the start node created for the general decoding network are connected in a direction from the end node to the start node; the start node created for the domain decoding network and node <NUM> in the domain decoding network are connected in a direction from the start node to node <NUM>; node <NUM> in the domain decoding network and the end node created for the domain decoding network are connected in a direction from node <NUM> to the end node; the end node created for the domain decoding network and the start node created for the domain decoding network are connected in a direction from the end node to the start node; the end node created for the general decoding network and the start node created for the domain decoding network are connected in a direction from the end node to the start node; and the end node created for the domain decoding network and the start node created for the general decoding network are connected in a direction from the end node to the start node.

When decoding a to-be-recognized speech by using the target decoding network obtained by cascading the domain decoding network and the general decoding network, if the to-be-recognized speech data includes both a general word and a professional word, a final decoding path is composed of a decoding path in the general decoding network and a decoding path in the domain decoding network. For example, the to-be-recognized speech data is "Let's start speech recognition", in which the decoding path corresponding to "Let's start" exists in the general decoding network, and the decoding path corresponding to "speech recognition" exists in the domain decoding network, then the final decoding path is composed of the decoding path corresponding to "Let's start" and the decoding path corresponding to "speech recognition". It should be noted that the decoding path in the general decoding network and the decoding path in the domain decoding network are concatenated by an end node.

It should be noted that the start node and the end node added in the domain decoding network and the general decoding network may be set to silent (noted as "sil"). The start node and the end node do not affect a decoding result. When decoding the to-be-recognized speech data by using the target decoding network, speech frames of the to-be-recognized speech data pass through the two start nodes and enter the domain decoding network and the general decoding network respectively for decoding. As shown in <FIG>, speech frames of the to-be-recognized speech data enter the decoding network through a starting character "", jump to the two start nodes and enter the general decoding network and the domain decoding network respectively for decoding. In a case where a candidate path in the general decoding network or the domain decoding network includes an end node, the decoding process jumps from the end node to at least one start node to continue decoding in the general decoding network and/or the domain decoding network until the end of the speech frames, then an ending character "" is outputted so that a serial decoding process is completed.

On the basis of the foregoing embodiments, a speech recognition method is further provided according to an embodiment of the present disclosure. Referring to <FIG>, which shows a schematic flowchart of the speech recognition method, the method may include steps S501 to S502.

In step S501, to-be-recognized speech data is decoded by using a target decoding network to obtain a decoding path for the to-be-recognized speech data.

The target decoding network is constructed by using the method for constructing a decoding network provided in the foregoing embodiment.

In a possible implementation, decoding paths of the target decoding network may be presented in a lattice. It should be noted that a lattice is a weighted undirected graph, where each node in the lattice represents an acoustic unit, and each arc contains two weights, i.e., acoustic weight and language weight. Any path from left to right in the lattice constitutes a speech recognition result. A score of an entire path is calculated as a sum of acoustic weights of all edges on the path and the language weight corresponding to the path.

Specifically, a process of decoding the to-be-recognized speech data by using the target decoding network to obtain a decoding path for the to-be-recognized speech data may include: inputting speech frames of the to-be-recognized speech data into the target decoding network sequentially for decoding, to obtain the decoding path for the to-be-recognized speech data. The speech frames of the to-be-recognized speech data enter, respectively via two virtual start nodes in the target decoding network, the general decoding network and the domain decoding network in the target decoding network for decoding. In a case where a candidate decoding path in the general decoding network or the domain decoding network includes an end node, the process jumps from the end node to at least one start node connected to the end node, the general decoding network and/or the domain decoding network is entered to continue decoding until an end of the speech frames.

It should be noted that in a case where a candidate decoding path includes an end node, if a score for a path entering the general decoding network and a score for a path entering the domain decoding network are both greater than or equal to a preset path score threshold, the decoding process jumps from the end node to the two start nodes connected to the end node and enters the general decoding network and the domain decoding network for decoding; if the score for the path entering the general decoding network is greater than or equal to the path score threshold, and the score for the path entering the domain decoding network is less than the path score threshold, the decoding process jumps from the end node to the start node created for the general decoding network to enter the general decoding network for decoding; and if the score for the path entering the domain decoding network is greater than or equal to the path score threshold, and the score for the path entering the general decoding network is less than the path score threshold, the decoding process jumps from the end node to the start node created for the domain decoding network to enter the domain decoding network for decoding.

In step S502, a speech recognition result for the to-be-recognized speech data is determined based on the decoding path for the to-be-recognized speech data.

The process of determining the speech recognition result for the to-be-recognized speech data based on the decoding path for the to-be-recognized speech data may be implemented in various manners.

In a possible implementation, candidate speech recognition results and scores of the candidate speech recognition results may be obtained based on the decoding path for the to-be-recognized speech data, and a candidate speech recognition result with the highest score is determined as the speech recognition result for the to-be-recognized speech data.

In another possible implementation, the speech recognition result for the to-be-recognized speech data may be determined through a high-ordered language model obtained in advance and the decoding path for the to-be-recognized speech data. Specifically, the decoding path for the to-be-recognized speech data may be inputted into the high-ordered language model obtained in advance to obtain the speech recognition result for the to-be-recognized speech data. It should be noted that the high-ordered language model is obtained by performing interpolation on the universal language model by using the domain language model. The high-ordered language model is capable of selecting the best recognition result from multiple candidate recognition results, as the speech recognition result for the to-be-recognized speech data.

In the speech recognition method provided in the embodiments of the present disclosure, since the target decoding network is obtained by integrating the domain decoding network with the general decoding network, the to-be-recognized speech containing a domain related term may be accurately recognized by using the target decoding network.

A device for constructing a decoding network according to an embodiment of the present disclosure is described below. The device for constructing a decoding network and the method for constructing a decoding network may refer to each other. Referring to <FIG>, which shows a schematic structural diagram of a device for constructing a decoding network according to an embodiment of the present disclosure, the device for constructing a decoding network may include: a language model and general decoding network acquisition module <NUM>, a domain decoding network generation module <NUM>, and a decoding network integration module <NUM>. The language model and general decoding network acquisition module <NUM> is configured to acquire a universal language model, a domain language model, and a general decoding network generated based on the universal language model. The domain decoding network generation module <NUM> is configured to generate a domain decoding network based on the universal language model and the domain language model. The decoding network integration module <NUM> is configured to integrate the domain decoding network with the general decoding network to obtain a target decoding network.

With the device for constructing a decoding network provided in the embodiment of the present disclosure, the target decoding network obtained by integrating the domain decoding network with the general decoding network may accurately recognize not only a general word but also a domain related term. Compared with the general decoding network, the target decoding network constructed in the embodiment of the present disclosure may improve the accuracy of recognizing a speech containing a domain related term. In addition, the time and storage resources consumed by the domain decoding network are significantly reduced compared with the time and storage resources consumed by regenerating the general decoding network.

In a possible implementation, the domain decoding network generation module <NUM> in the device for contrasting a decoding network provided in the foregoing embodiment may include an interpolation sub-module and a domain decoding network generation sub-module. The interpolation sub-module is configured to perform interpolation on the universal language model and the domain language model, where a part on which the interpolation is performed includes all parts in the domain language model and a part in the universal language model which also appears in the domain language model. The domain decoding network generation sub-module is configured to generate the domain decoding network based on the part on which the interpolation is performed.

In a possible implementation, the decoding network integration module <NUM> in the device for constructing a decoding network provided in the foregoing embodiment is specifically configured to cascade the domain decoding network and the general decoding network to obtain the target decoding network.

In a possible implementation, the decoding network integration module <NUM> in the device for constructing a decoding network provided in the foregoing embodiment includes: a node adding sub-module and a cascading sub-module. The node adding sub-module is configured to add virtual nodes for each of the general decoding network and the domain decoding network, where the virtual nodes include a start node and an end node. The cascading sub-module is configured to cascade the general decoding network and the domain decoding network by means of the start node and the end node.

In a possible implementation, the cascading sub-module is specifically configured to connect the end node for the general decoding network and the start node for the domain decoding network in a direction from the end node for the general decoding network to the start node for the domain decoding network; and connect the end node for the domain decoding network and the start node for the general decoding network in a direction from the end node for the domain decoding network to the start node for the general decoding network.

Corresponding to the speech recognition method, a speech recognition device is further provided according to an embodiment of the present disclosure. Referring to <FIG>, which shows a schematic structural diagram of the speech recognition device, the speech recognition device may include a decoding module <NUM> and a speech recognition result determining module <NUM>. The decoding module <NUM> is configured to decode to-be-recognized speech data by using the target decoding network constructed by the device for constructing a decoding network provided in the foregoing embodiment, to obtain a decoding path for the to-be-recognized speech data. The speech recognition result determining module <NUM> is configured to determine a speech recognition result for the to-be-recognized speech data based on the decoding path for the to-be-recognized speech data.

According to the speech recognition method provided in the embodiment of the present disclosure, the target decoding network is obtained by integrating the domain decoding network with the general decoding network, the target decoding network therefore can accurately recognize the to-be-recognized speech containing a domain related term.

In a possible implementation, the decoding module <NUM> in the speech recognition device provided in the foregoing embodiment is specifically configured to determine the speech recognition result for the to-be-recognized speech data based on a high-ordered language model obtained in advance and the decoding path for the to-be-recognized speech data, where the high-ordered language model is obtained by performing interpolation on the universal language model by using the domain language model.

In a possible implementation, the decoding module <NUM> in the speech recognition device provided in the foregoing embodiment is specifically configured to input speech frames of the to-be-recognized speech data into the target decoding network sequentially for decoding, to obtain the decoding path for the to-be-recognized speech data. The speech frames of the to-be-recognized speech data enter, respectively via two start nodes in the target decoding network, the general decoding network and the domain decoding network in the target decoding network for decoding. In a case where a candidate decoding path in the general decoding network or the domain decoding network includes an end node, the process jumps from the end node to at least one start node connected to the end node, the general decoding network and/or the domain decoding network is entered to continue decoding until an end of the speech frames.

An apparatus for constructing a decoding network is further provided according to an embodiment of the present disclosure. Referring to <FIG>, which shows a schematic structural diagram of the apparatus for constructing a decoding network, the apparatus for constructing a decoding network may include: at least one processor <NUM>, at least one communication interface <NUM>, at least one memory <NUM>, and at least one communication bus <NUM>. In the embodiment of the present disclosure, the number of the processor <NUM>, the communication interface <NUM>, the memory <NUM>, and the communication bus <NUM> is at least one, and the processor <NUM>, the communication interface <NUM>, and the memory <NUM> communicate with each other via the communication bus <NUM>. The processor <NUM> may be one central processing unit CPU, an Application Specific Integrated Circuit (ASIC), one or more integrated circuits configured to implement the embodiments of the present disclosure, or the like. The memory <NUM> may include a high-speed RAM memory, and may further include a non-volatile memory such as at least one disk memory. The memory stores a program, and the program stored in the memory may be called by the processor. The program is used for: acquiring a universal language model, a domain language model, and a general decoding network generated based on the universal language model; generating a domain decoding network based on the domain language model and the universal language model; and integrating the domain decoding network with the general decoding network to obtain a target decoding network.

In alternative embodiments, detailed functions and extended functions of the program may be referred to the above description.

A readable storage medium is further provided according to an embodiment of the present disclosure. The readable storage medium may store a program suitable for execution by a processor, and the program is used for: acquiring a universal language model, a domain language model, and a general decoding network generated based on the universal language model; generating a domain decoding network based on the domain language model and the universal language model; and integrating the domain decoding network with the general decoding network to obtain a target decoding network.

A speech recognition apparatus is further provided according to an embodiment of the present disclosure. Referring to <FIG>, which shows a schematic structural diagram of the speech recognition apparatus, the speech recognition apparatus may include: at least one processor <NUM>, at least one communication interface <NUM>, at least one memory <NUM>, and at least one communication bus <NUM>. In the embodiment of the present disclosure, the number of the processor <NUM>, the communication interface <NUM>, the memory <NUM>, and the communication bus <NUM> is at least one, and the processor <NUM>, the communication interface <NUM>, and the memory <NUM> communicate with each other via the communication bus <NUM>. The processor <NUM> may be one central processing unit CPU, an Application Specific Integrated Circuit (ASIC), one or more integrated circuits configured to implement the embodiments of the present disclosure, or the like. The memory <NUM> may include a high-speed RAM memory, and may further include a non-volatile memory such as at least one magnetic disk memory. The memory stores a program, and the program stored in the memory may be called by the processor. The program is used for: decoding to-be-recognized speech data by using a target decoding network constructed by using the method for constructing a decoding network according to the foregoing embodiments, to obtain a decoding path for the to-be-recognized speech data; and determining a speech recognition result for the to-be-recognized speech data based on the decoding path for the to-be-recognized speech data.

A readable storage medium is further provided according to an embodiment of the present disclosure. The readable storage medium may store a program suitable for execution by a processor, and the program is used for: decoding to-be-recognized speech data by using a target decoding network constructed by using the method for constructing a decoding network according to the foregoing embodiments, to obtain a decoding path for the to-be-recognized speech data; and determining a speech recognition result for the to-be-recognized speech data based on the decoding path for the to-be-recognized speech data.

Finally, it should be noted that the relationship terms such as "first", "second" and the like are used herein merely to distinguish one entity or operation from another, rather than to necessitate or imply existence of the actual relationship or order of the entities or operations. Moreover, terms "include", "comprise" or any other variants thereof are intended to be non-exclusive. Therefore, a process, method, article or device including a series of elements includes not only these elements but also elements that are not enumerated, or elements that are inherent to the process, method, article or device. Unless expressively limited otherwise, a process, method, article or device limited by "comprising/including a(n). " does not exclude existence of another identical element in such process, method, article or device.

The embodiments in this specification are described in a progressive manner. Each embodiment focuses on any difference from others, and the same or similar parts among the embodiments can be referred to each other.

Claim 1:
A method for constructing a decoding network, the method comprising:
acquiring a universal language model, a domain language model, and a general decoding network generated based on the universal language model;
generating a domain decoding network based on the domain language model and the universal language model; and
integrating the domain decoding network with the general decoding network to obtain a target decoding network,
wherein the method is characterized in that:
the generating a domain decoding network based on the domain language model and the universal language model comprises:
performing interpolation on the universal language model and the domain language model, wherein a part on which the interpolation is performed comprises all parts in the domain language model and a part in the universal language model which also appears in the domain language model; and
generating the domain decoding network based on the part on which the interpolation is performed.