KR20170017379A - 자동 음성 번역 장치 및 그 방법 - Google Patents
자동 음성 번역 장치 및 그 방법 Download PDFInfo
- Publication number
- KR20170017379A KR20170017379A KR1020150111202A KR20150111202A KR20170017379A KR 20170017379 A KR20170017379 A KR 20170017379A KR 1020150111202 A KR1020150111202 A KR 1020150111202A KR 20150111202 A KR20150111202 A KR 20150111202A KR 20170017379 A KR20170017379 A KR 20170017379A
- Authority
- KR
- South Korea
- Prior art keywords
- text data
- sentence
- unit
- voice
- predicate
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 230000008569 process Effects 0.000 claims abstract description 6
- 238000010586 diagram Methods 0.000 description 10
- 230000009471 action Effects 0.000 description 2
- 125000002066 L-histidyl group Chemical group [H]N1C([H])=NC(C([H])([H])[C@](C(=O)[*])([H])N([H])[H])=C1[H] 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
Images
Classifications
-
- G06F17/2809—
-
- G06F17/2705—
-
- G06F17/2755—
-
- G06F17/289—
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Machine Translation (AREA)
Abstract
본 발명은 자동 음성 번역 장치 및 방법에 관한 것으로서, 본 발명의 실시예에 따른 자동 음성 번역 장치는 화자가 발화하는 음성을 수신하는 음성 입력부, 음성 인식 과정을 통해 상기 음성 입력부로부터 수신되는 음성 데이터를 텍스트 데이터로 변환하는 음성 처리부, 상기 음성 데이터를 분석하여 문장의 끝을 파악하고, 상기 문장의 끝을 나타내는 EPD(End-Point Detector) 정보를 생성하는 음성 분석부, 상기 EPD 정보 및 상기 텍스트 데이터에 포함된 단어들의 형태소 정보 중 적어도 하나를 이용하여 상기 텍스트 데이터에서의 의미단위 및 문장의 끝을 판별하며, 상기 의미단위 또는 상기 문장의 끝을 기준으로 상기 텍스트 데이터를 분할하는 의미단위 판별부, 및 상기 의미단위 판별부로부터 수신되는 상기 분할된 텍스트 데이터를 번역하는 번역부를 포함한다.
Description
본 발명은 음식 인식 및 자동 음성 번역 기술에 관한 것으로, 특히 화자의 음성을 실시간으로 번역하여 상대방에게 제공하는 자동 음성 번역 장치 및 그 방법에 관한 것이다.
기존의 자동 음성 번역 장치는 화자가 발화를 마친 후, 음성 인식을 수행하고, 번역이 이루어진다. 따라서, 화자가 발화를 하는 동안 또는 음성 인식과 번역이 이루어지는 과정 동안, 상대방은 번역이 완료될 때까지 기다릴 수 밖에 없다. 이 때문에 화자와 상대방 간에 대화가 자연스럽게 진행되기에 어려움을 가진다.
이와 같은 어려움을 해결하기 위해서, 미국의 AT&T사는 시간 단위로 음성을 분할하는 timeout 방식의 실시간 음성 인식 기술(incremental speech recognition with timeout policy)를 공개한 바 있다. 하지만, 무의미하게 시간 단위로만 분할하기 때문에, 낮은 음성 인식 정확도를 보였다.
이와 같이, 의미 없이 분할된 단어를 번역을 하기 위해서, AT&T사는 부분 디코딩을 이용한 증가 기계 번역, 기록을 이용한 부분 디코딩, 또는 전체 디코딩을 이용한 증가 번역(incremental machine translation with partial decoding or partial decoding with history or complete decoding) 기술을 도입했다. 이때, AT&T 사에서 도입한 incremental translation 기술은 아래와 같은 공식을 따른다.
Incremental translation with partial decoding;
Incremental translation with partial decoding with history
Incremental translation with complete decoding
본 발명의 목적은 기설정된 조건에 만족하면 완전한 문장이 아닌 문장의 일부를 번역하여 상대방에게 제공하는 자동 음성 번역 장치 및 그 방법을 제공함에 있다.
전술한 과제를 달성하기 위한 본 발명의 일 양상에 따른 자동 음성 번역 장치는 화자가 발화하는 음성을 수신하는 음성 입력부, 음성 인식 과정을 통해 상기 음성 입력부로부터 수신되는 음성 데이터를 텍스트 데이터로 변환하는 음성 처리부, 상기 음성 데이터를 분석하여 문장의 끝을 파악하고, 상기 문장의 끝을 나타내는 EPD(End-Point Detector) 정보를 생성하는 음성 분석부, 상기 EPD 정보 및 상기 텍스트 데이터에 포함된 단어들의 형태소 정보 중 적어도 하나를 이용하여 상기 텍스트 데이터에서의 의미단위 및 문장의 끝을 판별하며, 상기 의미단위 또는 상기 문장의 끝을 기준으로 상기 텍스트 데이터를 분할하는 의미단위 판별부, 및 상기 의미단위 판별부로부터 수신되는 상기 분할된 텍스트 데이터를 번역하는 번역부를 포함한다.
상기 음성 분석부는 상기 음성 데이터에서 사람의 음성을 나타내는 특정 주파수 대역의 음성 신호 정보와 상기 음성이 잠시 멈추는 것을 나타내는 일시정지(Pause) 정보를 이용하여 상기 음성 데이터에서의 문장의 끝을 파악한다.
상기 의미단위 판별부는 상기 텍스트 데이터에서 문장의 끝이 확인되면, 상기 텍스트 데이터의 문장 전체를 상기 번역부로 전달한다.
상기 의미단위 판별부는 상기 텍스트 데이터에서 종결 어미의 존재를 확인하면, 상기 종결 어미가 포함된 상기 텍스트 데이터의 문장 전체를 상기 번역부로 전달한다.
상기 의미단위 판별부는 상기 텍스트 데이터에서 연결 어미의 존재를 확인하면, 상기 연결 어미를 기준으로 상기 텍스트 데이터를 분할하며, 상기 텍스트 데이터에서 상기 연결 어미 이전에 수신된 단어들을 상기 연결 어미와 함께 상기 번역부로 전달한다.
상기 의미단위 판별부는 상기 텍스트 데이터에서 서술어의 존재를 확인하면, 상기 서술어를 기준으로 상기 텍스트 데이터를 분할하며, 상기 텍스트 데이터에서 상기 서술어 이전에 수신된 단어들을 상기 서술어와 함께 상기 번역부로 전달한다.
상기 의미단위 판별부는 상기 음성 인식 결과의 정확성 확률을 이용하여 계산되는 신뢰도의 값이 기설정된 일정 기준 이상이면, 상기 텍스트 데이터에 포함된 다수의 단어를 상기 번역부로 전달한다.
상기 의미단위 판별부는 상기 EPD 정보를 이용한 상기 텍스트 데이터에서의 문장의 끝, 상기 텍스트 데이터에서의 종결어미, 연결어미, 서술어의 존재 여부 및 상기 텍스트 데이터의 신뢰도 정보 순으로 상기 텍스트 데이터를 분할하여 상기 번역부로 전달한다.
한편, 전술한 과제를 달성하기 위한 본 발명의 다른 양상에 따른 자동 음성 번역 방법은 화자가 발화하는 음성에 대한 음성 데이터를 수신하는 단계, 음성 인식 과정을 통해 상기 음성 데이터를 텍스트 데이터로 변환하는 단계, 상기 음성 데이터를 분석하여 문장의 끝을 파악하고, 상기 문장의 끝을 나타내는 EPD(End-Point Detector) 정보를 생성하는 단계, 상기 EPD 정보 및 상기 텍스트 데이터에 포함된 단어들의 형태소 정보 중 적어도 하나를 이용하여 상기 텍스트 데이터에서의 의미단위 및 문장의 끝을 판별하는 단계, 및 상기 의미단위 또는 상기 문장의 끝을 기준으로 상기 텍스트 데이터를 분할하며, 분할된 상기 텍스트 데이터를 번역하는 단계를 포함한다.
상기 생성하는 단계는 상기 음성 데이터에서 사람의 음성을 나타내는 특정 주파수 대역의 음성 신호 정보와 상기 음성이 잠시 멈추는 것을 나타내는 일시정지(Pause) 정보 중 적어도 하나를 이용하여 상기 EPD 정보를 생성한다.
상기 판별하는 단계는 상기 EPD 정보 및 상기 형태소 정보를 이용하여 상기 텍스트 데이터에서 문장의 끝, 종결어미, 연결 어미, 서술어 중 적어도 하나의 존재 여부를 판별한다.
상기 번역하는 단계는 상기 텍스트 데이터에서 문장의 끝이 확인되면, 상기 텍스트 데이터의 문장 전체를 번역한다.
상기 번역하는 단계는 상기 텍스트 데이터에서 종결 어미의 존재가 확인되면, 상기 종결 어미가 포함된 상기 텍스트 데이터의 문장 전체를 번역한다.
상기 번역하는 단계는 상기 텍스트 데이터에서 연결 어미의 존재가 확인되면, 상기 연결 어미를 기준으로 상기 텍스트 데이터를 분할하며, 상기 텍스트 데이터에서 상기 연결 어미 이전에 수신된 단어들을 상기 연결 어미와 함께 번역한다.
상기 번역하는 단계는 상기 텍스트 데이터에서 서술어의 존재가 확인되면, 상기 서술어를 기준으로 상기 텍스트 데이터를 분할하며, 상기 텍스트 데이터에서 상기 서술어 이전에 수신된 단어들을 상기 서술어와 함께 번역한다.
상기 번역하는 단계는 상기 음성 인식 결과의 정확성 확률을 이용하여 계산되는 신뢰도의 값이 기설정된 일정 기준 이상이면, 상기 텍스트 데이터에 포함된 다수의 단어를 실시간으로 번역한다.
상기 번역하는 단계는 상기 텍스트 데이터에서 문장의 끝을 확인하며, 상기 문장의 끝이 확인되면, 상기 텍스트 데이터의 문장 전체를 번역하는 단계, 상기 문장의 끝이 확인되지 않으면 상기 텍스트 데이터에서 종결 어미의 존재를 확인하며, 상기 종결 어미의 존재가 확인되면 상기 종결 어미가 포함된 상기 텍스트 데이터의 문장 전체를 번역하는 단계, 상기 종결 어미의 존재가 확인되지 않으면 상기 텍스트 데이터에서 연결 어미의 존재를 확인하며, 상기 연결어미의 존재가 확인되면, 상기 연결 어미를 기준으로 이전에 수신된 단어들을 상기 연결 어미와 함께 번역하는 단계, 상기 연결 어미의 존재가 확인되지 않으면 상기 텍스트 데이터에서 서술어의 존재를 확인하며, 상기 서술어의 존재가 확인되면 상기 서술어를 기준으로 이전에 수신된 단어들을 상기 서술어와 함께 번역하는 단계, 상기 서술어의 존재가 확인되지 않으면, 상기 음성 인식 결과의 정확성 확률을 이용하여 계산되는 신뢰도의 값이 기설정된 일정 기준 이상인지 확인하며, 상기 신뢰도 값이 상기 일정 기준 이상이면, 상기 텍스트 데이터에 포함된 다수의 단어를 번역한다.
기존의 자동 음성 번역 기술은 완전한 문장을 기준으로 번역하기 때문에, 화자가 완전한 문장을 발화하기 전까지는 상대방은 번역 결과를 제공받지 못하였으나, 본 발명의 실시예에 따르면, 문장을 의미단위로 분할하여 분할된 부분만 부분 번역하고 그 결과를 상대방에게 전달해줌으로써, 상대방이 번역 결과를 기다리는 시간이 줄어들어 대화의 시간을 줄일 수 있다.
또한, 본 발명의 실시예에 따르면 전체 문장이 번역되기 전 중간에 번역 결과를 상대방에게 전달해줌으로써, 상대방의 입장에서 화자가 전달하려는 의미를 빨리 이해할 수 있도록 도와줄 수 있다.
도 1은 본 발명의 실시예에 따른 자동 음성 번역 장치 블록도.
도 2는 본 발명의 실시예에 따른 의미단어 판별부에서 의미단위를 결정하는 기준에 따른 의미단위 판별 과정을 설명하기 위한 도면.
도 3은 본 발명의 실시예에 따른 의미단위 판별부에서 형태소 분석기를 이용하여 의미단위로 분할하는 동작을 설명하기 위한 참조 도면.
도 4는 본 발명의 실시예에 따른 의미단어 판별부에서 이용하는 문장 내 단어들 간의 의존 관계를 설명하기 위한 도면.
도 5는 본 발명의 실시예에 따른 의미단어 판별부의 기준에 따라 번역 결과 표시를 설명하기 위한 도면.
도 2는 본 발명의 실시예에 따른 의미단어 판별부에서 의미단위를 결정하는 기준에 따른 의미단위 판별 과정을 설명하기 위한 도면.
도 3은 본 발명의 실시예에 따른 의미단위 판별부에서 형태소 분석기를 이용하여 의미단위로 분할하는 동작을 설명하기 위한 참조 도면.
도 4는 본 발명의 실시예에 따른 의미단어 판별부에서 이용하는 문장 내 단어들 간의 의존 관계를 설명하기 위한 도면.
도 5는 본 발명의 실시예에 따른 의미단어 판별부의 기준에 따라 번역 결과 표시를 설명하기 위한 도면.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 기재에 의해 정의된다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자 이외의 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
이하, 본 발명의 바람직한 실시예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가급적 동일한 부호를 부여하고, 또한 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있는 경우에는 그 상세한 설명은 생략한다.
도 1은 본 발명의 실시예에 따른 자동 음성 번역 장치 블록도이다.
도 1에 도시된 바와 같이, 본 발명의 실시예에 따른 자동 음성 번역 장치(100)는 음성 입력부(110), 음성 처리부(120), 음성 분석부(130), 의미단위 판별부(140), 번역부(150)를 포함한다.
음성 입력부(110)는 화자가 발화하는 음성을 수신한다. 예컨대, 음성 입력부(110)는 화자의 음성을 수신하는 마이크일 수 있다. 음성 입력부(110)는 수신되는 음성 데이터(음성 신호)를 음성 처리부(120) 및 음성 분석부(130)에 전달한다.
음성 처리부(120)는 음성 입력부(110)로부터 수신되는 음성 데이터를 디코딩하여 텍스트 데이터를 생성한다. 예컨대, 음성 처리부(120)는 음성 인식(Speech Recognizer)을 통해 아날로그 형태의 음성 데이터를 디지털 형태의 텍스트 데이터로 변환하는 음성 인식 모듈일 수 있다. 본 발명에서 텍스트 데이터는 화자가 발화한 임의의 한 문장을 음성 인식한 결과로 가정하여 설명하나, 이에 한정되지 않는다. 즉, 텍스트 데이터는 다수의 문장이 음성 인식된 결과일 수 있다.
또한, 음성 처리부(120)는 디코딩(음성 인식) 결과에 대한 정확도 및 신뢰도를 계산한다. 예컨대, 음성 처리부(120)는 음성 처리를 통해 다수의 단어 중 음성 신호에 대한 단어일 확률을 계산하며, 확률적으로 가능성이 가장 큰 단어를 나열한 텍스트가 음성 인식의 결과가 된다. 이때의 확률이 신뢰도일 수 있다. 이와 같은 과정으로 계산된 신뢰도의 정보는 텍스트 데이터와 함께 의미단위 판별부(140)로 전송된다.
음성 분석부(130)는 음성 입력부(110)로부터 수신되는 음성 데이터를 이용하여 문장의 끝을 파악한다. 음성 분석부(130)는 음성 데이터를 분석하여 문장의 맨 앞과 맨 뒤를 파악하는 EPD(End-Point Detector)일 수 있다. 음성 분석부(130)는 음성 데이터에서 노이즈를 제거한 신호에서 사람의 음성을 나타내는 주파수 대역의 음성 신호 정보와, 음성이 잠시 멈추는 것을 나타내는 일시정지(Pause) 정보를 이용하여 음성 데이터에서의 문장의 끝을 결정하고, 문장의 끝을 나타내는 EPD 정보를 생성한다. 여기서 일시정지 정보는 사전에 소정시간 동안 사람의 음성 신호가 수신되지 않는 정보일 수 있다.
예컨대, 음성 분석부(130)는 필터뱅크(filter bank)와 멜-주파수 켑스트럴 계수(Mel Frequency Cepstral Coefficients, MFCC) 기술을 통해 음성 데이터를 분석할 수 있다. 여기서, 필터뱅크란, 주파수 대역별로 필터를 촘촘히 배치하여 음성 신호를 분석하데 이용되는 것이다. MFCC는 사람 음성의 인지 양상이 선형적이지 않고 로그 스케일과 비슷한 멜 스케일을 따른다는 특성을 반영한 것이다. 이와 같은 필터뱅크 및 MFCC 기술은 일반적으로 음성 인식 기술에서 이용되는 것이다.
의미단위 판별부(140)는 음성 처리부(120)로부터 수신되는 텍스트 데이터 및 신뢰도 정보와, 음성 분석부(130)로부터 수신되는 EPD 정보를 이용하여 텍스트 데이터에서의 의미단위 및 문장의 끝을 판별한다. 또한, 의미단위 판별부(140)는 판별된 의미단위로 텍스트 데이터를 분할시킨다. 의미단위 판별부(140)는 문장의 끝을 판별한 정보를 이용하여 확인된 임의의 문장 전체 또는, 의미단위로 분할된 텍스트 데이터를 번역부(150)로 전달한다. 여기서, 의미단위로 텍스트 데이터를 분할하는 기술은 이후에 구체적으로 설명한다.
번역부(150)는 의미단위 판별부(140)로부터 수신되는 텍스트 데이터를 번역하고, 번역된 결과를 상대방에게 제공한다. 예컨대, 번역부(150)는 국문의 텍스트 데이터를 번역하여 영문의 텍스트 데이터로 변환할 수 있다. 이때, 번역부(150)는 의미단위 판별부(140)의 판별 결과에 따라 텍스트 데이터에서의 임의의 문장 전체 또는 의미단위로 분할된 문장의 일부를 번역할 수 있다.
이렇게 번역된 번역 결과는 실시간으로 상대방한테 제공될 수 있다. 예컨대, 번역 결과는 디스플레이 장치 또는 스피커와 같은 UI(User Interface)를 통해 화면 또는 소리로 상대방에게 제공될 수 있다. 이때, 번역부(150)는 완전한 문장의 번역 결과뿐만 아니라, 의미단위로 분할된 문장의 일부의 번역 결과도 UI를 통해 실시간으로 상대방에게 제공할 수 있다. 이에 대해서는 이후에 구체적으로 설명한다.
이하, 도 2 및 도 4를 참조하여 의미단위 판별부(140)의 동작에 대해 구체적으로 설명한다.
도 2는 본 발명의 실시예에 따른 의미단어 판별부에서 의미단위를 결정하는 기준에 따른 의미단위 판별 과정을 설명하기 위한 도면이다. 도 3은 본 발명의 실시예에 따른 의미단위 판별부에서 형태소 분석기를 이용하여 의미단위로 분할하는 동작을 설명하기 위한 참조 도면이며, 도 4는 본 발명의 실시예에 따른 의미단어 판별부에서 이용하는 문장 내 단어들 간의 의존 관계를 설명하기 위한 도면이다.
이하에서는 설명의 편의를 위해, 화자가 '나는 점심을 먹은 후에 공부를 했다.'를 발화한 경우를 가정한다. 이러한 화자의 음성은 음성 처리부(120)의 음성 인식을 통해 어절 단위의 단어들로 분할된 텍스트 데이터로 생성되며, 생성된 텍스트 데이터의 단어들이 순차적으로 의미단위 판별부(140)에 전달된 경우를 예를 들어 설명한다. 이때, 의미단위 판별부(140)에 전달되는 텍스트 데이터는 어절 단위뿐만 아니라 형태소 단위, 음절 단위 등 다른 문법 단위로 분할되어 전달될 수도 있다.
한편, 의미단위 판별부(140)에서 텍스트 데이터의 분할을 결정하는 기준(우선순위)은 다음과 같을 수 있다. 우선순위가 가장 높은 것은 EPD 정보일 수 있으며, 순차적으로, 종결어미, 의미단위 연결어미, 서술어, 신뢰도 정보 순으로 우선순위를 가질 수 있다.
이와 같은 우선순위를 기준으로, 의미단위 판별부(140)는 도 2와 같은 순서로 동작할 수 있다.
음성 분석부(130)로부터 문장의 끝이라는 정보가 수신되면(S201), 의미단위 판별부(140)는 음성 처리부(120)에서 실시간으로 수신되는 텍스트 데이터의 문장 전체를 번역부(150)로 전송한다(S202). 이에 따라, 번역부(150)는 문장 전체를 번역하며, 번역 결과를 전체 업데이트 한다.
만약, 음성 분석부(130)로부터 문장의 끝이라는 정보가 수신되지 않으면, 의미단위 판별부(140)는 음성 처리부(120)에서 실시간으로 수신되는 텍스트 데이터에서 종결어미가 출현하는지 확인한다(S203). 여기서, 종결어미란, '-다', '-는구나', '-느냐', '-어라', '-자'와 같이 문장을 끝맺음을 나타내는 것으로서, 사전에 데이터베이스에 기저장될 수 있다. 예문에서는 '했다'라는 단어(30_6)가 종결어미일 수 있다.
텍스트 데이터에서 종결어미가 출현하면, 의미단위 판별부(140)는 종결어미가 포함된 해당 문장 전체를 번역부(150)로 전송한다(S204). 이에 따라 번역부(150)는 하나의 문장 전체를 번역하며, 번역 결과를 전체 업데이트 한다.
만약, 텍스트 데이터에서 종결어미가 출현하지 않으면, 의미단위 판별부(140)는 텍스트 데이터의 형태소 분석을 수행하여 의미단위의 연결 어미가 출현하는지 확인한다(S205, S206). 이를 위해, 도 3에 도시된 바와 같이 음성 처리부(120)로부터 순차적으로 전달된 단어들(30_1~30_6)이 의미단위 판별부(140)의 형태소 분석기(141)를 거치면, 다음과 같은 형태소 정보(31)가 출력될 수 있다. 이때, 음성 처리부(120)로부터 순차적으로 전달되는 단어들은 '나는', '점심을', '먹은', '후에', '공부를', '했다.'일 수 있다.
형태소 분석기(141)을 거치면, '나는'이란 단어(30_1)는 명사+조사(31_1), '점심을'이란 단어(30_2)는 명사+조사(31_2), '먹은'이란 단어(30_3)는 용언(31_3), '후에'라는 단어(30_4)는 접속사(31_4), '공부를'이란 단어(30_5)는 명사+조사(31_5), '했다'라는 단어(30_6)는 용언(31_6)과 같이, 각각의 단어에 대한 형태소 정보(31)가 출력될 수 있다.
의미단위 판별부(140)는 형태소 분석기(141)에서 출력된 형태소 정보(31) 중에서 연결 어미가 등장하는지 확인할 수 있다. 여기서, 연결 어미의 예로는 '~후에', '~면서', '~라면', '~할 때', '~전에', '~때문에', '~와 같이'가 있다. 또한, 의미단위를 결정 짓는 형태소 정보는 보조적 연결 어미를 제외한 연결어미들로서, 표 1과 같을 수 있다.
형태소 명칭 | 형태소 기호 | 예 |
일반 연결어미 | ec | ~니, ~게, ~은데, ~고 … |
대등적 연결 어미 | ecc | ~거나 … |
종속적 연결어미 | ecc | ~도록, ~다면 … |
연결 어미가 확인되면, 의미단위 판별부(140)는 연결 어미를 기준으로 이전에 입력된 단어들을 번역부(150)로 전달한다(S207). 예컨대, 임의의 문장 내에서 문장의 시작부터 연결 어미까지의 단어들을 함께 번역부(150)로 전달될 수 있으며, 예문에서는 '나는 점심을 먹은 후에'가 번역부(150)로 전달될 수 있다.
또 다른 예를 들면, '나는 어제 친구 집에서 밥 먹었는데', '밥 먹고 나서', '티비도 보고', '테니스도 친 후에', '음성인식 및 자동 음성 번역을 위한', '자동통역기능이 필요한 기기마다 시스템을 구축하여', '운영체제 플랫폼이 다르기 때문에', '음식을 먹을 수 있는 곳이 많지만', '지금 출발한다면', '도움을 줄 수 있어서 기쁘고' 등과 같이, 연결 어미를 기준으로 이전에 입력된 단어들이 하나의 그룹으로 번역부(150)로 전달될 수 있다.
여기서, 연결 어미를 기준으로 텍스트 데이터를 분할하는 것은 하나의 예이며, 의미단위를 판별할 수 있는 다른 형태소 정보를 활용하여 의미단위를 분할할 수 있다. 또한, 의미단위 판별부(140)에서 의미단위 분할의 결정은 형태소 정보만으로 결정하지 않고, 화자가 발화를 잠깐 멈추는 순간의 일시 정지 정보(pause 정보) 및 음성 처리(디코딩)의 신뢰도(정확도) 정보를 이용하여 복합적으로 결정한다.
나아가, 의미단위 판별부(140)는 단어 간의 의존관계정보를 더 활용하여 의미단위 분할을 결정할 수 있다. 여기서, 의존관계란, 문장에서 단어들 간의 관계를 도 4과 같이 트리(tree) 형태로 표현할 수 있다. 트리에서 가장 위에 위치한 단어는 동사(41)일 수 있으며, 그 외 각 단어는 엣지(edge)(42)의 위치에 존재하며, 단어 간의 관계는 vertex(43)로 표현할 수 있다. 여기서의 위아래의 위치는 상하관계를 의미한다. 이러한 의존관계의 정보로 이용하여 의미단위를 탐지할 수 있으며, 다국어로 확장하는 경우 한국어의 연결어미와 같은 의미단위를 구분하는 단어를 의존관계 정보로 찾을 수도 있다. 한편, 도 3에서는 영어에 대한 의존관계 그래프를 예로 들었으나 다른 언어로도 의존관계를 표현할 수 있다.
이와 같이, 문장 내 연결 어미가 확인되면, 의미단위 판별부(140)는 예문에서 연결 어미를 기준으로 분할된 '나는 점심을 먹은 후에'를 수신한 번역부(150)는 하나의 문장에서 일부를 수신하게 되는 것이므로, 문장의 일부를 번역하며, 번역 결과를 부분 업데이트한다.
만약, 텍스트 데이터에서 연결 어미가 출현하지 않으면, 의미단위 판별부(140)는 서술어가 출현하는지 확인한다(S208). 여기서, 서술어는 주어에 대한 어떤 동작이나 형태, 존재, 성질, 작용 등을 표현하는 것으로서, 예문에서는, '먹은', '했다' 일 수 있다.
서술어의 출현이 확인되면, 의미단위 판별부(140)는 서술어를 기준으로 분할된 단어들의 집합을 번역부(150)에 전달한다(S209). 예컨대, 의미단위 판별부(140)는 예문에서 '나는 점심을 먹은'을 번역부(150)로 전달할 수 있다. 이에 따라, 번역부(150)는 문장의 일부를 수신하게 되는 것이므로, 문장의 일부를 번역하며 번역 결과를 부분 업데이트한다.
만약, 텍스트 데이터에 서술어가 출현하지 않으면, 의미단위 판별부(140)는 음성 처리부(120)에서 전달받은 신뢰도의 값이 일정 기준 이상인지 확인한다(S210). 여기서 일정 기준은 사전에 설정된 기준 값으로서, 관리자 또는 작업자에 의해 설정될 수 있다.
신뢰도가 일정 기준 이상이 아니면, 의미단위 판별부(140)는 텍스트 데이터를 번역부(150)로 전달하지 않고 단계 S201로 피드백하여, 실시간으로 전달되는 텍스트 데이터에 대해 상기와 같이 것은 EPD 정보, 종결어미, 의미단위 연결어미, 서술어, 신뢰도 정보를 순차적으로 확인하는 동작을 수행한다.
만약, 신뢰도의 값이 일정 기준 이상이면, 의미단위 판별부(140)는 실시간으로 수신되는 텍스트 데이터를 번역부(150)로 전달한다(S211). 즉, 신뢰도가 일정 기준 이상이면 텍스트 데이터에 포함된 다수의 단어들을 순차적으로 전달한다. 이에 따라, 번역부(150)는 수신되는 텍스트 데이터에 포함된 각 단어들을 번역하고, 번역된 단어들을 나열하여 번역 결과를 상대방에게 제공한다.
이하, 도 5를 참조하여 분할된 텍스트 데이터의 번역 결과를 표시하는 동작에 대해 구체적으로 설명한다.
도 5는 본 발명의 실시예에 따른 번역부에서 분할된 텍스트 데이터의 번역 결과를 표시하는 동작을 설명하기 위한 도면이다.
예컨대, 도 5와 같이 화자가 '오후 비행 대기자 명단에 저희 이름을 넣어 주시고,…'라는 문장을 발화하는 경우를 예를 들어 설명한다. 만약, 화자가 '오후 비행 대기자 명단에 저희 이름을'까지 발화한 경우, 문장의 끝을 나타내는 EPD 정보를 수신하거나, 종결어미, 의미단위 연결어미, 서술어 중 어느 것도 출현한 것을 확인하지 못하기 때문에, 의미단위 판별부(140)는 신뢰도 정보를 이용하여 번역부(150)로 텍스트 데이터의 전송 여부를 결정한다.
만약, 현재까지 수신된 텍스트 데이터(예컨대, '오후 비행 대기자 명단에 저희 이름을')의 신뢰도가 일정 기준 이상인 경우, 의미단위 판별부(140)는 현재까지 수신된 텍스트 데이터를 실시간으로 번역부(150)에 전달한다. 이에 따라, 번역부(150)는 도 5의 (a)와 같이 수신되는 단어들을 번역하고, 번역 결과를 해당 언어의 문법에 맞게 'our name on the waiting list for the afternoon flight,'와 같이 나열한다.
만약, 번역 결과를 화면(51)으로 제공하는 경우, 번역할 단어(음성 인식된 단어)(52)를 나열할 뿐만 아니라, 음성 인식된 명사의 색이나 글자모양을 변형하여 인식내용을 표시해주고, 음성인식결과 단어(52)와 번역결과 단어(53) 사이에 화살표(54) 등으로 관계를 연결해준다. 여기서, 색, 글자 모양의 효과는 하나의 예이며, 다른 방법으로 인식내용을 표시해줄 수도 있다. 또한, 화살표로 표시하는 것은 하나의 예이며, 다른 방식으로 표시하여 발화한 단어와 번역결과의 단어를 연결해줄 수 있다.
이후, 화자가 '넣어 주시고'라는 단어를 발화하면, 의미단위 판별부(140)는 연결어미의 출현을 확인할 수 있기 때문에, 해당 단어에 대한 텍스트 데이터를 번역부(150)로 전달되어 번역될 수 있다. 이에 따라, 기존의 번역 결과인 'our name on the waiting list for the afternoon flight,'(55)가 도 5의 (b)와 같이 오른쪽으로 이동하고, 그 자리에 '넣어 주시고'의 번역 결과인 'put'(56)이 등장한다.
여기서, 기존의 번역결과(55)가 오른쪽으로 이동하는 방법은 하나의 예이며, 기존의 번역결과(55)의 위치 변화는 다른 방법으로도 구현 가능하다. 또한, 도 5는 한국어를 영어로 통역한 것을 예로 든 것뿐이고, 어떤 언어 쌍에서든 해당 언어의 특성(문법)을 반영하여 동일하게 동작할 수 있다.
기존의 자동 음성 번역 기술은 완전한 문장을 기준으로 번역하기 때문에, 화자가 완전한 문장을 발화하기 전까지는 상대방은 번역 결과를 제공받지 못하였으나, 본 발명의 실시예에 따르면, 문장을 의미단위로 분할하여 분할된 부분만 부분 번역하고 그 결과를 상대방에게 전달해줌으로써, 상대방이 번역 결과를 기다리는 시간이 줄어들어 대화의 시간을 줄일 수 있다.
또한, 본 발명의 실시예에 따르면 전체 문장이 번역되기 전 중간에 번역 결과를 상대방에게 전달해줌으로써, 상대방의 입장에서 화자가 전달하려는 의미를 빨리 이해할 수 있도록 도와줄 수 있다.
이상, 본 발명의 바람직한 실시예를 통하여 본 발명의 구성을 상세히 설명하였으나, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 본 명세서에 개시된 내용과는 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 보호범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구의 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100 : 자동 음성 번역 장치
110 : 음성 입력부 120 : 음성 처리부
130 : 음성 분석부 140 : 의미단위 판별부
150 : 번역부
110 : 음성 입력부 120 : 음성 처리부
130 : 음성 분석부 140 : 의미단위 판별부
150 : 번역부
Claims (17)
- 화자가 발화하는 음성을 수신하는 음성 입력부;
음성 인식 과정을 통해 상기 음성 입력부로부터 수신되는 음성 데이터를 텍스트 데이터로 변환하는 음성 처리부;
상기 음성 데이터를 분석하여 문장의 끝을 파악하고, 상기 문장의 끝을 나타내는 EPD(End-Point Detector) 정보를 생성하는 음성 분석부;
상기 EPD 정보 및 상기 텍스트 데이터에 포함된 단어들의 형태소 정보 중 적어도 하나를 이용하여 상기 텍스트 데이터에서의 의미단위 및 문장의 끝을 판별하며, 상기 의미단위 또는 상기 문장의 끝을 기준으로 상기 텍스트 데이터를 분할하는 의미단위 판별부; 및
상기 의미단위 판별부로부터 수신되는 상기 분할된 텍스트 데이터를 번역하는 번역부;
를 포함하는 자동 음성 번역 장치.
- 제1항에 있어서, 상기 음성 분석부는,
상기 음성 데이터에서 사람의 음성을 나타내는 특정 주파수 대역의 음성 신호 정보와 상기 음성이 잠시 멈추는 것을 나타내는 일시정지(Pause) 정보를 이용하여 상기 음성 데이터에서의 문장의 끝을 파악하는 것
인 자동 음성 번역 장치.
- 제1항에 있어서, 상기 의미단위 판별부는,
상기 텍스트 데이터에서 문장의 끝이 확인되면, 상기 텍스트 데이터의 문장 전체를 상기 번역부로 전달하는 것
인 자동 음성 번역 장치.
- 제1항에 있어서, 상기 의미단위 판별부는,
상기 텍스트 데이터에서 종결 어미의 존재를 확인하면, 상기 종결 어미가 포함된 상기 텍스트 데이터의 문장 전체를 상기 번역부로 전달하는 것
인 자동 음성 번역 장치.
- 제1항에 있어서, 상기 의미단위 판별부는,
상기 텍스트 데이터에서 연결 어미의 존재를 확인하면, 상기 연결 어미를 기준으로 상기 텍스트 데이터를 분할하며, 상기 텍스트 데이터에서 상기 연결 어미 이전에 수신된 단어들을 상기 연결 어미와 함께 상기 번역부로 전달하는 것
인 자동 음성 번역 장치.
- 제1항에 있어서, 상기 의미단위 판별부는,
상기 텍스트 데이터에서 서술어의 존재를 확인하면, 상기 서술어를 기준으로 상기 텍스트 데이터를 분할하며, 상기 텍스트 데이터에서 상기 서술어 이전에 수신된 단어들을 상기 서술어와 함께 상기 번역부로 전달하는 것
인 자동 음성 번역 장치.
- 제1항에 있어서, 상기 의미단위 판별부는,
상기 음성 인식 결과의 정확성 확률을 이용하여 계산되는 신뢰도의 값이 기 설정된 일정 기준 이상이면, 상기 텍스트 데이터에 포함된 다수의 단어를 상기 번역부로 전달하는 것
인 자동 음성 번역 장치.
- 제1항에 있어서, 상기 의미단위 판별부는,
상기 EPD 정보를 이용한 상기 텍스트 데이터에서의 문장의 끝, 상기 텍스트 데이터에서의 종결어미, 연결어미, 서술어의 존재 여부 및 상기 텍스트 데이터의 신뢰도 정보 순으로 상기 텍스트 데이터를 분할하여 상기 번역부로 전달하는 것
인 자동 음성 번역 장치.
- 화자가 발화하는 음성에 대한 음성 데이터를 수신하는 단계;
음성 인식 과정을 통해 상기 음성 데이터를 텍스트 데이터로 변환하는 단계;
상기 음성 데이터를 분석하여 문장의 끝을 파악하고, 상기 문장의 끝을 나타내는 EPD(End-Point Detector) 정보를 생성하는 단계;
상기 EPD 정보 및 상기 텍스트 데이터에 포함된 단어들의 형태소 정보 중 적어도 하나를 이용하여 상기 텍스트 데이터에서의 의미단위 및 문장의 끝을 판별하는 단계; 및
상기 의미단위 또는 상기 문장의 끝을 기준으로 상기 텍스트 데이터를 분할하며, 분할된 상기 텍스트 데이터를 번역하는 단계;
를 포함하는 자동 음성 번역 방법.
- 제9항에 있어서, 상기 생성하는 단계는,
상기 음성 데이터에서 사람의 음성을 나타내는 특정 주파수 대역의 음성 신호 정보와 상기 음성이 잠시 멈추는 것을 나타내는 일시정지(Pause) 정보 중 적어도 하나를 이용하여 상기 EPD 정보를 생성하는 것
인 자동 음성 번역 방법.
- 제9항에 있어서, 상기 판별하는 단계는,
상기 EPD 정보 및 상기 형태소 정보를 이용하여 상기 텍스트 데이터에서 문장의 끝, 종결어미, 연결 어미, 서술어 중 적어도 하나의 존재 여부를 판별하는 것
인 자동 음성 번역 방법.
- 제11항에 있어서, 상기 번역하는 단계는,
상기 텍스트 데이터에서 문장의 끝이 확인되면, 상기 텍스트 데이터의 문장 전체를 번역하는 것
인 자동 음성 번역 방법.
- 제11항에 있어서, 상기 번역하는 단계는,
상기 텍스트 데이터에서 종결 어미의 존재가 확인되면, 상기 종결 어미가 포함된 상기 텍스트 데이터의 문장 전체를 번역하는 것
인 자동 음성 번역 방법.
- 제11항에 있어서, 상기 번역하는 단계는,
상기 텍스트 데이터에서 연결 어미의 존재가 확인되면, 상기 연결 어미를 기준으로 상기 텍스트 데이터를 분할하며, 상기 텍스트 데이터에서 상기 연결 어미 이전에 수신된 단어들을 상기 연결 어미와 함께 번역하는 것
인 자동 음성 번역 방법.
- 제11항에 있어서, 상기 번역하는 단계는,
상기 텍스트 데이터에서 서술어의 존재가 확인되면, 상기 서술어를 기준으로 상기 텍스트 데이터를 분할하며, 상기 텍스트 데이터에서 상기 서술어 이전에 수신된 단어들을 상기 서술어와 함께 번역하는 것
인 자동 음성 번역 방법.
- 제11항에 있어서, 상기 번역하는 단계는,
상기 음성 인식 결과의 정확성 확률을 이용하여 계산되는 신뢰도의 값이 기 설정된 일정 기준 이상이면, 상기 텍스트 데이터에 포함된 다수의 단어를 실시간으로 번역하는 것
인 자동 음성 번역 방법.
- 제9항에 있어서, 상기 번역하는 단계는,
상기 텍스트 데이터에서 문장의 끝을 확인하며, 상기 문장의 끝이 확인되면, 상기 텍스트 데이터의 문장 전체를 번역하는 단계;
상기 문장의 끝이 확인되지 않으면 상기 텍스트 데이터에서 종결 어미의 존재를 확인하며, 상기 종결 어미의 존재가 확인되면 상기 종결 어미가 포함된 상기 텍스트 데이터의 문장 전체를 번역하는 단계;
상기 종결 어미의 존재가 확인되지 않으면 상기 텍스트 데이터에서 연결 어미의 존재를 확인하며, 상기 연결어미의 존재가 확인되면, 상기 연결 어미를 기준으로 이전에 수신된 단어들을 상기 연결 어미와 함께 번역하는 단계;
상기 연결 어미의 존재가 확인되지 않으면 상기 텍스트 데이터에서 서술어의 존재를 확인하며, 상기 서술어의 존재가 확인되면 상기 서술어를 기준으로 이전에 수신된 단어들을 상기 서술어와 함께 번역하는 단계; 및
상기 서술어의 존재가 확인되지 않으면, 상기 음성 인식 결과의 정확성 확률을 이용하여 계산되는 신뢰도의 값이 기 설정된 일정 기준 이상인지 확인하며, 상기 신뢰도 값이 상기 일정 기준 이상이면, 상기 텍스트 데이터에 포함된 다수의 단어를 번역하는 것
인 자동 음성 번역 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150111202A KR20170017379A (ko) | 2015-08-06 | 2015-08-06 | 자동 음성 번역 장치 및 그 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150111202A KR20170017379A (ko) | 2015-08-06 | 2015-08-06 | 자동 음성 번역 장치 및 그 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20170017379A true KR20170017379A (ko) | 2017-02-15 |
Family
ID=58112266
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150111202A KR20170017379A (ko) | 2015-08-06 | 2015-08-06 | 자동 음성 번역 장치 및 그 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20170017379A (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190040891A (ko) * | 2017-10-11 | 2019-04-19 | 주식회사 산타 | 클라우드 서비스를 이용한 영상 콘텐츠의 음성 추출 및 기계번역 연동 서비스 제공 시스템 및 방법 |
CN111738024A (zh) * | 2020-07-29 | 2020-10-02 | 腾讯科技(深圳)有限公司 | 实体名词标注方法和装置、计算设备和可读存储介质 |
KR20230080557A (ko) | 2021-11-30 | 2023-06-07 | 고남욱 | 보이스 교정 시스템 |
-
2015
- 2015-08-06 KR KR1020150111202A patent/KR20170017379A/ko unknown
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190040891A (ko) * | 2017-10-11 | 2019-04-19 | 주식회사 산타 | 클라우드 서비스를 이용한 영상 콘텐츠의 음성 추출 및 기계번역 연동 서비스 제공 시스템 및 방법 |
WO2020045753A1 (ko) * | 2017-10-11 | 2020-03-05 | 주식회사 산타 | 클라우드 서비스를 이용한 영상 콘텐츠의 음성 추출 및 기계번역 연동 서비스 제공 시스템 및 방법 |
CN111738024A (zh) * | 2020-07-29 | 2020-10-02 | 腾讯科技(深圳)有限公司 | 实体名词标注方法和装置、计算设备和可读存储介质 |
CN111738024B (zh) * | 2020-07-29 | 2023-10-27 | 腾讯科技(深圳)有限公司 | 实体名词标注方法和装置、计算设备和可读存储介质 |
KR20230080557A (ko) | 2021-11-30 | 2023-06-07 | 고남욱 | 보이스 교정 시스템 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10672391B2 (en) | Improving automatic speech recognition of multilingual named entities | |
JP6484236B2 (ja) | オンライン音声翻訳方法及び装置 | |
JP4481972B2 (ja) | 音声翻訳装置、音声翻訳方法及び音声翻訳プログラム | |
JP2015516587A5 (ko) | ||
KR101689290B1 (ko) | 대화에서 정보를 추출하는 장치 | |
KR102396983B1 (ko) | 문법 교정 방법 및 장치 | |
JP6327848B2 (ja) | コミュニケーション支援装置、コミュニケーション支援方法およびプログラム | |
CN108231065A (zh) | 多语者语音识别校正系统 | |
WO2017084334A1 (zh) | 一种语种识别方法、装置、设备及计算机存储介质 | |
US10290299B2 (en) | Speech recognition using a foreign word grammar | |
EP3779971A1 (en) | Method for recording and outputting conversation between multiple parties using voice recognition technology, and device therefor | |
US20150199340A1 (en) | System for translating a language based on user's reaction and method thereof | |
US10366173B2 (en) | Device and method of simultaneous interpretation based on real-time extraction of interpretation unit | |
EP3953929A1 (en) | Automated control of noise reduction or noise masking | |
US20180211650A1 (en) | Automatic language identification for speech | |
CN108228574B (zh) | 文本翻译处理方法及装置 | |
CN110675866B (zh) | 用于改进至少一个语义单元集合的方法、设备及计算机可读记录介质 | |
KR20190041147A (ko) | 사용자 맞춤형 통번역 장치 및 방법 | |
JP6875819B2 (ja) | 音響モデル入力データの正規化装置及び方法と、音声認識装置 | |
Hämäläinen et al. | Multilingual speech recognition for the elderly: The AALFred personal life assistant | |
KR20170017379A (ko) | 자동 음성 번역 장치 및 그 방법 | |
US10847154B2 (en) | Information processing device, information processing method, and program | |
US8527270B2 (en) | Method and apparatus for conducting an interactive dialogue | |
Suhm et al. | Interactive recovery from speech recognition errors in speech user interfaces | |
CN108304389B (zh) | 交互式语音翻译方法及装置 |