KR102287167B1 - 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치 및 그 동작 방법 - Google Patents
번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치 및 그 동작 방법 Download PDFInfo
- Publication number
- KR102287167B1 KR102287167B1 KR1020190132697A KR20190132697A KR102287167B1 KR 102287167 B1 KR102287167 B1 KR 102287167B1 KR 1020190132697 A KR1020190132697 A KR 1020190132697A KR 20190132697 A KR20190132697 A KR 20190132697A KR 102287167 B1 KR102287167 B1 KR 102287167B1
- Authority
- KR
- South Korea
- Prior art keywords
- entity name
- word
- sentence
- translation
- new
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/42—Data-driven translation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
- G06F40/295—Named entity recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치 및 그 동작 방법이 개시된다. 본 발명에 따른 번역 처리 장치 및 그 동작 방법은 번역 엔진에 반영되어 있지 않은 신규 개체명과 그에 대한 번역 단어를 상기 번역 엔진에 반영되어 있는 복수의 개체명들 중 가장 유사한 제1 개체명과 함께 매칭시켜 신규 개체명 테이블에 기록해 둔 후 상기 신규 개체명이 포함된 문장에 대한 번역 명령이 인가되면, 상기 문장에서 상기 신규 개체명을 상기 제1 개체명으로 변환하여 번역을 수행한 후 번역된 문장에서 상기 제1 개체명을 다시 상기 신규 개체명에 대한 번역 단어로 대체함으로써, 상기 번역 엔진에 반영되어 있지 않은 신규 개체명에 대해 상기 번역 엔진에 대한 추가 학습 없이도 자연스러운 번역이 가능하도록 지원할 수 있다.
Description
본 발명은 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치 및 그 동작 방법에 대한 것이다.
최근, 다양한 분야에서 기계 번역의 활용이 증대됨에 따라 고성능의 번역 엔진들이 등장하고 있다.
아울러, 최근에는 인공지능 기술의 발달로 인해 딥러닝 기반의 기계학습을 통해 번역 엔진을 구축하는 경우가 증가하고 있다. 이러한 번역 엔진은 다수의 문장들을 기초로 기계학습이 수행된 엔진이기 때문에 번역의 품질이 높은 장점이 있다.
이러한 번역 엔진은 번역의 대상이 되는 문장 내에 학습되지 않은 새로운 단어가 존재하는 경우, 제대로 된 번역을 수행하지 못하는 문제가 있다.
특히, 인명, 지명, 기관명 등과 같은 개체명은 새롭게 생성되는 경우가 많다는 점에서 이러한 신규 개체명이 포함된 문장을 기 학습된 번역 엔진으로 번역을 수행하게 되면, 상기 신규 개체명에 대한 적절한 번역 단어가 생성되지 못할 수 있다.
신규 개체명에 대한 번역이 가능하도록 하기 위해서는 신규 개체명에 대한 기계학습을 추가로 수행함으로써, 번역 엔진을 개선시킬 수 있지만, 이미 구축된 번역 엔진을 다시 학습시키는 것은 효율성 측면에서 적절하지 않을 수 있다.
따라서, 기존에 존재하는 번역 엔진에 대한 추가 학습을 수행하지 않고서도 신규 개체명에 대한 번역 데이터를 번역 엔진에 연동시킴으로써, 신규 개체명이 포함된 문장에 대한 번역이 자연스럽게 수행될 수 있도록 지원하기 위한 번역 처리 기술의 연구가 필요하다.
본 발명에 따른 번역 처리 장치 및 그 동작 방법은 번역 엔진에 반영되어 있지 않은 신규 개체명과 그에 대한 번역 단어를 상기 번역 엔진에 반영되어 있는 복수의 개체명들 중 가장 유사한 제1 개체명과 함께 매칭시켜 신규 개체명 테이블에 기록해 둔 후 상기 신규 개체명이 포함된 문장에 대한 번역 명령이 인가되면, 상기 문장에서 상기 신규 개체명을 상기 제1 개체명으로 변환하여 번역을 수행한 후 번역된 문장에서 상기 제1 개체명을 다시 상기 신규 개체명에 대한 번역 단어로 대체함으로써, 상기 번역 엔진에 반영되어 있지 않은 신규 개체명에 대해 상기 번역 엔진에 대한 추가 학습 없이도 자연스러운 번역이 가능하도록 지원하고자 한다.
본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치는 번역 엔진 - 상기 번역 엔진은 제1 언어의 문장을 제2 언어의 문장으로 기계 번역 가능하도록 미리 학습된 엔진임 - 에 반영되어 있지 않은 상기 제1 언어로 구성된 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 상기 제2 언어로의 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 번역 엔진을 통해 번역 가능한 것으로 미리 학습되어 있는 복수의 개체명들 중 상기 신규 개체명과의 유사도가 최대인 제1 개체명을 선택하는 개체명 선택부, 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어를 기록하면서, 상기 신규 개체명에 대해 상기 제1 개체명에 대한 단어를 대응 개체명으로 기록하는 기록부, 상기 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어 및 상기 제1 개체명에 대한 단어가 기록된 후 상기 신규 개체명에 대한 단어가 포함된 제1 문장 - 상기 제1 문장은 상기 제1 언어로 구성되어 있음 - 이 입력되면서, 상기 제1 문장의 상기 제2 언어로의 번역 명령이 인가되면, 상기 신규 개체명 테이블을 참조하여 상기 제1 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체하는 단어 대체부, 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 제1 문장을 상기 번역 엔진에 기초하여 제2 언어로 구성된 제1 번역 문장으로 기계 번역하는 기계 번역부 및 상기 제1 번역 문장에서 상기 제1 개체명에 대한 번역 단어를 상기 신규 개체명 테이블을 참조하여 상기 신규 개체명에 대한 번역 단어로 다시 대체함으로써, 상기 제1 문장에 대한 최종 번역 문장을 생성하는 번역 처리부를 포함한다.
또한, 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법은 번역 엔진 - 상기 번역 엔진은 제1 언어의 문장을 제2 언어의 문장으로 기계 번역 가능하도록 미리 학습된 엔진임 - 에 반영되어 있지 않은 상기 제1 언어로 구성된 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 상기 제2 언어로의 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 번역 엔진을 통해 번역 가능한 것으로 미리 학습되어 있는 복수의 개체명들 중 상기 신규 개체명과의 유사도가 최대인 제1 개체명을 선택하는 단계, 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어를 기록하면서, 상기 신규 개체명에 대해 상기 제1 개체명에 대한 단어를 대응 개체명으로 기록하는 단계, 상기 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어 및 상기 제1 개체명에 대한 단어가 기록된 후 상기 신규 개체명에 대한 단어가 포함된 제1 문장 - 상기 제1 문장은 상기 제1 언어로 구성되어 있음 - 이 입력되면서, 상기 제1 문장의 상기 제2 언어로의 번역 명령이 인가되면, 상기 신규 개체명 테이블을 참조하여 상기 제1 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체하는 단계, 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 제1 문장을 상기 번역 엔진에 기초하여 제2 언어로 구성된 제1 번역 문장으로 기계 번역하는 단계 및 상기 제1 번역 문장에서 상기 제1 개체명에 대한 번역 단어를 상기 신규 개체명 테이블을 참조하여 상기 신규 개체명에 대한 번역 단어로 다시 대체함으로써, 상기 제1 문장에 대한 최종 번역 문장을 생성하는 단계를 포함한다.
본 발명에 따른 번역 처리 장치 및 그 동작 방법은 번역 엔진에 반영되어 있지 않은 신규 개체명과 그에 대한 번역 단어를 상기 번역 엔진에 반영되어 있는 복수의 개체명들 중 가장 유사한 제1 개체명과 함께 매칭시켜 신규 개체명 테이블에 기록해 둔 후 상기 신규 개체명이 포함된 문장에 대한 번역 명령이 인가되면, 상기 문장에서 상기 신규 개체명을 상기 제1 개체명으로 변환하여 번역을 수행한 후 번역된 문장에서 상기 제1 개체명을 다시 상기 신규 개체명에 대한 번역 단어로 대체함으로써, 상기 번역 엔진에 반영되어 있지 않은 신규 개체명에 대해 상기 번역 엔진에 대한 추가 학습 없이도 자연스러운 번역이 가능하도록 지원할 수 있다.
도 1은 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법을 도시한 순서도이다.
도 2는 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법을 도시한 순서도이다.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.
도 1은 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 구조를 도시한 도면이다.
도 1을 참조하면, 본 발명에 따른 번역 처리 장치(110)는 개체명 선택부(111), 기록부(112), 단어 대체부(113), 기계 번역부(114) 및 번역 처리부(115)를 포함한다.
개체명 선택부(111)는 사용자에 의해 번역 엔진에 반영되어 있지 않은 제1 언어로 구성된 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 제2 언어로의 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 번역 엔진을 통해 번역 가능한 것으로 미리 학습되어 있는 복수의 개체명들 중 상기 신규 개체명과의 유사도가 최대인 제1 개체명을 선택한다.
여기서, 상기 번역 엔진은 상기 제1 언어의 문장을 상기 제2 언어의 문장으로 기계 번역 가능하도록 미리 학습된 엔진을 의미한다.
예컨대, 상기 제1 언어를 한국어, 상기 제2 언어를 영어라고 하고, 사용자로부터 입력된 상기 신규 개체명에 대한 단어가 '훌랄라피자', 그에 대한 번역 단어가 'Hulala Pizza'라고 하는 경우, 개체명 선택부(111)는 상기 번역 엔진을 통해 번역 가능한 것으로 미리 학습되어 있는 복수의 개체명들 중 상기 신규 개체명인 '훌랄라피자'와의 유사도가 최대인 제1 개체명을 선택할 수 있다.
여기서, 개체명이란 인명, 지명, 기관명, 사물의 명칭 등과 같은 고유명사나 명사구를 의미한다. 그리고, 상기 복수의 개체명들은 이미 상기 번역 엔진에 번역 가능하도록 반영되어 있는 개체명들을 의미한다.
이때, 본 발명의 일실시예에 따르면, 개체명 선택부(111)는 카테고리 테이블 유지부(116), 문장 데이터베이스(117), 개체명 확인부(118), 문장 추출부(119), 단어 선택부(120) 및 개체명 결정부(121)를 포함할 수 있다.
카테고리 테이블 유지부(116)는 상기 복수의 개체명들 각각의 카테고리를 식별하기 위한 미리 지정된 카테고리 식별자가 기록되어 있는 카테고리 테이블을 저장하여 유지한다.
여기서, 카테고리란 각 개체명이 속하는 분류를 의미하는 것으로, 특정 개체명이 '불고기 피자'라고 한다면 '불고기 피자'는 '음식'이라는 분류에 속할 수 있기 때문에 '불고기 피자'라는 개체명에 대한 카테고리는 '음식'이 될 수 있다.
이때, '음식'이라는 카테고리에 대한 미리 지정된 카테고리 식별자를 '식별자 1'이라고 하고, '전자제품'이라는 카테고리에 대한 미리 지정된 식별자를 '식별자 2'라고 하며, '휴대폰 액세서리'라는 카테고리에 대한 미리 지정된 식별자를 '식별자 3'이라고 한다면, 상기 카테고리 테이블에는 하기의 표 1과 같이 정보가 기록되어 있을 수 있다.
복수의 개체명들 | 카테고리 식별자 |
블랙타이거 슈림프 피자 | 식별자 1 |
햄버거 | 식별자 1 |
청국장 | 식별자 1 |
킹프론 씨푸드 피자 | 식별자 1 |
스마트폰 | 식별자 2 |
셀카봉 | 식별자 3 |
... | ... |
문장 데이터베이스(117)에는 상기 복수의 개체명들에 대한 상기 제1 언어로 구성된 단어를 문장 내에 하나 이상 포함하는 사전 설정된 복수의 문장들(상기 복수의 문장들은 상기 제1 언어로 구성된 문장임)이 저장되어 있다.
관련해서, 상기 제1 언어가 한국어라고 하는 경우, 문장 데이터베이스(117)에는 하기의 표 2와 같이 복수의 문장들이 저장되어 있을 수 있다.
복수의 개체명들 | 복수의 문장들 |
블랙타이거 슈림프 피자 | 1. 한컴피자 신제품 블랙타이거 슈림프 피자 직접 먹어보고 추천합니다. 2. 이번에 신제품인 블랙타이거 슈림프 피자가 나온다고해서 출시날만 기다리다가 먹어봤어요. ... |
햄버거 | 1. 햄버거 맛있게 먹어라. 2. 햄버거 하나 주세요. ... |
청국장 | 1. 청국장 냄새가 코를 자극한다. 2. 고향에서 만든 청국장이 그립다. ... |
킹프론 씨푸드 피자 | 1. 한컴피자가 여름 신제품 킹프론 씨푸드 피자 스페셜 세트 한정 판매한다. ... |
스마트폰 | 1. 스마트폰을 이용하여 게임을 즐길 수 있습니다. ... |
셀카봉 | 1. 사진을 찍을 때 셀카봉을 이용하십시오. 2. 셀카봉을 이용하여 셀카를 찍을 수 있습니다. ... |
... | ... |
개체명 확인부(118)는 상기 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 사용자로부터 상기 신규 개체명에 대한 단어가 삽입된 상기 제1 언어로 구성된 예제 문장과 상기 신규 개체명에 대한 카테고리를 지시하는 제1 카테고리 식별자를 추가로 입력받은 후 상기 카테고리 테이블을 참조하여 상기 복수의 개체명들 중 상기 제1 카테고리 식별자에 대응하는 복수의 후보 개체명들을 확인한다.
예컨대, 사용자로부터 입력된 상기 신규 개체명에 대한 단어가 '훌랄라피자', 그에 대한 번역 단어가 'Hulala Pizza'라고 하고, 상기 신규 개체명에 대한 단어가 삽입된 한국어로 구성된 예제 문장이 '한컴피자의 신제품 훌랄라피자를 추천합니다.'라고 하며, 상기 제1 카테고리 식별자가 '식별자 1'이라고 하는 경우, 개체명 확인부(118)는 상기 표 1과 같은 카테고리 테이블로부터 '식별자 1'에 대응되어 기록되어 있는 '블랙타이거 슈림프 피자, 햄버거, 청국장, 킹프론 씨푸드 피자, ...'라는 개체명들을 상기 복수의 후보 개체명들로 확인할 수 있다.
문장 추출부(119)는 상기 복수의 후보 개체명들이 확인되면, 문장 데이터베이스(117)로부터 상기 복수의 후보 개체명들에 대한 단어를 문장 내에 하나 이상 포함하고 있는 복수의 후보 문장들을 추출한다.
관련해서, 전술한 예와 같이, '블랙타이거 슈림프 피자, 햄버거, 청국장, 킹프론 씨푸드 피자, ...'가 상기 복수의 후보 개체명들로 확인되었다고 하는 경우, 문장 추출부(119)는 상기 표 2와 같은 문장 데이터베이스(117)로부터 '블랙타이거 슈림프 피자, 햄버거, 청국장, 킹프론 씨푸드 피자, ...'라는 개체명에 대한 단어를 문장 내에서 하나 이상 포함하고 있는 상기 복수의 후보 문장들을 추출할 수 있고, 그 결과는 하기의 표 3과 같이 나타낼 수 있다.
복수의 후보 문장들 |
1. 한컴피자 신제품 블랙타이거 슈림프 피자 직접 먹어보고 추천합니다. 2. 이번에 신제품인 블랙타이거 슈림프 피자가 나온다고해서 출시날만 기다리다가 먹어봤어요. ... |
1. 햄버거 맛있게 먹어라. 2. 햄버거 하나 주세요. ... |
1. 청국장 냄새가 코를 자극한다. 2. 고향에서 만든 청국장이 그립다. ... |
1. 한컴피자가 여름 신제품 킹프론 씨푸드 피자 스페셜 세트 한정 판매한다. ... |
... |
단어 선택부(120)는 상기 복수의 후보 문장들이 추출되면, 상기 복수의 후보 문장들 중 상기 예제 문장과의 문장 유사도가 최대인 최대 유사 문장을 선택하고, 상기 복수의 후보 개체명들에 대한 단어 중 상기 최대 유사 문장에서 한 번 이상 포함되어 있는 적어도 하나의 개체명에 대한 단어를 선택한다.
이때, 본 발명의 일실시예에 따르면, 단어 선택부(120)에서 사용되는 문장 유사도는 비교 대상이 되는 문장들을 구성하는 문자열에 대한 최장 공통 부분 수열(Longest Common Subsequence: LCS)의 길이일 수 있다.
관련해서, 전술한 예시와 같이 상기 예제 문장이 '한컴피자의 신제품 훌랄라피자를 추천합니다.'라고 하고, 상기 복수의 후보 문장들이 표 3과 같다고 하였을 때, 단어 선택부(120)의 동작을 예를 들어 상세히 설명하면 다음과 같다.
문장 추출부(119)를 통해서 상기 표 3과 같은 상기 복수의 후보 문장들이 추출되면, 단어 선택부(120)는 상기 복수의 후보 문장들 각각에 대해 상기 예제 문장과의 문장 유사도를 연산할 수 있다.
이때, 단어 선택부(120)는 상기 복수의 후보 문장들 각각에 대해 각 문장과 상기 예제 문장 간의 LCS의 길이를 문장 유사도로 연산할 수 있다.
LCS란 두 개의 문자열에서 일치하는 연속된 문자열을 의미하는 것으로, 'ACAYKP'와 'CAPCAK'가 있다고 하였을 때, 두 문자열 간의 LCS는 'ACAK'이고, 이때 LCS의 길이는 '4'가 된다.
관련해서, 단어 선택부(120)는 '한컴피자 신제품 블랙타이거 슈림프 피자 직접 먹어보고 추천합니다.'라는 문장과 상기 예제 문장인 '한컴피자의 신제품 훌랄라피자를 추천합니다.' 간의 LCS의 길이를 문장 유사도로 연산할 수 있고, '이번에 신제품인 블랙타이거 슈림프 피자가 나온다고해서 출시날만 기다리다가 먹어봤어요.'라는 문장과 상기 예제 문장인 '한컴피자의 신제품 훌랄라피자를 추천합니다.' 간의 LCS의 길이를 문장 유사도로 연산할 수 있다. 이러한 방식으로 단어 선택부(120)는 상기 복수의 후보 문장들 각각에 대해 상기 예제 문장과의 문장 유사도를 연산할 수 있다.
이렇게, 상기 복수의 후보 문장들 각각에 대한 상기 예제 문장과의 문장 유사도가 연산되면, 단어 선택부(120)는 상기 복수의 후보 문장들 중 상기 예제 문장과의 문장 유사도가 최대인 최대 유사 문장을 선택할 수 있다.
예컨대, 상기 복수의 후보 문장들 중 상기 예제 문장인 '한컴피자의 신제품 훌랄라피자를 추천합니다.'와의 문장 유사도가 최대인 문장이 '한컴피자 신제품 블랙타이거 슈림프 피자 직접 먹어보고 추천합니다.'라고 하는 경우, 단어 선택부(120)는 상기 복수의 후보 문장들 중 '한컴피자 신제품 블랙타이거 슈림프 피자 직접 먹어보고 추천합니다.'라는 문장을 상기 최대 유사 문장으로 선택할 수 있다.
이렇게, '한컴피자 신제품 블랙타이거 슈림프 피자 직접 먹어보고 추천합니다.'라는 문장이 상기 최대 유사 문장으로 선택되면, 단어 선택부(120)는 상기 복수의 후보 개체명들에 대한 단어인 '블랙타이거 슈림프 피자, 햄버거, 청국장, 킹프론 씨푸드 피자, ...' 중 상기 최대 유사 문장인 '한컴피자 신제품 블랙타이거 슈림프 피자 직접 먹어보고 추천합니다.'에서 한 번 이상 포함되어 있는 적어도 하나의 개체명에 대한 단어를 선택할 수 있다. 본 예시에서는 '블랙타이거 슈림프 피자'라는 후보 개체명에 대한 단어가 상기 최대 유사 문장에 포함되어 있기 때문에 단어 선택부(120)는 '블랙타이거 슈림프 피자'라는 후보 개체명에 대한 단어를 선택할 수 있다.
개체명 결정부(121)는 단어 선택부(120)에 의해 상기 적어도 하나의 개체명에 대한 단어가 선택되면, 상기 적어도 하나의 개체명에 대한 단어 중 어느 하나의 단어를 랜덤하게 선택하여 상기 랜덤하게 선택한 단어의 개체명을 상기 신규 개체명과의 유사도가 최대인 상기 제1 개체명으로 결정한다.
관련해서, 앞서 설명한 예시와 같이 단어 선택부(120)에 의해 '블랙타이거 슈림프 피자'가 적어도 하나의 개체명에 대한 단어로 선택되었다고 하는 경우, 개체명 결정부(121)는 '블랙타이거 슈림프 피자'(상기 적어도 하나의 개체명에 대한 단어가 1개이므로)를 상기 신규 개체명인 '훌랄라피자'와의 유사도가 최대인 상기 제1 개체명으로 결정할 수 있다.
이렇게, 개체명 선택부(111)에서 상기 제1 개체명이 선택되면, 기록부(112)는 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어를 기록하면서, 상기 신규 개체명에 대해 상기 제1 개체명에 단어를 대응 개체명으로 기록한다.
관련해서, 앞서 설명한 예시와 같이 '훌랄라피자'에 대한 신규 개체명에 대한 상기 제1 개체명으로 '블랙타이거 슈림프 피자'가 선택되었다고 하는 경우, 기록부(112)는 하기의 표 4와 같이 관련 정보를 기록할 수 있다.
신규 개체명에 대한 단어 | 번역 단어 | 대응되는 제1 개체명에 대한 단어 |
훌랄라피자 | Hulala Pizza | 블랙타이거 슈림프 피자 |
단어 대체부(113)는 상기 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어 및 상기 제1 개체명에 대한 단어가 기록된 후 사용자에 의해 상기 신규 개체명에 대한 단어가 포함된 제1 문장(상기 제1 문장은 상기 제1 언어로 구성되어 있음)이 입력되면서, 상기 제1 문장의 상기 제2 언어로의 번역 명령이 인가되면, 상기 신규 개체명 테이블을 참조하여 상기 제1 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체한다.
그리고, 기계 번역부(114)는 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 제1 문장을 상기 번역 엔진에 기초하여 제2 언어로 구성된 제1 번역 문장으로 기계 번역한다.
그러고 나서, 번역 처리부(115)는 상기 제1 번역 문장에서 상기 제1 개체명에 대한 번역 단어를 상기 신규 개체명 테이블을 참조하여 상기 신규 개체명에 대한 번역 단어로 다시 대체함으로써, 상기 제1 문장에 대한 최종 번역 문장을 생성한다.
관련해서, 상기 표 4와 같이 신규 개체명 테이블에 정보가 기록된 후 사용자에 의해 '훌랄라피자는 맛있습니다'라고 하는 제1 문장이 입력되면서, 상기 제1 문장을 영어로 번역하라고 하는 번역 명령이 인가되면, 단어 대체부(113)는 상기 신규 개체명 테이블을 참조하여 상기 제1 문장에서 상기 신규 개체명에 대한 단어인 '훌랄라피자'를 상기 제1 개체명에 대한 단어인 '블랙타이거 슈림프 피자'로 대체할 수 있다.
그러고 나서, 기계 번역부(114)는 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 '블랙타이거 슈림프 피자는 맛있습니다'라는 상기 제1 문장을 상기 번역 엔진에 기초하여 영어로 구성된 제1 번역 문장으로 기계 번역할 수 있다.
'블랙타이거 슈림프 피자'라고 하는 상기 제1 개체명은 상기 번역 엔진에 반영되어 있는 개체명이기 때문에 기계 번역부(114)는 상기 번역 엔진에 기초하여 상기 제1 문장을 'Black Tiger Shrimp Pizza is delicious.'로 기계 번역할 수 있다.
그 이후, 번역 처리부(115)는 상기 제1 번역 문장인 'Black Tiger Shrimp Pizza is delicious.'에서 상기 제1 개체명에 대한 번역 단어인 'Black Tiger Shrimp Pizza'를 상기 신규 개체명 테이블을 참조하여 상기 신규 개체명에 대한 번역 단어인 'Hulala Pizza'로 다시 대체함으로써, 상기 제1 문장에 대한 최종 번역 문장인 'Hulala Pizza is delicious.'를 생성할 수 있다.
결국, 본 발명에 따른 번역 처리 장치(110)는 번역 엔진에 반영되어 있지 않은 신규 개체명과 그에 대한 번역 단어를 상기 번역 엔진에 반영되어 있는 복수의 개체명들 중 가장 유사한 제1 개체명과 함께 매칭시켜 신규 개체명 테이블에 기록해 둔 후 상기 신규 개체명이 포함된 문장에 대한 번역 명령이 인가되면, 상기 문장에서 상기 신규 개체명을 상기 제1 개체명으로 변환하여 번역을 수행한 후 번역된 문장에서 상기 제1 개체명을 다시 상기 신규 개체명에 대한 번역 단어로 대체함으로써, 상기 번역 엔진에 반영되어 있지 않은 신규 개체명에 대해 상기 번역 엔진에 대한 추가 학습 없이도 자연스러운 번역이 가능하도록 지원할 수 있다.
본 발명의 일실시예에 따르면, 개체명 선택부(111)는 문장 데이터베이스 갱신부(122)를 더 포함할 수 있다.
문장 데이터베이스 갱신부(122)는 개체명 결정부(121)에서 상기 신규 개체명과의 유사도가 최대인 상기 제1 개체명이 결정되면, 상기 예제 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체한 후 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 예제 문장을 문장 데이터베이스(117)에 추가로 저장하여 문장 데이터베이스(117)를 갱신할 수 있다.
관련해서, 앞서 설명한 예시와 같이, 상기 예제 문장이 '한컴피자의 신제품 훌랄라피자를 추천합니다.'라고 하는 경우, 문장 데이터베이스 갱신부(122)는 개체명 결정부(121)에서 상기 신규 개체명과의 유사도가 최대인 상기 제1 개체명으로 '블랙타이거 슈림프 피자'가 결정되면, 상기 예제 문장에서 '훌랄라피자'라고 하는 상기 신규 개체명을 유사도가 최대인 상기 제1 개체명인 '블랙타이거 슈림프 피자'로 대체하여 '한컴피자의 신제품 블랙타이거 슈림프 피자를 추천합니다.'로 변형한 후 변형된 예제 문장인 '한컴피자의 신제품 블랙타이거 슈림프 피자를 추천합니다.'를 문장 데이터베이스(117)에 추가로 저장할 수 있다. 이를 통해, 문장 데이터베이스(117)에는 추후 또 다른 신규 개체명에 대응하는 최대 유사도의 개체명을 선택할 때 사용될 수 있는 다양한 문장들이 추가될 수 있게 된다.
도 2는 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법을 도시한 순서도이다.
단계(S210)에서는 번역 엔진(상기 번역 엔진은 제1 언어의 문장을 제2 언어의 문장으로 기계 번역 가능하도록 미리 학습된 엔진임)에 반영되어 있지 않은 상기 제1 언어로 구성된 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 상기 제2 언어로의 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 번역 엔진을 통해 번역 가능한 것으로 미리 학습되어 있는 복수의 개체명들 중 상기 신규 개체명과의 유사도가 최대인 제1 개체명을 선택한다.
단계(S220)에서는 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어를 기록하면서, 상기 신규 개체명에 대해 상기 제1 개체명에 대한 단어를 대응 개체명으로 기록한다.
단계(S230)에서는 상기 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어 및 상기 제1 개체명에 대한 단어가 기록된 후 상기 신규 개체명에 대한 단어가 포함된 제1 문장(상기 제1 문장은 상기 제1 언어로 구성되어 있음)이 입력되면서, 상기 제1 문장의 상기 제2 언어로의 번역 명령이 인가되면, 상기 신규 개체명 테이블을 참조하여 상기 제1 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체한다.
단계(S240)에서는 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 제1 문장을 상기 번역 엔진에 기초하여 제2 언어로 구성된 제1 번역 문장으로 기계 번역한다.
단계(S250)에서는 상기 제1 번역 문장에서 상기 제1 개체명에 대한 번역 단어를 상기 신규 개체명 테이블을 참조하여 상기 신규 개체명에 대한 번역 단어로 다시 대체함으로써, 상기 제1 문장에 대한 최종 번역 문장을 생성한다.
이때, 본 발명의 일실시예에 따르면, 단계(S210)에서는 상기 복수의 개체명들 각각의 카테고리를 식별하기 위한 미리 지정된 카테고리 식별자가 기록되어 있는 카테고리 테이블을 저장하여 유지하는 단계, 상기 복수의 개체명들에 대한 상기 제1 언어로 구성된 단어를 문장 내에 하나 이상 포함하는 사전 설정된 복수의 문장들(상기 복수의 문장들은 상기 제1 언어로 구성된 문장임)이 저장되어 있는 문장 데이터베이스를 유지하는 단계, 상기 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 신규 개체명에 대한 단어가 삽입된 상기 제1 언어로 구성된 예제 문장과 상기 신규 개체명에 대한 카테고리를 지시하는 제1 카테고리 식별자를 추가로 입력받은 후 상기 카테고리 테이블을 참조하여 상기 복수의 개체명들 중 상기 제1 카테고리 식별자에 대응하는 복수의 후보 개체명들을 확인하는 단계, 상기 복수의 후보 개체명들이 확인되면, 상기 문장 데이터베이스로부터 상기 복수의 후보 개체명들에 대한 단어를 문장 내에 하나 이상 포함하고 있는 복수의 후보 문장들을 추출하는 단계, 상기 복수의 후보 문장들이 추출되면, 상기 복수의 후보 문장들 중 상기 예제 문장과의 문장 유사도가 최대인 최대 유사 문장을 선택하고, 상기 복수의 후보 개체명들에 대한 단어 중 상기 최대 유사 문장에서 한 번 이상 포함되어 있는 적어도 하나의 개체명에 대한 단어를 선택하는 단계 및 상기 적어도 하나의 개체명에 대한 단어 중 어느 하나의 단어를 랜덤하게 선택하여 상기 랜덤하게 선택한 단어의 개체명을 상기 신규 개체명과의 유사도가 최대인 상기 제1 개체명으로 결정하는 단계를 포함할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 단어를 선택하는 단계에서 사용되는 문장 유사도는 비교 대상이 되는 문장들을 구성하는 문자열에 대한 LCS의 길이일 수 있다.
또한, 본 발명의 일실시예에 따르면, 단계(S210)에서는 상기 제1 개체명이 결정되면, 상기 예제 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체한 후 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 예제 문장을 상기 문장 데이터베이스에 추가로 저장하는 단계를 더 포함할 수 있다.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법은 도 1을 이용하여 설명한 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일실시예에 따른 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.
110: 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치
111: 개체명 선택부 112: 기록부
113: 단어 대체부 114: 기계 번역부
115: 번역 처리부 116: 카테고리 테이블 유지부
117: 문장 데이터베이스 118: 개체명 확인부
119: 문장 추출부 120: 단어 선택부
121: 개체명 결정부 122: 문장 데이터베이스 갱신부
111: 개체명 선택부 112: 기록부
113: 단어 대체부 114: 기계 번역부
115: 번역 처리부 116: 카테고리 테이블 유지부
117: 문장 데이터베이스 118: 개체명 확인부
119: 문장 추출부 120: 단어 선택부
121: 개체명 결정부 122: 문장 데이터베이스 갱신부
Claims (10)
- 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치에 있어서,
번역 엔진 - 상기 번역 엔진은 제1 언어의 문장을 제2 언어의 문장으로 기계 번역 가능하도록 미리 학습된 엔진임 - 에 반영되어 있지 않은 상기 제1 언어로 구성된 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 상기 제2 언어로의 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 번역 엔진을 통해 번역 가능한 것으로 미리 학습되어 있는 복수의 개체명들 중 상기 신규 개체명과의 유사도가 최대인 제1 개체명을 선택하는 개체명 선택부;
신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어를 기록하면서, 상기 신규 개체명에 대해 상기 제1 개체명에 대한 단어를 대응 개체명으로 기록하는 기록부;
상기 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어 및 상기 제1 개체명에 대한 단어가 기록된 후 상기 신규 개체명에 대한 단어가 포함된 제1 문장 - 상기 제1 문장은 상기 제1 언어로 구성되어 있음 - 이 입력되면서, 상기 제1 문장의 상기 제2 언어로의 번역 명령이 인가되면, 상기 신규 개체명 테이블을 참조하여 상기 제1 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체하는 단어 대체부;
상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 제1 문장을 상기 번역 엔진에 기초하여 제2 언어로 구성된 제1 번역 문장으로 기계 번역하는 기계 번역부; 및
상기 제1 번역 문장에서 상기 제1 개체명에 대한 번역 단어를 상기 신규 개체명 테이블을 참조하여 상기 신규 개체명에 대한 번역 단어로 다시 대체함으로써, 상기 제1 문장에 대한 최종 번역 문장을 생성하는 번역 처리부
를 포함하고,
상기 개체명 선택부는
상기 복수의 개체명들 각각의 카테고리를 식별하기 위한 미리 지정된 카테고리 식별자가 기록되어 있는 카테고리 테이블을 저장하여 유지하는 카테고리 테이블 유지부;
상기 복수의 개체명들에 대한 상기 제1 언어로 구성된 단어를 문장 내에 하나 이상 포함하는 사전 설정된 복수의 문장들 - 상기 복수의 문장들은 상기 제1 언어로 구성된 문장임 - 이 저장되어 있는 문장 데이터베이스;
상기 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 신규 개체명에 대한 단어가 삽입된 상기 제1 언어로 구성된 예제 문장과 상기 신규 개체명에 대한 카테고리를 지시하는 제1 카테고리 식별자를 추가로 입력받은 후 상기 카테고리 테이블을 참조하여 상기 복수의 개체명들 중 상기 제1 카테고리 식별자에 대응하는 복수의 후보 개체명들을 확인하는 개체명 확인부;
상기 복수의 후보 개체명들이 확인되면, 상기 문장 데이터베이스로부터 상기 복수의 후보 개체명들에 대한 단어를 문장 내에 하나 이상 포함하고 있는 복수의 후보 문장들을 추출하는 문장 추출부;
상기 복수의 후보 문장들이 추출되면, 상기 복수의 후보 문장들 중 상기 예제 문장과의 문장 유사도가 최대인 최대 유사 문장을 선택하고, 상기 복수의 후보 개체명들에 대한 단어 중 상기 최대 유사 문장에서 한 번 이상 포함되어 있는 적어도 하나의 개체명에 대한 단어를 선택하는 단어 선택부; 및
상기 적어도 하나의 개체명에 대한 단어 중 어느 하나의 단어를 랜덤하게 선택하여 상기 랜덤하게 선택한 단어의 개체명을 상기 신규 개체명과의 유사도가 최대인 상기 제1 개체명으로 결정하는 개체명 결정부
를 포함하는 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치. - 삭제
- 제1항에 있어서,
상기 단어 선택부에서 사용되는 문장 유사도는 비교 대상이 되는 문장들을 구성하는 문자열에 대한 최장 공통 부분 수열(Longest Common Subsequence: LCS)의 길이인 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치. - 제1항에 있어서,
상기 개체명 선택부는
상기 제1 개체명이 결정되면, 상기 예제 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체한 후 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 예제 문장을 상기 문장 데이터베이스에 추가로 저장하는 문장 데이터베이스 갱신부
를 더 포함하는 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치. - 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법에 있어서,
번역 엔진 - 상기 번역 엔진은 제1 언어의 문장을 제2 언어의 문장으로 기계 번역 가능하도록 미리 학습된 엔진임 - 에 반영되어 있지 않은 상기 제1 언어로 구성된 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 상기 제2 언어로의 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 번역 엔진을 통해 번역 가능한 것으로 미리 학습되어 있는 복수의 개체명들 중 상기 신규 개체명과의 유사도가 최대인 제1 개체명을 선택하는 단계;
신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어를 기록하면서, 상기 신규 개체명에 대해 상기 제1 개체명에 대한 단어를 대응 개체명으로 기록하는 단계;
상기 신규 개체명 테이블에 상기 신규 개체명에 대한 단어와 번역 단어 및 상기 제1 개체명에 대한 단어가 기록된 후 상기 신규 개체명에 대한 단어가 포함된 제1 문장 - 상기 제1 문장은 상기 제1 언어로 구성되어 있음 - 이 입력되면서, 상기 제1 문장의 상기 제2 언어로의 번역 명령이 인가되면, 상기 신규 개체명 테이블을 참조하여 상기 제1 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체하는 단계;
상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 제1 문장을 상기 번역 엔진에 기초하여 제2 언어로 구성된 제1 번역 문장으로 기계 번역하는 단계; 및
상기 제1 번역 문장에서 상기 제1 개체명에 대한 번역 단어를 상기 신규 개체명 테이블을 참조하여 상기 신규 개체명에 대한 번역 단어로 다시 대체함으로써, 상기 제1 문장에 대한 최종 번역 문장을 생성하는 단계
를 포함하고,
상기 제1 개체명을 선택하는 단계는
상기 복수의 개체명들 각각의 카테고리를 식별하기 위한 미리 지정된 카테고리 식별자가 기록되어 있는 카테고리 테이블을 저장하여 유지하는 단계;
상기 복수의 개체명들에 대한 상기 제1 언어로 구성된 단어를 문장 내에 하나 이상 포함하는 사전 설정된 복수의 문장들 - 상기 복수의 문장들은 상기 제1 언어로 구성된 문장임 - 이 저장되어 있는 문장 데이터베이스를 유지하는 단계;
상기 신규 개체명에 대한 단어와 상기 신규 개체명에 대한 번역 단어가 입력되면서, 상기 신규 개체명에 대한 상기 번역 엔진과의 연동 명령이 인가되면, 상기 신규 개체명에 대한 단어가 삽입된 상기 제1 언어로 구성된 예제 문장과 상기 신규 개체명에 대한 카테고리를 지시하는 제1 카테고리 식별자를 추가로 입력받은 후 상기 카테고리 테이블을 참조하여 상기 복수의 개체명들 중 상기 제1 카테고리 식별자에 대응하는 복수의 후보 개체명들을 확인하는 단계;
상기 복수의 후보 개체명들이 확인되면, 상기 문장 데이터베이스로부터 상기 복수의 후보 개체명들에 대한 단어를 문장 내에 하나 이상 포함하고 있는 복수의 후보 문장들을 추출하는 단계;
상기 복수의 후보 문장들이 추출되면, 상기 복수의 후보 문장들 중 상기 예제 문장과의 문장 유사도가 최대인 최대 유사 문장을 선택하고, 상기 복수의 후보 개체명들에 대한 단어 중 상기 최대 유사 문장에서 한 번 이상 포함되어 있는 적어도 하나의 개체명에 대한 단어를 선택하는 단계; 및
상기 적어도 하나의 개체명에 대한 단어 중 어느 하나의 단어를 랜덤하게 선택하여 상기 랜덤하게 선택한 단어의 개체명을 상기 신규 개체명과의 유사도가 최대인 상기 제1 개체명으로 결정하는 단계
를 포함하는 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법. - 삭제
- 제5항에 있어서,
상기 단어를 선택하는 단계에서 사용되는 문장 유사도는 비교 대상이 되는 문장들을 구성하는 문자열에 대한 최장 공통 부분 수열(Longest Common Subsequence: LCS)의 길이인 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법. - 제5항에 있어서,
상기 제1 개체명을 선택하는 단계는
상기 제1 개체명이 결정되면, 상기 예제 문장에서 상기 신규 개체명에 대한 단어를 상기 제1 개체명에 대한 단어로 대체한 후 상기 신규 개체명에 대한 단어가 상기 제1 개체명에 대한 단어로 대체된 상기 예제 문장을 상기 문장 데이터베이스에 추가로 저장하는 단계
를 더 포함하는 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치의 동작 방법. - 제5항, 제7항 또는 제8항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
- 제5항, 제7항 또는 제8항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190132697A KR102287167B1 (ko) | 2019-10-24 | 2019-10-24 | 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치 및 그 동작 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190132697A KR102287167B1 (ko) | 2019-10-24 | 2019-10-24 | 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치 및 그 동작 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210048713A KR20210048713A (ko) | 2021-05-04 |
KR102287167B1 true KR102287167B1 (ko) | 2021-08-06 |
Family
ID=75913756
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190132697A KR102287167B1 (ko) | 2019-10-24 | 2019-10-24 | 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치 및 그 동작 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102287167B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112487831B (zh) * | 2020-11-27 | 2024-10-15 | 江苏省舜禹信息技术有限公司 | 一种拆分式人工智能翻译方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225963A (ja) * | 2007-03-14 | 2008-09-25 | National Institute Of Information & Communication Technology | 機械翻訳装置、置換辞書生成装置、機械翻訳方法、置換辞書生成方法、及びプログラム |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101449551B1 (ko) * | 2011-10-19 | 2014-10-14 | 한국전자통신연구원 | 유사문장 검색 장치 및 방법, 유사문장 검색 방법을 실행시키기 위한 프로그램이 기록된 기록매체 |
KR102093790B1 (ko) * | 2015-10-27 | 2020-03-26 | 한국전자통신연구원 | 문자 중계 데이터로부터 이벤트 정보를 추출하는 이벤트 정보 추출 방법 및 그 방법을 수행하는 사용자 단말 |
KR102604552B1 (ko) * | 2016-07-15 | 2023-11-22 | 삼성전자주식회사 | 단어 임베딩 방법, 단어 임베딩 장치, 음성 인식 방법 및 음성 인식 장치 |
-
2019
- 2019-10-24 KR KR1020190132697A patent/KR102287167B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008225963A (ja) * | 2007-03-14 | 2008-09-25 | National Institute Of Information & Communication Technology | 機械翻訳装置、置換辞書生成装置、機械翻訳方法、置換辞書生成方法、及びプログラム |
Non-Patent Citations (2)
Title |
---|
Zhang, Xiang et. al., 'Character-level convolutional networks for text classification, Advances in neural information processing systems', 2015. |
Zhang, Yizhe, et al., 'Adversarial feature matching for text generation', 2017.06. |
Also Published As
Publication number | Publication date |
---|---|
KR20210048713A (ko) | 2021-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11455542B2 (en) | Text processing method and device based on ambiguous entity words | |
CN107193792B (zh) | 基于人工智能的生成文章的方法和装置 | |
KR102168319B1 (ko) | 신규 개체명 단어에 연관된 말뭉치 생성을 위한 문장 자동 생성 장치 및 그 동작 방법 | |
JP7223574B2 (ja) | マンガ生成システムおよびマンガ生成方法 | |
KR20050005523A (ko) | 단어 상관 방법 및 장치 | |
JP2015506515A (ja) | タグをドキュメントに自動的に追加するための方法、装置およびコンピュータ記憶媒体 | |
CN115380260A (zh) | 用于网络游戏的用户输入文本的语言检测 | |
JP2022047291A (ja) | 情報処理装置、方法、及びプログラム | |
US20190378513A1 (en) | Identifying an accurate transcription from probabilistic inputs | |
US11468346B2 (en) | Identifying sequence headings in a document | |
US20190317993A1 (en) | Effective classification of text data based on a word appearance frequency | |
CN109815390B (zh) | 多语言信息的检索方法、装置、计算机设备及计算机存储介质 | |
US8620961B2 (en) | Mention-synchronous entity tracking: system and method for chaining mentions | |
KR20170122755A (ko) | 함의 페어 확장 장치, 그것을 위한 컴퓨터 프로그램, 및 질문 응답 시스템 | |
KR102287167B1 (ko) | 번역 엔진에 미포함된 신규 개체명에 대한 번역 기능을 제공하기 위한 번역 처리 장치 및 그 동작 방법 | |
JP5430312B2 (ja) | データ処理装置、データ名生成方法及びコンピュータプログラム | |
KR102076548B1 (ko) | 형태소 분석을 활용하여 문서를 관리하는 장치 및 이의 동작 방법 | |
JP2011090463A (ja) | 文書検索システム、情報処理装置およびプログラム | |
JPWO2003025787A1 (ja) | 文章生成装置及び生成方法 | |
JP6805927B2 (ja) | インデックス生成プログラム、データ検索プログラム、インデックス生成装置、データ検索装置、インデックス生成方法、及びデータ検索方法 | |
KR102523807B1 (ko) | 사용자 입력 조건에 기초하여 기계 번역 엔진의 구축에 사용될 학습용 문장 세트를 생성하는 학습용 문장 세트 생성 서버 및 그 동작 방법 | |
KR102215580B1 (ko) | 스타일 속성에 기반하여 문서에 대한 중요 키워드를 선정하는 전자 장치 및 그 동작 방법 | |
JP2001101184A (ja) | 構造化文書生成方法及び装置及び構造化文書生成プログラムを格納した記憶媒体 | |
KR102375572B1 (ko) | 기계 번역 모델 생성에 사용할 학습 문장을 자동으로 생성하는 전자 단말 장치 및 그 동작 방법 | |
KR102395700B1 (ko) | 사용자 입력 조건에 기초하여 음성 인식 모델 구축에 사용될 학습 데이터를 생성하는 전자 장치 및 그 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |