Speech recognition error correction method and terminal device
By updating the dedicated pronunciation database of terminal devices in real time and optimizing the speech recognition system in conjunction with user error correction information, the problems of recognition errors and poor adaptability in speech recognition technology have been solved, achieving efficient personalized error correction and accurate recognition.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- HUAWEI TECH CO LTD
- Filing Date
- 2023-10-18
- Publication Date
- 2026-07-10
AI Technical Summary
Existing speech recognition technology is affected by factors such as the speaker's pronunciation accuracy, environmental noise, and data volume, leading to recognition errors, especially errors involving homophones, which affect users' reading and comprehension. Furthermore, existing error correction methods are inefficient or cannot adapt to the pronunciation habits of different users.
By updating the dedicated pronunciation database of terminal devices in real time, optimizing the speech recognition system based on user error correction information, using the dedicated pronunciation database for personalized error correction, and combining it with the general pronunciation database for supplementary error correction, the accuracy and efficiency of recognition are improved.
It accelerates the efficiency of speech recognition error correction, reduces the frequency of secondary processing of recognition results by users, optimizes user experience, and improves the accuracy and adaptability of speech recognition systems.
Smart Images

Figure CN119851659B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of speech recognition technology, and in particular to a speech recognition error correction method and terminal device. Background Technology
[0002] Currently, speech recognition technology primarily relies on training speech recognition systems with massive amounts of speech and text data. It utilizes signal processing, feature extraction, and mathematical statistics to model the speech data into text. The speech recognition system then converts the input speech content into matching text content. However, the accuracy of speech recognition technology is affected by factors such as speaker pronunciation accuracy, environmental noise, and data volume. For example, speaker pronunciation accuracy is influenced by the speaker's age, gender, accent, and medical condition. Alternatively, the training samples for the speech recognition system may be insufficient, or they may not cover specialized vocabulary or rare characters specific to a particular domain. This often leads to errors such as recognizing the input speech content as homophones with different characters, thus affecting user reading and comprehension. Summary of the Invention
[0003] This application provides a speech recognition error correction method and terminal device, which can optimize speech recognition strategies, improve speech recognition accuracy, and accelerate the processing efficiency of speech recognition error correction.
[0004] To achieve the above objectives, this application provides the following technical solution:
[0005] In a first aspect, this application provides a speech recognition error correction method applied to a terminal device. The method includes: the terminal device acquiring first speech data; the terminal device recognizing the first speech data based on a speech recognition system and outputting a first recognition result; the terminal device determining a target recognition result based on whether a user performs an error correction operation on the first recognition result; if the user does not perform an error correction operation on the first recognition result, the terminal device determines the target recognition result as the first recognition result; if the user performs an error correction operation on the first recognition result, the terminal device corrects the first recognition result to a second recognition result and determines the target recognition result as the second recognition result; and the terminal device updating a dedicated pronunciation association library based on at least one of the first speech data, the first recognition result, and the second recognition result.
[0006] In this method, during the speech recognition process, the dedicated pronunciation association library in the speech recognition system is updated in real time based on the error correction information provided by the user. This allows the terminal device to correct the error in real time based on the updated dedicated pronunciation association library when it detects the same error correction information again, ensuring timely effectiveness. This method accelerates the processing efficiency of speech recognition error correction, reduces the frequency of secondary processing of speech recognition results by the user, optimizes the speech recognition system, improves the user experience, and enhances practicality.
[0007] According to the first aspect, the first voice data is the voice data collected and acquired by the terminal device.
[0008] In some examples, the terminal device acquires the first voice data emitted by the current user when speaking through a voice acquisition device.
[0009] In other examples, the terminal device obtains the first voice data through a media file.
[0010] In this embodiment of the application, the terminal device has already started the voice recognition function before acquiring the first voice data.
[0011] According to the first aspect, or any implementation of the first aspect above, the speech recognition system includes a dedicated pronunciation association library, which is used to correct candidate text corresponding to the first speech data in order to output a first recognition result.
[0012] In this embodiment of the application, the speech recognition system is a system used for speech recognition and error correction.
[0013] According to the first aspect, or any of the above implementations of the first aspect, the dedicated pronunciation association library includes error-correcting phrases, error-correcting words, incorrect pronunciations of error-correcting words, and correct pronunciations of error-correcting words.
[0014] In some examples, a dedicated pronunciation database is a database built based on error correction information provided by the user, including the text and pronunciation of the correction information. This dedicated pronunciation database operates on a specific user, is linked to the user account, and each user has its own unique dedicated pronunciation database.
[0015] In some examples, error correction operations include preset operations such as user editing and modification.
[0016] In some examples, if the terminal device does not receive a correction operation from the user within a preset time, it is determined that the first recognition result obtained by the terminal device does not require correction, and the first recognition result is the correct text corresponding to the first voice data.
[0017] In some examples, the terminal device accepts the user's error correction operation and, in response to the error correction operation, corrects the first recognition result to the second recognition result.
[0018] According to the first aspect, or any implementation of the first aspect above, the terminal device updates the dedicated pronunciation association library based on at least one of the first voice data, the first recognition result, and the second recognition result, including: the terminal device associations the first voice data, the first recognition result, and the second recognition result to determine error correction information; and the terminal device updates the dedicated pronunciation association library based on the error correction information.
[0019] According to the first aspect, or any implementation of the first aspect above, the terminal device associates the first voice data, the first recognition result, and the second recognition result to determine error correction information, including: the terminal device determining the error correction phrase and / or the error correction character based on the first recognition result and the second recognition result; the terminal device determining the incorrect pronunciation of the error correction character based on the first voice data; the terminal device obtaining the correct pronunciation of the error correction character; and the terminal device establishing a mapping relationship between the error correction phrase, the error correction character, the incorrect pronunciation of the error correction character, and the correct pronunciation of the error correction character to generate error correction information.
[0020] In some examples, the terminal device determines the correction phrase and / or the correction word in the correction phrase by comparing the first recognition result and the second recognition result.
[0021] In some examples, the terminal device determines the word to be corrected based on the user's correction operation, and determines the word group containing the corrected word through word segmentation.
[0022] In this way, the terminal device responds to the user's error correction operation, establishes a connection between the information before and after the error correction, and stores the correspondence between various types of information before and after the error correction, so that when the same error occurs again in the future, it can automatically correct the error based on the stored information, improve the accuracy of speech recognition, and speed up the processing efficiency of speech recognition error correction.
[0023] According to the first aspect, or any implementation of the first aspect above, the terminal device recognizes the first speech data based on the speech recognition system and outputs a first recognition result, including: the terminal device recognizes the first speech data based on the speech recognition system to obtain N candidate texts; wherein, N is an integer greater than 0; the terminal device performs error correction and reordering on the N candidate texts according to a dedicated pronunciation association library and a preset decoding method to determine the first recognition result.
[0024] In some examples, the speech recognition system of the terminal device generates corresponding multiple text candidates based on the speech features of the input first speech data, and selects the text sequence with higher scores as candidate text, i.e., the first recognition result, based on the acoustic score and language score.
[0025] In some examples, the default decoding method is a decoding method based on a weighted finite state transition machine.
[0026] In some examples, after the speech recognition system in the terminal device obtains N candidate texts, it corrects errors, re-scores and re-sorts the N candidate texts output by the speech recognition system in the first pass through a dedicated pronunciation association library and a decoding method based on a weighted finite state transition machine.
[0027] In this way, the speech recognition system in the terminal device recognizes and corrects the first data input by the user and displays the first recognition result. The dedicated pronunciation database in the speech recognition system includes the error correction information fed back by the user. During the speech recognition process, the system automatically corrects errors based on the user's personal pronunciation habits. Based on the error correction and the pronunciation characteristics of each user, a dedicated pronunciation database corresponding to each user is generated. Based on the dedicated pronunciation database, real-time personalized error correction is performed to improve the accuracy of speech recognition.
[0028] According to the first aspect, or any implementation of the first aspect above, after the terminal device corrects the first recognition result to the second recognition result and determines the target recognition result as the second recognition result, the method further includes: the terminal device acquiring second speech data, the second speech data including a first incorrect pronunciation in the first speech data, the first incorrect pronunciation corresponding to a first corrected word, and a dedicated pronunciation association library updated based on the first speech data including the correspondence between the first incorrect pronunciation and the first corrected word; the terminal device recognizing the second speech data based on the speech recognition system and outputting a third recognition result, the third recognition result being the correct speech recognition result corresponding to the second speech recognition data.
[0029] In some examples, the first erroneous speech may be the incorrect pronunciation of the phrase and / or single character corresponding to the correction operation performed by the user on the first recognition result. The updated dedicated pronunciation association library includes the above-mentioned correction information.
[0030] In this way, the speech recognition system in the terminal device can automatically recognize and correct the second speech data, directly obtaining the correct speech recognition result, that is, the third recognition result, without the need for manual correction again, reducing the frequency of secondary processing of the speech recognition result by the user and optimizing the speech recognition system.
[0031] According to the first aspect, or any implementation of the first aspect above, the speech recognition system further includes a general pronunciation association library corresponding to multiple users; the general pronunciation association library and the dedicated pronunciation association library are used to correct the candidate texts corresponding to the first speech data to output a first recognition result; the terminal device recognizes the first speech data based on the speech recognition system and outputs the first recognition result, including: the terminal device recognizes the first speech data based on the speech recognition system to obtain N candidate texts; where N is an integer greater than 0; the terminal device corrects and reorders the N candidate texts according to the dedicated pronunciation association library, the general pronunciation association library and the preset decoding method to determine the first recognition result.
[0032] In some examples, the terminal device can obtain a universal pronunciation library from a cloud server.
[0033] In some examples, users can authorize the dedicated pronunciation database generated by their terminal devices to the cloud server of the speech recognition system. The cloud server can then update the general pronunciation database in the speech recognition system on the cloud server based on the data uploaded by the authorized users, and synchronize the updated general pronunciation database to the terminal devices. This allows the terminal devices to perform speech recognition error correction based on the latest general pronunciation database, thus accelerating the error correction process.
[0034] According to the first aspect, or any implementation of the first aspect above, the method further includes: if the dedicated pronunciation association library and the general pronunciation association library contain the same error-correcting word group, then for the same error-correcting word group, the dedicated pronunciation association library has a higher priority than the general pronunciation association library.
[0035] In this way, the terminal device generates a unique pronunciation database for each user based on user error correction feedback. This database helps determine the user's specific pronunciation habits, allowing the speech recognition system to adapt to users with different pronunciation habits. The speech recognition system can automatically match the user's characteristics for personalized recognition and error correction, improving the user experience without requiring changes to the user's pronunciation habits. Furthermore, a speech recognition system based on matching user pronunciation habits can more accurately and effectively recognize user speech and improve recognition efficiency. Moreover, during the error correction process, data from a general pronunciation database can be referenced for correction, further improving the accuracy of the speech recognition results.
[0036] In a second aspect, this application provides a terminal device, which includes: one or more processors; a memory; and one or more computer programs, wherein the one or more computer programs are stored in the memory, and when the computer programs are executed by the one or more processors, the terminal device performs the method as described in the first aspect or any of the embodiments in the first aspect.
[0037] Thirdly, this application provides a chip system including at least one processor and at least one interface circuit. The at least one interface circuit is used to perform transceiver functions and send instructions to at least one processor. When at least one processor executes instructions, at least one processor performs the method as described in the first aspect or any one of the embodiments in the first aspect.
[0038] Fourthly, this application provides a computer-readable storage medium including a computer program or instructions that, when executed on a computer, cause the computer to perform a method as described in the first aspect or any of the embodiments described in the first aspect.
[0039] Fifthly, this application provides a computer program product, which includes a computer program or instructions that, when executed on a computer, cause the computer to perform a method as described in the first aspect or any of the embodiments described in the first aspect.
[0040] It should be noted that the technical effects of any of the designs in the second to fifth aspects mentioned above can be found in the technical effects of the corresponding designs in the first aspect, and will not be repeated here. Attached Figure Description
[0041] Figure 1 A flowchart illustrating an automatic error correction scheme for speech recognition based on a system preset, provided in an embodiment of this application;
[0042] Figure 2 A flowchart illustrating a speech recognition error correction scheme based on manual editing, provided for an embodiment of this application;
[0043] Figure 3 A schematic diagram of the structure of a terminal device provided in this application embodiment. Figure 1 ;
[0044] Figure 4 A schematic diagram of a speech recognition error correction system architecture provided in this application embodiment. Figure 1 ;
[0045] Figure 5 A schematic diagram of a speech recognition error correction system architecture provided in this application embodiment. Figure 2 ;
[0046] Figure 6 A flowchart illustrating a speech recognition error correction method provided in this application embodiment. Figure 1 ;
[0047] Figure 7 A scenario example illustrating a speech recognition error correction method provided in this application embodiment. Figure 1 ;
[0048] Figure 8 A scenario example illustrating a speech recognition error correction method provided in this application embodiment. Figure 2 ;
[0049] Figure 9 A scenario example illustrating a speech recognition error correction method provided in this application embodiment. Figure 3 ;
[0050] Figure 10 A scenario example illustrating a speech recognition error correction method provided in this application embodiment. Figure 4 ;
[0051] Figure 11 A scenario example illustrating a speech recognition error correction method provided in this application embodiment. Figure 5 ;
[0052] Figure 12 A flowchart illustrating a speech recognition error correction method provided in this application embodiment. Figure 2 ;
[0053] Figure 13 A flowchart illustrating a speech recognition error correction method provided in this application embodiment. Figure 3 ;
[0054] Figure 14 A schematic diagram of the structure of a terminal device provided in this application embodiment. Figure 2 ;
[0055] Figure 15 This is a schematic diagram of a chip system provided in an embodiment of this application. Detailed Implementation
[0056] The terminology used in the following embodiments is for the purpose of describing particular embodiments only and is not intended to be limiting of this application. As used in the specification and appended claims of this application, the singular expressions “a,” “an,” “the,” “the,” “the,” and “this” are intended to also include expressions such as “one or more,” unless the context clearly indicates otherwise. It should also be understood that in the following embodiments of this application, “at least one” and “one or more” refer to one or more (including two). The character “ / ” generally indicates that the preceding and following objects are in an “or” relationship.
[0057] References to "one embodiment" or "some embodiments" as used in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized. The terms "comprising," "including," "having," and variations thereof mean "including but not limited to," unless otherwise specifically emphasized. The term "connection" includes both direct and indirect connections, unless otherwise stated.
[0058] Hereinafter, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include one or more of that feature.
[0059] In the embodiments of this application, the words "exemplarily" or "for example" are used to indicate examples, illustrations, or explanations. Any embodiment or design described as "exemplarily" or "for example" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design solutions. Specifically, the use of the words "exemplarily" or "for example" is intended to present the relevant concepts in a specific manner.
[0060] In some examples, speech recognition error correction is achieved based on a pre-defined automatic error correction scheme. Specifically, for example... Figure 1 The diagram illustrates a process flow based on a pre-defined automatic speech recognition error correction scheme. In this example, the terminal device's speech recognition system is pre-configured with a basic speech recognition system and a pre-set error correction library. The speech recognition system identifies and corrects user-input speech data to obtain the corresponding text data. Specifically, the basic speech recognition system performs speech recognition on the user-input speech data based on its basic vocabulary, obtaining the corresponding text data. The pre-set error correction library corrects the text data identified by the basic speech recognition system, resulting in the final speech-to-text recognition result (which can also be described as the target text). For example, the pre-set error correction library includes data on frequently misspelled words and pronunciations. When a user inputs speech data into the terminal device, the speech recognition system first identifies the speech data based on the basic speech recognition system to obtain multiple candidate texts. Then, the speech recognition system in the terminal device corrects and sorts these candidate texts based on the pre-set error correction library to obtain the target text. Subsequently, the terminal device displays the target text.
[0061] For example, a pre-built error correction library includes various hot words (which can be understood as trending terms or easily confused words with similar pronunciations), enabling hot word recognition. The terminal device, based on this library, identifies easily confused words through similar pronunciations, then performs replacement and modification operations using pronunciation matching. Finally, the modified text is sorted, and the text with the highest language model score is selected as the target text. As another example, a pre-built error correction library includes various sensitive words, enabling text normalization. The terminal device, based on this library, identifies sensitive words in candidate texts through text matching and then removes those sensitive words.
[0062] However, the automatic error correction scheme based on the system's preset speech recognition relies on the vocabulary coverage of the pre-set error correction library. It can only correct words included in the pre-set library and cannot effectively correct words outside of it. Moreover, all users use the same speech recognition system and the same pre-set error correction library. When the terminal device corrects errors based on the pre-set library, it uses a fixed error correction logic, which cannot adapt to different users, resulting in poor adaptability and the possibility of incorrect or missed corrections.
[0063] In other examples, speech recognition error correction is achieved based on manually edited speech recognition error correction schemes. Specifically, such as... Figure 2 The diagram shows a flowchart of a speech recognition error correction scheme based on manual editing. In this example, the terminal device's speech recognition system only has a pre-installed basic speech recognition system. The user inputs speech data into the terminal device, and the speech recognition system in the terminal device recognizes the speech data based on the basic speech recognition system to obtain multiple candidate texts, and then sorts these candidate texts. Figure 2 (Not shown in the image), the text with the higher language model score is selected as the output text. The terminal device displays this output text and provides an editing interface for the user to edit and correct errors. In response to the user's editing operation (such as a modification operation), the terminal device corrects the output text to obtain the target text. The terminal device then displays the target text.
[0064] Speech recognition error correction schemes based on manual editing correct the recognition results output by the speech recognition system through manual intervention, but this method is inefficient. When the speech recognition system outputs the same text data for the same speech data, if there are errors in the text data, the errors need to be corrected every time the user inputs the same speech data. Users repeatedly perform the same error correction operation, resulting in a poor user experience. Furthermore, the frequent modification of the recognition result (i.e., the output text) by the user further reduces recognition efficiency.
[0065] To address the aforementioned technical problems, this application provides a speech recognition error correction method. During speech recognition, the dedicated pronunciation association library in the speech recognition system is updated in real time based on user-reported error correction information. This allows the terminal device to correct the error in real time based on the updated library when it detects the same error correction information again, ensuring timely effectiveness. The method provided in this application accelerates speech recognition error correction processing efficiency, reduces the frequency of secondary processing of speech recognition results by the user, optimizes the speech recognition system, enhances user experience, and improves practicality.
[0066] The technical solutions of the embodiments of this application will be described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.
[0067] The technical solutions provided in this application embodiment can be applied to terminal device 100 or to a system containing terminal device 100.
[0068] In this application, the terminal device can be a mobile phone, computer, 2-in-1 laptop, 2-in-1 tablet, laptop, smart TV, tablet, computer with wireless transceiver function, wearable device, in-vehicle device, monitoring device, smart screen, smart speaker, augmented reality (AR) terminal device / virtual reality (VR) device, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), artificial intelligence (AI) terminal, wireless terminal in industrial control, wireless terminal in self-driving, wireless terminal in remote medical surgery, wireless terminal in smart grid, wireless terminal in transportation safety, wireless terminal in smart city, wireless terminal in smart home, etc. The embodiments of this application do not limit the specific technology or device form used in the terminal device.
[0069] Terminal equipment can also be called terminal, user equipment (UE), mobile station (MS), mobile terminal (MT), etc.
[0070] For example, Figure 3A schematic diagram of the terminal device 100 is shown. The terminal device 100 may include a processor 110, an external memory interface 120, an internal memory 121, a USB interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a radio frequency module 150, a communication module 160, an audio module 170, a sensor module 180, a camera 193, a display screen 194, and a SIM card interface 195, etc.
[0071] The structure illustrated in this embodiment of the invention does not constitute a limitation on the terminal device 100. It may include more or fewer components than illustrated, or combine some components, or split some components, or have different component arrangements. The illustrated components may be implemented in hardware, software, or a combination of both. This application does not limit the structure or form of the terminal device 100.
[0072] Processor 110 may include one or more processing units, such as application processors (APs), modem processors, graphics processing units (GPUs), image signal processors (ISPs), controllers, video codecs, digital signal processors (DSPs), baseband processors, and / or neural network processing units (NPUs). These different processing units may be independent devices or integrated into one or more processors.
[0073] The processor 110 may also include a memory for storing instructions and data. In some embodiments, the memory in the processor is a cache memory, which can store instructions or data that the processor has just used or that are used repeatedly. If the processor needs to use the instruction or data again, it can directly retrieve it from the memory. This avoids repeated accesses, reduces processor waiting time, and thus improves system efficiency.
[0074] USB port 130 can be a Mini USB port, Micro USB port, USB Type-C port, etc. The USB port can be used to connect a charger to charge terminal device 100, or to transfer data between terminal device 100 and peripheral devices. It can also be used to connect headphones for audio playback.
[0075] The charging management module 140 receives charging input from a charger, which can be a wireless charger or a wired charger. While charging the battery, the charging management module can also supply power to the terminal device 100 via the power management module 141.
[0076] The power management module 141 is used to connect the battery 142, the charging management module 140, and the processor 110. The power management module receives input from the battery and / or the charging management module to power the processor, internal memory, external memory, and display screen, etc. The power management module can also be used to monitor parameters such as battery capacity and battery health status (leakage current, impedance).
[0077] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in terminal device 100 can be used to cover one or more communication frequency bands. Different antennas can also be reused to improve antenna utilization. For example, a cellular antenna can be reused as a wireless local area network diversity antenna. In some embodiments, the antenna can be used in conjunction with a tuning switch.
[0078] The radio frequency (RF) module 150 provides a communication processing module for wireless communication solutions, including 2G-5G, applied to the terminal device 100. The RF module receives electromagnetic waves from the antenna 1, filters and amplifies the received electromagnetic waves, and then transmits them to the modem for demodulation.
[0079] The communication module 160 provides a communication processing module for wireless communication solutions applied to the terminal device 100, including wireless local area networks (WLAN), Bluetooth (BT), global navigation satellite system (GNSS), near field communication (NFC), and infrared (IR) technologies. The communication module 160 can be one or more devices integrating at least one communication processing module. The communication module receives electromagnetic waves via antenna 2, performs frequency modulation and filtering of the electromagnetic wave signals, and sends the processed signal to the processor.
[0080] In some embodiments, antenna 1 of terminal device 100 is coupled to a radio frequency module, and antenna 2 is coupled to a communication module, enabling terminal device 100 to communicate with networks and other devices via wireless communication technology. The wireless communication technology may include Global System for Mobile Communications (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Time-Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC, and / or IR technologies, etc. The GNSS may include the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS) and / or the BeiDou Navigation Satellite System (BDS), the Quasi-Zenith Satellite System (QZSS) and / or satellite-based augmentation systems (SBAS), etc.
[0081] The display screen 194 is used to display images, videos, etc. The display screen includes a display panel. The display panel can be an LCD (liquid crystal display), OLED (organic light-emitting diode), active-matrix organic light-emitting diode (AMOLED), flexible light-emitting diode (FLED), Minied, MicroLED, Micro-OLED, quantum dot light-emitting diode (QLED), etc. In some embodiments, the terminal device 100 may include one or N display screens, where N is a positive integer greater than 1. In this embodiment, the display screen 194 can display a first recognition result. The user can perform an error correction operation on the display screen 194. In response to the user's error correction operation, the terminal device 100 displays a second recognition result (the recognition result after error correction of the first recognition result) on the display screen 194.
[0082] Camera 193 is used to capture still images or videos. An object is projected onto a photosensitive element by generating an optical image through the lens. The photosensitive element may be a charge-coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. In some embodiments, terminal device 100 may include one or N cameras, where N is a positive integer greater than 1.
[0083] The external storage interface 120 can be used to connect an external storage card, such as a Micro SD card, to expand the storage capacity of the terminal device 100. The external storage card communicates with the processor through the external storage interface to perform data storage functions. For example, music, video, and other files can be saved on the external storage card.
[0084] Internal memory 121 can be used to store computer executable program code, which includes instructions. Processor 110 executes various functional applications and data processing of terminal device 100 by running the instructions stored in internal memory 121. Memory 121 may include a program storage area and a data storage area. The program storage area may store the operating system, applications required for at least one function, etc. The data storage area may store data created during the use of terminal device 100, etc. In addition, memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, other volatile solid-state storage devices, universal flash storage (UFS), etc.
[0085] The audio module 170 is used to convert digital audio information into analog audio signals for output, and also to convert analog audio input into digital audio signals. The audio module can also be used for encoding and decoding audio signals.
[0086] The sensor module 180 of the terminal device 100 may specifically include: a pressure sensor, a distance sensor, an ambient light sensor, a fingerprint sensor, a temperature sensor, and a touch sensor. The touch sensor, also known as a "touch panel," can be installed on the display screen. It is used to detect touch operations applied to or near the display.
[0087] The terminal device 100 may also include components such as a battery 142 and a SIM card interface 195, but this application embodiment does not impose any limitations on this.
[0088] The speech recognition error correction provided in this application can be applied to any speech recognition scenario. Optionally, speech recognition scenarios include human-computer dialogue scenarios (e.g., smart home scenarios, banking scenarios, smart device interaction scenarios, etc.), voice input scenarios (e.g., voice input scenarios in input method applications, voice input scenarios in entertainment game applications, or voice input scenarios in meetings, etc.), speech-to-text scenarios in instant messaging applications, voice search scenarios in search applications, etc. This application does not impose any special limitations on the specific form of the speech recognition scenario.
[0089] For ease of understanding, Figure 4 This illustration shows a schematic diagram of a speech recognition error correction system architecture to which the speech recognition error correction method provided in this application is applicable. The speech recognition error correction system includes a terminal device 401 and a server 402.
[0090] In this embodiment, the terminal device 401 can be a terminal device capable of display and having voice recognition and error correction functions. For example, the terminal device can be a mobile phone, computer, tablet, smart screen, etc.
[0091] In this embodiment, server 402 may be a Linux server, a Windows server, or other server equipment that can provide simultaneous access for multiple devices, or it may be a server cluster composed of multiple regions, multiple data centers, and multiple servers.
[0092] For example, terminal device 401 can connect to server 402 via a wired network or a wireless network. This could be through a local area network, cellular network, or Wi-Fi.
[0093] In this embodiment, the terminal device 401 includes a data acquisition module and an editing and display module.
[0094] In this embodiment, server 402 includes a speech recognition system and a pronunciation association module.
[0095] Specifically, the acquisition module can be used to acquire voice data obtained by the terminal device, such as the first voice data and the second voice data described below. The acquisition module can also be used to send the acquired voice data to the voice recognition system. Furthermore, the acquisition module is used to send the acquired voice data to the pronunciation association module after the user performs an error correction operation. For example, the acquisition module is a microphone.
[0096] The editing and display module can be used to display recognition results, such as displaying the first recognition result and the third recognition result obtained by the speech recognition system described below; or, displaying the second recognition result obtained after the user's error correction operation (which can also be understood as the manual error correction result). The editing and display module can also be used for users to edit recognition results, such as receiving user error correction operations as described below, and correcting the first recognition result to the second recognition result in response to the error correction operation. The editing and display module is also used to send the corrected recognition result (the second recognition result described below) to the pronunciation association module. For example, the editing and display module provides a user editing entry and display interface.
[0097] The speech recognition system can be used to recognize speech data sent by the acquisition module and obtain the corresponding recognition result. For example, as described below, the speech recognition system recognizes the first speech data and outputs the first recognition result. The speech recognition system is also used to send the recognition result to the editing and display module so that the editing and display module can display the recognition result. Furthermore, when the user performs an error correction operation, the speech recognition system sends the recognition result obtained before the user performed the error correction operation (the first recognition result described below) to the pronunciation association module. This speech recognition system includes a dedicated pronunciation association library.
[0098] The pronunciation association module establishes associations based on data sent from other modules. It combines the voice data sent by the acquisition module, the recognition results sent by the speech recognition system, and the corrected recognition results sent by the editing and display module to establish pronunciation associations and determine error correction information. Based on this error correction information, the dedicated pronunciation association library in the pronunciation association module is updated. This module includes a dedicated pronunciation association library. The pronunciation association module also synchronizes the updated dedicated pronunciation association library to the speech recognition system so that the speech recognition system can perform speech recognition error correction based on the updated dedicated pronunciation association library.
[0099] Understandable Figure 4 The speech recognition error correction system shown is merely an example. This application does not limit the module division method in the terminal device 401 and server 402, nor the specific functions of each module.
[0100] In some other embodiments of this application, the terminal device 401 may further include a pronunciation association module, which includes a dedicated pronunciation association library. The terminal-side pronunciation association module can be used to, after detecting a user's error correction operation, acquire the user's voice data from the acquisition module, acquire the recognition result obtained by the speech recognition system before the user performed the error correction operation (the first recognition result described below) from the speech recognition system, and acquire the recognition result after the user's error correction (the second recognition result described below) from the editing and display module. Based on the acquired information, it performs pronunciation association, determines error correction information, and updates the dedicated pronunciation association library based on the error correction information. The pronunciation association module in the terminal device 401 is also used to synchronize the updated dedicated pronunciation association library to the pronunciation association module on the server (cloud side). Correspondingly, the cloud-side pronunciation association module includes a dedicated pronunciation association library and a general pronunciation association library. The cloud-side speech recognition system performs speech recognition error correction based on the dedicated and general pronunciation association libraries in the cloud-side pronunciation association module.
[0101] In this embodiment of the application, the terminal device 401 may further include an end-side storage and computing module, which is used to store data generated or acquired at the end.
[0102] In this embodiment, server 402 may further include a cloud-side storage computing module, which is used to store data generated on the cloud side, the computing process of the cloud-side speech recognition system for speech recognition error correction, and the update process of the dedicated pronunciation association library for end-to-cloud collaborative updates.
[0103] It is understood that the above embodiments illustrate the application of the speech recognition error correction method to a speech recognition error correction system including a terminal device and a server. The speech recognition error correction method provided in this application embodiment can also be applied to the terminal device itself. That is, the speech recognition error correction system only includes the terminal device, and the speech recognition error correction method is completed by the terminal device itself.
[0104] For example, such as Figure 5 The diagram shown illustrates another speech recognition error correction system architecture applicable to the speech recognition error correction method provided in this application embodiment. The speech recognition error correction system includes a terminal device 501.
[0105] In this embodiment, the terminal device 501 includes a data acquisition module, a speech recognition module, an editing and display module, a pronunciation association module, and a speech error correction module.
[0106] Specifically, the acquisition module can be used to acquire voice data obtained by the terminal device, such as the first voice data and the second voice data described below. For example, the user's voice data is acquired and processed through a microphone. The acquisition module can also be used to send the acquired voice data to the voice recognition module. Furthermore, the acquisition module can be used to send the acquired voice data to the pronunciation association module after the user performs an error correction operation.
[0107] The speech recognition module can be used to recognize the text content corresponding to the speech data sent by the acquisition module, and obtain the recognition result, such as the speech recognition system described below recognizing the first speech data and outputting the first recognition result. The speech recognition module is also used to send the recognition result to the editing and display module so that the editing and display module can display the recognition result. The speech recognition module is also used to send the recognition result to the pronunciation association module after the user performs an error correction operation. This speech recognition module is also used to receive a dedicated pronunciation association library sent by the speech error correction module.
[0108] The editing and display module can be used to display recognition results, such as displaying the first recognition result and the third recognition result obtained by the speech recognition system described below; or, displaying the second recognition result obtained after the user's error correction operation. The editing and display module can also be used for user editing of recognition results, such as receiving the user's error correction operation as described below, and correcting the first recognition result to the second recognition result (i.e., the final recognition result) in response to the error correction operation. The editing and display module is also used to send the corrected recognition result (the second recognition result described below) to the pronunciation association module.
[0109] Optionally, the editing display module can also be used to display the correct pronunciation prompts for the words being corrected.
[0110] The pronunciation association module is used to establish pronunciation associations based on the voice data sent by the acquisition module, the recognition results sent by the speech recognition module (the first recognition result described below), and the corrected recognition results sent by the editing and display module (the second recognition result described below), and to determine error correction information. The dedicated pronunciation association library in the pronunciation association module is updated based on the error correction information. The pronunciation association module is also used to synchronize the updated dedicated pronunciation association library to the speech error correction module.
[0111] The speech correction module takes effect during the speech recognition module's process of generating recognition results, and intervenes in and corrects the recognition results based on a dedicated pronunciation association library.
[0112] It is understandable that the above Figure 4 and Figure 5 The system architecture diagram shown is merely an example. In practical applications, terminal device 401 or terminal device 501 may include more or fewer modules, and server 402 may also include more or fewer modules. This application embodiment does not limit the division of modules in the terminal device and server. For example, the speech recognition module and speech error correction module in terminal device 501 can be integrated into one module, such as a speech recognition and error correction system.
[0113] The system architecture and business scenarios described in this application are intended to more clearly illustrate the technical solutions of this application, and do not constitute the only limitation on the technical solutions provided in this application. As those skilled in the art will know, with the evolution of system architecture and the emergence of new business scenarios, the technical solutions provided in this application are also applicable to similar technical problems.
[0114] It is understood that in the embodiments of this application, the terminal device may execute some or all of the steps in the embodiments of this application. These steps or operations are merely examples, and the embodiments of this application may also execute other operations or variations thereof. Furthermore, the steps may be executed in different orders as presented in the embodiments of this application, and it is not necessary to execute all the operations in the embodiments of this application.
[0115] For example, the technical solutions involved in the following embodiments can all be implemented in the terminal device 100 described above. The speech recognition error correction method provided in the embodiments of this application will be described in detail below with reference to the accompanying drawings and application scenarios.
[0116] The following describes the application of embodiments of this application in... Figure 5 The following is an example of a speech recognition error correction system.
[0117] In the embodiments of this application, such as Figure 6 The diagram shown is a flowchart of a speech recognition error correction method provided in an embodiment of this application. The method includes the following steps S601-S607:
[0118] S601, The terminal device acquires the first voice data.
[0119] In this embodiment of the application, the first voice data is the voice data collected and acquired by the terminal device.
[0120] In one possible implementation, the terminal device acquires the first voice data emitted by the user when speaking through a voice acquisition device. For example, the terminal device's microphone acquires the voice data input in real time by the user in the terminal device's input method application. This application does not limit the voice acquisition device.
[0121] In another possible implementation, the terminal device obtains the first voice data through a media file. For example, a user uploads a meeting recording file to the terminal device, and the terminal device obtains the first voice data based on the meeting recording file. The first voice data can be part or all of the voice data in the meeting recording file. This application does not limit the specific implementation method by which the terminal device obtains the first voice data.
[0122] It is understandable that the terminal device has already activated its voice recognition function before acquiring the first voice data. In some embodiments, the terminal device may activate its voice recognition function when the voice assistant installed on it is launched, and display a prompt message on the currently displayed page to notify the user that the voice recognition function has been activated.
[0123] There are various ways to launch a voice assistant. For example, a mobile phone can launch the voice assistant based on a user's preset operation on the power button. Alternatively, the mobile phone can launch the voice assistant when it determines that the user's voice input wake word matches a pre-stored wake word. Or, the mobile phone can launch the voice assistant based on a user's preset operation on the currently displayed page. This application embodiment does not limit the implementation method of launching the voice assistant. This application embodiment also does not limit the implementation method of launching the voice recognition function of the terminal device.
[0124] S602. The terminal device recognizes the first voice data based on the voice recognition system and outputs the first recognition result. The voice recognition system includes a dedicated pronunciation association library.
[0125] In this embodiment of the application, the speech recognition system is a system for performing speech recognition and error correction. For example, the speech recognition system can also be described as a speech recognition error correction system.
[0126] In this embodiment of the application, the first recognition result is the recognized text output by the terminal device after recognizing the first voice data based on the voice recognition system.
[0127] In this embodiment, the dedicated pronunciation database is a database constructed based on error correction information provided by the user, including the text and pronunciation of the error correction information. The dedicated pronunciation database is used for speech recognition error correction. It operates on a specific user and is bound to the user's account (industrial design, ID); each user has a corresponding, unique dedicated pronunciation database. The dedicated pronunciation database is stored on the terminal device.
[0128] As exemplarily shown in Table 1, this is a pronunciation association mapping table in the dedicated pronunciation association library provided in the embodiments of this application.
[0129] Table 1
[0130] Correction phrases Correcting single words Correct pronunciation Incorrect pronunciation Fiery Fiery chì zhì download load zài zǎi Obsessive-compulsive disorder addiction pǐ pì …… …… …… ……
[0131] As shown in Table 1, which only displays partial information, Table 1 includes the corrected phrases, corrected words, corrected characters, corrected pronunciations, and incorrect pronunciations of the corrected characters from user feedback. The corrected phrases and corrected characters in the error correction information are the objects of the user's corrections. The correct pronunciation is the correct pronunciation of the corrected character within the corrected phrase, and the incorrect pronunciation is the pronunciation of the corrected character in the user's input voice data.
[0132] It is understood that the pronunciation association mapping table in the above example includes error-correcting phrases, error-correcting words, the correct pronunciation of the error-correcting words, and the incorrect pronunciation of the error-correcting words. In practical applications, the pronunciation association mapping table may include more or less content, and the embodiments of this application do not limit the specific content contained in the dedicated pronunciation association library.
[0133] In one possible implementation, the terminal device identifies the first speech data based on the speech recognition system to obtain N candidate texts. The terminal device then corrects and reorders the N candidate texts according to a preset decoding method and a dedicated pronunciation association library to determine the first recognition result. The terminal device then displays the first recognition result.
[0134] Specifically, in the speech recognition system of the terminal device, the speech features of the first input speech data are decoded to generate (i.e., one-time decoding) the corresponding multiple candidate texts (i.e., N candidate texts), and the text sequence with higher scores is selected as candidate text based on the acoustic score and language score, which is the first recognition result.
[0135] Here, the N candidate texts can be the N recognition results with the highest confidence ranking among the recognition results output by the speech recognition system, where N is an integer greater than 0.
[0136] In some examples, after acquiring the first voice data, the terminal device sends it to the speech recognition system. The speech recognition system in the terminal device first preprocesses the first voice data, performing operations such as noise cancellation, noise reduction, and audio gain. Then, the speech recognition system extracts features from the preprocessed first voice data and recognizes these features according to the speech recognition model in the speech recognition system, obtaining N candidate texts.
[0137] For example, in traditional speech recognition schemes based on Hidden Markov Models, the acoustic model in the speech recognition system calculates the probability distribution of each phoneme or syllable based on features. Subsequently, the language model in the speech recognition system calculates the probability of the next word based on the generated text sequence and context information. Finally, the decoder uses search techniques such as the Viterbi algorithm, guided by the acoustic and language models, to search for text sequences with high probability rankings as candidate texts.
[0138] For example, in an end-to-end speech recognition solution, the speech recognition system includes a trained neural network model. Based on the neural network model, speech recognition is performed on the input speech data to obtain the candidate text corresponding to the speech data.
[0139] The preset decoding method can be a decoding method based on a weighted finite state transducer (WFST).
[0140] In other examples, after the speech recognition system in the terminal device obtains N candidate texts, it uses a decoding method based on a weighted finite state transition machine to correct errors, re-score, and re-sort the N candidate texts output by the speech recognition system in the first pass.
[0141] Specifically, the speech recognition system includes a pre-built weighted finite state transition machine (FSU). The FSU is constructed based on the speech model, acoustic model, and other relevant information, and includes various word sequences, word pronunciations, and weights for each word sequence. The FSU in the speech recognition system performs decoding and error correction operations on N candidate texts. For example, by calculating the matching degree between each candidate text and the FSU, and combining the word pronunciations and weights in the FSU, the candidate texts are corrected, and the score of each corrected candidate text is recalculated.
[0142] For example, in traditional speech recognition schemes based on Hidden Markov Models, after one decoding pass, candidate texts and pronunciation information corresponding to the speech data are obtained. The speech recognition system then reorders these candidate texts according to their scores after error correction, and determines the candidate text with the highest score as the first recognition result. For example, the N candidate texts after error correction are reordered in descending order.
[0143] For example, in an end-to-end speech recognition scheme, after one decoding pass, only candidate text corresponding to the speech data is available. It is necessary to first generate the pronunciation corresponding to the candidate text in the first decoding pass through the grapheme-to-phoneme (G2P) method, and then reorder the candidate text through a weighted finite state transition machine to determine the first recognition result.
[0144] It is understood that the specific implementation methods for determining the first recognition result in the above examples are found in the prior art and will not be repeated here. Moreover, the embodiments of this application do not limit the specific implementation method of the terminal device recognizing the first voice data and outputting the first recognition result based on the voice recognition system.
[0145] In this embodiment, the speech recognition system of the terminal device stores a dedicated pronunciation association library and a weighted finite state transition machine. When the dedicated pronunciation association library is updated, the weighted finite state transition machine before the update is modified based on the updated data (such as user-corrected word phrases). A mapping relationship between the pronunciation and text of the updated data is constructed in the weighted finite state transition machine, and the weights of the updated data are set. Thus, the weighted finite state transition machine is updated based on the updated dedicated pronunciation association library, so that subsequent speech recognition can be performed based on the latest data, improving the accuracy and efficiency of speech recognition. That is, the speech recognition system in this application automatically corrects the recognition results based on the data in the dedicated pronunciation association library while performing speech recognition.
[0146] For example, such as Figure 7 The figure shown is a schematic diagram of the states corresponding to the phrase "download" shown in Table 1 of the weighted finite state transition machine. Figure 7The nodes in it represent states, the connections between nodes represent the transitions between states, the pinyin and data on the connections are the labels and weights for each transition, the bold circles represent the initial state, and the two circles represent the termination state. The solid line between the initial state and the state corresponding to the "1" node represents the correct pronunciation of "xia" in "downloading" and the weight of this correct pronunciation. The solid line between the state corresponding to the "1" node and the termination state represents the correct pronunciation of "zai" in "download" and the weight of this correct pronunciation. The dashed line between the state corresponding to the "1" node and the termination state represents the incorrect pronunciation of "zai" in "download" and the weight of this incorrect pronunciation in the user input voice data obtained through the arc pasting operation. Thus, the phrase is determined based on the pronunciation and weight of each character, and then the text corresponding to the voice data is determined.
[0147] Exemplarily, such as Figure 8 shown, taking the correct text actually corresponding to the user input voice data as "Send me the file you downloaded. I need to correct it." as an example for illustration. The dedicated pronunciation association library in the speech recognition system includes the pronunciation association mapping table shown in Table 1. The weighted finite state transducer in the speech recognition system is updated and constructed based on the language model using the dedicated pronunciation association library containing Table 1. The terminal device receives the first voice data input by the user (such as the voice data), but the user has an accent resulting in inaccurate pronunciation. The terminal device uses the speech recognition system to recognize the first voice data and obtains the syllables corresponding to the first voice data as "bǎnǐxiàzǎi dēwēn jiàn fāgěiwǒwǒyào xiào zhèng yíxià". The speech recognition system uses the syllables and its own speech recognition model to recognize and obtain 2 candidate texts: "Send me the file you downloaded. I need to make a minor adjustment." and "Send me the file you downloaded. I need to make a minor correction." After obtaining the two candidate texts, error correction is performed on the two candidate texts according to the decoding method based on the dedicated pronunciation association library shown in Table 1 and the weighted finite state transducer, and "downloaded" is corrected to "downloaded" in the two candidate texts. Thus, two corrected candidate texts "Send me the file you downloaded. I need to make a minor adjustment." and "Send me the file you downloaded. I need to make a minor correction." are obtained, and the scores of each error-corrected candidate text are recalculated according to the weighted finite state transducer. The candidate text with the higher score, "Send me the file you downloaded. I need to make a minor correction.", is determined as the first recognition result and displayed on the terminal interface.
[0148] It can be understood that in the embodiment of the present application, the first voice data is recognized by the speech recognition system for the first time, but the recognition result may be incorrect or incomplete. Therefore, after the speech recognition system outputs N candidate texts in the first recognition, error correction, re-scoring, and re-ranking are performed on the N candidate texts through the decoding scheme based on the weighted finite state transducer, so as to improve the recognition accuracy and efficiency and provide a recognition result that more conforms to the actual situation.
[0149] In some other embodiments of this application, the speech recognition system further includes a universal pronunciation database. The universal pronunciation database is a database containing text and pronunciation error correction information, constructed based on data from a dedicated pronunciation database compiled from feedback from all users. That is, the universal pronunciation database is iteratively updated based on the dedicated pronunciation database. The universal pronunciation database is used for speech recognition error correction. It is applicable to all users and is a database shared by all users. The universal pronunciation database is stored on the terminal device and / or on a cloud server.
[0150] Understandably, the data in both the dedicated and general pronunciation databases gradually increases with user usage. When a user first uses the system, their dedicated pronunciation database may contain no data or only some basic error correction data; as the user continues to use the system, the data in the dedicated database increases. Similarly, when a speech recognition system is first used, the general pronunciation database may contain no data or only some basic error correction data; as different users use the system, the data in the general pronunciation database gradually increases.
[0151] In some other embodiments of this application, if the speech recognition system includes a general pronunciation association library and a dedicated pronunciation association library, the terminal device recognizes the first speech data based on the speech recognition system to obtain N candidate texts. The terminal device performs error correction and reordering on the N candidate texts according to a preset decoding method, the dedicated pronunciation association library and the general pronunciation association library to determine the first recognition result, and the terminal device displays the first recognition result.
[0152] In some instances, when both the dedicated pronunciation association library and the general pronunciation association library contain a certain error-correcting phrase in the candidate text, the dedicated pronunciation association library takes precedence over the general pronunciation association library, and the error correction and reordering of the candidate text is based on the dedicated pronunciation association library.
[0153] In one possible implementation, users can authorize the dedicated pronunciation database generated by their terminal devices to the cloud server of the speech recognition system. Subsequently, the cloud server can update the general pronunciation database in the speech recognition system on the cloud server based on the data in the dedicated pronunciation databases uploaded by the authorized users, and synchronize the updated general pronunciation database to the terminal devices. This allows the terminal devices to perform speech recognition error correction based on the latest general pronunciation database, thereby accelerating the efficiency of error correction.
[0154] In some examples, the terminal device retrieves a general pronunciation database from a cloud server. When the terminal device performs speech recognition for the first time, it obtains a first recognition result based on the speech recognition system and the general pronunciation database. If the user performs an error correction operation on the first recognition result, the first recognition result is corrected to a second recognition result according to the error correction operation, and the dedicated pronunciation database on the terminal side is updated based on the first speech data, the first recognition result, and the second recognition result. When the terminal device performs speech recognition again subsequently, it recognizes the second speech data input by the user based on the speech recognition system, the general pronunciation database, and the dedicated pronunciation database.
[0155] In some embodiments of this application, after the cloud server obtains the data of the dedicated pronunciation association library uploaded by different terminal devices, if the amount of data of the dedicated pronunciation association library uploaded by the terminal devices exceeds a preset threshold, the cloud server organizes and counts the data in the different dedicated pronunciation association libraries, and updates the general pronunciation association library in the cloud server according to the data.
[0156] In other embodiments of this application, the cloud server periodically acquires data from dedicated pronunciation association libraries uploaded by different terminal devices, and updates the general pronunciation association library in the cloud server based on the high-frequency pronunciation association data in the data. The embodiments of this application do not limit the specific implementation method of updating the general pronunciation association library.
[0157] For example, such as Figure 9 The diagram illustrates the updating of a general pronunciation association library provided in this application embodiment. Terminal devices 1, 2, and 3 respectively obtain a speech recognition system containing the general pronunciation association library from a cloud server, enabling them to perform speech recognition and error correction (i.e., automatic system error correction) to obtain a first recognition result. Terminal devices 1, 2, and 3 respectively obtain user error correction operations on the first recognition result (i.e., manual user error correction), and construct corresponding dedicated pronunciation association libraries 1, 2, and 3 based on the error correction operations and the first recognition result. Terminal devices 1, 2, and 3 send their respective generated dedicated pronunciation association libraries 1, 2, and 3 to the cloud server via end-to-cloud collaboration. The cloud server updates its own general pronunciation association library based on the dedicated pronunciation association libraries 1, 2, and 3, and sends the updated general pronunciation association library to terminal devices 1, 2, and 3.
[0158] Understandably, by using an edge-cloud collaborative mechanism to statistically analyze error correction information in a massive user-specific pronunciation database and updating the cloud-based general pronunciation database based on the statistical results, it is possible to achieve full collection and statistical analysis of commonly mispronounced pronunciations, thereby improving the general speech recognition performance of the speech recognition system.
[0159] In this way, the terminal device generates a unique pronunciation database for each user based on user error correction feedback. This database helps determine the user's specific pronunciation habits, allowing the speech recognition system to adapt to users with different pronunciation habits. The speech recognition system can adaptively recognize and personalize errors based on each user's characteristics. The speech recognition system automatically matches the user without changing their pronunciation habits, thus improving the user experience. Moreover, a speech recognition system based on matching user pronunciation habits can more accurately and effectively recognize user speech and improve recognition efficiency.
[0160] It is understood that steps S601-S602 above involve the speech recognition system in the terminal device recognizing and correcting the first data input by the user, and displaying the first recognition result. After the terminal device displays the first recognition result, the user can further determine whether the recognition result is incorrect. If the user determines that the first recognition result is incorrect and needs to correct the erroneous text, steps S603-S605 below can be executed. The terminal device responds to the user's correction operation and corrects the first recognition result to a second recognition result. The terminal device updates the dedicated pronunciation association library in the speech recognition system based on the first speech data, the first recognition result, and the second recognition result. This allows the speech recognition system to recognize and correct the user's next input of second speech data based on the updated dedicated pronunciation association library. If the next input of second speech data includes correction information from the dedicated pronunciation association library, speech recognition and correction are automatically performed based on the information in the dedicated pronunciation association library, eliminating the need for the user to manually edit and correct the error again. This means "recording and correcting simultaneously," updating the dedicated pronunciation database in the speech recognition system in a timely manner based on user feedback. When the same error occurs again, the correction information will take effect immediately, reducing the frequency of secondary processing of speech recognition results by users and optimizing the speech recognition system.
[0161] S603, The terminal device responds to the user's error correction operation and corrects the first identification result to the second identification result.
[0162] In this embodiment of the application, the error correction operation can be a preset operation such as editing or modifying the first recognition result performed by the user.
[0163] The above preset operations include pre-set quick operations or voice commands. Optionally, the preset operation can be certain quick operations of the user, such as quick operations in the way of gestures or key combinations. Specifically, when the terminal device is a computer, the user can use the mouse to drag the cursor to select the single word to be corrected in the first recognition result, and input the correct text through the keyboard to replace the single word to be corrected. When the terminal device is a terminal device such as a mobile phone or a tablet computer with a touch display screen, the user can use a stylus or a finger to select the single word to be corrected in the first recognition result by means of gestures (such as double-clicking or long-pressing on a certain word) or dragging the cursor, etc., and input the correct text by handwriting or keyboard to replace the single word to be corrected. In this way, the correction operation is completed.
[0164] The above preset operation can also be a voice command of the user, such as下达 commands to the terminal device to select and modify a certain word through a voice assistant, etc. The embodiments of the present application do not limit the specific implementation form of this preset operation.
[0165] In the embodiments of the present application, the second recognition result is the text data after the user corrects the first recognition result.
[0166] In some embodiments of the present application, the terminal device accepts the correction operation of the user, and in response to this correction operation, corrects the first recognition result to the second recognition result.
[0167] Exemplarily, based on the above Figure 8 in the example. As Figure 10 shown in (a) of, the text display area 1001 displays "Send me the file you downloaded. I want to make a small correction". When the user reviews the first recognition result "Send me the file you downloaded. I want to make a small correction", and finds that the "small" in the first recognition result is incorrect, the user moves the cursor before "small" and drags the cursor backward to select the word "small". Figure 10 The "small" selected by the user is shown in a box in (a) of. The mobile phone receives the operation of the user and determines that the "small" selected by the user is the single word to be corrected this time. Subsequently, as Figure 10 shown in (b) of, the user handwrites a word "校" in the half-screen handwriting keyboard in the text editing area 1002. Correspondingly, the "校" in the text editing area 1002 replaces the "small". In this way, the terminal device corrects "Send me the file you downloaded. I want to make a small correction" to "Send me the file you downloaded. I want to make a correction" according to the correction operation of the user. That is, the second recognition result is "Send me the file you downloaded. I want to make a correction".
[0168] Optionally, the text editing area 1002 may also display only the content input by the user when the user inputs. If the user has finished inputting and the content input by the user is already displayed in the text display area 1001, the text editing area 1002 may be restored to a blank page to facilitate the user to input new content.
[0169] Optionally, if the terminal device does not receive a user's error correction operation within a preset time after receiving the user's error correction operation, it is determined that the user has completed the error correction of the first recognition result this time.
[0170] Optionally, the terminal device may also provide a function control. When the user triggers the function control, it is determined that the user has ended the error correction of the first recognition result this time. For example, as Figure 10 shown in (a) of, the terminal device provides a confirmation button 1003 in the text editing area 1002. If the user clicks the confirmation button 1003, it is considered that the user has ended the error correction of the first recognition result this time.
[0171] In some other embodiments of the present application, if the terminal device does not receive a user's error correction operation within a preset time, it is determined that the first recognition result recognized by the terminal device does not need to be corrected, and this first recognition result is the correct text corresponding to the first voice data.
[0172] S604. The terminal device associates the first voice data, the first recognition result, and the second recognition result to determine error correction information.
[0173] In the embodiments of the present application, the terminal device determines the error correction single words in the error correction phrase based on the first recognition result and the second recognition result, obtains the incorrect pronunciation corresponding to the error correction single word in the first voice data, and the correct pronunciation corresponding to the error correction single word. The terminal device establishes a mapping relationship among the error correction phrase, the error correction single word, the incorrect pronunciation, and the correct pronunciation to generate error correction information.
[0174] In a possible implementation manner, the terminal device determines the error correction phrase and / or the error correction single words in the error correction phrase by comparing the first recognition result and the second recognition result.
[0175] In another possible implementation manner, the terminal device determines the error correction single word according to the user's error correction operation, and determines the error correction phrase containing the error correction single word through word segmentation processing.
[0176] Exemplarily, based on the above Figure 10 example, when the user performs an error correction operation, the "small" in the first recognition result is modified to "school". Thus, it is determined that the error correction single words in the first recognition result and the second recognition result are "small" and "school" respectively, and then the error correction phrases are determined as "small positive" and "correction" through word segmentation processing.
[0177] In a possible implementation, the terminal device determines the incorrect pronunciation corresponding to the error correction word according to the first recognition result and the first voice data.
[0178] Specifically, the terminal device performs forced alignment on the first recognition result and the first voice data, and associates each phrase or phoneme in the first recognition result with the specific time of the audio. The terminal device determines the incorrect pronunciation corresponding to the error correction word in the first recognition result according to the alignment result. [[ID=
[0185] Exemplarily, an association relationship is established among the corrected single words, corrected word groups, incorrect pronunciations, and correct pronunciations of error correction to generate error correction information. The specific form can be: correction - correct - jiào - xiào.
[0186] It can be understood that in the above example, the terminal device determines the error correction information based on the first voice data, the first recognition result, and the second recognition result. In actual use, the terminal device can establish a connection based on at least one of the first voice data, the first recognition result, and the second recognition result to determine the error correction information.
[0187] S605. The terminal device updates the dedicated pronunciation connection library according to the error correction information.
[0188] In the embodiment of the present application, the terminal device adds the error correction information to the dedicated pronunciation connection library to update the dedicated pronunciation connection library.
[0189] Exemplarily, the terminal device adds the error correction information to the pronunciation connection mapping table in the dedicated pronunciation connection library shown in Table 1 to obtain the updated pronunciation connection mapping table in the dedicated pronunciation connection library shown in Table 2 (only part of the information is shown in Table 2).
[0190] Table 2
[0191] Correction phrases Correcting single words Correct pronunciation Incorrect pronunciation Fiery Fiery chì zhì download load zài zǎi Obsessive-compulsive disorder addiction pǐ pì …… …… …… …… Correction school jiào xiào
[0192] As shown in Table 2, the error correction information determined according to the user's error correction operation in the above steps S603 - S604 is newly added in Table 2: correction - correct - jiào - xiào. In this way, when the terminal device performs the next voice recognition, it can perform voice recognition and error correction according to the data in the updated dedicated pronunciation connection library shown in Table 2.
[0193] It is understandable that steps S601-S605 above describe the specific implementation method by which the terminal device obtains the correct text corresponding to the first voice data. First, the first voice data is automatically recognized and corrected by the voice recognition system to obtain a first recognition result. If the user determines that there are still errors in the first recognition result and performs an error correction operation, the terminal device responds to the user's error correction operation by correcting the first recognition result to a second recognition result (i.e., the correct text corresponding to the first voice data). Furthermore, the terminal device obtains feedback information from the user before and after correction (including the first voice data, the first recognition result, and the second recognition result) to determine the error correction information generated by this error correction operation, and updates the dedicated pronunciation association library in the voice recognition system in real time based on this error correction information. When the user inputs second voice data again, steps S606-S607 can be executed again. This allows for timely judgment based on the updated dedicated pronunciation association library during subsequent voice recognition to determine whether the next input second voice data includes the error correction information from the updated dedicated pronunciation association library. If it does, it takes effect immediately, reducing the frequency of secondary processing of the voice recognition result by the user and optimizing the voice recognition system.
[0194] Understandably, in practical applications, terminal devices can update the dedicated pronunciation database based on at least one of the first voice data, the first recognition result, and the second recognition result.
[0195] S606. The terminal device acquires second voice data, which includes the incorrect pronunciations in the aforementioned error correction information.
[0196] In this embodiment of the application, the second voice data is the voice data obtained by the terminal device after obtaining the first voice data.
[0197] The specific implementation method of the terminal device acquiring the second voice data in this embodiment can be found in S601 above, and will not be repeated here.
[0198] S607. The terminal device recognizes the second voice data based on the voice recognition system and outputs a third recognition result. The voice recognition system includes an updated dedicated pronunciation database.
[0199] In this embodiment of the application, the third recognition result is the recognized text output by the terminal device after recognizing the second voice data based on the voice recognition system.
[0200] Understandably, the updated dedicated pronunciation database includes the aforementioned error correction information. Therefore, the speech recognition system in the terminal device can automatically identify and correct this error correction information without the need for manual correction.
[0201] Understandably, if the user determines that the third recognition result is incorrect (the error is not included in the updated dedicated pronunciation association library), the terminal device can obtain the error correction information fed back by the user according to the above steps S603-S605, and update the pronunciation association library again, which will not be elaborated here.
[0202] In this embodiment of the application, when the terminal device displays the third recognition result, it prompts the user to correct the correct pronunciation of the single word so as to correct the user's pronunciation habits and improve the accuracy of speech recognition.
[0203] In some examples, when displaying the third recognition result, the terminal device can mark the correct pronunciation near the word being corrected.
[0204] In other examples, when displaying the third recognition result, the terminal device can highlight the corrected word, such as by changing its color, increasing its font size, bolding it, or underlining it. A pronunciation indicator, such as a speaker or player icon, is displayed near the corrected word; the user touches this indicator to hear the correct pronunciation of the corrected word. This application does not limit the specific implementation method by which the user device prompts the user for the correct pronunciation of the corrected word.
[0205] For example, such as Figure 11 The diagram illustrates a scenario where a terminal device performs speech recognition on a meeting recording. When a user plays the meeting recording, the terminal device distinguishes different roles based on the sound waves within the recording. The specific implementation of this distinction is described in existing technologies and will not be elaborated upon here.
[0206] The terminal device identifies the first voice data of Role 1 and obtains the first recognition result: "Role 1: Today we will have a meeting to discuss the small positive method of remote sensing images," such as... Figure 11 The terminal device shown in (a) receives a user's operation to correct "small positive" to "correct" after displaying the first recognition result. In response to this error correction operation, the terminal device displays the second recognition result: "Today we will have a meeting to discuss the correction methods for remote sensing images." (e.g.) Figure 11 As shown in (b)). Furthermore, the terminal device determines the error correction information generated by this error correction operation based on the error correction operation and the user's feedback information before and after the error correction (including the first voice data, the first recognition result, and the second recognition result), and updates the dedicated pronunciation association library in the speech recognition system in real time based on this error correction information. Figure 11(Not shown in the image). The terminal device then continues to recognize the conference recording file in chronological order. For example, the terminal device recognizes the second voice data of role 2 and obtains the second recognition result, "So, who will give a related introduction?". At this point, if the user wants to correct the second recognition result, the terminal device recognizes the third voice data of role 1. This third voice data includes the incorrect pronunciations mentioned in the correction information. The voice recognition system in the terminal device can then automatically recognize and correct this third voice data based on the updated dedicated pronunciation database, obtaining the third recognition result, "Correction of remote sensing images includes radiometric correction and geometric correction." (e.g.) Figure 11 (as shown in (c)). In this way, when the terminal device detects the same error correction information again, it can correct the error in real time based on the dedicated pronunciation association library in the updated speech recognition system, and the error will take effect in a timely manner, thus speeding up the processing efficiency of speech recognition error correction.
[0207] The above embodiments of this application take the application of the speech recognition error correction method to a speech recognition error correction system that only includes the terminal device itself as an example. The speech recognition error correction method provided in the embodiments of this application can also be applied to a speech recognition error correction system that includes both a terminal device and a server.
[0208] The following description uses an embodiment of this application in a speech recognition error correction system that includes a terminal device and a server as an example.
[0209] like Figure 12 As shown, a speech recognition error correction method provided in this application includes the following steps:
[0210] S1200, the terminal device acquires the first voice data.
[0211] The specific implementation method of the terminal device acquiring the first voice data in this embodiment can be found in S601 above, and will not be repeated here.
[0212] S1201, The terminal device sends the first voice data to the server.
[0213] In one possible implementation, the terminal device generates a first voice recognition request based on the first voice data and sends the first voice recognition request to the server, the first voice recognition request including the first voice data.
[0214] Optionally, the terminal device may send the first speech recognition request to the server based on network protocols such as Hypertext Transfer Protocol (HTTP) or HTTP Channel (HTTPS) for security purposes.
[0215] S1202, The server recognizes the first voice data based on the voice recognition system and outputs the first recognition result. The voice recognition system includes a dedicated pronunciation association library.
[0216] In one possible implementation, the server obtains a dedicated pronunciation database corresponding to each terminal device with which it has a communication connection. When the server receives the first voice data sent by a terminal device, the speech recognition system performs speech recognition based on the dedicated pronunciation database corresponding to that terminal device and outputs the first recognition result.
[0217] The specific implementation method of the server recognizing the first voice data and outputting the first recognition result based on the speech recognition system in this embodiment can be found in S602 above, and will not be repeated here.
[0218] S1203, The server returns the first identification result to the terminal device.
[0219] S1204, The terminal device displays the first identification result.
[0220] S1205, The terminal device responds to the user's error correction operation and corrects the first identification result to the second identification result.
[0221] In this embodiment of the application, the specific implementation method of the terminal device responding to the user's error correction operation and correcting the first recognition result to the second recognition result can be found in S603 above, and will not be repeated here.
[0222] S1206. The terminal device associates the first voice data, the first recognition result, and the second recognition result to determine the error correction information, and sends the error correction information to the server.
[0223] In this embodiment of the application, the terminal device establishes a connection between the first voice data, the first recognition result, and the second recognition result to determine the error correction information. The specific implementation method can be found in S604 above, and will not be repeated here.
[0224] S1207. The server updates the dedicated pronunciation database based on the error correction information.
[0225] The specific implementation method of the server updating the dedicated pronunciation association library according to the error correction information in this embodiment can be found in S605 above, and will not be repeated here.
[0226] S1208. The terminal device acquires second voice data, which includes the incorrect pronunciation in the aforementioned error correction information.
[0227] In this embodiment of the application, the terminal device obtains second voice data, which includes the erroneous pronunciations in the above-mentioned error correction information. For the specific implementation of this method, please refer to S606, which will not be repeated here.
[0228] S1209, The terminal device sends the second voice data to the server.
[0229] S1210, The server recognizes the second speech data based on the speech recognition system and outputs a third recognition result. The speech recognition system includes an updated dedicated pronunciation association library.
[0230] In this embodiment, the server recognizes the second voice data based on the voice recognition system and outputs a third recognition result. The specific implementation of the voice recognition system, including the updated dedicated pronunciation association library, can be found in S607 above, and will not be repeated here.
[0231] The speech recognition error correction method provided in this application updates the dedicated pronunciation association library in the speech recognition system in real time based on the error correction information provided by the user during the speech recognition process. This allows the terminal device to correct the error in real time based on the updated dedicated pronunciation association library when it detects the same error correction information again, thus taking effect promptly. This speeds up the processing efficiency of speech recognition error correction, reduces the frequency of secondary processing of speech recognition results by the user, optimizes the speech recognition system, improves the user experience, and enhances its practicality.
[0232] For example, such as Figure 13 As shown, another speech recognition error correction method provided in this application embodiment includes the following steps S1301-S1305.
[0233] S1301, The terminal device acquires the first voice data.
[0234] The specific implementation method of the terminal device acquiring the first voice data in this embodiment can be found in S601 above, and will not be repeated here.
[0235] S1302, The terminal device recognizes the first speech data based on the speech recognition system and outputs a first recognition result; the speech recognition system includes a dedicated pronunciation association library, which is used to correct the candidate text corresponding to the first speech data in order to output the first recognition result.
[0236] In this embodiment of the application, the dedicated pronunciation association library includes error correction phrases, error correction characters, the incorrect pronunciation of the error correction character, and the correct pronunciation of the error correction character.
[0237] In some embodiments of this application, the terminal device identifies the first speech data based on the speech recognition system and outputs a first recognition result, including: the terminal device identifies the first speech data based on the speech recognition system to obtain N candidate texts; wherein, N is an integer greater than 0; the terminal device performs error correction and reordering on the N candidate texts according to a dedicated pronunciation association library and a preset decoding method to determine the first recognition result.
[0238] In other embodiments of this application, the speech recognition system further includes a general pronunciation association library corresponding to multiple users. This general pronunciation association library and a dedicated pronunciation association library are used to correct errors in the candidate texts corresponding to the first speech data to output a first recognition result. The terminal device, based on the speech recognition system, recognizes the first speech data and outputs the first recognition result, including: the terminal device recognizing the first speech data using the speech recognition system to obtain N candidate texts; where N is an integer greater than 0; the terminal device corrects and reorders the N candidate texts according to the dedicated pronunciation association library, the general pronunciation association library, and a preset decoding method to determine the first recognition result.
[0239] In some other embodiments of this application, if the dedicated pronunciation association library and the general pronunciation association library contain the same error-correcting phrase, the dedicated pronunciation association library has a higher priority than the general pronunciation association library for the same error-correcting phrase.
[0240] Understandably, terminal devices primarily rely on user pronunciation for recognition. A dedicated pronunciation database corresponds to the user using that terminal device, while a general pronunciation database corresponds to multiple users. When both the dedicated and general pronunciation databases contain the same error-correcting phrase, the data from the dedicated pronunciation database is used for recognition and error correction.
[0241] The specific implementation method of the terminal device in this application embodiment for recognizing the first voice data and outputting the first recognition result based on the voice recognition system can be found in S602 above, and will not be repeated here.
[0242] S1303. The terminal device determines the target recognition result based on whether the user performs an error correction operation on the first recognition result.
[0243] Understandably, the initial recognition result is the text data obtained by the speech recognition system in the terminal device after recognizing and correcting the initial speech data. However, if the user's pronunciation is inaccurate, the initial recognition result obtained by the speech recognition system may not be the correct text data corresponding to the user's initial speech data. Therefore, the user needs to manually correct this initial recognition result to obtain the correct recognition result (i.e., the target recognition result).
[0244] S1304. If the user does not perform an error correction operation on the first recognition result, the terminal device determines the target recognition result as the first recognition result.
[0245] In this embodiment of the application, if the user does not perform an error correction operation on the first recognition result, it indicates that the first recognition result obtained by the speech recognition system is correct, and the terminal device determines the target recognition result as the first recognition result.
[0246] S1305. If the user performs an error correction operation on the first recognition result, the terminal device corrects the first recognition result to the second recognition result and determines the target recognition result as the second recognition result; the terminal device updates the dedicated pronunciation association library according to at least one of the first voice data, the first recognition result, and the second recognition result.
[0247] In this embodiment, if the user performs an error correction operation on the first recognition result, it indicates that the first recognition result obtained by the speech recognition system is incorrect. The terminal device then responds to the user's error correction operation by correcting the first recognition result to a second recognition result. The terminal device determines the target recognition result as the second recognition result.
[0248] In this embodiment of the application, the terminal device updates the dedicated pronunciation association library based on at least one of the first voice data, the first recognition result, and the second recognition result, including: the terminal device associations the first voice data, the first recognition result, and the second recognition result to determine error correction information; and the terminal device updates the dedicated pronunciation association library based on the error correction information.
[0249] In this embodiment of the application, the terminal device associates the first voice data, the first recognition result, and the second recognition result to determine error correction information, including: the terminal device determining the error correction phrase and / or the error correction character based on the first recognition result and the second recognition result; the terminal device determining the incorrect pronunciation of the error correction character based on the first voice data; the terminal device obtaining the correct pronunciation of the error correction character; and the terminal device establishing a mapping relationship between the error correction phrase, the error correction character, the incorrect pronunciation of the error correction character, and the correct pronunciation of the error correction character to generate error correction information.
[0250] In this embodiment of the application, after the terminal device corrects the first recognition result to the second recognition result and determines that the target recognition result is the second recognition result, the method further includes: the terminal device acquiring second speech data, the second speech data including a first incorrect pronunciation in the first speech data, the first incorrect pronunciation corresponding to a first corrected word, and a dedicated pronunciation association library updated based on the first speech data including the correspondence between the first incorrect pronunciation and the first corrected word; the terminal device recognizing the second speech data based on the speech recognition system and outputting a third recognition result, the third recognition result being the correct speech recognition result corresponding to the second speech recognition data.
[0251] In this embodiment, the terminal device performs an error correction operation to correct the first recognition result to the second recognition result. The specific implementation of updating the dedicated pronunciation association library can be found in S603-S605 above. The specific implementation of the terminal device acquiring the second voice data, recognizing the second voice data, and outputting the third recognition result can be found in S606-S607 above, and will not be repeated here.
[0252] The above primarily describes the solutions provided by the embodiments of this application from a methodological perspective. It is understood that, in order to achieve the above functions, the electronic device includes hardware structures and / or software modules corresponding to the execution of each function. Based on the units and algorithm steps of the various examples described in the embodiments disclosed in this application, the embodiments of this application can be implemented in hardware or a combination of hardware and computer software. Whether a function is executed in hardware or by a computer driving hardware depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the technical solutions of the embodiments of this application.
[0253] This application provides embodiments for dividing an electronic device into functional modules based on the above method examples. For example, each function can be divided into its own functional modules, or two or more functions can be integrated into a single processing unit. The integrated unit can be implemented in hardware or as a software functional module. It should be noted that the unit division in this application embodiment is illustrative and represents only one logical functional division; in actual implementation, other division methods may be used.
[0254] like Figure 14 The diagram shown is a structural schematic of another terminal device provided in this application embodiment. This terminal device 1400 can be used to implement the methods described in the above method embodiments. For example, the terminal device 1400 may specifically include: a processing module 1401, an acquisition module 1402, and a display module 1403.
[0255] The processing module 1401 is used to execute actions that support the terminal device 1400. Figures 6 to 13 The processing function of any item in it.
[0256] The acquisition module 1402 is used to execute the execution of the terminal device 1400. Figures 6 to 13 This allows you to retrieve any item from the list, such as the currently displayed image.
[0257] The display module 1403 can be used to display images, etc., according to the display driver. And / or, the display module 1403 is also used to support the terminal device 1400 in performing other display operations performed by the terminal device in the embodiments of this application.
[0258] Optional, Figure 14 The terminal device 1400 shown may also include a communication module. Figure 14 (Not shown in the image), this communication module is used to support the terminal device 1400 in performing the steps of communication between the terminal device and other devices in the embodiments of this application.
[0259] Optional, Figure 14 The terminal device 1400 shown may also include a storage module. Figure 14 (not shown in the image), this storage module stores programs or instructions. When the processing module 1401 executes the program or instructions, it causes... Figure 14 The terminal device 1400 shown can execute the methods shown in the above method embodiments.
[0260] Figure 14 The technical effects of the terminal device 1400 shown can be referred to the technical effects of the method described in the above method embodiments, and will not be repeated here. Figure 14 The processing module 1401 involved in the terminal device 1400 shown can be implemented by a processor or processor-related circuit components, and can be a processor or processing module. The communication module can be implemented by a transceiver or transceiver-related circuit components, and can be a transceiver or transceiver module. The display module 1403 can be implemented by display screen-related components.
[0261] This application also provides a chip system, such as... Figure 15 As shown, the chip system 1500 includes at least one processor 1501 and at least one interface circuit 1502. As an example, when the chip system 1500 includes a processor and an interface circuit, the processor can be... Figure 15 The processor 1501 shown in the solid box (or the processor 1501 shown in the dashed box) can be an interface circuit. Figure 15 The interface circuit 1502 is shown in the solid box (or the dashed box). When the chip system 1500 includes two processors and two interface circuits, the two processors include... Figure 15 The processor 1501 shown in the solid box and the processor 1501 shown in the dashed box, these two interface circuits include Figure 15 Interface circuit 1502 is shown in both solid and dashed boxes. No limitations are imposed on this.
[0262] Processor 1501 and interface circuit 1502 can be interconnected via lines. For example, interface circuit 1502 can be used to receive signals. As another example, interface circuit 1502 can be used to send signals to other devices (e.g., processor 1501). Exemplarily, interface circuit 1502 can read instructions stored in memory and send those instructions to processor 1501. When the instructions are executed by processor 1501, the steps in the above embodiments can be performed. Of course, this chip system may also include other discrete devices, and this application embodiment does not specifically limit this.
[0263] Optionally, the chip system may contain one or more processors. These processors can be implemented in hardware or software. When implemented in hardware, the processor can be a logic circuit, an integrated circuit, etc. When implemented in software, the processor can be a general-purpose processor, implemented by reading software code stored in memory.
[0264] Optionally, the chip system may also include a memory ( Figure 15 (As shown in the image), the memory can be one or more, and can be integrated with the processor or disposed separately from the processor; this application does not limit this. For example, the memory can be a non-transient processor, such as read-only memory (ROM), which can be integrated with the processor on the same chip or disposed separately on different chips. This application does not specifically limit the type of memory or the arrangement of the memory and the processor.
[0265] For example, the chip system may be a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a system on chip (SoC), a central processor unit (CPU), a network processor (NP), a digital signal processor (DSP), a micro controller unit (MCU), a programmable logic device (PLD), or other integrated chips.
[0266] It should be understood that each step in the above method embodiments can be completed by integrated logic circuits in the processor hardware or by instructions in software form. The method steps disclosed in the embodiments of this application can be directly manifested as being executed by a hardware processor, or being executed by a combination of hardware and software modules in the processor.
[0267] This application also provides a computer storage medium storing computer instructions, which, when executed on a terminal device, cause the terminal device to perform the methods described in the above-described method embodiments.
[0268] Computer-readable storage media include, but are not limited to, any of the following: USB flash drive, portable hard drive, read-only memory (ROM), random access memory (RAM), magnetic disk or optical disk, and other media capable of storing program code.
[0269] This application provides a computer program product, which includes a computer program or instructions that, when run on a computer, cause the computer to perform the methods described in the above-described method embodiments.
[0270] In addition, this application also provides an apparatus, which may specifically be a chip, component or module. The apparatus may include a connected processor and a memory. The memory is used to store computer execution instructions. When the apparatus is running, the processor can execute the computer execution instructions stored in the memory to cause the apparatus to perform the methods in the above-described method embodiments.
[0271] In this embodiment, the terminal device, computer storage medium, computer program product or chip are all used to execute the corresponding methods provided above. Therefore, the beneficial effects they can achieve can be referred to the beneficial effects in the corresponding methods provided above, and will not be repeated here.
[0272] The steps of the methods or algorithms described in conjunction with the embodiments of this application can be implemented in hardware or by a processor executing software instructions. The software instructions can consist of corresponding software modules, which can be stored in random access memory (RAM), flash memory, read-only memory, erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), registers, hard disks, portable hard disks, compact disc read-only memory (CD-ROM), or any other form of storage medium well known in the art. An exemplary storage medium is coupled to a processor, enabling the processor to read information from and write information to the storage medium. Of course, the storage medium can also be a component of the processor. The processor and the storage medium can reside in an application-specific integrated circuit (ASIC).
[0273] Through the above description of the embodiments, those skilled in the art will clearly understand that, for the sake of convenience and brevity, the division of the above functional modules is only used as an example. In practical applications, the above functions can be assigned to different functional modules as needed; that is, the internal structure of the device can be divided into different functional modules to complete all or part of the functions described above. The specific working process of the system, device, and unit described above can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.
[0274] In the several embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. The embodiments can be combined with or referenced to each other without conflict. The apparatus embodiments described above are merely illustrative; for example, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another device, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.
[0275] The units described as separate components may or may not be physically separate. A component shown as a unit can be one or more physical units; that is, it can be located in one place or distributed in multiple different locations. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0276] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0277] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, in essence, or the parts that contribute to the prior art, or all or part of the technical solutions, can be embodied in the form of a software product. This software product is stored in a storage medium and includes several instructions to cause a device (which may be a microcontroller, chip, etc.) or processor to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0278] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A speech recognition error correction method, characterized in that, The method includes: The terminal device acquires the first voice data; The terminal device recognizes the first speech data based on the speech recognition system and outputs a first recognition result; the speech recognition system includes a dedicated pronunciation association library and a general pronunciation association library corresponding to multiple users, the dedicated pronunciation association library and the general pronunciation association library are used to correct the candidate text corresponding to the first speech data in order to output the first recognition result; if the dedicated pronunciation association library and the general pronunciation association library contain the same correction word group, then for the same correction word group, the priority of the dedicated pronunciation association library is higher than that of the general pronunciation association library; The terminal device outputs the target recognition result based on whether the user performs an error correction operation on the first recognition result; When the user performs an error correction operation on the first recognition result, the terminal device corrects the first recognition result to a second recognition result, determines the second recognition result as the target recognition result, and outputs the target recognition result; and the terminal device determines the mapping relationship between the first incorrect pronunciation in the first speech data and the first corrected word in the second recognition result based on the first speech data, the first recognition result, and the second recognition result, and updates the dedicated pronunciation association library in real time based on the mapping relationship; After updating the dedicated pronunciation database, the terminal device acquires second voice data, which includes the first incorrect pronunciation. The terminal device recognizes the second voice data based on the updated voice recognition system and outputs a third recognition result, which is the correct voice recognition result corresponding to the second voice data.
2. The method according to claim 1, characterized in that, The dedicated pronunciation database includes error-correcting phrases, error-correcting characters, incorrect pronunciations of the error-correcting characters, and correct pronunciations of the error-correcting characters.
3. The method according to claim 1 or 2, characterized in that, The terminal device determines the mapping relationship between the first incorrect pronunciation in the first speech data and the first corrected word in the second recognition result based on the first speech data, the first recognition result, and the second recognition result, and updates the dedicated pronunciation association library in real time based on the mapping relationship, including: The terminal device associates the first voice data, the first recognition result, and the second recognition result to determine error correction information; The terminal device updates the dedicated pronunciation database in real time based on the error correction information.
4. The method according to claim 3, characterized in that, The terminal device associates the first voice data, the first recognition result, and the second recognition result to determine error correction information, including: The terminal device determines the error-correcting phrase and / or the error-correcting single character based on the first recognition result and the second recognition result; The terminal device determines the incorrect pronunciation of the word to be corrected based on the first voice data. The terminal device obtains the correct pronunciation of the word being corrected; The terminal device establishes a mapping relationship between the correction phrase, the correction character, the incorrect pronunciation of the correction character, and the correct pronunciation of the correction character, and generates the correction information.
5. The method according to claim 1 or 2, characterized in that, The terminal device, based on the speech recognition system, recognizes the first speech data and outputs a first recognition result, including: The terminal device identifies the first voice data based on the voice recognition system to obtain N candidate texts; where N is an integer greater than 0. The terminal device performs error correction and reordering on the N candidate texts based on the dedicated pronunciation association library and the preset decoding method to determine the first recognition result.
6. The method according to claim 1 or 2, characterized in that, The method further includes: If the user does not perform any error correction on the first recognition result, the terminal device determines the first recognition result as the target recognition result and outputs the target recognition result.
7. The method according to claim 1, characterized in that, The terminal device, based on the speech recognition system, recognizes the first speech data and outputs a first recognition result, including: The terminal device identifies the first voice data based on the voice recognition system to obtain N candidate texts; where N is an integer greater than 0. The terminal device performs error correction and reordering on the N candidate texts based on the dedicated pronunciation association library, the general pronunciation association library, and the preset decoding method to determine the first recognition result.
8. A terminal device, characterized in that, include: One or more processors; Memory; The memory stores one or more computer programs, the one or more computer programs including instructions that, when executed by the terminal device, cause the terminal device to perform the method as described in any one of claims 1-7.
9. A chip system, characterized in that, It includes at least one processor and at least one interface circuit, the at least one interface circuit being used to perform transceiver functions and send instructions to the at least one processor, the at least one processor executing the instructions, and the at least one processor performing the method as described in any one of claims 1-7.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a computer program or instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1-7.
11. A computer program product, characterized in that, The computer program product includes: a computer program or instructions that, when executed on a computer, cause the computer to perform the method as described in any one of claims 1-7.