WO2022186435A1 - 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법 - Google Patents
사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법 Download PDFInfo
- Publication number
- WO2022186435A1 WO2022186435A1 PCT/KR2021/012849 KR2021012849W WO2022186435A1 WO 2022186435 A1 WO2022186435 A1 WO 2022186435A1 KR 2021012849 W KR2021012849 W KR 2021012849W WO 2022186435 A1 WO2022186435 A1 WO 2022186435A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- text
- voice signal
- intent
- correction candidate
- electronic device
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000012937 correction Methods 0.000 claims abstract description 378
- 238000012790 confirmation Methods 0.000 claims description 31
- 238000013473 artificial intelligence Methods 0.000 claims description 22
- 238000004422 calculation algorithm Methods 0.000 claims description 9
- 230000014509 gene expression Effects 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 35
- 230000004044 response Effects 0.000 description 18
- 238000003058 natural language processing Methods 0.000 description 15
- 238000004891 communication Methods 0.000 description 10
- 238000004590 computer program Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 10
- 238000002372 labelling Methods 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 7
- 239000000470 constituent Substances 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011017 operating method Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000002864 sequence alignment Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/48—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
- G10L25/51—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for comparison or discrimination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/04—Segmentation; Word boundary detection
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/10—Speech classification or search using distance or distortion measures between unknown speech and reference templates
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
Definitions
- the present disclosure relates to a method of correcting a user's voice input.
- a user can receive various services using a device.
- voice recognition technology develops, a user can receive a natural language response service by inputting a voice (eg, utterance) into a device and receiving a response message according to the voice input.
- the device may erroneously recognize the user's initial utterance, so that the result of recognizing the user's utterance needs to be partially corrected. Accordingly, there is a need for a technique capable of responding to the misrecognized user's initial utterance without the user re-entering the entire dialog sentence that is erroneously recognized.
- an electronic device providing a natural language response service, it is possible to receive an initial utterance of a user and identify the user's correction intention from a subsequent utterance received to correct the initial utterance after the initial utterance is received.
- an electronic device and an operating method thereof.
- Various embodiments are capable of identifying correction candidates in text converted from an initially uttered speech signal, comparing texts converted from a subsequently uttered speech signal, and correcting the user's initial utterance based on the comparison result.
- An electronic device and an operating method thereof may be provided.
- a method for an electronic device to correct a voice input includes: receiving a first voice signal; converting the first voice signal into text to obtain a first text; inputting the first text into a natural language understanding model to obtain an intent of the first voice signal and a confidence score of the intent; identifying a plurality of correction candidate semantic elements that may be correction targets in the first text by inputting the first text, the intent, and confidence scores of the intent into an artificial intelligence model; receiving a second voice signal; converting the second voice signal into text to obtain a second text; identifying whether the second speech signal is a speech signal for correcting the first text by analyzing the second text; Based on identifying that the second speech signal is a speech signal for correcting the first text, a plurality of correction candidate semantic elements in the first text and a semantic element in the second text are determined based on the confidence score comparing; and correcting at least one of the plurality of correction candidate semantic elements in the first text based on a result of comparing the pluralit
- the method further comprises outputting a confirmation request for performing a task corresponding to the intent of the first voice signal, wherein the second voice signal is received after the confirmation request is output. It could be a way
- the step of identifying whether the second speech signal is a speech signal for correcting the first text may include inputting the second text into the natural language understanding model to indicate an intention to correct the first text. and identifying the semantic element representing the intent of the speech signal and the word to be corrected.
- the step of identifying a plurality of correction candidate semantic elements that can be corrected may include: identifying a first correction candidate semantic element and a second correction candidate semantic element from the first text, wherein the first correction candidate semantic element is the It may indicate a word related to the intent of the first voice signal, and the second correction candidate semantic element may indicate the intent of the first voice signal.
- the method includes: comparing a confidence score of the intent of the first speech signal with a first threshold; and determining a correction priority of the plurality of correction candidate semantic elements based on a result of comparing the confidence score of the intent of the first voice signal and the first threshold value.
- the first threshold value is determined based on a different reliability score of a voice signal input to the electronic device before the first voice signal corresponding to the first text is received, and the first voice signal is received.
- the intent of the voice signal input to the electronic device before it is performed may be an intent of the same domain as the intent of the first voice signal.
- the determining of the priority of correction of the plurality of correction candidate semantic elements may include: determining whether the first correction candidate semantic element is selected from the second It is determined that a correction priority is higher than that of the correction candidate semantic element, and the second correction candidate semantic element is the first correction candidate semantic element based on whether a confidence score of the intent of the first speech signal is less than the first threshold value. It may be decided to have a higher priority of correction than the element.
- Comparing the plurality of correction candidate semantic elements in the first text with the second text may include: based on the correction priority, the plurality of correction candidate semantic elements in the first text and the plurality of correction candidate semantic elements in the second text. and calculating a difference value representing a difference between the semantic elements.
- the step of correcting at least one of the plurality of correction candidate semantic elements in the first text may include: based on a result of comparing the difference value with a second threshold value, from among the plurality of correction candidate semantic elements in the first text. , correcting the semantic element.
- Calculating a difference value indicating a difference between a plurality of correction candidate semantic elements in the first text and a semantic element to be corrected by the user in the second text may include: a difference between characters, a difference between words, and a difference between pronunciation expressions. calculating, based on at least one, a difference value between a plurality of correction candidate semantic elements in the first text and a semantic element to be corrected by a user in the second text by applying an edit distance algorithm; can do.
- an electronic device for correcting a voice input may include: an input interface for receiving a voice signal; a storage unit for storing a program including one or more instructions; and a processor executing one or more instructions of the program stored in the storage unit, wherein the processor receives a first voice signal through the input interface, converts the first voice signal into text, and first text , and input the first text into a natural language understanding model to obtain the intent of the first speech signal and a confidence score of the intent, and a confidence score of the first text, the intent, and the intent by inputting into the AI model, identifying a plurality of correction candidate semantic elements that may be correction targets in the first text, receiving a second voice signal through the input interface, and converting the second voice signal into text converting to obtain a second text, and analyzing the second text to identify whether the second speech signal is a speech signal for correcting the first text, the second speech signal correcting the first text A plurality of correction candidate semantic elements in the first text and
- the electronic device may further include an output interface.
- the processor may output, through the output interface, a confirmation request for performing a task corresponding to the intent of the first voice signal, and the second voice signal may be received after the confirmation request is output. have.
- the processor may input the second text into the natural language understanding model to identify an intent of the second speech signal indicating an intention to correct the first text and the semantic element indicating a word to be corrected.
- the processor identifies a first correction candidate semantic element and a second correction candidate semantic element from the first text, wherein the first correction candidate semantic element represents a word related to an intent of the first speech signal, and the second correction candidate semantic element
- the 2 correction candidate semantic elements may indicate the intent of the first voice signal.
- the processor compares a confidence score of the intent of the first voice signal with a first threshold value, and based on a result of comparing the confidence score of the intent of the first voice signal and the first threshold value, the plurality of It is possible to determine the priority of correction of the correction candidate semantic elements of .
- the first threshold value is determined based on a different reliability score of a voice signal input to the electronic device before the first voice signal corresponding to the first text is received, and the first voice signal is received.
- the intent of the voice signal input to the electronic device before it is performed may be an intent of the same domain as the intent of the first voice signal.
- the processor determines, based on whether a confidence score of the intent of the first speech signal is equal to or greater than the first threshold, the first correction candidate semantic element has a higher correction priority than the second correction candidate semantic element; , based on whether the confidence score of the intent of the first speech signal is less than the first threshold value, it is possible to determine that the second correction candidate semantic element has a higher correction priority than the first correction candidate semantic element.
- the processor may calculate a difference value indicating a difference between a plurality of correction candidate semantic elements in the first text and a semantic element to be corrected in the second text, based on the correction priority.
- the processor may correct a semantic element among a plurality of correction candidate semantic elements in the first text based on a result of comparing the difference value with a second threshold value.
- a computer-readable recording medium in which an electronic device records a program for executing a method of correcting a user's voice input on a computer.
- the method includes: receiving a first voice signal; converting the first voice signal into text to obtain a first text; inputting the first text into a natural language understanding model to obtain an intent of the first voice signal and a confidence score of the intent; identifying a plurality of correction candidate semantic elements that may be correction targets in the first text by inputting the first text, the intent, and confidence scores of the intent into an artificial intelligence model; receiving a second voice signal; converting the second voice signal into text to obtain a second text; identifying whether the second speech signal is a speech signal for correcting the first text by analyzing the second text; Based on identifying that the second speech signal is a speech signal for correcting the first text, a plurality of correction candidate semantic elements in the first text and a semantic element in the second text are determined based on the confidence score comparing; and correcting at least one
- FIG. 1 is a diagram for describing a method of correcting, by an electronic device, an input voice signal based on a user input, according to an exemplary embodiment.
- FIG. 2 is a block diagram illustrating a configuration of an electronic device according to an exemplary embodiment.
- FIG. 3 is a diagram for describing operations of a plurality of modules included in an electronic device according to an exemplary embodiment.
- FIG. 4 is a diagram for further explaining FIG. 3 , and is a diagram for explaining an example in which an electronic device corrects a voice signal input from a user according to an exemplary embodiment.
- FIG. 5 is a diagram for describing a method for an electronic device to identify a correction intention from a user's utterance, according to an exemplary embodiment.
- FIG. 6 is a diagram for describing a method of identifying, by an electronic device, semantic elements of candidates for correction in order to correct text obtained from a user's utterance, and determining a correction priority, according to an exemplary embodiment.
- FIG. 7 is a diagram for describing data used by a word-of-interest identification model for identifying a correction candidate semantic element of an electronic device according to an exemplary embodiment.
- FIG. 8 is a diagram for explaining a method of learning, by an electronic device, an artificial intelligence model for identifying a correction candidate semantic element, according to an exemplary embodiment.
- FIG. 9 is a diagram for explaining a method of identifying, by an electronic device, a correction candidate semantic element using an artificial intelligence model, and determining an order in which the identified correction candidate semantic elements are corrected, according to an exemplary embodiment.
- FIG. 10 is a diagram for explaining a method of correcting a user's utterance by an electronic device according to the method described with reference to FIGS. 8 and 9 , according to an exemplary embodiment.
- 11 is a diagram for describing another method for an electronic device to learn an artificial intelligence model for identifying a correction candidate semantic element, according to an embodiment.
- FIG. 12 is a diagram for describing another method in which an electronic device identifies a correction candidate semantic element using an artificial intelligence model and determines an order in which the identified correction candidate semantic elements are corrected, according to an exemplary embodiment.
- FIG. 13 is a diagram for describing a method of comparing, by an electronic device, a correction candidate semantic element in a first text and a semantic element in a second text in order to correct a user's utterance, according to an embodiment.
- FIG. 14 is a diagram for further explaining FIG. 13 , and is a diagram for explaining an example in which the electronic device compares semantic elements according to an embodiment.
- 15 is a flowchart illustrating a method of correcting, by an electronic device, a misrecognized input voice signal based on a user input, according to an exemplary embodiment.
- the expression “at least one of a, b, or c” refers to a only, b only, c only, both a and b, both a and c, both b and c, or a, b, c represents all Throughout this disclosure, the expression “at least one of a, b, or c” refers to a only, b only, c only, both a and b, both a and c, both b and c, or a, b, c represents all
- FIG. 1 is a diagram for describing a method of correcting, by an electronic device, an input voice signal based on a user input, according to an exemplary embodiment.
- an electronic device 2000 may be an electronic device that provides a natural language response service.
- the electronic device 2000 may receive a voice signal representing a command for a task that the user 100 wants to perform from the user 100 .
- the electronic device 2000 may perform automatic speech recognition (ASR) on the voice signal received from the user 100 to convert the voice signal into text.
- ASR automatic speech recognition
- the electronic device 2000 applies a text obtained from a voice signal to a Natural Language Understanding (NLU) model, and an intent indicating the utterance intention of the received voice signal and an object indicating components of a sentence ( entity) can be identified.
- NLU Natural Language Understanding
- the electronic device 2000 may output a confirmation request for performing a task corresponding to the identified intent to the user 100 .
- the electronic device 2000 generates speech data related to a task corresponding to the intent by using a natural language generation (NLG) model in order to output a response corresponding to the user 100's speech intention. and editing, it is possible to generate a natural language for conversation with the user 100 .
- NLG natural language generation
- noise or the like is added to the first voice signal of the user 100 or the result of automatic voice recognition is inaccurate, resulting in a conversation uttered by the user.
- the result may be different from the sentence.
- the electronic device 2000 receives a second voice signal that the user 100 utters in order to correct the recognition result of the misrecognized first voice signal, and is misrecognized based on the received second voice signal.
- the recognition result of the first voice signal may be corrected.
- the electronic device 2000 may identify whether the received second voice signal is a voice signal for correcting the recognition result of the first voice signal.
- the electronic device 2000 may identify a word indicating a user's correction intention and a word that the user intends to correct in the text converted from the second voice signal.
- the electronic device 2000 uses a word of interest (WOI) identification model to Correction candidate words to be corrected in the dialogue sentence of the first voice signal may be identified.
- WI word of interest
- the interest word identification model may label and output the correction candidate semantic elements in order to determine a comparison order of words that may be corrected in the dialogue sentence of the first voice signal.
- the correction candidate semantic elements may be semantic elements representing words that can be corrected in the first text.
- the interest word identification model may be an artificial intelligence model generated through learning.
- the electronic device 2000 may correct the first voice signal by comparing only the correction candidate words output from the interest word identification model with the word to be corrected by the user 100 .
- the conversation sentence of the first voice signal is “Please call Mark”, but the recognition result of the first voice signal is “Please call Mike.”
- the electronic device 2000 identifies the correction candidate word 'Mike' in the recognition result of the first voice by using the word of interest identification model, and the user By comparing with the word 'Mark' to be corrected by 100, "Please call Mark", which is a result of correcting the recognition result of the first voice signal, may be obtained.
- the electronic device 2000 In response to the corrected dialogue sentence “Please call Mark.”, the electronic device 2000 generates the dialogue sentence “Ok, I'll call Mark.” using a natural language generation (NLG) model. By outputting , a result of correcting the utterance of the user 100 may be provided to the user 100 .
- NLG natural language generation
- FIG. 2 is a block diagram illustrating a configuration of an electronic device according to an exemplary embodiment.
- an electronic device 2000 may include an input interface 2100 , an output interface 2200 , a communication interface 2300 , a processor 2400 , and a storage unit 2500 . .
- the electronic device 2000 may be an electronic device that provides a natural language response service.
- the electronic device 2000 may be, for example, a smart phone, a tablet PC, a PC, a laptop, a smart TV, a smart refrigerator, or an artificial intelligence speaker on which a natural language response service may be mounted.
- the present invention is not limited thereto, and the electronic device 2000 according to an embodiment may be a server that provides a natural language response service.
- the input interface 2100 may mean a means for a user to input data for controlling the electronic device 2000 .
- the input interface 2100 may include a microphone, a key pad, a dome switch, and a touch pad (eg, a contact-type capacitive method, a pressure-type resistive film method, an infrared sensing method, a surface There may be an ultrasonic conduction method, an integral tension measurement method, a piezo effect method, etc.), a jog wheel, a jog switch, and the like, but is not limited thereto.
- the input interface 2100 may receive a user's voice command of the electronic device 2000 .
- the output interface 2200 may output an audio signal, a video signal, or a vibration signal, and the output interface 2200 may include at least one of a display unit, a sound output interface, and a vibration motor. .
- the communication interface 2300 may perform data communication with other peripheral devices necessary to provide a natural language response service or a server providing a natural language response service under the control of the processor 2400 .
- Communication interface 2300 is, for example, wired LAN, wireless LAN (Wireless LAN), Wi-Fi (Wi-Fi), Bluetooth (Bluetooth), Zigbee (zigbee), WFD (Wi-Fi Direct), infrared communication (IrDA, Infrared Data Association), BLE (Bluetooth Low Energy), NFC (Near Field Communication), WiBro (Wireless Broadband Internet, Wibro), WiMAX (World Interoperability for Microwave Access, WiMAX), SWAP (Shared Wireless Access Protocol), WiGig Data communication may be performed with other peripheral devices necessary to provide a natural language response service or a server providing a natural language response service using at least one of a data communication method including (Wireless Gigabit Allicance, WiGig) and RF communication. .
- WiGig Wireless Gigabit Allicance
- the communication interface 2300 may receive the user's first and second voice signals from other peripheral devices or servers.
- the processor 2400 may execute one or more instructions of a program stored in the storage 2500 .
- the processor 2400 may be configured as a hardware component that performs arithmetic, logic, input/output operations and signal processing.
- the processor 2400 is, for example, a central processing unit (Central Processing Unit), a microprocessor (microprocessor), a graphic processor (Graphic Processing Unit), ASICs (Application Specific Integrated Circuits), DSPs (Digital Signal Processors), DSPDs (Digital Signal Processing Devices), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), Application Processors (APs), Neural Processing Units, or artificial intelligence-only processors designed with a hardware structure specialized for processing artificial intelligence models. It may consist of at least one, but is not limited thereto.
- the processor 2400 may perform Automatic Speech Recognition (ASR) on the received user's first and second voice signals to convert the voice signal into text.
- ASR Automatic Speech Recognition
- the processor 2400 may analyze the text converted from the voice signal using a Natural Language Understanding Model (NLU Model) 2522 and provide a natural language response service to the user based on the analysis result. .
- NLU Model Natural Language Understanding Model
- the storage unit 2500 may include, for example, a flash memory type, a hard disk type, a multimedia card micro type, or a card type memory (eg, SD or XD). non-volatile memory including at least one of memory, etc.), ROM (Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), PROM (Programmable Read-Only Memory), magnetic memory, magnetic disk, and optical disk and volatile memory such as random access memory (RAM) or static random access memory (SRAM).
- ROM Read-Only Memory
- EEPROM Electrical Erasable Programmable Read-Only Memory
- PROM Programmable Read-Only Memory
- magnetic memory magnetic disk
- optical disk and volatile memory such as random access memory (RAM) or static random access memory (SRAM).
- the storage unit 2500 may store instructions, data structures, and program codes readable by the processor 2400 .
- operations performed by the processor 2400 may be implemented by executing instructions or codes of a program stored in the storage 2500 .
- data and program command codes corresponding to the voice recognition module 2510 , the natural language processing module 2520 , and the correction module 2530 may be stored in the storage unit 2500 .
- the processor 2400 may perform ASR on the voice signal received from the user by using the ASR model 2512 included in the voice recognition module 2510, and convert the received voice signal into text.
- the ASR model 2512 may include an acoustic model (AM) or a language model (LM), but is not limited thereto.
- the processor 2400 uses the natural language understanding model 2522 and the natural language generation model 2524 included in the natural language processing module 2520 to identify the intent of the conversation sentence spoken by the user, and A response sentence corresponding to the intention can be generated.
- the processor 2400 may interpret the text obtained through the ASR model 2512 using the natural language understanding model 2522 to identify an intent indicating the intent of the text and an entity indicating components of a dialogue sentence.
- the processor 2400 may generate a natural language representing a message for requesting confirmation whether to perform an operation of the electronic device according to the user's voice signal by using the natural language generation model 2524 .
- the processor 2400 may use the correction module 2530 to correct the misrecognized voice recognition result based on the user response.
- the correction module 2530 may include a correction intention identification module 2532 , a correction candidate determination module 2534 , and a text comparison module 2536 .
- the processor 2400 uses the correction intention identification module 2532 to determine whether the second voice signal input after the user's first voice signal is input is a voice signal for correcting the recognition result of the first voice signal. can be identified.
- the recognition result of the first voice signal may be a first text obtained by performing ASR on the first voice signal.
- the correction intention identification module 2532 may analyze the second text obtained from the second voice signal to identify whether the second voice signal is a voice signal for correcting the recognition result of the first voice signal.
- the correction intention identification module 2532 may analyze the second text using a rule-based analysis method.
- the correction intention identification module 2352 may extract a word indicating an intention to correct the recognition result of the first voice signal from the second text.
- the correction intention identification module 2352 may identify whether the second voice signal is a voice signal for correcting the recognition result of the first voice signal based on whether a word indicating a correction intention is included in the second text.
- the correction intent identification module 2532 may analyze the second text using the natural language understanding model.
- the correction intent identification module 2532 may parse the second text and identify intents representing the intent of the second text and entities representing constituent elements of the second text sentence.
- the correction intention identification module 2532 is a voice signal for correcting the recognition result of the first voice signal in the second voice signal based on whether the identified intent of the second voice signal is an intent included in the 'correction' domain. It can be identified whether or not In this case, when the natural language understanding model analyzes text to identify an intent, the domain may mean a category of intents preset in the natural language understanding model to classify the intent.
- the processor 2400 may use the correction candidate determining module 2534 to identify correction candidate semantic elements that can be corrected among semantic elements in the first text converted from the first voice signal.
- the semantic element may be a constituent element of a unit having a meaning among constituent elements constituting the sentence.
- the interest word identification model 2535 may be an artificial intelligence model generated through learning.
- the word of interest identification model may receive intents and entities identified from the natural language understanding model 2522 as inputs, and may output semantic elements.
- the correction candidate determining module 2534 uses the word of interest identification model 2535 to be a correction target in the first text.
- Candidate semantic elements may be identified.
- the correction candidate determining module 2534 may determine the correction priority of the correction candidate semantic elements. In an embodiment, when the correction candidate semantic elements are compared with the semantic elements in the second text by the text comparison module 2536, the semantic elements may be sequentially compared based on the correction priority.
- the processor 2400 may compare the correction candidate semantic elements in the first text with the semantic elements in the second text that the user wants to correct by using the text comparison module 2536 .
- the text comparison module 2536 may compare the correction candidate semantic elements in the first text with the semantic elements in the second text that the user wants to correct.
- the text comparison module 2536 may compare the plurality of correction candidate semantic elements with the semantic elements in the second text based on the correction priority.
- the text comparison module 2536 calculates a difference value indicating a difference between the correction candidate semantic element in the first text and the semantic element in the second text, and corrects at least one semantic element in the first text based on the calculated difference value can do.
- the text comparison module 2536 is configured to determine the meaning in the second text when the calculated difference value is less than a predetermined threshold, so that the correction candidate semantic element in the first text is similar to the semantic element in the second text that the user wants to correct.
- the correction candidate semantic element identified as being similar to the element may be determined as the correction target semantic element.
- the text comparison module 2536 may correct the first text by replacing a semantic element to be corrected with a semantic element in the second text.
- FIG. 3 is a diagram for describing operations of a plurality of modules included in an electronic device according to an exemplary embodiment.
- the electronic device 2000 may include at least a voice recognition module 2510 , a natural language processing module 2520 , and a correction module 2530 .
- the electronic device 2000 may perform Automatic Speech Recognition (ASR) on the first voice signal uttered by the user using the voice recognition module 2510 .
- ASR Automatic Speech Recognition
- the electronic device 2000 may obtain the first text in which the user's first voice signal is transcribed into text by performing the ASR.
- the electronic device 2000 may analyze the first text using the natural language processing module 2520 .
- the text input to the natural language processing module 2520 may be the first text output from the step S310 and obtained from the first voice signal.
- the text input to the natural language processing module 2520 may be the corrected text output in step S380 of the first text.
- the first text output from step S310 will be described as an example.
- the electronic device 2000 parses the first text by using the natural language understanding model 2522, and constructs an intent indicating the intention of the first voice signal and a dialogue sentence.
- the entity representing the elements can be identified.
- the electronic device 2000 may acquire a confidence score of the identified intent together.
- the confidence score of the intent may mean a score indicating how accurately the natural language understanding model 2522 predicted the intent representing the user's intention from the text converted from the user's voice signal.
- the electronic device 2000 may output a confirmation request message for receiving confirmation from the user whether to perform an operation according to the user's first voice signal based on the first text analysis result .
- the electronic device 2000 may generate and output a confirmation request message by generating and editing speech data related to the intent and entities of the first voice signal using a natural language generation (NLG) model.
- NOG natural language generation
- the confirmation request message may be output through an output interface of the electronic device 2000 .
- the electronic device 2000 may output the confirmation request message in the form of a video signal on the display or may output the confirmation request message in the form of an audio signal through a speaker.
- the electronic device 2000 may perform Automatic Speech Recognition (ASR) on the second voice signal uttered by the user.
- ASR Automatic Speech Recognition
- the electronic device 2000 may obtain a second text in which the user's second voice signal is transcribed into text.
- the second voice signal may be a voice signal input to the electronic device 2000 after the confirmation request message is output from the electronic device 2000 .
- the second voice signal may include a user's voice signal for correcting the recognition result of the first voice signal or a user's voice signal confirming that the recognition result of the first voice signal is appropriate.
- the user of the electronic device 2000 determines that the confirmation request message output from the electronic device 2000 is different from the user's intention, the user of the electronic device 2000 transmits the second voice signal for correcting the recognition result of the first voice signal to the electronic device 2000 .
- the second voice signal for correcting the recognition result of the first voice signal to the electronic device 2000 .
- the user of the electronic device 2000 determines that the confirmation request message output from the electronic device 2000 conforms to the user's intention, the user of the electronic device 2000 transmits a second voice signal for confirming that the recognition result of the first voice signal is appropriate to the electronic device ( 2000) can be entered.
- step S350 the electronic device 2000 uses the correction intention identification module 2532 included in the correction module 2530 to receive the second voice uttered by the user after the first voice signal is input.
- the intent of the signal can be identified.
- the electronic device 2000 may identify whether the second voice signal is a voice signal for correcting the first text, which is a voice recognition result of the first voice signal.
- the electronic device 2000 may analyze the second text using a rule-based analysis method.
- the electronic device 2000 may identify whether a word intended to correct the first text (eg, 'no') is included in the second text.
- a word for correcting the first text is included in the second text
- the electronic device 2000 may identify the second voice signal as a voice signal for correcting the first text.
- the electronic device 2000 may identify a semantic element in the second text that the user wants to correct.
- the electronic device 2000 may analyze the second text by using the natural language understanding model 2522 .
- the electronic device 2000 may parse the second text, and identify the intent indicating the utterance intention of the second voice signal and entities indicating the constituent elements of the sentence.
- the electronic device 2000 may identify whether the second voice signal is a voice signal for correcting the first text based on the identified domain of the intent of the second voice signal.
- the domain of the intent may mean a category of an intent preset to classify the intent.
- the electronic device 2000 determines that the second voice signal is a voice signal for correcting the first text. can be identified.
- the electronic device 2000 may identify a semantic element in the second text that the user wants to correct.
- Step S355 when the electronic device 2000 identifies that the second voice signal is not a voice signal for correcting the first text (eg, confirms that the first voice signal recognition result is suitable), Step S355 may be performed.
- the electronic device 2000 may perform step S360.
- the electronic device 2000 when the user's approval intention for the first voice signal is identified, the electronic device 2000 according to an embodiment may perform a task corresponding to the intent of the first voice signal.
- the electronic device 2000 may identify the correction candidate semantic elements in the first text using the correction candidate determination module 2534 included in the correction module 2530 .
- the electronic device 2000 may identify a plurality of correction candidate semantic elements in the first text using the word of interest identification model 2535 .
- the interest word identification model 2535 may be an artificial intelligence model obtained through learning.
- each correction candidate semantic element may be labeled.
- the electronic device 2000 may determine the order in which the correction candidate semantic elements that may be the correction target in the first text are compared with the semantic elements of the second text based on the labels of the correction candidate semantic elements.
- a plurality of correction candidate semantic elements output from the word of interest identification model 2535 will be additionally described in the description of FIG. 7 .
- the electronic device 2000 determines the priority of correction of the plurality of correction candidate semantic elements identified in operation S350 using the correction candidate determination module 2534 included in the correction module 2530 . can decide The electronic device 2000 sets the priority of correction of the plurality of correction candidate semantic elements based on the confidence score of the intent of the first text and the plurality of correction candidate semantic elements that are labeled and output from the word of interest identification model 2535 . can be decided For example, when the reliability score of the intent of the first voice signal is equal to or greater than a predetermined threshold, the electronic device 2000 may compare the first semantic elements labeled with the same label with the semantic elements in the second text. When the confidence score of the intent of the first voice signal is less than a predetermined threshold, the electronic device 2000 may compare the second semantic element labeled with a different label from the first semantic element with the semantic element in the second text.
- the electronic device 2000 calculates and calculates a score indicating the degree of similarity between the first text and the second text by using the text comparison module 2536 included in the correction module 2530 .
- the first text may be corrected based on the obtained similarity score.
- the electronic device 2000 may sequentially compare semantic elements in the second text that the user wants to correct with the correction candidate semantic elements determined by the correction candidate determining module 2534, respectively, based on the determined correction priority.
- the electronic device 2000 may correct the semantic element in the first text based on a result of comparing the correction candidate semantic element with the semantic element in the second text.
- the electronic device 2000 may determine that the correction candidate semantic element and the semantic element in the second text are similar, based on a similarity score between the correction candidate semantic element and the semantic element in the second text. In this case, the electronic device 2000 may replace the correction candidate semantic element determined to be similar to the semantic element in the second text with the semantic element in the second text.
- the electronic device 2000 may perform operation S320 again to analyze the corrected first text.
- FIG. 4 is a diagram for further explaining FIG. 3 , and is a diagram for explaining an example in which an electronic device corrects a voice signal input from a user according to an exemplary embodiment.
- the electronic device 2000 may receive a first voice signal 402 uttered by a user.
- the dialogue sentence of the first voice signal may be “Send a text to Mark wake up.”
- step S410 the electronic device 2000 according to an embodiment performs automatic speech recognition (ASR) on the received first voice signal 402 , and first text, which is a sentence in which the first voice signal 402 is transcribed. You can get "Send a text to Mike wake up".
- the dialogue sentence of the first text may be different from the dialogue sentence uttered by the user because there is noise in the first voice signal or the result of automatic voice recognition is inaccurate.
- the electronic device 2000 recognizes and outputs the first voice signal 402 .
- One dialogue sentence may be "Send wake up to Mike?" That is, the user utters a voice to send a message to Mark, but the result recognized by the electronic device 2000 may be Mike.
- Step S410 may correspond to step S310 of FIG. 3 .
- step S420 the electronic device 2000 according to an embodiment applies the obtained first text to the natural language understanding model 2522 , and the intent of the first voice signal, the reliability score of the intent, and components of the dialogue sentence Entities that represent them can be identified.
- the electronic device 2000 may acquire the 'message' that is the intent of the first voice signal 402, the confidence score '0.95' of the intent, and the entities 'Mike' and 'Wake up'.
- Step S420 may correspond to step S320 of FIG. 3 .
- the electronic device 2000 may output a confirmation request for confirming the user's command identified as a result of the first text analysis by using the natural language understanding model 2524 .
- the electronic device 2000 may output a dialogue sentence of “Send Wake up to Mike?” in order to determine whether the user intends to send a message to Mike.
- the dialogue sentence output from the electronic device 2000 may be in the form of audio or text, but is not limited thereto.
- Step S430 may correspond to step S330 of FIG. 3 .
- the user of the electronic device may additionally utter a voice in response to the confirmation request output in step S430.
- the user may utter a second voice signal 404 for correcting the misrecognized result.
- the conversation sentence of the second voice signal may be “No, Mark!”.
- the electronic device 2000 may receive the second voice signal 404 uttered by the user, and correct the recognition result of the first voice signal 402 based on the received second voice signal 404 .
- the electronic device 2000 may perform automatic voice recognition (ASR) on the received second voice signal 404 .
- the electronic device 2000 may acquire the second text “No, Mark!” which is a sentence in which the second voice signal 404 is transcribed.
- Step S440 may correspond to step S340 of FIG. 3 .
- the electronic device 2000 may identify the intention of the second voice signal 404 , which is the user's subsequent utterance, using the correction intention identification module 2532 .
- the electronic device 2000 may identify whether the second voice signal 404 is a voice signal for correcting the first text, which is a voice recognition result of the first voice signal 402 .
- the electronic device 2000 may identify 'correction', which is the intent of the second voice signal 404 , and a semantic element “Mark” that the user wants to correct.
- Step S450 may correspond to step S350 of FIG. 3 .
- the electronic device 2000 may identify a plurality of correction candidate semantic elements in the first text. have.
- the electronic device 2000 may identify a plurality of correction candidate semantic elements by using the interest word identification model 2535 .
- the electronic device 2000 identifies 'Mike' and 'text' as correction candidate semantic elements that can be corrected in the first text. can do.
- the word of interest identification model 2535 applies the first text to the natural language understanding model 2522 and outputs the intent of the first voice signal 402, the confidence score of the intent, and at least some of the entities.
- correction candidate semantic elements may be correction targets in the first text may be output.
- the electronic device 2000 may compare the correction candidate semantic elements with the semantic element that the user wants to correct in the second text, and correct at least one of the correction candidate semantic elements based on the comparison result.
- each correction candidate semantic element may be labeled with different labels.
- the word of interest identification model 2535 may output 'Mike', which is a first correction candidate semantic element, and 'text', which is a second correction candidate semantic element, as correction candidate semantic elements labeled with different labels, respectively.
- the electronic device 2000 may determine the order in which the correction candidate semantic elements that may be the correction target in the first text are compared with the semantic elements of the second text based on the labels of the correction candidate semantic elements.
- Step S460 may correspond to step S360 of FIG. 3 .
- the electronic device 2000 may determine a correction priority, which is an order in which the correction candidate semantic elements are compared with the semantic elements in the second text, using the correction candidate determining module 2534 .
- the correction priority may be determined based on the labels of the correction candidate semantic elements.
- the correction priority in which the correction candidate semantic elements are compared will be further described in the description of FIGS. 8 to 13 .
- Step S470 may correspond to step S370 of FIG. 3 .
- the electronic device 2000 may compare the meaning of the correction candidate with the semantic element in the second text using the text comparison module 2536 .
- the electronic device 2000 may sequentially compare the plurality of correction candidate semantic elements based on the correction priority determined in operation S470 .
- the correction priority determined in step S470 may be that the first correction candidate semantic element is first compared with the semantic element in the second text.
- the electronic device 2000 may first compare 'Mike', which is a first correction candidate semantic element, with 'Mark', which is a semantic element in the second text to be corrected by the user.
- the electronic device 2000 may calculate a difference value by comparing 'Mike' as the first correction candidate semantic element and 'Mark' as the semantic element in the second text. When the calculated difference value is less than or equal to a predetermined threshold, the electronic device 2000 may correct the first text by replacing 'Mike' in the first text with 'Mark'. Step S480 may correspond to step S380 of FIG. 3 .
- the electronic device 2000 may analyze the first text by applying the corrected first text to the natural language understanding model 2522 .
- the electronic device 2000 analyzes the corrected first text to obtain an intent 'message' of the first voice signal 402, a confidence score of '0.95' of the intent, and objects 'Mark' and 'Wake up'. can be obtained
- the electronic device 2000 may re-output a confirmation request message for receiving confirmation from the user whether to perform an operation according to the corrected first voice signal. For example, the electronic device 2000 may output a dialogue sentence of “Send Wake up to Mark?” to determine whether the user intends to send a message to Mark.
- FIG. 5 is a diagram for describing a method for an electronic device to identify a correction intention from a user's utterance, according to an exemplary embodiment.
- the electronic device 2000 may identify the intention of the user's second voice signal using the correction intention identification module 2532 .
- the electronic device 2000 may identify whether the user's second voice signal is a voice signal for correcting the first voice signal with respect to the user's second voice signal that is additionally input after the first voice signal is input .
- the correction intention identification module 2532 may identify the user's correction intention by using a rule-based analysis method.
- the correction intention identification module 2532 is configured to determine whether a word (eg, 'No') indicating the user's intention to correct the content of the first text is included in the second text converted from the second voice signal, It may be identified whether the second voice signal is a voice signal for correcting the first text. Also, the correction intention identification module 2532 may identify a semantic element in the second text representing a word the user uttered to correct the semantic element in the first text.
- the correction intention identification module 2532 selects the word 'No' indicating the user's intention to correct the first text in the second text. and identify the semantic element 'AAA' representing the word spoken by the user to correct the semantic element in the first text.
- the correction intent identification module 2532 includes a word (eg, 'Yes', 'Ok') indicating an intention to approve the content of the first text in the second text converted from the second voice signal. Based on whether or not the second voice signal is a voice signal for recognizing the first text, it may be identified.
- a word eg, 'Yes', 'Ok'
- the correction intent identification module 2532 parses the second text using the natural language understanding model 2522 and identifies an intent indicating the utterance intention of the second voice signal and an entity indicating components of a sentence. can be identified.
- the electronic device 2000 may identify whether the second voice signal is a voice signal for correcting the first text based on whether the identified intent of the second voice signal is an intent included in the 'correction' domain.
- the correction intention identification module 2532 may identify a semantic element in the second text that represents a word the user uttered to correct the semantic element in the first text.
- FIG. 6 is a diagram for describing a method of identifying, by an electronic device, semantic elements of candidates for correction in order to correct text obtained from a user's utterance, and determining a correction priority, according to an exemplary embodiment.
- the electronic device 2000 may identify the correction candidate semantic elements to be corrected from the user's first voice signal using the correction candidate determination module 2534 .
- the electronic device 2000 may determine a correction priority, which is an order in which the identified correction candidate semantic elements are compared with semantic elements in the second text.
- the word of interest identification model 2535 receives the first text converted from the first voice signal, the intent of the first voice signal, and the reliability score of the intent of the first voice signal as inputs, and the first text It is possible to output a plurality of correction candidate semantic elements that can be corrected within the .
- the interest word identification model 2535 may be an artificial intelligence model generated through learning.
- the word of interest identification model 2535 includes the first text “Send a message to AAA BBB” converted from the user's first voice signal, the 'message' that is the intent of the first voice signal, and the first voice signal.
- the word of interest identification model 2535 includes the first text “Send a message to AAA BBB” converted from the user's first voice signal, the 'message' that is the intent of the first voice signal, and the first voice signal.
- the correction candidate determining module 2534 may determine the correction priority of the correction candidate semantic elements output from the POI identification model 2535 .
- the correction candidate determining module 2534 classifies the plurality of correction candidate semantic elements according to a predetermined criterion, and determines the priority in which the classified correction candidate semantic elements are corrected based on the confidence score of the intent of the first voice signal. can decide A specific method for the correction candidate determining module 2534 to determine the priority of the correction candidate semantic elements based on the confidence score of the intent of the first voice signal will be further described with reference to FIGS. 8 to 10 .
- the priority in which the plurality of correction candidate semantic elements output from the word of interest identification model 2535 are corrected may be predetermined.
- the semantic elements in the first text may be corrected based on the plurality of correction candidate semantic elements output from the interest word identification model 2535 and the correction priority.
- An embodiment in which the correction priority in which the correction candidate semantic elements are corrected in the word of interest identification model 2535 is determined in advance will be further described in the description of FIGS. 11 to 12 .
- the word of interest identification model 2535 may be an artificial intelligence model capable of performing natural language understanding by integrating functions performed by the natural language understanding model 2522 .
- the word of interest identification model 2535 receives the text obtained by using the ASR model 2512, parses the text, and constructs an intent and a sentence indicating the utterance intention of a voice signal corresponding to the text. It can be learned to identify entities representing elements.
- the word of interest identification model 2535 selects the word of interest to be corrected in the input text based on the input text, the intent of the speech signal identified by the word of interest identification model 2535, and the confidence score of the intent. It can be learned to identify the semantic elements it represents.
- FIG. 7 is a diagram for describing data used by a word-of-interest identification model for identifying a correction candidate semantic element of an electronic device according to an exemplary embodiment.
- the electronic device 2000 processes NLU data 710 on data output from the natural language understanding model 2522 through data engineering to generate interest word identification model data 720 . can create
- the NLU data 710 output from the natural language understanding model 2522 may be an intent indicating an intention of utterance, a confidence score of the intent, and entities indicating constituent elements of a sentence.
- the electronic device 2000 may generate the interest word identification model data 720 by processing the NLU data 710 classified for each intent.
- the interest word identification model data 720 may include a semantic element indicating words related to the intent of the first voice signal and a semantic element indicating the intent of the first voice signal.
- the conversation sentence classified as the intent of 'message' by the natural language understanding model 2522 may be “Send a text to Jake”, “Send Ellen a message”, “Text wake up to my sister”, etc. have.
- the electronic device 2000 may identify, for each dialogue sentence, a semantic element representing an intent and a semantic element representing a word related to the intent.
- the semantic element representing the intent may be the word 'text' corresponding to the meaning of the intent 'Message' of the conversation sentence.
- the semantic element representing the word related to the intent may be a semantic element in which the word 'Jake' representing the target of message transmission represents the word related to the intent.
- the semantic element representing the intent may be the word 'message' corresponding to the meaning of the intent 'Message' of the conversation sentence.
- the semantic element indicating the word related to the intent may be a semantic element in which the word 'Ellen' indicating the target of message transmission indicates the word related to the intent.
- the semantic element representing the intent may be the word 'Text' corresponding to the meaning of 'Message', which is the intent of the conversation sentence.
- the semantic element representing the word related to the intent may be a semantic element representing the word 'my sister' representing the target of sending the message, and the word 'wake up' representing the content of the message being sent, representing the word related to the intent. have.
- the electronic device 2000 may determine a semantic element representing the intent based on statistics in which a specific word in a conversation sentence is classified for each intent.
- the electronic device 2000 may apply a sliding window algorithm to a conversation sentence to identify a plurality of words within the conversation sentence, and determine whether each word is a word indicating an intent.
- the electronic device 2000 may obtain statistics 730 in which the word 'Call' is classified for each intent with respect to the specific word 'Call' included in the dialogue sentence “Make a call to Jim”.
- the electronic device 2000 may determine whether the word 'Call' is a word included in an intent of a domain based on the obtained statistics. In this case, referring to the statistical value 730 in which the word 'Call' is classified by intent, the intent of the word 'Call' is classified as an intent of 'Phone call'. For example, since there are more cases classified as message sending (Massage), reminder (Reminder), etc.), the electronic device 2000 uses the word 'Call' as a semantic element representing the intent of 'Phone call'. can decide
- the electronic device 2000 provides semantic elements representing words related to an intent and an intent in conversation sentences included in the 'Message' intent.
- the word of interest identification model data 720 may be generated.
- the electronic device 2000 determines semantic elements representing words related to the intent and semantic elements representing the intent in conversation sentences included in the 'Phone call' intent,
- the word of interest identification model data 720 may be generated.
- the electronic device 2000 may generate the interest word identification model data 720 by using the NLU data 710 obtained by applying a plurality of dialogue sentences to the natural language understanding model 2522 .
- the electronic device 2000 may train a word of interest identification model by using the generated interest word identification model data 720 .
- FIG. 8 is a diagram for explaining a method of learning, by an electronic device, an artificial intelligence model for identifying a correction candidate semantic element, according to an exemplary embodiment.
- the electronic device 2000 may learn the word of interest identification model 2535 by using the word of interest identification model data 720 described above with reference to FIG. 7 .
- the electronic device 2000 may learn the word of interest identification model 2535 by processing texts obtained from a plurality of dialogue sentences.
- a text obtained from the conversational sentence “Show me the way to Seoul station in Seoul” will be described as an example of data for learning the word identification model of interest as an example.
- the intent of the dialogue sentence is 'Navigation'
- the semantic element indicating the intent of 'Navigation' may be 'way'
- the semantic element indicating the word related to the intent may be 'Seoul station' and 'Seoul'.
- the electronic device 2000 may label a plurality of semantic elements in the text with different labels, and learn the interest word identification model 2535 based on the labeled semantic elements. For example, the electronic device 2000 labels the label of the semantic element 'way' indicating the intent as '1', and sets the labels of the semantic elements 'Seoul station' and 'Seoul' indicating the word related to the intent as ' It can be labeled as 2'.
- the labeling may be performed in units of words, but is not limited thereto. may be labeled as a predetermined token unit (eg, a phoneme unit or a syllable unit, etc.) that can be used by the word identification model 2535 of interest.
- a predetermined token unit eg, a phoneme unit or a syllable unit, etc.
- the electronic device 2000 may generate a reference table 830 in which a minimum value of a confidence score is stored for each domain of each intent.
- the electronic device 2000 may apply a plurality of dialogue sentences to the natural language processing module 2520 to perform natural language understanding, and obtain an intent and a reliability score of the intent for each of the plurality of dialogue sentences.
- the electronic device 2000 may classify reliability scores of intents obtained with respect to a plurality of dialogue sentences for each domain of the intent.
- the electronic device 2000 may generate the reference table 830 by storing the minimum value of the classified confidence score in each intent domain.
- the electronic device 2000 applies the text of the first dialogue sentence 822 “Show me the way to Seoul station in Seoul” to the natural language processing module 2520 to obtain the intent of the first dialogue sentence and the second 1 It is possible to obtain a confidence score of 'navigation: 0.9' (824) of the intent of the dialogue sentence.
- the electronic device 2000 applies the text of the second dialogue sentence 826 “Where is South Delta Secondary School” to the natural language processing module 2520, so that the intent of the second dialogue sentence and the identification of the second dialogue sentence are The tent's reliability score 'Navigation: 0.85' (828) can be obtained.
- the electronic device 2000 may set the value of the 'navigation' domain item among the domains of the intents in the reference table 830 to 0.85, which is the minimum value among the reliability scores of the acquired intents. That is, with respect to the intent domain 'navigation' in the reference table 830 , the electronic device 2000 may store, in the reference table 830 , a minimum value among the reliability scores of intents of conversation sentences classified into the navigation domain.
- FIG. 9 is a diagram for explaining a method of identifying, by an electronic device, a correction candidate semantic element using an artificial intelligence model, and determining an order in which the identified correction candidate semantic elements are corrected, according to an exemplary embodiment.
- the electronic device 2000 uses a correction candidate determining module 2534 to identify a plurality of correction candidate semantic elements in the first text, and correct the identified correction candidate semantic elements. You can decide the order in which
- the electronic device 2000 may obtain an intent of the first voice signal and a reliability score of the intent by inputting the first text converted from the first voice signal to the natural language processing module 2520 .
- the electronic device 2000 applies the first text corresponding to the dialogue sentence “Show me the way to Seoul station in Seoul” to the natural language processing module 2520, and ' A reliability score of '0.9' of navigation' and intent may be obtained.
- the electronic device 2000 may identify a plurality of correction candidate semantic elements by using the word of interest identification model 2535 .
- the word of interest identification model 2535 may output labeled, correction candidate semantic elements to determine a comparison order of words that may be corrected in the dialogue sentence of the first voice signal.
- the electronic device 2000 inputs the first text “Show me the way to Seoul station in Seoul” and the intent 'navigation' into the word of interest identification model 2535, and is labeled with the label number '1'.
- the first correction candidate semantic elements 'Seoul station' and 'Seoul' may be identified.
- the electronic device 2000 may identify the second correction candidate semantic element 'way' labeled with the label number '2'.
- the first correction candidate semantic element may be a semantic element related to the intent 'navigation'
- the second correction candidate semantic element may be a semantic element indicating the intent 'navigation'.
- the electronic device 2000 may tag the semantic elements by assigning a predetermined tag to each semantic element in order to distinguish a boundary between the semantic elements.
- an inside-outside-beginning (IOB) tagging format may be used, but is not limited thereto.
- the electronic device 2000 may tag a plurality of tokens constituting a semantic element. For example, a token indicating the beginning of a semantic element is tagged as 'B' (Beginning), a token included in a semantic element is tagged as 'I' (Inside), and a token that does not correspond to a semantic element is tagged as 'O'. You can tag it as (Outside).
- the electronic device 2000 assigns a 'B' tag to 'S', which is a start token of the semantic element, and 'e', 'o', which are tokens included in the semantic element,
- 'I' tag can be attached to each of 'u' and 'l'.
- the electronic device 2000 may extend the labeling of the semantic elements by assigning a predetermined tag to the semantic elements labeled according to the above-described embodiments.
- the electronic device 2000 may extend the labeling of the semantic element 'Seoul' by adding a tag in the IOB tagging format to the first correction candidate semantic element 'Seoul' labeled with the label number '1'.
- the electronic device 2000 assigns a 'B' tag to 'S', which is the start token of the semantic element, corresponding to the start token of the semantic element.
- each of the tokens included in the semantic element Labeling can be extended to '1-I'.
- the electronic device 2000 assigns a predetermined tag to tokens constituting the semantic element to distinguish the boundary between the semantic elements and tags, so that even if the same correction candidate semantic element is continuously identified in the text, the boundary of each semantic element is distinguished. can do.
- the electronic device 2000 may determine the order in which the plurality of correction candidate semantic elements are compared with the semantic elements of the second text.
- the electronic device 2000 uses the correction candidate determination module 2534 to determine the intent 'navigation' of the first voice signal and the confidence score '0.9' of the intent as a threshold value of the reference table 910 . can be compared with In this case, the threshold value '0.85' stored in the 'navigation' domain of the reference table 910 may be compared with the confidence score '0.9' of the intent of the first voice signal.
- the correction candidate determining module 2534 determines that the confidence score of '0.9' of the intent 'navigation' of the first voice signal is greater than the threshold value '0.85' stored in the reference table 910 , so the reliability of the intent It can be determined that the possibility of the user to correct the semantic element corresponding to the intent is low because of the high . Accordingly, the correction candidate determining module 2534 may determine the first correction candidate semantic element indicating the semantic element related to the intent to have a higher correction priority than the second correction candidate semantic element indicating the intent. In this case, when a second voice signal is input to correct the first voice signal, semantic elements in the second voice signal may be compared with 'Seoul station' and 'Seoul', which are first correction candidate semantic elements.
- the first correction candidate semantic element compared with the semantic element in the second text may be plural (eg, 'Seoul station' and 'Seoul').
- the electronic device 2000 may determine a comparison order in which the first correction candidate semantic elements are compared with the semantic elements in the second voice signal.
- the electronic device 2000 may determine the comparison order so that the correction candidate semantic elements positioned at the front of the sentence of the first text are compared first.
- the electronic device 2000 may sequentially compare the first correction candidate semantic element with the semantic element in the second text from the first correction candidate semantic element positioned at the front of the sentence of the first text.
- the electronic device 2000 determines that the first correction candidate semantic element is a target for correction because the first correction candidate semantic element is similar to the semantic element in the second text. Semantic elements can be corrected.
- the method of determining the order in which the electronic device 2000 compares the plurality of first correction candidate semantic elements with the semantic elements in the second voice signal is not limited thereto.
- the electronic device 2000 compares each of the plurality of first correction candidate semantic elements in the first text with the semantic element in the second text, and among the first correction candidate semantic elements, the meaning in the second text.
- a first correction candidate semantic element having the highest similarity to the element may be determined as a correction target.
- the electronic device 2000 may correct the first correction candidate semantic element determined as the correction target.
- the reliability score of the intent 'navigation' of the first voice signal is a threshold value stored in the reference table 910 . It may be less than '0.85'. In this case, since the reliability of the identified intent is low, the correction candidate determining module 2534 may determine that there is a high possibility that the user will correct the corresponding semantic element of the intent.
- the correction candidate determining module 2534 may determine the second correction candidate semantic element, which is a semantic element indicating the intent, with a higher correction priority than the first correction candidate semantic element, which is the semantic element indicating the semantic element related to the intent.
- the second correction candidate semantic element compared to the semantic element in the second text may be plural.
- the electronic device 2000 may determine a comparison order in which the second correction candidate semantic elements are compared with the semantic elements in the second voice signal. This is the same as the case in which there are several first correction candidate semantic elements, and thus a description thereof will be omitted.
- FIG. 10 is a diagram for explaining a method of correcting a user's utterance by an electronic device according to the method described with reference to FIGS. 8 and 9 , according to an exemplary embodiment.
- steps S1010 may correspond to steps S310 to S330 of FIG. 3
- steps S1015 to S1025 may correspond to steps S340 to S350 of FIG. 3 .
- the electronic device 2000 may search for a first threshold value corresponding to a confidence score of the intent of the first voice signal from a pre-stored reference table. For example, if the intent of the first voice signal is 'navigation', the electronic device 2000 may search for a first threshold value stored in the 'navigation' domain from a pre-stored reference table.
- the electronic device 2000 may determine a correction priority.
- the electronic device 2000 may compare the reliability score of the intent of the first voice signal with the first threshold value.
- the electronic device 2000 sets the first correction candidate semantic element representing the semantic element related to the intent of the first voice signal as the semantic element in the second text. can be compared in preference to Also, when the confidence score of the intent of the first voice signal is less than the first threshold, the electronic device 2000 compares the second correction candidate semantic element indicating the intent of the first voice signal with the semantic element in the second text.
- the electronic device 2000 may compare the degree of similarity between the correction candidate semantic element and the semantic element in the second text based on the correction priority determined in operation S1035 . For example, the electronic device 2000 may calculate a difference value indicating a difference between a correction candidate semantic element in the first text and a semantic element in the second text that the user wants to correct. A detailed method for the electronic device 2000 to calculate a difference value indicating a difference between semantic elements will be described in further detail with reference to FIGS. 13 to 14 .
- the electronic device 2000 may correct at least one semantic element in the first text based on a result of comparing the difference value calculated in operation S1040 with the second threshold value.
- the electronic device 2000 may sequentially compare the correction candidate semantic elements based on the correction priority determined according to the above-described embodiment.
- the electronic device 2000 may determine the semantic element to be corrected by the user.
- the electronic device 2000 may proceed to step S1050 to correct the correction candidate semantic element whose semantic element difference value is equal to or less than the second threshold value as the semantic element to be corrected by the user in the second text.
- the electronic device 2000 compares the semantic elements in the second text with the difference values for all the correction candidate semantic elements. If there is no correction candidate semantic element having a difference value equal to or less than the second threshold value, the electronic device 2000 may proceed to step S1065. have.
- the electronic device 2000 selects, from among the correction candidate semantic elements, a correction candidate semantic element similar to the semantic element in the second text, in which the difference value of the semantic element in the second text is less than the second threshold value. can be decided with
- the electronic device 2000 may correct the first text by replacing the determined semantic element to be corrected with a semantic element in the second text.
- the electronic device 2000 may notify the user of the corrected content and may output a confirmation request message requesting confirmation of the user.
- step S1055 the electronic device 2000 according to an embodiment receives an input from the user for accepting the request for confirmation of corrections output in step S1050 , performs step S1060 , and receives an input for rejecting the request for confirmation of corrections If so, step S1065 may be performed.
- the user's input may be a voice signal, but is not limited thereto, and other types of data may be input as the user's input.
- step S1060 the electronic device 2000 according to an embodiment performs a task corresponding to the user's intention by performing natural language understanding on the corrected first text, identifying the user's intention corresponding to the corrected text, and can
- the electronic device 2000 may perform a recognized task or wait until a new voice signal is input.
- 11 is a diagram for describing another method for an electronic device to learn an artificial intelligence model for identifying a correction candidate semantic element, according to an embodiment.
- the electronic device 2000 may learn the word of interest identification model 2535 by using the word of interest identification model data 720 described above with reference to FIG. 7 .
- the electronic device 2000 may learn the word of interest identification model 2535 by processing texts obtained from a plurality of dialogue sentences.
- text obtained from the dialogue sentence “Show me the way to Seoul station in Seoul” will be described as an example of data for learning the word of interest identification model 2535 as an example.
- the intent of the dialogue sentence is 'Navigation'
- a semantic element representing a word related to an intent may be 'Seoul station' and 'Seoul'.
- the electronic device 2000 may label a plurality of semantic elements in the text with labels including priorities, and learn the interest word identification model 2535 based on the labeled semantic elements. For example, the electronic device 2000 may learn the interest word identification model 2535 based on dialogue sentences having an intent domain of 'navigation' and dialogue sentences having other domains. In this case, the electronic device 2000 may learn the interest word identification model 2535 so that, when a dialogue sentence of the 'navigation' intent is input, a correction candidate semantic element having priority is output.
- the electronic device 2000 may label the priority of the semantic element 'Seoul station' corresponding to a place among semantic elements representing the word related to the intent as the first priority correction candidate semantic element. have.
- the electronic device 2000 may learn the word of interest identification model 2535 so that a semantic element corresponding to a place is identified as a first rank correction candidate semantic element. have.
- the electronic device 2000 may label a priority of a semantic element 'Seoul' corresponding to a region, among semantic elements representing a word related to an intent, as a second priority correction candidate semantic element.
- the electronic device 2000 may learn the word of interest identification model 2535 so that a semantic element corresponding to a region is identified as a second rank correction candidate semantic element. have.
- the electronic device 2000 may output when an intent of a dialog sentence input to the electronic device 2000 is identified as a dialog sentence included in the 'navigation' domain, but the reliability score of the intent is low.
- a dialog sentence included in an intent domain different from the intent of 'navigation' may be used as training data.
- the electronic device 2000 may set semantic elements 'way' included in the text. ', 'use', etc. may be prioritized and labeled, and the interest word identification model 2535 may be trained using the labeled data.
- FIG. 12 is a diagram for explaining a method of identifying, by an electronic device, a semantic element of a correction candidate whose correction priority is determined, using an artificial intelligence model, according to an embodiment.
- the electronic device 2000 may identify a plurality of correction candidate semantic elements in the first text by using the word of interest identification model 2535 .
- the correction candidate semantic elements may be output based on the previously learned correction priority.
- the electronic device 2000 may obtain an intent of the first voice signal and a reliability score of the intent by inputting the first text converted from the first voice signal to the natural language processing module 2520 .
- the electronic device 2000 applies the first text corresponding to the dialogue sentence “Show me the way to Seoul station in Seoul” to the natural language processing module 2520, and ' A confidence score of '0.85' of navigation' and intent may be obtained.
- the electronic device 2000 may identify a plurality of correction candidate semantic elements by using the word of interest identification model 2535 .
- the plurality of correction candidate semantic elements output from the word of interest identification model 2535 may be correction candidate semantic elements based on the pre-learned priorities according to the embodiment described with reference to FIG. 11 .
- the electronic device 2000 inputs the first text “Show me the way to Seoul station in Seoul” and the intent 'navigation' into the interest word identification model 2535, and performs Accordingly, the semantic element 'Seoul station' corresponding to the place, which has been previously learned in the first order, may be identified as the first order correction candidate semantic element. Also, the electronic device 2000 may identify the semantic element 'Seoul' corresponding to the region, which has been previously learned with the second rank according to the embodiment described above in FIG. 11 , as the second rank correction candidate semantic element. .
- the electronic device 2000 may compare a semantic element in the second text that the user wants to correct with the correction candidate semantic elements.
- the electronic device 2000 may compare the correction candidate semantic element with the semantic element to be corrected by the user in the second text based on the correction priority.
- FIG. 13 is a diagram for describing a method of comparing, by an electronic device, a correction candidate semantic element in a first text and a semantic element in a second text in order to correct a user's utterance, according to an embodiment.
- the electronic device 2000 compares the correction candidate semantic elements in the first text with the semantic elements in the second text that the user wants to correct by using the text comparison module 2536 . and correcting at least one semantic element in the first text based on the comparison result.
- the text comparison module 2536 may receive a correction candidate semantic element in the first text and a semantic element in the second text.
- the correction candidate semantic elements in the first text may be sequentially compared with the semantic elements in the second text based on the correction priority determined according to the above-described embodiments. .
- the text comparison module 2536 may tokenize each of the semantic correction candidate semantic element in the first text and the semantic element in the second text to be corrected by the user.
- tokenization may refer to an operation of dividing semantic elements into units defined by tokens.
- the unit of the token may be set to a similar pronunciation unit, a syllable unit, a phoneme unit, a semantic unit, a word unit, a sentence unit, and the like, but is not limited thereto.
- the text comparison module 2536 may apply a sequence alignment algorithm to compare similarities between tokens obtained by tokenizing semantic elements.
- a sequence alignment algorithm may be applied, but is not limited thereto.
- the text comparison module 2536 may calculate a similarity score of the tokens arranged in step S1320.
- the similarity score may be a score indicating a difference value between the correction candidate semantic element in the first text and the semantic element in the second text.
- a method of calculating the similarity score for example, an edit distance algorithm, a Jaccard similarity algorithm, or a method of calculating using a predefined lookup table may be used, but is not limited thereto.
- the text comparison module 2536 may correct a correction candidate semantic element in the first text based on the calculation result of the similarity score. For example, the text comparison module 2536 may determine the correction candidate semantic element as the correction target semantic element based on the difference value that is the similarity score. The electronic device 2000 may correct the first text by replacing the determined semantic element to be corrected with a semantic element in the second text.
- FIG. 14 is a diagram for further explaining FIG. 13 , and is a diagram for explaining an example in which the electronic device compares semantic elements according to an embodiment.
- the dialogue sentence of the first text converted from the user's first voice signal input to the electronic device 2000 is “Send a message to Mike wake up”, and the second voice signal converted from the second voice signal is “Send a message to Mike wake up”. 2
- the dialogue sentence of the text will be described using the case of “No, Mark” as an example.
- the electronic device 2000 may identify a plurality of correction candidate semantic elements 1410 , 1420 , and 1430 that may be a correction target in the first text according to the above-described embodiments.
- the correction priority of the plurality of correction candidate semantic elements may be the first priority 'Mike 1420', the second priority 'wake up 1430', and the third priority 'message 1410'.
- the electronic device 2000 may sequentially compare the correction candidate semantic element with the semantic element 'Mark 1340' in the second text based on the correction priority.
- the electronic device 2000 may compare the correction candidate semantic elements in the first text with the correction candidate semantic elements in the second text by performing steps S1310 to S1340 described above with reference to FIG. 13 .
- a difference value '4' of ' may be obtained.
- the electronic device 2000 determines that the correction candidate semantic element 'Mike 1420' is combined with the semantic element 'Mark 1340' in the second text. It is determined that they are similar, and the correction candidate semantic element 'Mike 1420' may be determined as the correction target semantic element.
- the electronic device 2000 may correct the first text by replacing 'Mike 1420' determined as a semantic element to be corrected with 'Mark 1340', which is a semantic element in the second text.
- 15 is a flowchart illustrating a method of correcting, by an electronic device, a misrecognized input voice signal based on a user input, according to an exemplary embodiment.
- a first voice signal may be received from the user of the electronic device 2000 according to an embodiment, and the first text may be obtained by converting the first voice signal.
- the electronic device 2000 may obtain the first text converted from the first voice signal by performing ASR on the received first voice signal to transcribe the user's voice into text.
- the electronic device 2000 may apply the acquired first text to the natural language understanding model 2522 to analyze the acquired first text.
- the electronic device 2000 parses the first text by using the natural language understanding model 2522 , and an intent indicating the utterance intention of the first voice signal and an entity indicating components of a sentence ) can be identified. Also, the electronic device 2000 may acquire a confidence score of the identified intent together.
- step S1530 the electronic device 2000 according to an embodiment inputs the first text obtained from the first voice signal, the intent of the first voice signal, and the confidence score of the intent to the word of interest identification model 2535 .
- the interest word identification model 2535 may be an artificial intelligence model obtained through learning.
- the plurality of correction candidate semantic elements identified by using the word of interest identification model 2535 may include correction candidate semantic elements in the first text when the user inputs a correction utterance to correct the first text. In order to sequentially compare the corrected utterances, they may be labeled based on a predetermined criterion.
- the electronic device 2000 converts the second voice signal additionally input to the electronic device 2000 to obtain the second text.
- the electronic device 2000 may analyze the text obtained from the first voice signal and output a confirmation request for performing a task corresponding to the intent of the first voice signal.
- the user when the task performance confirmation request output from the electronic device 2000 is different from the user's intention, the user inputs a second voice signal for correcting the recognition result of the first voice signal into the electronic device 2000 . can do.
- the user when the task performance confirmation request output from the electronic device 2000 is the same as the user's intention, the user inputs the second voice signal for approving the recognition result of the first voice signal to the electronic device 2000 . can do.
- the electronic device 2000 analyzes the obtained second text to determine whether the second voice signal is a voice signal for correcting the first text, which is a result of voice recognition of the first voice signal. can be identified.
- the electronic device 2000 analyzes the second text using a rule-based analysis method, and a word intended to correct the first text in the second text (eg, 'no') Based on whether or not , it may be identified whether the second voice signal is a voice signal for correcting the first text.
- a rule-based analysis method e.g., 'no'
- the electronic device 2000 may use the natural language understanding model 2522 to parse the second text, and to identify an intent indicating the utterance intention of the second voice signal and an entity indicating components of a sentence.
- the electronic device 2000 may identify whether the second voice signal is a voice signal for correcting the first text based on whether the identified intent of the second voice signal is an intent included in the 'correction' domain.
- the electronic device 2000 may compare the first text with the second text based on the identification result of operation S1550.
- the electronic device 2000 may correct the first text within the first text based on the confidence score of the intent of the first voice signal.
- the plurality of correction candidate semantic elements may be compared with semantic elements in the second text.
- the electronic device 2000 when the electronic device 2000 compares the plurality of correction candidate semantic elements in the first text with the semantic elements in the second text, the electronic device 2000 sequentially compares the plurality of semantic elements in the first text to the second text. It can be compared with semantic elements within the text. In addition, in order to determine the order in which the plurality of semantic elements in the first text are compared with the semantic elements in the second text, the electronic device 2000 determines the labeling information of the correction candidate semantic elements obtained by the interest word identification model 2535 . is available. For example, when the reliability score of the intent of the first voice signal is equal to or greater than a predetermined threshold, the electronic device 2000 may compare the first semantic elements labeled with the labeling number 1 with the semantic elements in the second text. Also, when the reliability score of the intent of the first voice signal is less than a predetermined threshold, the electronic device 2000 may compare the second semantic elements labeled with the labeling number 2 with the semantic elements in the second text.
- the electronic device 2000 may correct at least one of the plurality of correction candidate semantic elements in the first text based on the semantic element comparison result. For example, the electronic device 2000 compares a semantic element in the second text that the user wants to correct with a plurality of correction candidate semantic elements in the first text, and selects at least one of the plurality of correction candidate semantic elements as the second By substituting a semantic element in the text, the first text may be corrected.
- a block diagram of the electronic device 2000 illustrated in FIG. 2 is a block diagram for an exemplary embodiment.
- Each component in the block diagram may be integrated, added, or omitted according to the specifications of each device that is actually implemented. That is, two or more components may be combined into one component, or one component may be subdivided into two or more components as needed.
- the function performed in each block is for describing the embodiments, and the specific operation or device does not limit the scope of the present invention.
- the method of operating an electronic device may be implemented in the form of a program command that can be executed through various computer means and recorded in a non-transitory computer-readable medium.
- the computer-readable medium may include program instructions, data files, data structures, etc. alone or in combination.
- the program instructions recorded on the medium may be specially designed and configured for the present invention, or may be known and available to those skilled in the art of computer software.
- Examples of the computer-readable recording medium include magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic such as floppy disks.
- - includes magneto-optical media, and hardware devices specially configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like.
- Examples of program instructions include not only machine language codes such as those generated by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like.
- the method of operating an electronic device according to the disclosed embodiments may be included in a computer program product and provided.
- Computer program products may be traded between sellers and buyers as commodities.
- the computer program product may include a S/W program and a computer-readable storage medium in which the S/W program is stored.
- computer program products may include products (eg, downloadable apps) in the form of S/W programs distributed electronically through manufacturers of electronic devices or electronic markets (eg, Google Play Store, App Store). have.
- the storage medium may be a server of a manufacturer, a server of an electronic market, or a storage medium of a relay server temporarily storing a SW program.
- the computer program product may include a storage medium of an electronic device.
- the computer program product may include a storage medium of the third device.
- the computer program product may include a S/W program itself transmitted from the electronic device to the third device or transmitted from the third device to the electronic device.
- one of the electronic device and the third device may execute a computer program product to perform the method according to the disclosed embodiments.
- the electronic device and the third device may execute the computer program product to distribute the method according to the disclosed embodiments.
- the electronic device may execute a computer program product stored in the electronic device to control a third device communicatively connected to the electronic device to perform the method according to the disclosed embodiments.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Studio Devices (AREA)
- Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
- Controls And Circuits For Display Device (AREA)
- Machine Translation (AREA)
Abstract
음성 입력을 정정하는 전자 장치 및 그 동작 방법이 개시된다. 전자 장치가 음성 입력을 정정하는 방법은, 제1 음성 신호를 수신하는 단계; 제1 텍스트를 획득하는 단계; 상기 제1 텍스트를 자연어 이해 모델에 입력하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하는 단계; 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계; 제2 음성 신호를 수신하는 단계; 제2 텍스트를 획득하는 단계; 상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계; 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 의미 요소를 상기 신뢰도 점수에 기초하여 비교하는 단계; 및 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계를 포함하는, 방법일 수 있다.
Description
본 개시는 사용자의 음성 입력을 정정하는 방법에 관한 것이다.
멀티 미디어 기술 및 네트워크 기술이 발전함에 따라, 사용자는 디바이스를 이용하여 다양한 서비스를 제공받을 수 있게 되었다. 특히, 음성 인식 기술이 발전함에 따라, 사용자는 디바이스에 음성(예를 들어, 발화)을 입력하고, 음성 입력에 따른 응답 메시지를 제공 받는, 자연어 응답 서비스를 제공 받을 수 있게 되었다.
사용자가 자연어 응답 서비스를 제공 받는 경우, 사용자의 초기 발화가 디바이스에서 잘못 인식되어 사용자의 발화를 인식한 결과가 부분적으로 수정이 필요한 경우가 발생할 수 있다. 이에 따라, 사용자가 잘못 인식된 대화 문장 전체를 다시 입력하지 않고, 오인식된 사용자의 초기 발화에 대응할 수 있는 기술이 요구된다.
다양한 실시예들은, 자연어 응답 서비스를 제공하는 전자 장치에 있어서, 사용자의 초기 발화를 수신하고, 초기 발화가 수신된 이후 초기 발화를 정정하기 위해 수신되는 후속 발화에서 사용자의 정정 의도를 식별할 수 있는, 전자 장치 및 그 동작 방법을 제공할 수 있다.
다양한 실시예들은, 초기 발화된 음성 신호로부터 변환된 텍스트에 정정 후보들을 식별하여, 후속해서 발화된 음성 신호로부터 변환된 텍스트들을 비교하고, 비교 결과에 기초하여 사용자의 초기 발화를 정정할 수 있는, 전자 장치 및 그 동작 방법을 제공할 수 있다.
본 개시의 일 측면에 따르면, 전자 장치가 음성 입력을 정정하는 방법을 제공할 수 있다. 상기 방법은, 제1 음성 신호를 수신하는 단계; 상기 제1 음성 신호를 텍스트로 변환하여 제1 텍스트를 획득하는 단계; 상기 제1 텍스트를 자연어 이해 모델에 입력하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하는 단계; 상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계; 제2 음성 신호를 수신하는 단계; 상기 제2 음성 신호를 텍스트로 변환하여 제2 텍스트를 획득하는 단계; 상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계; 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호임을 식별한 것에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 의미 요소를 상기 신뢰도 점수에 기초하여 비교하는 단계; 및 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계를 포함하는, 방법일 수 있다.
상기 방법은, 상기 제1 음성 신호의 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 출력하는 단계를 더 포함하되, 상기 제2 음성 신호는, 상기 확인 요청이 출력된 후에 수신되는 것인, 방법일 수 있다.
상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계는, 상기 제2 텍스트를 상기 자연어 이해 모델에 입력하여, 상기 제1 텍스트를 정정하려는 의도를 나타내는 상기 제2 음성 신호의 인텐트 및 정정하려는 단어를 나타내는 상기 의미 요소를 식별하는 단계를 포함할 수 있다.
상기 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계는, 상기 제1 텍스트로부터 제1 정정 후보 의미 요소 및 제2 정정 후보 의미 요소를 식별하되, 상기 제1 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트와 관련된 단어를 나타내고, 상기 제2 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트를 나타내는 것일 수 있다.
상기 방법은, 상기 제1 음성 신호의 인텐트의 신뢰도 점수를 제1 임계값과 비교하는 단계; 및 상기 제1 음성 신호의 인텐트의 신뢰도 점수와 상기 제1 임계값의 비교 결과에 기초하여, 상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정하는 단계를 더 포함하는, 방법일 수 있다.
상기 제1 임계값은, 상기 제1 텍스트에 대응되는 상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의, 다른 신뢰도 점수에 기초하여 결정되고, 상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의 인텐트는, 상기 제1 음성 신호의 인텐트와 동일한 도메인의 인텐트인 것일 수 있다.
상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정하는 단계는, 상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 이상인지에 기초하여 상기 제1 정정 후보 의미 요소가 상기 제2 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하고, 상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 미만인지에 기초하여 상기 제2 정정 후보 의미 요소가 상기 제1 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정할 수 있다.
상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트와 비교하는 단계는, 상기 정정 우선 순위에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산하는 단계를 포함할 수 있다.
상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계는, 상기 차이 값을 제2 임계값과 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중에서, 의미 요소를 정정하는 단계를 포함할 수 있다.
상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산하는 단계는, 문자 간 차이, 단어 간 차이 및 발음 표현 간 차이 중 적어도 하나에 기초하여, 편집 거리(Edit distance) 알고리즘을 적용함으로써 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소의 차이 값을 계산하는 단계를 포함할 수 있다.
본 개시의 일 측면에 따르면, 음성 입력을 정정하는 전자 장치를 제공할 수 있다. 상기 전자 장치는, 음성 신호를 입력 받는 입력 인터페이스; 하나 이상의 명령어들(instructions)을 포함하는 프로그램을 저장하는 저장부; 및 상기 저장부에 저장된 상기 프로그램의 하나 이상의 명령어들을 실행하는 프로세서를 포함하고, 상기 프로세서는, 상기 입력 인터페이스를 통해 제1 음성 신호를 수신하고, 상기 제1 음성 신호를 텍스트로 변환하여 제1 텍스트를 획득하고, 상기 제1 텍스트를 자연어 이해 모델에 입력하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하고, 상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하고, 상기 입력 인터페이스를 통해 제2 음성 신호를 수신하고, 상기 제2 음성 신호를 텍스트로 변환하여 제2 텍스트를 획득하고, 상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하고, 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호임을 식별한 것에 기초하여 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 의미 요소를 상기 신뢰도 점수에 기초하여 비교하고, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는, 전자 장치일 수 있다.
상기 전자 장치는 출력 인터페이스를 더 포함할 수 있다. 상기 프로세서는, 상기 출력 인터페이스를 통해, 상기 제1 음성 신호의 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 출력하되, 상기 제2 음성 신호는, 상기 확인 요청이 출력된 후에 수신되는 것일 수 있다.
상기 프로세서는, 상기 제2 텍스트를 상기 자연어 이해 모델에 입력하여, 상기 제1 텍스트를 정정하려는 의도를 나타내는 상기 제2 음성 신호의 인텐트 및 정정하려는 단어를 나타내는 상기 의미 요소를 식별할 수 있다.
상기 프로세서는, 상기 제1 텍스트로부터 제1 정정 후보 의미 요소 및 제2 정정 후보 의미 요소를 식별하되, 상기 제1 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트와 관련된 단어를 나타내고, 상기 제2 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트를 나타내는 것일 수 있다.
상기 프로세서는, 상기 제1 음성 신호의 인텐트의 신뢰도 점수를 제1 임계값과 비교하고, 상기 제1 음성 신호의 인텐트의 신뢰도 점수와 상기 제1 임계값의 비교 결과에 기초하여, 상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정할 수 있다.
상기 제1 임계값은, 상기 제1 텍스트에 대응되는 상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의, 다른 신뢰도 점수에 기초하여 결정되고, 상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의 인텐트는, 상기 제1 음성 신호의 인텐트와 동일한 도메인의 인텐트인 것일 수 있다.
상기 프로세서는, 상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 이상인지에 기초하여 상기 제1 정정 후보 의미 요소가 상기 제2 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하고, 상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 미만인지에 기초하여 상기 제2 정정 후보 의미 요소가 상기 제1 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정할 수 있다.
상기 프로세서는, 상기 정정 우선 순위에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산할 수 있다.
상기 프로세서는, 상기 차이 값을 제2 임계값과 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중에서, 의미 요소를 정정할 수 있다.
본 개시의 일 측면에 따르면, 전자 장치가 사용자의 음성 입력을 정정하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공할 수 있다. 상기 방법은, 제1 음성 신호를 수신하는 단계; 상기 제1 음성 신호를 텍스트로 변환하여 제1 텍스트를 획득하는 단계; 상기 제1 텍스트를 자연어 이해 모델에 입력하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하는 단계; 상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계; 제2 음성 신호를 수신하는 단계; 상기 제2 음성 신호를 텍스트로 변환하여 제2 텍스트를 획득하는 단계; 상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계; 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호임을 식별한 것에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 의미 요소를 상기 신뢰도 점수에 기초하여 비교하는 단계; 및 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계를 포함하는, 방법일 수 있다.
전술한 내용 및 본 개시의 특정 실시예의 다른 측면, 특징 및 이점은, 첨부의 도면들을 함께 고려하여 후술하는 상세한 설명으로부터 더욱 명백해질 것이다.
도 1은 일 실시예에 따른 전자 장치가 사용자 입력에 기초하여 입력된 음성 신호를 정정하는 방법을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 전자 장치의 구성을 설명하기 위한 블록도이다.
도 3은 일 실시예에 따른 전자 장치에 포함되는 복수의 모듈들의 동작들을 설명하기 위한 도면이다.
도 4는 도 3을 더 설명하기 위한 도면으로, 일 실시예에 따른 전자 장치가 사용자로부터 입력된 음성 신호를 정정하는 예시를 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 전자 장치가 사용자의 발화로부터 정정 의도를 식별하는 방법을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 전자 장치가 사용자의 발화로부터 획득된 텍스트를 정정하기 위해 정정 후보 의미 요소들을 식별하고, 정정 우선 순위를 결정하는 방법을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 전자 장치의 정정 후보 의미 요소를 식별하는 관심 단어 식별 모델이 이용하는 데이터를 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 전자 장치가 정정 후보 의미 요소를 식별하기 위한 인공지능 모델을 학습하는 방법을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 전자 장치가 인공지능 모델을 이용하여 정정 후보 의미 요소를 식별하고, 식별된 정정 후보 의미 요소들이 정정되는 순서를 결정하는 방법을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 전자 장치가 도 8 및 도 9에서 서술한 방법에 따라, 사용자의 발화를 정정하는 방법을 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 전자 장치가 정정 후보 의미 요소를 식별하기 위한 인공지능 모델을 학습하는 다른 방법을 설명하기 위한 도면이다.
도 12는 일 실시예에 따른 전자 장치가 인공지능 모델을 이용하여 정정 후보 의미 요소를 식별하고, 식별된 정정 후보 의미 요소들이 정정되는 순서를 결정하는 다른 방법을 설명하기 위한 도면이다.
도 13은 일 실시예에 따른 전자 장치가 사용자의 발화를 정정하기 위해 제1 텍스트 내의 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소를 비교하는 방법을 설명하기 위한 도면이다.
도 14는 도 13을 더 설명하기 위한 도면으로, 일 실시예에 따른 전자 장치가 의미 요소들을 비교하는 예시를 설명하기 위한 도면이다.
도 15는 일 실시예에 따른 전자 장치가 사용자 입력에 기초하여 오인식된 입력 음성 신호를 정정하는 방법을 도시한 흐름도이다.
본 개시 전반에 걸쳐, “a, b, 또는 c 중 적어도 하나”라는 표현은 a만, b만, c만, a와 b 모두, a와 c 모두, b와 c 모두, 또는 a, b, c 모두를 나타낸다. 본 개시 전반에 걸쳐, “a, b, 또는 c 중 적어도 하나”라는 표현은 a만, b만, c만, a와 b 모두, a와 c 모두, b와 c 모두, 또는 a, b, c 모두를 나타낸다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 또한, 본 명세서에서 사용되는 '제1' 또는 '제2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시예에 따른 전자 장치가 사용자 입력에 기초하여 입력된 음성 신호를 정정하는 방법을 설명하기 위한 도면이다.
도 1을 참조하면, 일 실시예에 따른 전자 장치(2000)는 자연어 응답 서비스를 제공하는 전자 장치일 수 있다.
일 실시예에서, 전자 장치(2000)는 사용자(100)로부터 사용자(100)가 수행하고자 하는 태스크에 대한 명령을 나타내는 음성 신호를 수신할 수 있다. 전자 장치(2000)는 사용자(100)로부터 수신된 음성 신호에 자동 음성 인식(Automatic Speech Recognition; ASR)을 수행하여 음성 신호를 텍스트로 변환할 수 있다. 전자 장치(2000)는 음성 신호로부터 획득된 텍스트를 자연어 이해(Natural Language Understanding; NLU) 모델에 적용하여, 수신된 음성 신호의 발화 의도를 나타내는 인텐트(intent) 및 문장의 구성 요소들을 나타내는 개체(entity)를 식별할 수 있다.
일 실시예에서, 전자 장치(2000)는 식별된 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 사용자(100)에게 출력할 수 있다. 이 경우, 전자 장치(2000)는 사용자(100)의 발화 의도에 대응되는 응답을 출력하기 위해, 자연어 생성(Natural Language Generation; NLG) 모델을 이용하여 인텐트에 대응되는 태스크와 관련된 발화 데이터를 생성하고 편집함으로써 사용자(100)와 대화하기 위한 자연어를 생성할 수 있다.
일 실시예에서, 전자 장치(2000)가 제1 음성 신호를 인식한 결과는 사용자(100)의 제1 음성 신호에 노이즈 등이 부가되거나 자동 음성 인식의 수행 결과가 부정확하여, 사용자로부터 발화된 대화 문장과 다른 결과일 수 있다.
이 경우, 전자 장치(2000)는 사용자(100)가 오인식된 제1 음성 신호의 인식 결과를 수정하기 위해 추가로 발화하는 제2 음성 신호를 수신하고, 수신된 제2 음성 신호에 기초하여 오인식된 제1 음성 신호의 인식 결과를 정정할 수 있다.
일 실시예에서, 전자 장치(2000)는 수신된 제2 음성 신호가 제1 음성 신호의 인식 결과를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다. 전자 장치(2000)는 제2 음성 신호로부터 변환된 텍스트 내의 사용자의 정정 의도를 나타내는 단어 및 사용자가 정정하고자 하는 단어를 식별할 수 있다.
일 실시예에서, 전자 장치(2000)는 수신된 제2 음성 신호가 제1 음성 신호의 인식 결과를 정정하기 위한 음성 신호로 식별된 경우, 관심 단어(Word Of Interest; WOI) 식별 모델을 이용하여 제1 음성 신호의 대화 문장에서 정정될 정정 후보 단어들을 식별할 수 있다.
이 경우 관심 단어 식별 모델은, 제1 음성 신호의 대화 문장 내 정정 대상이 될 수 있는 단어들의 비교 순서를 결정하기 위해, 정정 후보 의미 요소들을 레이블링(labeling)하여 출력할 수 있다. 정정 후보 의미 요소들은, 제1 텍스트 내의 정정 대상이 될 수 있는 단어들을 나타내는 의미 요소일 수 있다. 또한, 관심 단어 식별 모델은 학습을 통하여 생성된 인공지능 모델일 수 있다.
전자 장치(2000)는 관심 단어 식별 모델로부터 출력된 정정 후보 단어들 만을 사용자(100)가 정정하려는 단어와 비교하여, 제1 음성 신호를 정정할 수 있다.
예를 들어, 제1 음성 신호의 대화 문장은 "Please call Mark" 였으나, 제1 음성 신호의 인식 결과가 "Please call Mike." 이고, 제2 음성 신호의 대화 문장이 "No, Mark!"인 경우, 전자 장치(2000)는 관심 단어 식별 모델을 이용하여 제1 음성의 인식 결과 내의 정정 후보 단어 'Mike'를 식별하고, 사용자(100)가 정정하려는 단어 'Mark'와 비교함으로써 제1 음성 신호의 인식 결과를 정정한 결과인 "Please call Mark"를 획득할 수 있다.
전자 장치(2000)는 정정된 결과의 대화 문장 "Please call Mark."에 대한 응답으로, 자연어 생성(Natural Language Generation; NLG) 모델을 이용하여 생성한 대화 문장 "Ok, I'll call Mark."를 출력함으로써, 사용자(100)의 발화를 정정한 결과를 사용자(100)에게 제공할 수 있다.
도 2는 일 실시예에 따른 전자 장치의 구성을 설명하기 위한 블록도이다.
도 2를 참조하면, 일 실시예에 따른 전자 장치(2000)는 입력 인터페이스(2100), 출력 인터페이스(2200), 통신 인터페이스(2300), 프로세서(2400) 및 저장부(2500)를 포함할 수 있다.
일 실시예에 따른 전자 장치(2000)는 자연어 응답 서비스를 제공하는 전자 장치일 수 있다. 전자 장치(2000)는 예를 들어, 자연어 응답 서비스가 탑재될 수 있는 스마트 폰, 태블릿 PC, PC, 랩톱, 스마트 TV, 스마트 냉장고, 인공지능 스피커 등의 장치일 수 있다. 다만, 이에 한정되지 않으며, 일 실시예에 따른 전자 장치(2000)는 자연어 응답 서비스를 제공하는 서버일 수 있다.
일 실시예에 따른 입력 인터페이스(2100)는, 사용자가 전자 장치(2000)를 제어하기 위한 데이터를 입력하는 수단을 의미할 수 있다. 예를 들어, 입력 인터페이스(2100)에는 마이크, 키 패드(key pad), 돔 스위치 (dome switch), 터치 패드(예를 들어, 접촉식 정전 용량 방식, 압력식 저항막 방식, 적외선 감지 방식, 표면 초음파 전도 방식, 적분식 장력 측정 방식, 피에조 효과 방식 등), 조그 휠, 조그 스위치 등이 있을 수 있으나 이에 한정되는 것은 아니다. 입력 인터페이스(2100)는 전자 장치(2000)의 사용자의 음성 명령을 수신할 수 있다.
일 실시예에 따른 출력 인터페이스(2200)는, 오디오 신호 또는 비디오 신호 또는 진동 신호를 출력할 수 있으며, 출력 인터페이스(2200)는 디스플레이부, 음향 출력 인터페이스, 또는 진동 모터 중 적어도 하나를 포함할 수 있다.
통신 인터페이스(2300)는 프로세서(2400)의 제어에 의해, 자연어 응답 서비스를 제공하는 데 필요한 다른 주변 디바이스들 또는 자연어 응답 서비스를 제공하는 서버와 데이터 통신을 수행할 수 있다.
통신 인터페이스(2300)는 예를 들어, 유선 랜, 무선 랜(Wireless LAN), 와이파이(Wi-Fi), 블루투스(Bluetooth), 지그비(zigbee), WFD(Wi-Fi Direct), 적외선 통신(IrDA, infrared Data Association), BLE (Bluetooth Low Energy), NFC(Near Field Communication), 와이브로(Wireless Broadband Internet, Wibro), 와이맥스(World Interoperability for Microwave Access, WiMAX), SWAP(Shared Wireless Access Protocol), 와이기그(Wireless Gigabit Allicance, WiGig) 및 RF 통신을 포함하는 데이터 통신 방식 중 적어도 하나를 이용하여 자연어 응답 서비스를 제공하는 데 필요한 다른 주변 디바이스들 또는 자연어 응답 서비스를 제공하는 서버와 데이터 통신을 수행할 수 있다.
일 실시예에 따른 통신 인터페이스(2300)는 사용자의 제1 음성 신호 및 제2 음성 신호를 다른 주변 디바이스들 또는 서버로부터 수신할 수 있다.
프로세서(2400)는 저장부(2500)에 저장된 프로그램의 하나 이상의 명령어들(instructions)을 실행할 수 있다. 프로세서(2400)는 산술, 로직 및 입출력 연산과 시그널 프로세싱을 수행하는 하드웨어 구성 요소로 구성될 수 있다.
프로세서(2400)는 예를 들어, 중앙 처리 장치(Central Processing Unit), 마이크로 프로세서(microprocessor), 그래픽 프로세서(Graphic Processing Unit), ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), AP(Application Processor), 뉴럴 프로세서(Neural Processing Unit) 또는 인공지능 모델의 처리에 특화된 하드웨어 구조로 설계된 인공지능 전용 프로세서 중 적어도 하나로 구성될 수 있으나, 이에 제한되는 것은 아니다.
일 실시예에 따른 프로세서(2400)는 수신된 사용자의 제1 음성 신호 및 제2 음성 신호에 대하여, 자동 음성 인식(Automatic Speech Recognition; ASR)을 수행하여, 음성 신호를 텍스트로 변환할 수 있다. 또한, 프로세서(2400)는 자연어 이해 모델(Natural Language Understanding Model; NLU Model)(2522)을 이용하여 음성 신호로부터 변환된 텍스트들을 분석하고, 분석 결과에 기초하여 사용자에게 자연어 응답 서비스를 제공할 수 있다.
저장부(2500)는 예를 들어, 플래시 메모리 타입(flash memory type), 하드디스크 타입(hard disk type), 멀티미디어 카드 마이크로 타입(multimedia card micro type), 카드 타입의 메모리(예를 들어 SD 또는 XD 메모리 등), 롬(ROM, Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나를 포함하는 비휘발성 메모리 및 램(RAM, Random Access Memory) 또는 SRAM(Static Random Access Memory)과 같은 휘발성 메모리를 포함할 수 있다.
저장부(2500)에는 프로세서(2400)가 판독할 수 있는 명령어들, 데이터 구조, 및 프로그램 코드(program code)가 저장될 수 있다. 개시된 실시예들에서, 프로세서(2400)가 수행하는 동작들은 저장부(2500)에 저장된 프로그램의 명령어들 또는 코드들을 실행함으로써 구현될 수 있다. 또한, 저장부(2500)에는 음성 인식 모듈(2510), 자연어 처리 모듈(2520), 정정 모듈(2530)에 대응되는 데이터 및 프로그램 명령어 코드들이 저장될 수 있다.
일 실시예에서, 프로세서(2400)는 음성 인식 모듈(2510)에 포함되는 ASR 모델(2512)을 이용하여, 사용자로부터 수신된 음성 신호에 ASR을 수행하고, 수신된 음성 신호를 텍스트로 변환할 수 있다. ASR 모델(2512)은, 음향 모델(acoustic model; AM) 또는 언어 모델(language model; LM) 등을 포함할 수 있으나, 이에 한정되는 것은 아니다.
일 실시예에서, 프로세서(2400)는 자연어 처리 모듈(2520)에 포함되는 자연어 이해 모델(2522) 및 자연어 생성 모델(2524)을 이용하여, 사용자로부터 발화된 대화 문장의 의도를 식별하고, 사용자의 의도에 대응되는 응답 문장을 생성할 수 있다.
프로세서(2400)는 자연어 이해 모델(2522)을 이용하여, ASR 모델(2512)을 통해 획득된 텍스트를 해석함으로써 텍스트의 의도를 나타내는 인텐트 및 대화 문장의 구성 요소들을 나타내는 개체를 식별할 수 있다.
프로세서(2400)는 자연어 생성 모델(2524)을 이용하여, 사용자의 음성 신호에 따른 전자 장치의 동작을 수행할지 확인 요청하기 위한 메시지를 나타내는 자연어를 생성할 수 있다.
일 실시예에서, 프로세서(2400)는 정정 모듈(2530)을 이용하여, 사용자 응답에 기초하여 오인식된 음성 인식 결과를 정정할 수 있다.
일 실시예에 따른 정정 모듈(2530)은 정정 의도 식별 모듈(2532), 정정 후보 결정 모듈(2534), 텍스트 비교 모듈(2536)을 포함할 수 있다.
프로세서(2400)는 정정 의도 식별 모듈(2532)을 이용하여, 사용자의 제1 음성 신호가 입력된 이후에 입력되는 제2 음성 신호가 제1 음성 신호의 인식 결과를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다. 제1 음성 신호의 인식 결과는, 제1 음성 신호에 ASR을 수행하여 획득된, 제1 텍스트일 수 있다.
정정 의도 식별 모듈(2532)은 제2 음성 신호로부터 획득된 제2 텍스트를 분석하여 제2 음성 신호가 제1 음성 신호의 인식 결과를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다.
일 실시예에서, 정정 의도 식별 모듈(2532)은 룰 기반 분석 방법을 이용하여 제2 텍스트를 분석할 수 있다. 정정 의도 식별 모듈(2352)은 제1 음성 신호의 인식 결과를 정정하고자 하는 의도를 나타내는 단어를 제2 텍스트로부터 추출할 수 있다. 정정 의도 식별 모듈(2352)은 제2 텍스트 내의 정정 의도를 나타내는 단어의 포함 여부에 기초하여 제2 음성 신호가 제1 음성 신호의 인식 결과를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다.
일 실시예에서, 정정 의도 식별 모듈(2532)은 자연어 이해 모델을 이용하여 제2 텍스트를 분석할 수 있다. 정정 의도 식별 모듈(2532)은 제2 텍스트를 파싱하고, 제2 텍스트의 의도를 나타내는 인텐트 및 제2 텍스트 문장의 구성 요소들을 나타내는 개체들을 식별할 수 있다.
정정 의도 식별 모듈(2532)은 식별된 제2 음성 신호의 인텐트가 '정정' 도메인에 포함되는 인텐트인지 여부에 기초하여 제2 음성 신호가 제1 음성 신호의 인식 결과를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다. 이 경우, 도메인은, 자연어 이해 모델이 텍스트를 분석하여 인텐트를 식별할 때, 인텐트를 분류하기 위해 자연어 이해 모델에서 기 설정된 인텐트의 카테고리를 의미할 수 있다.
프로세서(2400)는 정정 후보 결정 모듈(2534)을 이용하여, 제1 음성 신호로부터 변환된 제1 텍스트 내의 의미 요소들 중에서 정정의 대상이 될 수 있는 정정 후보 의미 요소들을 식별할 수 있다. 이 경우, 의미 요소는 문장을 구성하는 구성 요소들 중에서, 의미를 갖는 단위의 구성 요소일 수 있다.
일 실시예에서, 관심 단어 식별 모델(2535)은 학습을 통해 생성된 인공지능 모델일 수 있다. 관심 단어 식별 모델은, 자연어 이해 모델(2522)로부터 식별된 인텐트 및 개체들을 입력 받아, 의미 요소들을 출력할 수 있다.
정정 후보 결정 모듈(2534)은 제2 음성 신호가 제1 음성 신호의 인식 결과를 정정하기 위한 음성 신호인 경우, 관심 단어 식별 모델(2535)을 이용하여 제1 텍스트 내의 정정 대상이 될 수 있는 정정 후보 의미 요소들을 식별할 수 있다.
일 실시예에서, 정정 후보 결정 모듈(2534)은 정정 후보 의미 요소들의 정정 우선 순위를 결정할 수 있다. 일 실시예에서, 텍스트 비교 모듈(2536)에 의해 정정 후보 의미 요소들이 제2 텍스트 내의 의미 요소와 비교될 때, 정정 우선 순위에 기초하여 순차적으로 의미 요소들이 비교될 수 있다.
프로세서(2400)는 텍스트 비교 모듈(2536)을 이용하여, 제1 텍스트 내의 정정 후보 의미 요소들을 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소와 비교할 수 있다.
일 실시예에서, 텍스트 비교 모듈(2536)은 제1 텍스트 내의 정정 후보 의미 요소들을 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소와 비교할 수 있다.
텍스트 비교 모듈(2536)은 제1 텍스트 내의 정정 후보 의미 요소가 복수개인 경우, 정정 우선 순위에 기초하여 복수의 정정 후보 의미 요소들을 제2 텍스트 내의 의미 요소와 비교할 수 있다. 텍스트 비교 모듈(2536)은 제1 텍스트 내의 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소의 차이를 나타내는 차이 값을 산출하고, 산출된 차이 값에 기초하여 제1 텍스트 내의 적어도 하나의 의미 요소를 정정할 수 있다.
텍스트 비교 모듈(2536)은 산출된 차이 값이 소정 임계값 미만이어서, 제1 텍스트 내의 정정 후보 의미 요소가 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소와 유사하다고 식별되는 경우, 제2 텍스트 내의 의미 요소와 유사하다고 식별된 정정 후보 의미 요소를 정정 대상 의미 요소로 결정할 수 있다.
텍스트 비교 모듈(2536)은 정정 대상 의미 요소를 제2 텍스트 내의 의미 요소로 치환함으로써 제1 텍스트를 정정할 수 있다.
한편, 일 실시예에 따른 전자 장치(2000)가 제1 음성 신호를 정정하기 위한 세부적인 동작에 대하여는 도 3 내지 도 15에 대한 설명에서 보다 상세히 설명하기로 한다.
도 3은 일 실시예에 따른 전자 장치에 포함되는 복수의 모듈들의 동작들을 설명하기 위한 도면이다.
도 3을 참조하면, 일 실시예에 따른 전자 장치(2000)는 적어도 음성 인식 모듈(2510), 자연어 처리 모듈(2520), 정정 모듈(2530)을 포함할 수 있다.
단계 S310에서, 일 실시예에 따른 전자 장치(2000)는 음성 인식 모듈(2510)을 이용하여, 사용자로부터 발화된 제1 음성 신호에 자동 음성 인식(Automatic Speech Recognition; ASR)을 수행할 수 있다. 전자 장치(2000)는 ASR을 수행함으로써 사용자의 제1 음성 신호를 텍스트로 전사(transcribe)한 제1 텍스트를 획득할 수 있다.
단계 S320에서, 일 실시예에 따른 전자 장치(2000)는 자연어 처리 모듈(2520)을 이용하여, 제1 텍스트를 분석할 수 있다. 이 경우, 자연어 처리 모듈(2520)에 입력되는 텍스트는, 단계 S310에서 출력된, 제1 음성 신호로부터 획득된 제1 텍스트일 수 있다. 또는, 자연어 처리 모듈(2520)에 입력되는 텍스트는 단계 S380에서 출력된, 제1 텍스트를 정정한 텍스트일 수 있다. 이하에서는, 설명의 편의를 위해 단계 S310으로부터 출력된 제1 텍스트를 예시로 설명하기로 한다.
일 실시예에서, 전자 장치(2000)는 자연어 이해 모델(2522)을 이용하여, 제1 텍스트를 파싱(parsing)하고, 제1 음성 신호의 발화 의도를 나타내는 인텐트(intent) 및 대화 문장의 구성 요소들을 나타내는 개체(entity)를 식별할 수 있다. 또한, 전자 장치(2000)는 식별된 인텐트의 신뢰도 점수(confidence score)를 함께 획득할 수 있다. 이 경우, 인텐트의 신뢰도 점수는, 자연어 이해 모델(2522)이 사용자의 음성 신호로부터 변환된 텍스트로부터 사용자의 의도를 나타내는 인텐트를 얼마나 정확하게 예측하였는지를 나타내는 점수를 의미할 수 있다.
단계 S330에서, 일 실시예에 따른 전자 장치(2000)는 제1 텍스트 분석 결과에 기초하여, 사용자의 제1 음성 신호에 따른 동작을 수행할 지를 사용자에게 확인 받기 위한 확인 요청 메시지를 출력할 수 있다.
전자 장치(2000)는 자연어 생성(Natural Language Generation; NLG) 모델을 이용하여, 제1 음성 신호의 인텐트 및 개체들과 관련된 발화 데이터를 생성하고 편집함으로써 확인 요청 메시지를 생성하여 출력할 수 있다.
일 실시예에서, 확인 요청 메시지는 전자 장치(2000)의 출력 인터페이스를 통해 출력될 수 있다. 전자 장치(2000)는 비디오 신호의 형태로 확인 요청 메시지를 디스플레이 상에 출력하거나, 오디오 신호 형태로 확인 요청 메시지를 스피커를 통해 출력할 수 있다.
단계 S340에서, 일 실시예에 따른 전자 장치(2000)는 사용자로부터 발화된 제2 음성 신호에 자동 음성 인식(Automatic Speech Recognition; ASR)을 수행할 수 있다. 전자 장치(2000)는, 사용자의 제2 음성 신호를 텍스트로 전사(transcribe)한 제2 텍스트를 획득할 수 있다. 이 경우, 제2 음성 신호는 전자 장치(2000)에서 확인 요청 메시지가 출력된 이후에, 전자 장치(2000)로 입력되는 음성 신호일 수 있다.
일 실시예에서, 제2 음성 신호는 제1 음성 신호의 인식 결과를 정정하기 위한 사용자의 음성 신호 또는 제1 음성 신호의 인식 결과가 적합함을 확인하는 사용자의 음성 신호를 포함할 수 있다.
전자 장치(2000)의 사용자는 전자 장치(2000)로부터 출력된 확인 요청 메시지가 사용자의 의도와 상이하다고 판단되면, 제1 음성 신호의 인식 결과를 정정하기 위한 제2 음성 신호를 전자 장치(2000)에 입력할 수 있다.
전자 장치(2000)의 사용자는 전자 장치(2000)로부터 출력된 확인 요청 메시지가 사용자의 의도에 부합한다고 판단되면, 제1 음성 신호의 인식 결과가 적합함을 확인하는 제2 음성 신호를 전자 장치(2000)에 입력할 수 있다.
단계 S350에서, 일 실시예에 따른 전자 장치(2000)는 정정 모듈(2530)에 포함되는 정정 의도 식별 모듈(2532)을 이용하여, 제1 음성 신호가 입력된 이후에 사용자로부터 발화된 제2 음성 신호의 의도를 식별할 수 있다. 전자 장치(2000)는 제2 음성 신호가 제1 음성 신호의 음성 인식 결과인 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다.
일 실시예에서, 전자 장치(2000)는 룰 기반 분석 방법을 이용하여, 제2 텍스트를 분석할 수 있다. 전자 장치(2000)는 제2 텍스트 내에서 제1 텍스트를 정정하고자 하는 의도의 단어(예를 들어, '아니오')가 포함되는지 여부를 식별할 수 있다. 전자 장치(2000)는 제2 텍스트 내에서 제1 텍스트를 정정하고자 하는 단어가 포함되는 경우, 제2 음성 신호를 제1 텍스트를 정정하기 위한 음성 신호로 식별할 수 있다.
일 실시예에서, 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호로 식별된 경우, 전자 장치(2000)는 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소를 식별할 수 있다.
일 실시예에서, 전자 장치(2000)는 자연어 이해 모델(2522)을 이용하여, 제2 텍스트를 분석할 수 있다. 전자 장치(2000)는 제2 텍스트를 파싱하고, 제2 음성 신호의 발화 의도를 나타내는 인텐트 및 문장의 구성 요소들을 나타내는 개체들을 식별할 수 있다. 전자 장치(2000)는 식별된 제2 음성 신호의 인텐트의 도메인에 기초하여, 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다. 이 경우 인텐트의 도메인은, 인텐트를 분류하기 위해 기 설정된 인텐트의 카테고리를 의미할 수 있다. 자연어 이해 모델(2522)로부터 출력된 제2 음성 신호의 인텐트의 도메인이 '정정' 도메인에 대응되는 경우에, 전자 장치(2000)는 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호임을 식별할 수 있다.
일 실시예에서, 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호로 식별된 경우, 전자 장치(2000)는 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소를 식별할 수 있다.
일 실시예에서, 전자 장치(2000)는 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호가 아닌 것(예를 들어, 제1 음성 신호 인식 결과가 적합함을 확인)으로 식별되는 경우, 단계 S355를 수행할 수 있다.
일 실시예에서, 전자 장치(2000)는 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호인 것으로 식별되는 경우, 단계 S360을 수행할 수 있다.
단계 S355에서, 일 실시예에 따른 전자 장치(2000)는 제1 음성 신호에 대한 사용자의 승인 의도가 식별되면, 제1 음성 신호의 인텐트에 대응되는 태스크를 수행할 수 있다.
단계 S360에서, 일 실시예에 따른 전자 장치(2000)는 정정 모듈(2530)에 포함되는 정정 후보 결정 모듈(2534)을 이용하여, 제1 텍스트 내의 정정 후보 의미 요소들을 식별할 수 있다.
전자 장치(2000)는 제1 음성 신호에 대한 사용자의 정정 의도가 제2 음성 신호로부터 식별되면, 관심 단어 식별 모델(2535)을 이용하여 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 식별할 수 있다. 이 경우, 관심 단어 식별 모델(2535)은 학습을 통하여 획득된 인공지능 모델일 수 있다. 또한, 관심 단어 식별 모델(2535)에서 출력되는 복수의 정정 후보 의미 요소들은, 각각의 정정 후보 의미 요소가 레이블링(labeling)되어 있을 수 있다. 전자 장치(2000)는 정정 후보 의미 요소들의 레이블에 기초하여, 제1 텍스트 내의 정정 대상이 될 수 있는 정정 후보 의미 요소들이 제2 텍스트의 의미 요소와 비교되는 순서를 결정할 수 있다. 관심 단어 식별 모델(2535)로부터 출력되는 복수의 정정 후보 의미 요소들에 대해서는, 도 7에 대한 설명에서 추가적으로 서술하기로 한다.
단계 S370에서, 일 실시예에 따른 전자 장치(2000)는 정정 모듈(2530)에 포함되는 정정 후보 결정 모듈(2534)을 이용하여, 단계 S350에서 식별된 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정할 수 있다. 전자 장치(2000)는 제1 텍스트의 인텐트의 신뢰도 점수 및, 관심 단어 식별 모델(2535)로부터 레이블링되어 출력된 복수의 정정 후보 의미 요소들에 기초하여, 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정할 수 있다. 예를 들어, 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수가 소정 임계값 이상인 경우, 동일한 레이블로 레이블링 된 제1 의미 요소들을 제2 텍스트 내의 의미 요소와 비교할 수 있다. 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수가 소정 임계값 미만인 경우, 제1 의미 요소와 다른 레이블로 레이블링 된 제2 의미 요소를 제2 텍스트 내의 의미 요소와 비교할 수 있다.
단계 S380에서, 일 실시예에 따른 전자 장치(2000)는 정정 모듈(2530)에 포함되는 텍스트 비교 모듈(2536)을 이용하여, 제1 텍스트 및 제2 텍스트의 유사도를 나타내는 점수를 산출하고, 산출된 유사도 점수에 기초하여 제1 텍스트를 정정할 수 있다.
전자 장치(2000)는 결정된 정정 우선 순위에 기초하여, 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소를 정정 후보 결정 모듈(2534)에서 결정된 정정 후보 의미 요소들에 각각에 대하여 순차적으로 비교할 수 있다. 전자 장치(2000)는 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소 비교 결과에 기초하여, 제1 텍스트 내의 의미 요소를 정정할 수 있다. 전자 장치(2000)는 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소의 유사도 점수에 기초하여, 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소가 유사하다고 판단할 수 있다. 이 경우, 전자 장치(2000)는 제2 텍스트 내의 의미 요소와 유사하다고 판단된 정정 후보 의미 요소를 제2 텍스트 내의 의미 요소로 치환할 수 있다.
단계 S380 이후에, 전자 장치(2000)는 정정된 제1 텍스트를 분석하기 위하여, 단계 S320을 다시 수행할 수 있다.
도 4는 도 3을 더 설명하기 위한 도면으로, 일 실시예에 따른 전자 장치가 사용자로부터 입력된 음성 신호를 정정하는 예시를 설명하기 위한 도면이다.
도 4를 참조하면, 일 실시예에 따른 전자 장치(2000)는 사용자로부터 발화된 제1 음성 신호(402)를 수신할 수 있다. 이 경우, 제1 음성 신호의 대화 문장은 "Send a text to Mark wake up."일 수 있다.
단계 S410에서, 일 실시예에 따른 전자 장치(2000)는 수신된 제1 음성 신호(402)에 자동 음성 인식(ASR)을 수행하여, 제1 음성 신호(402)를 전사한 문장인 제1 텍스트 "Send a text to Mike wake up"를 획득할 수 있다. 이 경우, 제1 음성 신호에 노이즈 등이 있거나 자동 음성 인식의 수행 결과가 부정확하여, 제1 텍스트의 대화 문장이 사용자로부터 발화된 대화 문장과 다를 수 있다. 예를 들어, 사용자로부터 발화된 제1 음성 신호(402)의 대화 문장은 "Send a text to Mark wake up."인 반면에, 전자 장치(2000)가 제1 음성 신호(402)를 인식하여 출력한 대화 문장은 "Send wake up to Mike?"일 수 있다. 즉, 사용자는 Mark에게 메시지를 보내고자 음성을 발화하였으나, 전자 장치(2000)에서 인식된 결과는 Mike일 수 있다. 단계 S410은 도 3의 단계 S310에 대응될 수 있다.
단계 S420에서, 일 실시예에 따른 전자 장치(2000)는 획득된 제1 텍스트를 자연어 이해 모델(2522)에 적용하여, 제1 음성 신호의 인텐트, 인텐트의 신뢰도 점수 및 대화 문장의 구성 요소들을 나타내는 개체(entity)들을 식별할 수 있다. 예를 들어, 전자 장치(2000)는 제1 음성 신호(402)의 인텐트인 '메시지', 인텐트의 신뢰도 점수 '0.95' 및 개체들 'Mike', 'Wake up'을 획득할 수 있다. 단계 S420은 도 3의 단계 S320에 대응될 수 있다.
단계 S430에서, 일 실시예에 따른 전자 장치(2000)는 자연어 이해 모델(2524)을 이용하여, 제1 텍스트 분석 결과 식별된 사용자의 명령을 확인하기 위한 확인 요청을 출력할 수 있다. 전자 장치(2000)는 사용자가 Mike에게 메시지를 보내려고 하는 것인지 확인하기 위하여, "Send Wake up to Mike?"의 대화 문장을 출력할 수 있다. 이 경우, 전자 장치(2000)로부터 출력되는 대화 문장은 오디오 또는 텍스트 형태일 수 있으나, 이에 한정되는 것은 아니다. 단계 S430은 도 3의 단계 S330에 대응될 수 있다.
일 실시예에 따른 전자 장치의 사용자는, 단계 S430에서 출력되는 확인 요청에 응답하여, 추가로 음성을 발화할 수 있다. 사용자는 전자 장치(2000)에서 출력되는 확인 요청이 사용자의 음성이 오인식된 결과에 기초한 것으로 판단되는 경우, 오인식된 결과를 정정하기 위한 제2 음성 신호(404)를 발화할 수 있다. 예를 들어, 제2 음성 신호의 대화 문장은 "No, Mark!"일 수 있다. 전자 장치(2000)는 사용자로부터 발화된 제2 음성 신호(404)를 수신하고, 수신된 제2 음성 신호(404)에 기초하여 제1 음성 신호(402)의 인식 결과를 정정할 수 있다.
단계 S440에서, 일 실시예에 따른 전자 장치(2000)는 수신된 제2 음성 신호(404)에 자동 음성 인식(ASR)을 수행할 수 있다. 전자 장치(2000)는 제2 음성 신호(404)를 전사한 문장인 제2 텍스트 "No, Mark!"를 획득할 수 있다. 단계 S440은 도 3의 단계 S340에 대응될 수 있다.
단계 S450에서, 일 실시예에 따른 전자 장치(2000)는 정정 의도 식별 모듈(2532)을 이용하여, 사용자의 후속 발화인 제2 음성 신호(404)의 의도를 식별할 수 있다. 예를 들어, 전자 장치(2000)는 제2 음성 신호(404)가 제1 음성 신호(402)의 음성 인식 결과인 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다. 예를 들어, 전자 장치(2000)는 제2 음성 신호(404)의 인텐트인 '정정' 및 사용자가 정정하고자 하는 의미 요소 "Mark"를 식별할 수 있다. 단계 S450은 도 3의 단계 S350에 대응될 수 있다.
단계 S460에서, 일 실시예에 따른 전자 장치(2000)는 제2 음성 신호(404)가 제1 텍스트를 정정하려는 음성 신호인 것으로 식별되면, 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 식별할 수 있다. 이 경우, 전자 장치(2000)는 관심 단어 식별 모델(2535)을 이용하여 복수의 정정 후보 의미 요소들을 식별할 수 있다. 예를 들어, 전자 장치(2000)는 제1 텍스트 “Send a text to Mike wake up”에 대하여, 제1 텍스트 내의 정정 대상이 될 수 있는 정정 후보 의미 요소들로 'Mike' 및 'text'를 식별할 수 있다. 일 실시예에 따른 관심 단어 식별 모델(2535)은 제1 텍스트를 자연어 이해 모델(2522)에 적용하여 출력되는 제1 음성 신호(402)의 인텐트, 인텐트의 신뢰도 점수 및 개체들 중 적어도 일부를 입력으로 받아, 제1 텍스트 내의 정정 대상이 될 수 있는 정정 후보 의미 요소들을 출력할 수 있다. 전자 장치(2000)는 정정 후보 의미 요소들을 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소와 비교하고, 비교 결과에 기초하여 정정 후보 의미 요소들 중 적어도 하나를 정정할 수 있다.
또한, 관심 단어 식별 모델(2535)에서 출력되는 복수의 정정 후보 의미 요소들은, 각각의 정정 후보 의미 요소가 서로 다른 레이블로 레이블링(labeling)되어 있을 수 있다. 예를 들어, 관심 단어 식별 모델(2535)은 각각 서로 다른 레이블로 레이블링 된 정정 후보 의미 요소들로, 제1 정정 후보 의미 요소인 'Mike', 제2 정정 후보 의미 요소인 'text'를 출력할 수 있다. 전자 장치(2000)는 정정 후보 의미 요소들의 레이블에 기초하여, 제1 텍스트 내의 정정 대상이 될 수 있는 정정 후보 의미 요소들이 제2 텍스트의 의미 요소와 비교되는 순서를 결정할 수 있다. 단계 S460은 도 3의 단계 S360에 대응될 수 있다.
단계 S470에서, 일 실시예에 따른 전자 장치(2000)는 정정 후보 결정 모듈(2534)을 이용하여, 정정 후보 의미 요소들이 제2 텍스트 내의 의미 요소와 비교되는 순서인 정정 우선 순위를 결정할 수 있다. 이 경우, 정정 우선 순위는 정정 후보 의미 요소들에 레이블에 기초하여 결정될 수 있다. 정정 후보 의미 요소들이 비교되는 정정 우선 순위에 관해서는, 도 8 내지 도 13에 대한 설명에서 더 서술하기로 한다. 단계 S470은 도 3의 단계 S370에 대응될 수 있다.
단계 S480에서, 일 실시예에 따른 전자 장치(2000)는 텍스트 비교 모듈(2536)을 이용하여 정정 후보 의미를 제2 텍스트 내의 의미 요소와 비교할 수 있다. 일 실시예에서, 정정 후보 의미 요소가 복수개인 경우, 전자 장치(2000)는 복수개의 정정 후보 의미 요소들을 단계 S470에서 결정된 정정 우선 순위에 기초하여 순차적으로 비교할 수 있다. 일 실시예에서, 단계 S470에서 결정된 정정 우선 순위는 제1 정정 후보 의미 요소가 제2 텍스트 내의 의미 요소와 먼저 비교되는 것일 수 있다. 예를 들어, 전자 장치(2000)는 먼저 제1 정정 후보 의미 요소인 'Mike'를 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소인 'Mark'와 비교할 수 있다. 전자 장치(2000)는 제1 정정 후보 의미 요소인 'Mike'와 제2 텍스트 내의 의미 요소인 'Mark'를 비교하여 차이 값을 산출할 수 있다. 전자 장치(2000)는 산출된 차이 값이 소정 임계값 이하인 경우, 제1 텍스트 내의 'Mike'를 'Mark'로 치환함으로써, 제1 텍스트를 정정할 수 있다. 단계 S480은 도 3의 단계 S380에 대응될 수 있다.
일 실시예에 따른 전자 장치(2000)는 정정된 제1 텍스트를 자연어 이해 모델(2522)에 적용하여 제1 텍스트를 분석할 수 있다. 전자 장치(2000)는 정정된 제1 텍스트를 분석하여, 제1 음성 신호(402)의 인텐트 '메시지', 인텐트의 신뢰도 점수 '0.95', 및 개체들 'Mark', 'Wake up'을 획득할 수 있다.
전자 장치(2000)는 정정된 제1 텍스트 분석 결과, 정정된 제1 음성 신호에 따른 동작을 수행할 지를 사용자에게 확인 받기 위한 확인 요청 메시지를 재출력할 수 있다. 예를 들어, 전자 장치(2000)는 사용자가 Mark에게 메시지를 보내려고 하는 것인지 확인하기 위하여, "Send Wake up to Mark?"의 대화 문장을 출력할 수 있다.
도 5는 일 실시예에 따른 전자 장치가 사용자의 발화로부터 정정 의도를 식별하는 방법을 설명하기 위한 도면이다.
일 실시예에서, 전자 장치(2000)는 정정 의도 식별 모듈(2532)을 이용하여 사용자의 제2 음성 신호의 의도를 식별할 수 있다. 전자 장치(2000)는 제1 음성 신호가 입력된 후 추가적으로 입력되는 사용자의 제2 음성 신호에 대하여, 사용자의 제2 음성 신호가 제1 음성 신호를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다.
일 실시예에서, 정정 의도 식별 모듈(2532)은 룰 기반 분석 방법을 이용하여 사용자의 정정 의도를 식별할 수 있다. 정정 의도 식별 모듈(2532)은 제2 음성 신호로부터 변환된 제2 텍스트 내에 사용자가 제1 텍스트의 내용을 정정하려는 의도를 나타내는 단어(예를 들어, 'No')가 포함되는지 여부에 기초하여, 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다. 또한, 정정 의도 식별 모듈(2532)은, 사용자가 제1 텍스트 내의 의미 요소를 정정하기 위해 발화한 단어를 나타내는 제2 텍스트 내의 의미 요소를 식별할 수 있다.
예를 들어, 제2 음성 신호의 대화 문장이 “No, to AAA”인 경우, 정정 의도 식별 모듈(2532)은 제2 텍스트 내의 사용자가 제1 텍스트를 정정하고자 하는 의도를 나타내는 단어 'No'를 식별하고, 사용자가 제1 텍스트 내의 의미 요소를 정정하기 위해 발화한 단어를 나타내는 의미 요소 'AAA' 를 식별할 수 있다.
다른 예에서, 정정 의도 식별 모듈(2532)은 제2 음성 신호로부터 변환된 제2 텍스트 내에 제1 텍스트의 내용을 승인하려는 의도를 나타내는 단어(예를 들어, 'Yes', 'Ok')가 포함되는지 여부에 기초하여, 제2 음성 신호가 제1 텍스트를 승인하기 위한 음성 신호인지 여부를 식별할 수 있다.
일 실시예에서, 정정 의도 식별 모듈(2532)은 자연어 이해 모델(2522)을 이용하여, 제2 텍스트를 파싱하고, 제2 음성 신호의 발화 의도를 나타내는 인텐트 및 문장의 구성 요소들을 나타내는 개체를 식별할 수 있다. 전자 장치(2000)는 식별된 제2 음성 신호의 인텐트가 '정정' 도메인에 포함되는 인텐트인지 여부에 기초하여, 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다. 또한, 일 실시예에 따른 정정 의도 식별 모듈(2532)은, 사용자가 제1 텍스트 내의 의미 요소를 정정하기 위해 발화한 단어를 나타내는, 제2 텍스트 내의 의미 요소를 식별할 수 있다.
도 6은 일 실시예에 따른 전자 장치가 사용자의 발화로부터 획득된 텍스트를 정정하기 위해 정정 후보 의미 요소들을 식별하고, 정정 우선 순위를 결정하는 방법을 설명하기 위한 도면이다.
도 6을 참조하면, 일 실시예에 따른 전자 장치(2000)는 정정 후보 결정 모듈(2534)을 이용하여, 사용자의 제1 음성 신호로부터 정정의 대상이 되는 정정 후보 의미 요소들을 식별할 수 있다. 전자 장치(2000)는 식별된 정정 후보 의미 요소들이 제2 텍스트 내의 의미 요소와 비교되는 순서인 정정 우선 순위를 결정할 수 있다.
일 실시예에 따른 관심 단어 식별 모델(2535)은 제1 음성 신호로부터 변환된 제1 텍스트, 제1 음성 신호의 인텐트 및 제1 음성 신호의 인텐트의 신뢰도 점수를 입력으로 받아, 제1 텍스트 내에서 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 출력할 수 있다. 이 경우, 관심 단어 식별 모델(2535)은 학습을 통해 생성된 인공지능 모델일 수 있다.
예를 들어, 관심 단어 식별 모델(2535)은 사용자의 제1 음성 신호로부터 변환된 제1 텍스트 “Send a message to AAA BBB”, 제1 음성 신호의 인텐트인 ‘메시지’, 제1 음성 신호의 인텐트의 신뢰도 점수 ‘0.95’를 입력 받아, 제1 텍스트 내의 정정 대상이 될 수 있는 정정 후보 의미 요소들 ‘message’, ‘AAA’, ‘BBB’를 출력할 수 있다.
일 실시예에 따른 정정 후보 결정 모듈(2534)은 관심 단어 식별 모델(2535)로부터 출력된 정정 후보 의미 요소들의 정정 우선 순위를 결정할 수 있다. 예를 들어, 정정 후보 결정 모듈(2534)은 복수의 정정 후보 의미 요소들을 소정 기준으로 분류하고, 제1 음성 신호의 인텐트의 신뢰도 점수에 기초하여 분류된 정정 후보 의미 요소들이 정정되는 우선 순위를 결정할 수 있다. 정정 후보 결정 모듈(2534)이 제1 음성 신호의 인텐트의 신뢰도 점수에 기초하여 정정 후보 의미 요소들의 우선 순위를 결정하는 구체적인 방법은, 도 8 내지 도 10에 대한 설명에서 더 서술하기로 한다.
다른 실시예에서, 관심 단어 식별 모델(2535)에서 출력되는 복수의 정정 후보 의미 요소들이 정정되는 우선 순위는, 기 결정 되어있을 수 있다. 이 경우, 관심 단어 식별 모델(2535)에서 출력되는 복수의 정정 후보 의미 요소들 및 정정 우선 순위에 기초하여, 제1 텍스트 내의 의미 요소들이 정정될 수 있다. 관심 단어 식별 모델(2535)에서 정정 후보 의미 요소들이 정정되는 정정 우선 순위가 기 결정된 실시예는, 도 11 내지 도 12에 대한 설명에서 더 서술하기로 한다.
한편, 일 실시예에 따른 관심 단어 식별 모델(2535)은, 자연어 이해 모델(2522)이 수행하는 기능을 통합하여, 자연어 이해를 수행할 수 있는 인공지능 모델일 수 있다. 일 실시예에서, 관심 단어 식별 모델(2535)은 ASR 모델(2512)을 이용하여 획득된 텍스트를 입력 받아, 텍스트를 파싱하고, 텍스트에 대응되는 음성 신호의 발화 의도를 나타내는 인텐트 및 문장의 구성 요소들을 나타내는 개체를 식별하도록 학습될 수 있다. 또한, 관심 단어 식별 모델(2535)은 입력된 텍스트, 관심 단어 식별 모델(2535)이 식별한 음성 신호의 인텐트 및 인텐트의 신뢰도 점수에 기초하여, 입력된 텍스트에서 정정 대상이 되는 관심 단어를 나타내는 의미 요소들을 식별하도록 학습될 수 있다.
도 7은 일 실시예에 따른 전자 장치의 정정 후보 의미 요소를 식별하는 관심 단어 식별 모델이 이용하는 데이터를 설명하기 위한 도면이다.
도 7을 참조하면, 일 실시예에 따른 전자 장치(2000)는 데이터 엔지니어링을 통해, 자연어 이해 모델(2522)로부터 출력되는 데이터들을 NLU 데이터(710)들을 가공하여 관심 단어 식별 모델 데이터(720)를 생성할 수 있다.
일 실시예에서, 자연어 이해 모델(2522)로부터 출력되는 NLU 데이터(710)는 발화 의도를 나타내는 인텐트, 인텐트의 신뢰도 점수 및 문장의 구성 요소들을 나타내는 개체들일 수 있다. 전자 장치(2000)는 인텐트 별로 분류된 NLU 데이터(710)를 가공하여, 관심 단어 식별 모델 데이터(720)를 생성할 수 있다. 이 경우, 관심 단어 식별 모델 데이터(720)는 제1 음성 신호의 인텐트와 관련된 단어들을 나타내는 의미 요소 및 제1 음성 신호의 인텐트를 나타내는 의미 요소를 포함할 수 있다.
일 실시예에서, 자연어 이해 모델(2522)에 의해 ‘메시지’의 인텐트로 분류된 대화 문장은 “Send a text to Jake”, “Send Ellen a message”, “Text wake up to my sister”등일 수 있다. 전자 장치(2000)는 각각의 대화 문장에 대하여, 인텐트를 나타내는 의미 요소 및 인텐트와 관련된 단어를 나타내는 의미 요소를 식별할 수 있다.
예를 들어, 대화 문장이 “Send a text to Jake”인 경우, 인텐트를 나타내는 의미 요소는, 대화 문장의 인텐트 ‘메시지 발송(Message)’의 의미에 대응되는 단어 ‘text’ 일 수 있다. 또한, 인텐트와 관련된 단어를 나타내는 의미 요소는, 메시지 발송의 대상을 나타내는 단어 ‘Jake’가 인텐트와 관련된 단어를 나타내는 의미 요소일 수 있다.
다른 예에서, 대화 문장이 “Send Ellen a message”인 경우, 인텐트를 나타내는 의미 요소는, 대화 문장의 인텐트 ‘메시지 발송(Message)’의 의미에 대응되는 단어 ‘message’ 일 수 있다. 또한, 인텐트와 관련된 단어를 나타내는 의미 요소는, 메시지 발송의 대상을 나타내는 단어 ‘Ellen’이 인텐트와 관련된 단어를 나타내는 의미 요소일 수 있다.
다른 예에서, 대화 문장이 “Text wake up to my sister”인 경우, 인텐트를 나타내는 의미 요소는, 대화 문장의 인텐트인 ‘메시지 발송(Message)’의 의미에 대응되는 단어 ‘Text’ 일 수 있다. 또한, 인텐트와 관련된 단어를 나타내는 의미 요소는, 메시지 발송의 대상을 나타내는 단어 ‘my sister’, 및 발송되는 메시지의 내용을 나타내는 단어 ‘wake up’이 인텐트와 관련된 단어를 나타내는 의미 요소일 수 있다.
일 실시예에서, 전자 장치(2000)는 인텐트를 나타내는 의미 요소를 식별하기 위해, 대화 문장 내의 특정 단어가 인텐트별로 분류된 통계치에 기초하여 인텐트를 나타내는 의미 요소를 결정할 수 있다.
일 실시예에서, 전자 장치(2000)는 대화 문장에 슬라이딩 윈도우 알고리즘을 적용하여, 대화 문장 내에서 복수의 단어들을 식별하고, 각각의 단어들이 인텐트를 나타내는 단어인지 여부를 결정할 수 있다. 전자 장치(2000)는 대화 문장 “Make a call to Jim”에 포함되는 특정 단어 ‘Call’에 대하여, 단어 ‘Call’이 인텐트별로 분류된 통계치(730)를 획득할 수 있다. 전자 장치(2000)는 획득된 통계치에 기초하여, 단어 ‘Call’이 어느 도메인의 인텐트에 포함되는 단어인지 여부를 결정할 수 있다. 이 경우, 단어 ‘Call’이 인텐트별로 분류된 통계치(730)를 참조하면, 단어 ‘Call’의 인텐트는 ‘전화 걸기(Phone call)’의 인텐트로 분류된 경우가 다른 인텐트(예를 들어, 메시지 발송(Massage), 리마인더(Reminder) 등)로 분류된 경우보다 많으므로, 전자 장치(2000)는 단어 ‘Call’을 ‘전화 걸기(Phone call)’의 인텐트를 나타내는 의미 요소로 결정할 수 있다.
전술한 실시예들에 따라, 일 실시예에 따른 전자 장치(2000)는 ‘메시지 발송(Message)’ 인텐트에 포함되는 대화 문장들에 내에, 인텐트와 관련된 단어들을 나타내는 의미 요소들 및 인텐트를 나타내는 의미 요소를 결정하여, 관심 단어 식별 모델 데이터(720)를 생성할 수 있다.
같은 방식으로, 전자 장치(2000)는 ‘전화 걸기(Phone call)’ 인텐트에 포함되는 대화 문장들 내에서, 인텐트와 관련된 단어들을 나타내는 의미 요소들 및 인텐트를 나타내는 의미 요소를 결정하여, 관심 단어 식별 모델 데이터(720)를 생성할 수 있다.
일 실시예에 따른 전자 장치(2000)는 복수의 대화 문장들을 자연어 이해 모델(2522)에 적용하여 획득된 NLU 데이터(710)를 이용하여, 관심 단어 식별 모델 데이터(720)를 생성할 수 있다. 전자 장치(2000)는 생성된 관심 단어 식별 모델 데이터(720)를 이용하여 관심 단어 식별 모델을 학습시킬 수 있다.
도 8은 일 실시예에 따른 전자 장치가 정정 후보 의미 요소를 식별하기 위한 인공지능 모델을 학습하는 방법을 설명하기 위한 도면이다.
도 8을 참조하면, 일 실시예에 따른 전자 장치(2000)는 도 7에서 전술한 관심 단어 식별 모델 데이터(720)를 이용하여, 관심 단어 식별 모델(2535)을 학습할 수 있다.
전자 장치(2000)는 복수의 대화 문장들로부터 획득된 텍스트들을 가공하여, 관심 단어 식별 모델(2535)을 학습할 수 있다. 아래에서는 설명의 편의를 위해, 관심 단어 식별 모델의 학습을 위한 데이터의 일 예시로, 대화 문장 “Show me the way to Seoul station in Seoul”으로부터 획득된 텍스트를 예시로 설명하기로 한다.
일 실시예에서, 전자 장치(2000)가 자연어 처리 모듈(2520)의 자연어 이해 모델(2522)을 이용하여 텍스트 “Show me the way to Seoul station in Seoul”를 분석한 결과, 대화 문장의 인텐트는 ‘네비게이션(Navigation)’이고, ‘네비게이션(Navigation)’의 인텐트를 나타내는 의미 요소는 ‘way’이고, 인텐트와 관련된 단어를 나타내는 의미 요소는 ‘Seoul station’ 및 ‘Seoul’일 수 있다.
전자 장치(2000)는 텍스트 내의 복수의 의미 요소들을 서로 다른 레이블로 레이블링하고, 레이블링 된 의미 요소들을 기초로 관심 단어 식별 모델(2535)을 학습할 수 있다. 예를 들어, 전자 장치(2000)는 인텐트를 나타내는 의미 요소 ‘way’의 레이블을 ‘1’로 레이블링하고, 인텐트와 관련된 단어를 나타내는 의미 요소 ‘Seoul station’ 및 ‘Seoul’의 레이블을 ‘2’로 레이블링 할 수 있다. 일 실시예에서, 전자 장치(2000)가 관심 단어 식별 모델 데이터(720)를 레이블링할 때, 단어 단위로 레이블링 할 수 있으나 이에 한정되지 않으며, 전자 장치(2000)는 관심 단어 식별 모델 데이터(720)를 관심 단어 식별 모델(2535)이 사용 가능한 소정 토큰 단위 (예를 들어, 음소(phoneme) 단위 또는 음절(syllable) 단위 등)로 레이블링 할 수 있다.
또한, 일 실시예에 따른 전자 장치(2000)는 각각의 인텐트의 도메인 별로 신뢰도 점수의 최소 값을 저장한, 참조 테이블(830)을 생성할 수 있다.
전자 장치(2000)는 복수의 대화 문장들을 자연어 처리 모듈(2520)에 적용하여 자연어 이해를 수행하고, 복수의 대화 문장들 각각에 대하여 인텐트 및 인텐트의 신뢰도 점수를 획득할 수 있다.
일 실시예에서, 전자 장치(2000)는 복수의 대화 문장들에 대해서 획득된 인텐트의 신뢰도 점수들을 인텐트의 도메인 별로 분류할 수 있다. 전자 장치(2000)는 각각의 인텐트 도메인에 분류된 신뢰도 점수의 최소값을 저장함으로써 참조 테이블(830)을 생성할 수 있다.
예를 들어, 전자 장치(2000)는 제1 대화 문장(822) “Show me the way to Seoul station in Seoul”의 텍스트를 자연어 처리 모듈(2520)에 적용하여, 제1 대화 문장의 인텐트 및 제1 대화 문장의 인텐트의 신뢰도 점수 ‘네비게이션:0.9’(824)를 획득할 수 있다. 또한, 전자 장치(2000)는 제2 대화 문장(826) “Where is South Delta Secondary School”의 텍스트를 자연어 처리 모듈(2520)에 적용하여, 제2 대화 문장의 인텐트 및 제2 대화 문장의 인텐트의 신뢰도 점수 ‘네비게이션:0.85’(828)를 획득할 수 있다. 이 경우, 전자 장치(2000)는 참조 테이블(830) 내 인텐트들의 도메인 중에서, ‘네비게이션’ 도메인 항목의 값을 획득된 인텐트의 신뢰도 점수들 중 최소값인 0.85로 설정할 수 있다. 즉, 전자 장치(2000)는 참조 테이블(830) 내의 인텐트 도메인 ‘네비게이션‘에 대해, 네비게이션 도메인으로 분류된 대화 문장들의 인텐트의 신뢰도 점수들 중에서 최소값을 참조 테이블(830)에 저장할 수 있다.
도 9는 일 실시예에 따른 전자 장치가 인공지능 모델을 이용하여 정정 후보 의미 요소를 식별하고, 식별된 정정 후보 의미 요소들이 정정되는 순서를 결정하는 방법을 설명하기 위한 도면이다.
도 9를 참조하면, 일 실시예에 따른 전자 장치(2000)는 정정 후보 결정 모듈(2534)을 이용하여, 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 식별하고, 식별된 정정 후보 의미 요소들이 정정되는 순서를 결정할 수 있다.
이하에서는, 설명의 편의를 위해 제1 텍스트가 “Show me the way to Seoul station in Seoul”인 경우를 예시로 들어 정정 후보 의미 요소들을 식별하고, 정정 후보 의미 요소들이 정정되는 순서를 결정하는 방법을 설명하기로 한다.
일 실시예에서, 전자 장치(2000)는 제1 음성 신호로부터 변환된 제1 텍스트를 자연어 처리 모듈(2520)에 입력하여 제1 음성 신호의 인텐트 및 인텐트의 신뢰도 점수를 획득할 수 있다. 예를 들어, 전자 장치(2000)는 대화 문장인 “Show me the way to Seoul station in Seoul”에 대응되는 제1 텍스트를 자연어 처리 모듈(2520)에 적용하고, 제1 음성 신호의 인텐트인 ‘네비게이션’ 및 인텐트의 신뢰도 점수 ‘0.9’를 획득할 수 있다.
일 실시예에서, 전자 장치(2000)는 관심 단어 식별 모델(2535)을 이용하여, 복수의 정정 후보 의미 요소들을 식별할 수 있다. 이 경우, 관심 단어 식별 모델(2535)은, 제1 음성 신호의 대화 문장 내 정정 대상이 될 수 있는 단어들의 비교 순서를 결정하기 위해 레이블링 된, 정정 후보 의미 요소들을 출력할 수 있다.
예를 들어, 전자 장치(2000)는 제1 텍스트 “Show me the way to Seoul station in Seoul” 및 인텐트 ‘네비게이션’을 관심 단어 식별 모델(2535)로 입력하여, 레이블 번호 ‘1’로 레이블링 된 제1 정정 후보 의미 요소 ‘Seoul station’ 및 ‘Seoul’을 식별할 수 있다. 또한, 전자 장치(2000)는 레이블 번호 ‘2’로 레이블링 된 제2 정정 후보 의미 요소 ‘way’를 식별할 수 있다. 이 경우, 제1 정정 후보 의미 요소는 인텐트 ‘네비게이션’과 관련된 의미 요소이고, 제2 정정 후보 의미 요소는 인텐트 ‘네비게이션’을 나타내는 의미 요소일 수 있다.
일 실시예에서, 전자 장치(2000)는 의미 요소 간 경계를 구분하기 위해 의미 요소들 각각에게 소정 태그를 부여하여 의미 요소들을 태깅(tagging)할 수 있다. 이 경우, 전자 장치(2000)가 의미 요소들을 태깅하는 방법으로, IOB(Inside-outside-beginning)의 태깅 포맷이 사용될 수 있으나, 이에 한정되지 않는다. 전자 장치(2000)는 의미 요소를 구성하는 복수의 토큰들을 태깅할 수 있다. 예를 들어, 의미 요소의 시작을 나타내는 토큰을 ‘B’(Beginning)로 태깅하고, 의미 요소에 포함되는 토큰을 ‘I’(Inside)로 태깅하고, 의미 요소에 해당하지 않는 토큰을 ‘O’(Outside)로 태깅할 수 있다. 구체적으로, 전자 장치(2000)는 의미 요소 ‘Seoul’에 대하여, 의미 요소의 시작 토큰인 ‘S’에 ‘B’ 태그를 부여하고, 의미 요소에 포함되는 토큰인 ‘e’, ‘o’, ‘u’, ‘l’ 각각에 ‘I’ 태그를 부여할 수 있다.
일 실시예에서, 전자 장치(2000)는 전술한 실시예들에 따라 레이블링 된 의미 요소들에 소정 태그를 부여함으로써 의미 요소들의 레이블링을 확장할 수 있다. 예를 들어, 전자 장치(2000)는 레이블 번호 ‘1’로 레이블링 된 제1 정정 후보 의미 요소 ‘Seoul’에 IOB 태깅 포맷의 태그를 부여하여, 의미 요소 ‘Seoul’의 레이블링을 확장할 수 있다. 구체적으로, 전자 장치(2000)는 레이블 번호 ‘1’로 레이블링 된 의미 요소 ‘Seoul’에 대하여, 의미 요소의 시작 토큰인 ‘S’에 ‘B’ 태그를 부여함으로써 의미 요소의 시작 토큰에 대응되는 레이블링을 ‘1-B’로 확장하고, 의미 요소에 포함되는 토큰인 e’, ‘o’, ‘u’, ‘l’ 각각에 ‘I’ 태그를 부여함으로써 의미 요소에 포함되는 토큰들 각각의 레이블링을 ‘1-I’로 확장할 수 있다.
전자 장치(2000)는 의미 요소 간 경계를 구분하기 위해 의미 요소를 구성하는 토큰들에 소정 태그를 부여하여 태깅함으로써, 텍스트 내에서 동일한 정정 후보 의미 요소가 연속되어 식별되더라도 각 의미 요소의 경계를 구별할 수 있다.
일 실시예에서, 전자 장치(2000)는 복수의 정정 후보 의미 요소들이 제2 텍스트의 의미 요소와 비교되는 순서를 결정할 수 있다.
일 실시예에서, 전자 장치(2000)는 정정 후보 결정 모듈(2534)을 이용하여, 제1 음성 신호의 인텐트 ‘네비게이션’ 및 인텐트의 신뢰도 점수 ‘0.9’를 참조 테이블(910)의 임계값과 비교할 수 있다. 이 경우, 참조 테이블(910)의 ‘네비게이션’ 도메인에 저장된 임계값인 ‘0.85’가 제1 음성 신호의 인텐트의 신뢰도 점수 ‘0.9’와 비교될 수 있다.
개시된 실시예에서, 정정 후보 결정 모듈(2534)은 제1 음성 신호의 인텐트 ‘네비게이션’의 신뢰도 점수 ‘0.9’가 참조 테이블(910)에 저장된 임계값 ‘0.85’보다 크므로, 인텐트의 신뢰도가 높아 사용자가 인텐트에 대응되는 의미 요소를 정정할 가능성이 낮다고 판단할 수 있다. 따라서, 정정 후보 결정 모듈(2534)은 인텐트와 관련된 의미 요소를 나타내는 제1 정정 후보 의미 요소를 인텐트를 나타내는 의미 요소인 제2 정정 후보 의미 요소보다 높은 정정 우선 순위로 결정할 수 있다. 이 경우, 제1 음성 신호를 정정하기 위해 제2 음성 신호가 입력되면, 제2 음성 신호 내의 의미 요소는 제1 정정 후보 의미 요소인 ‘Seoul station’ 및 ‘Seoul’과 먼저 비교될 수 있다.
전술한 실시예에서, 제2 텍스트 내의 의미 요소와 비교되는 제1 정정 후보 의미 요소는 복수개(예를 들어, ‘Seoul station’ 및 ‘Seoul’)일 수 있다. 전자 장치(2000)는 제1 정정 후보 의미 요소가 여러 개인 경우 제1 정정 후보 의미 요소를 제2 음성 신호 내의 의미 요소와 비교하는 비교 순서를 결정할 수 있다.
예를 들어, 전자 장치(2000)는 제1 텍스트의 문장 앞쪽에 위치하는 정정 후보 의미 요소가 먼저 비교되도록 비교 순서를 결정할 수 있다. 전자 장치(2000)는 제1 텍스트의 문장 앞쪽에 위치하는 제1 정정 후보 의미 요소부터 순차적으로 제1 정정 후보 의미 요소를 제2 텍스트 내의 의미 요소와 비교할 수 있다. 전자 장치(2000)는 제1 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소의 비교 결과, 제1 정정 후보 의미 요소가 제2 텍스트 내의 의미 요소가 유사하여 정정 대상으로 판단되는 경우, 제1 정정 후보 의미 요소를 정정할 수 있다. 다만, 전자 장치(2000)가 복수의 제1 정정 후보 의미 요소를 제2 음성 신호 내의 의미 요소와 비교하는 순서를 결정하는 방법은 이에 한정되는 것은 아니다.
다른 예에서, 전자 장치(2000)는 제1 텍스트 내의 복수개의 제1 정정 후보 의미 요소들을 각각을 제2 텍스트 내의 의미 요소와 비교하고, 각각의 제1 정정 후보 의미 요소들 중에서 제2 텍스트 내의 의미 요소와 가장 유사도가 높은 제1 정정 후보 의미 요소를 정정 대상으로 결정할 수 있다. 전자 장치(2000)는 정정 대상으로 결정된 제1 정정 후보 의미 요소를 정정할 수 있다.다른 실시예에서, 제1 음성 신호의 인텐트 ‘네비게이션’의 신뢰도 점수는 참조 테이블(910)에 저장된 임계값 ‘0.85’ 미만일 수 있다. 이 경우 식별된 인텐트의 신뢰도가 낮으므로, 정정 후보 결정 모듈(2534)은 사용자가 인텐트의 대응되는 의미 요소를 정정할 가능성이 높다고 판단할 수 있다. 따라서, 정정 후보 결정 모듈(2534)은 인텐트를 나타내는 의미 요소인 제2 정정 후보 의미 요소를 인텐트와 관련된 의미 요소를 나타내는 의미 요소인 제1 정정 후보 의미 요소보다 높은 정정 우선 순위로 결정할 수 있다. 전술한 실시예에서, 제2 텍스트 내의 의미 요소와 비교되는 제2 정정 후보 의미 요소는 복수개일 수 있다. 전자 장치(2000)는 제2 정정 후보 의미 요소가 여러 개인 경우, 제2 정정 후보 의미 요소를 제2 음성 신호 내의 의미 요소와 비교하는 비교 순서를 결정할 수 있다. 이는, 전술한 제1 정정 후보 의미 요소가 여러 개인 경우와 동일하므로, 설명을 생략하기로 한다.
도 10은 일 실시예에 따른 전자 장치가 도 8 및 도 9에서 서술한 방법에 따라, 사용자의 발화를 정정하는 방법을 설명하기 위한 도면이다.
도 10의 설명에서, 도 3 내지 도 4에 대한 설명에서 기 서술한 동작들은 설명을 생략하기로 한다.
개시된 실시예에서, 단계 S1010은 도 3의 단계 S310 내지 S330에 대응되고, 단계 S1015 내지 S1025는 도 3의 단계 S340 내지 S350에 대응될 수 있다.
단계 S1030에서, 일 실시예에 따른 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수에 대응하는 제1 임계값을 기 저장된 참조 테이블에서 검색할 수 있다. 예를 들어, 제1 음성 신호의 인텐트가 ‘네비게이션’이라면, 전자 장치(2000)는 기 저장된 참조 테이블에서 ‘네비게이션’ 도메인에 저장된 제1 임계값을 검색할 수 있다.
단계 S1040에서, 일 실시예에 따른 전자 장치(2000)는 정정 우선 순위를 결정할 수 있다. 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수를 제1 임계값과 비교할 수 있다. 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수가 제1 임계값 이상인 경우, 제1 음성 신호의 인텐트와 관련된 의미 요소를 나타내는 제1 정정 후보 의미 요소를 제2 텍스트 내의 의미 요소와 우선하여 비교할 수 있다. 또한, 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수가 제1 임계값 미만인 경우, 제1 음성 신호의 인텐트를 나타내는 제2 정정 후보 의미 요소를 제2 텍스트 내의 의미 요소와 비교할 수 있다.
단계 S1040에서, 일 실시예에 따른 전자 장치(2000)는 단계 S1035에서 결정된 정정 우선 순위에 기초하여, 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소의 유사도를 비교할 수 있다. 예를 들어, 전자 장치(2000)는 제1 텍스트 내의 정정 후보 의미 요소와 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소의 차이를 나타내는 차이 값을 산출할 수 있다. 전자 장치(2000)가 의미 요소의 차이를 나타내는 차이 값을 산출하는 구체적인 방법에 대해서는, 도 13 내지 도 14에 대한 설명에서 더 서술하기로 한다.
단계 S1045에서, 일 실시예에 따른 전자 장치(2000)는 단계 S1040에서 산출된 차이 값을 제2 임계값과 비교한 결과에 기초하여 제1 텍스트 내의 적어도 하나의 의미 요소를 정정할 수 있다. 전자 장치(2000)는 제1 텍스트 내에서 식별된 정정 후보 의미 요소가 복수개인 경우, 전술한 실시예에 따라 결정된 정정 우선 순위에 기초하여, 정정 후보 의미 요소를 순차적으로 비교할 수 있다. 전자 장치(2000)는 제1 텍스트 내의 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소의 차이 값이 제2 임계값 이하인 경우, 정정 후보 의미 요소를 사용자가 정정하려는 의미 요소로 판단할 수 있다. 전자 장치(2000)는 의미 요소 차이 값이 제2 임계값 이하인 정정 후보 의미 요소를 제2 텍스트 내의 사용자가 정정하려는 의미 요소로 정정하기 위해 단계 S1050으로 진행할 수 있다.
전자 장치(2000)는 모든 정정 후보 의미 요소에 대하여 제2 텍스트 내의 의미 요소와 차이 값을 비교한 결과, 차이 값이 제2 임계값 이하인 정정 후보 의미 요소가 존재하지 않는 경우, 단계 S1065으로 진행할 수 있다.
단계 S1050에서, 전자 장치(2000)는 정정 후보 의미 요소들 중에서, 제2 텍스트 내의 의미 요소의 차이 값이 제2 임계값 미만인, 제2 텍스트 내의 의미 요소와 유사한 정정 후보 의미 요소를 정정 대상 의미 요소로 결정할 수 있다. 전자 장치(2000)는 결정된 정정 대상 의미 요소를 제2 텍스트 내의 의미 요소로 치환함으로써, 제1 텍스트를 정정할 수 있다. 전자 장치(2000)는 정정된 내용을 사용자에게 알리고, 사용자의 확인을 요청하는 확인 요청 메시지를 출력할 수 있다.
단계 S1055에서, 일 실시예에 따른 전자 장치(2000)는 사용자로부터 단계 S1050에서 출력된 정정 내용 확인 요청을 승낙하는 입력이 수신되면, 단계 S1060을 수행하고, 정정 내용 확인 요청을 거절하는 입력이 수신되면, 단계 S1065를 수행할 수 있다. 이 경우, 사용자의 입력은 음성 신호일 수 있으나, 이에 한정되지 않으며, 다른 형태의 데이터가 사용자의 입력으로 입력될 수 있다.
단계 S1060에서, 일 실시예에 따른 전자 장치(2000)는 정정된 제1 텍스트에 자연어 이해를 수행하고, 정정된 텍스트에 대응되는 사용자의 의도를 파악하여, 사용자의 의도에 대응되는 태스크를 수행할 수 있다.
단계 S1065에서, 일 실시예에 따른 전자 장치(2000)는 인식된 태스크를 수행하거나, 새로운 음성 신호가 입력될 때까지 대기할 수 있다.
도 11은 일 실시예에 따른 전자 장치가 정정 후보 의미 요소를 식별하기 위한 인공지능 모델을 학습하는 다른 방법을 설명하기 위한 도면이다.
도 11을 참조하면, 일 실시예에 따른 전자 장치(2000)는 도 7에서 전술한 관심 단어 식별 모델 데이터(720)를 이용하여, 관심 단어 식별 모델(2535)을 학습할 수 있다.
전자 장치(2000)는 복수의 대화 문장들로부터 획득된 텍스트들을 가공하여, 관심 단어 식별 모델(2535)을 학습할 수 있다. 아래에서는 설명의 편의를 위해, 관심 단어 식별 모델(2535)의 학습을 위한 데이터의 일 예시로, 대화 문장 “Show me the way to Seoul station in Seoul”으로부터 획득된 텍스트를 예시로 설명하기로 한다.
일 실시예에서, 전자 장치(2000)가 자연어 처리 모듈(2520)의 자연어 이해 모델(2522)을 이용하여 텍스트 “Show me the way to Seoul station in Seoul”를 분석한 결과, 대화 문장의 인텐트는 ‘네비게이션(Navigation)’이고, 인텐트와 관련된 단어를 나타내는 의미 요소는 ‘Seoul station’ 및 ‘Seoul’일 수 있다.
전자 장치(2000)는 텍스트 내의 복수의 의미 요소들을 우선 순위를 포함하는 레이블로 레이블링하고, 레이블링 된 의미 요소들을 기초로 관심 단어 식별 모델(2535)을 학습할 수 있다. 예를 들어, 전자 장치(2000)는 인텐트의 도메인이 ‘네비게이션’인 대화 문장들 및 다른 도메인을 갖는 대화 문장들에 기초하여, 관심 단어 식별 모델(2535)을 학습할 수 있다. 이 경우, 전자 장치(2000)는 ‘네비게이션’ 인텐트의 대화 문장이 입력되었을 때 우선 순위를 갖는 정정 후보 의미 요소가 출력되도록 관심 단어 식별 모델(2535)을 학습할 수 있다.
일 실시예에서, 전자 장치(2000)는 인텐트와 관련된 단어를 나타내는 의미 요소 중에서, 장소(place)에 대응되는 의미 요소 ‘Seoul station’의 우선 순위를 제1 순위 정정 후보 의미 요소로 레이블링할 수 있다. 전자 장치(2000)는 ‘네비게이션’ 도메인에 포함되는 대화 문장이 입력되는 경우 장소(place)에 대응되는 의미 요소가 제1 순위 정정 후보 의미 요소로 식별되도록 관심 단어 식별 모델(2535)을 학습할 수 있다.
일 실시예에서, 전자 장치(2000)는 인텐트와 관련된 단어를 나타내는 의미 요소 중에서, 지역(region)에 대응되는 의미 요소 ‘Seoul’의 우선 순위를 제2 순위 정정 후보 의미 요소로 레이블링할 수 있다. 전자 장치(2000)는 ‘네비게이션’ 도메인에 포함되는 대화 문장이 입력되는 경우 지역(region)에 대응되는 의미 요소가 제2 순위 정정 후보 의미 요소로 식별되도록 관심 단어 식별 모델(2535)을 학습할 수 있다.
일 실시예에서, 전자 장치(2000)는, 전자 장치(2000)에 입력된 대화 문장의 인텐트가 ‘네비게이션’ 도메인에 포함되는 대화 문장인 것으로 식별되었으나 인텐트의 신뢰도 점수가 낮은 경우, 출력될 정정 후보 의미 요소들을 식별하기 위하여, ‘네비게이션’의 인텐트와 다른 인텐트 도메인에 포함되는 대화 문장을 학습 데이터로 이용할 수 있다. 예를 들어, 전자 장치(2000)는 ‘네비게이션’ 인텐트가 아닌 다른 인텐트 도메인에 포함되는 대화 문장 “Tell me the way to use this app”의 텍스트에 대하여, 텍스트 내 포함되는 의미 요소들 ‘way’, ‘use’ 등을 우선 순위를 매겨 레이블링하고, 레이블링된 데이터를 이용하여 관심 단어 식별 모델(2535)을 학습할 수 있다.
도 12는 일 실시예에 따른 전자 장치가 인공지능 모델을 이용하여, 정정 우선 순위가 결정된 정정 후보 의미 요소를 식별하는 방법을 설명하기 위한 도면이다.
도 12를 참조하면, 일 실시예에 따른 전자 장치(2000)는 관심 단어 식별 모델(2535)을 이용하여, 지1 텍스트 내의 복수의 정정 후보 의미 요소들을 식별할 수 있다. 이 경우, 정정 후보 의미 요소들은 기 학습된 정정 우선 순위에 기초하여 출력될 수 있다.
이하에서는, 설명의 편의를 위해 제1 텍스트가 “Show me the way to Seoul station in Seoul”인 경우를 예시로 들어, 우선 순위를 갖는 정정 후보 의미 요소들을 식별되는 방법을 설명하기로 한다.
일 실시예에서, 전자 장치(2000)는 제1 음성 신호로부터 변환된 제1 텍스트를 자연어 처리 모듈(2520)에 입력하여 제1 음성 신호의 인텐트 및 인텐트의 신뢰도 점수를 획득할 수 있다. 예를 들어, 전자 장치(2000)는 대화 문장인 “Show me the way to Seoul station in Seoul”에 대응되는 제1 텍스트를 자연어 처리 모듈(2520)에 적용하고, 제1 음성 신호의 인텐트인 ‘네비게이션’ 및 인텐트의 신뢰도 점수 ‘0.85’를 획득할 수 있다.
일 실시예에서, 전자 장치(2000)는 관심 단어 식별 모델(2535)을 이용하여, 복수의 정정 후보 의미 요소들을 식별할 수 있다. 이 경우, 관심 단어 식별 모델(2535)에서 출력되는 복수의 정정 후보 의미 요소들은, 도 11에서 전술한 실시예에 따라 기학습된 우선 순위에 기초한 정정 후보 의미 요소들일 수 있다.
예를 들어, 전자 장치(2000)는 제1 텍스트 “Show me the way to Seoul station in Seoul” 및 인텐트 ‘네비게이션’을 관심 단어 식별 모델(2535)로 입력하여, 도 11에서 전술한 실시예에 따라 제1 순위로 기 학습된, 장소(place)에 대응되는 의미 요소 ‘Seoul station’을 제1 순위 정정 후보 의미 요소로 식별할 수 있다. 또한, 전자 장치(2000)는 도 11에서 전술한 실시예에 따라 제2 순위로 기 학습된, 지역(region)에 대응되는 의미 요소 ‘Seoul’을 제2 순위 정정 후보 의미 요소로 식별할 수 있다.
일 실시예에 따른 전자 장치(2000)는, 제1 텍스트를 정정하기 위해 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소를 정정 후보 의미 요소들과 비교할 수 있다. 이 경우, 전자 장치(2000)는 정정 우선 순위에 기초하여 정정 후보 의미 요소를 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소와 비교할 수 있다.
도 13은 일 실시예에 따른 전자 장치가 사용자의 발화를 정정하기 위해 제1 텍스트 내의 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소를 비교하는 방법을 설명하기 위한 도면이다.
도 13을 참조하면, 일 실시예에 따른 전자 장치(2000)는 텍스트 비교 모듈(2536)을 이용하여, 제1 텍스트 내의 정정 후보 의미 요소들과 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소를 비교하고, 비교 결과에 기초하여 제1 텍스트 내 적어도 하나의 의미 요소를 정정할 수 있다.
일 실시예에서, 텍스트 비교 모듈(2536)은 제1 텍스트 내의 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소를 입력 받을 수 있다. 제1 텍스트 내의 정정 후보 의미 요소가 복수개인 경우, 제1 텍스트 내의 정정 후보 의미 요소들은 전술한 실시예들에 따라 결정된 정정 우선 순위에 기초하여, 순차적으로 제2 텍스트 내의 의미 요소와 비교될 수 있다.
단계 S1310에서, 일 실시예에 따른 텍스트 비교 모듈(2536)은 제1 텍스트 내의 의미 정정 후보 의미 요소 및 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소 각각을 토큰화(tokenization) 할 수 있다. 이 경우, 토큰화는 토큰(token)으로 정의되는 단위로 의미 요소를 나누는 작업을 의미할 수 있다. 개시된 실시예에서, 토큰의 단위는 유사 발음 단위, 음절 단위, 음소 단위, 의미 단위, 단어 단위, 문장 단위 등으로 설정될 수 있으나, 이에 한정되지 않는다.
단계 S1320에서, 일 실시예에 따른 텍스트 비교 모듈(2536)은 의미 요소들을 토큰화하여 획득된 토큰들의 유사도를 비교하기 위해 시퀀스 정렬(sequence alignment) 알고리즘을 적용할 수 있다. 이 경우, 시퀀스 정렬 알고리즘의 예로, 니들만-브니쉬(Needleman-Wunsch) 알고리즘, 슬라이딩 윈도우(Sliding window) 알고리즘 등이 적용될 수 있으나, 이에 한정되는 것은 아니다.
단계 S1330에서, 일 실시예에 따른 텍스트 비교 모듈(2536)은 단계 S1320에서 정렬된 토큰들의 유사도 점수를 계산할 수 있다. 이 경우, 유사도 점수는 제1 텍스트 내의 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소의 차이 값을 나타내는 점수일 수 있다. 유사도 점수를 계산하는 방법은 예를 들어, 편집 거리(Edit distance) 알고리즘, 자카드 유사도(Jaccard similarity) 알고리즘 또는 기 정의된 룩업 테이블을 이용하여 계산하는 방법 등이 사용될 수 있으나, 이에 한정되는 것은 아니다.
단계 S1340에서, 일 실시예에 따른 텍스트 비교 모듈(2536)은 유사도 점수의 계산 결과에 기초하여, 제1 텍스트 내의 정정 후보 의미 요소를 정정할 수 있다. 예를 들어, 텍스트 비교 모듈(2536)은 유사도 점수인 차이 값에 기초하여, 정정 후보 의미 요소를 정정 대상 의미 요소로 결정할 수 있다. 전자 장치(2000)는 결정된 정정 대상 의미 요소를 제2 텍스트 내의 의미 요소로 치환함으로써, 제1 텍스트를 정정할 수 있다.
도 14는 도 13을 더 설명하기 위한 도면으로, 일 실시예에 따른 전자 장치가 의미 요소들을 비교하는 예시를 설명하기 위한 도면이다.
도 14를 설명함에 있어서, 전자 장치(2000)에 입력된 사용자의 제1 음성 신호로부터 변환된 제1 텍스트의 대화 문장은 “Send a message to Mike wake up”이고, 제2 음성 신호로부터 변환된 제2 텍스트의 대화 문장은 “No, Mark”인 경우를 예로 들어 설명하기로 한다.
개시된 실시예에서, 전자 장치(2000)는 전술한 실시예들에 따라 제1 텍스트 내에서 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들(1410, 1420, 1430)을 식별할 수 있다. 이 경우, 복수의 정정 후보 의미 요소들의 정정 우선 순위는, 제1 순위 ‘Mike(1420)’, 제2 순위 ‘wake up(1430)’, 제3 순위 ‘message(1410)’일 수 있다. 전자 장치(2000)는 정정 우선 순위에 기초하여, 정정 후보 의미 요소를 제2 텍스트 내의 의미 요소 ‘Mark(1340)’와 순차적으로 비교할 수 있다.
일 실시예에 따른 전자 장치(2000)는, 도 13에서 전술한 단계 S1310 내지 S1340을 수행하여 제1 텍스트 내의 정정 후보 의미 요소와 제2 텍스트 내의 정정 후보 의미 요소를 비교할 수 있다.
개시된 실시예에서, 전자 장치(2000)가 정정 우선 순위에 기초하여 의미 요소들을 비교한 결과, 정정 후보 의미 요소 중 하나인 ‘Mike(1420)’와 제2 텍스트 내의 의미 요소인 ‘Mark(1340)’의 차이 값 ‘4’가 획득될 수 있다. 이 경우, 획득된 차이 값이 기 설정된 임계값인 ‘5’보다 작으므로, 전자 장치(2000)는 정정 후보 의미 요소 ‘Mike(1420)’가 제2 텍스트 내의 의미 요소 ‘Mark(1340)’와 유사하다고 판단하고, 정정 후보 의미 요소 ‘Mike(1420)’를 정정 대상 의미 요소로 결정할 수 있다.
전자 장치(2000)는 정정 대상 의미 요소로 결정된 ‘Mike(1420)’를 제2 텍스트 내의 의미 요소인 ‘Mark(1340)’로 치환함으로써, 제1 텍스트를 정정할 수 있다.
도 15는 일 실시예에 따른 전자 장치가 사용자 입력에 기초하여 오인식된 입력 음성 신호를 정정하는 방법을 도시한 흐름도이다.
단계 S1510에서, 일 실시예에 따른 전자 장치(2000) 사용자로부터 제1 음성 신호를 수신하고, 제1 음성 신호를 변환하여 제1 텍스트를 획득할 수 있다. 전자 장치(2000)는 수신된 제1 음성 신호에 ASR을 수행하여 사용자의 음성을 텍스트로 전사(transcribe)함으로써 제1 음성 신호로부터 변환된 제1 텍스트를 획득할 수 있다.
단계 S1520에서, 일 실시예에 따른 전자 장치(2000)는 획득된 제1 텍스트를 자연어 이해 모델(2522)에 적용하여, 획득된 제1 텍스트를 분석할 수 있다. 전자 장치(2000)는 자연어 이해 모델(2522)을 이용하여, 제1 텍스트를 파싱(parsing)하고, 제1 음성 신호의 발화 의도를 나타내는 인텐트(intent) 및 문장의 구성 요소들을 나타내는 개체(entity)를 식별할 수 있다. 또한, 전자 장치(2000)는 식별된 인텐트의 신뢰도 점수(confidence score)를 함께 획득할 수 있다.
단계 S1530에서, 일 실시예에 따른 전자 장치(2000)는 제1 음성 신호로부터 획득된 제1 텍스트, 제1 음성 신호의 인텐트 및 인텐트의 신뢰도 점수를 관심 단어 식별 모델(2535)에 입력함으로써, 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별할 수 있다. 이 경우, 관심 단어 식별 모델(2535)은, 학습을 통하여 획득된 인공지능 모델일 수 있다.
이 경우, 관심 단어 식별 모델(2535)을 이용하여 식별되는 복수의 정정 후보 의미 요소들은, 제1 텍스트를 정정하기 위해 사용자가 정정 발화가 입력되는 경우, 제1 텍스트 내의 정정 후보 의미 요소들을 사용자의 정정 발화와 순차적으로 비교하기 위하여, 소정 기준을 기초로 레이블링 되어있을 수 있다.
단계 S1540에서, 일 실시예에 따른 전자 장치(2000)는 전자 장치(2000)에 추가적으로 입력되는 제2 음성 신호를 변환하여, 제2 텍스트를 획득할 수 있다. 전자 장치(2000)는 제1 음성 신호로부터 획득된 텍스트를 분석하여 제1 음성 신호의 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 출력할 수 있다.
일 실시예에서, 사용자는 전자 장치(2000)로부터 출력된 태스크 수행 확인 요청이 사용자의 의도와 다른 경우, 제1 음성 신호의 인식 결과를 정정하기 위한 제2 음성 신호를 전자 장치(2000)로 입력할 수 있다.
일 실시예에서, 사용자는 전자 장치(2000)로부터 출력된 태스크 수행 확인 요청이 사용자의 의도와 같은 경우, 제1 음성 신호의 인식 결과를 승인하기 위한 제2 음성 신호를 전자 장치(2000)로 입력할 수 있다.
단계 S1550에서, 일 실시예에 따른 전자 장치(2000)는 획득된 제2 텍스트를 분석함으로써, 제2 음성 신호가 제1 음성 신호의 음성 인식 결과인 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다.
일 실시예에서, 전자 장치(2000)는 룰 기반 분석 방법을 이용하여, 제2 텍스트를 분석하고, 제2 텍스트 내에서 제1 텍스트를 정정하고자 하는 의도의 단어(예를 들어, '아니오')가 포함되는지 여부에 기초하여, 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다.
일 실시예에서, 전자 장치(2000)는 자연어 이해 모델(2522)을 이용하여, 제2 텍스트를 파싱하고, 제2 음성 신호의 발화 의도를 나타내는 인텐트 및 문장의 구성 요소들을 나타내는 개체를 식별할 수 있다. 전자 장치(2000)는 식별된 제2 음성 신호의 인텐트가 '정정' 도메인에 포함되는 인텐트인지 여부에 기초하여, 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별할 수 있다.
단계 S1560에서, 일 실시예에 따른 전자 장치(2000)는 단계 S1550의 식별 결과에 기초하여 제1 텍스트를 제2 텍스트와 비교할 수 있다.
전자 장치(2000)는 제2 음성 신호가 제1 텍스트를 정정하기 위한 음성 신호로 식별된 경우, 제1 텍스트를 정정하기 위해, 제1 음성 신호의 인텐트의 신뢰도 점수에 기초하여 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 제2 텍스트 내의 의미 요소와 비교할 수 있다.
이 경우, 전자 장치(2000)가 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 제2 텍스트 내의 의미 요소와 비교할 때, 전자 장치(2000)는 제1 텍스트 내의 복수의 의미 요소들을 각각 순차적으로 제2 텍스트 내의 의미 요소와 비교할 수 있다. 또한, 제1 텍스트 내의 복수의 의미 요소들이 제2 텍스트 내의 의미 요소와 비교될 순서를 결정하기 위해, 전자 장치(2000)는 관심 단어 식별 모델(2535)에 의하여 획득된 정정 후보 의미 요소들의 레이블링 정보를 이용할 수 있다. 예를 들어, 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수가 소정 임계값 이상인 경우, 레이블링 번호가 1로 레이블링 된 제1 의미 요소들을 제2 텍스트 내의 의미 요소와 비교할 수 있다. 또한, 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수가 소정 임계값 미만인 경우, 레이블링 번호가 2로 레이블링 된 제2 의미 요소들을 제2 텍스트 내의 의미 요소와 비교할 수 있다.
단계 S1570에서, 일 실시예에 따른 전자 장치(2000)는 의미 요소 비교 결과에 기초하여, 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정할 수 있다. 예를 들어, 전자 장치(2000)는 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소를 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 비교하여, 복수의 정정 후보 의미 요소들 중 적어도 하나를 제2 텍스트 내의 의미 요소로 치환함으로써, 제1 텍스트를 정정할 수 있다.
한편, 도 2에 도시된 전자 장치(2000)의 블록도는 일 실시예를 위한 블록도이다. 블록도의 각 구성요소는 실제 구현되는 각 장치의 사양에 따라 통합, 추가 또는 생략될 수 있다. 즉 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다. 또한, 각 블록에서 수행하는 기능은 실시예들을 설명하기 위한 것이며, 그 구체적인 동작이나 장치는 본 발명의 권리범위를 제한하지 아니한다.
일 실시예에 따른 전자 장치의 동작방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 비일시적(non-transitory)컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
또한, 개시된 실시예들에 따른 전자 장치의 동작방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사의 서버, 전자 마켓의 서버, 또는 SW 프로그램을 임시적으로 저장하는 중계 서버의 저장매체가 될 수 있다.
컴퓨터 프로그램 제품은, 전자 장치의 저장매체를 포함할 수 있다. 또는, 전자 장치와 통신 연결되는 제3 장치(예, 스마트폰)가 존재하는 경우, 컴퓨터 프로그램 제품은 제3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 전자 장치로부터 제3 장치로 전송되거나, 제3 장치로부터 전자 장치로 전송되는 S/W 프로그램 자체를 포함할 수 있다.
이 경우, 전자 장치 및 제3 장치 중 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수 있다. 또는, 전자 장치 및 제3 장치가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 분산하여 실시할 수 있다.
예를 들면, 전자 장치가 전자 장치에 저장된 컴퓨터 프로그램 제품을 실행하여, 전자 장치와 통신 연결된 제3 장치가 개시된 실시예들에 따른 방법을 수행하도록 제어할 수 있다.
이상에서 실시예들에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.
Claims (20)
- 전자 장치가 음성 입력을 정정하는 방법에 있어서,제1 음성 신호를 수신하는 단계;상기 제1 음성 신호를 텍스트로 변환하여 제1 텍스트를 획득하는 단계;상기 제1 텍스트를 자연어 이해 모델에 입력하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하는 단계;상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계;제2 음성 신호를 수신하는 단계;상기 제2 음성 신호를 텍스트로 변환하여 제2 텍스트를 획득하는 단계;상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계;상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호임을 식별한 것에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 의미 요소를 상기 신뢰도 점수에 기초하여 비교하는 단계; 및상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계를 포함하는, 방법.
- 제1항에 있어서,상기 제1 음성 신호의 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 출력하는 단계를 더 포함하되,상기 제2 음성 신호는, 상기 확인 요청이 출력된 후에 상기 사용자로부터 수신되는 것인, 방법.
- 제1항에 있어서,상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계는,상기 제2 텍스트를 상기 자연어 이해 모델에 입력하여, 상기 제1 텍스트를 정정하려는 의도를 나타내는 상기 제2 음성 신호의 인텐트 및 정정하려는 단어를 나타내는 상기 의미 요소를 식별하는 단계를 포함하는, 방법.
- 제1항에 있어서,상기 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계는,상기 제1 텍스트로부터 제1 정정 후보 의미 요소 및 제2 정정 후보 의미 요소를 식별하되,상기 제1 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트와 관련된 단어를 나타내고, 상기 제2 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트를 나타내는 것인, 방법.
- 제4항에 있어서,상기 제1 음성 신호의 인텐트의 신뢰도 점수를 제1 임계값과 비교하는 단계; 및상기 제1 음성 신호의 인텐트의 신뢰도 점수와 상기 제1 임계값의 비교 결과에 기초하여, 상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정하는 단계를 더 포함하는, 방법.
- 제5항에 있어서,상기 제1 임계값은, 상기 제1 텍스트에 대응되는 상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의, 다른 신뢰도 점수에 기초하여 결정되고,상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의 인텐트는, 상기 제1 음성 신호의 인텐트와 동일한 도메인의 인텐트인 것인, 방법.
- 제5항에 있어서,상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정하는 단계는,상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 이상인 경우 상기 제1 정정 후보 의미 요소가 상기 제2 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하고,상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 미만인 경우 상기 제2 정정 후보 의미 요소가 상기 제1 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하는, 방법.
- 제5항에 있어서,상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트와 비교하는 단계는,상기 정정 우선 순위에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산하는 단계를 포함하는, 방법.
- 제8항에 있어서,상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계는,상기 차이 값을 제2 임계값과 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중에서, 의미 요소를 정정하는 단계를 포함하는, 방법.
- 제8항에 있어서,상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산하는 단계는,문자 간 차이, 단어 간 차이 및 발음 표현 간 차이 중 적어도 하나에 기초하여, 편집 거리(Edit distance) 알고리즘을 적용함으로써 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소의 차이 값을 계산하는 단계를 포함하는 방법.
- 음성 입력을 정정하는 전자 장치에 있어서,음성 신호를 입력 받는 입력 인터페이스;하나 이상의 명령어들(instructions)을 포함하는 프로그램을 저장하는 저장부; 및상기 저장부에 저장된 상기 프로그램의 하나 이상의 명령어들을 실행하는 프로세서를 포함하고,상기 프로세서는,상기 입력 인터페이스를 통해 제1 음성 신호를 수신하고,상기 제1 음성 신호를 텍스트로 변환하여 제1 텍스트를 획득하고,상기 제1 텍스트를 자연어 이해 모델에 입력하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하고,상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하고,상기 입력 인터페이스를 통해 제2 음성 신호를 수신하고,상기 제2 음성 신호를 텍스트로 변환하여 제2 텍스트를 획득하고,상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하고,상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호임을 식별한 것에 기초하여 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 의미 요소를 상기 신뢰도 점수에 기초하여 비교하고,상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는, 전자 장치.
- 제11항에 있어서,상기 전자 장치는 출력부를 더 포함하고,상기 프로세서는,상기 출력부를 통해, 상기 제1 음성 신호의 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 출력하되,상기 제2 음성 신호는, 상기 확인 요청이 출력된 후에 상기 사용자로부터 수신되는 것인, 전자 장치.
- 제11항에 있어서,상기 프로세서는,상기 제2 텍스트를 상기 자연어 이해 모델에 입력하여, 상기 제1 텍스트를 정정하려는 의도를 나타내는 상기 제2 음성 신호의 인텐트 및 정정하려는 단어를 나타내는 상기 의미 요소를 식별하는, 전자 장치.
- 제11항에 있어서,상기 프로세서는,상기 제1 텍스트로부터 제1 정정 후보 의미 요소 및 제2 정정 후보 의미 요소를 식별하되,상기 제1 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트와 관련된 단어를 나타내고, 상기 제2 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트를 나타내는 것인, 전자 장치.
- 제14항에 있어서,상기 프로세서는,상기 제1 음성 신호의 인텐트의 신뢰도 점수를 제1 임계값과 비교하고,상기 제1 음성 신호의 인텐트의 신뢰도 점수와 상기 제1 임계값의 비교 결과에 기초하여, 상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정하는, 전자 장치.
- 제15항에 있어서,상기 제1 임계값은, 상기 제1 텍스트에 대응되는 상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의, 다른 신뢰도 점수에 기초하여 결정되고,상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의 인텐트는, 상기 제1 음성 신호의 인텐트와 동일한 도메인의 인텐트인 것인, 전자 장치.
- 제15항에 있어서,상기 프로세서는,상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 이상인 경우 상기 제1 정정 후보 의미 요소가 상기 제2 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하고,상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 미만인 경우 상기 제2 정정 후보 의미 요소가 상기 제1 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하는, 전자 장치.
- 제15항에 있어서,상기 프로세서는,상기 정정 우선 순위에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산하는, 전자 장치.
- 제18항에 있어서,상기 프로세서는,상기 차이 값을 제2 임계값과 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중에서, 의미 요소를 정정하는, 전자 장치.
- 전자 장치가 음성 입력을 정정하는 방법을 실행시키기 위한 프로그램이 기록된 컴퓨터 판독 가능 기록매체에 있어서, 상기 방법은,제1 음성 신호를 수신하는 단계;상기 제1 음성 신호를 텍스트로 변환하여 제1 텍스트를 획득하는 단계;상기 제1 텍스트를 자연어 이해 모델에 입력하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하는 단계;상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계;제2 음성 신호를 수신하는 단계;상기 제2 음성 신호를 텍스트로 변환하여 제2 텍스트를 획득하는 단계;상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계;상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호임을 식별한 것에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 의미 요소를 상기 신뢰도 점수에 기초하여 비교하는 단계; 및상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교한 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계를 포함하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/536,890 US12112742B2 (en) | 2021-03-03 | 2021-11-29 | Electronic device for correcting speech input of user and operating method thereof |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2021-0028352 | 2021-03-03 | ||
KR1020210028352A KR20220124547A (ko) | 2021-03-03 | 2021-03-03 | 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/536,890 Continuation US12112742B2 (en) | 2021-03-03 | 2021-11-29 | Electronic device for correcting speech input of user and operating method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022186435A1 true WO2022186435A1 (ko) | 2022-09-09 |
Family
ID=83154556
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2021/012849 WO2022186435A1 (ko) | 2021-03-03 | 2021-09-17 | 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20220124547A (ko) |
WO (1) | WO2022186435A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160322049A1 (en) * | 2015-04-28 | 2016-11-03 | Google Inc. | Correcting voice recognition using selective re-speak |
JP2017167368A (ja) * | 2016-03-16 | 2017-09-21 | 株式会社東芝 | 音声認識誤り修正装置、方法及びプログラム |
KR20180054902A (ko) * | 2010-01-05 | 2018-05-24 | 구글 엘엘씨 | 음성 입력의 워드-레벨 수정 |
US20200105247A1 (en) * | 2016-01-05 | 2020-04-02 | Google Llc | Biasing voice correction suggestions |
KR20210019924A (ko) * | 2019-08-13 | 2021-02-23 | 삼성전자주식회사 | 음성 인식 결과를 수정하는 시스템 및 방법 |
-
2021
- 2021-03-03 KR KR1020210028352A patent/KR20220124547A/ko active Search and Examination
- 2021-09-17 WO PCT/KR2021/012849 patent/WO2022186435A1/ko active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180054902A (ko) * | 2010-01-05 | 2018-05-24 | 구글 엘엘씨 | 음성 입력의 워드-레벨 수정 |
US20160322049A1 (en) * | 2015-04-28 | 2016-11-03 | Google Inc. | Correcting voice recognition using selective re-speak |
US20200105247A1 (en) * | 2016-01-05 | 2020-04-02 | Google Llc | Biasing voice correction suggestions |
JP2017167368A (ja) * | 2016-03-16 | 2017-09-21 | 株式会社東芝 | 音声認識誤り修正装置、方法及びプログラム |
KR20210019924A (ko) * | 2019-08-13 | 2021-02-23 | 삼성전자주식회사 | 음성 인식 결과를 수정하는 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR20220124547A (ko) | 2022-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020213996A1 (en) | Method and apparatus for interrupt detection | |
WO2020231181A1 (en) | Method and device for providing voice recognition service | |
WO2020263034A1 (en) | Device for recognizing speech input from user and operating method thereof | |
WO2020145439A1 (ko) | 감정 정보 기반의 음성 합성 방법 및 장치 | |
WO2020105856A1 (en) | Electronic apparatus for processing user utterance and controlling method thereof | |
WO2017047884A1 (en) | Voice recognition server and control method thereof | |
WO2020032563A1 (en) | System for processing user voice utterance and method for operating same | |
WO2020130447A1 (ko) | 페르소나에 기반하여 문장을 제공하는 방법 및 이를 지원하는 전자 장치 | |
WO2021137637A1 (en) | Server, client device, and operation methods thereof for training natural language understanding model | |
WO2021029643A1 (en) | System and method for modifying speech recognition result | |
WO2021020877A1 (en) | System and method for registering device for voice assistant service | |
WO2019078615A1 (en) | METHOD AND ELECTRONIC DEVICE FOR TRANSLATING A VOICE SIGNAL | |
WO2020251122A1 (ko) | 컨텐츠 번역 서비스를 제공하는 전자 장치 및 그 제어 방법 | |
WO2021029642A1 (en) | System and method for recognizing user's speech | |
WO2022035183A1 (ko) | 사용자의 음성 입력을 인식하는 디바이스 및 그 동작 방법 | |
WO2020091183A1 (ko) | 사용자 특화 음성 명령어를 공유하기 위한 전자 장치 및 그 제어 방법 | |
WO2018056779A1 (en) | Method of translating speech signal and electronic device employing the same | |
WO2020153717A1 (en) | Electronic device and controlling method of electronic device | |
WO2022139122A1 (ko) | 전자 장치 및 이의 제어 방법 | |
WO2021246812A1 (ko) | 딥러닝 nlp 모델을 활용한 뉴스 긍정도 분석 솔루션 및 장치 | |
WO2022186435A1 (ko) | 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법 | |
WO2022177224A1 (ko) | 전자 장치 및 전자 장치의 동작 방법 | |
WO2023048359A1 (ko) | 음성 인식 장치 및 그 동작 방법 | |
WO2023163422A1 (ko) | 디스플레이 장치 및 그 동작 방법 | |
WO2024063452A1 (ko) | 전자 장치 및 이의 제어 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 21929297 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 21929297 Country of ref document: EP Kind code of ref document: A1 |