KR20220112563A - 전자 장치 및 그 제어 방법 - Google Patents

전자 장치 및 그 제어 방법 Download PDF

Info

Publication number
KR20220112563A
KR20220112563A KR1020210016257A KR20210016257A KR20220112563A KR 20220112563 A KR20220112563 A KR 20220112563A KR 1020210016257 A KR1020210016257 A KR 1020210016257A KR 20210016257 A KR20210016257 A KR 20210016257A KR 20220112563 A KR20220112563 A KR 20220112563A
Authority
KR
South Korea
Prior art keywords
text
paraphrase
sentence
neural network
output
Prior art date
Application number
KR1020210016257A
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 KR1020210016257A priority Critical patent/KR20220112563A/ko
Priority to CN202180069620.9A priority patent/CN116368490A/zh
Priority to EP21924952.1A priority patent/EP4206972A1/en
Priority to PCT/KR2021/012265 priority patent/WO2022169054A1/ko
Priority to US17/666,127 priority patent/US20220245364A1/en
Publication of KR20220112563A publication Critical patent/KR20220112563A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/58Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/26Speech to text systems
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S715/00Data processing: presentation processing of document, operator interface processing, and screen saver display processing
    • Y10S715/978Audio interaction as part of an operator interface

Abstract

전자 장치가 개시된다. 전자 장치는 스피커, 적어도 하나의 명령어를 저장하는 메모리 및 메모리와 전기적으로 연결된 프로세서를 포함하고, 프로세서는, 명령어를 실행함으로써, 제1 텍스트를 제1 신경망 모델에 입력하여 제1 텍스트에 대응되는 제1 번역 텍스트를 획득하고, 제1 번역 텍스트를 제2 신경망 모델에 입력하여 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 획득하고, 제1 텍스트 및 제1 의역 텍스트에 기초하여 제1 의역 텍스트의 출력 가능 여부를 식별하고, 식별 결과에 따라 제1 의역 텍스트를 출력하도록 스피커를 제어하고, 제1 텍스트에 이어서 제2 텍스트가 수신되면, 제1 및 제2 텍스트를 제1 신경망 모델에 입력하여 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트를 획득하고, 식별 결과 및 제2 번역 텍스트를 제2 신경망 모델에 입력하여 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득한다.

Description

전자 장치 및 그 제어 방법 { Electronic device and control method thereof }
본 발명은 전자 장치 및 그 제어 방법에 관한 것으로, 더욱 상세하게는, 번역 텍스트를 획득하는 전자 장치 및 그 제어 방법에 관한 것이다.
전자 기술의 발달에 힘입어 다양한 유형의 전자 기기가 개발 및 보급되고 있다. 특히, 서로 다른 언어 간 번역을 수행하여 사용자에게 결과물을 제공하는 번역기 등의 전자 기기도 활발히 개발 및 보급되고 있는 실정이다.
다만, 종래의 번역기는 그 성능이 떨어짐에 따라 실생활에서 이용하는데 무리가 있으며, 특히, 실시간 번역 성능이 매우 떨어지는 문제가 있었다.
예를 들어, 입력되는 텍스트를 실시간으로 번역하는 경우에 번역의 정확도가 떨어지는 문제가 있으며, 실시간으로 번역하지 않고 문장이 완성된 뒤에 입력된 텍스트를 한번에 번역하는 경우에는 번역의 정확도는 향상될 수 있으나 대기 시간이 증가하는 문제가 있다.
번역의 정확도, 신뢰도는 향상시키면서 동시에 텍스트의 입력부터 번역 텍스트의 출력까지의 대기 시간을 줄여 실시간으로 번역되는 것과 같은 효과를 제공하기 위한 번역 방법에 대한 요구 및 논의가 활발한 실정이다.
본 개시는 상술한 필요성에 따른 것으로, 본 개시의 목적은, 입력 텍스트에 대응되는 번역 텍스트를 출력하는 전자 기기 및 그 제어 방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따른 전자 장치는, 스피커, 적어도 하나의 명령어를 저장하는 메모리 및 상기 메모리와 전기적으로 연결된 프로세서를 포함하고, 상기 프로세서는, 상기 명령어를 실행함으로써, 제1 텍스트를 제1 신경망 모델에 입력하여 상기 제1 텍스트에 대응되는 제1 번역 텍스트를 획득하고, 상기 제1 번역 텍스트를 제2 신경망 모델에 입력하여 상기 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 획득하고, 상기 제1 텍스트 및 상기 제1 의역 텍스트에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하고, 상기 식별 결과에 따라 상기 제1 의역 텍스트를 출력하도록 상기 스피커를 제어하고, 상기 제1 텍스트에 이어서 제2 텍스트가 수신되면, 상기 제1 및 제2 텍스트를 상기 제1 신경망 모델에 입력하여 상기 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트를 획득하고, 상기 식별 결과 및 상기 제2 번역 텍스트를 상기 제2 신경망 모델에 입력하여 상기 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득하고, 상기 제2 신경망 모델은, 상기 식별 결과에 따라 상기 제1 의역 텍스트가 출력된 것으로 식별되면, 상기 제1 의역 텍스트를 포함하며 상기 제1 의역 텍스트가 어순 상 앞에 위치하도록 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 출력하고, 상기 제1 의역 텍스트가 기 출력되지 않은 것으로 식별되면, 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 출력한다.
여기서, 상기 프로세서는, 상기 제1 번역 텍스트 및 상기 제1 의역 텍스트 간 의미 유사도 값을 획득하고, 상기 획득된 의미 유사도 값에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하며, 상기 의미 유사도 값이 제1 임계 값 이상이면, 상기 제1 의역 텍스트를 출력하도록 상기 스피커를 제어할 수 있다.
또한, 상기 프로세서는, 상기 제1 의역 텍스트의 문장 적합도 값을 획득하고, 상기 획득된 문장 적합도 값에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하며, 상기 문장 적합도 값이 제2 임계 값 이상이면, 상기 제1 의역 텍스트를 출력하도록 상기 스피커를 제어할 수 있다.
또한, 상기 프로세서는, 상기 제2 텍스트 및 상기 제2 의역 텍스트에 기초하여 상기 제2 의역 텍스트의 출력 가능 여부를 식별하며, 상기 식별 결과에 따라 상기 제1 의역 텍스트가 출력된 것으로 식별되고, 상기 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 상기 제2 의역 텍스트에서 제1 의역 텍스트를 제외한 나머지를 출력하도록 상기 스피커를 제어하고, 상기 제1 의역 텍스트가 출력되지 않은 것으로 식별되고, 상기 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 상기 제2 의역 텍스트를 출력하도록 상기 스피커를 제어할 수 있다.
여기서, 상기 프로세서는, 상기 제2 번역 텍스트 및 상기 제2 의역 텍스트 간 의미 유사도 값을 획득하고, 상기 제2 의역 텍스트의 문장 적합도 값을 획득하고, 상기 의미 유사도 값 및 상기 문장 적합도 값에 기초하여 상기 제2 의역 텍스트의 출력 가능 여부를 식별하며, 상기 의미 유사도 값이 제1 임계 값 이상이고 상기 문장 적합도 값이 제2 임계 값 이상이면, 상기 제2 의역 텍스트를 출력하도록 상기 스피커를 제어할 수 있다.
또한, 상기 프로세서는, 상기 제1 및 제2 텍스트를 제3 신경망 모델에 입력하여 상기 제1 및 제2 텍스트가 구(phrase)에 대응되는지 여부에 대한 정보를 획득하고, 상기 제2 번역 텍스트, 상기 제1 및 제2 텍스트가 구에 대응되는지 여부에 대한 정보를 상기 제2 신경망 모델에 입력하여 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 획득할 수 있다.
여기서, 상기 제2 신경망 모델은, 상기 입력된 정보에 기초하여 상기 제1 및 제2 텍스트가 구에 대응되는 것으로 식별되면, 상기 제2 번역 텍스트에 대응되며 문장 형태 또는 구 형태의 상기 제2 의역 텍스트를 출력하며, 상기 제1 및 제2 텍스트가 구에 대응되지 않는 것으로 식별되면, 상기 제2 번역 텍스트에 대응되며 미완성 문장 형태의 상기 제2 의역 텍스트를 출력할 수 있다.
또한, 상기 제2 신경망 모델은, 복수의 텍스트에 기초하여 학습되며, 상기 복수의 텍스트는, 복수의 단어 그룹 각각에서 선택된 적어도 하나의 단어에 기초하여 획득된 제1 문장 텍스트 및 상기 제1 문장 텍스트와 의미 유사도 값이 제1 임계 값 이상인 제2 문장 텍스트를 포함하며, 상기 복수의 단어 그룹 각각은, 상기 의미 유사도 값이 상기 제1 임계 값 이상인 단어들의 집합일 수 있다.
또한, 상기 제2 신경망 모델은, 복수의 텍스트에 기초하여 학습되며, 상기 복수의 텍스트는, 서로 다른 두 언어 간의 병렬 코퍼스(parallel corpus)에 기초하여 획득된 제1 언어의 제1 문장 텍스트에 대응되는 제2 언어의 제1 번역 문장 텍스트 및 상기 제1 문장 텍스트를 상기 제1 신경망 모델에 입력하여 획득된 상기 제2 언어의 제2 번역 문장 텍스트를 포함하며, 상기 제1 번역 문장 텍스트와 상기 제2 번역 문장 텍스트 간 의미 유사도 값이 제1 임계 값 이상일 수 있다.
여기서, 상기 제1 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어와 상기 제2 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어는 서로 다른 단어일 수 있다.
한편, 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 제1 텍스트를 제1 신경망 모델에 입력하여 상기 제1 텍스트에 대응되는 제1 번역 텍스트를 획득하는 단계, 상기 제1 번역 텍스트를 제2 신경망 모델에 입력하여 상기 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 획득하는 단계, 상기 제1 텍스트 및 상기 제1 의역 텍스트에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계, 상기 식별 결과에 따라 상기 제1 의역 텍스트를 출력하는 단계, 상기 제1 텍스트에 이어서 제2 텍스트가 수신되면, 상기 제1 및 제2 텍스트를 상기 제1 신경망 모델에 입력하여 상기 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트를 획득하는 단계 및 상기 식별 결과 및 상기 제2 번역 텍스트를 상기 제2 신경망 모델에 입력하여 상기 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득하는 단계를 포함하고, 상기 제2 신경망 모델은, 상기 식별 결과에 따라 상기 제1 의역 텍스트가 출력된 것으로 식별되면, 상기 제1 의역 텍스트를 포함하며 상기 제1 의역 텍스트가 어순 상 앞에 위치하도록 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 출력하고, 상기 제1 의역 텍스트가 기 출력되지 않은 것으로 식별되면, 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 출력한다.
여기서, 상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계는, 상기 제1 번역 텍스트 및 상기 제1 의역 텍스트 간 의미 유사도 값을 획득하는 단계 및 상기 획득된 의미 유사도 값에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계를 포함하고, 상기 제1 의역 텍스트를 출력하는 단계는, 상기 의미 유사도 값이 제1 임계 값 이상이면, 상기 제1 의역 텍스트를 출력하는 단계를 포함할 수 있다.
또한, 상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계는, 상기 제1 의역 텍스트의 문장 적합도 값을 획득하는 단계 및 상기 획득된 문장 적합도 값에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계를 포함하고, 상기 제1 의역 텍스트를 출력하는 단계는, 상기 문장 적합도 값이 제2 임계 값 이상이면, 상기 제1 의역 텍스트를 출력하는 단계를 포함할 수 있다.
또한, 상기 제2 텍스트 및 상기 제2 의역 텍스트에 기초하여 상기 제2 번역 텍스트의 출력 가능 여부를 식별하는 단계, 상기 식별 결과에 따라 상기 제1 의역 텍스트가 출력된 것으로 식별되고, 상기 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 상기 제2 의역 텍스트에서 제1 의역 텍스트를 제외한 나머지를 출력하는 단계 및 상기 제1 의역 텍스트가 출력되지 않은 것으로 식별되고, 상기 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 상기 제2 의역 텍스트를 출력하는 단계를 더 포함할 수 있다.
여기서, 상기 제2 의역 텍스트의 출력 가능 여부를 식별하는 단계는, 상기 제2 번역 텍스트 및 상기 제2 의역 텍스트 간 의미 유사도 값을 획득하는 단계, 상기 제2 의역 텍스트의 문장 적합도 값을 획득하는 단계 및 상기 의미 유사도 값 및 상기 문장 적합도 값에 기초하여 상기 제2 의역 텍스트의 출력 가능 여부를 식별하는 단계를 포함하며, 상기 제2 의역 텍스트를 출력하는 단계는, 상기 의미 유사도 값이 제1 임계 값 이상이고 상기 문장 적합도 값이 제2 임계 값 이상이면, 상기 제2 의역 텍스트를 출력하는 단계를 포함할 수 있다.
또한, 상기 제1 및 제2 텍스트를 제3 신경망 모델에 입력하여 상기 제1 및 제2 텍스트가 구(phrase)에 대응되는지 여부에 대한 정보를 획득하는 단계를 더 포함하고, 상기 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득하는 단계는, 상기 제2 번역 텍스트, 상기 제1 및 제2 텍스트가 구에 대응되는지 여부에 대한 정보를 상기 제2 신경망 모델에 입력하여 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 획득하는 단계를 포함할 수 있다.
여기서, 상기 제2 신경망 모델은, 상기 입력된 정보에 기초하여 상기 제1 및 제2 텍스트가 구에 대응되는 것으로 식별되면, 상기 제2 번역 텍스트에 대응되며 문장 형태 또는 구 형태의 상기 제2 의역 텍스트를 출력하며, 상기 제1 및 제2 텍스트가 구에 대응되지 않는 것으로 식별되면, 상기 제2 번역 텍스트에 대응되며 미완성 문장 형태의 상기 제2 의역 텍스트를 출력할 수 있다.
또한, 상기 제2 신경망 모델은, 복수의 텍스트에 기초하여 학습되며, 상기 복수의 텍스트는, 복수의 단어 그룹 각각에서 선택된 적어도 하나의 단어에 기초하여 획득된 제1 문장 텍스트 및 상기 제1 문장 텍스트와 의미 유사도 값이 제1 임계 값 이상인 제2 문장 텍스트를 포함하며, 상기 복수의 단어 그룹 각각은, 상기 의미 유사도 값이 상기 제1 임계 값 이상인 단어들의 집합일 수 있다.
또한, 상기 제2 신경망 모델은, 복수의 텍스트에 기초하여 학습되며, 상기 복수의 텍스트는, 서로 다른 두 언어 간의 병렬 코퍼스(parallel corpus)에 기초하여 획득된 제1 언어의 제1 문장 텍스트에 대응되는 제2 언어의 제1 번역 문장 텍스트 및 상기 제1 문장 텍스트를 상기 제1 신경망 모델에 입력하여 획득된 상기 제2 언어의 제2 번역 문장 텍스트를 포함하며, 상기 제1 번역 문장 텍스트와 상기 제2 번역 문장 텍스트 간 의미 유사도 값이 제1 임계 값 이상일 수 있다.
여기서, 상기 제1 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어와 상기 제1 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어는 서로 다른 단어일 수 있다.
상술한 바와 같이 본 개시의 다양한 실시 예에 따르면, 텍스트의 입력부터, 입력된 텍스트에 대응되는 번역 텍스트의 출력까지의 요구 시간을 줄여 사용자는 실시간 번역 서비스를 제공받는 효과를 가질 수 있다.
입력 텍스트가 문장 형태가 아닐지라도, 실시간 번역 결과물의 정확도, 신뢰도가 향상될 수 있다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 나타내는 블록도이다.
도 2는 본 개시의 일 실시 예에 따른 제1 및 제2 신경망 모델을 설명하기 위한 표이다.
도 3 내지 도 7은 본 개시의 일 실시 예에 따른 텍스트, 번역 텍스트 및 의역 텍스트를 설명하기 위한 흐름도이다.
도 8은 본 개시의 일 실시 예에 따른 EOP(End of phrase)를 설명하기 위한 도면이다.
도 9는 본 개시의 일 실시 예에 따른 제3 신경망 모델을 설명하기 위한 흐름도이다.
도 10a 및 도 10b는 본 개시의 일 실시 예에 따른 복수의 텍스트를 설명하기 위한 도면이다.
도 11a 및 도 11b는 본 개시의 다른 실시 예에 따른 복수의 텍스트를 설명하기 위한 도면이다.
도 12는 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
이하에서는 첨부 도면을 참조하여 본 개시를 상세히 설명한다.
본 개시의 실시 예에서 사용되는 용어는 본 개시에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 개시의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 개시에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 개시의 전반에 걸친 내용을 토대로 정의되어야 한다.
본 명세서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
A 또는/및 B 중 적어도 하나라는 표현은 "A" 또는 "B" 또는 "A 및 B" 중 어느 하나를 나타내는 것으로 이해되어야 한다.
본 명세서에서 사용된 "제1," "제2," "첫째," 또는 "둘째,"등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 어떤 구성요소가 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 개시에서 "모듈" 혹은 "부"는 적어도 하나의 기능이나 동작을 수행하며, 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈" 혹은 복수의 "부"는 특정한 하드웨어로 구현될 필요가 있는 "모듈" 혹은 "부"를 제외하고는 적어도 하나의 모듈로 일체화되어 적어도 하나의 프로세서(미도시)로 구현될 수 있다.
본 명세서에서, 사용자라는 용어는 전자 장치를 사용하는 사람 또는 전자 장치를 사용하는 장치(예: 인공지능 전자 장치)를 지칭할 수 있다.
이하 첨부된 도면들을 참조하여 본 개시의 일 실시 예를 보다 상세하게 설명한다.
도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 나타내는 블록도이다.
본 개시의 일 실시 예에 따른 전자 장치(100)는 예를 들면, 스마트폰, 태블릿 PC, 이동 전화기, 영상 전화기, 전자책 리더기, 데스크탑 PC, 랩탑 PC, 넷북 컴퓨터, 워크스테이션, 서버, PDA, PMP(portable multimedia player), MP3 플레이어, 의료기기, 카메라, 가상 현실(virtual reality(VR)) 구현 장치 또는 웨어러블 장치 중 적어도 하나를 포함할 수 있다. 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트 렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드 또는 문신), 또는 생체 이식형 회로 중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에서, 전자 장치(100)는 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스, 홈 오토매이션 컨트롤 패널, 보안 컨트롤 패널, 미디어 박스(예: 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 게임 콘솔(예: XboxTM, PlayStationTM), 전자 사전, 전자 키, 캠코더, 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치(100)는 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 드론(drone), 금융 기관의 ATM, 상점의 POS(point of sales), 또는 사물 인터넷 장치 (예: 전구, 각종 센서, 스프링클러 장치, 화재 경보기, 온도조절기, 가로등, 토스터, 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
특히, 본 개시의 일 실시 예에 따른 전자 장치(100)는 사용자의 입력에 대응되는 텍스트를 획득하고, 획득된 텍스트를 번역하여 출력하는 다양한 유형의 장치로 구현될 수 있다. 여기서, 사용자의 입력은 사용자의 음성, 사용자가 입력한 텍스트, 외부 장치로부터 수신된 신호 등을 포함할 수 있다.
또한, 전자 장치(100)는 획득된 텍스트를 번역하여 스피커(110)를 통해 출력할 수 있다. 본 개시의 일 실시 예에 따른 스피커(110)는 오디오 신호를 출력할 수 있다. 이 경우, 스피커(110)는 적어도 하나의 스피커 유닛으로 구현될 수 있다. 일 예로, 스피커(110)는 멀티 채널 재생을 위한 복수의 스피커 유닛을 포함할 수 있다. 예를 들어, 복수의 스피커 유닛 각각은 서로 다른 주파수 대역을 출력할 수 있다.
한편, 본 개시의 다양한 실시 예에 따라 전자 장치(100)가 사용자 입력에 대응되는 텍스트를 번역한 뒤, 이를 스피커(110)로 출력하는 경우를 상정하여 전자 장치(100)가 스피커(110)를 포함하는 것으로 기재하였으나 이는 일 예시이며 이에 한정되지 않음은 물론이다. 예를 들어, 전자 장치(100)는 디스플레이(미도시)를 통해 번역된 텍스트를 출력할 수도 있음은 물론이다.
메모리(120)는 본 개시의 다양한 실시 예를 위해 필요한 데이터를 저장할 수 있다. 메모리(120)는 데이터 저장 용도에 따라 전자 장치(100)에 임베디드된 메모리 형태로 구현되거나, 전자 장치(100)에 탈부착이 가능한 메모리 형태로 구현될 수도 있다.
예를 들어, 전자 장치(100)의 구동을 위한 데이터는 전자 장치(100)에 임베디드된 메모리에 저장되고, 전자 장치(100)의 확장 기능을 위한 데이터는 전자 장치(100)에 탈부착이 가능한 메모리에 저장될 수 있다. 한편, 전자 장치(100)에 임베디드된 메모리의 경우 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive(SSD)) 중 적어도 하나로 구현될 수 있다. 또한, 전자 장치(100)에 탈부착이 가능한 메모리의 경우 메모리 카드(예를 들어, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), MMC(multi-media card) 등), USB 포트에 연결가능한 외부 메모리(예를 들어, USB 메모리) 등과 같은 형태로 구현될 수 있다.
일 예에 따라 메모리(120)는 전자 장치(100)를 제어하기 위한 적어도 하나의 인스트럭션(instruction) 또는 인스트럭션들을 포함하는 컴퓨터 프로그램을 저장할 수 있다.
다른 예에 따라, 메모리(120)는 복수의 레이어를 포함하는 인공 지능 모델에 관한 정보를 저장할 수 있다. 여기서, 인공 지능 모델에 관한 정보를 저장한다는 것은 인공 지능 모델의 동작과 관련된 다양한 정보, 예를 들어 인공 지능 모델에 포함된 복수의 레이어에 대한 정보, 복수의 레이어 각각에서 이용되는 파라미터(예를 들어, 필터 계수, 바이어스 등)에 대한 정보 등을 저장한다는 것을 의미할 수 있다.
예를 들어, 메모리(120)는 본 개시의 일 실시 예에 따라 제1 언어의 텍스트를 제2 언어로 번역하도록 학습된 제1 신경망 모델을 저장할 수 있다. 또한, 메모리(120)는 텍스트를 의역하도록 학습된 제2 신경망 모델을 저장할 수 있다. 제1 및 제2 신경망 모델에 대한 구체적인 설명은 후술하도록 한다.
본 개시의 일 실시 예에 따른 프로세서(130)는 전자 장치(100)의 전반적인 동작을 제어한다.
일 실시 예에 따라 프로세서(130)는 디지털 영상 신호를 처리하는 디지털 시그널 프로세서(digital signal processor(DSP), 마이크로 프로세서(microprocessor), AI(Artificial Intelligence) 프로세서, T-CON(Timing controller)으로 구현될 수 있다. 다만, 이에 한정되는 것은 아니며, 중앙처리장치(central processing unit(CPU)), MCU(Micro Controller Unit), MPU(micro processing unit), 컨트롤러(controller), 어플리케이션 프로세서(application processor(AP)), 또는 커뮤니케이션 프로세서(communication processor(CP)), ARM 프로세서 중 하나 또는 그 이상을 포함하거나, 해당 용어로 정의될 수 있다. 또한, 프로세서(130)는 프로세싱 알고리즘이 내장된 SoC(System on Chip), LSI(large scale integration)로 구현될 수도 있고, FPGA(Field Programmable gate array) 형태로 구현될 수도 있다.
특히, 프로세서(130)는 사용자 음성을 인식하여 사용자 음성에 대응되는 텍스트 또는, 사용자 입력에 따른 텍스트를 제1 신경망 모델에 입력하여 텍스트에 대응되는 번역 텍스트를 획득할 수 있다. 예를 들어, 프로세서(130)에 구비된 음성 인식(Automatic speech recognition, ASR) 모듈은 입력부(미도시)(예를 들어, 마이크)를 통해 수신된 사용자 음성을 인식하여 사용자 음성에 대응되는 텍스트를 획득할 수 있다. 이에 대한 구체적인 설명은 후술하도록 한다.
본 개시의 일 실시 예에 따른 프로세서(130)는 텍스트를 제1 신경망 모델에 입력하여 번역 텍스트를 획득할 수 있다. 여기서, 제1 신경망 모델은 제1 언어의 텍스트를 제2 언어로 기계 번역(Machine Translation)하도록 학습된 모델일 수 있다. 한편, 제1 신경망 모델은 통계적 기계 번역(Statistical machine translation, SMT) 모델일 수도 있고, 신경망 기계 번역(Neural machine translation, NMT) 모델일 수도 있다. 여기서, 신경망 기계 번역 모델은 단어를 개별적으로 번역하는 것이 아닌, 전체 문장, 구 단위로 번역을 수행함에 따라 자연스럽고 완성도 높은 번역물을 출력하는 효과가 있다.
일 실시 예에 따른 프로세서(130)는 제1 언어의 제1 텍스트를 제1 신경망 모델에 입력하여 제2 언어의 제1 번역 텍스트를 획득할 수 있다.
예를 들어, 프로세서(130)는 제1 텍스트로 ‘선수들이’가 수신되면, ‘선수들이’를 제1 신경망 모델에 입력하여 ‘Athletes’를 제1 텍스트에 대응되는 제1 번역 텍스트로 획득할 수 있다. 상술한 예시는, ‘한국어’가 입력됨에 따라 제1 신경망 모델이 ‘한국어’에서 ‘영어’로 번역하는 경우를 상정한 것이나, 이에 한정되지 않음은 물론이다. 예를 들어, 프로세서(130)는 제1 신경망 모델을 이용하여 ‘영어’에서 ‘한국어’로 번역된 번역 텍스트를 획득할 수도 있고, 그 외에도 다양한 언어로 번역된 번역 텍스트를 획득할 수 있음은 물론이다. 예를 들어, 프로세서(130)는 제1 신경망 모델을 이용하여 ‘스페인어’에서 ‘영어’로 번역된 텍스트를 획득할 수도 있음은 물론이다.
이어서, 프로세서(130)는 제1 번역 텍스트를 제2 신경망 모델에 입력하여 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 획득할 수 있다.
여기서, 제2 신경망 모델이 출력하는 의역 텍스트는 번역 텍스트와 뜻, 의미는 동일 또는 유사하나, 번역 텍스트에 포함된 단어와는 상이한 단어를 포함하는 텍스트, 번역 텍스트에 포함된 문장 성분(예를 들어, 주어, 목적어, 서술어 등)이 상이하게 배열된 텍스트를 의미할 수 있다. 예를 들어, 제1 번역 텍스트가 ‘Athletes’이면, 제2 신경망 모델은 제1 번역 텍스트에 대응되는 제1 의역 텍스트로 ‘sportsperson’, ‘player’ 중 어느 하나를 출력할 수 있다. 한편, 이는 일 예시이며 이에 한정되지 않음은 물론이다. 예를 들어, 제2 신경망 모델이 출력하는 제1 의역 텍스트는 제1 번역 텍스트와 동일할 수도 있음은 물론이다. 일 예로, 제2 신경망 모델은 제1 번역 텍스트 ‘Athletes’에 대응되는 제1 의역 텍스트로 ‘Athletes’를 출력할 수도 있다.
이어서, 프로세서(130)는 제1 번역 텍스트 및 제1 의역 텍스트에 기초하여 제1 의역 텍스트의 출력 가능 여부를 식별할 수 있다.
예를 들어, 프로세서(130)는 제1 번역 텍스트 ‘Athletes’와 제1 의역 텍스트 ‘Athletes’ 간 의미 유사도 값을 획득할 수 있으며, 획득된 의미 유사도 값이 제1 임계 값 이상이면, 제1 의역 텍스트를 출력할 수 있다. 일 실시 예에 따른 의미 유사도 값은 제1 언어의 제1 텍스트와 제2 언어의 제1 의역 텍스트 간에 의미가 유사한지를 수치화한 값으로서, 0 내지 1의 값으로 표현될 수 있다. 의미 유사도 값이 1에 가까울수록 제1 언어의 제1 텍스트의 의미와 제2 언어의 제1 의역 텍스트의 의미가 동일, 유사함을 의미할 수 있다. 한편, 제1 임계 값은 0.5일 수 있으며, 이는 일 예시일 뿐 이에 한정되지 않음은 물론이다.
일 실시 예에 따른 프로세서(130)는 의미 유사도 값이 제1 임계 값 이상이면, 제1 의역 텍스트가 출력 가능한 것으로 식별할 수 있다. 이 경우, 프로세서(130)는 제1 의역 텍스트를 출력하도록 스피커(110)를 제어할 수 있다. 예를 들어, 프로세서(130)는 TTS(Text to speech) 모델을 이용하여 제1 의역 텍스트를 음성으로 변환하고, 변환된 음성을 스피커(110)를 통해 출력할 수 있다.
한편, 일 실시 예에 따른 프로세서(130)는 제1 의역 텍스트의 문장 적합도 값을 획득하고, 획득된 문장 적합도 값이 제2 임계 값 이상이면, 제1 의역 텍스트를 출력할 수 있다. 상술한 예시에서는 의역 텍스트가 하나의 단어 예를 들어, ‘Athletes’인 경우를 상정하여 설명하였으나, 본 개시의 다양한 실시 예에 따르면, 의역 텍스트는 복수의 단어를 포함하는 문장 형태의 텍스트일 수도 있다.
한편, 프로세서(130)는 하나의 단어가 아닌, 복수의 단어를 포함하는 문장 형태의 의역 텍스트가 비문법적(ungrammatical, asyntactic)이라면, 의역 텍스트를 출력 가능하지 않은 것으로 식별할 수 있다.
일 실시 예에 따른 프로세서(130)는 의역 텍스트의 문장 적합도 예를 들어, 의역 텍스트의 문법 준수 여부, 문장 성분(예를 들어, 주어, 동사, 목적어 등)의 존재 여부 등을 수치화하여 문장 적합도 값을 획득할 수 있다. 일 예로, 문장 적합도 값은 0 내지 1의 값으로 표현될 수 있고, 1에 가까울수록 의역 텍스트의 문장 적합도가 높음을 의미할 수 있다. 즉, 문장 적합도 값이 1에 가까울수록 의역 텍스트가 문법을 준수하며, 완성된 문장 형태임을 의미할 수 있다.
이어서, 프로세서(130)는 의역 텍스트의 문장 적합도 값이 제2 임계 값 이상이면, 의역 텍스트를 출력 가능한 것으로 식별할 수 있다. 한편, 제2 임계 값은 0.5일 수 있으나, 이에 한정되지 않음은 물론이다.
일 실시 예에 따른 프로세서(130)는 i) 제1 언어의 텍스트와 제2 언어의 의역 텍스트 간 의미 유사도 값 및 ii) 제2 언어의 의역 텍스트의 문장 적합도 값 모두가 각각의 임계 값 이상인 경우에 한하여 의역 텍스트를 출력 가능한 것으로 식별할 수도 있고, 어느 하나가 임계 값 이상인 경우에도 의역 텍스트를 출력 가능한 것으로 식별할 수도 있음은 물론이다.
한편, 본 개시의 다양한 실시 예는 실시간으로 입력되는 사용자 음성(또는, 텍스트)을 번역하여 출력하는 통역 서비스(또는, 통역 프로그램)에 있어서, 사용자 음성의 입력 시점부터 번역된 음성의 출력 시점까지의 시간을 단축시켜 사용자가 실시간으로 번역된 음성을 제공받는 것과 같이 느끼도록 함에 목적이 있다.
이하에서는, 상술한 제1 텍스트에 이어서 수신되는 제2 텍스트를 번역한 뒤, 이를 출력하는 다양한 실시 예에 대해 설명하도록 한다. 이에 대한 설명은 도 2를 참조하여 하도록 한다.
도 2는 본 개시의 일 실시 예에 따른 제1 신경망 모델(1) 및 제2 신경망 모델(2)을 설명하기 위한 표이다.
본 개시의 일 실시 예에 따른 프로세서(130)는 제1 텍스트에 이어서 수신된 제2 텍스트를 제1 신경망 모델(1)에 입력하여 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트를 획득할 수 있다.
일 실시 예에 따라 제1 신경망 모델(1)은 시퀀스-투-시퀀스(sequence-to-sequence) 모델일 수 있다. 여기서, 시퀀스(sequence)란 서로 연관된 연속의 데이터를 의미하며, 본 개시에 있어서의 제1 텍스트, 제2 텍스트와 같은 기 설정된 단위(예를 들어, 형태소, 단어 등)의 텍스트를 시퀀스의 예라고 할 수 있다.
일 실시 예에 따른 제1 신경망 모델(1)은 제1 텍스트 및 제2 텍스트가 입력되면, 제1 텍스트 및 제2 텍스트 모두를 고려한 번역 텍스트(즉, 제2 번역 텍스트)를 출력할 수 있다. 상술한 바와 같이 제1 신경망 모델(1)은 종래의 통계 기반의 기계 번역(SMT) 모델이 아닌, 인공 신경망을 기반으로 한 기계 번역(NMT) 모델이며, NMT 모델은 제1 텍스트와 제2 텍스트 각각을 개별적으로 번역하는 것이 아닌, 제1 및 제2 텍스트 전체를 하나의 번역 단위로 인식하여 기계 번역을 수행할 수 있다.
<Step 1 & Step 2>
도 2를 참조하면, 제1 텍스트 ‘선수들이’가 입력되고(Step 1), 이어서, 제2 텍스트 ‘런던올림픽에서’가 입력된 경우(Step 2)를 상정할 수 있다.
Step 1 - 일 실시 예에 따른 프로세서(130)가 제1 텍스트 ‘선수들이’에 대응되는 제1 의역 텍스트 ‘Athletes’를 획득하였음은 상술하였다.
Step 2 - 프로세서(130)는 제1 텍스트에 이어서 수신된 제2 텍스트 ‘런던올림픽에서’를 제1 신경망 모델(1)이 입력할 수 있다. 여기서, 제1 신경망 모델(1)은 제1 텍스트 ‘선수들이’와 제2 텍스트 ‘런던 올림픽에서’를 모두 고려하여 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트를 출력할 수 있다.
도 2를 참조하면, 프로세서(130)는 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트 ‘At London Olympic, athletes’를 획득할 수 있다.
한편, 본 개시의 일 실시 예에 따른 프로세서(130)는 step 1 에서 획득한 제1 의역 텍스트의 출력 여부(또는, 제1 의역 텍스트의 출력 가능 여부에 대한 식별 결과) 및 제2 번역 텍스트 ‘At London Olympic, athletes’를 제2 신경망 모델(2)에 입력하여 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득할 수 있다.
예를 들어, Step 1에서 제1 텍스트 ‘선수들이’와 제1 의역 텍스트 ‘Athletes’ 간 의미 유사도 값은 0.7로서 의미 유사도 값이 제1 임계 값 이상이고, 제1 의역 텍스트 ‘Athletes’의 문장 적합도 값이 0.9로서 문장 적합도 값이 제2 임계 값 이상이면, 프로세서(130)는 제1 의역 텍스트 ‘Athletes’를 출력 가능한 것으로 식별하여 제1 의역 텍스트 ‘Athletes’를 출력한 상태에서 제2 텍스트 ‘런던 올림픽에서’가 수신된 경우를 상정할 수 있다.
이 경우, 제2 신경망 모델(2)은 식별 결과(즉, 제1 의역 텍스트의 출력 가능 여부)에 따라 제1 의역 텍스트가 출력된 것으로 식별되면, 제1 의역 텍스트 ‘Athletes’를 포함하며, 제1 의역 텍스트 ‘Athletes’가 어순 상 앞에 위치하도록 제2 번역 텍스트 ‘At London Olympic, athletes’에 대응되는 제2 의역 텍스트 ‘Athletes At London Olympic’를 출력할 수 있다.
다른 예로, 도 2에 도시된 것과는 다르게 Step 1에서 제1 의역 텍스트의 의미 유사도 값 또는 문장 적합도 값 중 적어도 하나가 임계 값 미만으로서 제1 의역 텍스트가 출력 가능하지 않은 것으로 식별되어, 프로세서(130)가 제1 의역 텍스트를 출력하지 않은 상태에서, 제2 텍스트가 수신된 경우를 상정할 수 있다.
이 경우, 제2 신경망 모델(2)은 식별 결과에 따라 제1 의역 텍스트가 출력되지 않은 것으로 식별되면, 제2 의역 텍스트가 제1 의역 텍스트 ‘Athletes’를 반드시 포함하거나 제1 의역 텍스트 ‘Athletes’를 어순 상 앞에 위치시키지 않아도 되므로, 제2 번역 텍스트 ‘At London Olympic, athletes’와 동일한 ‘At London Olympic, athletes’를 제2 의역 텍스트로 출력할 수도 있음은 물론이다.
예를 들어, 도 2의 Step 1과 같이 프로세서(130)가 실시간 번역(또는, 통역) 서비스를 제공하기 위하여 제2 번역 텍스트 ‘At London Olympic athletes’보다 먼저 획득된 제1 번역 텍스트 ‘Athletes’를 스피커(110)를 통해 기 출력한 경우를 상정할 수 있다.
이어서, 도 2의 Step 2와 같이 제2 텍스트 ‘런던 올림픽에서’가 수신됨에 따라 프로세서(130)가 제1 텍스트 ‘선수들이’와 제2 텍스트 ‘런던 올림픽에서’를 제1 신경망 모델(1)에 입력하여 획득한 제2 번역 텍스트 ‘At London Olympic, athletes’를 출력한다면, 사용자 관점에서는 ‘Athletes’, ‘At London Olympic, athletes’를 순차적으로 청취하게되며 일부 표현(또는, 일부 문구)을 중복하여 청취함에 따라 번역에 대한 신뢰도가 하락하는 문제가 있다.
다른 예로, 프로세서(130)가 의미적으로 완벽하고 정확한 번역문을 제공하기 위하여 사용자 음성을 충분히 수신한 뒤에(예를 들어, 하나의 완성 문장에 해당하는 사용자 음성을 수신한 뒤에), 사용자 음성을 번역하여 출력한다면, 사용자 음성의 입력 시점부터 번역된 음성의 출력 시점까지 장 시간이 소요(즉, 레이턴시 타임(latency time)이 증가) 되는 문제가 있다.
따라서, 본 개시의 다양한 실시 예에 따른 프로세서(130)는 상술한 두 가지의 문제점을 해결하기 위하여 수신된 텍스트를 번역(또는 의역)한 뒤, 번역 텍스트(또는, 의역 텍스트)가 출력 가능한 것으로 식별되면 이를 스피커(110)를 통해 우선적으로 출력할 수 있다.
이어서, 프로세서(130)는 새롭게 수신된 텍스트를 번역(또는, 의역)하여 출력함에 있어서, 새롭게 수신된 텍스트를 단순히 번역하여 출력하는데 그치지 않고, 기 출력된 번역 텍스트(또는, 의역 텍스트)가 있다면 이를 고려하여 새롭게 수신된 텍스트를 의역한 뒤에 출력함에 특징이 있다.
도 2를 참조하여 보다 구체적으로 설명하면, 제2 신경망 모델(2)은 제1 의역 텍스트 ‘Athletes’의 출력 가능 여부에 대한 식별 결과를 고려하여 제2 번역 텍스트 ‘At London Olympic athletes’에 대응되는 제2 의역 텍스트를 출력할 수 있다.
예를 들어, 제2 신경망 모델(2)은 제1 의역 텍스트 ‘Athletes’가 출력된 것으로 식별되면, 제1 조건) ‘제1 의역 텍스트 ‘Athletes’가 어순 상 맨 앞에 위치’, 제2 조건) ‘제2 번역 텍스트 ‘At London Olympic, athletes’와 의미적으로 유사’를 만족시키도록 의역된 제2 의역 텍스트 ‘Athletes at London Olympic’을 출력할 수 있다.
이어서, 프로세서(130)는 제2 번역 텍스트 및 제2 의역 텍스트에 기초하여 제2 의역 텍스트의 출력 가능 여부를 식별할 수 있다.
일 실시 예에 따라, 프로세서(130)는 제2 번역 텍스트 ‘At London Olympic, athletes’와 제2 의역 텍스트 ‘Athletes at London Olympic’ 간 의미 유사도 값을 획득할 수 있다.
또한, 프로세서(130)는 제2 의역 텍스트 ‘Athletes at London Olympic’의 문장 적합도 값을 획득할 수 있다.
이어서, 프로세서(130)는 제2 번역 텍스트와 제2 의역 텍스트 간의 의미 유사도 값이 제1 임계 값 이상이고, 제2 의역 텍스트의 문장 적합도 값이 제2 임계 값 이상이면, 제2 의역 텍스트가 출력 가능한 것으로 식별하고, 제2 의역 텍스트를 출력하도록 스피커(110)를 제어할 수 있다.
한편, 프로세서(130)는 제1 의역 텍스트가 출력된 것으로 식별되고, 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 제2 의역 텍스트에서 제1 의역 텍스트를 제외한 나머지를 출력하도록 스피커(110)를 제어할 수 있다.
예를 들어, 도 2를 참조하면, 프로세서(130)는 step 1에서 제1 의역 텍스트 ‘Athletes’가 출력된 것으로 식별되고, 제2 의역 텍스트 ‘Athletes at London Olympic’가 출력 가능한 것으로 식별되면, 제2 의역 텍스트 ‘Athletes at London Olympic’에서 제1 의역 텍스트 ‘Athletes’를 제외한 나머지 ‘at London Olympic’를 출력하도록 스피커(110)를 제어할 수 있다.
상술한 방식에 따르면 크게 두 가지의 효과가 있을 수 있다. 프로세서(130)가 텍스트 ‘선수들이 런던올림픽에서’가 모두 입력될 때까지 대기하지 않으며, ‘선수들이’만이 수신된 경우에도 ‘Athletes’를 출력하므로 레이턴시 타임이 감소할 수 있다. 또한, ‘선수들이’에 이어서, 텍스트 ‘런던올림픽에서’가 순차적으로 수신된 경우에 프로세서(130)는 스피커(110)를 통해 ‘at London Olympic’을 출력할 수 있다. 사용자 관점에서는 ‘Athletes’ 및 ‘at London Olympic’을 순차적으로 제공받음에 따라 실시간 번역 서비스(또는, 통역 서비스)를 제공받는 것과 기분이 들 수 있다.
여기서, 제2 신경망 모델(2)은 제1 번역 텍스트 및 제2 번역 텍스트가 순차적으로 입력되면, 먼저 입력된 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 유지 또는 고정시킨 상태에서 제2 번역 텍스트와 의미적으로 유사한 제2 의역 텍스트를 출력하도록 학습된 모델이며, RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network), CNN (Convolutional Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등으로 구현될 수 있으나, 이에 한정되지 않는다.
한편, 제2 신경망 모델(2)이 먼저 입력된 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 유지 또는 고정시킨 상태에서 제2 번역 텍스트를 의역하는 방법을 상세히 설명하면 다음과 같다.
도 2에 도시된 Step 1을 참조하면, 프로세서(130)는 제2 신경망 모델(2)을 통해 획득한 제1 의역 텍스트의 출력 가능 여부에 기초하여 제1 의역 텍스트를 출력할 수도 있고, 출력하지 않을 수도 있다.
일 실시 예로, 프로세서(130)는 번역 텍스트와 의역 텍스트 간의 의미 유사도(sentence similarity) 값을 출력하도록 학습된 신경망 모델에 제1 번역 텍스트와 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 입력하여 제1 번역 텍스트와 제1 의역 텍스트 간 의미 유사도 값을 획득할 수도 있다.
한편, 프로세서(130)는 의미 유사도 값이 제1 임계 값 이상이면, 제2 신경망 모델(2)을 통해 획득한 제1 의역 텍스트를 출력할 수 있다.
예를 들어, 도 2의 Step 4를 참조하면, 프로세서(130)는 제1 번역 텍스트 “If athletes take drug at London Olympic,’과 제1 의역 텍스트 ‘Athletes at London Olympic who take drug will’ 간의 의미 유사도 값을 획득하고, 의미 유사도 값이 제1 임계 값 0.5 이상이면, 제1 의역 텍스트 ‘Athletes at London Olympic who take drug will’를 출력할 수 있다.
일 실시 예에 따른 프로세서(130)는 도 2의 Step 5를 참조하면, 제1 의역 텍스트 ‘Athletes at London Olympic who take drug will’의 출력 여부(또는, 출력 가능 여부 식별 결과) 및 새롭게 수신된 텍스트 ‘적발될’을 포함하는 ‘선수들이 런던 올림픽에서 약물을 복용한다면, 적발될’에 기초한 제2 번역 텍스트 ‘If athletes take drug at London Olympic, being caught’를 제2 신경망 모델(2)에 입력할 수 있다.
이어서, 제2 신경망 모델(2)은 다음의 두 가지의 조건을 만족하는 제2 번역 텍스트 ‘If athletes take drug at London Olympic, being caught’에 대응되는 제2 의역 텍스트를 출력할 수 있다. 첫 번째로, 제2 의역 텍스트는 제1 의역 텍스트 ‘Athletes at London Olympic who take drug will’를 포함할 수 있다.
두 번째로, 제1 의역 텍스트 ‘Athletes at London Olympic who take drug will’는 제2 의역 텍스트 내에서 어순 상 맨 앞에 위치할 수 있다.
따라서, 제2 신경망 모델(2)은 제2 번역 텍스트 ‘If athletes take drug at London Olympic, being caught’에 대응되는 제2 의역 텍스트 ‘Athletes at London Olympic who take drug being caught’를 출력할 수 있다.
이어서, 프로세서(130)는 제2 의역 텍스트 ‘Athletes at London Olympic who take drug being caught’의 출력 가능 여부를 식별할 수 있다.
도 2의 Step 4 및 5에서는, 의역 텍스트의 출력 가능 여부로서 번역 텍스트와 의역 텍스트 간의 의미 유사도 값이 제1 임계 값 이상인지를 고려하는 일 실시 예만을 설명하였으나, 의미 유사도 값 외에 문장 적합도 값도 고려하여 출력 가능 여부를 식별할 수 있음은 물론이다.
도 2의 Step 5 를 참조하면, 프로세서(130)는 제2 의역 텍스트 ‘Athletes at London Olympic who take drug being caught’의 문장 적합도 값을 획득할 수 있다. 예를 들어, 프로세서(130)는 문장 적합도 값을 출력하도록 학습된 신경망 모델에 의역 텍스트를 입력하여 문장 적합도 값을 획득할 수도 있다.
일 실시 예에 따라, 제2 의역 텍스트 ‘Athletes at London Olympic who take drug being caught’의 문장 적합도 값이 제2 임계 값 미만이면, 제2 번역 텍스트 ‘If athletes take drug at London Olympic, being caught’와 제2 의역 텍스트 ‘Athletes at London Olympic who take drug being caught’ 간의 의미 유사도 값이 제1 임계 값 이상임에도 프로세서(130)는 제2 의역 텍스트 ‘Athletes at London Olympic who take drug being caught’를 출력 가능하지 않은 것으로 식별할 수 있다.
이어서, 도 2의 Step 6을 참조하면, 프로세서(130)는 새롭게 수신된 텍스트 ‘것입니다.’를 포함하는 ‘선수들이 런던 올림픽에서 약물을 복용한다면, 적발될 것입니다.’에 기초한 제3 번역 텍스트 ‘If athletes take drug at London Olympic, they are likely to be caught’를 제2 신경망 모델(2)에 입력할 수 있다.
이어서, 제2 신경망 모델(2)은 제3 번역 텍스트 ‘If athletes take drug at London Olympic, they are likely to be caught’에 대응되는 제3 의역 텍스트 ‘Athletes at London Olympic who take drug will be caught’를 출력할 수 있다.
여기서, 제2 신경망 모델(2)이 출력한 제3 의역 텍스트 ‘Athletes at London Olympic who take drug will be caught’는 다음의 두가지 조건을 만족한다.
첫 번째로, Step 5에서 프로세서(130)는 제2 신경망 모델(2)이 출력한 제2 의역 텍스트 ‘Athletes at London Olympic who take drug being caught’가 출력 가능하지 않은 것으로 식별하였으므로, Step 6에서 제2 신경망 모델(2)이 출력하는 제3 의역 텍스트는 Step 5의 이전 Step 즉, Step 1 내지 Step 4까지 스피커(110)를 통해 출력된 ‘Athletes at London Olympic who take drug will’를 포함한다.
두 번째로, Step 6에서 제2 신경망 모델(2)은 Step 1 내지 Step 4까지 스피커(110)를 통해 출력된 ‘Athletes at London Olympic who take drug will’가 어순 상 맨 앞에 위치하는 제3 의역 텍스트를 출력할 수 있다.
즉, 현 Step(예를 들어 Step N)의 이전 Step(예를 들어 Step N-1)에서 제2 신경망 모델(2)을 통해 획득한 의역 텍스트가 출력 가능하지 않은 것으로 식별되었다면, 제2 신경망 모델(2)은 이전 Step(예를 들어 Step N-1)에서 획득된 의역 텍스트가 아닌, 그 이전 Step(예를 들어 Step N-2)에서 출력 가능한 것으로 식별된 바 있는 의역 텍스트가 어순 상 맨 앞에 위치하며 현 Step(예를 들어 Step N-1)의 번역 텍스트에 대응되는 의역 텍스트를 출력할 수 있다.
한편, 프로세서(130)는 제3 의역 텍스트 ‘Athletes at London Olympic who take drug will be caught’에서, Step 1 내지 Step 4에서 스피커(110)를 통해 출력된 바 있는 ‘Athletes at London Olympic who take drug will’를 제외한 나머지 텍스트 ‘be caught’ 만을 순차적으로 출력할 수 있다.
도 2를 참조하면, 프로세서(130)는 ‘선수들이 런던 올림픽에서 약물을 복용한다면, 적발될 것입니다.’가 모두 수신되기 전에, Step 1에서 ‘Athletes’, Step 2에서 ‘at London Olympic’, Step 4에서 ‘who take drug will’, Step 6에서 ‘be caught’를 순차적으로 출력할 수 있고, 사용자 관점에서 실시간으로 번역된 텍스트를 제공받는 효과를 가질 수 있다.
도 3 내지 도 7은 본 개시의 일 실시 예에 따른 텍스트, 번역 텍스트 및 의역 텍스트를 설명하기 위한 흐름도이다.
도 3 내지 도 7을 참조하여, 다른 예시를 통해 텍스트, 번역 텍스트 및 의역 텍스트를 설명하도록 한다.
우선, 도 3은 Step 1으로서, 문장을 구성하는 복수의 단어 중 첫 단어가 수신된 경우를 상정하여 도시한 흐름도이다.
사용자가 제1 언어의 ‘우리’를 발화한 경우를 상정할 수 있다. 이 경우, 프로세서(130)는 마이크(미도시)를 통해 사용자 음성 즉, ‘우리’가 수신되면(S11), 음성 인식을 수행하여 제1 텍스트 ‘우리’를 획득할 수 있다(S12). 예를 들어, 프로세서(130)는 자동 음성 인식(Automatic Speech Recognition) 모델, STT(Speech-to-Text) 모델 등으로 이용하여 사용자 음성에 대응되는 텍스트를 획득할 수 있다.
이어서, 프로세서(130)는 제1 신경망 모델(1)을 통해 제1 텍스트 ‘우리’에 대응되는 제1 번역 텍스트 ‘We’를 식별할 수 있다(S13).
이어서, 프로세서(130)는 제1 번역 텍스트 ‘We’를 제2 신경망 모델(2)에 입력하여 제1 의역 텍스트 ‘Our’를 획득할 수 있다(S14).
본 개시의 일 실시 예에 따른 프로세서(130)는 제1 의역 텍스트 ‘Our’의 출력 가능 여부를 식별할 수 있고, 구체적으로, 제1 의역 텍스트 ‘Our’에 대응되는 의미 유사도 값 및 문장 적합도 값을 획득할 수 있다.
우선, 도 3을 참조하면, 프로세서(130)는 제1 번역 텍스트 ‘We’와 제1 의역 텍스트 ‘Our’ 간의 의미 유사도 값을 식별하고, 의미 유사도 값이 제1 임계 값(예를 들어, 0.5) 이상이면(S15: Y), 제1 의역 텍스트 ‘Our’의 문장 적합도 값을 식별할 수 있다(S16).
S16 단계에서, 프로세서(130)는 제1 의역 텍스트 ‘Our’의 문장 적합도 값이 제2 임계 값(예를 들어, 0.5) 이상이면(S16: Y), 제1 의역 텍스트 ‘Our’가 출력 가능한 것으로 판단하여 TTS 모델을 통해 제1 의역 텍스트 ‘Our’를 사운드 신호로 변환한 뒤, 스피커(110)를 통해 출력할 수 있다.
다른 예로, S15 단계에서 의미 유사도 값이 제1 임계 값 미만이거나(S15: N), S16 단계에서 문장 적합도 값이 제2 임계 값 미만이면(S16: N), 프로세서(130)는 제1 의역 텍스트 ‘Our’가 출력 가능하지 않은 것으로 판단하여 해당 단계 즉, Step 1을 종료시킬 수 있다.
이하에서는 설명의 편의를 위해, 제1 의역 텍스트에 대응되는 의미 유사도 값 또는 문장 적합도 값 중 적어도 하나가 임계 값 미만으로 식별되어 제1 의역 텍스트가 출력 가능하지 않은 것으로 판단된 경우를 상정하여 설명하도록 한다.
이어서, 도 4는 Step 2로서, 문장을 구성하는 복수의 단어 중 두 번째 단어가 수신된 경우를 상정하여 도시한 흐름도이다.
사용자가 제1 언어의 ‘모두’를 발화한 경우를 상정할 수 있다. 이 경우, 프로세서(130)는 마이크(미도시)를 통해 사용자 음성 즉, ‘모두’가 수신되면(S21), 음성 인식을 수행하여 제2 텍스트 ‘모두’를 획득할 수 있다(S22).
이어서, 프로세서(130)는 제1 텍스트 ‘우리’ 및 제2 텍스트 ‘모두’를 제1 신경망 모델(1)에 입력하여 제2 번역 텍스트 ‘All of us’를 획득할 수 있다(S23).
이어서, 프로세서(130)는 제2 번역 텍스트 ‘All of us’를 제2 신경망 모델(2)에 입력하여 제2 의역 텍스트 ‘All of us’를 획득할 수 있다(S24). 한편, 번역 텍스트와 번역 텍스트에 대응되는 의역 텍스트가 동일할 수도 있음은 상술한 바 있다.
S24 단계에서 제2 신경망 모델(2)은 제2 번역 텍스트 ‘All of us’ 외에도, 제1 의역 텍스트의 출력 여부(또는, 출력 가능 여부)를 고려하여 제2 번역 텍스트 ‘All of us’에 대응되는 제2 의역 텍스트를 출력할 수 있다.
예를 들어, 도 3에 도시된 Step 1에서 제1 의역 텍스트 ‘Our’가 출력 가능한 것으로 판단되어 스피커(110)를 통해 출력되었다면, S24 단계에서 제2 신경망 모델(2)은 제1 의역 텍스트 ‘Our’가 어순 상 맨 앞에 위치하며 제2 번역 텍스트 ‘All of us’ 와 의미적으로 유사한 제2 의역 텍스트를 출력할 수 있다. 다만, 상술한 바와 같이, 도 3에 도시된 Step 1에서 제1 의역 텍스트 ‘Our’가 출력 가능하지 않은 것으로 판단 경우를 상정하여 S24 단계에서 제2 신경망 모델(2)은 제2 의역 텍스트 ‘All of us’를 출력할 수 있다.
이어서, 프로세서(130)는 제2 번역 텍스트 ‘All of us’와 제2 의역 텍스트 ‘All of us’ 간의 의미 유사도 값을 식별하고, 의미 유사도 값이 제1 임계 값(예를 들어, 0.5) 이상이면(S25: Y), 제2 의역 텍스트 ‘All of us’의 문장 적합도 값을 식별할 수 있다(S26).
S26 단계에서, 프로세서(130)는 제2 의역 텍스트 ‘All of us’의 문장 적합도 값이 제2 임계 값(예를 들어, 0.5) 이상이면(S26: Y), 제2 의역 텍스트 ‘All of us’가 출력 가능한 것으로 판단하여 TTS 모델을 통해 제2 의역 텍스트 ‘All of us’를 사운드 신호로 변환한 뒤, 스피커(110)를 통해 출력할 수 있다(S27).
이하에서는 설명의 편의를 위해, 제2 의역 텍스트에 대응되는 의미 유사도 값 및 문장 적합도 값 각각이 임계 값 이상으로 식별되어 제2 의역 텍스트가 출력 가능한 것으로 판단된 경우를 상정하여 설명하도록 한다.
이어서, 도 5는 Step 3으로서, 문장을 구성하는 복수의 단어 중 세 번째 단어가 수신된 경우를 상정하여 도시한 흐름도이다.
사용자가 제1 언어의 ‘어려운 시기이지만’을 발화한 경우를 상정할 수 있다. 이 경우, 프로세서(130)는 마이크를 통해 사용자 음성 즉, ‘어려운 시기이지만’이 수신되면(S31), 음성 인식을 수행하여 제3 텍스트 ‘어려운 시기이지만’을 획득할 수 있다(S32).
이어서, 프로세서(130)는 제1 텍스트 ‘우리’, 제2 텍스트 ‘모두’ 및 제3 텍스트 ‘어려운 시기이지만’을 제1 신경망 모델(1)에 입력하여 제3 번역 텍스트 ‘It’s difficult time for everyone, but’를 획득할 수 있다(S33).
이어서, 프로세서(130)는 제3 번역 텍스트 ‘It’s difficult time for everyone, but’를 제2 신경망 모델(2)에 입력하여 제3 의역 텍스트 ‘All of us are now having hard time, but’를 획득할 수 있다(S34).
S34 단계에서 제2 신경망 모델(2)은 제3 번역 텍스트 ‘It’s difficult time for everyone, but’ 외에도, 제2 의역 텍스트의 출력 여부(또는, 출력 가능 여부)를 고려하여 제3 번역 텍스트 ‘It’s difficult time for everyone, but’에 대응되는 제3 의역 텍스트를 출력할 수 있다.
예를 들어, 도 4에 도시된 Step 2에서 제2 의역 텍스트 ‘All of us’가 출력 가능한 것으로 판단되어 스피커(110)를 통해 출력되었다면, S34 단계에서 제2 신경망 모델(2)은 제2 의역 텍스트 ‘All of us’가 어순 상 맨 앞에 위치하며 제3 번역 텍스트 ‘It’s difficult time for everyone, but’와 의미적으로 유사한 제3 의역 텍스트 ‘All of us are now having hard time, but’를 출력할 수 있다.
이어서, 프로세서(130)는 제3 번역 텍스트 ‘It’s difficult time for everyone, but’와 제3 의역 텍스트 ‘All of us are now having hard time, but’ 간의 의미 유사도 값을 식별하고, 의미 유사도 값이 제1 임계 값(예를 들어, 0.5) 이상이면(S35: Y), 제3 의역 텍스트 ‘All of us are now having hard time, but’의 문장 적합도 값을 식별할 수 있다(S36).
S36 단계에서, 프로세서(130)는 제3 의역 텍스트 ‘All of us are now having hard time, but’의 문장 적합도 값이 제2 임계 값(예를 들어, 0.5) 이상이면(S36: Y), 제3 의역 텍스트 ‘All of us are now having hard time, but’가 출력 가능한 것으로 판단하여 TTS 모델을 통해 제3 의역 텍스트 ‘All of us are now having hard time, but’를 사운드 신호로 변환한 뒤, 스피커(110)를 통해 출력할 수 있다(S37).
한편, S37 단계에서는, S27 단계에서 스피커(110)를 통해 기 출력된 ‘All of us’를 제외한 ‘are now having hard time, but’만을 사운드 신호로 변환한 뒤, 스피커(110)를 통해 출력할 수 있다.
다른 예로, 도 3에 도시된 Step 1에서 제1 의역 텍스트 ‘Our’가 출력 가능하지 않은 것으로 판단되고, 도 4에 도시된 Step 2에서 제2 의역 텍스트 ‘All of us’가 출력 가능하지 않은 것으로 판단되었다면, S34단계에서 제2 신경망 모델(2)은 제3 번역 텍스트에 대응되는 제3 의역 텍스트로 ‘It’s difficult time for everyone, but’를 출력할 수도 있다.
이어서, 도 6는 Step 4로서, 문장을 구성하는 복수의 단어 중 네 번째 단어가 수신된 경우를 상정하여 도시한 흐름도이다.
사용자가 제1 언어의 ‘서로를 돕고’를 발화한 경우를 상정할 수 있다. 이 경우, 프로세서(130)는 마이크를 통해 사용자 음성 즉, ‘서로를 돕고’가 수신되면(S41), 음성 인식을 수행하여 제4 텍스트 ‘서로를 돕고’을 획득할 수 있다(S42).
이어서, 프로세서(130)는 제1 텍스트 ‘우리’, 제2 텍스트 ‘모두’, 제3 텍스트 ‘어려운 시기이지만’ 및 제4 텍스트 ‘서로를 돕고’를 제1 신경망 모델(1)에 입력하여 제4 번역 텍스트 ‘It’s difficult time for everyone, but let’s help each other’를 획득할 수 있다(S43).
이어서, 프로세서(130)는 제4 번역 텍스트 ‘It’s difficult time for everyone, but let’s help each other’를 제2 신경망 모델(2)에 입력하여 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’를 획득할 수 있다(S44).
S44 단계에서 제2 신경망 모델(2)은 제4 번역 텍스트 ‘It’s difficult time for everyone, but let’s help each other’ 외에도, 제3 의역 텍스트의 출력 여부(또는, 출력 가능 여부)를 고려하여 제4 번역 텍스트 ‘All of us are now having hard time, but mutually help each other’에 대응되는 제4 의역 텍스트를 출력할 수 있다.
예를 들어, 도 5에 도시된 Step 3에서 제3 의역 텍스트 ‘All of us are now having hard time, but’가 출력 가능한 것으로 판단되어 스피커(110)를 통해 출력되었다면, S44 단계에서 제2 신경망 모델(2)은 제3 의역 텍스트 ‘All of us are now having hard time, but’가 어순 상 맨 앞에 위치하며 제4 번역 텍스트 ‘It’s difficult time for everyone, but let’s help each other’와 의미적으로 유사한 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’를 출력할 수 있다.
이어서, 프로세서(130)는 제4 번역 텍스트 ‘It’s difficult time for everyone, but let’s help each other’와 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’ 간의 의미 유사도 값을 식별하고, 의미 유사도 값이 제1 임계 값(예를 들어, 0.5) 이상이면(S45: Y), 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’의 문장 적합도 값을 식별할 수 있다(S46).
S46 단계에서, 프로세서(130)는 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’의 문장 적합도 값이 제2 임계 값(예를 들어, 0.5) 이상이면(S46: Y), 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’가 출력 가능한 것으로 판단하여 TTS 모델을 통해 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’를 사운드 신호로 변환한 뒤, 스피커(110)를 통해 출력할 수 있다(S47).
한편, S47 단계에서는, S27 및 S37 단계에서 스피커(110)를 통해 기 출력된 ‘All of us’, ‘are now having hard time, but’을 제외한 ‘mutually help each other’만을 사운드 신호로 변환한 뒤, 스피커(110)를 통해 출력할 수 있다.
다른 예로, S45 단계에서 의미 유사도 값이 제1 임계 값 미만이거나(S45: N), S46 단계에서 문장 적합도 값이 제2 임계 값 미만이면(S46: N), 프로세서(130)는 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’가 출력 가능하지 않은 것으로 판단하여 해당 단계 즉, Step 4를 종료시킬 수 있다.
이어서, 도 7은 Step 5로서, 문장을 구성하는 복수의 단어 중 마지막 단어가 수신된 경우를 상정하여 도시한 흐름도이다.
사용자가 제1 언어의 ‘격려합시다’를 발화한 경우를 상정할 수 있다. 이 경우, 프로세서(130)는 마이크를 통해 사용자 음성 즉, ‘격려합시다’가 수신되면(S51), 음성 인식을 수행하여 제5 텍스트 ‘격려합시다’를 획득할 수 있다(S52).
이어서, 프로세서(130)는 제1 텍스트 ‘우리’, 제2 텍스트 ‘모두’, 제3 텍스트 ‘어려운 시기이지만’, 제4 텍스트 ‘서로를 돕고’ 및 제5 텍스트 ‘격려합시다’를 제1 신경망 모델(1)에 입력하여 제5 번역 텍스트 ‘It’s difficult time for everyone, but let’s help and encourage each other’를 획득할 수 있다(S53).
이어서, 프로세서(130)는 제5 번역 텍스트 ‘It’s difficult time for everyone, but let’s help and encourage each other’를 제2 신경망 모델(2)에 입력하여 제5 의역 텍스트 ‘All of us are now having hard time, but mutually help each other and support’를 획득할 수 있다(S54).
S54 단계에서 제2 신경망 모델(2)은 제5 번역 텍스트 ‘It’s difficult time for everyone, but let’s help and encourage each other’ 외에도, 제4 의역 텍스트의 출력 여부(또는, 출력 가능 여부)를 고려하여 제5 번역 텍스트 ‘It’s difficult time for everyone, but let’s help and encourage each other’에 대응되는 제5 의역 텍스트를 출력할 수 있다.
예를 들어, 도 6에 도시된 Step 4에서 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’가 출력 가능한 것으로 판단되어 스피커(110)를 통해 출력되었다면, S54 단계에서 제2 신경망 모델(2)은 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’가 어순 상 맨 앞에 위치하며 제5 번역 텍스트 ‘It’s difficult time for everyone, but let’s help and encourage each other’와 의미적으로 유사한 제5 의역 텍스트 ‘All of us are now having hard time, but mutually help each other and support’를 출력할 수 있다.
이어서, 프로세서(130)는 제5 번역 텍스트 ‘It’s difficult time for everyone, but let’s help and encourage each other’와 제5 의역 텍스트 ‘All of us are now having hard time, but mutually help each other and support’ 간의 의미 유사도 값을 식별하고, 의미 유사도 값이 제1 임계 값(예를 들어, 0.5) 이상이면(S55: Y), 제5 의역 텍스트 ‘All of us are now having hard time, but mutually help each other and support’의 문장 적합도 값을 식별할 수 있다(S56).
S56 단계에서, 프로세서(130)는 제5 의역 텍스트 ‘All of us are now having hard time, but mutually help each other and support’의 문장 적합도 값이 제2 임계 값(예를 들어, 0.5) 이상이면(S56: Y), 제5 의역 텍스트 ‘All of us are now having hard time, but mutually help each other and support’가 출력 가능한 것으로 판단하여 TTS 모델을 통해 제5 의역 텍스트 ‘All of us are now having hard time, but mutually help each other and support’를 사운드 신호로 변환한 뒤, 스피커(110)를 통해 출력할 수 있다(S57).
한편, S57 단계에서는, S27, S37 및 S47 단계에서 스피커(110)를 통해 기 출력된 ‘All of us’, ‘are now having hard time, but’ 및 ‘mutually help each other’를 제외한 ‘and support’만을 사운드 신호로 변환한 뒤, 스피커(110)를 통해 출력할 수 있다.
도 8은 본 개시의 일 실시 예에 따른 EOP(End of phrase)를 설명하기 위한 도면이다.
도 8은 도 3 내지 도 7의 흐름도를 참조하여 설명한 Step 1 내지 Step 5 각각에 대응되는 텍스트, 번역 텍스트, 의역 텍스트, 의미 유사도 값, 문장 적합도 값 및 출력을 표로 정리한 것이다. 한편, 도 8의 표를 참조하면, End of Phrase 항목이 추가되었으며, 이하에서는 End Of Phrase(이하, EOP)에 대해 설명하도록 한다.
Step 2를 참조하면, 본 개시의 일 실시 예에 따른 프로세서(130)는 제1 텍스트 ‘우리’ 및 제2 텍스트 ‘모두’를 제3 신경망 모델(3)에 입력하여 제1 및 제2 텍스트가 구(phrase)에 대응되는지 여부에 대한 정보를 획득할 수 있다. 이어서, 프로세서(130)는 제1 신경망 모델(1)이 출력한 제2 번역 텍스트 및 제3 신경망 모델(3)이 출력한 제1 및 제2 텍스트가 구에 대응되는지 여부에 대한 정보를 제2 신경망 모델(2)에 입력하여 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득할 수 있다. 한편, 제3 신경망 모델(3)은 입력된 텍스트들이 구에 대응되는지 여부를 판단하도록 학습된 모델일 수 있다.
일 실시 예에 따라, 제2 신경망 모델(2)은, 프로세서(130)를 통해 입력된 정보에 기초하여 제1 및 제2 텍스트가 구에 대응되는 것으로 식별되면, 제2 번역 텍스트에 대응되며 문장 형태 또는 구 형태의 제2 의역 텍스트를 출력할 수 있다. 다른 예로, 제2 신경망 모델(2)은 제1 및 제2 텍스트가 구에 대응되지 않는 것으로 식별되면, 제2 번역 텍스트에 대응되며 미완성 문장 형태의 제2 의역 텍스트를 출력할 수 있다.
도 8을 참조하면, Step 2에서, 프로세서(130)는 제1 텍스트 ‘우리’와 제2 텍스트 ‘모두’가 구에 대응되는지 여부를 식별한 뒤, 식별 결과 및 제2 번역 텍스트 ‘All of us’를 제2 신경망 모델(2)에 입력할 수 있다.
이어서, 제2 신경망 모델(2)은 제1 및 제2 텍스트가 구에 대응되지 않으면, 문장의 자유도가 높도록 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 출력할 수 있다. 예를 들어, 제2 신경망 모델(2)은 제1 및 제2 텍스트가 구에 대응되지 않으면, 제2 번역 텍스트에 대응되는 제2 의역 텍스트가 종결 어미(sentence-closing ending)를 포함하지 않도록 또는, 마침표(.) 또는 쉼표(,)로 끝나지 않도록 하여 제2 의역 텍스트의 자유도를 높일 수 있다. 즉, 제2 신경망 모델(2)은 제1 및 제2 텍스트가 구에 대응되지 않으면, 미완성 문장 형태의 제2 의역 텍스트를 출력할 수 있다.
다른 예로, 도 8의 Step 3을 참조하면, 프로세서(130)는 제1 텍스트 ‘우리’와 제2 텍스트 ‘모두’ 및 제3 텍스트 ‘어려운 시기이지만’이 구에 대응되는지 여부를 식별한 뒤, 식별 결과 및 제3 번역 텍스트 ‘It’s a difficult time for everyone, but’를 제2 신경망 모델(2)에 입력할 수 있다.
이어서, 제2 신경망 모델(2)은 제1 내지 제3 텍스트가 구에 대응되면, 문장의 자유도가 낮도록 제3 번역 텍스트에 대응되는 제3 의역 텍스트를 출력할 수 있다. 예를 들어, 제2 신경망 모델(2)은 제1 내지 제3 텍스트가 구에 대응되면, 제3 번역 텍스트에 대응되는 제3 의역 텍스트가 종결 어미 또는, 마침표 또는 쉼표로 끝나도록 하여(또는, 종결 어미, 마침표 또는 쉼표 등을 포함하도록 하여) 제3 의역 텍스트의 자유도를 낮출 수 있다. 즉, 제2 신경망 모델(2)은 제1 내지 제3 텍스트가 구에 대응되면, 문장 형태 또는 구 형태의 제3 의역 텍스트를 출력할 수 있다.
제1 신경망 모델(1), 제2 신경망 모델(2) 및 제3 신경망 모델(3) 각각의 출력을 도 9를 참조하여 흐름 순서로 설명하도록 한다.
도 9는 본 개시의 일 실시 예에 따른 제3 신경망 모델을 설명하기 위한 흐름도이다.
도 9는 도 8의 표에서 Step 4에 기초하여 제3 신경망 모델(3)을 출력을 구체적으로 설명하기 위한 흐름도이다. 도 9는 Step 4로서, 문장을 구성하는 복수의 단어 중 네 번째 단어가 수신된 경우를 상정하여 도시한 흐름도이다.
우선, 사용자가 제1 언어의 ‘서로를 돕고’를 발화한 경우를 상정할 수 있다. 이 경우, 프로세서(130)는 마이크를 통해 사용자 음성 즉, ‘서로를 돕고’가 수신되면(S41), 음성 인식을 수행하여 제4 텍스트 ‘서로를 돕고’을 획득할 수 있다(S42).
이어서, 프로세서(130)는 제1 텍스트 ‘우리’, 제2 텍스트 ‘모두’, 제3 텍스트 ‘어려운 시기이지만’ 및 제4 텍스트 ‘서로를 돕고’를 제1 신경망 모델(1)에 입력하여 제4 번역 텍스트 ‘It’s difficult time for everyone, but let’s help each other’를 획득할 수 있다(S43). S41 내지 S43 단계는 도 6에 도시된 바와 동일하다.
본 개시의 일 실시 예에 따른 프로세서(130)는 Step 1 내지 Step 4 각각에서 획득한 제1 내지 제4 텍스트 즉, ‘우리 모두 어려운 시기이지만, 서로를 돕고’를 제3 신경망 모델(3)에 입력하고, 제3 신경망 모델(3)은 제1 내지 제4 텍스트가 구에 대응되는지 여부에 대한 정보를 출력할 수 있다(S48).
이어서, 프로세서(130)는 제4 번역 텍스트 ‘It’s difficult time for everyone, but let’s help each other’ 및, 제3 신경망 모델(3)이 출력한 제1 내지 제4 텍스트가 구에 대응되는지 여부에 대한 정보를 제2 신경망 모델(2)에 입력하여 제4 의역 텍스트 ‘All of us are now having hard time, but mutually help each other’를 획득할 수 있다(S44).
특히, S44 단계에서, 제2 신경망 모델(2)은 제3 신경망 모델(3)이 출력한 정보에 기초하여 제1 내지 제4 텍스트가 구에 대응되는 것으로 식별되면, 문장의 자유도가 낮도록 제4 번역 텍스트에 대응되는 제4 의역 텍스트를 출력할 수 있다. 예를 들어, 제2 신경망 모델(2)은 제4 번역 텍스트에 대응되는 제4 의역 텍스트가 종결 어미 또는, 마침표 또는 쉼표로 끝나도록 하여(또는, 종결 어미, 마침표 또는 쉼표 등을 포함하도록 하여) 제4 의역 텍스트의 자유도를 낮출 수 있다.
다른 예로, 제2 신경망 모델(2)은 제3 신경망 모델(3)이 출력한 정보에 기초하여 제1 내지 제4 텍스트가 구에 대응되지 않는 것으로 식별되면, 문장의 자유도가 높도록 제4 번역 텍스트에 대응되는 제4 의역 텍스트를 출력할 수 있다.
한편, 도 9에 도시된 흐름도에서 S45 내지 S47 단계는 도 6에서 설명한 바 있으므로 생략하도록 한다.
<제2 신경망 모델의 학습>
도 10a 및 도 10b는 본 개시의 일 실시 예에 따른 복수의 텍스트를 설명하기 위한 도면이다.
입력 텍스트에 대응되는 의역 텍스트를 출력하는 제2 신경망 모델(2)은 복수의 텍스트에 기초하여 학습될 수 있다.
예를 들어, 프로세서(130)는 언어 모델(Language Model, LM)을 이용하여 복수의 학습 텍스트를 획득할 수 있다. 여기서, 언어 모델은 입력 문장과 임계 값 이상의 유사도를 갖는 다른 문장을 획득하도록 학습된 인공 지능 모델을 의미할 수 있다. 언어 모델은 시퀀스-투-시퀀스(sequence-to-sequence) 모델일 수 있으며, 입력 데이터의 처리를 위한 인코더(encoder) 및 출력 데이터의 처리를 위한 디코더(decoder)를 포함할 수 있다.
여기서, 시퀀스(sequence)란 서로 연관된 연속의 데이터를 의미하며, 본 개시에 있어서의 제1 문장, 제2 문장 및 제3 문장과 같은 문장(sentence)이 바로 시퀀스의 예라고 할 수 있다.
언어 모델은 입력 데이터의 처리를 위한 인코더(encoder) 및 출력 데이터의 처리를 위한 디코더(decoder)를 포함할 수 있다. 여기서, 인코더 및 디코더 각각은 복수의 순환 신경망(Recurrent Neural Network, RNN) 셀을 포함할 수 있다. 예를 들어, 복수의 RNN 셀은 LSTM(Long Short-Term Memory) 또는 GRU(Gated Recurrent Unit)로 구성될 수 있다.
일 실시 예에 따른 언어 모델은 제1 언어의 단일어 코퍼스(Mono corpus)에 기초하여 샘플링 문장, 입력 문장을 수신한다. 도 9a를 참조하면, 샘플링 문장 텍스트 또는 제1 문장 텍스트(S1)은 ‘오늘은 비가 정말 많이 오네요’일 수 있다.
제1 문장 텍스트(S1)는 토큰화(tokenization)를 통해 단어 단위로 나누어질 수 있다. 예를 들어, 제1 문장 텍스트(S1)는 ‘오늘’, ‘비가’, ‘정말’, ‘많이’, ‘오네요’로 나누어질 수 있다. 이어서, 나누어진 각각의 단어는 워드 임베딩(word embedding)을 통해 벡터로 변환될 수 있다. 그리고, 벡터로 변환된 각각의 단어는 언어 모델에 포함되는 각각의 RNN 셀에 대한 각 시점(time-step)의 입력이 된다. 그리고, 나누어진 각각의 단어는 워드 임베딩을 통해 벡터로 변환되어 각각의 RNN 셀에 입력된다.
한편, 언어 모델은 제1 문장 텍스트(S1)에 포함된 각각의 단어와 유사한 단어들을 포함하는 복수의 단어 그룹을 식별할 수 있다. 즉, 복수의 단어 그룹 각각은 의미 유사도 값이 제1 임계 값 이상인 단어들의 집합을 의미할 수 있다.
예를 들어, 언어 모델은 ‘오늘’과 유사한 단어인 ‘지금’, ‘어제’를 포함하는 제2 그룹을 식별할 수 있다. 다른 예로, 언어 모델은 ‘비’와 유사한 단어인 ‘장마’, ‘폭우’, ‘이슬비’, 눈’, ‘가랑비’ 등을 포함하는 제4 그룹을 식별할 수 있다.
이어서, 언어 모델은 복수의 단어 그룹 각각에서 선택된 단어들에 기초하여 제1 문장 텍스트(S1)에 대응되는 제1 후보 문장, ..., 제n 후보 문장을 획득할 수 있다. 예를 들어, 언어 모델은 제1 문장 텍스트(S1) ‘오늘은 비가 정말 많이 오네요.’에 대응되는 제1 후보 문장 ‘오늘 폭우가 온다.’, 제2 후보 문장 ‘지금 비가 엄청 내린다.’ 등을 획득할 수 있다.
구체적으로, 언어 모델은 제1 문장 텍스트(S1)에 포함된 단어들 중 어느 하나의 단어에 기초하여 후보 문장의 앞부분을 고정시키고, 나머지 단어들 각각에 대응되는 단어 그룹에서 선택된 단어를 이용하여 후보 문장을 완성시킬 수 있다.
예를 들어, 도 9b를 참조하면, 언어 모델은 제1 문장 텍스트(S1)에 포함된 단어들 중 ‘오늘’을 맨 앞에 위치시키고, ‘비가’, ‘정말’, ‘많이’, ‘오네요’ 각각의 단어 그룹에서 선택된 단어들을 이용하여 제1 후보 문장, ..., 제n 후보 문장을 획득할 수 있다. 예를 들어, 언어 모델은 제1 후보 문장 ‘비가 지금은 정말 많이 오네요.’, 제2 후보 문장 ‘오늘 폭우가 옵니다.’, 제3 후보 문장 ‘오늘 이슬비가 매우 올 것이다.’ 등을 획득할 수 있다.
이어서, 언어 모델은 제1 문장 텍스트(S1)와 복수의 후보 문장들 간 퍼블렉서티(Perplexity(PPL)) 값 및 의미 유사도 값(Sim)을 획득할 수 있다.
도 9b를 참조하면, 언어 모델은 복수의 후보 문장들 중에서 퍼블렉서티 값이 임계 값 미만이고, 의미 유사도 값이 제1 임계 값 이상인 제2 문장 텍스트를 획득할 수 있다. 한편, 퍼블렉서티 값이 낮을수록 테스트 문장에 대해 높은 확률로 예측할 수 있음을 의미하므로, 퍼블렉서티 값이 낮은 테스트 문장들로 이루어진 언어 모델일수록 좋은 언어 모델을 의미할 수 있다.
이어서, 제2 신경망 모델은 제1 문장 텍스트(S1)과 제2 문장 텍스트를 이용하여 입력 텍스트에 대응되는 의역 텍스트를 출력하도록 학습될 수 있다.
도 11a 및 도 11b는 본 개시의 다른 실시 예에 따른 복수의 텍스트를 설명하기 위한 도면이다.
본 개시의 일 실시 예에 따른 프로세서(130)는 제1 신경망 모델(1)(예를 들어, 신경망 기계 번역(NMT) 모델)을 이용하여 복수의 학습 텍스트를 획득할 수 있다.
예를 들어, 신경망 기계 번역 모델은 병렬 코퍼스(parallel corpus)에 기초하여 학습된 모델일 수 있다. 여기서, 병렬 코퍼스는 서로 다른 언어의 문장들이 서로 대응되도록 병렬적으로 구성된 코퍼스일 수 있다. 신경망 기계 번역 모델은 제1 언어를 제2 언어로 번역하기 위한 병렬 코퍼스에 포함된 복수의 문장에 기초하여 학습될 수 있다.
본 개시의 일 실시 예에 따른 프로세서(130)는 병렬 코퍼스에 기초하여 제1 언어의 문장 텍스트 및 제1 언어의 문장 텍스트에 대응되는 제2 언어의 제1 번역 문장 텍스트를 획득할 수 있다. 예를 들어, 제1 언어의 문장 텍스트가 ‘그런 일은 일어나지 않을 거야.’이면, 프로세서(130)는 병렬 코퍼스에 기초하여 제2 언어의 제1 번역 문장 텍스트(S1) ‘That’s not going to happen’을 획득할 수 있다.
이어서, 프로세서(130)는 제1 번역 문장 텍스트를 제1 신경망 모델(1)(신경망 기계 번역 모델)에 입력하여, 제1 언어의 제2 문장 텍스트를 획득할 수 있다.
예를 들어, 제1 문장 텍스트가 ‘그런 일은 일어나지 않을 거야’이면, 제1 신경망 모델이 출력한 제2 문장 텍스트는 ‘그런 일은 없을 거야’일 수 있다.
한편, 본 개시의 일 실시 예에 따른 제1 신경망 모델(1)는 제1 문장 텍스트에 포함된 복수의 단어 중 첫번째에 위치한 단어와 제2 문장 텍스트에 포함된 복수의 단어 중 첫번째 단어가 상이하도록 제2 문장 텍스트를 출력할 수 있다.
예를 들어, 제1 문장 텍스트가 ‘그런 일은 일어나지 않을 거야’이면, 제1 신경망 모델은 ‘그런’이 아닌 다른 단어로 시작하며, 제1 번역 문장 텍스트(S1) ‘That’s not going to happen’에 대응되는 제2 문장 텍스트 ‘그렇게 일이 진행되지는 않을 거야’를 출력할 수 있다.
이어서, 프로세서(130)는 제1 문장 텍스트와 제2 문장 텍스트를 제2 신경망 모델(2)의 학습 텍스트로 이용할 수 있다. 여기서, 제1 문장 텍스트와 제2 문장 텍스트 각각에 포함된 복수의 단어들 중에서 첫번째 단어는 상이할 수 있다.
도 11b는 본 개시의 또 다른 실시 예에 따른 복수의 텍스트를 획득하는 방법을 설명하기 위한 도면이다.
도 11b를 참조하면, 프로세서(130)는 제1 문장 텍스트(S1)를 제4 신경망 모델(1’)에 입력하여 제1 문장 텍스트(S1)에 대응하는 제1 번역 텍스트(t1’)를 획득할 수 있다. 여기서, 제4 신경망 모델은 제1 언어의 텍스트가 입력되면, 제2 언어의 번역 텍스트를 출력하도록(예를 들어, Ko2En) 학습된 신경망 기계 번역 모델일 수 있다.
이어서, 프로세서(130)는 제1 번역 텍스트(t1’)를 제1 신경망 모델(1)에 입력하여 제1 번역 텍스트(t1’)에 대응되는 제2 문장 텍스트(P1)을 획득할 수 있다. 여기서, 제1 신경망 모델(1)은 제2 언어의 텍스트가 입력되면, 제1 언어의 번역 텍스트를 출력하도록(예를 들어, En2Ko) 학습된 신경망 기계 번역 모델일 수 있다.
여기서, 제1 문장 텍스트(S1)와, 제4 신경망 모델(1’) 및 제1 신경망 모델(1)을 통해 재번역된 제2 문장 텍스트(P1)(예를 들어, 제1 언어에서 제2 언어로 번역된 뒤, 제2 언어에서 제1 언어로 번역된 문장 텍스트)는 의미 유사도 값이 제1 임계 값 이상일 수 있다.
예를 들어, 프로세서(130)가 ‘한국어’의 ‘어제 아무 일도 없었어’를 제1 문장 텍스트로 획득한 경우를 상정할 수 있다. 프로세서(130)는 제1 문장 텍스트를 ‘한국어’에서 ‘영어’로 번역하도록 학습된 제4 신경망 모델(1’)에 입력할 수 있다. 이어서, 프로세서(130)는 제4 신경망 모델(1’)로부터 ‘Nothing happened yesterday.’를 번역 텍스트로 획득할 수 있다.
이어서, 프로세서(130)는 ‘영어’에서 ‘한국어’로 번역하도록 학습된 제1 신경망 모델(1)에 번역 텍스트를 입력할 수 있다.
일 실시 예에 따른 프로세서(130)는 제2 신경망 모델로부터 재번역 문장 즉, 제2 문장 텍스트를 획득할 수 있다. 한편, 일 실시 예에 따라 재번역 문장을 구성하는 복수의 단어 중 첫번째 단어가 제1 문장 텍스트에 포함된 첫번째 단어와 동일하면, 프로세서(130)는 제1 신경망 모델(1)로부터 새로운 재번역 문장을 획득할 수 있다. 예를 들어, 프로세서(130)는 제2 신경망 기계 번역 모델에 ‘Nothing happened yesterday.’을 입력하여 ‘어제 아무런 일도 일어나지 않았어’를 재번역 문장으로 획득할 수 있다. 이 경우, 재번역 문장의 첫번째 단어 ‘어제’가 제1 문장 텍스트의 첫번째 단어 ‘어제’와 동일하므로 프로세서(130)는 제1 신경망 모델(1)을 통해 새로운 재번역 문장을 획득할 수 있다. 예를 들어, 제1 신경망 모델(1)은 제1 문장 텍스트와 의미적으로 유사하나 첫번째 단어는 상이한 재번역 문장을 출력할 수 있다. 예를 들어, 제1 신경망 모델(1)은 ‘아무런 일도 어제 일어나지 않았어’를 출력할 수 있다.
이어서, 프로세서(130)는 제1 문장 텍스트와 재번역 문장 즉, 제2 문장 텍스트를 학습 텍스트로 하여 제2 신경망 모델을 학습시킬 수 있다.
한편, 제2 신경망 모델이 첫번째 단어(어순 상 맨앞에 위치하는 단어)는 상이하나 의미적으로는 유사한 두 문장을 쌍으로 하여 학습되므로, 번역 텍스트와 의미적으로 유사하며 특정 텍스트(예를 들어, 이전에 스피커(110)를 통해 기 출력된 의역 텍스트)가 어순 상 맨 앞에 위치하는 의역 텍스트를 출력하도록 학습될 수 있다. 한편, 인공 지능 모델이 학습된다는 것은, 기본 인공 지능 모델(예를 들어 임의의 랜덤한 파라미터를 포함하는 인공 지능 모델)이 학습 알고리즘에 의하여 다수의 훈련 데이터들을 이용하여 학습됨으로써, 원하는 특성(또는, 목적)을 수행하도록 설정된 기 정의된 동작 규칙 또는 인공 지능 모델이 만들어짐을 의미한다. 이러한 학습은 별도의 서버 및/또는 시스템을 통해 이루어질 수 있으나, 이에 한정되는 것은 아니며 전자 장치(100)에서 이루어질 수도 있다. 학습 알고리즘의 예로는, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning), 전이 학습(transfer learning) 또는 강화 학습(reinforcement learning)이 있으나, 전술한 예에 한정되지 않는다.
여기서, 인공 지능 모델 각각은, 예를 들어, CNN (Convolutional Neural Network), RNN (Recurrent Neural Network), RBM (Restricted Boltzmann Machine), DBN (Deep Belief Network), BRDNN(Bidirectional Recurrent Deep Neural Network) 또는 심층 Q-네트워크 (Deep Q-Networks) 등으로 구현될 수 있으나, 이에 한정되지 않는다.
도 1로 돌아와서, 본 개시의 일 실시 예에 따른 인공 지능 모델을 실행하기 위한 프로세서(130)는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit)와 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공 지능 전용 프로세서와 소프트웨어의 조합을 통해 구현될 수 있다. 프로세서(130)는, 메모리(120)에 저장된 기 정의된 동작 규칙 또는 인공 지능 모델에 따라, 입력 데이터를 처리하도록 제어할 수 있다. 또는, 프로세서(130)가 전용 프로세서(또는 인공 지능 전용 프로세서)인 경우, 특정 인공 지능 모델의 처리에 특화된 하드웨어 구조로 설계될 수 있다. 예를 들어, 특정 인공 지능 모델의 처리에 특화된 하드웨어는 ASIC, FPGA 등의 하드웨어 칩으로 설계될 수 있다. 프로세서(130)가 전용 프로세서로 구현되는 경우, 본 개시의 실시 예를 구현하기 위한 메모리를 포함하도록 구현되거나, 외부 메모리를 이용하기 위한 메모리 처리 기능을 포함하도록 구현될 수 있다.
다른 예에 따라, 메모리(120)는 복수의 레이어를 포함하는 인공 지능 모델에 관한 정보를 저장할 수 있다. 여기서, 인공 지능 모델에 관한 정보를 저장한다는 것은 인공 지능 모델의 동작과 관련된 다양한 정보, 예를 들어 인공 지능 모델에 포함된 복수의 레이어에 대한 정보, 복수의 레이어 각각에서 이용되는 파라미터(예를 들어, 필터 계수, 바이어스 등)에 대한 정보 등을 저장한다는 것을 의미할 수 있다.
본 개시의 일 실시 예에 따른 통신 인터페이스(미도시)는 다양한 데이터를 입력받는다. 예를 들어, 통신 인터페이스(110)는 AP 기반의 Wi-Fi(와이파이, Wireless LAN 네트워크), 블루투스(Bluetooth), 지그비(Zigbee), 유/무선 LAN(Local Area Network), WAN(Wide Area Network), 이더넷(Ethernet), IEEE 1394, HDMI(High-Definition Multimedia Interface), USB(Universal Serial Bus), MHL(Mobile High-Definition Link), AES/EBU(Audio Engineering Society/ European Broadcasting Union), 옵티컬(Optical), 코액셜(Coaxial) 등과 같은 통신 방식을 통해 외부 장치(예를 들어, 디스플레이 장치(200), 복수의 사용자 단말(10, 20, 30)), 외부 저장 매체(예를 들어, USB 메모리), 외부 서버(예를 들어 웹 하드) 등으로부터 다양한 데이터를 입력받을 수 있다.
입력부(미도시)는 사용자 입력을 수신할 수 있다. 예를 들어, 입력부는 마이크를 포함하여 사용자의 음성을 수신할 수도 있고, 다른 예로, 키보드(key board), 마우스(mouse), 키 패드(key pad), 터치 패드 등을 포함할 수도 있으나 이에 한정되는 것은 아니다.
디스플레이(미도시)는 다양한 화면을 표시할 수 있다. 디스플레이는 자발광 소자를 포함하는 디스플레이 또는, 비자발광 소자 및 백라이트를 포함하는 디스플레이로 구현될 수 있다. 예를 들어, LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 디스플레이, LED(Light Emitting Diodes), 마이크로 LED(micro LED), Mini LED, PDP(Plasma Display Panel), QD(Quantum dot) 디스플레이, QLED(Quantum dot light-emitting diodes) 등과 같은 다양한 형태의 디스플레이로 구현될 수 있다. 디스플레이(150) 내에는 a-si TFT, LTPS(low temperature poly silicon) TFT, OTFT(organic TFT) 등과 같은 형태로 구현될 수 있는 구동 회로, 백라이트 유닛 등도 함께 포함될 수 있다. 한편, 디스플레이(150)는 터치 센서와 결합된 터치 스크린, 플렉시블 디스플레이(flexible display), 롤러블 디스플레이(rollable display), 3차원 디스플레이(3D display), 복수의 디스플레이 모듈이 물리적으로 연결된 디스플레이 등으로 구현될 수 있다.
도 12는 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.
본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 우선, 제1 텍스트를 제1 신경망 모델에 입력하여 제1 텍스트에 대응되는 제1 번역 텍스트를 획득한다(S1210).
이어서, 제1 번역 텍스트를 제2 신경망 모델에 입력하여 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 획득한다(S1220).
이어서, 제1 텍스트 및 제1 의역 텍스트에 기초하여 제1 의역 텍스트의 출력 가능 여부를 식별한다(S1230, S1240).
이어서, 식별 결과에 따라 제1 의역 텍스트를 출력한다(S1250).
이어서, 제1 텍스트에 이어서 제2 텍스트가 수신되면, 제1 및 제2 텍스트를 제1 신경망 모델에 입력하여 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트를 획득한다(S1260). 이어서, 식별 결과 및 제2 번역 텍스트를 제2 신경망 모델에 입력하여 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득한다(S1270). 여기서, 제2 신경망 모델은, 식별 결과에 따라 제1 의역 텍스트가 출력된 것으로 식별되면, 제1 의역 텍스트를 포함하며 제1 의역 텍스트가 어순 상 앞에 위치하도록 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 출력하고, 제1 의역 텍스트가 기 출력되지 않은 것으로 식별되면, 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 출력한다.
여기서, 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계에 있어서 S1230 단계는, 제1 번역 텍스트 및 제1 의역 텍스트 간 의미 유사도 값을 획득하는 단계 및 획득된 의미 유사도 값에 기초하여 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계를 포함하고, 제1 의역 텍스트를 출력하는 단계는, 의미 유사도 값이 제1 임계 값 이상이면(S1230: Y), 제1 의역 텍스트를 출력하는 단계를 포함할 수 있다.
또한, 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계에 있어서 S1240 단계는, 제1 의역 텍스트의 문장 적합도 값을 획득하는 단계 및 획득된 문장 적합도 값에 기초하여 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계를 포함하고, 제1 의역 텍스트를 출력하는 단계는, 문장 적합도 값이 제2 임계 값 이상이면(S1240: Y), 제1 의역 텍스트를 출력하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에 따른 제어 방법은 제2 텍스트 및 제2 의역 텍스트에 기초하여 제2 번역 텍스트의 출력 가능 여부를 식별하는 단계, 식별 결과에 따라 제1 의역 텍스트가 출력된 것으로 식별되고, 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 제2 의역 텍스트에서 제1 의역 텍스트를 제외한 나머지를 출력하는 단계 및 제1 의역 텍스트가 출력되지 않은 것으로 식별되고, 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 제2 의역 텍스트를 출력하는 단계를 더 포함할 수 있다.
여기서, 제2 의역 텍스트의 출력 가능 여부를 식별하는 단계는, 제2 번역 텍스트 및 제2 의역 텍스트 간 의미 유사도 값을 획득하는 단계, 제2 의역 텍스트의 문장 적합도 값을 획득하는 단계 및 의미 유사도 값 및 문장 적합도 값에 기초하여 제2 의역 텍스트의 출력 가능 여부를 식별하는 단계를 포함하며, 제2 의역 텍스트를 출력하는 단계는, 의미 유사도 값이 제1 임계 값 이상이고 문장 적합도 값이 제2 임계 값 이상이면, 제2 의역 텍스트를 출력하는 단계를 포함할 수 있다.
본 개시의 일 실시 예에 따른 제어 방법은, 제1 및 제2 텍스트를 제3 신경망 모델에 입력하여 제1 및 제2 텍스트가 구(phrase)에 대응되는지 여부에 대한 정보를 획득하는 단계를 더 포함하고, 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득하는 S1270 단계는, 제2 번역 텍스트, 제1 및 제2 텍스트가 구에 대응되는지 여부에 대한 정보를 제2 신경망 모델에 입력하여 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득하는 단계를 포함할 수 있다.
여기서, 제2 신경망 모델은, 입력된 정보에 기초하여 제1 및 제2 텍스트가 구에 대응되는 것으로 식별되면, 제2 번역 텍스트에 대응되며 문장 형태 또는 구 형태의 제2 의역 텍스트를 출력하며, 제1 및 제2 텍스트가 구에 대응되지 않는 것으로 식별되면, 제2 번역 텍스트에 대응되며 미완성 문장 형태의 제2 의역 텍스트를 출력할 수 있다.
또한, 제2 신경망 모델은, 복수의 텍스트에 기초하여 학습되며, 복수의 텍스트는, 복수의 단어 그룹 각각에서 선택된 적어도 하나의 단어에 기초하여 획득된 제1 문장 텍스트 및 제1 문장 텍스트와 의미 유사도 값이 제1 임계 값 이상인 제2 문장 텍스트를 포함하며, 복수의 단어 그룹 각각은, 의미 유사도 값이 제1 임계 값 이상인 단어들의 집합일 수 있다.
또한, 제2 신경망 모델은, 복수의 텍스트에 기초하여 학습되며, 복수의 텍스트는, 서로 다른 두 언어 간의 병렬 코퍼스(parallel corpus)에 기초하여 획득된 제1 언어의 제1 문장 텍스트에 대응되는 제2 언어의 제1 번역 문장 텍스트 및 제1 문장 텍스트를 제1 신경망 모델에 입력하여 획득된 제2 언어의 제2 번역 문장 텍스트를 포함하며, 제1 번역 문장 텍스트와 제2 번역 문장 텍스트 간 의미 유사도 값이 제1 임계 값 이상일 수 있다.
여기서, 제1 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어와 제1 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어는 서로 다른 단어일 수 있다.
다만, 본 개시의 다양한 실시 예들은 전자 장치 뿐 아니라, 디스플레이 장치 등 영상 처리가 가능한 모든 전자 장치에 적용될 수 있음은 물론이다.
한편, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 일부 경우에 있어 본 명세서에서 설명되는 실시 예들이 프로세서 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 동작을 수행할 수 있다.
한편, 상술한 본 개시의 다양한 실시 예들에 따른 음향 출력 장치(100)의 프로세싱 동작을 수행하기 위한 컴퓨터 명령어(computer instructions)는 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium) 에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어는 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시 예에 따른 음향 출력 장치(100)에서의 처리 동작을 특정 기기가 수행하도록 한다.
비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.
100: 전자 장치 110: 스피커
120: 메모리 130: 프로세서

Claims (20)

  1. 전자 장치에 있어서,
    스피커;
    적어도 하나의 명령어를 저장하는 메모리; 및
    상기 메모리와 전기적으로 연결된 프로세서;를 포함하고,
    상기 프로세서는,
    상기 명령어를 실행함으로써,
    제1 텍스트를 제1 신경망 모델에 입력하여 상기 제1 텍스트에 대응되는 제1 번역 텍스트를 획득하고,
    상기 제1 번역 텍스트를 제2 신경망 모델에 입력하여 상기 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 획득하고,
    상기 제1 텍스트 및 상기 제1 의역 텍스트에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하고,
    상기 식별 결과에 따라 상기 제1 의역 텍스트를 출력하도록 상기 스피커를 제어하고,
    상기 제1 텍스트에 이어서 제2 텍스트가 수신되면, 상기 제1 및 제2 텍스트를 상기 제1 신경망 모델에 입력하여 상기 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트를 획득하고,
    상기 식별 결과 및 상기 제2 번역 텍스트를 상기 제2 신경망 모델에 입력하여 상기 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득하고,
    상기 제2 신경망 모델은,
    상기 식별 결과에 따라 상기 제1 의역 텍스트가 출력된 것으로 식별되면, 상기 제1 의역 텍스트를 포함하며 상기 제1 의역 텍스트가 어순 상 앞에 위치하도록 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 출력하고,
    상기 제1 의역 텍스트가 기 출력되지 않은 것으로 식별되면, 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 출력하는, 전자 장치.
  2. 제1항에 있어서,
    상기 프로세서는,
    상기 제1 번역 텍스트 및 상기 제1 의역 텍스트 간 의미 유사도 값을 획득하고,
    상기 획득된 의미 유사도 값에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하며,
    상기 의미 유사도 값이 제1 임계 값 이상이면, 상기 제1 의역 텍스트를 출력하도록 상기 스피커를 제어하는, 전자 장치.
  3. 제1항에 있어서,
    상기 프로세서는,
    상기 제1 의역 텍스트의 문장 적합도 값을 획득하고,
    상기 획득된 문장 적합도 값에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하며,
    상기 문장 적합도 값이 제2 임계 값 이상이면, 상기 제1 의역 텍스트를 출력하도록 상기 스피커를 제어하는, 전자 장치.
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 제2 텍스트 및 상기 제2 의역 텍스트에 기초하여 상기 제2 의역 텍스트의 출력 가능 여부를 식별하며,
    상기 식별 결과에 따라 상기 제1 의역 텍스트가 출력된 것으로 식별되고, 상기 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 상기 제2 의역 텍스트에서 제1 의역 텍스트를 제외한 나머지를 출력하도록 상기 스피커를 제어하고,
    상기 제1 의역 텍스트가 출력되지 않은 것으로 식별되고, 상기 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 상기 제2 의역 텍스트를 출력하도록 상기 스피커를 제어하는, 전자 장치.
  5. 제4항에 있어서,
    상기 프로세서는,
    상기 제2 번역 텍스트 및 상기 제2 의역 텍스트 간 의미 유사도 값을 획득하고,
    상기 제2 의역 텍스트의 문장 적합도 값을 획득하고,
    상기 의미 유사도 값 및 상기 문장 적합도 값에 기초하여 상기 제2 의역 텍스트의 출력 가능 여부를 식별하며,
    상기 의미 유사도 값이 제1 임계 값 이상이고 상기 문장 적합도 값이 제2 임계 값 이상이면, 상기 제2 의역 텍스트를 출력하도록 상기 스피커를 제어하는, 전자 장치.
  6. 제1항에 있어서,
    상기 프로세서는,
    상기 제1 및 제2 텍스트를 제3 신경망 모델에 입력하여 상기 제1 및 제2 텍스트가 구(phrase)에 대응되는지 여부에 대한 정보를 획득하고,
    상기 제2 번역 텍스트, 상기 제1 및 제2 텍스트가 구에 대응되는지 여부에 대한 정보를 상기 제2 신경망 모델에 입력하여 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 획득하는, 전자 장치.
  7. 제6항에 있어서,
    상기 제2 신경망 모델은,
    상기 입력된 정보에 기초하여 상기 제1 및 제2 텍스트가 구에 대응되는 것으로 식별되면, 상기 제2 번역 텍스트에 대응되며 문장 형태 또는 구 형태의 상기 제2 의역 텍스트를 출력하며,
    상기 제1 및 제2 텍스트가 구에 대응되지 않는 것으로 식별되면, 상기 제2 번역 텍스트에 대응되며 미완성 문장 형태의 상기 제2 의역 텍스트를 출력하는, 전자 장치.
  8. 제1항에 있어서,
    상기 제2 신경망 모델은,
    복수의 텍스트에 기초하여 학습되며,
    상기 복수의 텍스트는,
    복수의 단어 그룹 각각에서 선택된 적어도 하나의 단어에 기초하여 획득된 제1 문장 텍스트 및 상기 제1 문장 텍스트와 의미 유사도 값이 제1 임계 값 이상인 제2 문장 텍스트를 포함하며,
    상기 복수의 단어 그룹 각각은,
    상기 의미 유사도 값이 상기 제1 임계 값 이상인 단어들의 집합인, 전자 장치.
  9. 제1항에 있어서,
    상기 제2 신경망 모델은,
    복수의 텍스트에 기초하여 학습되며,
    상기 복수의 텍스트는,
    서로 다른 두 언어 간의 병렬 코퍼스(parallel corpus)에 기초하여 획득된 제1 언어의 제1 문장 텍스트에 대응되는 제2 언어의 제1 번역 문장 텍스트 및 상기 제1 문장 텍스트를 상기 제1 신경망 모델에 입력하여 획득된 상기 제2 언어의 제2 번역 문장 텍스트를 포함하며,
    상기 제1 번역 문장 텍스트와 상기 제2 번역 문장 텍스트 간 의미 유사도 값이 제1 임계 값 이상인, 전자 장치.
  10. 제9항에 있어서,
    상기 제1 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어와 상기 제2 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어는 서로 다른 단어인, 전자 장치.
  11. 전자 장치의 제어 방법에 있어서,
    제1 텍스트를 제1 신경망 모델에 입력하여 상기 제1 텍스트에 대응되는 제1 번역 텍스트를 획득하는 단계;
    상기 제1 번역 텍스트를 제2 신경망 모델에 입력하여 상기 제1 번역 텍스트에 대응되는 제1 의역 텍스트를 획득하는 단계;
    상기 제1 텍스트 및 상기 제1 의역 텍스트에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계;
    상기 식별 결과에 따라 상기 제1 의역 텍스트를 출력하는 단계;
    상기 제1 텍스트에 이어서 제2 텍스트가 수신되면, 상기 제1 및 제2 텍스트를 상기 제1 신경망 모델에 입력하여 상기 제1 및 제2 텍스트에 대응되는 제2 번역 텍스트를 획득하는 단계; 및
    상기 식별 결과 및 상기 제2 번역 텍스트를 상기 제2 신경망 모델에 입력하여 상기 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득하는 단계;를 포함하고,
    상기 제2 신경망 모델은,
    상기 식별 결과에 따라 상기 제1 의역 텍스트가 출력된 것으로 식별되면, 상기 제1 의역 텍스트를 포함하며 상기 제1 의역 텍스트가 어순 상 앞에 위치하도록 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 출력하고,
    상기 제1 의역 텍스트가 기 출력되지 않은 것으로 식별되면, 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 출력하는, 제어 방법.
  12. 제11항에 있어서,
    상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계는,
    상기 제1 번역 텍스트 및 상기 제1 의역 텍스트 간 의미 유사도 값을 획득하는 단계; 및
    상기 획득된 의미 유사도 값에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계;를 포함하고,
    상기 제1 의역 텍스트를 출력하는 단계는,
    상기 의미 유사도 값이 제1 임계 값 이상이면, 상기 제1 의역 텍스트를 출력하는 단계;를 포함하는, 제어 방법.
  13. 제11항에 있어서,
    상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계는,
    상기 제1 의역 텍스트의 문장 적합도 값을 획득하는 단계; 및
    상기 획득된 문장 적합도 값에 기초하여 상기 제1 의역 텍스트의 출력 가능 여부를 식별하는 단계;를 포함하고,
    상기 제1 의역 텍스트를 출력하는 단계는,
    상기 문장 적합도 값이 제2 임계 값 이상이면, 상기 제1 의역 텍스트를 출력하는 단계;를 포함하는, 제어 방법.
  14. 제11항에 있어서,
    상기 제2 텍스트 및 상기 제2 의역 텍스트에 기초하여 상기 제2 번역 텍스트의 출력 가능 여부를 식별하는 단계;
    상기 식별 결과에 따라 상기 제1 의역 텍스트가 출력된 것으로 식별되고, 상기 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 상기 제2 의역 텍스트에서 제1 의역 텍스트를 제외한 나머지를 출력하는 단계; 및
    상기 제1 의역 텍스트가 출력되지 않은 것으로 식별되고, 상기 제2 의역 텍스트가 출력 가능한 것으로 식별되면, 상기 제2 의역 텍스트를 출력하는 단계;를 더 포함하는, 제어 방법.
  15. 제14항에 있어서,
    상기 제2 의역 텍스트의 출력 가능 여부를 식별하는 단계는,
    상기 제2 번역 텍스트 및 상기 제2 의역 텍스트 간 의미 유사도 값을 획득하는 단계;
    상기 제2 의역 텍스트의 문장 적합도 값을 획득하는 단계; 및
    상기 의미 유사도 값 및 상기 문장 적합도 값에 기초하여 상기 제2 의역 텍스트의 출력 가능 여부를 식별하는 단계;를 포함하며,
    상기 제2 의역 텍스트를 출력하는 단계는,
    상기 의미 유사도 값이 제1 임계 값 이상이고 상기 문장 적합도 값이 제2 임계 값 이상이면, 상기 제2 의역 텍스트를 출력하는 단계;를 포함하는, 제어 방법.
  16. 제11항에 있어서,
    상기 제1 및 제2 텍스트를 제3 신경망 모델에 입력하여 상기 제1 및 제2 텍스트가 구(phrase)에 대응되는지 여부에 대한 정보를 획득하는 단계;를 더 포함하고,
    상기 제2 번역 텍스트에 대응되는 제2 의역 텍스트를 획득하는 단계는,
    상기 제2 번역 텍스트, 상기 제1 및 제2 텍스트가 구에 대응되는지 여부에 대한 정보를 상기 제2 신경망 모델에 입력하여 상기 제2 번역 텍스트에 대응되는 상기 제2 의역 텍스트를 획득하는 단계;를 포함하는, 제어 방법.
  17. 제16항에 있어서,
    상기 제2 신경망 모델은,
    상기 입력된 정보에 기초하여 상기 제1 및 제2 텍스트가 구에 대응되는 것으로 식별되면, 상기 제2 번역 텍스트에 대응되며 문장 형태 또는 구 형태의 상기 제2 의역 텍스트를 출력하며,
    상기 제1 및 제2 텍스트가 구에 대응되지 않는 것으로 식별되면, 상기 제2 번역 텍스트에 대응되며 미완성 문장 형태의 상기 제2 의역 텍스트를 출력하는, 제어 방법.
  18. 제11항에 있어서,
    상기 제2 신경망 모델은,
    복수의 텍스트에 기초하여 학습되며,
    상기 복수의 텍스트는,
    복수의 단어 그룹 각각에서 선택된 적어도 하나의 단어에 기초하여 획득된 제1 문장 텍스트 및 상기 제1 문장 텍스트와 의미 유사도 값이 제1 임계 값 이상인 제2 문장 텍스트를 포함하며,
    상기 복수의 단어 그룹 각각은,
    상기 의미 유사도 값이 상기 제1 임계 값 이상인 단어들의 집합인, 제어 방법.
  19. 제11항에 있어서,
    상기 제2 신경망 모델은,
    복수의 텍스트에 기초하여 학습되며,
    상기 복수의 텍스트는,
    서로 다른 두 언어 간의 병렬 코퍼스(parallel corpus)에 기초하여 획득된 제1 언어의 제1 문장 텍스트에 대응되는 제2 언어의 제1 번역 문장 텍스트 및 상기 제1 문장 텍스트를 상기 제1 신경망 모델에 입력하여 획득된 상기 제2 언어의 제2 번역 문장 텍스트를 포함하며,
    상기 제1 번역 문장 텍스트와 상기 제2 번역 문장 텍스트 간 의미 유사도 값이 제1 임계 값 이상인, 제어 방법.
  20. 제19항에 있어서,
    상기 제1 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어와 상기 제1 번역 문장 텍스트를 구성하는 복수의 단어 중 가장 선행하는 단어는 서로 다른 단어인, 제어 방법.
KR1020210016257A 2021-02-04 2021-02-04 전자 장치 및 그 제어 방법 KR20220112563A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020210016257A KR20220112563A (ko) 2021-02-04 2021-02-04 전자 장치 및 그 제어 방법
CN202180069620.9A CN116368490A (zh) 2021-02-04 2021-09-09 电子装置及其控制方法
EP21924952.1A EP4206972A1 (en) 2021-02-04 2021-09-09 Electronic apparatus and method for controlling thereof
PCT/KR2021/012265 WO2022169054A1 (ko) 2021-02-04 2021-09-09 전자 장치 및 그 제어 방법
US17/666,127 US20220245364A1 (en) 2021-02-04 2022-02-07 Electronic device and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210016257A KR20220112563A (ko) 2021-02-04 2021-02-04 전자 장치 및 그 제어 방법

Publications (1)

Publication Number Publication Date
KR20220112563A true KR20220112563A (ko) 2022-08-11

Family

ID=82741214

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210016257A KR20220112563A (ko) 2021-02-04 2021-02-04 전자 장치 및 그 제어 방법

Country Status (2)

Country Link
KR (1) KR20220112563A (ko)
WO (1) WO2022169054A1 (ko)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101626109B1 (ko) * 2012-04-04 2016-06-13 한국전자통신연구원 통역 장치 및 방법
KR101827773B1 (ko) * 2016-08-02 2018-02-09 주식회사 하이퍼커넥트 통역 장치 및 방법
KR102544249B1 (ko) * 2016-11-28 2023-06-16 삼성전자주식회사 발화의 문맥을 공유하여 번역을 수행하는 전자 장치 및 그 동작 방법
US11106873B2 (en) * 2019-01-22 2021-08-31 Sap Se Context-based translation retrieval via multilingual space
KR20200135607A (ko) * 2019-05-22 2020-12-03 삼성전자주식회사 학습 네트워크 모델 기반의 언어 처리 방법 및 장치
EP3772240A1 (en) 2019-08-02 2021-02-03 Prologium Technology Co., Ltd. Pcb structure with a silicone layer as adhesive

Also Published As

Publication number Publication date
WO2022169054A1 (ko) 2022-08-11

Similar Documents

Publication Publication Date Title
US9881615B2 (en) Speech recognition apparatus and method
US11657799B2 (en) Pre-training with alignments for recurrent neural network transducer based end-to-end speech recognition
US9805718B2 (en) Clarifying natural language input using targeted questions
US10114809B2 (en) Method and apparatus for phonetically annotating text
US11501089B2 (en) Electronic device and method for controlling the electronic device thereof based on determining intent of a user speech in a first language machine translated into a predefined second language
US20160170710A1 (en) Method and apparatus for processing voice input
KR102346026B1 (ko) 전자 장치 및 이의 제어 방법
US10672293B2 (en) Computer system methods for generating combined language content
US11856277B2 (en) Method and apparatus for processing video, electronic device, medium and product
US11501753B2 (en) System and method for automating natural language understanding (NLU) in skill development
US10885286B2 (en) Simultaneous and real time translation and language switching across a set of features
KR102469712B1 (ko) 전자 장치 및 이의 자연어 생성 방법
US20220245364A1 (en) Electronic device and control method thereof
WO2020052060A1 (zh) 用于生成修正语句的方法和装置
US20210151046A1 (en) Function performance based on input intonation
KR20200140171A (ko) 전자 장치 및 이의 제어 방법
KR20220112563A (ko) 전자 장치 및 그 제어 방법
US20230040181A1 (en) System and method for improving named entity recognition
KR20220055977A (ko) 전자 장치 및 그 제어 방법
US11836299B1 (en) Virtual sign language system
US20230315771A1 (en) Electronic apparatus for performing search and control method thereof
KR102616915B1 (ko) 국어 맞춤법 퀴즈 제공 방법 및 시스템
CN114997140B (zh) 校验语义的方法和装置
KR102656262B1 (ko) 이미지를 이용한 중국어 연상학습 콘텐츠 제공 방법 및 장치
US20240054785A1 (en) Display apparatus that provides answer to question based on image and controlling method thereof