KR20220124547A - 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법 - Google Patents

사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법 Download PDF

Info

Publication number
KR20220124547A
KR20220124547A KR1020210028352A KR20210028352A KR20220124547A KR 20220124547 A KR20220124547 A KR 20220124547A KR 1020210028352 A KR1020210028352 A KR 1020210028352A KR 20210028352 A KR20210028352 A KR 20210028352A KR 20220124547 A KR20220124547 A KR 20220124547A
Authority
KR
South Korea
Prior art keywords
text
voice signal
intent
electronic device
correction candidate
Prior art date
Application number
KR1020210028352A
Other languages
English (en)
Inventor
이종선
류종엽
류성한
이은지
양재철
최형탁
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020210028352A priority Critical patent/KR20220124547A/ko
Priority to PCT/KR2021/012849 priority patent/WO2022186435A1/ko
Priority to US17/536,890 priority patent/US12112742B2/en
Publication of KR20220124547A publication Critical patent/KR20220124547A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/51Speech 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/10Speech classification or search using distance or distortion measures between unknown speech and reference templates
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Machine Translation (AREA)
  • Studio Devices (AREA)
  • Input Circuits Of Receivers And Coupling Of Receivers And Audio Equipment (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법이 개시된다. 사용자의 음성 입력을 정정하는 전자 장치는, 음성 신호를 입력 받는 입력부, 하나 이상의 명령어들(instructions)을 포함하는 프로그램을 저장하는 저장부 및 상기 저장부에 저장된 상기 프로그램의 하나 이상의 명령어들을 실행하는 프로세서를 포함하고, 상기 프로세서는, 상기 입력부를 통해 사용자로부터 제1 음성 신호를 수신하고, 상기 제1 음성 신호를 변환하여 제1 텍스트를 획득하고, 상기 제1 텍스트를 자연어 이해 모델에 적용하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하고, 상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하고, 상기 전자 장치에 입력되는 상기 사용자의 제2 음성 신호를 변환하여 제2 텍스트를 획득하고, 상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하고, 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인 경우, 상기 신뢰도 점수에 기초하여 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교하고, 상기 의미 요소 비교 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정할 수 있다.

Description

사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법{ELECTRONIC DEVICE FOR CORRECTING USER'S VOICE INPUT AND OPERATING METHOD FOR THE SAME}
다양한 실시예들은, 사용자의 음성 입력을 정정하는 방법에 관한 것이다.
멀티 미디어 기술 및 네트워크 기술이 발전함에 따라, 사용자는 디바이스를 이용하여 다양한 서비스를 제공받을 수 있게 되었다. 특히, 음성 인식 기술이 발전함에 따라, 사용자는 디바이스에 음성(예를 들어, 발화)을 입력하고, 음성 입력에 따른 응답 메시지를 제공 받는, 자연어 응답 서비스를 제공 받을 수 있게 되었다.
사용자가 자연어 응답 서비스를 제공 받는 경우, 사용자의 초기 발화가 디바이스에서 잘못 인식되어 사용자의 발화를 인식한 결과가 부분적으로 수정이 필요한 경우가 발생할 수 있다. 이에 따라, 사용자가 잘못 인식된 대화 문장 전체를 다시 입력하지 않고, 오인식된 사용자의 초기 발화에 대응할 수 있는 기술이 요구된다.
다양한 실시예들은, 자연어 응답 서비스를 제공하는 전자 장치에 있어서, 사용자의 초기 발화를 수신하고, 초기 발화가 수신된 이후 초기 발화를 정정하기 위해 수신되는 후속 발화에서 사용자의 정정 의도를 식별할 수 있는, 전자 장치 및 그 동작 방법을 제공할 수 있다.
다양한 실시예들은, 초기 발화된 음성 신호로부터 변환된 텍스트에 정정 후보들을 식별하여, 후속해서 발화된 음성 신호로부터 변환된 텍스트들을 비교하고, 비교 결과에 기초하여 사용자의 초기 발화를 정정할 수 있는, 전자 장치 및 그 동작 방법을 제공할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 일 실시예에 따른 전자 장치가 사용자의 음성 입력을 정정하는 방법은, 사용자로부터 제1 음성 신호를 수신하고, 상기 제1 음성 신호를 변환하여 제1 텍스트를 획득하는 단계; 상기 제1 텍스트를 자연어 이해 모델에 적용하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하는 단계; 상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계; 상기 전자 장치에 입력되는 상기 사용자의 제2 음성 신호를 변환하여 제2 텍스트를 획득하는 단계; 상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계; 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인 경우, 상기 신뢰도 점수에 기초하여 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교하는 단계; 및 상기 의미 요소 비교 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계를 포함하는, 방법일 수 있다.
또한, 일 실시예에 따른 사용자의 음성 입력을 정정하는 전자 장치는, 음성 신호를 입력 받는 입력부; 하나 이상의 명령어들(instructions)을 포함하는 프로그램을 저장하는 저장부; 및 상기 저장부에 저장된 상기 프로그램의 하나 이상의 명령어들을 실행하는 프로세서를 포함하고, 상기 프로세서는, 상기 입력부를 통해 사용자로부터 제1 음성 신호를 수신하고, 상기 제1 음성 신호를 변환하여 제1 텍스트를 획득하고, 상기 제1 텍스트를 자연어 이해 모델에 적용하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하고, 상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하고, 상기 전자 장치에 입력되는 상기 사용자의 제2 음성 신호를 변환하여 제2 텍스트를 획득하고, 상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하고, 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인 경우, 상기 신뢰도 점수에 기초하여 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교하고, 상기 의미 요소 비교 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는, 전자 장치일 수 있다.
일 실시예에 따른 사용자의 음성 입력을 정정하는 전자 장치는, 오인식된 사용자의 초기 발화에 대하여, 사용자의 후속 발화를 통해 전체 발화를 다시 입력하지 않고 부분적으로 정정하고자 하는 발화만 입력하고, 사용자의 후속 발화에 기초하여 사용자의 초기 발화를 정정함으로써, 자연어 응답 서비스의 대응 범위를 확대하고, 자연어 인식 결과에 대한 사용자의 수정의 편의성을 증가시킬 수 있다.
도 1은 일 실시예에 따른 전자 장치가 사용자 입력에 기초하여 입력된 음성 신호를 정정하는 방법을 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 전자 장치의 구성을 설명하기 위한 블록도이다.
도 3은 일 실시예에 따른 전자 장치에 포함되는 복수의 모듈들의 동작들을 설명하기 위한 도면이다.
도 4는 도 3을 더 설명하기 위한 도면으로, 일 실시예에 따른 전자 장치가 사용자로부터 입력된 음성 신호를 정정하는 예시를 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 전자 장치가 사용자의 발화로부터 정정 의도를 식별하는 방법을 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 전자 장치가 사용자의 발화로부터 획득된 텍스트를 정정하기 위해 정정 후보 의미 요소들을 식별하고, 정정 우선 순위를 결정하는 방법을 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 전자 장치의 정정 후보 의미 요소를 식별하는 관심 단어 식별 모델이 이용하는 데이터를 설명하기 위한 도면이다.
도 8은 일 실시예에 따른 전자 장치가 정정 후보 의미 요소를 식별하기 위한 인공지능 모델을 학습하는 방법을 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 전자 장치가 인공지능 모델을 이용하여 정정 후보 의미 요소를 식별하고, 식별된 정정 후보 의미 요소들이 정정되는 순서를 결정하는 방법을 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 전자 장치가 도 8 및 도 9에서 서술한 방법에 따라, 사용자의 발화를 정정하는 방법을 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 전자 장치가 정정 후보 의미 요소를 식별하기 위한 인공지능 모델을 학습하는 다른 방법을 설명하기 위한 도면이다.
도 12는 일 실시예에 따른 전자 장치가 인공지능 모델을 이용하여 정정 후보 의미 요소를 식별하고, 식별된 정정 후보 의미 요소들이 정정되는 순서를 결정하는 다른 방법을 설명하기 위한 도면이다.
도 13은 일 실시예에 따른 전자 장치가 사용자의 발화를 정정하기 위해 제1 텍스트 내의 정정 후보 의미 요소와 제2 텍스트 내의 의미 요소를 비교하는 방법을 설명하기 위한 도면이다.
도 14는 도 13을 더 설명하기 위한 도면으로, 일 실시예에 따른 전자 장치가 의미 요소들을 비교하는 예시를 설명하기 위한 도면이다.
도 15는 일 실시예에 따른 전자 장치가 사용자 입력에 기초하여 오인식된 입력 음성 신호를 정정하는 방법을 도시한 흐름도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 명세서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 또한, 본 명세서에서 사용되는 '제1' 또는 '제2' 등과 같이 서수를 포함하는 용어는 다양한 구성 요소들을 설명하는데 사용할 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만 사용된다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 본 발명의 실시예에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 일 실시예에 따른 전자 장치가 사용자 입력에 기초하여 입력된 음성 신호를 정정하는 방법을 설명하기 위한 도면이다.
도 1을 참조하면, 일 실시예에 따른 전자 장치(2000)는 자연어 응답 서비스를 제공하는 전자 장치일 수 있다.
일 실시예에서, 전자 장치(2000)는 사용자(100)로부터 사용자가 수행하고자 하는 태스크에 대한 명령을 나타내는 음성 신호를 수신할 수 있다. 전자 장치(2000)는 사용자로부터 수신된 음성 신호에 자동 음성 인식(Automatic Speech Recognition; ASR)을 수행하여 음성 신호를 텍스트로 변환하고, 획득된 텍스트를 자연어 이해(Natural Language Understanding; NLU) 모델(2522)에 적용하여, 수신된 음성 신호의 발화 의도를 나타내는 인텐트(intent) 및 문장의 구성 요소들을 나타내는 개체(entity)를 식별할 수 있다.
일 실시예에서, 전자 장치(2000)는 식별된 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 사용자(100)에게 출력할 수 있다. 이 경우, 전자 장치(2000)는 사용자의 발화 의도에 대응되는 응답을 출력하기 위해, 자연어 생성(Natural Language Generation; NLG) 모델(2524)을 이용하여 인텐트에 대응되는 태스크와 관련된 발화 데이터를 생성하고 편집함으로써 사용자(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)는 관심 단어 식별 모델로부터 출력된 정정 후보 단어들 만을 사용자가 정정하려는 단어와 비교하여, 제1 음성 신호를 정정할 수 있다.
예를 들어, 제1 음성 신호의 대화 문장은 "Please call Mark" 였으나, 제1 음성 신호의 인식 결과가 "Please call Mike." 이고, 제2 음성 신호의 대화 문장이 "No, Mark!"인 경우, 전자 장치(2000)는 관심 단어 식별 모델을 이용하여 제1 음성의 인식 결과 내의 정정 후보 단어 'Mike'를 식별하고, 사용자가 정정하려는 단어 'Mark'와 비교함으로써 제1 음성 신호의 인식 결과를 정정한 결과인 "Please call Mark"를 획득할 수 있다.
전자 장치(2000)는 정정된 결과의 대화 문장 "Please call Mark."에 대한 응답으로, 자연어 생성(Natural Language Generation; NLG) 모델(2524)을 이용하여 생성한 대화 문장 "Ok, I'll call Mark."를 출력함으로써, 사용자의 발화를 정정한 결과를 사용자에게 제공할 수 있다.
도 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?"의 대화 문장을 출력할 수 있다. 이 경우, 출력되는 대화 문장은 오디오 또는 텍스트 형태일 수 있으나, 이에 한정되는 것은 아니다. 단계 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 텍스트 내의 의미 요소와 비교할 수 있다. 일 실시예에서, 정정 후보 의미 요소가 복수개인 경우, 복수개의 정정 후보 의미 요소들은 단계 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 텍스트 내의 의미 요소와 비교할 때, 제1 텍스트 내의 복수의 의미 요소들이 각각 순차적으로 제2 텍스트 내의 의미 요소와 비교될 수 있다. 또한, 제1 텍스트 내의 복수의 의미 요소들이 제2 텍스트 내의 의미 요소와 비교될 순서를 결정하기 위해, 관심 단어 식별 모델(2535)에 의하여 정정 후보 의미 요소들의 레이블링 정보가 이용될 수 있다. 예를 들어, 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수가 소정 임계값 이상인 경우, 레이블링 번호가 1로 레이블링 된 제1 의미 요소들을 제2 텍스트 내의 의미 요소와 비교할 수 있다. 또한, 전자 장치(2000)는 제1 음성 신호의 인텐트의 신뢰도 점수가 소정 임계값 미만인 경우, 레이블링 번호가 2로 레이블링 된 제2 의미 요소들을 제2 텍스트 내의 의미 요소와 비교할 수 있다.
단계 S1570에서, 일 실시예에 따른 전자 장치(2000)는 의미 요소 비교 결과에 기초하여, 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정할 수 있다. 예를 들어, 전자 장치(2000)는 사용자가 정정하고자 하는 제2 텍스트 내의 의미 요소를 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 비교하여, 복수의 정정 후보 의미 요소들 중 적어도 하나를 제2 텍스트 내의 의미 요소로 치환함으로써, 제1 텍스트를 정정할 수 있다.
한편, 도 2에 도시된 전자 장치(2000)의 블록도는 일 실시예를 위한 블록도이다. 블록도의 각 구성요소는 실제 구현되는 각 장치의 사양에 따라 통합, 추가 또는 생략될 수 있다. 즉 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다. 또한, 각 블록에서 수행하는 기능은 실시예들을 설명하기 위한 것이며, 그 구체적인 동작이나 장치는 본 발명의 권리범위를 제한하지 아니한다.
일 실시예에 따른 전자 장치의 동작방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(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 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계;
    상기 전자 장치에 입력되는 상기 사용자의 제2 음성 신호를 변환하여 제2 텍스트를 획득하는 단계;
    상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계;
    상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인 경우, 상기 신뢰도 점수에 기초하여 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교하는 단계; 및
    상기 의미 요소 비교 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 제1 음성 신호의 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 출력하는 단계를 더 포함하되,
    상기 제2 음성 신호는, 상기 확인 요청이 출력된 후에 상기 사용자로부터 수신되는 것인, 방법.
  3. 제1항에 있어서,
    상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하는 단계는,
    상기 제2 텍스트를 상기 자연어 이해 모델에 적용하여, 상기 제1 텍스트를 정정하려는 상기 사용자의 의도를 나타내는 상기 제2 음성 신호의 인텐트 및 상기 사용자가 정정하려는 단어를 나타내는 의미 요소를 식별하는 단계를 포함하는, 방법.
  4. 제1항에 있어서,
    상기 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하는 단계는,
    상기 제1 텍스트로부터 제1 정정 후보 의미 요소 및 제2 정정 후보 의미 요소를 식별하되,
    상기 제1 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트와 관련된 단어를 나타내고, 상기 제2 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트를 나타내는 것인, 방법.
  5. 제4항에 있어서,
    상기 제1 음성 신호의 인텐트의 신뢰도 점수를 기설정된 제1 임계값과 비교하는 단계; 및
    상기 제1 음성 신호의 인텐트의 신뢰도 점수와 상기 제1 임계값의 비교 결과에 기초하여, 상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정하는 단계를 더 포함하는, 방법.
  6. 제5항에 있어서,
    상기 제1 텍스트의 상기 인텐트의 신뢰도와 비교되는 상기 기설정된 제1 임계값은,
    상기 제1 텍스트에 대응되는 상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의 신뢰도에 기초하여 결정되고,
    상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의 인텐트는, 상기 제1 음성 신호의 인텐트와 동일한 도메인의 인텐트인 것인, 방법.
  7. 제5항에 있어서,
    상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정하는 단계는,
    상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 이상인 경우 상기 제1 정정 후보 의미 요소가 상기 제2 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하고,
    상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 미만인 경우 상기 제2 정정 후보 의미 요소가 상기 제1 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하는, 방법.
  8. 제5항에 있어서,
    상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트와 비교하는 단계는,
    상기 결정된 정정 우선 순위에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산하는 단계를 포함하는, 방법.
  9. 제8항에 있어서,
    상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는 단계는,
    상기 차이 값을 기설정된 제2 임계값과 비교한 결과에 기초하여, 상기 제1 텍스트 내의 의미 요소를 정정하는 단계를 포함하는, 방법.
  10. 제8항에 있어서,
    상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산하는 단계는,
    문자 간 차이, 단어 간 차이 및 발음 표현 간 차이 중 적어도 하나에 기초하여, 편집 거리(Edit distance) 알고리즘을 적용함으로써 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소의 차이 값을 계산하는 단계를 포함하는 방법.
  11. 사용자의 음성 입력을 정정하는 전자 장치에 있어서,
    음성 신호를 입력 받는 입력부;
    하나 이상의 명령어들(instructions)을 포함하는 프로그램을 저장하는 저장부; 및
    상기 저장부에 저장된 상기 프로그램의 하나 이상의 명령어들을 실행하는 프로세서를 포함하고,
    상기 프로세서는,
    상기 입력부를 통해 사용자로부터 제1 음성 신호를 수신하고,
    상기 제1 음성 신호를 변환하여 제1 텍스트를 획득하고,
    상기 제1 텍스트를 자연어 이해 모델에 적용하여, 상기 제1 음성 신호의 인텐트 및 상기 인텐트의 신뢰도 점수를 획득하고,
    상기 제1 텍스트, 상기 인텐트 및 상기 인텐트의 신뢰도 점수를 인공지능 모델에 입력함으로써, 상기 제1 텍스트 내의 정정 대상이 될 수 있는 복수의 정정 후보 의미 요소들을 식별하고,
    상기 전자 장치에 입력되는 상기 사용자의 제2 음성 신호를 변환하여 제2 텍스트를 획득하고,
    상기 제2 텍스트를 분석함으로써 상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인지 여부를 식별하고,
    상기 제2 음성 신호가 상기 제1 텍스트를 정정하기 위한 음성 신호인 경우, 상기 신뢰도 점수에 기초하여 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들을 상기 제2 텍스트 내의 의미 요소와 비교하고,
    상기 의미 요소 비교 결과에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들 중 적어도 하나를 정정하는, 전자 장치.
  12. 제11항에 있어서,
    상기 전자 장치는 출력부를 더 포함하고,
    상기 프로세서는,
    상기 출력부를 통해, 상기 제1 음성 신호의 인텐트에 대응되는 태스크를 수행하기 위한 확인 요청을 출력하되,
    상기 제2 음성 신호는, 상기 확인 요청이 출력된 후에 상기 사용자로부터 수신되는 것인, 전자 장치.
  13. 제11항에 있어서,
    상기 프로세서는,
    상기 제2 텍스트를 상기 자연어 이해 모델에 적용하여, 상기 제1 텍스트를 정정하려는 상기 사용자의 의도를 나타내는 상기 제2 음성 신호의 인텐트 및 상기 사용자가 정정하려는 단어를 나타내는 의미 요소를 식별하는, 전자 장치.
  14. 제11항에 있어서,
    상기 프로세서는,
    상기 제1 텍스트로부터 제1 정정 후보 의미 요소 및 제2 정정 후보 의미 요소를 식별하되,
    상기 제1 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트와 관련된 단어를 나타내고, 상기 제2 정정 후보 의미 요소는 상기 제1 음성 신호의 인텐트를 나타내는 것인, 전자 장치.
  15. 제14항에 있어서,
    상기 프로세서는,
    상기 제1 음성 신호의 인텐트의 신뢰도 점수를 기설정된 제1 임계값과 비교하고,
    상기 제1 음성 신호의 인텐트의 신뢰도 점수와 상기 제1 임계값의 비교 결과에 기초하여, 상기 복수의 정정 후보 의미 요소들의 정정 우선 순위를 결정하는, 전자 장치.
  16. 제15항에 있어서,
    상기 제1 텍스트의 상기 인텐트의 신뢰도와 비교되는 상기 기설정된 제1 임계값은,
    상기 제1 텍스트에 대응되는 상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의 신뢰도에 기초하여 결정되고,
    상기 제1 음성 신호가 수신되기 이전에 상기 전자 장치에 입력된 음성 신호의 인텐트는, 상기 제1 음성 신호의 인텐트와 동일한 도메인의 인텐트인 것인, 전자 장치.
  17. 제15항에 있어서,
    상기 프로세서는,
    상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 이상인 경우 상기 제1 정정 후보 의미 요소가 상기 제2 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하고,
    상기 제1 음성 신호의 인텐트의 신뢰도 점수가 상기 제1 임계값 미만인 경우 상기 제2 정정 후보 의미 요소가 상기 제1 정정 후보 의미 요소보다 정정 우선 순위가 높도록 결정하는, 전자 장치.
  18. 제15항에 있어서,
    상기 프로세서는,
    상기 결정된 정정 우선 순위에 기초하여, 상기 제1 텍스트 내의 복수의 정정 후보 의미 요소들과 상기 제2 텍스트 내의 사용자가 정정하고자 하는 의미 요소의 차이를 나타내는 차이 값을 계산하는, 전자 장치.
  19. 제18항에 있어서,
    상기 프로세서는,
    상기 차이 값을 기설정된 제2 임계값과 비교한 결과에 기초하여, 상기 제1 텍스트 내의 의미 요소를 정정하는, 전자 장치.
  20. 제1항 내지 제10항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR1020210028352A 2021-03-03 2021-03-03 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법 KR20220124547A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210028352A KR20220124547A (ko) 2021-03-03 2021-03-03 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법
PCT/KR2021/012849 WO2022186435A1 (ko) 2021-03-03 2021-09-17 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법
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 (1)

Application Number Priority Date Filing Date Title
KR1020210028352A KR20220124547A (ko) 2021-03-03 2021-03-03 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법

Publications (1)

Publication Number Publication Date
KR20220124547A true KR20220124547A (ko) 2022-09-14

Family

ID=83154556

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210028352A KR20220124547A (ko) 2021-03-03 2021-03-03 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법

Country Status (2)

Country Link
KR (1) KR20220124547A (ko)
WO (1) WO2022186435A1 (ko)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8494852B2 (en) * 2010-01-05 2013-07-23 Google Inc. Word-level correction of speech input
EP3089159B1 (en) * 2015-04-28 2019-08-28 Google LLC Correcting voice recognition using selective re-speak
US10049655B1 (en) * 2016-01-05 2018-08-14 Google Llc Biasing voice correction suggestions
JP6605995B2 (ja) * 2016-03-16 2019-11-13 株式会社東芝 音声認識誤り修正装置、方法及びプログラム

Also Published As

Publication number Publication date
WO2022186435A1 (ko) 2022-09-09

Similar Documents

Publication Publication Date Title
US11887590B2 (en) Voice enablement and disablement of speech processing functionality
US12100396B2 (en) Indicator for voice-based communications
US10453449B2 (en) Indicator for voice-based communications
US11823678B2 (en) Proactive command framework
JP6251958B2 (ja) 発話解析装置、音声対話制御装置、方法、及びプログラム
US20230089285A1 (en) Natural language understanding
US11093110B1 (en) Messaging feedback mechanism
US8793132B2 (en) Method for segmenting utterances by using partner's response
US11574637B1 (en) Spoken language understanding models
US11868725B2 (en) Server, client device, and operation methods thereof for training natural language understanding model
US20080215325A1 (en) Technique for accurately detecting system failure
JP6235280B2 (ja) 音声同時処理装置、方法およびプログラム
US11984126B2 (en) Device for recognizing speech input of user and operating method thereof
US11810556B2 (en) Interactive content output
US12087305B2 (en) Speech processing
KR20210087384A (ko) 자연어 이해 모델의 학습을 위한 서버, 클라이언트 디바이스 및 그 동작 방법
US11741945B1 (en) Adaptive virtual assistant attributes
US11922938B1 (en) Access to multiple virtual assistants
KR20220124547A (ko) 사용자의 음성 입력을 정정하는 전자 장치 및 그 동작 방법
WO2018135302A1 (ja) 情報処理装置および情報処理方法、並びにプログラム
US12001260B1 (en) Preventing inadvertent wake in a speech-controlled device
US11277304B1 (en) Wireless data protocol
US12112742B2 (en) Electronic device for correcting speech input of user and operating method thereof
JP6546070B2 (ja) 音響モデル学習装置、音声認識装置、音響モデル学習方法、音声認識方法、およびプログラム
US12094463B1 (en) Default assistant fallback in multi-assistant devices

Legal Events

Date Code Title Description
A201 Request for examination