KR102463567B1 - 인공신경망 기계 번역시 메타 정보를 이용하는 기법 - Google Patents

인공신경망 기계 번역시 메타 정보를 이용하는 기법 Download PDF

Info

Publication number
KR102463567B1
KR102463567B1 KR1020227002797A KR20227002797A KR102463567B1 KR 102463567 B1 KR102463567 B1 KR 102463567B1 KR 1020227002797 A KR1020227002797 A KR 1020227002797A KR 20227002797 A KR20227002797 A KR 20227002797A KR 102463567 B1 KR102463567 B1 KR 102463567B1
Authority
KR
South Korea
Prior art keywords
translation
neural network
target
network system
machine
Prior art date
Application number
KR1020227002797A
Other languages
English (en)
Other versions
KR20220017001A (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 이베이 인크.
Publication of KR20220017001A publication Critical patent/KR20220017001A/ko
Application granted granted Critical
Publication of KR102463567B1 publication Critical patent/KR102463567B1/ko

Links

Images

Classifications

    • 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
    • G06N3/086Learning methods using evolutionary algorithms, e.g. genetic algorithms or genetic programming
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • G06F16/1794Details of file format conversion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/263Language identification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • 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
    • 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/044Recurrent networks, e.g. Hopfield networks
    • G06N3/0445
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor

Abstract

인공신경망 기계 번역을 위한 시스템 및 방법이 제공된다. 일 예에서, 인공신경망 기계 번역 시스템은 텍스트를 번역하고 프로세서들 및 명령어를 저장하는 메모리를 포함하되, 이 명령어는 프로세서들 중 적어도 하나의 프로세서에 의해 실행되는 경우 시스템으로 하여금 동작들을 수행하게 하고, 이 동작들은 적어도, 인공신경망 시스템에 대한 입력으로서 텍스트를 얻는 동작과, 인공신경망 시스템에 대한 가외의 입력으로서의 메타 정보로 입력 텍스트를 보충하는 동작과, 번역을 위해 메타 정보를 이용하는 입력 텍스트의 번역물로서 인공신경망 시스템의 출력을 사용자에게 전달하는 동작을 포함한다.

Description

인공신경망 기계 번역시 메타 정보를 이용하는 기법{USING META-INFORMATION IN NEURAL MACHINE TRANSLATION}
이 특허 출원은 "USING META-INFORMATION IN NEURAL MACHINE TRANSLATION"라는 제목으로 2016년 5월 6일에 출원된 Matusove 등의 미국 가특허 출원 제62/332,608호를 우선권으로 주장하는데, 이 미국 가특허 출원은 본 명세서에서 그 전체가 참조로서 인용된다.
본 개시는 일반적으로 인공신경망 기계 번역(neural machine translation)시 메타 정보를 사용하는 방법 및 시스템에 관한 것으로, 일부 예에서는 그에 따른 특정 알고리즘에 관한 것이다.
텍스트를 정확하게 또는 문맥에 따라 번역할 때 기존의 기계 번역이 항상 효과적인 것은 아니다. 본 개시는 이러한 기술적인 문제점을 해결하기 위해 인공신경망 기계 번역(NMT)을 사용하는 기술적 솔루션을 교시한다.
배경 기술의 일 예로 아래의 특허 문헌을 참고할 수 있다.
(문헌 1) 한국특허출원 공개번호 10-2001-0103151
임의의 특정 요소 또는 동작에 대한 설명을 보다 쉽게 확인할 수 있도록 하기 위해, 참조 번호에서 가장 왼쪽에 있는 숫자는 해당 요소가 처음으로 기재된 도면을 지칭한다.
도 1은 일부 예시적인 실시예에 따른 네트워크 시스템을 도시하는 블록도이다.
도 2는 본 명세서에서 설명된 다양한 하드웨어 아키텍처와 연계하여 사용될 수 있는 대표적인 소프트웨어 아키텍처를 도시한 블록도이다.
도 3은 머신 판독가능 매체(예를 들어, 머신 판독가능 저장 매체)로부터 명령어를 판독하고 본 명세서에서 설명된 임의의 하나 이상의 방법을 수행할 수 있는 일부 예시적인 실시예에 따른 머신의 컴포넌트를 나타내는 블록도이다.
도 4는 예시적인 실시예에 따라, 입력 텍스트가 추가 입력 신호로서의 메타 정보로 보충되는 인공신경망 번역 아키텍처를 도시한다.
도 5는 예시적인 실시예에 따른 인코더-디코더 모델을 도시한다.
도 6은 예시적인 실시예에 따라, 인공신경망 기계 번역 결정에 영향을 미치는 추가 입력으로서, 토픽 또는 카테고리 또는 다른 메타 정보의 삽입을 위한 예시적인 아키텍처 포인트를 도시하는 예시적인 인공신경망 기반 인코더 및 주목 기반 디코더(an attention based decoder)를 도시한다.
도 7은 예시적인 실시예에 따른 디코더의 토픽 인식 판독 계층을 도시한다.
도 8은 예시적인 실시예에 따른 소정의 번역 작업에 대한 코퍼스 통계를 표(800)로 도시한다.
도 9는 예시적인 실시예에 따른 토픽-인식 인공신경망 기계 번역(NMT)을 위한 상이한 접근법의 평가를 표(900)에 나타낸다.
도 10은 예시적인 실시예에 따라, 토픽 정보가 (NMT) 시스템에서 입력으로서 사용될 때 개선된 번역 품질의 예를 표(1000)에 도시한다.
도 11은 예시적인 실시예에 따라, 토픽 임베딩(topic embedding)을 위한 예시적인 코사인 거리를 도시한다.
도 12는 예시적인 실시예에 따른 방법의 흐름도를 도시한다.
본 명세서에서 "반송파 신호"는 머신에 의해 실행되는 명령어를 저장, 인코딩 또는 운반할 수 있는 임의의 무형의 머신 판독가능 매체를 말하며, 그러한 명령어의 통신을 용이하게 하는 디지털 또는 아날로그 통신 신호 또는 기타 무형의 매체를 포함한다. 명령어는 네트워크 인터페이스 장치를 경유하는 전송 매체를 사용하고 다수의 잘 알려진 전송 프로토콜들 중 임의의 하나를 사용하여 네트워크를 통해 전송되거나 수신될 수 있다.
본 명세서에서 "클라이언트 장치"는 하나 이상의 서버 시스템 또는 다른 클라이언트 장치로부터 자원을 얻기 위해 통신 네트워크와 인터페이스하는 임의의 머신을 지칭한다. 클라이언트 장치는 이동 전화, 데스크톱 컴퓨터, 노트북, 휴대용 디지털 보조 기기(PDA), 스마트폰, 태블릿, 울트라북, 넷북, 랩톱, 멀티 프로세서 시스템, 마이크로프로세서 기반 또는 프로그래밍가능 가전제품, 게임 콘솔, 셋톱 박스 또는 사용자가 네트워크에 액세스하는 데 사용할 수 있는 임의의 다른 통신 장치일 수 있으나, 이것으로 국한되지는 않는다.
본 명세서에서 "통신 네트워크"는 애드혹 네트워크, 인트라넷, 엑스트라넷, 가상 사설망(VPN), 근거리 네트워크(LAN), 무선 LAN(WLAN), 광역 네트워크(WAN), 무선 WAN(WWAN), MAN(Metropolitan Area Network), 인터넷, 인터넷의 일부, PSTN(Public Switched Telephone Network)의 일부, POTS(plain old telephone service) 네트워크, 셀룰러 전화 네트워크, 무선 네트워크, 와이파이(Wi-Fi®) 네트워크, 다른 유형의 네트워크, 또는 2개 이상의 이러한 네트워크의 조합일 수 있는 네트워크의 하나 이상의 부분을 지칭한다. 예를 들어, 네트워크 또는 네트워크의 일부분은 무선 또는 셀룰러 네트워크를 포함할 수 있고, 커플링은 코드 분할 다중 액세스(CDMA) 연결, 글로벌 이동 통신 시스템(GSM) 연결, 또는 다른 유형의 셀룰러 또는 무선 커플링일 수 있다. 이 예에서, 커플링은 단일 반송파 무선 전송 기술(IxRTT), 진화 데이터 최적화(EVDO) 기술, GPRS(General Packet Radio Service) 기술, EDGE(Enhanced Data rates for GSM Evolution) 기술, 3G를 포함하는 3GPP(third Generation Partnership Project), 4세대(4G) 무선 네트워크, 범용 이동 통신 시스템(UMTS), 고속 패킷 액세스(HSPA), 마이크로웨이브 액세스를 위한 전세계 상호운용성(WiMAX), 롱텀 에볼루션(LTE) 표준, 다양한 표준 설정 기관, 기타 장거리 프로토콜로 정의된 기타 전송 기술, 또는 그 밖의 다른 데이터 전송 기술과 같은 다양한 유형의 데이터 전송 기술 중 임의의 것을 구현할 수 있다.
본 명세서에서 "컴포넌트"는 특정 처리 또는 제어 기능의 분할 또는 모듈화를 제공하는 기능 또는 서브루틴 호출, 분기점, 애플리케이션 프로그램 인터페이스(API) 또는 기타 기술로 정의된 경계를 갖는 장치, 물리적 엔티티 또는 로직을 지칭한다. 컴포넌트는 인터페이스를 통해 다른 컴포넌트와 결합되어 머신 프로세스를 수행할 수 있다. 컴포넌트는 다른 컴포넌트와 함께 사용되도록 설계된 패키지형의 기능적 하드웨어 장치일 수도 있고 일반적으로 관련 기능들 중 특정 기능을 수행하는 프로그램의 일부일 수도 있다. 컴포넌트는 소프트웨어 컴포넌트(예를 들어, 머신 판독가능 매체에 수록된 코드) 또는 하드웨어 컴포넌트를 구성할 수 있다. "하드웨어 컴포넌트"는 특정 작업을 수행할 수 있는 유형의(tangible) 유닛이며 특정 물리적 방식으로 구성 또는 정렬될 수 있다.
다양한 예시적인 실시예에서, 하나 이상의 컴퓨터 시스템(예를 들어, 독립형 컴퓨터 시스템, 클라이언트 컴퓨터 시스템 또는 서버 컴퓨터 시스템) 또는 컴퓨터 시스템의 하나 이상의 하드웨어 컴포넌트(예를 들어, 프로세서 또는 프로세서 그룹)는 소프트웨어(예를 들어, 애플리케이션 또는 애플리케이션 부분)에 의해, 본 명세서에 기술된 특정 동작을 수행하도록 동작하는 하드웨어 컴포넌트로서 구성될 수 있다. 하드웨어 컴포넌트는 또한 기계적으로, 전자적으로 또는 이들의 임의의 적절한 조합으로 구현될 수 있다. 예를 들어, 하드웨어 컴포넌트는 특정 동작을 수행하도록 영구적으로 구성된 전용 회로 또는 로직을 포함할 수 있다. 하드웨어 컴포넌트는 FPGA(Field-Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 특수 목적 프로세서일 수 있다. 하드웨어 컴포넌트는 또한 특정 동작을 수행하기 위해 소프트웨어에 의해 일시적으로 구성되는 프로그래밍가능 로직 또는 회로를 포함할 수 있다. 예를 들어, 하드웨어 컴포넌트는 범용 프로세서 또는 다른 프로그램가능 프로세서에 의해 실행되는 소프트웨어를 포함할 수 있다. 이러한 소프트웨어에 의해 구성되면, 하드웨어 컴포넌트는 구성된 기능을 수행하도록 고유하게 맞춤 설정된 특정 머신(또는 머신의 특정 컴포넌트)이 되어 더 이상 범용 프로세서가 아니다.
하드웨어 컴포넌트를, 머신으로 구현할지, 전용 및 영구적으로 구성된 회로로 구현할지 또는 일시적으로 구성된 (예를 들어, 소프트웨어에 의해 구성된) 회로로 구현할지에 대한 결정은 비용 및 시간을 고려하여 행해질 수 있음을 이해해야 할 것이다. 따라서, "하드웨어 컴포넌트"(또는 "하드웨어 구현 컴포넌트")라는 문구는 물리적으로 구성되거나, 영구적으로 구성되거나(예를 들어, 하드와이어드(hardwired)) 또는 일시적으로 구성(예를 들어, 프로그래밍)되어 특정 방식으로 동작하거나 본 명세서에서 설명된 특정 작업을 수행할 수 있는 엔티티라는 점에서, 유형의 엔티티를 포함하는 것으로 이해되어야 한다. 하드웨어 컴포넌트가 일시적으로 구성되는(예를 들어, 프로그래밍되는) 실시예를 고려하면, 하드웨어 컴포넌트 각각은 어느 한 시간 인스턴스에 구성되거나 인스턴스화될 필요는 없다.
예를 들어, 하드웨어 컴포넌트가 특수 목적 프로세서가 되도록 소프트웨어에 의해 구성된 범용 프로세서를 포함하는 경우, 이 범용 프로세서는 상이한 시간에 (예를 들어, 상이한 하드웨어 컴포넌트를 포함하는) 각각 다른 특수 목적 프로세서로서 구성될 수 있다. 따라서, 소프트웨어는 예를 들어 하나의 시간 인스턴스에서 특정 하드웨어 컴포넌트를 구성하고 다른 시간 인스턴스에서 다른 하드웨어 컴포넌트를 구성하도록 특정 프로세서 또는 프로세서들을 구성한다.
하드웨어 컴포넌트는 다른 하드웨어 컴포넌트와 정보를 주고받을 수 있다. 따라서, 설명된 하드웨어 컴포넌트는 통신 가능하게 결합된 것으로 간주될 수 있다. 동시에 다수의 하드웨어 컴포넌트가 존재하는 경우, 통신은 2개 이상의 하드웨어 컴포넌트 사이에서 (예를 들어, 적절한 회로 및 버스를 통한) 신호 전송을 통해 달성될 수 있다. 다수의 하드웨어 컴포넌트가 상이한 시간에 구성되거나 인스턴스화되는 실시예에서, 그러한 하드웨어 컴포넌트 간의 통신은, 예를 들어 다수의 하드웨어 컴포넌트가 액세스하는 메모리 구조 내의 정보의 저장 및 검색을 통해 달성될 수 있다. 예를 들어, 하나의 하드웨어 컴포넌트는 동작을 수행하고 그 동작의 출력을 통신 가능하게 결합된 메모리 장치에 저장할 수 있다. 다른 하드웨어 컴포넌트가 나중에 저장된 출력을 검색하고 처리하기 위해 메모리 장치에 액세스할 수 있다. 하드웨어 컴포넌트는 또한 입력 또는 출력 장치와의 통신을 개시할 수 있고, 리소스(예를 들어, 정보의 모음)에 대해 동작할 수 있다.
본 명세서에 설명된 예시적인 방법의 다양한 동작은 적어도 부분적으로, 관련 동작을 수행하도록 (예를 들어, 소프트웨어에 의해) 일시적으로 구성되거나 또는 영구적으로 구성된 하나 이상의 프로세서에 의해 수행될 수 있다. 일시적으로구성되든 또는 영구적으로 구성되든, 이러한 프로세서는 본 명세서에 설명된 하나 이상의 동작 또는 기능을 수행하도록 작동하는 프로세서 구현 컴포넌트를 구성할 수 있다. 본 명세서에 사용된 "프로세서 구현 컴포넌트"는 하나 이상의 프로세서를 사용하여 구현된 하드웨어 컴포넌트를 지칭한다. 유사하게, 본 명세서에 설명된 방법들은 적어도 부분적으로 프로세서로 구현될 수 있으며, 특정 프로세서 또는 프로세서들은 하드웨어의 예이다. 예를 들어, 방법의 동작들 중 적어도 일부는 하나 이상의 프로세서 또는 프로세서 구현 컴포넌트에 의해 수행될 수 있다. 또한, 하나 이상의 프로세서는 "클라우드 컴퓨팅" 환경에서 또는 "서비스로서의 소프트웨어"(SaaS)로서 관련 동작의 실행을 지원하도록 동작할 수 있다. 예를 들어, 동작들중 적어도 일부는 컴퓨터들(예를 들어, 프로세서를 포함하는 머신들)의 그룹에 의해 수행될 수 있는데, 이들 동작은 네트워크(예를 들어, 인터넷) 및 하나 이상의 적절한 인터페이스(애플리케이션 프로그램 인터페이스(API))를 통해 액세스가능하다. 동작들 중 일부의 수행은 단일 시스템 내에 있을 뿐만 아니라 여러 머신에 걸쳐 배치된 프로세서들 간에 분산될 수 있다. 일부 예시적인 실시예에서, 프로세서들 또는 프로세서 구현 컴포넌트들은 단일 지리적 위치(예를 들어, 가정 환경, 사무실 환경 또는 서버 팜)에 위치할 수 있다. 다른 실시예에서, 프로세서 또는 프로세서 구현 컴포넌트들은 다수의 지리적 위치들에 걸쳐 분산될 수 있다.
본 명세서에서 "머신 판독가능 저장 매체"는 명령어와 데이터를 일시적 또는 영구적으로 저장할 수 있는 컴포넌트, 장치 또는 기타 유형의 매체를 말하며, RAM(Random-Access Memory), 판독 전용 메모리(ROM), 버퍼 메모리, 플래시 메모리, 광 매체, 자기 매체, 캐시 메모리, 다른 유형의 저장 장치(예를 들어, 소거가능 프로그램가능 판독 전용 메모리(EEPROM)) 및/또는 이들의 임의의 적절한 조합을 포함하나 이에 국한되지는 않는다. "머신 판독가능 매체"라는 용어는 명령어를 저장할 수 있는 단일 매체 또는 다중 매체(예를 들어, 중앙 집중형 또는 분산형 데이터베이스 또는 관련 캐시 및 서버)를 포함하는 것으로 간주되어야 한다. "머신 판독가능 매체"라는 용어는 또한 머신에 의해 실행되는 명령어(예를 들어, 코드)를 저장할 수 있는 임의의 매체 또는 다중 매체의 조합을 포함하는 것으로 간주되어야 하며, 명령어는 머신의 하나 이상의 프로세서에 의해 실행되는 경우 머신으로 하여금 본 명세서에 설명된 방법 중 하나 이상을 수행하게 한다. 따라서, "머신 판독가능 저장 매체"는 단일 저장 장치 또는 디바이스뿐만 아니라 다수의 저장 장치 또는 디바이스를 포함하는 "클라우드 기반" 저장 시스템 또는 저장 네트워크를 지칭한다. "머신 판독가능 저장 매체"라는 용어는 신호 그 자체는 배제한다. 머신 판독가능 매체는 머신 판독가능 저장 매체 및 전송 매체 또는 반송파와 같은 일시적인 매체를 포함한다.
본 명세서에서 "프로세서"는 제어 신호(예를 들어, "명령", "연산 코드", "머신 코드" 등)에 따라 데이터 값을 조작하고 머신을 동작시키기 위해 적용되는 대응 출력 신호를 생성하는 임의의 회로 또는 가상 회로(실제 프로세서에서 실행되는 로직에 의해 에뮬레이션된 물리적 회로)를 지칭한다. 프로세서는 예를 들어 중앙 처리 장치(CPU), RISC(Reduced Instruction Set Computing) 프로세서, CISC(Complex Instruction Set Computing) 프로세서, GPU(Graphics Processing Unit), DSP(Digital Signal Processor), 주문형 집적 회로(ASIC), 무선 주파수 집적 회로(RFIC) 또는 이들의 임의 조합일 수 있다. 프로세서는 또한 명령어를 동시에 실행할 수 있는 둘 이상의 독립적인 프로세서(때때로 "코어"라고도 함)를 갖는 멀티 코어 프로세서일 수 있다.
이 특허 문서의 공개 부분에는 저작권 보호를 받는 자료가 포함되어 있다. 저작권 소유자는 특허 및 상표청의 특허 파일 또는 기록에 나타나 있듯이 특허 문서 또는 특허 공보를 아무나 복제하는 것에 대해 이의를 제기하지 않지만 저작권의 모든 권리를 보유한다. 다음 주의사항, 즉 Copyright 2016, eBay Inc., All Rights Reserved은 본 문서의 일부를 구성하는 도면과 연계하여 이하에서 설명되는 소프트웨어 및 데이터에 적용된다.
이하의 설명은 본 발명의 예시적인 실시예를 구현하는 시스템, 방법, 기법, 명령어 시퀀스 및 컴퓨팅 머신 프로그램 제품을 포함한다. 이하의 설명에서, 설명을 목적으로, 본 발명의 다양한 실시예에 대한 이해를 제공하기 위해 다수의 특정 세부사항이 설명된다. 그러나, 본 발명의 실시예가 이러한 특정 세부 사항없이 실시될 수 있음이 당업자에게는 명백할 것이다. 일반적으로, 잘 알려진 명령어 인스턴스, 프로토콜, 구조 및 기법은 상세하게 설명될 필요는 없다.
도 1을 참조하면, 높은 레벨의 SaaS 네트워크 아키텍처(100)의 예시적인 실시예가 도시된다. 네트워크 시스템(116)은 네트워크(110)(예를 들어, 인터넷 또는 광역 네트워크(WAN))를 통해 서버측 기능을 클라이언트 장치(108)에 제공한다. 웹 클라이언트(102) 및 애플리케이션(104)의 예시적인 형태의 프로그래매틱 클라이언트가 클라이언트 장치(108)상에서 호스팅 및 실행된다. 네트워크 시스템(116)은 네트워크 시스템(116)에 액세스하는 애플리케이션(104)에 다수의 기능 및 서비스를 제공하는 게시 시스템(106)을 호스트하는 애플리케이션 서버(122)를 포함한다. 애플리케이션(104)은 또한 본 명세서에서 설명되는 다수의 인터페이스를 제공하며, 이 인터페이스는 추적 및 분석 동작의 출력을 클라이언트 장치(108)의 사용자에게제공한다.
클라이언트 장치(108)는 사용자가 네트워크 시스템(116)에 액세스하여 상호 작용할 수 있게 한다. 예를 들어, 사용자는 클라이언트 장치(108)에 입력(예를 들어, 터치 스크린 입력 또는 영숫자 입력)을 제공하고, 입력은 네트워크(110)를 통해 네트워크 시스템(116)에 전달된다. 이 예에서, 네트워크 시스템(116)은 사용자로부터의 입력을 수신하는 것에 응답하여, 네트워크(110)를 통해 클라이언트 장치(108)에 정보를 전달하여 사용자에게 제공되도록 한다.
애플리케이션 프로그램 인터페이스(API) 서버(118) 및 웹 서버(120)는 애플리케이션 서버(122)에 연결되어 각각 프로그매틱 인터페이스 및 웹 인터페이스를 제공한다. 애플리케이션 서버(122)는 컴포넌트 또는 애플리케이션을 포함하는 게시 시스템(106)을 호스팅한다. 이러한 하나의 컴포넌트는 인공신경망 기계 번역 컴포넌트(128)이다. 애플리케이션 서버(122)는 이어서 정보 저장소(예를 들어, 데이터베이스(126))에 대한 액세스를 용이하게 하는 데이터베이스 서버(124)에 연결되도록 도시되어 있다. 실시예에서, 데이터베이스(126)는 게시 시스템(106)에 의해 액세스되고 생성된 정보를 저장하는 저장 장치를 포함한다.
또한, 제3자 서버(112)상에서 실행되는 제3자 애플리케이션(114)이 애플리케이션 프로그램 인터페이스(API) 서버(118)에 의해 제공되는 프로그래밍 인터페이스를 통해 네트워크 시스템(116)에 대해 프로그래매틱 액세스를 갖는 것으로 도시되어 있다. 예를 들어, 제3자 애플리케이션(114)은 네트워크 시스템(116)으로부터 검색된 정보를 사용하여, 제3자에 의해 호스팅되는 웹 사이트상의 하나 이상의 특징 또는 기능을 지원할 수 있다.
클라이언트 장치(108)에 의해 호스팅되는 애플리케이션을 구체적으로 살펴보면, 웹 클라이언트(102)는 웹 서버(120)에 의해 지원되는 웹 인터페이스를 통해 다양한 시스템(예를 들어, 게시 시스템(106))에 액세스할 수 있다. 마찬가지로, 애플리케이션(104)(예를 들어, "앱")은 애플리케이션 프로그램 인터페이스(API) 서버(118)에 의해 제공되는 프로그래매틱 인터페이스를 통해 게시 시스템(106)에 의해 제공되는 다양한 서비스 및 기능을 액세스한다. 애플리케이션(104)은, 사용자가 오프라인 방식으로 네트워크 시스템(116)상에서 데이터에 액세스하고 입력할 수 있게 하고, 프로그래매틱 클라이언트 애플리케이션(104)과 네트워크 시스템(116) 간의 배치 모드 통신을 수행하기 위해, 예를 들어 iOS 또는 안드로이드 OS 애플리케이션과 같은 클라이언트 장치(108)상에서 실행되는 "앱"일 수 있다.
또한, 도 1에 도시된 SaaS 네트워크 아키텍처(100)는 클라이언트-서버 아키텍처를 사용하지만, 본 발명은 물론 그러한 아키텍처에 국한되지 않으며, 분산형 또는 피어 투 피어형 아키텍처 시스템에서도 동일하게 적용될 수 있다. 게시 시스템(106)은 네트워크 기능이 반드시 필요한 것은 아닌 독립형 소프트웨어 프로그램으로 구현될 수도 있다.
도 2는 본 명세서에 설명된 다양한 하드웨어 아키텍처와 함께 사용될 수 있는 예시적인 소프트웨어 아키텍처(206)를 도시한 블록도이다. 도 2는 소프트웨어 아키텍처의 비제한적인 예이며, 본 명세서에 설명된 기능을 용이하게 하기 위해 많은 다른 아키텍처가 구현될 수 있음을 알 것이다. 소프트웨어 아키텍처(206)는 특히 프로세서(304), 메모리(314) 및 I/O 컴포넌트(318)를 포함하는 도 3의 머신(300)과 같은 하드웨어 상에서 실행될 수 있다. 대표적인 하드웨어 계층(252)이 도시되어 있으며, 예를 들어, 도 3의 머신(300)을 나타낼 수 있다. 대표적인 하드웨어 계층(252)은 연관된 실행가능 명령어들(204)을 갖는 프로세싱 유닛(254)을 포함한다. 실행 가능 명령어들(204)은 본 명세서에 설명된 방법들, 컴포넌트들 등의 구현을 포함하는 소프트웨어 아키텍처(206)의 실행가능 명령어들을 나타낸다. 하드웨어 계층(252)은 또한 실행가능 명령어들(204)을 갖는 메모리 및/또는 저장 모듈 메모리/저장소(256)를 포함한다. 하드웨어 계층(252)은 다른 하드웨어(258)를 또한 포함할 수 있다.
도 2의 예시적인 아키텍처에서, 소프트웨어 아키텍처(206)는 각 계층이 특정 기능을 제공하는 계층들의 스택으로서 개념화될 수 있다. 예를 들어, 소프트웨어 아키텍처(206)는 운영 체제(202), 라이브러리(220), 애플리케이션(216) 및 프리젠 테이션 계층(214)과 같은 계층을 포함할 수 있다. 동작시, 애플리케이션(216) 및/또는 계층 내의 다른 컴포넌트는 소프트웨어 스택을 통해 애플리케이션 프로그래밍 인터페이스(API)의 API 호출(208)을 이끌어낼 수 있고 이 API 호출(208)에 따른 응답을 수신할 수 있다. 설명된 계층은 본질적으로 대표적인 것이며 모든 소프트웨어 아키텍처가 모든 계층을 갖는 것은 아니다. 예를 들어, 일부 모바일 또는 특수 목적 운영 체제는 프레임워크/미들웨어(218)를 제공하지 않을 수도 있지만, 다른 것들은 그러한 계층을 제공할 수도 있다. 다른 소프트웨어 아키텍처는 추가의 또는 다른 계층을 포함할 수 있다.
운영 체제(202)는 하드웨어 자원을 관리하고 공통 서비스를 제공할 수 있다. 운영 체제(202)는 예를 들어 커널(222), 서비스(224) 및 드라이버(226)를 포함할 수 있다. 커널(222)은 하드웨어와 다른 소프트웨어 계층 사이의 추상화 계층(abstraction layer)으로서 작용할 수 있다. 예를 들어, 커널(222)은 메모리 관리, 프로세서 관리(예를 들어, 스케줄링), 컴포넌트 관리, 네트워킹, 보안 설정 등을 담당할 수 있다. 서비스(224)는 다른 소프트웨어 계층에 다른 공통 서비스를 제공할 수 있다. 드라이버(226)는 기저 하드웨어를 제어하거나 인터페이싱하는 역할을 한다. 예를 들어, 드라이버(226)는 하드웨어 구성에 따라, 디스플레이 드라이버, 카메라 드라이버, 블루투스 드라이버, 플래시 메모리 드라이버, 직렬 통신 드라이버(예를 들어, 범용 직렬 버스(USB) 드라이버), 와이파이 드라이버, 오디오 드라이버, 전원 관리 드라이버 등을 포함한다.
라이브러리(220)는 애플리케이션(216) 및/또는 다른 컴포넌트 및/또는 계층에 의해 사용되는 공통 인프라구조를 제공한다. 라이브러리(220)는 다른 소프트웨어 컴포넌트가 기본 운영 체제(202) 기능(예를 들어, 커널(222), 서비스(224) 및/또는 드라이버(226))과 직접 인터페이스하는 것보다 용이한 방식으로 작업을 수행할 수 있게 하는 기능을 제공한다. 라이브러리(220)는 메모리 할당 기능, 스트링 조작 기능, 수학적 기능 등과 같은 기능을 제공할 수 있는 시스템 라이브러리(244)(예를 들어, C 표준 라이브러리)를 포함한다. 또한, 라이브러리(220)는 미디어 라이브러리(예를 들어, MPREG4, H.264, MP3, AAC, AMR, JPG, PNG와 같은 다양한 미디어 포맷의 표현 및 조작을 지원하는 라이브러리), 그래픽 라이브러리(예를 들어, 디스플레이 상의 그래픽 컨텐츠에서 2D 및 3D를 렌더링하는 데 사용될 수 있는 OpenGL 프레임워크), 데이터베이스 라이브러리(예를 들어, 다양한 관계형 데이터베이스 기능을 제공할 수 있는 SQLite), 웹 라이브러리(예를 들어, 웹 브라우징 기능을 제공할 수 있는 WebKit) 등과 같은 API 라이브러리(246)를 포함할 수 있다. 라이브러리(220)는 또한 애플리케이션(216) 및 다른 소프트웨어 컴포넌트/모듈에 많은 다른 API를 제공하기 위해 다양한 다른 라이브러리(248)를 포함할 수 있다.
프레임워크/미들웨어(218)(때로는 미들웨어라고도 함)는 애플리케이션(216) 및/또는 다른 소프트웨어 컴포넌트/모듈에 의해 사용될 수 있는 상위 레벨의 공통 인프라구조를 제공한다. 예를 들어, 프레임워크/미들웨어(218)는 다양한 그래픽 사용자 인터페이스(GUI) 기능, 상위 레벨의 자원 관리, 상위 레벨의 위치확인 서비스 등을 제공할 수 있다. 프레임워크/미들웨어(218)는 애플리케이션(216) 및/또는 다른 소프트웨어 컴포넌트/모듈에 의해 이용될 수 있는 광범위한 스펙트럼의 다른 API를 제공할 수 있으며, 그 중 일부는 특정 운영 시스템 또는 플랫폼에 특정될 수 있다.
애플리케이션(216)은 내장형 애플리케이션(238) 및/또는 제3자 애플리케이션(240)을 포함한다. 대표적인 내장형 애플리케이션(238)의 예는 연락처 애플리케이션, 브라우저 애플리케이션, 북 리더 애플리케이션, 위치 애플리케이션, 미디어 애플리케이션, 메시징 애플리케이션, 및/또는 게임 애플리케이션을 포함할 수 있으나, 이에 국한되지는 않는다. 제3자 애플리케이션(240)은 특정 플랫폼의 벤더가 아닌 엔티티에 의해 ANDROIDTM 또는 IOSTM 소프트웨어 개발 킷(SDK)을 사용하여 개발된 임의의 애플리케이션을 포함할 수 있으며, 예를 들어, IOS™, ANDROID™, WINDOWS® 전화 또는 기타 모바일 운영 체제와 같은 모바일 운영 체제상에서 실행되는 모바일 소프트웨어일 수 있다. 제3자 애플리케이션(240)은 (운영 체제(202)와 같은) 모바일 운영 체제에 의해 제공되는 API 호출(208)을 불러와 본 명세서에 설명된 기능을 용이하게 할 수 있다.
애플리케이션(216)은 시스템의 사용자와 상호작용하기 위한 사용자 인터페이스를 생성하기 위해 내장형 운영 체제 기능(예를 들어, 커널(222), 서비스(224) 및/또는 드라이버(226)), 라이브러리(220) 및 프레임워크/미들웨어(218)를 사용할 수 있다. 선택적으로 또는 부가적으로, 일부 시스템에서, 사용자와의 상호작용은 프리젠테이션 계층(214)과 같은 프리젠테이션 계층을 통해 이루어진다. 이들 시스템에서, 애플리케이션/컴포넌트 "로직"은 사용자와 상호작용하는 애플리케이션/컴포넌트의 측면과 분리될 수 있다.
일부 소프트웨어 아키텍처는 가상 머신을 사용한다. 도 2의 예에서, 이것은 가상 머신(210)으로 예시된다. 가상 머신(210)은 애플리케이션/컴포넌트가 마치 (예를 들어, 도 3의 머신(300)과 같은) 하드웨어 머신 상에서 실행중인 것처럼 실행될 수 있는 소프트웨어 환경을 생성한다. 가상 머신(210)은 호스트 운영 체제(도 2의 운영 체제(OS)(236))에 의해 호스팅되고, 통상적으로 항상은 아니지만 가상 머신의 동작 및 호스트 운영 체제(즉, 운영 체제(202))와의 인터페이스를 관리하는 가상 머신 모니터(260)를 가진다. 소프트웨어 아키텍처는 운영 체제(OS)(236), 라이브러리(234), 프레임워크(232), 애플리케이션(230) 및/또는 프리젠테이션 계층(228)과 같은 가상 머신(210) 내에서 실행된다. 가상 머신(210) 내에서 실행되는 이러한 소프트웨어 아키텍처의 계층은 이전에 기술된 대응하는 계층과 동일할 수도 있고 상이할 수도 있다.
도 3은 머신 판독가능 매체(예를 들어, 머신 판독가능 저장 매체)로부터 명령어를 판독할 수 있고 본 명세서에 기술된 방법들 중 하나 이상을 수행할 수 있는 일부 예시적인 실시예에 따른 머신(300)의 컴포넌트를 도시하는 블록도이다. 구체적으로, 도 3은 컴퓨터 시스템의 예시적인 형태의 머신(300)을 다이어그램으로 도시하는데, 이 머신(300) 내에서, 머신(300)으로 하여금 본 명세서에 논의된 임의의 하나 이상의 방법을 수행하게 하는 명령어(310)(예를 들어, 소프트웨어, 프로그램, 애플리케이션, 애플릿, 앱 또는 다른 실행 가능한 코드)가 실행될 수 있다. 따라서 명령어는 본 명세서에 설명된 모듈 또는 컴포넌트를 구현하는 데 사용될 수 있다. 명령어는 프로그램되지 않은 일반적인 머신을, 설명되고 도시된 기능을 설명된 방식으로 수행하도록 프로그램된 특정 머신으로 변환한다. 다른 실시예에서, 머신(300)은 독립형 장치로서 동작하거나 다른 머신들에 결합(예를 들어, 네트워크화)될 수 있다. 네트워크 배치에서, 머신(300)은 서버-클라이언트 네트워크 환경에서 서버 머신 또는 클라이언트 머신으로서 동작할 수 있거나, 피어 투 피어(또는 분산형) 네트워크 환경에서 피어 머신으로서 동작할 수 있다. 머신(300)은 서버 컴퓨터, 클라이언트 컴퓨터, 퍼스널 컴퓨터(PC), 태블릿 컴퓨터, 랩톱 컴퓨터, 넷북, 셋톱 박스(STB), 개인용 디지털 보조 단말기(PDA), 오락 미디어 시스템, 셀룰러 전화기, 스마트폰, 이동 장치, 웨어러블 장치(예를 들어, 스마트 워치), 스마트 홈 장치(예를 들어, 스마트 기기), 기타 스마트 장치, 웹 기기, 네트워크 라우터, 네트워크 스위치, 네트워크 브리지, 또는 머신(300)이 취해야 할 동작을 지정하는 명령어(310)를 순차적으로 또는 다른 방법으로 실행할 수 있는 임의의 머신을 포함할 수 있으나, 이에 국한되지는 않는다. 또한, 단지 하나의 머신(300)이 도시되어 있지만, "머신"이라는 용어는 본 명세서에서 논의된 임의의 하나 이상의 방법을 수행하기 위해 명령어(310)를 개별적으로 또는 공동으로 실행하는 머신들의 집합을 포함하는 것으로 간주되어야 한다.
머신(300)은 버스(302)를 통해 서로와 통신하도록 구성될 수 있는 프로세서(304), 메모리/저장소(306) 및 I/O 컴포넌트(318)를 포함할 수 있다. 메모리/저장소(306)는 메인 메모리 또는 다른 메모리 저장소와 같은 메모리(314), 및 저장 유닛(316)을 포함할 수 있되, 이들 모두는 버스(302)를 통해 프로세서(304)에 액세스 가능하다. 저장 유닛(316) 및 메모리(314)는 본 명세서에 설명된 임의의 하나 이상의 방법 또는 기능을 구현하는 명령어(310)를 저장한다. 명령어(310)는 머신(300)에 의해 실행되는 동안, 메모리(314) 내에, 저장 유닛(316) 내에, 프로세서들(304) 중 적어도 하나 내에(예를 들어, 프로세서의 캐시 메모리 내에), 또는 이들의 임의의 적절한 조합 내에 완전히 또는 부분적으로 상주할 수 있다. 따라서, 메모리(314), 저장 유닛(316) 및 프로세서(304)의 메모리는 머신 판독가능 매체의 예이다.
I/O 컴포넌트(318)는 입력을 수신하고, 출력을 제공하고, 출력을 생성하고, 정보를 전송하고, 정보를 교환하고, 측정치를 포착하기 위한 다양한 컴포넌트를 포함할 수 있다. 특정 머신에 포함되는 특정 I/O 컴포넌트(318)는 머신의 타입에 의존할 것이다. 예를 들어, 휴대 전화와 같은 휴대용 머신은 터치 입력 장치 또는 기타 입력 메커니즘을 포함할 것 같지만, 헤드리스 서버 머신은 그러한 터치 입력 장치를 포함하지 않을 것이다. I/O 컴포넌트(318)는 도 3에 도시되지 않은 많은 다른 컴포넌트를 포함할 수 있음을 알 것이다. I/O 컴포넌트(318)는 단지 후속하는 설명을 단순화하기 위해 기능에 따라 그룹화되며, 이러한 그룹핑은 결코 제한적이지 않다. 다양한 예시적인 실시예에서, I/O 컴포넌트(318)는 출력 컴포넌트(326) 및 입력 컴포넌트(328)를 포함할 수 있다. 출력 컴포넌트(326)는 비주얼 컴포넌트(예를 들어, 플라즈마 디스플레이 패널(PDP), 발광 다이오드(LED) 디스플레이, 액정 디스플레이(LCD), 프로젝터, 또는 CRT와 같은 디스플레이), 음향 컴포넌트(예를 들어, 스피커), 햅틱 컴포넌트(예를 들어, 진동 모터, 저항 메커니즘), 기타 신호 생성기 등을 포함할 수 있다. 입력 컴포넌트(328)는 영숫자 입력 컴포넌트(예를 들어, 키보드, 영숫자 입력을 수신하도록 구성된 터치 스크린, 광학 키보드 또는 다른 영숫자 입력 컴포넌트), 포인트 기반 입력 컴포넌트(예를 들어, 마우스, 터치패드, 트랙볼, 조이스틱, 움직임 센서 또는 기타 포인팅 장치), 촉각 입력 컴포넌트(예를 들어, 물리적인 버튼, 터치 또는 터치 제스처의 위치 및/또는 힘을 제공하는 터치 스크린, 또는 기타 촉각 입력 컴포넌트), 오디오 입력 컴포넌트(예를 들어, 마이크로폰) 및 임의의 다른 컴포넌트(이미지, 비디오, 음성)를 포함할 수 있으며, 이들로부터의 입력은 다른 예시적인 언어로의 기계 번역에 사용가능한 예시적인 언어의 텍스트 입력으로 (이 실시예의 일부가 아닌 알고리즘에 의해) 변환될 수 있다.
또 다른 예시적인 실시예에서, I/O 컴포넌트(318)는 (메인) 텍스트 입력 또는 텍스트로 변환될 수 있는 임의의 다른 입력에 대한 메타 정보를 제공할 수 있는 다양한 컴포넌트들 중에서 생체 측정 컴포넌트(330), 움직임 컴포넌트(334), 환경 컴포넌트(336) 또는 포지션 컴포넌트(338)를 포함할 수 있다. 예를 들어, 생체 측정 컴포넌트(330) 사람을 식별(예를 들어, 음성 식별, 망막 식별, 안면 식별, 지문 식별 또는 뇌파 기반 식별)하는 등을 수행하는 컴포넌트를 포함할 수 있다. 움직임 컴포넌트(334)는 예를 들어 입력 텍스트가 운전 또는 여행에 관한 것이라는 메타 정보를 제공할 수 있는 가속 센서 컴포넌트(예를 들어, 가속도계) 등을 포함할 수 있다. 환경 컴포넌트(336)는 예를 들어, 근접 센서 컴포넌트(예를 들어, 입력 텍스트의 토픽으로 연결해주는 메타 정보로서 역할을 수행할 수 있는 가구와 같은 인근 물체를 검출하는 적외선 센서), 또는 주변의 물리적 환경에 대응하는 표시, 측정 또는 신호를 제공할 수 있는 기타 컴포넌트를 포함할 수 있다. 포지션 컴포넌트(338)는 위치 센서 컴포넌트(예를 들어, GPS 수신기 컴포넌트), 고도 센서 컴포넌트(예를 들어, 고도가 도출될 수 있는 기압을 검출하는 고도계 또는 기압계), 방위 센서 컴포넌트(예를 들어, 자력계) 등을 포함할 수 있다.
통신은 다양한 기술을 사용하여 구현될 수 있다. I/O 컴포넌트(318)는 머신(300)을 커플링(322) 및 커플링(324)을 통해 각각 네트워크(332) 또는 장치(320)에 결합시키도록 동작 가능한 통신 컴포넌트(340)를 포함할 수 있다. 예를 들어, 통신 컴포넌트(340)는 네트워크(332)와 인터페이스하는 네트워크 인터페이스 컴포넌트 또는 기타 적절한 장치를 포함할 수 있다. 추가 예에서, 통신 컴포넌트(340)는 유선 통신 컴포넌트, 무선 통신 컴포넌트, 셀룰러 통신 컴포넌트, 근거리 통신(Near Field Communication: NFC) 컴포넌트, 블루투스(Bluetooth®) 컴포넌트(예를 들어, Bluetooth® Low Energy), 와이파이(Wi-Fi®) 컴포넌트, 및 다른 형태를 통해 통신을 제공하는 기타 통신 컴포넌트를 포함할 수 있다. 장치(320)는 다른 머신 또는 임의의 다양한 주변 장치(예를 들어, USB(Universal Serial Bus)를 통해 결합된 주변 장치) 중 임의의 것일 수 있다.
또한, 통신 컴포넌트(340)는 식별자를 검출할 수 있거나 식별자를 검출하도록 동작할 수 있는 컴포넌트를 포함할 수 있다. 예를 들어, 통신 컴포넌트(340)는 무선 주파수 식별(RFID) 태그 판독기 컴포넌트, NFC 스마트 태그 검출 컴포넌트, 광학 판독기 컴포넌트(예를 들어, 범용 제품 코드(UPC) 바코드와 같은 1차원 바코드, QR(Quick Response) 코드, 아즈텍(Aztec) 코드, 데이터 매트릭스, 데이터글리프(Dataglyph), 맥시코드(MaxiCode), PDF417, 울트라(Ultra) 코드, UCC RSS-2D 바코드와 같은 다차원 바코드 및 기타 광학 코드를 검출하는 광학 센서) 또는 음향 검출 컴포넌트(예를 들어, 태깅된 오디오 신호를 식별하는 마이크로폰)를 포함할 수 있다. 또한, 인터넷 프로토콜(IP) 지오로케이션(geo-location)을 통한 위치, Wi-Fi® 신호 삼각 측량을 통한 위치, 특정 위치를 표시할 수 있는 NFC 비콘 신호의 검출을 통한 위치 등과 같은 다양한 정보가 통신 컴포넌트(340)를 통해 도출될 수 있다.
일 예에서, 예를 들어 도 1의 인공신경망 기계 번역 컴포넌트(128)를 포함하는 시퀀스 대 시퀀스 인공신경망 기계 번역(Neural Machine Translation: NMT) 시스템은 제품 타이틀 및 설명으로 이루어진 이-커머스 텍스트와 같은 실제 생활 텍스트를 대상으로 하는 주목 메커니즘(an attention mechanism)으로 트레이닝된다. 제품 카테고리 또는 토픽 정보와 같은 이들 텍스트와 연관된 메타데이터는 도 4에 도시된 아키텍처(400)의 참조번호(402)에 나타낸 바와 같이, 인공신경망에서 추가의 신호로서 사용되는 경우 번역 품질을 크게 향상시킬 수 있다. 이-커머스 세트에 대한 경우, 예를 들어, (BLEU)로 알려져 있는 하나의 기계 번역 품질 측정치는 기준 시스템의 결과에 비해 6% 향상된다. 번역 품질의 향상은 보다 일반적인 음성 번역 작업에서도 얻어질 수 있다.
이-커머스 데이터와 같은 데이터를 번역할 때, 하나의 예시적인 방법은 일반적으로 판매되는 아이템을 기술하는 사용자 생성 텍스트인 제품의 타이틀 및 설명에 초점을 둔다. 이러한 데이터는 기계 번역 연구 커뮤니티에서 일반적으로 고려되는 뉴스와이어 또는 기타 텍스트와는 다르다. 특히 아이템 타이틀은 짧으며(보통 15단어 미만이며), 번역할 필요가 없는 많은 브랜드 이름을 포함하지만, 제품 기능 값 및 특정 약어와 특수 용어도 포함한다. 또한, 다양한 종류의 제품으로 인해 어휘 크기가 매우 클 수 있으며, 다수의 단어는 트레이닝 데이터에서 한 번 또는 몇 번만 관찰된다. 동시에, 이-커머스 데이터에는 향상된 번역 품질을 위해 토픽 적응을 수행하는데 사용될 수 있는, 아이템(예를 들어, 의류 또는 전자제품과 같은 제품 카테고리)에 대해 일반적으로 제공되는 메타 정보를 통해 추가의 컨텍스트가 제공된다.
언뜻 보기에, 정착된 구문 기반의 통계적 기계 번역(SMT) 접근방식이 이-커머스 데이터 번역에 잘 맞는 것으로 보일 수 있다. 예를 들어, 구문 기반 접근법에서, 명확한 단어 및 구문은 이들이 테스트 세트에서 단 한 번만 관찰되더라도 잘 번역될 수 있다. 또한 소스 단어와 타겟 단어 간의 정렬이 일반적으로 가능하고 또한 결정적이기 때문에, 소스 문장의 특정 엔티티를 번역하지 않고 이 엔티티를 문맥에 따라 생성된 타겟 문장으로 전달할 수 있다. 이러한 엔티티에는 숫자, "5S" 또는 ".35XX"와 같은 제품 사양 및 브랜드 이름이 포함될 수 있다. 트레이닝할 때, 이들 엔티티는 플레이스홀더(placeholder)로 대체될 수 있는데, 이는 또한 어휘 크기를 크게 줄인다.
그러나, 본 개시의 (NMT) 접근법은 구문 기반 경계를 넘어서는 컨텍스트를 포착하는데 더욱 강력하며 이용가능한 트레이닝 데이터를 더 잘 이용할 수 있다. 이들 접근법은 제한된 양의 병렬 트레이닝 데이터만이 이용가능한 도메인에 성공적으로 적응할 수 있다. 반대로, 구문 기반 (SMT)에서 토픽 적응을 통한 번역 품질을 향상시키는 것은 어려운데, 그 이유는 데이터가 부족하기도 하고, 또한 제품 카테고리에 대응하는 다수의 토픽이 대안적인 번역들 간의 차이를 명확히 보여줄 수도 있고 또는 없을 수도 있는 주는 점, 단어 순서, 또는 기타 공지된 기계 번역 문제를 해결하는 것 때문이다. 대조적으로, (NMT)는 인공신경망 시스템에서 추가의 메타 정보를 가외의 신호로 사용함으로써 토픽 적응 문제를 더 잘 해결할 수 있다. 따라서, 텍스트 토픽에 대한 추가의 정보는 벡터 공간에 임베딩되고 (NMT) 결정에 직접 영향을 주는데 사용된다.
현재 접근 방식의 보편성을 보여주는 일 예에서, (NMT) 번역 실험은 음성 언어 도메인(이 예에서는 IWSLT 독일어 대 영어 TED 강연) 및 이-커머스 도메인(이 예에서, 영어에서 불어로 제품 타이틀을 번역)에 대해 수행되었으며, 두 데이터 세트 모두는 카테고리/토픽 메타-정보를 갖는다. 일관된 개선이 두 가지 번역 작업 모두에서 이루어졌으며, 이 작업들 중 하나로부터의 최상의 모델은 강력한 구문 기반 시스템을 능가하였다.
이하의 개시내용은 다음과 같이 구성된다. (NMT) 기술이 소개되고 이후 카테고리 또는 토픽 또는 임의의 기타 메타 정보가 (NMT)에서 어떻게 사용될 수 있는지에 대한 자세한 설명이 뒤따른다. 실험 결과는 위에서 언급한 두 가지 번역 작업, 즉 TED 강연의 독일어-영어 회화 번역 작업 및 이-커머스 영어-불어 번역 작업에 대해 제공된다.
인공신경망 기계 번역(NMT)은 반복적인 신경망을 사용하여 데이터를 정렬하고 변환하는 방법을 학습한다. 일 예에서, (NMT) 시스템은 소스 문장이 주어지면 정확한 번역의 조건부 확률을 최대화하기 위해 종단 간(end-to-end) 트레이닝된다. 다른 고급 기능, 특히 주목 메커니즘을 사용하면, (NMT)는 최첨단 구문 기반 번역 시스템과 비교할 수 있는 번역 품질에 도달할 수 있다. 일 예에서,(NMT) 번역 시스템은 도 5에 도시된 바와 같은 인코더-디코더 아키텍처(500)를 사용하는데, 입력 문장이 먼저 고정 길이 표현으로 인코딩되고 이 고정 길이 표현으로부터 디코더는 타겟 단어를 생성한다. 고정 길이 표현 예는 때때로 디코딩을 위한 충분한 정보를 제공하지 않으므로, 도 5에 도시된 예(500)와 같이 주목 메커니즘을 포함하는 정교한 접근법이 사용된다. 이러한 접근법에서, 인공신경망 시스템은 번역 품질을 향상시키기 위해 소스 문장 내의 단어에 대한 소프트 정렬을 생성하는 것을 학습한다.
이-커머스 도메인에서, 예를 들어, 제품 카테고리에 관한 정보(예를 들어, "남성 의류", "휴대 전화", "주방 용품")는 종종 제품 타이틀 및 설명을 수반하며 MT 시스템의 트레이닝시 및 번역 동안 추가의 정보 소스로 사용될 수 있다. 특히, 이러한 메타 정보는 다른 의미를 갖는 동일한 단어의 대체 번역들 간을 명확히 구분하는데 도움을 줄 수 있다. 올바른 번역의 선택은 종종 카테고리에 따라 달라진다. 예를 들어 '스킨'이라는 단어는 '휴대 전화 액세서리' 및 '메이크업' 카테고리에서 다르게 번역되어야 한다. 이-커머스 영역 밖에서, 유사한 토픽 정보가 예를 들어 주어진 문서(온라인 기사, 블로그 게시물, 특허 등)에 대해 태그 및 키워드의 형태로 이용가능할 수 있으며 단어 의미 구별 및 토픽 적응을 위해 사용될 수도 있다. 일반적으로, 입력 문장, 단락 또는 문서와 관련된 임의의 메타 정보는 벡터 형태로 표현될 수 있다면 제안된 접근법에서 사용될 수 있다. 메타 정보가 토픽 또는 카테고리 정보인 예시적인 경우, 동일한 문서가 여러 토픽 또는 카테고리에 속할 수 있다. 하나의 가능한 접근법은 도 5에 도시된 바와 같이 메타 정보를 반복적인 신경망 디코더에 제공하여, 주어진 특정 카테고리 또는 토픽에 적합한 단어를 생성하는 것에 도움을 준다.
예시적인 실시예에서의 하나의 접근법은 카테고리 또는 토픽 정보를 D 차원 벡터로 나타내는 것이며, 여기서 D는 상이한 카테고리의 수이다. 한 문장이 (아마도 다른 확률/가중치로) 여러 카테고리에 속할 수 있기 때문에, 이 벡터는 아래의 제약 수식(1)을 만족시키도록 정규화된다(벡터 길이 정규화와 같은 임의의 다른 유형의 정규화도 적용될 수 있다).
Figure 112022009475913-pat00001
여기서,
Figure 112022009475913-pat00002
는 카테고리 멤버십 벡터를 나타낸다. 이 데이터는 인공신경망 시스템의 디코더에 입력되어 타겟 단어(y)에 대한 제안된 타겟 사후 단어 분포(a proposed target posterior word distribution)에 영향을 미친다. 카테고리 멤버십 벡터가 주어진 조건부 확률은 아래의 수식(2)과 같이 쓸 수 있다.
Figure 112022009475913-pat00003
여기서, ct는 시간 단계(t)에서 주목(attention)에 기초한 소스 문장을 인코딩하기 위한 고정 길이의 시변 벡터이고, st 및 yt는 시간 단계(t)에서 디코더(RNN)의 숨겨진 상태 및 출력을 각각 나타내고, g(.)는 확률 분포를 근사화하는 데 사용되는 선형 함수이다. 본 구현에서, 도 5에 도시된 바와 같이, 피드-포워드 네트워크인 함수(g)를 구축하기 위한 중간 판독 계층이 도입된다.
도 6은 예시적인 실시예에 따른 토픽-인식 인코더-디코더 모델(600)을 도시한다. (NMT) 디코더에서, 토픽 멤버십 벡터는 단어 선택을 향상시키기 위해 각각의 반복 단계에서 판독 계층(도 7의 700)에 입력된다. 도 6에 도시된 바와 같이, 토픽 멤버십 벡터(l)(402)가 소스 문장 단어(X1 내지 XT)의 분산된 표현에 기여하는 컨텍스트 벡터(ct) 및 이전의 디코더 상태(St-1) 이외의 추가 입력으로서 (NMT) 디코더(404)에 공급된다.
Figure 112022009475913-pat00004
, 여기서
Figure 112022009475913-pat00005
여기서, Wr은 본래의 변환 행렬과 l의 연결(concatenation)이며, rt는 판독 계층(700)(도 7)으로부터의 출력이고, ft는 마지막 타겟 단어(yt-1)의 임베딩(embedding)이고, st-1은 마지막 디코더 상태를 지칭하며, Wr 및 br은 각각 선형 변환을 위한 가중치 및 바이어스이다. 수식은 다음과 같이 재정렬될 수 있다.
Figure 112022009475913-pat00006
여기서, Wr은 본래 변환 행렬(
Figure 112022009475913-pat00007
)과 토픽 변환 행렬(Wc)의 연결이다. 그런 다음, 토픽을 입력으로 판독 계층에 추가하는 것은 본래의 판독 계층 출력에 추가의 토픽 벡터(Ec)를 추가하는 것과 등가이다. ct가 원-핫 열 벡터(one-hot column vector)라고 가정하면, Wcct는 Wc에서 특정 열을 검색하는(retrieving) 것과 등가이다. 따라서, 이 추가 벡터(Ec)는 토픽 정보의 토픽 임베딩 또는 연속적인 표현으로 간주될 수 있다.
도 6 및 도 7에 도시된 판독 계층은 마지막 상태(st-1)(606), 마지막 디코딩된 단어 임베딩(ft-1)(608) 및 현재 컨텍스트(610)로부터의 정보를 병합하여 출력(612)을 생성한다. 이는 도 7을 참조하면 맥스-아웃(max-out) 계층(702), 완전 접속 계층(704), 및 소프트맥스(softmax) 계층(706)을 포함하는 얕은 네트워크(shallow network)로 여겨질 수 있다. 디코딩에서, 마지막 디코딩된 단어는 제안된 단어 분포와 관련한 샘플링으로부터 도출된다.
또 다른 예에서, 독일어 대 영어 TED 강연 기록 음성 번역 작업 및 사내 영어 대 불어 이-커머스 번역 작업에 대해 (MT) 실험이 수행되었다. 데이터 전처리의 일부로서, 코퍼스는 토큰화되고 소문자로 처리되었다. 또한 숫자, 제품 사양, 및 기타 특수 기호는 $num과 같은 플레이스홀더로 대체되었다. 이들 플레이스홀더는 트레이닝 동안에 유지되었지만, 그 콘텐츠는 개발 및 테스트 세트에서 XML 마크업으로 보존되었다. 이 콘텐츠는 주목 메커니즘에 기초하여 타겟측에 생성된 플레이스홀더에 삽입되었다. 최상의 번역을 위한 빔 검색에서, 각 플레이스홀더 콘텐츠가 한 번만 삽입되도록 보장되었다. 동일한 메커니즘을 사용하여, 어휘 밖의 (out-of-vocabulary:OOV) 단어가 "있는 그대로(as is)"(즉, 임의의 특별한 알 수 없는 단어 기호를 사용하지 않고) 타겟측으로 전달되었다.
영어 대 불어 TED 강연 데이터 세트의 경우, 각 TED 강연의 토픽 키워드는 정치, 환경, 교육 등 10가지 일반 카테고리에 매핑되었다. 동일한 강연에 포함된 모든 문장은 동일한 카테고리를 공유하고, 하나의 강연은 여러 카테고리에 속할 수 있다. 공식적인 IWSLT 개발 또는 테스트 데이터를 사용하는 대신, 특정 카테고리에 속할 확률이 가장 높은 개발 또는 테스트 문장은 따로 설정된다. TED 강연 데이터 세트의 세부사항은 도 8의 표(800)의 열(802)에 기술되어 있다.
e-커머스 데이터를 공급하는 경우, 한 가지 예시적인 방법은 토픽 정보로서 패션 및 전자제품과 같은 제품 카테고리를, 총 80개의 가장 널리 사용되는 카테고리, 및 덜 빈번한 카테고리들을 모두 하나의 카테고리로 결합한 "기타"라고 불리는 카테고리의 일부로서 사용했다. 트레이닝 세트에는 제품 타이틀과 제품 설명이 모두 포함되었지만, 개발 및 테스트 세트에는 제품 타이틀만이 포함되었다. 이-커머스 데이터 세트의 세부사항은 도 8의 표(800)의 열(804)에 설명되어 있다.
하나의 예시적인 인공신경망 번역 모델은 오픈 소스 MILA 번역 프로젝트를 기반으로 한 "블록" 심층 학습 라이브러리를 사용하여 구현되었다. WMT 2014 영어 대 불어 기계 번역 작업에 대해 트레이닝된 전술한 예시적인 (NMT) 베이스라인 시스템 구현은 (NMT) 접근법에 관한 문헌에서 일반적으로 보고되었던 테스트 세트에 대해 유사한 (BLEU) 점수를 얻었으며, 그에 따라 예시적인 실시예의 출발점에서의 평가는 경쟁력있는 최첨단 (NMT) 시스템이었던 것이라 할 수 있다. 본 명세서에 기술된 카테고리 인식 알고리즘 특징의 구현은 하기에서 설명되는 바와 같이 이러한 강한 베이스라인과 비교하여 개선된 결과를 산출했다.
일 예에서, NMT 인코더 및 디코더의 단어 임베딩 크기는 육백 이십(620)으로 설정되었고 상이한 실험에서 1개 층의 양방향 GRU 인코더 및 2개 층의 GRU 디코더를 사용하는 모델이 사용되었다. 트레이닝 데이터로서, TED 강연 번역 작업에서 상위 5만(50,000)개의 독일어 단어 및 상위 3만(30,000)개의 영어 단어가 트레이닝 어휘로서 선택되었으며, 이-커머스 번역 작업에서는 각각 5만2천(52,000)개의 영어 및 5만2천(52,000)개의 불어 어휘 세트가 제공된다. 트레이닝의 최적화는 아다델타(Adadelta) 알고리즘을 사용하여 수행되었다. 개발 및 테스트 세트 번역을 위해 십(10)의 빔 크기가 선택되었다.
트레이닝을 실시하는 경우, 배치 크기(batch size)가 일백(100)인 그래디언트 디센트(gradient descent)를 사용하여 특정 반복 횟수 후에 모델 파라미터를 저장하였다. 향상된 모델 선택을 위해 약 30개의 연속적인 모델 덤프(model dumps)가 저장되었다. 최상의 반복을 선택하기 위해, 개발 세트에서 (BLEU) 및 번역 편집 레이트(TER)와 같은 확정된 (MT) 평가 측정들의 조합이 계산되었다. 이러한 복합적인 측정은 특히 이-커머스 데이터에 대해 안정적이고 신뢰성 있는 것으로 간주되었다. 모델 선택 후, (BLEU) 및(TER) 메트릭스를 사용하여 테스트 세트에 대한 승리 모델(winning model)이 식별되었다.
12GB RAM의 TITAN X GPU가 우분투 리눅스(Ubuntu Linux) 14.04에서 실험을 실행하는 데 사용되었다. TED 강연 작업에 대한 트레이닝은 수렴될 때까지 1 ~ 2 일이 걸렸다. 이-커머스 데이터에 대한 트레이닝은 수렴할 때까지 약 3일이 걸렸다. 예를 들어, 개발 또는 테스트 데이터에서 1000 문장의 번역을 완료하는 데 약 10 분이 걸릴 수 있으며, 정확한 시간은 어휘 크기 및 셀 크기에 따라 달라진다.
카테고리 정보가 정렬, 단어 선택 등에 영향을 줄 수 있기 때문에, 토픽 또는 카테고리 정보가 (NMT)에 가장 잘 적합한 인스턴스를 식별하기 위해 다양한 접근법을 사용하여 다양한 예시적인 모델을 테스트했다. 일부 예에서는 다양한 유형의 토픽 정보가 사용되었다. 예를 들어, LDA(Latent Dirichlet Analysis)를 통해 자동으로 예측된 카테고리 및 사람이 분류한 카테고리가 예를 들어 도 6에 도시된 인공신경망에 대한 입력으로서 사용되었다. 두 경우 모두에서, 하나의 문장은 여러 카테고리에 속하도록 허용되었다.
이-커머스 번역 작업에 대한 서로 다른 유형의 토픽 정보를 사용한 실험의 결과는 도 9의 표(900)에 나와 있으며, 이 결과는 또한 의사 단어(pseudo word)(접두어가 붙은, 사람이 분류한 카테고리)로서의 카테고리 정보가 디코더에서 예측된 타겟 단어에 대해 긍정적인 영향을 가지기에는 실제 소스 단어와 비교했을 때 충분한 의미론적 및 구문론적 의미(semantic and syntactic meaning)를 가지고 있지 않음을 나타낸다. 이러한 시스템의 (BLEU) 점수는 심지어 18.3 %로 18.6 %의 베이스라인보다 낮다. 대조적으로, 판독 계층에 추가된 사람이 분류한 카테고리는 보다 신뢰할 수 있고 (NMT) 디코더에서 단어 선택에 긍정적인 영향을 줄 수 있으며, 19.7 % BLEU의 결과는 베이스라인보다 월등히 뛰어났다.
80(팔십)의 치수 크기를 갖는 사람이 분류한 카테고리의 원-핫 벡터를 인공신경망의 판독 계층에서 동일한 치수의 LDA 예측 토픽 분포 벡터로 대체하는 것은 도 9의 표(900)에서 알 수 있는 바와 같이 (BLEU) 및 (TER) 점수를 14.5 % BLEU로 크게 악화시켰다. 이것은 제품 타이틀에 대해 치수 80의 LDA를 트레이닝하는 경우 데이터 부족 문제로 인한 것이다.
독일어에서 영어로의 작업시, 사람이 분류한 카테고리 정보를 사용할 때도 품질 향상이 관찰되었다. 본 명세서에서, 상이한 실험으로부터의 카테고리 임베딩(Ec)은 (NMT) 모델로부터 추출되었고, 그들의 코사인 거리가 계산되고, 예를 들어 도 11의 비교 블록 그래프(1100)에 도시된 바와 같이 시각화된다. 상이한 실험에서, 동일한 카테고리는 연속적인 임베딩 공간에서 유사한 표현을 공유하는 경향이 있음을 알 수 있다. 동시에 "정치(polities)"와 "이슈(issues)"와 같은 유사한 카테고리 쌍은 서로에 대해 보다 짧은 거리를 갖는 경향이 있다. 도 10의 표(1000)를 참조하면, "I would like to talk to you this morning about my project, Tidying Up Art" 또는 "...our colleagues at Tufts are mixing models like these with tissue-engineered bone to see how cancer might spread form one part of the body to the next"와 같은 예시적인 구문은 사람이 분류한 카테고리 정보가 사용되는 경우보다 현저하게 개선된 독일어에서 영어로의 (NMT) 번역인 것으로 볼 수 있다.
추가의 비교를 위해, 다른 예시적인 모델들이 번역 작업 모두에 대해 모세 툴킷(Moses toolkit)을 사용하는 구문 기반 (SMT) 모델로서 트레이닝되었다. 하나의 모델은 이중 언어 데이터의 타겟측에 대해 트레이닝된 4-그램 LM, 단어 레벨 및 구문 레벨 번역 확률, 및 최대 왜곡이 6인 왜곡 모델을 포함하여, 표준 모세 기능을 사용했다. 구문 기반의 보다 강력한 베이스라인에는 4-그램 조작 시퀀스 모델의 추가 5가지 기능이 포함되었다.
TED 강연 데이터 작업에 대한 가장 우수한 (NMT) 모델은 카테고리/토픽 정보를 비롯하여 다양한 특징으로 트레이닝된 3개의 상이한 (NMT) 모델의 집합을 사용하여 생성되었으며, 이는 전술한 비교 구문 기반 시스템보다 2.1 (BLEU) 포인트 절대값만큼 능가하였다.
이-커머스 및 TED 강연 작업 모두에서, 본 명세서에 제안된 카테고리 또는 토픽 정보를 제공함으로써, 증가된 (BLEU) 점수와 감소된 번역 편집 레이트(TER)로 표시된 커다란 번역 품질 향상을 가져왔다. 따라서, 본 명세서의 예시는 개선된 번역 품질을 달성하기 위해 인공신경망 기계 번역에서 카테고리 또는 토픽 메타 정보를 이용하는 새로운 방법을 포함한다.
따라서, 일례에서, 텍스트를 번역하기 위한 인공신경망 기계 번역 시스템이 제공된다. 이 시스템은 프로세서들, 및 이 프로세서들 중 적어도 하나에 의해 실행될 때 시스템으로 하여금 특정 동작들을 수행하게 하는 명령어를 저장하는 메모리를 포함할 수 있다. 동작들은 적어도, 인공신경망 시스템에 대한 입력으로서 텍스트를 획득하는 동작과, 인공신경망 시스템에 대한 가외의 입력으로서 메타 정보로 입력 텍스트를 보충하는 동작과, 번역을 위해 메타 정보를 이용하는 입력 텍스트의 번역물로서 인공신경망 시스템의 출력을 사용자에게 전달하는 동작을 포함한다.
일 예에서, 메타 정보는 이-커머스 리스트의 제품 카테고리 또는 토픽을 포함한다. 일 예에서, 인공신경망 기계 번역 시스템은 인코더-디코더 아키텍처를 포함하는데, 이 인코더-디코더 아키텍처에서 입력 문장이 먼저 고정 길이 표현으로 인코딩되고 디코더가 이 고정 길이 표현으로부터 타겟 단어를 생성한다. 일 예에서, 시스템은 각각의 디코더 단계에서 소스 문장 단어들에 소프트 정렬을 제공하는 주목 메커니즘으로 트레이닝된다. 일부 예에서, 동작들은 마지막 반복적인 인공신경망 디코더 상태, 마지막 디코딩된 단어 임베딩, 현재의 컨텍스트 또는 주목 벡터, 및 입력 특정 메타 정보의 벡터 표현으로부터의 정보를 병합하여, 사용자에게 출력의 적어도 일부를 생성하는 동작을 더 포함한다. 더 나아가, 동작들은 소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍, 그리고 이러한 트레이닝 쌍의 문서 또는 코퍼스 중 하나와 연관된 메타 정보를 이용하는 트레이닝 알고리즘을 개별적으로 또는 조합하여 사용함으로써 인공신경망 시스템을 트레이닝하는 동작을 포함한다.
본 개시의 추가적인 예시는 방법을 포함한다. 첨부한 도면 중 도 12를 참조하면, 인공신경망 기계 번역 시스템에서의 방법(1200)은 적어도, 인공신경망 시스템에 대한 입력으로서 텍스트를 얻는 단계(1202)와, 인공신경망 시스템에 대한 가외의 입력으로서 메타 정보로 입력 텍스트를 보충하는 단계(1204)와, 번역을 위해 메타 정보를 이용하는 입력 텍스트의 번역물로서 인공신경망 시스템의 출력을 사용자에게 전달하는 단계(1206)를 포함한다.
메타 정보는 이-커머스 리스트의 제품 카테고리 또는 토픽을 포함한다. 방법(1200)은 입력 문장을 고정 길이 표현으로 인코딩하고 이 고정 길이 표현으로부터 타겟 단어를 생성하는 단계를 더 포함할 수 있다. 방법(1200)은 하나 이상의 디코더 동작에서 소스 문장 단어들에 소프트 정렬을 제공하는 주목 메커니즘으로 인공신경망 기계 번역 시스템을 트레이닝하는 단계를 더 포함할 수 있다. 일 예에서, 방법(1200)은 마지막 반복적인 인공신경망 디코더 상태, 마지막 디코딩된 단어 임베딩, 현재의 컨텍스트 또는 주목 벡터, 및 입력 특정 메타 정보의 벡터 표현으로부터의 정보를 병합하여, 사용자에게 출력의 적어도 일부를 생성하는 단계를 더 포함할 수 있다. 일 예에서, 방법(1200)은 소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍, 그리고 이러한 트레이닝 쌍의 문서 또는 코퍼스 중 하나 이상과 연관된 메타 정보를 이용하는 트레이닝 알고리즘을 개별적으로 또는 조합하여 사용함으로써 인공신경망 시스템을 트레이닝하는 단계를 더 포함한다.
다음의 번호가 매겨진 예는 실시 예이다.
1. 텍스트를 번역하기 위한 인공신경망 기계 번역 시스템으로서,
적어도 하나의 프로세서와,
적어도 하나의 프로세서 중 하나 이상의 프로세서에 의해 실행되는 경우, 시스템으로 하여금 동작들을 수행하게 하는 명령어를 저장하는 메모리를 포함하되, 동작들은
인공신경망 시스템에 대한 입력으로서 텍스트를 얻는 동작과,
인공신경망 시스템에 대한 가외의 입력으로서의 메타 정보로 입력 텍스트를 보충하는 동작과,
번역을 위해 메타 정보를 이용하여, 입력 텍스트의 번역물로서 인공신경망 시스템의 출력을 사용자에게 전달하는 동작을 포함한다.
2. 예시 1의 인공신경망 기계 번역 시스템으로서, 메타 정보는 이-커머스 리스트의 제품 카테고리 또는 토픽을 포함한다.
3. 예시 1 또는 예시 2의 인공신경망 기계 번역 시스템으로서, 인공신경망 기계 번역 시스템은 인코더-디코더 아키텍처를 포함하는데, 이 인코더-디코더 아키텍처에서 입력 문장이 먼저 고정 길이 표현으로 인코딩되고 디코더가 고정 길이 표현으로부터 타겟 단어를 생성한다.
4. 예시 1 내지 예시 3 중 어느 하나의 인공신경망 기계 번역 시스템으로서, 이 시스템은 각각의 디코더 단계에서 소스 문장 단어들에 소프트 정렬을 제공하는 주목 메커니즘으로 트레이닝된다.
5. 예시 1 내지 예시 4 중 어느 하나의 인공신경망 기계 번역 시스템으로서, 상기 동작들은 마지막 반복적인 인공신경망 디코더 상태, 마지막 디코딩된 단어 임베딩, 현재의 컨텍스트 또는 주목 벡터, 및 입력 특정 메타 정보의 벡터 표현으로부터의 정보를 병합하여, 사용자에게 출력의 적어도 일부를 생성하는 동작을 더 포함한다.
6. 예시 1 내지 예시 5 중 어느 하나의 인공신경망 기계 번역 시스템으로서, 동작들은 소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍, 그리고 이러한 트레이닝 쌍의 문서 또는 코퍼스 중 하나와 연관된 메타 정보를 이용하는 트레이닝 알고리즘을 개별적으로 또는 조합하여 사용함으로써 인공신경망 시스템을 트레이닝하는 동작을 포함한다.
7. 인공신경망 기계 번역 시스템에서의 방법으로서,
인공신경망 시스템에 대한 입력으로서 텍스트를 얻는 단계와,
인공신경망 시스템에 대한 가외의 입력으로서의 메타 정보로 입력 텍스트를 보충하는 단계와,
번역을 위해 메타 정보를 이용하여, 입력 텍스트의 번역물로서 인공신경망 시스템의 출력을 사용자에게 전달하는 단계를 포함한다.
8. 예시 7의 방법으로서, 메타 정보는 이-커머스 리스트의 제품 카테고리 또는 토픽을 포함한다.
9. 예시 7 또는 예시 8의 방법으로서, 입력 문장을 고정 길이 표현으로 인코딩하고 타겟 단어를 생성하는 단계를 더 포함한다.
10. 예시 7 내지 예시 9 중 어느 하나의 방법으로서, 하나 이상의 디코더 동작에서 소스 문장 단어들에 소프트 정렬을 제공하는 주목 메커니즘으로 인공신경망 기계 번역 시스템을 트레이닝하는 단계를 더 포함한다.
11. 예시 7 내지 예시 10 중 어느 하나의 방법으로서, 마지막 반복적인 인공신경망 디코더 상태, 마지막 디코딩된 단어 임베딩, 현재의 컨텍스트 또는 주목 벡터, 및 입력 특정 메타 정보의 벡터 표현으로부터의 정보를 병합하여, 사용자에게 출력의 적어도 일부를 생성하는 단계를 더 포함한다.
12. 예시 7 내지 예시 11 중 어느 하나의 방법으로서, 소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍, 그리고 이러한 트레이닝 쌍의 문서 또는 코퍼스 중 하나 이상과 연관된 메타 정보를 이용하는 트레이닝 알고리즘을 개별적으로 또는 조합하여 사용함으로써 인공신경망 기계 번역 시스템을 트레이닝하는 단계를 더 포함한다.
13. 머신에 의해 판독되는 경우, 머신으로 하여금 동작들을 수행하게 하는 명령어를 저장하는 머신 판독가능 저장 매체로서, 동작들은
인공신경망 시스템에 대한 입력으로서 텍스트를 얻는 동작과,
인공신경망 시스템에 대한 가외의 입력으로서 메타 정보로 입력 텍스트를 보충하는 동작과,
번역을 위해 메타 정보를 이용하여, 입력 텍스트의 번역물로서 인공신경망 시스템의 출력을 사용자에게 전달하는 동작을 포함한다.
14. 예시 13의 매체로서, 메타 정보는 이-커머스 리스트의 제품 카테고리 또는 토픽을 포함한다.
15. 예시 13 또는 예시 14의 매체로서, 동작들은 입력 문장을 고정 길이 표현으로 인코딩하고 타겟 단어를 생성하는 동작을 더 포함한다.
16. 예시 13 내지 예시 15 중 어느 하나의 방법으로서, 동작들은 하나 이상의 디코더 동작에서 소스 문장 단어들에 소프트 정렬을 제공하는 주목 메커니즘으로 트레이닝하는 동작을 더 포함한다.
17. 예시 13 내지 예시 16 중 어느 하나의 매체로서, 상기 동작들은 마지막 반복적인 인공신경망 디코더 상태, 마지막 디코딩된 단어 임베딩, 현재의 컨텍스트 또는 주목 벡터, 및 입력 특정 메타 정보의 벡터 표현으로부터의 정보를 병합하여, 사용자에게 출력의 적어도 일부를 생성하는 동작을 더 포함한다.
18. 예시 13 내지 예시 17 중 어느 하나의 매체로서, 동작들은 소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍, 그리고 이러한 트레이닝 쌍의 문서 또는 코퍼스 중 하나 이상과 연관된 메타 정보를 이용하는 트레이닝 알고리즘을 개별적으로 또는 조합하여 사용함으로써 인공신경망 시스템을 트레이닝하는 동작을 포함한다.
19. 명령어를 운반하는 머신 판독가능 매체로서, 명령어는 머신에 의해 판독되는 경우 머신으로 하여금 예시 7 내지 예시 12 중 어느 하나의 방법을 수행하게 한다.
청구대상은 특정 실시예를 참조하여 설명되었지만, 개시된 청구대상의 더 넓은 사싱 및 범위를 벗어나지 않으면서 이들 실시예에 대한 다양한 변경 및 수정이 이루어질 수 있음이 명백할 것이다. 따라서, 명세서 및 도면은 제한적인 의미라기보다는 예시적인 것으로 간주되어야 한다. 본 명세서의 일부를 형성하는 첨부된 도면은 본 발명이 실시될 수 있는 특정 실시예를 설명하기 위한 것이지 제한하는 것은 아니다. 예시된 실시예는 당업자가 본 명세서에 개시된 교시를 실시할 수 있도록 충분히 상세하게 설명되어 있다. 본 개시의 범위를 벗어나지 않고 구조적 및 논리적 대체 및 변경이 이루어질 수 있도록 다른 실시예가 이용되고 이로부터 유도될 수 있다. 따라서, 본 설명은 제한적인 의미로 받아들여서는 안되며, 다양한 실시예의 범위는 첨부된 특허 청구범위 및 그러한 특허 청구 범위가 부여되는 등가물의 전체 범위에 의해서만 정의된다.
본 발명의 이러한 실시예는 단지 편의상 그리고 사실 둘 이상의 발명 또는 발명 개념이 있는 경우 본 출원의 범주를 임의의 단일 발명 또는 발명 개념으로 자발적으로 제한하는 일없이 본 명세서에서 "발명"이라는 용어로 개별적으로 및/또는 집합적으로 지칭될 수 있다. 따라서, 특정 실시예가 본 명세서에서 도시되고 설명되었지만, 동일한 목적을 달성하도록 계산된 임의의 구성이 도시된 특정 실시예를 대체할 수 있음을 이해해야 한다. 본 개시는 다양한 실시예의 임의의 및 모든 개조 또는 변형을 포함하도록 의도된다. 전술한 실시예의 조합 및 본원에서 구체적으로 기술되지 않은 다른 실시예는 상기 설명을 검토하면 당업자에게 명백할 것이다.

Claims (13)

  1. 텍스트를 번역하기 위한 번역 시스템으로서,
    프로세서들과,
    상기 프로세서들 중 적어도 하나의 프로세서에 의해 실행되는 경우, 상기 번역 시스템으로 하여금 동작들을 수행하게 하는 명령어를 저장하는 메모리를 포함하되, 상기 동작들은
    소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍, 또는 소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍의 문서 또는 코퍼스 중 하나와 연관된 제1 메타 정보를 이용하는 트레이닝 알고리즘을 사용하여 인공신경망 시스템을 트레이닝하는 동작과,
    입력 텍스트의 번역을 위해 상기 인공신경망 시스템에 텍스트를 입력하는 동작 - 상기 입력 텍스트는 타겟 언어 내의 둘 이상의 타겟 단어로 번역가능한 소스 언어 내의 적어도 하나의 소스 단어를 포함하고, 상기 타겟 언어는 상기 소스 언어와 상이함 - 과,
    상기 입력 텍스트와 대응하는 제2 메타 정보를 상기 인공신경망 시스템에 입력하는 동작 - 상기 제2 메타 정보는 번역의 컨텍스트를 나타내고, 전자 상거래 리스팅의 제품 카테고리와 상기 전자 상거래 리스팅의 토픽 중 적어도 하나를 포함함 - 과,
    상기 인공신경망 시스템을 사용하여 번역을 위한 타겟 단어를 선택하는 동작 - 상기 타겟 단어는 상기 제2 메타 정보에 적어도 부분적으로 기초하여 상기 타겟 언어의 상기 둘 이상의 타겟 단어로부터 선택됨 - 과,
    상기 둘 이상의 타겟 단어 중의 상기 선택된 타겟 단어를 포함하는 상기 입력 텍스트의 번역을 포함하는 상기 인공신경망 시스템의 출력을 전달하는 동작 - 상기 번역은 상기 제2 메타 정보에 적어도 부분적으로 기초하여 생성됨 - 을 포함하는,
    번역 시스템.
  2. 제1항에 있어서,
    입력 문장이 먼저 고정 길이 표현으로 인코딩되고 디코더가 상기 고정 길이 표현으로부터 타겟 단어를 생성하는 인코더-디코더 아키텍처
    를 더 포함하는 번역 시스템.
  3. 제1항에 있어서,
    상기 인공신경망 시스템은 각각의 디코더 단계에서 소스 문장 단어들에 소프트 정렬을 제공하는 주목 메커니즘(attention mechanism)으로 트레이닝되는
    번역 시스템.
  4. 제1항에 있어서,
    상기 동작들은 마지막 반복적인 인공신경망 디코더 상태(a last recurrent neural network decoder state), 마지막 디코딩된 단어 임베딩, 현재의 컨텍스트 또는 주목 벡터, 및 상기 제2 메타 정보의 벡터 표현으로부터의 정보를 병합하여, 상기 출력의 적어도 일부를 생성하는 동작을 더 포함하는
    번역 시스템.
  5. 번역 시스템에서의 방법으로서,
    소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍, 또는 소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍의 문서 또는 코퍼스 중 하나와 연관된 제1 메타 정보를 이용하는 트레이닝 알고리즘을 사용하여 인공신경망 시스템을 트레이닝하는 단계와,
    입력 텍스트의 번역을 위해 상기 인공신경망 시스템에 텍스트를 입력하는 단계 - 상기 입력 텍스트는 타겟 언어 내의 둘 이상의 타겟 단어로 번역가능한 소스 언어 내의 적어도 하나의 소스 단어를 포함하고, 상기 타겟 언어는 상기 소스 언어와 상이함 - 와,
    상기 입력 텍스트와 대응하는 제2 메타 정보를 상기 인공신경망 시스템에 입력하는 단계 - 상기 제2 메타 정보는 번역의 컨텍스트를 나타내고, 전자 상거래 리스팅의 제품 카테고리와 상기 전자 상거래 리스팅의 토픽 중 적어도 하나를 포함함 - 와,
    상기 인공신경망 시스템을 사용하여 번역을 위한 타겟 단어를 선택하는 단계 - 상기 타겟 단어는 상기 제2 메타 정보에 적어도 부분적으로 기초하여 상기 타겟 언어의 상기 둘 이상의 타겟 단어로부터 선택됨 - 와,
    상기 둘 이상의 타겟 단어 중의 상기 선택된 타겟 단어를 포함하는 상기 입력 텍스트의 번역을 포함하는 상기 인공신경망 시스템의 출력을 전달하는 단계 - 상기 번역은 상기 제2 메타 정보에 적어도 부분적으로 기초하여 생성됨 -
    를 포함하는 방법.
  6. 제5항에 있어서,
    입력 문장을 고정 길이 표현으로 인코딩하고 타겟 단어를 생성하는 단계
    를 더 포함하는 방법.
  7. 제5항에 있어서,
    하나 이상의 디코딩 동작에서 소스 문장 단어들에 소프트 정렬을 제공하는 주목 메커니즘(attention mechanism)으로 상기 인공신경망 시스템을 트레이닝하는 단계
    를 더 포함하는 방법.
  8. 제5항에 있어서,
    마지막 반복적인 인공신경망 디코더 상태(a last recurrent neural network decoder state), 마지막 디코딩된 단어 임베딩, 현재의 컨텍스트 또는 주목 벡터, 및 상기 제2 메타 정보의 벡터 표현으로부터의 정보를 병합하여, 상기 출력의 적어도 일부를 생성하는 단계
    를 더 포함하는 방법.
  9. 명령어를 포함하는 머신 판독가능 저장 매체로서,
    상기 명령어는 머신에 의해 판독될 경우, 상기 머신으로 하여금 동작들을 수행하게 하되, 상기 동작들은 적어도
    소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍, 또는 소스 언어 문장 및 연관된 타겟 언어 사람 번역의 트레이닝 쌍의 문서 또는 코퍼스 중 하나와 연관된 제1 메타 정보를 이용하는 트레이닝 알고리즘을 사용하여 인공신경망 시스템을 트레이닝하는 동작과,
    입력 텍스트의 번역을 위해 상기 인공신경망 시스템에 텍스트를 입력하는 동작 - 상기 입력 텍스트는 타겟 언어 내의 둘 이상의 타겟 단어로 번역가능한 소스 언어 내의 적어도 하나의 소스 단어를 포함하고, 상기 타겟 언어는 상기 소스 언어와 상이함 - 과,
    상기 입력 텍스트와 대응하는 제2 메타 정보를 상기 인공신경망 시스템에 입력하는 동작 - 상기 제2 메타 정보는 번역의 컨텍스트를 나타내고, 전자 상거래 리스팅의 제품 카테고리와 상기 전자 상거래 리스팅의 토픽 중 적어도 하나를 포함함 - 과,
    상기 인공신경망 시스템을 사용하여 번역을 위한 타겟 단어를 선택하는 동작 - 상기 타겟 단어는 상기 제2 메타 정보에 적어도 부분적으로 기초하여 상기 타겟 언어의 상기 둘 이상의 타겟 단어로부터 선택됨 - 과,
    상기 둘 이상의 타겟 단어 중의 상기 선택된 타겟 단어를 포함하는 상기 입력 텍스트의 번역을 포함하는 상기 인공신경망 시스템의 출력을 전달하는 동작 - 상기 번역은 상기 제2 메타 정보에 적어도 부분적으로 기초하여 생성됨 - 을 포함하는,
    머신 판독가능 저장 매체.
  10. 제9항에 있어서,
    상기 동작들은 입력 문장을 고정 길이 표현으로 인코딩하고 타겟 단어를 생성하는 동작을 더 포함하는
    머신 판독가능 저장 매체.
  11. 제9항에 있어서,
    상기 동작들은 하나 이상의 디코딩 동작에서 소스 문장 단어들에 소프트 정렬을 제공하는 주목 메커니즘(attention mechanism)으로 상기 인공신경망 시스템을 트레이닝하는 동작을 더 포함하는
    머신 판독가능 저장 매체.
  12. 제9항에 있어서,
    상기 동작들은 마지막 반복적인 인공신경망 디코더 상태(a last recurrent neural network decoder state), 마지막 디코딩된 단어 임베딩, 현재의 컨텍스트 또는 주목 벡터, 및 상기 제2 메타 정보의 벡터 표현으로부터의 정보를 병합하여, 상기 출력의 적어도 일부를 생성하는 동작을 더 포함하는
    머신 판독가능 저장 매체.
  13. 제1항에 있어서,
    상기 입력 텍스트 및 상기 제2 메타 정보는 클라이언트 장치로부터 수신되고, 상기 인공신경망 시스템의 상기 출력은 상기 클라이언트 장치로 전달되는
    번역 시스템.
KR1020227002797A 2016-05-06 2017-05-02 인공신경망 기계 번역시 메타 정보를 이용하는 기법 KR102463567B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201662332608P 2016-05-06 2016-05-06
US62/332,608 2016-05-06
PCT/US2017/030552 WO2017192522A1 (en) 2016-05-06 2017-05-02 Using meta-information in neural machine translation
KR1020217001615A KR102357322B1 (ko) 2016-05-06 2017-05-02 인공신경망 기계 번역시 메타 정보를 이용하는 기법

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020217001615A Division KR102357322B1 (ko) 2016-05-06 2017-05-02 인공신경망 기계 번역시 메타 정보를 이용하는 기법

Publications (2)

Publication Number Publication Date
KR20220017001A KR20220017001A (ko) 2022-02-10
KR102463567B1 true KR102463567B1 (ko) 2022-11-07

Family

ID=60203329

Family Applications (3)

Application Number Title Priority Date Filing Date
KR1020187035351A KR102206588B1 (ko) 2016-05-06 2017-05-02 인공신경망 기계 번역시 메타 정보를 이용하는 기법
KR1020217001615A KR102357322B1 (ko) 2016-05-06 2017-05-02 인공신경망 기계 번역시 메타 정보를 이용하는 기법
KR1020227002797A KR102463567B1 (ko) 2016-05-06 2017-05-02 인공신경망 기계 번역시 메타 정보를 이용하는 기법

Family Applications Before (2)

Application Number Title Priority Date Filing Date
KR1020187035351A KR102206588B1 (ko) 2016-05-06 2017-05-02 인공신경망 기계 번역시 메타 정보를 이용하는 기법
KR1020217001615A KR102357322B1 (ko) 2016-05-06 2017-05-02 인공신경망 기계 번역시 메타 정보를 이용하는 기법

Country Status (4)

Country Link
US (3) US11238348B2 (ko)
KR (3) KR102206588B1 (ko)
CN (1) CN109074242A (ko)
WO (1) WO2017192522A1 (ko)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102206588B1 (ko) 2016-05-06 2021-01-22 이베이 인크. 인공신경망 기계 번역시 메타 정보를 이용하는 기법
US10706351B2 (en) * 2016-08-30 2020-07-07 American Software Safety Reliability Company Recurrent encoder and decoder
US10546066B2 (en) * 2016-08-31 2020-01-28 Microsoft Technology Licensing, Llc End-to-end learning of dialogue agents for information access
US10713593B2 (en) * 2016-11-04 2020-07-14 Google Llc Implicit bridging of machine learning tasks
US11055264B2 (en) * 2017-05-10 2021-07-06 Dropbox, Inc. Automatically coordinating application schema changes in a distributed data storage system
US11631026B2 (en) * 2017-07-13 2023-04-18 Meta Platforms, Inc. Systems and methods for neural embedding translation
US10380236B1 (en) * 2017-09-22 2019-08-13 Amazon Technologies, Inc. Machine learning system for annotating unstructured text
KR102509822B1 (ko) * 2017-09-25 2023-03-14 삼성전자주식회사 문장 생성 방법 및 장치
KR102424514B1 (ko) * 2017-12-04 2022-07-25 삼성전자주식회사 언어 처리 방법 및 장치
CN107967263A (zh) 2017-12-11 2018-04-27 中译语通科技股份有限公司 一种机器翻译数字泛化方法及系统、计算机、计算机程序
KR102462426B1 (ko) 2017-12-14 2022-11-03 삼성전자주식회사 발화의 의미를 분석하기 위한 전자 장치 및 그의 동작 방법
JP7122835B2 (ja) * 2018-02-14 2022-08-22 株式会社Nttドコモ 機械翻訳装置、翻訳学習済みモデル及び判定学習済みモデル
JP6969443B2 (ja) * 2018-02-27 2021-11-24 日本電信電話株式会社 学習品質推定装置、方法、及びプログラム
CN108509539B (zh) * 2018-03-16 2021-08-17 联想(北京)有限公司 信息处理方法电子设备
US20190354852A1 (en) * 2018-05-17 2019-11-21 Advanced Micro Devices, Inc. Stress indicators associated with instances of input data for training neural networks
CN108763227A (zh) * 2018-05-21 2018-11-06 电子科技大学 一种基于分块机制的机器翻译方法
US10664472B2 (en) 2018-06-27 2020-05-26 Bitdefender IPR Management Ltd. Systems and methods for translating natural language sentences into database queries
CN109062907B (zh) * 2018-07-17 2022-07-12 苏州大学 融入依存关系的神经机器翻译方法
US10678252B2 (en) * 2018-08-09 2020-06-09 GM Global Technology Operations LLC Systems, apparatus, and methods for embedded encodings of contextual information using a neural network with vector space modeling
US10963652B2 (en) * 2018-12-11 2021-03-30 Salesforce.Com, Inc. Structured text translation
KR20200075615A (ko) * 2018-12-18 2020-06-26 삼성전자주식회사 기계 번역 방법 및 장치
US11106873B2 (en) * 2019-01-22 2021-08-31 Sap Se Context-based translation retrieval via multilingual space
EP3899807A1 (en) * 2019-01-23 2021-10-27 Google LLC Generating neural network outputs using insertion operations
CN109670191B (zh) * 2019-01-24 2023-03-07 语联网(武汉)信息技术有限公司 机器翻译的校准优化方法、装置与电子设备
US10997374B2 (en) * 2019-03-22 2021-05-04 Fortia Financial Solutions Generation of natural language text from structured data using a fusion model
SG11202110759YA (en) * 2019-03-28 2021-10-28 Agency Science Tech & Res A method for pre-processing a sequence of words for neural machine translation
CN109977430B (zh) * 2019-04-04 2023-06-02 科大讯飞股份有限公司 一种文本翻译方法、装置及设备
US10824794B2 (en) * 2019-04-08 2020-11-03 Paypal, Inc. Process for creating a fixed length representation of a variable length input
JP6772394B1 (ja) * 2019-05-21 2020-10-21 日本電信電話株式会社 情報学習装置、情報処理装置、情報学習方法、情報処理方法及びプログラム
KR102205430B1 (ko) * 2019-08-05 2021-01-20 에스케이텔레콤 주식회사 인공 신경망을 이용한 학습 방법
CN110807335B (zh) * 2019-09-02 2023-06-30 腾讯科技(深圳)有限公司 基于机器学习的翻译方法、装置、设备及存储介质
CN112560398B (zh) * 2019-09-26 2023-07-04 百度在线网络技术(北京)有限公司 一种文本生成方法及装置
KR20210037307A (ko) 2019-09-27 2021-04-06 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법
WO2021064907A1 (ja) * 2019-10-02 2021-04-08 日本電信電話株式会社 文生成装置、文生成学習装置、文生成方法、文生成学習方法及びプログラム
KR20210067294A (ko) * 2019-11-29 2021-06-08 한국전자통신연구원 자동 번역 장치 및 그 방법
CN111126077B (zh) * 2019-12-30 2023-04-25 东软集团股份有限公司 判断医疗术语一致的方法、装置、存储介质及处理器
CN111597830A (zh) * 2020-05-20 2020-08-28 腾讯科技(深圳)有限公司 基于多模态机器学习的翻译方法、装置、设备及存储介质
US11681880B2 (en) * 2020-07-07 2023-06-20 Dell Products L.P. Auto transformation of network data models using neural machine translation
US11687724B2 (en) * 2020-09-30 2023-06-27 International Business Machines Corporation Word sense disambiguation using a deep logico-neural network
CN114330374A (zh) * 2020-10-10 2022-04-12 华为技术有限公司 融合场景感知机器翻译方法、存储介质及电子设备
CN112287666B (zh) * 2020-10-20 2023-07-25 哈尔滨工程大学 一种基于元信息的语料库主题分布计算方法
KR20220055954A (ko) * 2020-10-27 2022-05-04 삼성전자주식회사 전자 장치 및 그 제어 방법
CN113033218B (zh) * 2021-04-16 2023-08-15 沈阳雅译网络技术有限公司 一种基于神经网络结构搜索的机器翻译译文质量评估方法
US11783136B2 (en) * 2021-04-30 2023-10-10 Lilt, Inc. End-to-end neural word alignment process of suggesting formatting in machine translations

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230898A1 (en) * 2003-05-13 2004-11-18 International Business Machines Corporation Identifying topics in structured documents for machine translation
JP2015170094A (ja) * 2014-03-06 2015-09-28 株式会社Nttドコモ 翻訳装置及び翻訳方法

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5504675A (en) 1994-12-22 1996-04-02 International Business Machines Corporation Method and apparatus for automatic selection and presentation of sales promotion programs
US5774868A (en) 1994-12-23 1998-06-30 International Business And Machines Corporation Automatic sales promotion selection system and method
US6085162A (en) * 1996-10-18 2000-07-04 Gedanken Corporation Translation system and method in which words are translated by a specialized dictionary and then a general dictionary
JP2000516749A (ja) * 1997-06-26 2000-12-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 語構成源テキストを語構成目標テキストに翻訳する機械構成の方法及び装置
US20070094268A1 (en) * 2005-10-21 2007-04-26 Tabe Joseph A Broadband centralized transportation communication vehicle for extracting transportation topics of information and monitoring terrorist data
US6466975B1 (en) * 1999-08-23 2002-10-15 Digital Connexxions Corp. Systems and methods for virtual population mutual relationship management using electronic computer driven networks
US6604101B1 (en) * 2000-06-28 2003-08-05 Qnaturally Systems, Inc. Method and system for translingual translation of query and search and retrieval of multilingual information on a computer network
KR20010008391A (ko) * 2000-11-30 2001-02-05 최세현 인터넷을 통한 외국어 학습 방법 및 시스템
US6782375B2 (en) * 2001-01-16 2004-08-24 Providian Bancorp Services Neural network based decision processor and method
DE10348920A1 (de) * 2003-10-21 2005-05-25 Bayer Materialscience Ag Computersystem und Verfahren zur mehrsprachigen assoziativen Suche
US7643985B2 (en) * 2005-06-27 2010-01-05 Microsoft Corporation Context-sensitive communication and translation methods for enhanced interactions and understanding among speakers of different languages
US8126702B2 (en) * 2005-08-01 2012-02-28 Sap Ag Translating data objects
KR101335595B1 (ko) * 2006-12-11 2013-12-02 강민수 플레이 되고 있는 동영상 내용 맞춤형 광고 콘텐츠 제공시스템
US9098812B2 (en) * 2009-04-14 2015-08-04 Microsoft Technology Licensing, Llc Faster minimum error rate training for weighted linear models
KR101640024B1 (ko) 2009-09-23 2016-07-15 삼성전자주식회사 사용자의 상황에 기반한 휴대용 통역 장치 및 방법
US20110248914A1 (en) * 2010-04-11 2011-10-13 Sherr Alan B System and Method for Virtual Touch Typing
JP5747508B2 (ja) * 2011-01-05 2015-07-15 富士ゼロックス株式会社 対訳情報検索装置、翻訳装置及びプログラム
US9684653B1 (en) * 2012-03-06 2017-06-20 Amazon Technologies, Inc. Foreign language translation using product information
US9519858B2 (en) 2013-02-10 2016-12-13 Microsoft Technology Licensing, Llc Feature-augmented neural networks and applications of same
US20140358631A1 (en) * 2013-06-03 2014-12-04 24/7 Customer, Inc. Method and apparatus for generating frequently asked questions
US10521455B2 (en) * 2014-03-18 2019-12-31 Nanobi Data And Analytics Private Limited System and method for a neural metadata framework
WO2016065327A1 (en) * 2014-10-24 2016-04-28 Google Inc. Neural machine translation systems with rare word processing
US10497053B2 (en) * 2015-02-27 2019-12-03 3D Product Imaging Inc. Augmented reality E-commerce
WO2016162872A1 (en) * 2015-04-08 2016-10-13 Elady Limited Data transformation system and method
US10091140B2 (en) * 2015-05-31 2018-10-02 Microsoft Technology Licensing, Llc Context-sensitive generation of conversational responses
US10268684B1 (en) * 2015-09-28 2019-04-23 Amazon Technologies, Inc. Optimized statistical machine translation system with rapid adaptation capability
US9875258B1 (en) * 2015-12-17 2018-01-23 A9.Com, Inc. Generating search strings and refinements from an image
US10032463B1 (en) * 2015-12-29 2018-07-24 Amazon Technologies, Inc. Speech processing with learned representation of user interaction history
KR102206588B1 (ko) 2016-05-06 2021-01-22 이베이 인크. 인공신경망 기계 번역시 메타 정보를 이용하는 기법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040230898A1 (en) * 2003-05-13 2004-11-18 International Business Machines Corporation Identifying topics in structured documents for machine translation
JP2015170094A (ja) * 2014-03-06 2015-09-28 株式会社Nttドコモ 翻訳装置及び翻訳方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
이창기 외, "문자 단위의 Neural Machine Translation", 2015.*

Also Published As

Publication number Publication date
KR102206588B1 (ko) 2021-01-22
KR20190004790A (ko) 2019-01-14
KR102357322B1 (ko) 2022-02-08
KR20220017001A (ko) 2022-02-10
KR20210019562A (ko) 2021-02-22
US11783197B2 (en) 2023-10-10
US20170323203A1 (en) 2017-11-09
US20220076132A1 (en) 2022-03-10
WO2017192522A1 (en) 2017-11-09
US20240037405A1 (en) 2024-02-01
CN109074242A (zh) 2018-12-21
US11238348B2 (en) 2022-02-01

Similar Documents

Publication Publication Date Title
KR102463567B1 (ko) 인공신경망 기계 번역시 메타 정보를 이용하는 기법
US11227004B2 (en) Semantic category classification
US11593558B2 (en) Deep hybrid neural network for named entity recognition
CN110692048B (zh) 会话中任务改变的检测
CN109716334B (zh) 选择下一用户提示类型
CN110622153B (zh) 用于查询分割的方法和系统
WO2020263711A1 (en) Memory grounded conversational reasoning and question answering for assistant systems
US20220129556A1 (en) Systems and Methods for Implementing Smart Assistant Systems
US20170177703A1 (en) Automatic taxonomy mapping using sequence semantic embedding
KR20180095910A (ko) 시맨틱 의미 벡터를 사용하는 교차 언어적 검색
US20150286634A1 (en) Method and system for providing translated result
CN106104522B (zh) 用于加强任意用户内容的方法、系统和计算机存储设备
KR20200128429A (ko) 자동 로트 분류
US20220044111A1 (en) Automatic flow generation from customer tickets using deep neural networks
US11314827B2 (en) Description set based searching
US11397846B1 (en) Intelligent identification and modification of references in content
US20240127008A1 (en) Multi-lingual natural language generation
US20240104055A1 (en) Method and system of intelligently generating a title for a group of documents
US20230125711A1 (en) Encoding a job posting as an embedding using a graph neural network
CN116894076A (zh) 生成用于机器学习的基于用户的训练数据

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant