KR102592623B1 - 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템 - Google Patents

외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템 Download PDF

Info

Publication number
KR102592623B1
KR102592623B1 KR1020200141062A KR20200141062A KR102592623B1 KR 102592623 B1 KR102592623 B1 KR 102592623B1 KR 1020200141062 A KR1020200141062 A KR 1020200141062A KR 20200141062 A KR20200141062 A KR 20200141062A KR 102592623 B1 KR102592623 B1 KR 102592623B1
Authority
KR
South Korea
Prior art keywords
action
word
input
output
simultaneous interpretation
Prior art date
Application number
KR1020200141062A
Other languages
English (en)
Other versions
KR20220056462A (ko
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 KR1020200141062A priority Critical patent/KR102592623B1/ko
Priority to US17/484,258 priority patent/US12019997B2/en
Publication of KR20220056462A publication Critical patent/KR20220056462A/ko
Application granted granted Critical
Publication of KR102592623B1 publication Critical patent/KR102592623B1/ko

Links

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
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/189Automatic justification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/284Lexical analysis, e.g. tokenisation or collocates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • 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 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • 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/044Recurrent networks, e.g. Hopfield networks
    • 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
    • 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/28Constructional details of speech recognition systems
    • 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
    • G10L2015/221Announcement of recognition results

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Machine Translation (AREA)

Abstract

외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법이 제공된다. 상기 방법은 원시언어 문장을 입력문으로 하고 목적언어 문장을 출력문으로 하는 양국어 코퍼스를 입력받는 단계; 상기 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 정렬정보를 생성하는 단계; 상기 정렬정보에 기초하여 상기 동시통역 모델에서의 제1 행위에 후속되는 제2 행위를 결정하여 행위열 정보를 생성하는 단계; 및 상기 양국어 코퍼스 및 상기 행위열 정보를 기반으로 상기 동시통역 모델을 학습하는 단계를 포함하되, 상기 제1 및 제2 행위는 상기 입력문의 단어를 읽는 읽기행위이거나 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위에 해당한다.

Description

외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템{METHOD FOR LEARNING REAL-TIME SIMULTANEOUS TRANSLATION MODEL BASED ON ALIGNMENT INFORMATION, METHOD AND SYSTEM FOR SIMUTANEOUS TRANSLATION}
본 발명은 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템에 관한 것이다.
종래의 실시간 동시통역 기술에서 기술적 진보를 위한 주된 관심사는 동시통역의 성능이었다. 즉, 동시통역 시스템을 구성하는 음성인식과 자동번역 기술의 정확성 개선이 주된 관심사였다.
하지만, 최근에는 동시통역 기술을 실제 환경에 적용할 수 있는 활용성이 강조되고 있지만, 동시통역 결과가 청자에게 신속하게 제공되지 못하고 있어, 활용성 측면에서의 문제가 존재한다.
본 발명의 실시예는 동시통역 모델의 외부에서 제공되는 원시언어와 목적언어 간의 단어 정렬 정보를 양국어 코퍼스와 함께 사용하여 동시통역 모델을 학습하여, 발화자의 발화가 종결되지 않더라도 중간 통역 결과를 제공할 수 있는 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템을 제공한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법은 원시언어 문장을 입력문으로 하고 목적언어 문장을 출력문으로 하는 양국어 코퍼스를 입력받는 단계; 상기 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 정렬정보를 생성하는 단계; 상기 정렬정보에 기초하여 상기 동시통역 모델에서의 제1 행위에 후속되는 제2 행위를 결정하여 행위열 정보를 생성하는 단계; 및 상기 양국어 코퍼스 및 상기 행위열 정보를 기반으로 상기 동시통역 모델을 학습하는 단계를 포함한다. 이때, 상기 제1 및 제2 행위는 상기 입력문의 단어를 읽는 읽기행위이거나 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위에 해당한다.
또한, 본 발명의 제2 측면에 따른 외부 정렬정보에 기반하여 학습된 동시통역 모델을 이용한 실시간 동시통역 방법은 실시간으로 발화자가 발화한 음성에 대한 음성인식 결과를 생성하는 단계; 상기 음성인식 결과를 미리 학습된 동시통역 모델로 입력하는 단계; 상기 동시통역 모델에서 상기 발화자의 음성을 더 입력받는 읽기행위 및 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위 중 어느 하나의 행위를 선택하는 단계; 및 상기 선택된 행위에 기반한 통역 결과를 제공하는 단계를 포함한다. 이때, 상기 미리 학습된 동시통역 모델은, 원시언어 문장을 입력문으로 하고 목적언어 문장을 출력문으로 하는 양국어 코퍼스와, 상기 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 정렬정보에 기초하여 학습된다.
또한, 본 발명의 제3 측면에 따른 외부 정렬정보에 기반한 실시간 동시통역 시스템은 실시간으로 발화자가 발화한 음성에 대한 음성인식 결과를 수신하고, 상기 발화한 음성에 대응되는 동시통역 결과를 출력하는 통신모듈, 미리 학습된 동시통역 모델에 기초하여 상기 동시통역 결과를 생성 및 제공하기 위한 프로그램이 저장된 메모리 및 상기 메모리에 저장된 프로그램을 실행시키는 프로세서를 포함한다. 이때, 상기 프로세서는 상기 프로그램을 실행시킴에 따라, 상기 동시통역 모델에서 상기 발화자의 음성을 더 입력받는 읽기행위 및 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위 중 어느 하나의 행위를 선택하고, 상기 선택된 행위에 기반한 통역 결과를 제공하되, 상기 프로세서는 원시언어 문장을 입력으로 하고 목적언어 문장을 출력문으로 하는 양국어 코퍼스와, 상기 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 정렬정보에 기초하여 상기 동시통역 모델을 학습한다.
이 외에도, 본 발명을 구현하기 위한 다른 방법, 다른 시스템 및 상기 방법을 실행하기 위한 컴퓨터 프로그램을 기록하는 컴퓨터 판독 가능한 기록 매체가 더 제공될 수 있다.
본 발명에 따르면, 발화자의 발화가 진행되는 상황에서 중간 통역 결과의 제공 가능 여부를 계속적으로 결정해야 하는 동시통역 모델을 학습함에 있어서, 기존의 양국어 코퍼스와 더불어 단어간 정렬정보로부터 읽기 및 쓰기 행위에 대한 행위 정보를 추출하고 이를 함께 학습함으로써, 중간 통역 결과의 제공 가능 여부를 보다 정확하게 결정할 수 있다. 이에 따라, 정확률이 높은 통역 결과를 제공하는 것뿐만 아니라 청자의 대기시간을 줄일 수 있는 신속성도 함께 제공할 수 있다는 장점이 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 실시간 동시통역 모델 학습 방법의 순서도이다.
도 2는 문장 단위 입력이 완료된 후의 동시통역 처리 과정을 설명하기 위한 도면이다.
도 3은 예측행위와 보관행위를 고려한 통역 지연성이 0인 동시통역 처리 과정을 설명하기 위한 도면이다.
도 4는 도 3에서 읽기행위와 쓰기행위만을 명시한 통역 지연성이 0인 동시통역 처리 과정을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에서 예측행위를 제외한 동시통역 처리 과정을 설명하기 위한 도면이다.
도 6은 도 5에서 읽기행위와 쓰기행위만을 명시한 통역 지연성을 최소화한 동시통역 처리 과정을 설명하기 위한 도면이다.
도 7은 본 발명의 일 실시예에서 정렬정보에 기반하여 추출한 행위열 정보를 설명하기 위한 도면이다.
도 8은 소정의 횟수만큼 읽기행위를 추가적으로 수행한 후에 따른 행위열 정보를 도시한 도면이다.
도 9는 행위결합 출력문의 일 예시를 도시한 도면이다.
도 10은 본 발명의 일 실시예에 따른 실시간 동시통역 방법의 순서도이다.
도 11은 본 발명의 일 실시예에 따른 외부 정렬정보에 기반한 실시간 동시통역 시스템의 블록도이다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야의 통상의 기술자에게 본 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다. 명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 발명은 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템(100)에 관한 것이다.
자동번역 시스템의 경우 통상적으로 문장 단위를 기본 번역 단위로 간주하기 때문에, 번역의 정확성만이 중요한 요소로 취급된다. 하지만, 동시통역 시스템은 통역 결과의 정확성에 더하여 통역 결과 제공의 신속성을 함께 고려해야 한다는 점에서 자동번역 시스템과는 그 차이가 있다.
통역 결과 제공의 신속성은 발화자가 발화를 시작한 시점에서 얼마나 빨리 청자에게 통역 결과를 제공할 수 있느냐 하는 것으로, 가능한 발화자의 발화 시점과 청자에게 통역 결과가 제공되는 시점 사이의 차이(ear-voice span)가 짧을수록 좋다. 통상적으로 기존의 동시통역 시스템은 발화자가 문장 단위 발화가 끝난 시점이나 아주 긴 발화의 멈춤이 발생한 시점에서 통역 결과를 사용자에게 제공하는 경우가 많아서, 발화자가 끊김없이 긴 문장 형태로 발화를 하는 경우, 청자는 문장 단위 발화가 끝날 때까지 통역 결과를 제공받지 못해 답답함을 느낀다. 통상적으로 청자는 4~5초 동안 아무런 통역 결과가 제공되지 않으면 답답함을 느낀다.
따라서, 동시통역 시스템은 발화자의 문장 단위 발화가 끝나지 않은 시점에서도 중간 통역 결과를 청자에게 제공하여도 되는지를 계속적으로 판단하여, 가능하다고 판단되는 시점에서 발화자가 지금까지 발화한 내용에 대한 통역 결과를 청자에게 제공하여 통역 결과 제공의 신속성을 확보해야 한다.
자동번역 시스템의 경우와 마찬가지로, 원시언어를 목적언어로 변환해주는 동시통역 시스템을 뉴럴 네트워크를 이용한 딥러닝 기반으로 학습함에 있어서, 원시언어와 이에 대응하는 목적언어로 구성된 양질의 양국어 코퍼스가 매우 중요한 자원이다. 그러나, 기존의 양국어 코퍼스는 원시언어와 목적언어의 문장 단위 대응 관계만이 설정되어 있으며, 기존의 확보된 대부분의 코퍼스는 동시통역의 신속성을 고려하고 있지 않고 문장 대 문장 단위로 매핑되기 때문에, 중간 통역 결과 제공이 가능한 시점인가의 판단을 학습하기 위한 별도의 기술을 개발할 필요가 있었다.
종래의 방법으로는 언어적 특성이나 음성적 특성을 고려하여 발화자의 발화에 대해 동시통역 단위를 미리 결정한 후, 이를 번역하고 그 결과를 제공하는 방법이 있었다. 이는 통역 단위 결정을 위해 양국어 코퍼스 이외의 별도의 자원을 활용하여 학습 가능한 장점이 있으나, 번역 결과와 연동되지 않고 미리 통역 단위를 결정한다는 문제점이 있었다.
또 다른 방법으로는 양국어 코퍼스를 이용하여 뉴럴 네트워크 기반의 동시통역 시스템을 학습시킬 때, 통역 단위가 가능한 부분인지에 대한 결정을 위해 학습 시의 손실함수(loss function)로 번역의 정확성과 지연성을 함께 고려할 수 있는 자질을 학습시킴으로써, 정확성과 함께 일부 신속성을 함께 반영할 수 있다. 이러한 방법은 기존의 양국어 코퍼스만을 이용하여 동시통역 시스템을 학습시킬 수 있으나, 기존의 양국어 코퍼스의 대부분이 동시통역을 고려하지 않은 문장 단위로 구축되어 있어, 어순적 차이가 작은 언어들간에는 잘 작동할 수 있으나, 영어와 한국어처럼 어순적 차이가 큰 언어쌍에서는 정확성과 신속성을 동시에 학습해야 하므로 학습 난이도가 높아지는 문제점이 있다.
이와 같이, 동시통역이 가능한 단위의 결정은 한 시점에 이미 발화된 단어들만으로 번역이 가능한지를 판단할 수 있어야 한다. 이는 양국어 문장에서 단어간의 정렬 정보가 제공될 경우 용이하게 판별이 가능하다. 본 발명의 일 실시예에 따르면, 동시통역 모델의 학습에 사용되는 양국어 코퍼스에 단어 정렬 정보를 추가적으로 제공함으로써 통역 결과의 정확성과 더불어 신속성을 함께 제공할 수 있다.
이하에서는 도 1 내지 도 9를 참조하여 본 발명의 일 실시예에 따른 외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법(이하, 실시간 동시통역 모델 학습 방법)을 설명하도록 한다.
통상의 실시간 동시통역 시스템은 음성을 입력으로 하여 문자를 출력하는 음성인식 모듈과 인식된 문자열을 번역하는 번역 모듈이 순차적으로 결합되고, 필요시 번역된 문자열을 다시 음성으로 출력하는 음성 합성 모듈이 결합되는 형태로 구성된다. 최근에는 이러한 모듈의 세분화 없이 입력된 음성을 바로 번역된 문자열이나 음성으로 바로 변환하는 형태의 동시통역 시스템도 개발되고 있다.
본 발명의 일 실시예는 두 가지 방식에 모두 적용 가능한 형태이나, 설명의 용이성을 위해 음성인식 모듈과 번역 모듈이 순차적으로 결합된 구성인 것으로 가정하여 설명하도록 한다.
최근 실시간 동시통역 시스템에 적용되는 자동번역 시스템은 신경망 기반 자동번역(Neural Machine Translation, NMT) 시스템이다. 일반적인 NMT 시스템은 주의 집중 매커니즘(Attention mechanism)을 추가한 인코더-디코더(encoder-decoder) 형태로, 재귀적 인공 신경망(Recurrent Neural Net, RNN)이나 합성곱 인공 신경망(Convolutional Neural Network, CNN), 또는 최근 좋은 성능을 보이고 있는 자기 집중 메커니즘(Self-attention Mechanism)을 가진 트랜스포머(Transformer) 모델을 사용하여 원문을 인코더를 이용하여 벡터로 추상화하고, 이를 기반으로 주의 집중 매커니즘을 이용하여 변환할 대역 어휘에 해당하는 벡터로 변환한 후, 대역 벡터를 디코더를 이용하여 대역문의 번역 결과로 생성해낸다.
도 1은 본 발명의 일 실시예에 따른 실시간 동시통역 모델 학습 방법의 순서도이다.
한편, 도 1에 도시된 각 단계들은 실시간 동시통역 시스템(100)을 구성하는 서버(이하, 서버)에 의해 수행되는 것으로 이해될 수 있지만, 이에 제한되는 것은 아니다.
서버는 실시간으로 발화자가 발화한 음성에 대한 음성인식 결과를 생성하면, 음성인식 결과를 학습된 동시통역 모델로 입력한다. 이때, 발화자의 발화는 텍스트 형태로 변환될 수 있으며, 이 과정에서 인식된 발화에 포함된 여러가지 노이즈를 파악하여 제거할 수 있다. 또한, 발화자의 발화에는 포함되어 있으나 번역에 이용되지 않는 음성 등을 파악하여 제거할 수 있다.
동시통역 모델은 읽기행위와 쓰기행위 중 어느 하나의 행위를 결정한다. 동시통역이 이루어질 때의 행위를 크게 읽기(Read)와 쓰기(Write)라고 한다면, 동시통역 모델은 추가적으로 음성인식 결과 단위를 더 입력받을 것인지, 즉 읽기행위를 수행할 것인지, 아니면 현재까지의 입력으로 중간 통역 결과를 출력할 것인지, 즉 쓰기행위를 수행할 것인지를 결정한다.
이후, 서버는 선택된 행위를 수행한 이후에 따른 통역 결과를 청자에게 제공한다. 만약, 동시통역 모델에서 쓰기행위를 수행할 것으로 결정한 경우, 현재까지의 읽기행위에 상응하는 중간 통역 결과를 청자에게 제공한다.
한편, 정확성과 더불어 신속성을 보다 향상시키기 위하여, 본 발명의 일 실시예는 동시통역 모델을 학습해야 한다.
이를 위해, 서버는 원시언어 문장을 입력문으로 하고, 목적언어 문장을 출력문으로 하는 양국어 코퍼스를 입력받는다(S110).
그 다음, 서버는 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 정렬정보를 생성하고(S120), 정렬정보에 기초하여 동시통역 모델에서의 제1 행위에 후속되는 제2 행위를 결정하여 행위열 정보를 생성한다(S130). 이때, 제1 및 제2 행위는 입력문의 단어를 읽는 읽기행위이거나 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기 행위에 해당한다.
이와 같이 행위열 정보가 생성되고 나면, 서버는 양국어 코퍼스 및 행위열 정보를 기반으로 동시통역 모델을 학습한다(S140).
이때, 제1 행위가 읽기 행위이고 제2 행위가 쓰기행위인 경우, 쓰기행위는 읽기행위에 상응하는 단어를 직접적으로 중간 통역한 결과를 출력하는 행위이거나, 또는 읽기행위에 상응하는 단어의 위치에 올 것으로 예측되는 단어를 중간 통역한 결과를 출력하는 행위이다.
한편, 제1 행위와 제2 행위는 특정 시점에서 수행된 행위로 한정되는 것이 아니다. 즉, 제1 행위와 제2 행위는 일련의 연속되는 행위를 지칭하는 것으로 해석되어야 한다.
이하에서는 입력문과 출력문에 있어서 행위열 정보를 이용하는 일 예시를 설명한 이후, 정렬정보를 이용하여 행위열 정보를 생성하는 내용을 설명하도록 한다.
도 2는 문장 단위 입력이 완료된 후의 동시통역 처리 과정을 설명하기 위한 도면이다. 도 2에서는 처리시간 별로 입력 단어가 들어오고, 출력 단어가 출력되는 과정과 그에 따른 동시통역 시스템의 처리 행위에 대해 도시하고 있다.
원시언어로 이루어진 입력문 'A B C D E F'에 대해 목적언어로 이루어진 출력문 'A' B' D' C' E' F''가 대응된다고 가정하자.
자동번역이 이루어질 때의 행위를 크게 읽기(Read,이하 R)와 쓰기(Write, 이하 W)라고 한다면, 도 2의 예시와 같이 자동번역은 입력문의 단어를 모두 읽은 후, 대역문의 단어를 쓰기 시작한다. 예시에서 A, B, C, D, E, F는 각각 원시언어에 해당하는 단어이고, A', B', C', D', E', F'는 각 원시언어에 해당하는 단어에 매핑되는 대역언어 단어이다.
한편, 본 발명에서는 설명의 편의를 위하여 단어로 예를 들어 설명하였으나, 단어를 좀더 작은 단위로 쪼갠 토큰에 대해서도 동일하게 적용 가능하다.
행위열(action sequence)은 자동번역이 이루어지는 과정에서의 행위에 대한 것으로 R은 읽기를, W를 쓰기를 의미한다. 따라서, 도 2에 도시된 입력문 'A B C D E F'는 'R R R R R R W W W W W W'의 행위를 거쳐, 즉 6번의 읽기 후의 6번의 쓰기를 거쳐 출력문 'A' B' D' C' E' F' '을 생성하였다.
도 3은 예측행위와 보관행위를 고려한 통역 지연성이 0인 동시통역 처리 과정을 설명하기 위한 도면이다. 도 4는 도 3에서 읽기행위와 쓰기행위만을 명시한 통역 지연성이 0인 동시통역 처리 과정을 설명하기 위한 도면이다.
실시간 동시통역이 이루어질 때의 행위는 읽기(Read), 쓰기(Write), 보관(Keep), 예측(Predict) 행위로 나누어 볼 수 있다. 보관행위와 예측행위는 두 언어간 어순의 차이에 기인한다. 보관행위는 발화자가 이미 발화를 하였고 해당 단어에 대한 대역 단어는 출력되지 않았지만 그 뒤에 발화한 단어에 대한 대역 단어는 출력되는 경우를 말한다. 반대로, 예측행위는 동시통역의 신속성을 위해 입력문에서 아직 발화되지 않았지만, 문맥 등을 통해 대역 단어를 발화하기 위해 미리 예측하는 행위를 말한다.
도 2에서의 입력문과 출력문에 대해서 입력문의 한 단어를 읽고 출력문의 한 단어를 바로 출력하는 형태의 통역 지연성이 0, 즉 한 개의 입력단어에 대해 한 개의 출력이 나오는 동시통역 시스템을 가정할 경우 해당 동시통역 모델에서의 행위열은 도 3과 같다.
도 3을 참조하면, 동시통역 모델은 입력문의 첫번째 단어에 대하여 R을 통해 A를 읽고 W를 통해 A'를 쓴다. 두 번째 R과 W를 통해 B를 읽고 B'를 쓴 후, 세 번째 R을 통해 C를 읽은 후 예측행위(P)를 통해 아직 발화되지 않아 입력받지 못한 D에 대응하는 D'를 예측하고, W를 수행하여 출력한 후, 아직 출력되지 않은 C에 대한 정보는 보관행위(K)를 통해 보관한다. 이때의 P, W, K의 순서는 일례로서, 서로 바뀌어도 무관하다. 이후, 동시통역 모델은 R 행위를 통해 D를 읽고, W를 통해 보관해 두었던 C에 대응하는 C'를 쓴다. 이후 2번의 R과 W를 차례로 반복하여 E, E', F, F'를 읽고 씀으로써 입력문과 출력문에 대한 동시통역을 완료한다.
도 3의 예시로 든 통역 지연성이 0인 동시통역 모델은 입력문과 출력문의 길이가 동일한 경우 발화자가 한 단어를 발화하는 대로 한 단어의 출력이 나오는 형태가 된다. 그러나, 충분한 정보가 제공되지 않는 상태에서 입력되지 않은 단어에 대해 출력 단어를 예측하는 것은 매우 어려워, 동시통역의 정확성을 떨어뜨리게 된다.
여기서 보관행위(K)와 예측행위(P)는 동시통역 모델 내부에서 이루어지는 처리절차를 시스템 동작 방식의 설명을 돕기 위해 특징하여 지칭한 것으로, 실제로 동시통역 모델이 동시통역을 위해 학습해야 할 행위는 읽기행위(R)와 쓰기행위(R)에 대해서만 판단할 수 있으면 된다. 따라서 위의 입력문과 출력문에 대해 동시통역 모델이 배워야 할 행위열은 도 4와 같이 P와 K가 제외된 하나의 입력단어에 대해 하나의 출력단어가 생성되는 형태이다.
도 5는 본 발명의 일 실시예에서 예측행위를 제외한 동시통역 처리 과정을 설명하기 위한 도면이다. 도 6은 도 5에서 읽기행위와 쓰기행위만을 명시한 통역 지연성을 최소화한 동시통역 처리 과정을 설명하기 위한 도면이다.
본 발명의 일 실시예는 도 3 및 도 4와는 달리, 정확성이 떨어지는 예측행위를 제외한 읽기행위(R), 쓰기행위(W) 및 보관행위(K)로만 구성된다. 동시통역 모델은 W의 행위가 발생하는 대로 그 통역결과를 청자에게 제공한다.
도 5의 경우도 마찬가지로 보관행위(K)는 동시통역 모델 내부에서 이루어지는 처리절차를 시스템 동작 방식의 설명을 돕기 위해 특징하여 지칭한 것이다. 실제로 동시통역 모델이 동시통역을 위해 학습해야 할 행위는 읽기행위(R)와 쓰기행위(R)에 대해서만 판단할 수 있으면 되므로, 위의 입력문과 출력문에 대해 동시통역 모델이 배워야 할 행위열은 K가 제외된 형태로 도 6에 도시된 바와 같다. 즉, 도 6은 동시통역 모델 내부에서 예측행위 P가 발생하지 않게 하면서 통역 지연성을 최소화한 행위열이 된다.
한편, 본 발명에서 제안하는 동시통역 시스템(100)의 경우는 하나의 입력 단어가 입력된 후 반드시 출력 단어가 생성되는 것은 아니다. 즉, 하나도 출력되지 않을 수도 있으며 한 번에 여러 개가 연속적으로 출력될 수도 있다.
도 7은 본 발명의 일 실시예에서 정렬정보에 기반하여 추출한 행위열 정보를 설명하기 위한 도면이다.
본 발명의 일 실시예에서, 서버는 양국어 코퍼스에서의 단어에 상응하는 정렬정보를 생성하고, 이에 기초하여 행위열 정보를 생성하는 것을 특징으로 한다.
즉, 서버는 외부 정렬정보에 기반하여 최적의 행위열 정보를 도출하고, 이를 기반으로 동시통역 모델의 통역 단위를 학습하게 된다. 이때, '외부' 정렬정보라 함은 동시통역 모델과 구분되는 하드웨어 또는 소프트웨어적인 구성에 의해 생성되는 것을 의미한다.
서버는 행위열을 제공하기 위해 먼저 원시언어 코퍼스와 목적언어 코퍼스를 기반으로 별도의 정렬정보 추출 방법을 활용하여 단어간 정렬정보를 추출한다.
본 발명의 일 실시예에서는 다양한 방법을 이용하여 단어간 정렬정보를 추출할 수 있다. 일 예로, 통계적 기법을 이용하여 단어간 정렬 정보를 제공하는 도구로는 GIZA++, BerkelyAlinger, Fast Align 등과 같이 이미 공개 되어있는 다양한 툴킷이 있으나, 정확률이 높지는 않은 편이다.
다른 방법으로 자동번역 모델을 이용하여 단어 정렬 정보를 추출할 수도 있다. 주의 집중 메커니즘을 가진 뉴럴 네트워크 기반의 자동번역 시스템은 양국어 코퍼스로 번역 기능을 학습할 때, 각각의 출력 단어의 생성 시 어떤 입력단어에 집중하여 보는가에 대한 정도가 함께 학습되기 때문에, 이를 기반으로 하여 단어간 정렬정보를 추출할 수 있다.
뿐만 아니라, 단어간 정렬정보 학습을 위하여 별도의 모델을 학습시킬 수도 있는데, BERT(Bidirectional Encoder Representations from Transformers)나 GPT-2(Generative Pre-Traing 2)와 같이 대량의 코퍼스로부터 언어 이해를 위한 자질을 미리 학습해둔 모델을 이용하여 단어 정렬 태스크를 학습시키는 방법 등을 이용할 수 있다. 이 외에도 본 발명의 일 실시예는 여러 가지 기법을 이용함으로써 보다 높은 정확률의 단어 정렬 정보를 추출할 수 있다.
예를 들어, 입력문과 출력문의 각 단어들이 아래와 같이 매핑될 때, 외부 모듈을 통해 획득한 단어의 정렬정보는 다음과 같은 형태로 표현될 수 있다.
입력문: A B C D E F
출력문: A' B' D' C' E' F'
정렬정보: 0-0 1-1 2-3 3-2 4-4 5-5
여기에서, '-'의 왼쪽은 입력 단어의 인덱스이고 '-'의 오른쪽은 이에 대응되는 출력 단어의 인덱스이며, 인덱스는 0에서부터 시작한다. 즉, 서버는 양국어 코퍼스의 입력문에서의 단어와 대응하는 출력문에서의 단어의 각 인덱스를 매칭시켜 정렬정보를 생성할 수 있다.
단어간 정렬정보가 생성되고 나면, 서버는 정렬정보에 기초하여 행위열 정보를 생성한다.
도 7은 정렬정보에 기반하여 추출한 행위열 정보를 설명하기 위한 도면이다.
일 실시예로, 서버는 동시통역 모델에서 현재까지의 읽기행위에 상응하는 입력문의 단어에 대한 제1 입력단어 인덱스(i)를 추출하고, 현재까지의 읽기행위 이전의 쓰기행위에 상응하는 출력문의 단어에 대한 제1 출력단어 인덱스(j-1)를 추출한다.
그 다음, 서버는 제1 출력단어 인덱스(j-1) 이후에 출력되어야 할 제2 출력단어 인덱스(j)를 갖는 출력문의 단어의 정렬정보에 기초하여, 제2 출력단어 인덱스(j)와 정렬관계를 갖는 입력문의 단어를 추출한다. 일 예로, 제2 출력단어 인덱스를 갖는 출력문의 단어와 정렬관계를 가지는 입력단어는 s1, s2, .. sk로 추출된다.
이후, 서버는 추출된 입력문의 단어들 s1, s2, .. sk 중 가장 큰 인덱스(max_si)를 갖는 단어와 제1 입력단어 인덱스(i)를 비교하고, 비교 결과에 기초하여 행위열 정보에 읽기행위 또는 쓰기행위를 기록한다.
일 실시예로, 서버는 제1 입력단어 인덱스(i)가 상기 가장 큰 인덱스(max_si)보다 더 작은 경우 행위열 정보에 읽기행위 'R'을 기록하고, 반대로 제1 입력단어 인덱스(i)가 상기 가장 큰 인덱스(max_si) 이상인 경우 행위열 정보에 쓰기행위 'W'를 기록한다.
서버는 행위열 정보에 읽기행위를 기록한 이후, 제1 입력단어 인덱스(i)의 다음 인덱스에 상응하는 입력문의 단어에 대한 제2 입력단어 인덱스(i+1)를 상기 가장 큰 인덱스(max_si)와 비교한다. 그리고 비교 결과 제2 입력단어 인덱스(i+1)가 상기 가장 큰 인덱스(max_si)보다 더 작은 경우 행위열 정보에 읽기행위 'R'을 기록하고. 제2 입력단어 인덱스(i+1)가 상기 가장 큰 인덱스(max_si) 이상인 경우 행위열 정보에 쓰기행위 'W'를 기록한다.
서버는 입력문과 출력문의 단어를 모두 읽고 쓸때까지 반복하여 행위열 정보를 생성한다. 이와 같이 생성된 행위열 정보는 도 6 및 도 7과 같으며, 도 7은 입력문, 출력문, 그리고 정렬정보에 기반하여 추출 가능한 행위열에 대한 실시예를 도시한 것이다.
한편, 행위열 정보에 포함된 행위의 개수는 읽기행위와 쓰기행위의 합이므로, 행위열 정보는 '입력문의 입력 단어수+출력문의 출력 단어수'와 같게 된다. 이러한 행위열 정보를 생성함에 있어, 본 발명의 일 실시예는 여러가지 휴리스틱한 규칙을 적용할 수 있다. 도 7에서의 행위열은 입력단어를 읽자마자 매핑되는 출력단어를 생성할 수 있을 경우 바로 생성하여 출력하는 형태로 이루어진다.
하지만, 번역의 정확성을 높이기 위해서는 뒤에 발화되는 단어들을 더 많이 입력받은 후 번역결과를 생성하는 것이 좋다. 이를 위해, 서버는 제1 행위에 후속되는 제2 행위로 소정의 횟수만큼의 읽기행위(R)를 더 수행할 수 있다.
도 8은 소정의 횟수만큼 읽기행위를 추가적으로 수행한 후에 따른 행위열 정보를 도시한 도면이다.
예를 들어, 정렬정보만을 고려한 즉시 출력 형태의 행위열이 도 7과 같을 때, 임의의 읽기행위(R)를 더 추가한 행위열의 형태는 도 8과 같다. 도 8의 행위열에서는 즉시 출력 대신, 뒤의 3단어를 무조건 더 읽은 후 출력을 결정하는 형태가 된다. 즉, 첫번째 R로 A를 읽은 후 바로 도 7의 행위열과 같이 바로 출력하는 W행위를 하는 대신, 3번의 읽기행위(R)를 더 수행하여 'B', 'C', 'D'를 읽은 후, W행위로 A'를 출력한다. 이후 다시 'R'을 수행하여 'E'를 읽은 후, W를 수행하여 B'를 출력한다. 이후 F를 읽음으로써 입력문의 끝까지 읽게 되었으므로, 남아 있던 읽기행위(R)를 연속적으로 수행하여 D', C', E', F'를 출력한다. 이와 같은 실시예에 따르면, 도 7의 행위열 정보를 통해 동시통역 모델을 학습하였을 때 보다, 통역 지연성은 다소 떨어지지만 더 많은 단어를 보고 통역 결과를 출력하므로 통역 정확성은 높아진다.
전술한 실시예와 같이 행위열을 구성함에 있어, 본 발명은 단어간 정렬정보를 적용하는 것을 특징으로 하며, 이를 기반으로 다양한 입력과 출력 스케줄 규칙을 반영하여 행위열을 조정할 수 있다. 이렇게 입력문, 출력문에 더하여 행위열 정보를 구축하고, 이를 동시통역 모델을 학습하는데 사용할 수 있다.
이하에서는 본 발명의 일 실시예에 따른 동시통역 모델의 일 실시예를 설명하도록 한다.
본 발명의 일 실시예에서, 행위열 학습을 위한 뉴럴 네트워크 기반의 동시통역 모델은 여러 형태로 구성될 수 있다. 일 실시예로, 동시통역 모델은 인코더(encoder)와 디코더(decoder)를 갖는 뉴럴 네트워크 기반의 자동번역 시스템을 최대우도추정(maximum likelihood estimation, MLE) 기반으로 학습하되, 출력 단어의 하나로 읽기행위를 의미하는 기호를 추가하는 방법을 적용하여 학습할 수 있다.
즉, 서버는 행위열 정보의 읽기행위를 기 설정된 특수기호(예를 들어 '##')로 대체하고, 쓰기행위를 출력문에서의 출력단어로 대체한 행위결합 출력문을 생성한다. 그리고 입력문과 행위결합 출력문을 기반으로 동시통역 모델을 학습할 수 있다.
도 9는 행위결합 출력문의 일 예시를 도시한 도면이다.
서버는 행위열의 읽기 'R'에 대해서는 특수기호 '##'으로 대체하고, 쓰기행위 'W'에 대해서는 그에 해당하는 출력단어로 대체하며, 이를 (행위결합)출력문으로 한다. 즉, 원 입력문과 출력문에 대하여 도 8과 같은 행위열 정보가 주어지면, 서버는 도 9와 같이 입력문과 행위결합 출력문으로 변경한다. 이러한 입력문과 행위결합 출력문의 쌍을 기존의 딥러닝 기반 자동번역 모델의 형태로 학습하면 된다.
일반적인 자동회귀(auto-regressive) 딥러닝 기반의 자동번역 모델은 뉴럴 네트워크의 파라미터들인
Figure 112020114634522-pat00001
를 원시언어 문장인 x들과, 목적언어 문장인 y들로 이루어진 양국어 코퍼스 (x, y)를 기반으로 최대우도추정 기법으로, 아래 식 1의 확률을 최대로 할 수 있는 파라미터
Figure 112020114634522-pat00002
를 학습하게 된다.
[식 1]
본 발명의 일 실시예는 식 1에 따른 딥러닝 기반의 자동번역 모델을 이용하여, 현재 시간 t에서의 현재까지의 입력으로 주어진 입력문들을 동시통역 모델(자동번역 모델)의 인코더로 입력하고, 현재 시간 t에서의 입력문에 상응하는 출력문을 동시통역 모델(자동번역 모델)의 디코더에서 출력한다.
일 예로, 동시통역 모델은 현재 시간 t에서 현재까지의 입력으로 주어진 를 입력받아, 다음 출력단어
Figure 112020114634522-pat00005
를 결정함에 있어, 아래 식 2의 확률을 최대로 할 수 있는 파라미터
Figure 112020114634522-pat00006
를 학습하게 된다.
[식 2]
여기에서 는 현재 시간 t에서 디코딩
Figure 112020114634522-pat00009
가 출력되기 위해 인코더가 참조해야 하는 이전 문맥 단어 개수에 대한 단조 감소함수로, 단조 감소함수는 의 범위를 갖는다.
동시통역 모델의 학습이 완료된 후, 발화자의 발화를 입력받아 동시통역 결과를 출력하는 추론(inference)시에는 읽기행위를 나타내는 '##'이 출력단어로 나오면, 동시통역 모델은 다음 발화자의 발화를 입력받도록 기다린 후 발화자의 다음 발화 단어를 입력받고, '##' 이외의 단어가 출력될 경우에는 청자에게 해당 중간 통역 결과를 전달함으로써 동시통역을 수행할 수 있다.
동시통역 모델의 또 다른 실시예로는, 통상의 인코더와 디코더로 구성되어 발화자의 실시간 발화를 입력받는 자동번역 모델을 구성하고, 이에 더하여 인코더와 디코더의 상태 정보를 기반으로 읽기행위(R)와 쓰기행위(W) 중 하나를 결정하도록 하는 동시통역 행위결정을 위한 별도의 네트워크를 추가한 형태의 동시통역 모델을 구성하여, 입력문과 출력문, 행위열을 학습 코퍼스로 사용하여 학습을 수행할 수도 있다. 이 경우, 행위결정 네트워크가 쓰기행위를 결정한 경우 디코더의 출력 결과를 통역 결과로 출력한다.
한편, 본 발명에서 기술한 동시 통역 모델의 구성은 일 예로서, 원시언어 문장, 목적언어 문장, 이들 간의 외부 정렬 정보 또는 그에 기반한 행위열 정보를 학습 코퍼스로 활용하여 학습하는 방법들을 모두 포함한다.
이하에서는 도 10을 참조하여 본 발명의 다른 실시예에 따른 실시간 동시통역 방법을 설명하도록 한다.
도 10은 본 발명의 일 실시예에 따른 실시간 동시통역 방법의 순서도이다.
먼저, 서버는 실시간으로 발화자가 발화한 음성을 수신하여, 음성에 대한 음성인식 결과를 생성하면(S210), 음성인식 결과를 미리 학습된 동시통역 모델로 입력한다(S220).
다음으로, 서버는 동시통역 모델에서 발화자의 음성을 더 입력받는 입력행위 및 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위 중 어느 하나를 선택하고(S230), 선택된 행위에 기반한 통역 결과를 제공한다(S240).
이때, 미리 학습된 동시통역 모델은 원시언어 문장을 입력으로 하고, 목적언어 문장을 출력문으로하는 양국어 코퍼스와, 양국어 코퍼스에서의 단어 또는 토큰에 상응하는 정렬정보에 기초하여 학습된다.
한편, 상술한 설명에서, 단계 S110 내지 단계 S240 은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. 아울러, 기타 생략된 내용이라 하더라도 도 1 내지 도 9에 기술된 내용은 도 10과 도 11의 내용에도 적용된다.
도 11은 본 발명의 일 실시예에 따른 외부 정렬정보에 기반한 실시간 동시통역 시스템(100)의 블록도이다.
본 발명의 일 실시예에 따른 실시간 동시통역 시스템(100)은 통신모듈(110), 메모리(120) 및 프로세서(130)를 포함한다.
통신모듈(110)은 실시간으로 발화자가 발화한 음성에 대한 음성인식 결과를 수신하고, 발화한 음성에 대응되는 동시통역 결과를 출력한다.
메모리(120)에는 미리 학습된 동시통역 모델에 기초하여 상기 동시통역 결과를 생성 및 제공하기 위한 프로그램이 저장되며, 프로세서(130)는 메모리(120)에 저장된 프로그램을 실행시킨다.
프로세서(130)는 프로그램을 실행시킴에 따라, 동시통역 모델에서 발화자의 음성을 더 입력받는 읽기행위 및 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위 중 어느 하나의 행위를 선택하고, 선택된 행위에 기반한 통역 결과를 제공한다.
또한, 프로세서(130)는 원시언어 문장을 입력으로 하고 목적언어 문장을 출력문으로 하는 양국어 코퍼스와, 상기 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 정렬정보에 기초하여 상기 동시통역 모델을 학습한다.
이상에서 전술한 본 발명의 일 실시예는, 하드웨어인 서버와 결합되어 실행되기 위해 프로그램(또는 어플리케이션)으로 구현되어 매체에 저장될 수 있다.
상기 전술한 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
이상, 첨부된 도면을 참조로 하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.
100: 실시간 동시통역 시스템
110: 통신모듈
120: 메모리
130: 프로세서

Claims (13)

  1. 메모리 및 프로세서를 구비하는 컴퓨터에 의해 수행되는 방법에 있어서,
    원시언어 문장을 입력문으로 하고 목적언어 문장을 출력문으로 하는 양국어 코퍼스를 입력받는 단계;
    상기 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 단어 정렬정보를 생성하는 단계;
    상기 단어 정렬정보에 기초하여 동시통역 모델에서의 입력문 및 출력문에서의 제1 행위에 후속되는 제2 행위를 결정하여 행위열 정보를 생성하는 단계; 및
    상기 양국어 코퍼스 및 상기 단어 정렬정보에 기초하여 생성된 행위열 정보를 기반으로 상기 동시통역 모델을 학습하는 단계를 포함하되,
    상기 양국어 코퍼스에서의 단어에 상응하는 단어 정렬정보를 생성하는 단계는,
    상기 양국어 코퍼스의 입력문에서의 단어와 대응하는 상기 출력문에서의 단어의 각 인덱스를 매칭시켜 상기 단어 정렬정보를 생성하고,
    상기 행위열 정보를 생성하는 단계는,
    상기 동시통역 모델에서 현재까지의 읽기행위에 상응하는 입력문의 단어에 대한 제1 입력단어 인덱스를 추출하는 단계;
    상기 현재까지의 읽기행위 이전의 쓰기행위에 상응하는 출력문의 단어에 대한 제1 출력단어 인덱스를 추출하는 단계;
    상기 제1 출력단어 인덱스 이후에 출력되어야 할 제2 출력단어 인덱스를 갖는 출력문의 단어 정렬정보에 기초하여, 상기 제2 출력단어 인덱스와 정렬관계를 갖는 복수의 입력문의 단어를 추출하는 단계;
    상기 추출된 복수의 입력문의 단어들 중 가장 큰 인덱스를 갖는 단어와 상기 제1 입력단어 인덱스를 비교하는 단계; 및
    상기 비교 결과에 기초하여 상기 행위열 정보에 읽기행위 또는 쓰기행위를 기록하는 단계를 포함하고,
    상기 제1 및 제2 행위는 상기 입력문의 단어를 읽는 읽기행위이거나 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위인 것인,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  2. 제1항에 있어서,
    상기 제1 행위가 읽기 행위이고 상기 제2 행위가 쓰기행위인 경우, 상기 쓰기행위는 상기 읽기행위에 상응하는 단어를 직접적으로 중간 통역한 결과를 출력하는 것 또는, 상기 읽기행위에 상응하는 단어의 위치에 올 것으로 예측되는 단어를 중간 통역한 결과를 출력하는 것인,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 비교 결과에 기초하여 상기 행위열 정보에 읽기행위 또는 쓰기행위를 기록하는 단계는,
    상기 제1 입력단어 인덱스가 상기 가장 큰 인덱스보다 더 작은 경우 상기 행위열 정보에 읽기행위를 기록하고, 상기 제1 입력단어 인덱스가 상기 가장 큰 인덱스 이상인 경우 상기 행위열 정보에 쓰기행위를 기록하는 것인,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  6. 제5항에 있어서,
    상기 비교 결과에 기초하여 상기 행위열 정보에 읽기행위 또는 쓰기행위를 기록하는 단계는,
    상기 행위열 정보에 읽기행위를 기록한 이후, 상기 제1 입력단어 인덱스의 다음 인덱스에 상응하는 입력문의 단어에 대한 제2 입력단어 인덱스를 상기 가장 큰 인덱스와 비교하는 단계 및
    상기 제2 입력단어 인덱스가 상기 가장 큰 인덱스보다 더 작은 경우 상기 행위열 정보에 읽기행위를 기록하고, 상기 제2 입력단어 인덱스가 상기 가장 큰 인덱스 이상인 경우 상기 행위열 정보에 쓰기행위를 기록하는 단계를 더 포함하는,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  7. 제1항에 있어서,
    상기 단어 정렬정보에 기초하여 상기 동시통역 모델에서의 제1 행위에 후속되는 제2 행위를 결정하여 행위열 정보를 생성하는 단계는,
    상기 제1 행위에 후속되는 상기 제2 행위로 소정의 횟수만큼의 읽기행위를 더 수행하는 단계를 포함하는,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  8. 제1항에 있어서,
    상기 양국어 코퍼스 및 상기 행위열 정보를 기반으로 상기 동시통역 모델을 학습하는 단계는,
    상기 행위열 정보의 읽기행위를 기 설정된 특수기호로 대체하고, 쓰기행위를 출력문에서의 출력단어로 대체한 행위결합 출력문을 생성하는 단계; 및
    상기 입력문과 상기 행위결합 출력문을 기반으로 상기 동시통역 모델을 학습하는 단계를 포함하는,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  9. 제8항에 있어서,
    상기 입력문과 상기 행위결합 출력문을 기반으로 상기 동시통역 모델을 학습하는 단계는,
    현재 시간 t에서 현재까지의 입력으로 주어진 상기 입력문들을 상기 동시통역 모델의 인코더로 입력하는 단계; 및
    상기 현재 시간 t에서 상기 입력문에 상응하는 출력문을 상기 동시통역 모델의 디코더에서 출력하는 단계를 포함하는,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  10. 제9항에 있어서,
    현재 시간 t에서 현재까지의 입력으로 주어진 상기 입력문들을 상기 동시통역 모델의 인코더로 입력하는 단계는,
    상기 현재 시간 t에서 현재까지의 입력으로 주어진 상기 입력문들을, 상기 현재 시간 t에서 상기 출력문이 출력되기 위하여, 상기 인코더가 참조해야 하는 이전 문맥 단어 개수에 대한 단조 감소함수의 형태로 상기 동시통역 모델의 인코더로 입력하는 것인,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  11. 제1항에 있어서, 상기 동시통역 모델을 학습하는 단계 이후,
    실시간으로 발화자가 발화한 음성에 대한 음성인식 결과를 생성하는 단계;
    상기 음성인식 결과를 상기 학습된 동시통역 모델로 입력하는 단계;
    상기 동시통역 모델에서 상기 읽기행위 및 상기 쓰기행위 중 어느 하나의 행위를 선택하는 단계; 및
    상기 선택된 행위를 수행한 통역 결과를 제공하는 단계를 더 포함하는,
    외부 정렬정보에 기반한 실시간 동시통역 모델의 학습 방법.
  12. 메모리 및 프로세서를 구비하는 컴퓨터에 의해 수행되는 방법에 있어서,
    실시간으로 발화자가 발화한 음성에 대한 음성인식 결과를 생성하는 단계;
    상기 음성인식 결과를 미리 학습된 동시통역 모델로 입력하는 단계;
    상기 동시통역 모델에서 상기 발화자의 음성을 더 입력받는 읽기행위 및 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위 중 어느 하나의 행위를 선택하는 단계; 및
    상기 선택된 행위에 기반한 통역 결과를 제공하는 단계를 포함하되,
    상기 미리 학습된 동시통역 모델은, 원시언어 문장을 입력문으로 하고 목적언어 문장을 출력문으로 하는 양국어 코퍼스와, 상기 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 단어 정렬정보가 생성되고, 상기 단어 정렬정보에 기초하여 상기 동시통역 모델에서의 입력문 및 출력문에서의 제1 행위에 후속되는 제2 행위를 결정하여 행위열 정보를 생성하고, 상기 양국어 코퍼스 및 상기 단어 정렬정보에 기초하여 생성된 행위열 정보에 기초하여 학습되고,
    상기 동시통역 모델에서 현재까지의 읽기행위에 상응하는 입력문의 단어에 대한 제1 입력단어 인덱스를 추출하고, 상기 현재까지의 읽기행위 이전의 쓰기행위에 상응하는 출력문의 단어에 대한 제1 출력단어 인덱스를 추출하고, 상기 제1 출력단어 인덱스 이후에 출력되어야 할 제2 출력단어 인덱스를 갖는 출력문의 단어 정렬정보에 기초하여, 상기 제2 출력단어 인덱스와 정렬관계를 갖는 복수의 입력문의 단어를 추출하고, 상기 추출된 복수의 입력문의 단어들 중 가장 큰 인덱스를 갖는 단어와 상기 제1 입력단어 인덱스를 비교한 후, 상기 비교 결과에 기초하여 상기 행위열 정보에 읽기행위 또는 쓰기행위가 기록되며,
    상기 단어 정렬정보는 상기 양국어 코퍼스의 입력문에서의 단어와 대응하는 상기 출력문에서의 단어의 각 인덱스 매칭을 통해 생성되는 것인,
    외부 정렬정보에 기반하여 학습된 동시통역 모델을 이용한 실시간 동시통역 방법.
  13. 외부 정렬정보에 기반한 실시간 동시통역 시스템에 있어서,
    실시간으로 발화자가 발화한 음성에 대한 음성인식 결과를 수신하고, 상기 발화한 음성에 대응되는 동시통역 결과를 출력하는 통신모듈,
    미리 학습된 동시통역 모델에 기초하여 상기 동시통역 결과를 생성 및 제공하기 위한 프로그램이 저장된 메모리 및
    상기 메모리에 저장된 프로그램을 실행시키는 프로세서를 포함하고,
    상기 프로세서는 상기 프로그램을 실행시킴에 따라, 상기 동시통역 모델에서 상기 발화자의 음성을 더 입력받는 읽기행위 및 현재까지의 읽기행위에 상응하는 중간 통역 결과를 출력하는 쓰기행위 중 어느 하나의 행위를 선택하고, 상기 선택된 행위에 기반한 통역 결과를 제공하되,
    상기 프로세서는 원시언어 문장을 입력으로 하고 목적언어 문장을 출력문으로 하는 양국어 코퍼스와, 상기 양국어 코퍼스에서의 단어 또는 토큰(이하, 단어)에 상응하는 단어 정렬정보가 생성되고, 상기 단어 정렬정보에 기초하여 상기 동시통역 모델에서의 입력문 및 출력문에서의 제1 행위에 후속되는 제2 행위를 결정하여 행위열 정보를 생성하고, 상기 양국어 코퍼스 및 상기 단어 정렬정보에 기초하여 생성된 행위열 정보에 기초하여 상기 동시통역 모델을 학습하고,
    상기 프로세서는 상기 동시통역 모델에서 현재까지의 읽기행위에 상응하는 입력문의 단어에 대한 제1 입력단어 인덱스를 추출하고, 상기 현재까지의 읽기행위 이전의 쓰기행위에 상응하는 출력문의 단어에 대한 제1 출력단어 인덱스를 추출하고, 상기 제1 출력단어 인덱스 이후에 출력되어야 할 제2 출력단어 인덱스를 갖는 출력문의 단어 정렬정보에 기초하여, 상기 제2 출력단어 인덱스와 정렬관계를 갖는 복수의 입력문의 단어를 추출하고, 상기 추출된 복수의 입력문의 단어들 중 가장 큰 인덱스를 갖는 단어와 상기 제1 입력단어 인덱스를 비교한 후, 상기 비교 결과에 기초하여 상기 행위열 정보에 읽기행위 또는 쓰기행위를 기록하며,
    상기 단어 정렬정보는 상기 양국어 코퍼스의 입력문에서의 단어와 대응하는 상기 출력문에서의 단어의 각 인덱스 매칭을 통해 생성되는 것인,
    외부 정렬정보에 기반한 실시간 동시통역 시스템.
KR1020200141062A 2020-10-28 2020-10-28 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템 KR102592623B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020200141062A KR102592623B1 (ko) 2020-10-28 2020-10-28 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템
US17/484,258 US12019997B2 (en) 2020-10-28 2021-09-24 Method of training real-time simultaneous interpretation model based on external alignment information, and method and system for simultaneous interpretation based on external alignment information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020200141062A KR102592623B1 (ko) 2020-10-28 2020-10-28 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템

Publications (2)

Publication Number Publication Date
KR20220056462A KR20220056462A (ko) 2022-05-06
KR102592623B1 true KR102592623B1 (ko) 2023-10-23

Family

ID=81257303

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020200141062A KR102592623B1 (ko) 2020-10-28 2020-10-28 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템

Country Status (2)

Country Link
US (1) US12019997B2 (ko)
KR (1) KR102592623B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230306207A1 (en) * 2022-03-22 2023-09-28 Charles University, Faculty Of Mathematics And Physics Computer-Implemented Method Of Real Time Speech Translation And A Computer System For Carrying Out The Method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7983898B2 (en) * 2007-06-08 2011-07-19 Microsoft Corporation Generating a phrase translation model by iteratively estimating phrase translation probabilities
KR102195627B1 (ko) * 2015-11-17 2020-12-28 삼성전자주식회사 통역 모델 생성 장치 및 방법과, 자동 통역 장치 및 방법
KR20200044201A (ko) 2018-10-10 2020-04-29 한국전자통신연구원 번역 성능 개선을 위한 신경망번역 모델 학습 방법 및 장치
KR102592630B1 (ko) 2018-11-21 2023-10-23 한국전자통신연구원 번역단위 대역 코퍼스를 이용하는 동시통역 시스템 및 방법
KR20200072802A (ko) 2018-12-13 2020-06-23 한국전자통신연구원 실시간 통역 시스템 및 방법

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Gu, J., Neubig, G., Cho, K., & Li, V. O. , Learning to translate in real-time with neural machine translation, arXiv preprint arXiv:1610.00388., 2016*
MA, Xutai, et al., Simuleval: An evaluation toolkit for simultaneous translation, arXiv preprint arXiv:2007.16193, Jul. 2020*
Zheng, B., Zheng, R., Ma, M., & Huang, L., Simpler and faster learning of adaptive policies for simultaneous translation, arXiv preprint arXiv:1909.01559., 2019*

Also Published As

Publication number Publication date
US12019997B2 (en) 2024-06-25
US20220129643A1 (en) 2022-04-28
KR20220056462A (ko) 2022-05-06

Similar Documents

Publication Publication Date Title
JP6818941B2 (ja) 多言語音声認識ネットワークをトレーニングする方法、音声認識システム及び多言語音声認識システム
US11205444B2 (en) Utilizing bi-directional recurrent encoders with multi-hop attention for speech emotion recognition
CN109635270B (zh) 双向概率性的自然语言重写和选择
US10152971B2 (en) System and method for advanced turn-taking for interactive spoken dialog systems
JP2020505650A (ja) 音声認識システム及び音声認識の方法
WO2022141714A1 (zh) 信息合成方法、装置、电子设备和计算机可读存储介质
CN111341293B (zh) 一种文本语音的前端转换方法、装置、设备和存储介质
CN113574595A (zh) 用于具有触发注意力的端到端语音识别的***和方法
CN113591462A (zh) 弹幕回复生成方法、装置及电子设备
US11322133B2 (en) Expressive text-to-speech utilizing contextual word-level style tokens
CN112331229A (zh) 语音检测方法、装置、介质和计算设备
CN113327574A (zh) 一种语音合成方法、装置、计算机设备和存储介质
CN114424209A (zh) 序列到序列神经模型中的结构保留关注机制
KR102592623B1 (ko) 외부 정렬정보에 기반한 실시간 동시통역 모델 학습 방법, 동시통역 방법 및 시스템
KR20240065125A (ko) 희귀 단어 스피치 인식을 위한 대규모 언어 모델 데이터 선택
San-Segundo et al. A spanish speech to sign language translation system for assisting deaf-mute people
KR20230158107A (ko) 효율적인 스트리밍 비-순환 온-디바이스 엔드-투-엔드 모델
CN117877460A (zh) 语音合成方法、装置、语音合成模型训练方法、装置
US20230343332A1 (en) Joint Segmenting and Automatic Speech Recognition
CN112989794A (zh) 模型训练方法、装置、智能机器人和存储介质
KR102519618B1 (ko) 단대단 신경망 번역 시스템 및 그 방법
CN117581233A (zh) 适用于流应用的以双因果和非因果受限自注意力进行序列到序列处理的人工智能***
JP2000222406A (ja) 音声認識翻訳装置及び方法
KR102383043B1 (ko) 생략 복원 학습 방법과 인식 방법 및 이를 수행하기 위한 장치
KR102551296B1 (ko) 외국어 말하기 학습을 위한 대화 장치 및 그 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
X091 Application refused [patent]
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant