KR102637338B1 - 번역 보정 방법 및 장치와 번역 시스템 - Google Patents

번역 보정 방법 및 장치와 번역 시스템 Download PDF

Info

Publication number
KR102637338B1
KR102637338B1 KR1020170012361A KR20170012361A KR102637338B1 KR 102637338 B1 KR102637338 B1 KR 102637338B1 KR 1020170012361 A KR1020170012361 A KR 1020170012361A KR 20170012361 A KR20170012361 A KR 20170012361A KR 102637338 B1 KR102637338 B1 KR 102637338B1
Authority
KR
South Korea
Prior art keywords
word
source
target
location information
sentence
Prior art date
Application number
KR1020170012361A
Other languages
English (en)
Other versions
KR20180087945A (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 KR1020170012361A priority Critical patent/KR102637338B1/ko
Priority to US15/715,956 priority patent/US10762302B2/en
Priority to EP17204436.4A priority patent/EP3355203A1/en
Priority to CN201711259277.6A priority patent/CN108363702B/zh
Priority to JP2017245282A priority patent/JP7111464B2/ja
Publication of KR20180087945A publication Critical patent/KR20180087945A/ko
Priority to US16/939,410 priority patent/US11409967B2/en
Priority to US17/865,828 priority patent/US11954452B2/en
Application granted granted Critical
Publication of KR102637338B1 publication Critical patent/KR102637338B1/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/42Data-driven translation
    • G06F40/47Machine-assisted translation, e.g. using translation memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/51Translation evaluation
    • 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/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/45Example-based machine translation; Alignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Machine Translation (AREA)

Abstract

번역 보정 방법이 개시된다. 일 실시예는 소스 문장에서 소스 워드를 선택하고, 상기 선택된 소스 워드와 상기 소스 문장에서의 상기 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성하며, 타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 타겟 워드를 보정한다.

Description

번역 보정 방법 및 장치와 번역 시스템{APPARATUS AND METHOD FOR CORRECTING TRANSLATION, AND TRANSLATION SYSTEM}
아래 실시예들은 번역 보정 방법 및 장치와 번역 시스템에 관한 것이다.
사용자는 모국어가 아닌 다른 언어의 문장, 절, 구, 또는 워드를 기계 번역을 이용하여 번역할 수 있다. 기계 번역 결과에 오류가 있으면, 사용자는 기계 번역 결과를 이해하는 것이 어렵다. 이에 따라, 다른 언어의 문장을 정확하게 번역하는 것이 중요할 수 있다.
일 측에 따른 번역 보정 방법은 소스 문장에서 소스 워드를 선택하는 단계; 상기 선택된 소스 워드와 상기 소스 문장에서의 상기 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성하는 단계; 및 타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 타겟 워드를 보정하는 단계를 포함한다.
상기 타겟 워드를 보정하는 단계는, 상기 특징값들 중 적어도 하나의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하는 단계; 및 상기 특징값들 중 적어도 하나의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 타겟 워드를 상기 특징값들 중 적어도 하나의 위치 정보와 맵핑된 소스 워드로 대체하는 단계를 포함할 수 있다.
상기 타겟 워드를 보정하는 단계는, 서브 타겟 워드들을 기초로 상기 타겟 워드가 결정된 경우, 상기 서브 타겟 워드들 각각에 대한 최대 특징값을 결정하는 단계; 각 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 타겟 워드를 상기 각 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체하는 단계를 포함할 수 있다.
상기 타겟 워드를 보정하는 단계는, 상기 소스 문장에 대응되는 타겟 문장에서 미리 정해진 유형에 해당하는 타겟 워드를 선택하는 단계; 상기 선택된 타겟 워드에 대한 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하는 단계; 및 상기 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 선택된 타겟 워드를 상기 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체하는 단계를 포함할 수 있다.
상기 타겟 워드를 보정하는 단계는, 상기 소스 문장에 대응되는 타겟 문장의 서브 타겟 워드들을 기초로 타겟 워드를 결정하는 단계; 상기 결정된 타겟 워드가 미리 정해진 유형에 해당하는 경우, 상기 서브 타겟 워드들 각각에 대한 최대 특징값에서 대표값을 결정하는 단계; 상기 대표값의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하는 단계; 및 상기 대표값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 결정된 타겟 워드를 상기 대표값의 위치 정보와 맵핑된 소스 워드로 대체하는 단계를 포함할 수 있다.
상기 선택된 소스 워드는, 고유 명사, 숫자, 숫자와 문자를 포함하는 워드, 타겟 언어로 표기된 워드, 사전(dictionary)에 등록되지 않은 워드, 및 이들 중 하나 이상을 포함하는 구(phrase) 중 어느 하나에 해당할 수 있다.
번역 보정 방법은 상기 선택된 소스 워드를 전처리하는 단계를 더 포함할 수 있다.
상기 선택된 소스 워드를 전처리하는 단계는, 상기 선택된 소스 워드의 표기를 변경하는 단계를 포함할 수 있다.
번역 보정 방법은 상기 소스 문장이 서브 워드 레벨 또는 문자 레벨의 문장인 경우, 상기 소스 문장 내의 서브 소스 워드들 또는 서브 소스 문자들을 단일 소스 워드로 변환하는 단계를 더 포함할 수 있다.
상기 맵핑 정보를 생성하는 단계는, 상기 단일 소스 워드가 미리 정해진 유형에 해당하는 경우, 상기 소스 문장에서의 상기 서브 소스 워드들 또는 상기 소스 문자들 각각의 위치 정보를 상기 단일 소스 워드와 맵핑하는 단계를 포함할 수 있다.
일 측에 따른 번역 보정 장치는 컨트롤러; 및 상기 컨트롤러에 의해 실행 가능한 적어도 하나의 명령어를 포함하는 메모리를 포함하고, 상기 적어도 하나의 명령어가 상기 컨트롤러에서 실행되면, 상기 컨트롤러는 소스 문장에서 소스 워드를 선택하고, 상기 선택된 소스 워드와 상기 소스 문장에서의 상기 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성하며, 타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 타겟 워드를 보정한다.
상기 컨트롤러는, 상기 특징값들 중 적어도 하나의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하고, 상기 특징값들 중 적어도 하나의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 타겟 워드를 상기 특징값들 중 적어도 하나의 위치 정보와 맵핑된 소스 워드로 대체할 수 있다.
상기 컨트롤러는, 서브 타겟 워드들을 기초로 상기 타겟 워드가 결정된 경우, 상기 서브 타겟 워드들 각각에 대한 최대 특징값을 결정하고, 각 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 타겟 워드를 상기 각 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체할 수 있다.
상기 컨트롤러는, 상기 소스 문장에 대응되는 타겟 문장에서 미리 정해진 유형에 해당하는 타겟 워드가 선택되는 경우, 상기 선택된 타겟 워드에 대한 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하고, 상기 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 선택된 타겟 워드를 상기 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체할 수 있다.
상기 컨트롤러는, 상기 소스 문장에 대응되는 타겟 문장의 서브 타겟 워드들을 기초로 타겟 워드를 결정하고, 상기 결정된 타겟 워드가 미리 정해진 유형에 해당하는 경우, 상기 서브 타겟 워드들 각각에 대한 최대 특징값에서 대표값을 결정하며, 상기 대표값의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하고, 상기 대표값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 결정된 타겟 워드를 상기 대표값의 위치 정보와 맵핑된 소스 워드로 대체할 수 있다.
상기 선택된 소스 워드는, 고유 명사, 숫자, 숫자와 문자를 포함하는 워드, 타겟 언어로 표기된 워드, 사전(dictionary)에 등록되지 않은 워드, 및 이들 중 하나 이상을 포함하는 구(phrase) 중 어느 하나에 해당할 수 있다.
상기 컨트롤러는, 상기 선택된 소스 워드를 전처리할 수 있다.
상기 컨트롤러는, 상기 선택된 소스 워드의 표기를 변경할 수 있다.
상기 컨트롤러는, 상기 소스 문장이 서브 워드 레벨 또는 문자 레벨의 문장인 경우, 상기 소스 문장 내의 서브 소스 워드들 또는 서브 소스 문자들을 단일 소스 워드로 변환할 수 있다.
상기 컨트롤러는, 상기 단일 소스 워드가 미리 정해진 유형에 해당하는 경우, 상기 소스 문장에서의 상기 서브 소스 워드들 또는 상기 소스 문자들 각각의 위치 정보를 상기 단일 소스 워드와 맵핑할 수 있다.
일 측에 따른 번역 시스템은 소스 문장에서 소스 워드를 선택하고, 상기 선택된 소스 워드와 상기 소스 문장에서의 상기 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성하는 문장 분석기; 상기 소스 문장을 기초로 타겟 워드들을 결정하고, 상기 타겟 워드들을 포함하는 타겟 문장을 완성하는 번역기; 및 상기 타겟 워드들 각각이 결정될 때 마다, 결정된 타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 결정된 타겟 워드를 보정할 지 여부를 결정하는 동작 또는 상기 타겟 문장이 완성된 경우, 상기 타겟 문장에서 선택된 타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 선택된 타겟 워드를 보정할 지 여부를 결정하는 동작을 수행하는 보정기를 포함한다.
상기 보정기는, 상기 결정된 타겟 워드에 대한 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 결정된 타겟 워드를 상기 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체할 수 있다.
상기 보정기는, 상기 선택된 타겟 워드에 대한 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 선택된 타겟 워드를 상기 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체할 수 있다.
도 1은 일 실시예에 따른 번역 시스템의 동작의 일례를 설명하기 위한 도면이다.
도 2는 일 실시예에 따른 문장 분석기의 동작을 설명하기 위한 도면이다.
도 3 내지 도 5는 일 실시예에 따른 번역기의 동작을 설명하기 위한 도면이다.
도 6 내지 도 7은 일 실시예에 따른 보정기의 동작의 일례를 설명하기 위한 도면이다.
도 8 내지 도 9는 일 실시예에 따른 보정기의 동작의 다른 일례를 설명하기 위한 도면이다.
도 10은 일 실시예에 따른 번역 시스템의 동작의 다른 일례를 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 번역 보정 장치를 설명하기 위한 블록도이다.
도 12는 일 실시예에 따른 번역 보정 방법의 일례를 설명하기 위한 순서도이다.
도 13은 일 실시예에 따른 번역 보정 방법의 다른 일례를 설명하기 위한 순서도이다.
도 14는 일 실시예에 따른 번역 보정 방법의 또 다른 일례를 설명하기 위한 순서도이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 실시예에 따른 번역 시스템을 설명하기 위한 도면이다.
도 1을 참조하면, 일 실시예에 따른 번역 시스템(100)은 문장 분석기(110), 번역기(120), 및 보정기(130)를 포함한다.
문장 분석기(110)는 소스 문장을 분석한다. 예를 들어, 문장 분석기(110)는 소스 문장에 형태소 분석, 구문 분석 등을 수행할 수 있다. 문장 분석기(1110)는 소스 문장의 분석을 통해 카피 리스트(copy list)를 생성할 수 있다. 카피 리스트는 타겟 문장으로 복사할 하나 이상의 소스 워드 및 해당 소스 워드의 위치 정보를 포함할 수 있다. 문장 분석기(110)의 동작에 대해선 도 2를 통해 후술한다.
번역기(120)는 소스 문장에 기계 번역(Machine Translation)을 수행하여 타겟 문장을 완성한다. 예를 들어, 번역기(120)는 소스 문장을 인코딩하고, 디코딩을 통해 타겟 워드들 각각을 순차적으로 결정하며, 타겟 워드들을 포함하는 타겟 문장을 완성할 수 있다. 번역기(120)의 동작에 대해선 도 3 내지 도 5를 통해 후술한다.
보정기(130)는 디코딩 시점마다(달리 표현하면, 타겟 워드들 각각이 결정될 때 마다) 동작하거나 타겟 문장이 완성되었을 때(달리 표현하면, 전체 디코딩이 완료되었을 때) 동작할 수 있다. 일례로, 보정기(130)는 현재 디코딩 시점 t의 타겟 워드가 결정되면, 현재 디코딩 시점 t의 타겟 워드에 대한 특징값들 중 적어도 하나(예를 들어, 최대 특징값)와 관련된 소스 워드 위치 및 카피 리스트를 기초로 현재 시점 t의 타겟 워드를 보정할 지 결정할 수 있다. 이러한 보정기(130)의 동작에 대한 일례를 도 6 내지 도 7을 통해 후술한다. 다른 일례로, 보정기(130)는 타겟 문장이 완성되면, 타겟 문장의 일부 타겟 워드에 대한 특징값들 중 적어도 하나(예를 들어, 최대 특징값)와 관련된 소스 워드 위치 및 카피 리스트를 기초로 일부 타겟 워드를 보정할 지 결정할 수 있다. 이러한 보정기(130)의 동작에 대해선 도 8 내지 도 9를 통해 후술한다.
보정기(130)의 동작을 통해 번역 시스템(100)은 보정된 타겟 문장을 생성할 수 있다. 이에 따라, 번역 오류가 최소화될 수 있고, 번역 정확도가 증가할 수 있다.
도 2는 일 실시예에 따른 문장 분석기의 동작을 설명하기 위한 도면이다.
문장 분석기(200)는, 예를 들어, 아래의 제1 소스 문장 및 제2 소스 문장을 분석한다고 하자.
제1 소스 문장: 이후에 그 수치는 계속 감소했다. 1990년에 4,868,520명, 2000년에 4,019,991명, 그리고 작년에 3,829,998명 이었다.
제2 소스 문장: Hutton, 석미연, 및 Lee Jihyun은 상속 받은 집을 팔았는데 양도 소득세 1000만원을 부과 받았다
아래 표 1은 제1 소스 문장의 소스 워드들의 위치 정보의 일례를 보여주고, 아래 표 2는 제2 소스 문장의 소스 워드들의 위치 정보의 일례를 보여준다.
위치 정보 소스 워드
1 이후에
2
3 수치는
4 계속
5 감소했다
6 .
7 1990년에
8 4,868,520
9
10 ,
11 2000년에
12 4,019,991
13
14 ,
15 그리고
16 작년에
17 3,829,998
18
19 이었다
위치 정보 소스 워드
1 Hutton
2 ,
3 석미연
4 ,
5
6 Lee
7 Jihyun은
8 상속
9 받은
10 집을
11 팔았는데
12 양도
13 소득세
14 1000만
15 원을
16 부과
17 받았다
문장 분석기(200)는 소스 문장의 하나 이상의 소스 워드를 선택한다(210). 문장 분석기(200)는 번역 오류가 발생할 수 있는 소스 워드를 미리 선택할 수 있다. 일 실시예에 있어서, 문장 분석기(200)는 소스 문장의 소스 워드들 중 미리 정해진 유형에 해당하는 소스 워드를 선택할 수 있다. 예를 들어, 문장 분석기(200)는 고유 명사, 숫자, 숫자와 문자(일례로, 알파벳, 특수 문자 등)를 포함하는 워드(일례로, 계좌번호, 전화번호, 모델명), 타겟 언어로 표기된 워드, 사전(dictionary)에 등록되지 않은 워드, 및 이들 중 하나 이상을 포함하는 복합 명사/구(phrase) 중 적어도 하나에 해당하는 소스 워드를 선택할 수 있다.
예를 들어, 문장 분석기(200)는 위의 제1 소스 문장에서 숫자에 해당하는 "1990", "4,868,520", "2000", "4,019,991", 및 "3,829,998"을 선택할 수 있다. 문장 분석기(200)는 제2 소스 문장에서 고유 명사에 해당하는 "Hutton", "석미연", "Lee", 및 "Jihyun"을 선택할 수 있다. 또한, 문장 분석기(200)는 제2 소스 문장에서 숫자에 해당하는 "1000만"을 선택할 수 있다.
문장 분석기(200)는 선택된 소스 워드를 전처리할 수 있다(220). 문장 분석기(200)는 선택된 소스 워드의 표기를 변경할 수 있다. 예를 들어, 문장 분석기(200)는 고유 명사 "석미연"을 로마자화(Romanization)하여 "Seok MiYeon"으로 변경할 수 있고, "1000만"을 "10 million" 또는 "10,000,000"으로 변경할 수 있다. 또한, 문장 분석기(200)는 선택된 소스 워드들을 하나의 소스 워드로 처리할 수 있다. 예를 들어, 문장 분석기(200)는 "Lee" 및 "Jihyun"이 콤마(comma)없이 서로 인접한 소스 워드이므로, "Lee" 및 "Jihyun"을 하나의 소스 워드로 처리할 수 있다. 다시 말해, 문장 분석기(200)는 "Lee" 및 "Jihyun"을 하나의 소스 워드 "Lee Jihyun"으로 처리할 수 있다.
문장 분석기(200)는 선택된 소스 워드와 선택된 소스 워드의 위치 정보를 포함하는 카피 리스트를 생성할 수 있다(230). 달리 표현하면, 문장 분석기(200)는 선택된 소스 워드와 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성할 수 있다. 선택된 소스 워드가 전처리된 경우, 문장 분석기(200)는 선택된 소스 워드의 위치 정보와 전처리 결과를 서로 맵핑할 수 있다. 예를 들어, 문장 분석기(200)는 "석미연"의 전처리 결과인 "Seok MiYeon"과 "석미연"의 위치 정보 3을 서로 맵핑할 수 있고, "1000만"의 전처리 결과인 "10 million"을 "1000만"의 위치 정보 14와 맵핑할 수 있다. 또한, 문장 분석기(200)는 "Lee" 및 "Jihyun"의 전처리 결과인 "Lee Jihyun"을 "Lee"의 위치 정보 6과 "Jihyun"의 위치 정보 7을 맵핑할 수 있다.
아래 표 3은 제1 소스 문장에 대한 카피 리스트의 일례를 보여주고, 아래 표 4는 제2 소스 문장에 대한 카피 리스트의 일례를 보여준다.
위치 정보 소스 워드
7 1990
8 4,868,520
11 2000
12 4,019,991
17 3,829,998
위치 정보 소스 워드
1 Hutton
3 Seok MiYeon(전처리 결과)
6 Lee Jihyun(전처리 결과)
7 Lee Jihyun(전처리 결과)
14 10 million
후술하겠지만, 보정기(미도시)는 문장 분석기(200)가 생성한 카피 리스트를 이용할 수 있다.
도 3 내지 도 5는 일 실시예에 따른 번역기의 동작을 설명하기 위한 도면이다.
번역기는 소스 문장을 인코딩하는 인코더(310)와 인코딩 결과를 타겟 언어로 디코딩하는 디코더(330)를 포함하는 NMT(Neural Machine Translation) 모델일 수 있다. 여기서, 인코더(310) 및 디코더(330)는 뉴럴 네트워크(예를 들어, 재귀적 뉴럴 네트워크(Recurrent Neural Network, RNN))에 기반할 수 있다.
또한, NMT 모델의 번역기에는 소스 워드와 소스 워드에 대응되는 타겟 워드를 정렬(align)할 수 있는 기여도 메커니즘(attention mechanism)이 적용될 수 있다. 도 3에 도시된 예와 같이, 기여도 메커니즘이 적용된 번역기는 인코더(310) 및 디코더(330)와 타겟 워드를 결정하는데 사용되는 특징값들을 계산하는 중간 네트워크(320)를 포함할 수 있다. 이하, 도 4 및 5를 참조하면서, 기여도 메커니즘이 적용된 번역기의 동작에 대해서 설명한다.
도 4를 참조하면, 번역기는 소스 문장의 소스 워드들 x1, x2, ... , xn 각각을 인코딩할 수 있다. x1, x2, ... , xn에서 아래 첨자 1, 2, ... , n은 소스 워드의 위치 정보를 나타낸다. 소스 워드들의 인코딩 결과, 벡터들 h1, h2, ... , hn이 생성될 수 있다. 벡터들 h1, h2, ... , hn 각각은 실수 벡터일 수 있다.
소스 워드들이 인코딩되면, 번역기는 디코딩을 통해 타겟 워드들을 순차적으로 결정할 수 있다. 도 4에 도시된 예의 경우, 타겟 워드 yt가 결정될 순서라 하자. 다시 말해, 현재 디코딩 시점이 t라 하자.
번역기는 특징값들 at,1, at,2, ... , at,n을 계산할 수 있다. 일 실시예에 있어서, 번역기는 이전 디코딩 시점의 타겟 워드 yt -1에 대한 RNN 히든 상태 정보 st- 1와 벡터들 h1, h2, ... , hn을 기초로 특징값들 at,1, at,2, ... , at,n을 계산할 수 있다. 예를 들어, 번역기는 st- 1와 h1을 기초로 at,1을 계산할 수 있고, at,1의 계산 방법과 유사하게 나머지 특징값들 at,2, ... , at,n을 계산할 수 있다.
특징값은 벡터(또는, 소스 워드)가 타겟 워드 yt를 결정하는데 기여하는 정도를 나타낼 수 있다. 예를 들어, at,1는 h1(또는, 위치 정보 1에 해당하는 소스 워드)이 타겟 워드 yt를 결정하는데 기여하는 정도를 나타낼 수 있고, at,n는 hn(또는, 위치 정보 n에 해당하는 소스 워드)이 타겟 워드 yt를 결정하는데 기여하는 정도를 나타낼 수 있다.
특징값은 기여도(attention) 값으로 달리 표현될 수 있다.
번역기는 특징값들과 벡터들을 이용하여 컨텍스트(context) 벡터 ct를 계산할 수 있다. 예를 들어, 번역기는 ct=at,1×h1+at,2×h2+ ... +at,n×hn로 계산할 수 있다.
번역기는 컨텍스트 벡터 ct, 이전 디코딩 시점의 타겟 워드 yt -1에 대한 RNN 히든 상태 정보 st-1, 및 이전 디코딩 시점의 타겟 워드 yt - 1를 기초로 현재 디코딩 시점의 RNN 히든 상태 정보 st를 결정할 수 있다. 번역기는 현재 디코딩 시점의 RNN 히든 상태 정보 st를 기초로 디코딩을 수행하여 타겟 워드 yt를 결정할 수 있다.
도 5에 도시된 예에서, 제1 소스 문장(510)이 번역기에 입력된다고 하자. 번역기는 제1 소스 문장(510)의 소스 워드들 각각을 인코딩하여 벡터들 h1, h2, ... , h19을 생성할 수 있다.
4개의 타겟 워드들 "After", "that", "콤마(,)", 및 "the"가 결정되었다고 할 때, 번역기는 5번째 타겟 워드를 결정할 순서이다. 다시 말해, 현재 디코딩 시점 t=5이다. 번역기는 특징값들 a5,1, a5, 2, ... , a5 , 19을 계산할 수 있다. 번역기는 벡터들 h1, h2, ... , h19와 특징값들 a5,1, a5, 2, ... , a5 , 19을 이용하여 컨텍스트 벡터 c5을 계산할 수 있다. 번역기는 컨텍스트 벡터 c5, 이전 타겟 워드 "the"에 대한 RNN 히든 상태 정보, 및 이전 타겟 워드 "the"를 기초로 현재 디코딩 시점의 RNN 히든 상태 정보를 결정할 수 있다. 번역기는 현재 디코딩 시점의 RNN 히든 상태 정보를 기초로 디코딩을 수행하여 타겟 워드 "figure"를 결정할 수 있다. 여기서, 타겟 워드 "figure"를 결정하는데 벡터 h3(달리 표현하면, 소스 워드 "수치는")의 기여도가 최대이다. 다시 말해, a5,1, a5, 2, ... , a5 , 19 중에서 a5,3이 최대 특징값에 해당한다.
번역기는 이후 디코딩 시점마다 타겟 워드를 결정할 수 있고, 타겟 워드들을 포함하는 타겟 문장을 완성할 수 있다.
도 6 내지 도 7은 일 실시예에 따른 보정기의 동작의 일례를 설명하기 위한 도면이다.
도 6을 참조하면, 현재 디코딩 시점 t에서 타겟 워드 yt가 결정되었을 때의 보정기(600)의 동작이 도시된다. 보정기(600)는 타겟 워드 yt에 대한 최대 특징값을 결정할 수 있다(610). 최대 특징값은 타겟 워드 yt에 대한 특징값들 at,1, at,2, ... , at,n 중 최대값을 나타낸다. 보정기(600)는 최대 특징값의 위치 정보가 카피 리스트에 포함되어 있는지 여부를 결정할 수 있다(620). 최대 특징값의 위치 정보는 최대 특징값의 계산에 이용된 벡터와 대응되는 소스 워드의 위치 정보를 나타낼 수 있다. 최대 특징값의 위치 정보가 카피 리스트에 포함되어 있으면, 보정기(600)는 타겟 워드 yt를 최대 특징값과 관련된 위치 정보와 맵핑된 소스 워드로 대체할 수 있다(630). 최대 특징값의 위치 정보가 카피 리스트에 포함되어 있지 않으면, 보정기(600)는 타겟 워드 yt를 유지할 수 있다(640). 달리 표현하면, 최대 특징값의 위치 정보가 카피 리스트에 포함되어 있지 않으면, 보정기는 타겟 워드 yt를 보정하지 않을 수 있다.
도 7에 도시된 예에서, 번역기가 디코딩 시점 5에서 타겟 워드 "figure"를 결정하였다고 하자(730). 보정기는 타겟 워드 "figure"에 대한 특징값들 a5,1, a5,2, ... , a5, 19 중 최대값을 결정할 수 있다. 여기서, a5,1, a5, 2, ... , a5 , 19 중 a5,3이 최대값에 해당한다. 최대값에 대해선 도 5를 통해 설명하였으므로, 자세한 설명을 생략한다. 최대값이 결정되면, 보정기는 a5,3의 위치 정보를 확인할 수 있다. 예를 들어, a5,3 계산 시 벡터 h3이 이용되었으므로, 보정기는 벡터 h3에 대응되는 소스 워드의 위치 정보 3을 a5,3의 위치 정보로 확인할 수 있다. 보정기는 위치 정보 3이 카피 리스트(720)에 포함되어 있는지 결정할 수 있다. 위치 정보 3은 카피 리스트(720)에 포함되어 있지 않으므로, 보정기는 타겟 워드 "figure"를 유지한다.
번역기가 디코딩 시점 6~9에서 순차적으로 타겟 워드를 결정하고, 디코딩 시점 10에서 타겟 워드 "486,820"를 결정하였고 하자(740). 보정기는 타겟 워드 "486,820"에 대한 특징값들 a10,1, a10, 2, ... , a10 , 19 중 최대값을 결정할 수 있다. 번역기는 타겟 워드 "486,820"를 결정하는데 위치 정보 8에 해당하는 소스 워드 "4,868,520"에 가장 집중(focus)하였다. 다시 말해, a10,1, a10, 2, ... , a10 , 18 중 a10,8이 최대값에 해당한다. 최대값이 결정되면, 보정기는 a10,8의 위치 정보 8이 카피 리스트(720)에 포함되어 있는지 여부를 결정할 수 있다. 위치 정보 8은 카피 리스트(720)에 포함되어 있으므로, 보정기는 타겟 워드 "486,820"를 카피 리스트 내의 위치 정보 8과 맵핑된 "4,868,520"로 대체할 수 있다.
번역기는 이후 디코딩 시점에서 타겟 워드를 결정할 수 있고, 보정기는 이후 디코딩 시점마다 타겟 워드를 보정하거나 보정하지 않을 수 있다.
타겟 워드들을 포함하는 타겟 문장(750)이 도시된다. 보정기에 의해 "486,820"이 "4,868,520"으로 대체되어, 타겟 문장(750)의 번역 오류가 감소할 수 있고 번역 정확도가 증가할 수 있다.
도 8 내지 도 9는 일 실시예에 따른 보정기의 동작의 다른 일례를 설명하기 위한 도면이다.
도 8을 참조하면, 타겟 문장이 완성되었을 때의 보정기(800)의 동작이 도시된다. 보정기(800)는 번역기로부터 타겟 문장 및 타겟 워드들 각각에 대한 최대 특징값을 수신할 수 있다. 보정기는 타겟 워드들이 미리 정해진 유형에 해당하는지 여부를 결정할 수 있다. 보정기는 미리 정해진 유형에 해당하는 하나 이상의 타겟 워드를 선택할 수 있다(810). 달리 표현하면, 보정기는 보정이 필요할 수 있는 하나 이상의 타겟 워드(또는, 구문)를 선택할 수 있다. 보정기는 선택된 하나 이상의 타겟 워드에 대한 최대 특징값의 위치 정보가 카피 리스트에 포함되어 있는지 여부를 결정할 수 있다(820). 최대 특징값의 위치 정보가 카피 리스트에 포함되어 있으면, 보정기는 선택된 타겟 워드를 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체할 수 있다(830). 최대 특징값의 위치 정보가 카피 리스트에 포함되어 있지 않으면, 보정기는 선택된 타겟 워드를 유지할 수 있다(840).
도 9에 도시된 예에서, 번역기(920)가 소스 문장(910)에 대응되는 타겟 문장(930)을 완성하면, 보정기는 타겟 문장(930)과 "Sukmyun"에 대한 최대 특징값 a1,1 등타겟 워드들 각각에 대한 최대 특징값을 번역기로부터 수신할 수 있다. 최대 특징값에 대해 상술한 것과 같이, 위치 정보 1에 해당하는 소스 워드 "석미연은"이 "Sukmyun"을 결정하는데 가장 큰 기여를 하였으므로, "Sukmyun"에 대한 최대 특징값은 a1,1에 해당한다.
보정기는 타겟 문장(930)에서 미리 정해진 유형(예를 들어, 고유 명사, 숫자 및 문자를 포함하는 워드, 사전에 등록되지 않은 워드, 또는 숫자 등)에 해당하는 타겟 워드를 선택할 수 있다. 보정기는 타겟 문장(930)에서 사전에 등록되지 않은 워드 또는 고유 명사에 해당하는 "Sukmyun"과 숫자에 해당하는 "100" 및 "million"을 선택할 수 있다.
보정기는 "Sukmyun"에 대한 최대 특징값 a1,1, "100"에 대한 최대 특징값 a8,8, 및 "million"에 대한 최대 특징값 a9,8 각각의 위치 정보를 확인할 수 있다. 여기서, 보정기는 a1,1의 위치 정보를 1로 확인하고, a8,8 및 a9,8 각각의 위치 정보를 8로 확인할 수 있다.
보정기는 위치 정보 1이 카피 리스트(940)에 포함되어 있는지 결정할 수 있다. 위치 정보 1은 카피 리스트(940)에 포함되어 있어, 보정기는 "Sukmyun"을 위치 정보 1과 맵핑된 "Seok MiYeon"으로 대체할 수 있다.
선택된 타겟 워드들 "100" 및 "million" 각각에 대한 최대 특징값의 위치 정보는 서로 동일할 수 있다. 도 9에 도시된 예와 같이, a8,8 및 a9,8 각각의 위치 정보는 8로 동일하다. 이 경우, 보정기는 해당 위치 정보가 카피 리스트(940)에 포함되어 있으면, 선택된 타겟 워드들을 해당 위치 정보와 맵핑된 소스 워드로 대체할 수 있다. 도 9에 도시된 예의 경우, 위치 정보 8은 카피 리스트(940)에 포함되어 있어, 보정기는 선택된 타겟 워드들을 순서대로 결합한 "100 million"을 위치 정보 8과 맵핑된 "10 million"으로 대체할 수 있다.
보정된 타겟 문장(950)이 도시된다. 소스 문장(910) 내의 고유 명사가 언노운(unknown) 워드로 처리된 경우 또는 소스 문장(910) 내의 고유 명사가 언노운(unknown) 워드로 처리되지 않았으나 정확하게 번역되지 못한 경우(예를 들어, 고유 명사 "석미연"이 언노운(unknown) 워드가 아닌 "Sukmyun"으로 번역된 경우), 보정된 타겟 문장(950)은 소스 문장(910) 내의 고유 명사(또는, 전처리된 고유 명사)를 그대로 포함할 수 있다. 이에 따라, 번역 정확도가 증가할 수 있고, 번역 오류가 감소할 수 있다.
도 10은 일 실시예에 따른 번역 시스템의 동작의 다른 일례를 설명하기 위한 도면이다.
일 실시예에 따른 번역 시스템은 워드 단위로 구성된 원(original) 소스 문장을 서브 워드 단위의 소스 문장으로 변환할 수 있다. 예를 들어, 번역 시스템은 원 소스 워드 "Hutton"을 서브 소스 워드들 "H@@" "u@@" "tt@@", 및 "on"로 분할할 수 있다. 이에 따라, 원 소스 문장 "친애하는 Hutton에게, 귀하의 주문 ..."는 소스 문장(1010) "친애하는 H@@ u@@ tt@@ on에게, 귀하의 주문 ..."로 변환될 수 있다.
서브 소스 워드들 "H@@", "u@@", 및 "tt@@"는 서브 워드임을 나타내는 태그(tag) "@"를 포함할 수 있고, 서브 소스 워드 "on"은 태그를 포함하지 않을 수 있다. 서브 소스 워드 "on"은 원 소스 워드 "Hutton"의 마지막 서브 소스 워드이므로, 태그를 포함하지 않을 수 있다.
문장 분석기(1020)는 전처리를 통해 서브 워드 단위의 소스 문장(1010)을 워드 단위의 문장으로 변환할 수 있다. 달리 표현하면, 문장 분석기(1020)는 전처리를 통해 서브 소스 워드들을 결합하여 단일 소스 워드를 생성할 수 있다. 예를 들어, 문장 분석기(1020)는 서브 소스 워드들 "H@@", "u@@", "tt@@", 및 "on"을 결합하여 단일 소스 워드 "Hutton"을 생성할 수 있다.
문장 분석기(1020)는 단일 소스 워드가 미리 정해진 유형에 해당하는지 결정할 수 있다. 문장 분석기(1020)는 단일 소스 워드가 미리 정해진 유형에 해당하면, 서브 소스 워드들 각각의 위치 정보를 단일 소스 워드와 맵핑할 수 있다. 예를 들어, 문장 분석기(200)는 "H@@"의 위치 정보 2, "u@@"의 위치 정보 3, "tt@@"의 위치 정보 4, 및 "on"의 위치 정보 5를 "Hutton"와 맵핑할 수 있다. 문장 분석기(1020)는 서브 소스 워드들 각각의 위치 정보와 단일 소스 워드가 서로 맵핑된 카피 리스트를 생성할 수 있다. 아래 표 5는 소스 문장(1010)에 대한 카피 리스트의 일례를 보여준다.
위치 정보 소스 워드
2 Hutton
3 Hutton
4 Hutton
5 Hutton
번역기는 서브 소스 워드들을 포함하는 소스 문장(1010)을 인코딩할 수 있다. 예를 들어, 번역기는 서브 워드 레벨의 NMT 모델일 수 있다.
번역기는 첫 번째 타겟 워드 "Dear"가 결정된 후 두 번째 타겟 워드를 결정하기 위해 특징값들 a2,1, a2, 2, ... , a2,n를 계산할 수 있다. 서브 소스 워드 "H@@"는 태그를 포함하므로, 두 번째 타겟 워드는 태그를 포함할 수 있다. 다시 말해, 두 번째 타겟 워드는 서브 워드 단위인 서브 타겟 워드에 해당할 수 있다. 두 번째 타겟 워드, 즉, 첫 번째로 결정된 서브 타겟 워드 sub1이 "H@@"라 하자. 이와 같은 방식으로, 번역기는 서브 타겟 워드들 sub2 내지 sub4를 순차적으로 결정할 수 있다. sub2를 "u@@"라 하고, sub3를 "tch@@"라 하며, sub4를 "et"라 하자.
여기서, "H@@"에 대한 특징값들 a2,1, a2, 2, ... , a2,n 중 a2,2가 최대 특징값에 해당하고, 서브 타겟 워드 "u@@"에 대한 특징값들 a3,1, a3, 2, ..., a3,n 중 a3,3이 최대 특징값에 해당한다. 또한, 서브 타겟 워드 "tch@@"에 대한 특징값들 a4,1, a4,2, ... , a4,n 중 a4, 4이 최대 특징값에 해당하고, 서브 타겟 워드 "et"에 대한 특징값들 a5,1, a5, 2, ... , a5,n 중 a5, 5이 최대 특징값에 해당한다. 특징값들 중 어떤 것이 최대 특징값에 해당하는지에 대해선 위에서 설명하였으므로, 자세한 설명을 생략한다.
번역기는 결정된 서브 타겟 워드들을 통해 타겟 워드를 결정할 수 있다. 도 10에 도시된 예의 경우, 디코딩이 정확하지 못하여 서브 타겟 워드들 "H@@", "u@@", "tch@@", 및 "et"가 결정된다. 이로 인해, 원 소스 워드와 일치하지 않은 타겟 워드 "Hutchet"가 결정될 수 있다. 다시 말해, 번역 오류가 발생할 수 있다.
보정기는 서브 타겟 워드들을 통해 타겟 워드가 결정되었을 때 동작하거나 타겟 문장이 완성되었을 때 동작할 수 있다. 먼저, 서브 타겟 워드들을 통해 타겟 워드가 결정되었을 때의 보정기의 동작에 대해 설명한다.
일 실시예에 있어서, 보정기는 타겟 워드 "Hutchet"이 결정되면, 서브 타겟 워드들 각각에 대한 최대 특징값과 관련된 위치 정보가 카피 리스트에 있는지 여부를 기초로 타겟 워드 "Hutchet"를 보정할 수 있다. 도 10에 도시된 카피 리스트를 참조하면, a2,2의 위치 정보 2, a3,3의 위치 정보 3, a4,4의 위치 정보 4, 및 a5,5의 위치 정보 5는 카피 리스트에 포함되어 있다. 이 경우, 보정기는 타겟 워드 "Hutchet"를 "Hutton"으로 대체할 수 있다.
구현에 따라, 보정기는 서브 타겟 워드들 각각에 대한 최대 특징값에서 대표값을 결정할 수 있다. 달리 표현하면, 보정기는 서브 타겟 워드들 각각에 대한 최대 특징값에서 어느 하나를 선택할 수 있다. 보정기는 대표값의 위치 정보가 카피 리스트에 포함되어 있는지 결정할 수 있다. 보정기는 대표값의 위치 정보가 카피 리스트에 포함되어 있으면, 타겟 워드를 대표값의 위치 정보에 맵핑된 소스 워드로 대체할 수 있다. 도 10에 도시된 예에서, 보정기는 a2,2, a3,3, a4,4, 및 a5, 5 중에서 대표값을 결정할 수 있다. 일례로, 보정기는 a2,2, a3,3, a4,4, 및 a5, 5 중 가장 큰 값 또는 평균에 가장 가까운 값을 대표값으로 결정할 수 있다. 보정기는 a2,2를 대표값으로 결정한다고 하자. 보정기는 a2,2의 위치 정보 2가 카피 리스트에 포함되어 있는지 결정할 수 있다. 위치 정보 2가 카피 리스트에 포함되어 있으므로, 보정기는 타겟 워드 "Hutchet"를 위치 정보 2와 맵핑된 소스 워드 "Hutton"으로 대체할 수 있다.
원 소스 워드 "Hutton"이 타겟 문장에 포함될 수 있어, 번역 오류가 감소할 수 있다.
여기까지가 서브 타겟 워드들을 통해 타겟 워드가 결정되었을 때의 보정기의 동작에 대해 설명이다. 이하, 타겟 문장이 완성되었을 때의 보정기의 동작에 대해 설명한다.
다른 실시예에 있어서, 보정기는 타겟 문장이 완성되었을 때 동작할 수 있다. 타겟 문장이 "Dear H@@ u@@ tch@@ et, your order ..."라 하자.
보정기는 서브 워드 기반의 타겟 문장을 워드 기반의 문장으로 변환할 수 있다. 예를 들어, 보정기는 "H@@", "u@@", "tc@@", 및 "et"를 통해 "Hutchet"를 결정하여, "Dear H@@ u@@ tch@@ et, your order ..."를 "Dear Hutchet, your order ..."로 변환할 수 있다.
보정기는 변환된 타겟 문장에서 미리 정해진 유형에 해당하는 타겟 워드를 선택할 수 있다. 예를 들어, 보정기는 변환된 타겟 문장에서 사전에 등록되지 않은 워드(또는 고유 명사)에 해당하는 "Hutchet"를 선택할 수 있다. 보정기의 이후 동작에 대한 설명은 서브 타겟 워드들을 통해 타겟 워드가 결정되었을 때의 보정기의 동작에 대한 설명이 적용될 수 있어, 상세한 설명을 생략한다.
구현에 따라, 번역 시스템은 문자 단위의 소스 문장을 입력받을 수 있다. 문자 단위의 소스 문장의 경우, 소스 워드들 각각의 마지막 문자에 태그가 위치하거나 띄어쓰기(word spacing)에 태그가 위치할 수 있다. 소스 워드들 각각의 마지막 문자에 태그가 위치하는 경우는, 예를 들어, "친애하는@ Hutton@에게@, 귀하@의@ 주문@ ..."일 수 있고, 띄어쓰기에 태그가 위치하는 경우는, 예를 들어, "친애하는@Hutton에게,@귀하의@주문@..."일 수 있다. 문자 단위의 소스 문장이 번역 시스템에 입력된 경우, 도 10을 통해 설명한 번역 시스템의 동작이 적용될 수 있어, 자세한 설명을 생략한다.
도 11은 일 실시예에 따른 번역 보정 장치를 설명하기 위한 블록도이다.
도 11을 참조하면, 일 실시예에 따른 번역 보정 장치(1100)는 컨트롤러(1110) 및 메모리(1120)를 포함한다.
메모리(1120)는 컨트롤러(1100)에 의해 실행 가능한 적어도 하나의 명령어를 포함한다.
적어도 하나의 명령어가 컨트롤러(1110)에서 실행되면, 컨트롤러(1110)는 소스 문장에서 소스 워드를 선택한다. 또한, 컨트롤러(1110)는 선택된 소스 워드와 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성한다. 또한, 컨트롤러(1110)는 타겟 워드에 대한 특징값들 중 적어도 하나와 관련된 위치 정보 및 맵핑 정보를 기초로 타겟 워드를 보정한다.
도 1 내지 도 10을 통해 기술된 사항들은 도 11을 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.
도 12는 일 실시예에 따른 번역 보정 방법의 일례를 설명하기 위한 순서도이다.
도 12를 통해 설명되는 번역 보정 방법은 번역 보정 장치 또는 번역 시스템에 의해 수행될 수 있다.
도 12를 참조하면, 번역 보정 장치(또는 번역 시스템)는 소스 문장에서 소스 워드를 선택한다(1210).
번역 보정 장치(또는 번역 시스템)는 선택된 소스 워드와 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성한다(1220).
번역 보정 장치(또는 번역 시스템)는 타겟 워드에 대한 특징값들 중 적어도 하나와 관련된 위치 정보 및 맵핑 정보를 기초로 타겟 워드를 보정한다(1230).
도 1 내지 도 11을 통해 기술된 사항들은 도 12를 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.
도 13은 일 실시예에 따른 번역 보정 방법의 다른 일례를 설명하기 위한 순서도이다.
도 13을 통해 설명되는 번역 보정 방법은 번역 보정 장치 또는 번역 시스템에 의해 수행될 수 있다.
번역 보정 장치(또는 번역 시스템)는 소스 문장에서 소스 워드를 선택한다(1310).
번역 보정 장치(또는 번역 시스템)는 선택된 소스 워드와 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성한다(1320).
번역 보정 장치(또는 번역 시스템)는 번역기를 통해 타겟 워드를 결정한다(1330).
번역 보정 장치(또는 번역 시스템)는 타겟 워드에 대한 특징값들 중 적어도 하나와 관련된 위치 정보가 맵핑 정보에 포함되어 있는지 여부를 기초로 타겟 워드를 보정한다(1340).
도 1 내지 도 12를 통해 기술된 사항들은 도 13을 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.
도 14는 일 실시예에 따른 번역 보정 방법의 또 다른 일례를 설명하기 위한 순서도이다.
도 14를 통해 설명되는 번역 보정 방법은 번역 보정 장치 또는 번역 시스템에 의해 수행될 수 있다.
번역 보정 장치(또는 번역 시스템)는 소스 문장에서 소스 워드를 선택한다(1410).
번역 보정 장치(또는 번역 시스템)는 선택된 소스 워드와 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성한다(1420).
번역 보정 장치(또는 번역 시스템)는 번역기를 통해 타겟 문장을 완성한다(1430).
번역 보정 장치(또는 번역 시스템)는 타겟 문장에서 선택된 타겟 워드에 대한 특징값들 중 적어도 하나와 관련된 위치 정보가 맵핑 정보에 포함되어 있는지 여부를 기초로, 선택된 타겟 워드를 보정한다(1440).
도 1 내지 도 11 통해 기술된 사항들은 도 14를 통해 기술된 사항들에 적용될 수 있으므로, 상세한 설명을 생략한다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.

Claims (24)

  1. 번역 보정 장치에 의해 수행되는 번역 보정 방법에 있어서,
    소스 문장에서 소스 워드를 선택하는 단계;
    상기 선택된 소스 워드와 상기 소스 문장에서의 상기 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성하는 단계; 및
    타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 타겟 워드를 보정하는 단계
    를 포함하고,
    상기 보정하는 단계는,
    상기 특징값들 중 최대값의 위치 정보가 상기 맵핑 정보 상의 상기 선택된 소스 워드의 위치 정보와 동일한지 확인하고, 상기 최대값의 위치 정보가 상기 선택된 소스 워드의 위치 정보와 동일한 것으로 확인한 경우 상기 타겟 워드를 상기 선택된 소스 워드로 대체하는 단계
    를 포함하는,
    번역 보정 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 타겟 워드를 보정하는 단계는,
    서브 타겟 워드들을 기초로 상기 타겟 워드가 결정된 경우, 상기 서브 타겟 워드들 각각에 대한 최대 특징값을 결정하는 단계;
    각 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 타겟 워드를 상기 각 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체하는 단계
    를 포함하는,
    번역 보정 방법.
  4. 제1항에 있어서,
    상기 타겟 워드를 보정하는 단계는,
    상기 소스 문장에 대응되는 타겟 문장에서 미리 정해진 유형에 해당하는 타겟 워드를 선택하는 단계;
    상기 선택된 타겟 워드에 대한 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하는 단계; 및
    상기 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 선택된 타겟 워드를 상기 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체하는 단계
    를 포함하는,
    번역 보정 방법.
  5. 제1항에 있어서,
    상기 타겟 워드를 보정하는 단계는,
    상기 소스 문장에 대응되는 타겟 문장의 서브 타겟 워드들을 기초로 타겟 워드를 결정하는 단계:
    상기 결정된 타겟 워드가 미리 정해진 유형에 해당하는 경우, 상기 서브 타겟 워드들 각각에 대한 최대 특징값에서 대표값을 결정하는 단계;
    상기 대표값의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하는 단계; 및
    상기 대표값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 결정된 타겟 워드를 상기 대표값의 위치 정보와 맵핑된 소스 워드로 대체하는 단계
    를 포함하는,
    번역 보정 방법.
  6. 제1항에 있어서,
    상기 선택된 소스 워드는,
    고유 명사, 숫자, 숫자와 문자를 포함하는 워드, 타겟 언어로 표기된 워드, 사전(dictionary)에 등록되지 않은 워드, 및 이들 중 하나 이상을 포함하는 구(phrase) 중 어느 하나에 해당하는,
    번역 보정 방법.
  7. 제1항에 있어서,
    상기 선택된 소스 워드를 전처리하는 단계
    를 더 포함하는,
    번역 보정 방법.
  8. 제7항에 있어서,
    상기 선택된 소스 워드를 전처리하는 단계는,
    상기 선택된 소스 워드의 표기를 변경하는 단계
    를 포함하는,
    번역 보정 방법.
  9. 제1항에 있어서,
    상기 소스 문장이 서브 워드 레벨 또는 문자 레벨의 문장인 경우, 상기 소스 문장 내의 서브 소스 워드들 또는 서브 소스 문자들을 단일 소스 워드로 변환하는 단계
    를 더 포함하는,
    번역 보정 방법.
  10. 제9항에 있어서,
    상기 맵핑 정보를 생성하는 단계는,
    상기 단일 소스 워드가 미리 정해진 유형에 해당하는 경우, 상기 소스 문장에서의 상기 서브 소스 워드들 또는 상기 서브 소스 문자들 각각의 위치 정보를 상기 단일 소스 워드와 맵핑하는 단계
    를 포함하는,
    번역 보정 방법.
  11. 하드웨어와 결합되어 제1항 및 제3항 내지 제10항 중에서 어느 하나의 항의 방법을 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.
  12. 컨트롤러; 및
    상기 컨트롤러에 의해 실행 가능한 적어도 하나의 명령어를 포함하는 메모리
    를 포함하고,
    상기 적어도 하나의 명령어가 상기 컨트롤러에서 실행되면, 상기 컨트롤러는 소스 문장에서 소스 워드를 선택하고, 상기 선택된 소스 워드와 상기 소스 문장에서의 상기 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성하며, 타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 타겟 워드를 보정하고,
    상기 컨트롤러는,
    상기 특징값들 중 최대값의 위치 정보가 상기 맵핑 정보 상의 상기 선택된 소스 워드의 위치 정보와 동일한지 확인하고, 상기 최대값의 위치 정보가 상기 선택된 소스 워드의 위치 정보와 동일한 것으로 확인한 경우 상기 타겟 워드를 상기 선택된 소스 워드로 대체하는,
    번역 보정 장치.
  13. 삭제
  14. 제12항에 있어서,
    상기 컨트롤러는,
    서브 타겟 워드들을 기초로 상기 타겟 워드가 결정된 경우, 상기 서브 타겟 워드들 각각에 대한 최대 특징값을 결정하고, 각 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 타겟 워드를 상기 각 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체하는,
    번역 보정 장치.
  15. 제12항에 있어서,
    상기 컨트롤러는,
    상기 소스 문장에 대응되는 타겟 문장에서 미리 정해진 유형에 해당하는 타겟 워드가 선택되는 경우, 상기 선택된 타겟 워드에 대한 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하고, 상기 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 선택된 타겟 워드를 상기 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체하는,
    번역 보정 장치.
  16. 제12항에 있어서,
    상기 컨트롤러는,
    상기 소스 문장에 대응되는 타겟 문장의 서브 타겟 워드들을 기초로 타겟 워드를 결정하고, 상기 결정된 타겟 워드가 미리 정해진 유형에 해당하는 경우, 상기 서브 타겟 워드들 각각에 대한 최대 특징값에서 대표값을 결정하며, 상기 대표값의 위치 정보가 상기 맵핑 정보에 포함되어 있는지 여부를 결정하고, 상기 대표값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 결정된 타겟 워드를 상기 대표값의 위치 정보와 맵핑된 소스 워드로 대체하는,
    번역 보정 장치.
  17. 제12항에 있어서,
    상기 선택된 소스 워드는,
    고유 명사, 숫자, 숫자와 문자를 포함하는 워드, 타겟 언어로 표기된 워드, 사전(dictionary)에 등록되지 않은 워드, 및 이들 중 하나 이상을 포함하는 구(phrase) 중 어느 하나에 해당하는,
    번역 보정 장치.
  18. 제12항에 있어서,
    상기 컨트롤러는,
    상기 선택된 소스 워드를 전처리하는,
    번역 보정 장치.
  19. 제12항에 있어서,
    상기 컨트롤러는,
    상기 선택된 소스 워드의 표기를 변경하는,
    번역 보정 장치.
  20. 제12항에 있어서,
    상기 컨트롤러는,
    상기 소스 문장이 서브 워드 레벨 또는 문자 레벨의 문장인 경우, 상기 소스 문장 내의 서브 소스 워드들 또는 서브 소스 문자들을 단일 소스 워드로 변환하는,
    번역 보정 장치.
  21. 제20항에 있어서,
    상기 컨트롤러는,
    상기 단일 소스 워드가 미리 정해진 유형에 해당하는 경우, 상기 소스 문장에서의 상기 서브 소스 워드들 또는 상기 서브 소스 문자들 각각의 위치 정보를 상기 단일 소스 워드와 맵핑하는,
    번역 보정 장치.
  22. 소스 문장에서 소스 워드를 선택하고, 상기 선택된 소스 워드와 상기 소스 문장에서의 상기 선택된 소스 워드의 위치 정보가 서로 맵핑된 맵핑 정보를 생성하는 문장 분석기;
    상기 소스 문장을 기초로 타겟 워드들을 결정하고, 상기 타겟 워드들을 포함하는 타겟 문장을 완성하는 번역기; 및
    상기 타겟 워드들 각각이 결정될 때 마다, 결정된 타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 결정된 타겟 워드를 보정할 지 여부를 결정하는 제1 동작 또는 상기 타겟 문장이 완성된 경우, 상기 타겟 문장에서 선택된 타겟 워드에 대한 특징값들 중 적어도 하나의 위치 정보 및 상기 맵핑 정보를 기초로 상기 선택된 타겟 워드를 보정할 지 여부를 결정하는 제2 동작을 수행하는 보정기
    를 포함하고,
    상기 제1 동작을 수행한 경우, 상기 보정기는,
    상기 결정된 타겟 워드에 대한 특징값들 중 최대값의 위치 정보가 상기 맵핑 정보 상의 상기 선택된 소스 워드의 위치 정보와 동일한지 확인하고, 상기 최대값의 위치 정보가 상기 선택된 소스 워드의 위치 정보와 동일한 것으로 확인한 경우 상기 타겟 워드를 상기 선택된 소스 워드로 대체하는,
    번역 시스템.
  23. 삭제
  24. 제22항에 있어서,
    상기 제2 동작을 수행한 경우, 상기 보정기는,
    상기 선택된 타겟 워드에 대한 최대 특징값의 위치 정보가 상기 맵핑 정보에 포함된 경우, 상기 선택된 타겟 워드를 상기 최대 특징값의 위치 정보와 맵핑된 소스 워드로 대체하는,
    번역 시스템.
KR1020170012361A 2017-01-26 2017-01-26 번역 보정 방법 및 장치와 번역 시스템 KR102637338B1 (ko)

Priority Applications (7)

Application Number Priority Date Filing Date Title
KR1020170012361A KR102637338B1 (ko) 2017-01-26 2017-01-26 번역 보정 방법 및 장치와 번역 시스템
US15/715,956 US10762302B2 (en) 2017-01-26 2017-09-26 Translation method and apparatus, and translation system
EP17204436.4A EP3355203A1 (en) 2017-01-26 2017-11-29 Translation method and apparatus, and translation system
CN201711259277.6A CN108363702B (zh) 2017-01-26 2017-12-04 翻译方法和设备以及翻译系统
JP2017245282A JP7111464B2 (ja) 2017-01-26 2017-12-21 翻訳方法、翻訳装置及び翻訳システム
US16/939,410 US11409967B2 (en) 2017-01-26 2020-07-27 Translation method and apparatus, and translation system
US17/865,828 US11954452B2 (en) 2017-01-26 2022-07-15 Translation method and apparatus, and translation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170012361A KR102637338B1 (ko) 2017-01-26 2017-01-26 번역 보정 방법 및 장치와 번역 시스템

Publications (2)

Publication Number Publication Date
KR20180087945A KR20180087945A (ko) 2018-08-03
KR102637338B1 true KR102637338B1 (ko) 2024-02-16

Family

ID=60515219

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170012361A KR102637338B1 (ko) 2017-01-26 2017-01-26 번역 보정 방법 및 장치와 번역 시스템

Country Status (5)

Country Link
US (3) US10762302B2 (ko)
EP (1) EP3355203A1 (ko)
JP (1) JP7111464B2 (ko)
KR (1) KR102637338B1 (ko)
CN (1) CN108363702B (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107368476B (zh) * 2017-07-25 2020-11-03 深圳市腾讯计算机系统有限公司 一种翻译的方法、目标信息确定的方法及相关装置
KR102199835B1 (ko) * 2018-12-31 2021-01-07 주식회사 엘솔루 언어 교정 시스템 및 그 방법과, 그 시스템에서의 언어 교정 모델 학습 방법
US11106873B2 (en) * 2019-01-22 2021-08-31 Sap Se Context-based translation retrieval via multilingual space
WO2021005790A1 (ja) * 2019-07-11 2021-01-14 日本電信電話株式会社 機械翻訳装置、機械翻訳方法、機械翻訳プログラム、及び非一時的記憶媒体
CN111191440B (zh) * 2019-12-13 2024-02-20 语联网(武汉)信息技术有限公司 翻译中针对译文的量词纠错方法及系统
CN111079450B (zh) * 2019-12-20 2021-01-22 北京百度网讯科技有限公司 基于顺句驱动的语言转换方法和装置
US11875141B2 (en) 2020-11-20 2024-01-16 Infosys Limited System and method for training a neural machine translation model
CN112613327A (zh) * 2021-01-07 2021-04-06 北京捷通华声科技股份有限公司 一种信息处理方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120101804A1 (en) * 2010-10-25 2012-04-26 Xerox Corporation Machine translation using overlapping biphrase alignments and sampling

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4864503A (en) * 1987-02-05 1989-09-05 Toltran, Ltd. Method of using a created international language as an intermediate pathway in translation between two national languages
JP2926745B2 (ja) * 1989-04-18 1999-07-28 ブラザー工業株式会社 機械翻訳装置
US5680627A (en) 1991-02-15 1997-10-21 Texas Instruments Incorporated Method and apparatus for character preprocessing which translates textual description into numeric form for input to a neural network
US5467425A (en) * 1993-02-26 1995-11-14 International Business Machines Corporation Building scalable N-gram language models using maximum likelihood maximum entropy N-gram models
US5715468A (en) * 1994-09-30 1998-02-03 Budzinski; Robert Lucius Memory system for storing and retrieving experience and knowledge with natural language
JPH09128396A (ja) * 1995-11-06 1997-05-16 Hitachi Ltd 対訳辞書作成方法
US7043420B2 (en) * 2000-12-11 2006-05-09 International Business Machines Corporation Trainable dynamic phrase reordering for natural language generation in conversational systems
US7668718B2 (en) * 2001-07-17 2010-02-23 Custom Speech Usa, Inc. Synchronized pattern recognition source data processed by manual or automatic means for creation of shared speaker-dependent speech user profile
US7171618B2 (en) * 2003-07-30 2007-01-30 Xerox Corporation Multi-versioned documents and method for creation and use thereof
EP1856630A2 (en) 2005-03-07 2007-11-21 Linguatec Sprachtechnologien GmbH Hybrid machine translation system
EP1894125A4 (en) * 2005-06-17 2015-12-02 Nat Res Council Canada MEANS AND METHOD FOR ADAPTED LANGUAGE TRANSLATION
US7552053B2 (en) * 2005-08-22 2009-06-23 International Business Machines Corporation Techniques for aiding speech-to-speech translation
US8041506B2 (en) * 2005-11-07 2011-10-18 Google Inc. Mapping in mobile devices
US8041556B2 (en) * 2005-12-01 2011-10-18 International Business Machines Corporation Chinese to english translation tool
US7711543B2 (en) * 2006-04-14 2010-05-04 At&T Intellectual Property Ii, Lp On-demand language translation for television programs
US7783473B2 (en) 2006-12-28 2010-08-24 At&T Intellectual Property Ii, L.P. Sequence classification for machine translation
US8452585B2 (en) 2007-06-21 2013-05-28 Microsoft Corporation Discriminative syntactic word order model for machine translation
US20110179073A1 (en) * 2008-10-08 2011-07-21 Localize Direct Ab Method for Localizing Text in a Software Application
WO2011016078A1 (ja) * 2009-08-04 2011-02-10 株式会社 東芝 機械翻訳装置および翻訳プログラム
US8612205B2 (en) * 2010-06-14 2013-12-17 Xerox Corporation Word alignment method and system for improved vocabulary coverage in statistical machine translation
JP5505234B2 (ja) * 2010-09-29 2014-05-28 富士通株式会社 文字列比較プログラム、文字列比較装置及び文字列比較方法
KR101762866B1 (ko) * 2010-11-05 2017-08-16 에스케이플래닛 주식회사 구문 구조 변환 모델과 어휘 변환 모델을 결합한 기계 번역 장치 및 기계 번역 방법
US9128929B2 (en) * 2011-01-14 2015-09-08 Sdl Language Technologies Systems and methods for automatically estimating a translation time including preparation time in addition to the translation itself
US20150161109A1 (en) 2012-01-13 2015-06-11 Google Inc. Reordering words for machine translation
KR20130099666A (ko) 2012-02-29 2013-09-06 한국전자통신연구원 복합고유명사의 대역어 생성 장치 및 방법
JP2013206253A (ja) * 2012-03-29 2013-10-07 Toshiba Corp 機械翻訳装置、方法、およびプログラム
US10261994B2 (en) * 2012-05-25 2019-04-16 Sdl Inc. Method and system for automatic management of reputation of translators
US9081762B2 (en) * 2012-07-13 2015-07-14 Enyuan Wu Phrase-based dictionary extraction and translation quality evaluation
US20140025366A1 (en) * 2012-07-20 2014-01-23 Hristo Tzanev Georgiev Txtvoicetrans
US9461876B2 (en) * 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
JP2014089637A (ja) * 2012-10-31 2014-05-15 International Business Maschines Corporation 画像データ中の訳し分けされるべき単語又はフレーズに対応する訳語を決定する方法、並びにそのコンピュータ及びコンピュータ・プログラム
CN103106195B (zh) * 2013-01-21 2018-12-11 刘树根 表意构件识别提取和基于表意构件的机译人校互动翻译方法
US8761513B1 (en) * 2013-03-15 2014-06-24 Translate Abroad, Inc. Systems and methods for displaying foreign character sets and their translations in real time on resource-constrained mobile devices
JP6296592B2 (ja) 2013-05-29 2018-03-20 国立研究開発法人情報通信研究機構 翻訳語順情報出力装置、機械翻訳装置、学習装置、翻訳語順情報出力方法、学習方法、およびプログラム
JP2014235599A (ja) 2013-06-03 2014-12-15 独立行政法人情報通信研究機構 翻訳装置、学習装置、翻訳方法、およびプログラム
US20150039286A1 (en) * 2013-07-31 2015-02-05 Xerox Corporation Terminology verification systems and methods for machine translation services for domain-specific texts
JP5973986B2 (ja) * 2013-12-24 2016-08-23 日本電信電話株式会社 翻訳システム、方法、及びプログラム
CN111291553B (zh) 2014-10-24 2023-11-21 谷歌有限责任公司 具有罕见词处理的神经机器翻译系统
US10248653B2 (en) * 2014-11-25 2019-04-02 Lionbridge Technologies, Inc. Information technology platform for language translation and task management
JP6320982B2 (ja) * 2014-11-26 2018-05-09 ネイバー コーポレーションNAVER Corporation 翻訳文エディタ提供装置、並びに翻訳文エディタ提供方法
KR102305584B1 (ko) 2015-01-19 2021-09-27 삼성전자주식회사 언어 모델 학습 방법 및 장치, 언어 인식 방법 및 장치
US9372853B1 (en) * 2015-02-22 2016-06-21 Cisco Technology, Inc. Homomorphic document translation
US10235007B2 (en) * 2015-05-21 2019-03-19 Gammakite, Llc Guided operation of a language device based on constructed, time-dependent data structures
US9836457B2 (en) * 2015-05-25 2017-12-05 Panasonic Intellectual Property Corporation Of America Machine translation method for performing translation between languages
JP6671027B2 (ja) * 2016-02-01 2020-03-25 パナソニックIpマネジメント株式会社 換言文生成方法、該装置および該プログラム
US10268686B2 (en) * 2016-06-24 2019-04-23 Facebook, Inc. Machine translation system employing classifier
US10191903B2 (en) * 2016-09-30 2019-01-29 Microsoft Technology Licensing, Llc Customized and contextual translated content for travelers
US10061770B2 (en) * 2016-11-11 2018-08-28 International Business Machines Corporation Multilingual idiomatic phrase translation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120101804A1 (en) * 2010-10-25 2012-04-26 Xerox Corporation Machine translation using overlapping biphrase alignments and sampling

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Bahdanau, Dzmitry, Kyunghyun Cho, and Yoshua Bengio., Neural machine translation by jointly learning to align and translate, arXiv preprint arXiv:1409.0473, 2015*

Also Published As

Publication number Publication date
US11954452B2 (en) 2024-04-09
CN108363702B (zh) 2023-10-31
US11409967B2 (en) 2022-08-09
EP3355203A1 (en) 2018-08-01
KR20180087945A (ko) 2018-08-03
JP7111464B2 (ja) 2022-08-02
US20220374613A1 (en) 2022-11-24
US20180210878A1 (en) 2018-07-26
CN108363702A (zh) 2018-08-03
US20200356731A1 (en) 2020-11-12
JP2018120584A (ja) 2018-08-02
US10762302B2 (en) 2020-09-01

Similar Documents

Publication Publication Date Title
KR102637338B1 (ko) 번역 보정 방법 및 장치와 번역 시스템
CA3123198C (en) Structured text translation
US10108607B2 (en) Method and device for machine translation
US10255275B2 (en) Method and system for generation of candidate translations
KR102516364B1 (ko) 기계 번역 방법 및 장치
KR102458244B1 (ko) 기계 번역 방법 및 장치
KR101623891B1 (ko) 기계 번역을 위한 파라미터들의 최적화
CN110969028B (zh) 用于同步翻译的系统和方法
Di Gangi et al. One-to-many multilingual end-to-end speech translation
WO2018024243A1 (zh) 字符识别中识别结果的校验方法和装置
KR20220038514A (ko) 엔드-투-엔드 모델들에서 교차-언어 음성 인식을 위한 음소-기반 컨텍스트화
KR102509822B1 (ko) 문장 생성 방법 및 장치
US11822897B2 (en) Systems and methods for structured text translation with tag alignment
JP2023544336A (ja) 多言語発話認識フレームワークのためのシステム及び方法
CN110352423B (zh) 使用噪声信道模型生成目标序列的方法、存储介质和系统
CN111401080A (zh) 神经机器翻译方法以及神经机器翻译装置
WO2020197504A1 (en) A method for pre-processing a sequence of words for neural machine translation
CN115293138A (zh) 一种文本纠错方法及计算机设备
CN113051894A (zh) 一种文本纠错的方法和装置
US20220147721A1 (en) Adapters for zero-shot multilingual neural machine translation
Bai et al. Source-critical reinforcement learning for transferring spoken language understanding to a new language
Tran et al. Hierarchical transformer encoders for Vietnamese spelling correction
CN113743101A (zh) 文本纠错方法、装置、电子设备和计算机存储介质
JP7194759B2 (ja) 翻訳用データ生成システム
KR20120045906A (ko) 코퍼스 오류 교정 장치 및 그 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant