KR101242182B1 - 음성인식장치 및 음성인식방법 - Google Patents
음성인식장치 및 음성인식방법 Download PDFInfo
- Publication number
- KR101242182B1 KR101242182B1 KR1020120132307A KR20120132307A KR101242182B1 KR 101242182 B1 KR101242182 B1 KR 101242182B1 KR 1020120132307 A KR1020120132307 A KR 1020120132307A KR 20120132307 A KR20120132307 A KR 20120132307A KR 101242182 B1 KR101242182 B1 KR 101242182B1
- Authority
- KR
- South Korea
- Prior art keywords
- keyword
- word data
- data
- word
- voice
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 239000000284 extract Substances 0.000 claims abstract description 14
- 238000007781 pre-processing Methods 0.000 claims abstract description 12
- 238000012805 post-processing Methods 0.000 claims description 24
- 238000000605 extraction Methods 0.000 claims description 17
- 238000013467 fragmentation Methods 0.000 claims description 12
- 238000006062 fragmentation reaction Methods 0.000 claims description 12
- 238000004321 preservation Methods 0.000 claims description 5
- 230000014509 gene expression Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 239000010931 gold Substances 0.000 description 2
- 229910052737 gold Inorganic materials 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001932 seasonal effect Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000007935 neutral effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- 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/02—Feature extraction for speech recognition; Selection of recognition unit
-
- 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/04—Segmentation; Word boundary detection
-
- 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/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/1815—Semantic context, e.g. disambiguation of the recognition hypotheses based on word meaning
-
- 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/02—Feature extraction for speech recognition; Selection of recognition unit
- G10L2015/027—Syllables being the recognition units
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)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Machine Translation (AREA)
Abstract
본 발명은 음성인식장치 및 음성인식방법에 관한 것으로서, 본 발명의 일 실시예에 의한 음성인식장치는, 입력되는 사용자의 음성을 감지하여, 상기 사용자의 음성에 대응하는 문장을 전기적 신호인 문장데이터로 생성하는 음성전처리부; 및 상기 문장데이터에서 키워드를 추출하고, 상기 키워드에 대응하는 질의정보를 생성하는 음성후처리부를 포함할 수 있다.
Description
본 발명은 음성인식 장치 및 음성인식 방법에 관한 것으로서, 특히 오인식된 음절에 대한 교정을 수행할 수 있는 음성인식장치 및 음성인식방법에 관한 것이다.
음성인식기술을 이용한 자동응답서비스(ARS)는 제시되는 안내 멘트에 따라 사용자가 응답하고, 사용자의 응답을 분석하여 처리하는 서비스로서, 현재 다양한 분야에서 광범위하게 사용되고 있다.
그런데, 기존의 음성인식기술은 데이터베이스에 등록되어 있는 정확한 용어를 입력하는 경우에만 음성인식이 성공적으로 수행되며, 사용자가 문법에 맞지 않는 음성신호를 입력하는 경우에는 인식률이 저하된다는 문제가 있다. 또한, 사용자가 입력한 긴 음성 데이터는 적절하게 분할하여 분석하기 어려우므로 사용자가 긴 문장을 입력하면 사용자의 의도를 정확하게 파악할 수 없었다.
한국등록특허 제0933895호에는 입력된 음성데이터를 다수개로 분할하여 음성인식률를 향상시키고, 분할된 음성데이터에 대하여 병렬로 음성인식을 수행하는 구성이 기재되어 있다. 그러나 이러한 경우에도 음성데이터의 길이가 긴 경우에는 키워드에 해당하는 부분 및 그 밖의 부분을 정확하게 구분하기 어려워 사용자의 의도를 용이하게 파악할 수 없다는 문제가 있다.
또한, 한국등록특허 제1021215호에는 음성 분할에 의한 병렬음성인식장치 및 방법에 관하여 기재되어 있으나, 이러한 방법 역시 음성인식의 속도를 향상시키기 위하여 제안된 것일뿐 음성인식의 정확도를 향상시키기 위한 방법이라 할 수 없다. 따라서, 여전히 사용자의 의도를 정확하게 파악하여 그에 따른 처리를 수행하여야 하는 문제점이 존재한다.
이상의 문제를 해결하기 위해, 사용자로부터 문법에 맞지 않는 긴 음성 신호가 입력되는 경우에도 키워드를 정확하게 추출하여 사용자의 의도에 따라 처리할 수 있는 방법이 필요하다.
본 발명은, 오인식된 음절에 대한 교정을 수행할 수 있는 음성인식장치 및 음성인식방법을 제공하고자 한다.
본 발명의 일 실시예에 의한 음성인식방법은, 입력되는 사용자의 음성을 감지하여, 상기 사용자의 음성에 대응하는 문장을 전기적 신호인 문장데이터로 생성하는 음성 전처리 과정; 및 상기 문장데이터에서 키워드를 추출하고, 상기 키워드에 대응하는 질의정보를 생성하는 음성 후처리 과정을 포함할 수 있다.
여기서 상기 음성 후처리 과정은, 상기 문장데이터를 문장의 띄어쓰기 단위에 대응하는 복수의 어절 데이터로 분할하는 단편화(fragmentation) 단계; 상기 각각의 어절 데이터를 기 설정된 키워드 테이블과 비교하여, 상기 어절 데이터에 대응하는 키워드를 추출하는 키워드 추출단계; 및 상기 키워드를 결합하여, 상기 질의정보를 생성하는 질의정보 생성단계를 포함할 수 있다.
여기서 상기 키워드 테이블은, 질의의 대상이 되는 목적 키워드가 저장되는 목적 테이블, 상기 목적 키워드에 대한 동작을 나타내는 동작 키워드가 저장되는 동작 테이블 및 상기 질의에 대한 조건을 나타내는 조건 키워드가 저장되는 조건 테이블을 포함할 수 있다.
여기서 상기 키워드 추출단계는, 상기 목적 테이블, 동작 테이블 및 조건 테이블과 상기 어절 데이터를 각각 비교하여, 상기 어절 데이터에 대응하는 목적 키워드, 동작 키워드 및 조건 키워드를 추출할 수 있다.
여기서 상기 질의정보 생성단계는, 상기 목적 키워드, 동작 키워드 및 조건 키워드를 결합하여, 데이터베이스에 대한 질의(inquiry)를 수행하는 명령어를 포함하는 상기 질의정보를 생성할 수 있다.
여기서 상기 질의정보 생성단계는, 상기 데이터베이스에 대한 질의를 SQL 명령어를 이용하여 생성할 수 있다.
여기서 상기 음성 후처리 과정은, 상기 키워드 테이블에 상기 어절 데이터와 대응하는 키워드가 없으면 상기 어절 데이터를 오인식 어절 데이터로 설정하고, 상기 오인식 어절 데이터에 대응하는 키워드를 포함하는 교정 테이블을 이용하여, 상기 오인식 어절 데이터에 대응하는 키워드를 추출하는 교정단계를 더 포함할 수 있다.
여기서 상기 교정 테이블은, 각각의 키워드에 포함된 자음과 동일한 자음을 포함하는 복수의 오인식 어절 데이터가 저장된 자음보전단어집합, 상기 각각의 키워드에 포함된 모음과 대응되는 모음을 포함하는 복수의 오인식 어절데이터가 저장된 모음유사단어집합 및 상기 각각의 키워드를 오인식 어절 데이터로 오인식하는 비율이 기 설정값 이상인 복수의 오인식 어절 데이터가 저장된 오인식집합 중 적어도 어느 하나를 포함할 수 있다.
여기서 상기 교정단계는, 상기 교정 테이블에 상기 오인식 어절 데이터에 대응하는 키워드가 없으면, 상기 오인식 어절 데이터에 대한 음소값을 계산하는 음소값 계산단계; 및 상기 오인식 어절 데이터의 음소값과 가장 근사한 음소값을 가지는 키워드를 상기 오인식 어절 데이터에 대응하는 키워드로 설정하는 근사키워드 설정단계를 더 포함할 수 있다.
여기서 상기 음소값 계산 단계는, 상기 오인식 어절 데이터를 구성하는 각각의 음절에 대하여 상기 음절을 구성하는 각각의 음소에 대응하는 점수를 합산하고, 상기 오인식 어절 데이터에 포함된 음절의 개수 및 상기 음절의 위치에 따른 가중치를 상기 합산된 점수에 곱한 후, 상기 가중치가 고려된 음절의 점수를 합산하여 상기 오인식 어절 데이터에 대한 음소값을 계산할 수 있다.
본 발명의 일 실시예에 의한 음성인식장치는, 입력되는 사용자의 음성을 감지하여, 상기 사용자의 음성에 대응하는 문장을 전기적 신호인 문장데이터로 생성하는 음성전처리부; 및 상기 문장데이터에서 키워드를 추출하고, 상기 키워드에 대응하는 질의정보를 생성하는 음성후처리부을 포함할 수 있다.
여기서 상기 음성 후처리부는, 상기 문장데이터를 문장의 띄어쓰기 단위에 대응하는 복수의 어절 데이터로 분할하는 단편화부; 상기 각각의 어절 데이터를 기 설정된 키워드 테이블과 비교하여, 상기 어절 데이터에 대응하는 키워드를 추출하는 키워드추출부; 및 상기 키워드를 결합하여, 상기 질의정보를 생성하는 질의정보생성부를 포함할 수 있다.
여기서 상기 키워드 테이블은, 질의의 대상이 되는 목적 키워드가 저장되는 목적 테이블; 상기 목적 키워드에 대한 동작을 나타내는 동작 키워드가 저장되는 동작 테이블; 및 상기 질의에 대한 조건을 나타내는 조건 키워드가 저장되는 조건 테이블을 포함할 수 있다.
여기서 상기 키워드추출부는, 상기 목적 테이블, 동작 테이블 및 조건 테이블과 상기 어절 데이터를 각각 비교하여, 상기 어절 데이터에 대응하는 목적 키워드, 동작 키워드 및 조건 키워드를 추출할 수 있다.
여기서 상기 질의정보생성부는, 상기 목적 키워드, 동작 키워드 및 조건 키워드를 결합하여, 데이터베이스에 대한 질의(inquiry)를 수행하는 명령어를 포함하는 상기 질의정보를 생성할 수 있다.
여기서 상기 질의정보생성부는, 상기 데이터베이스에 대한 질의를 SQL 명령어를 이용하여 생성할 수 있다.
여기서 상기 음성 후처리부는, 상기 키워드 테이블에 상기 어절 데이터와 대응하는 키워드가 없으면 상기 어절 데이터를 오인식 어절 데이터로 설정하고, 상기 오인식 어절 데이터에 대응하는 키워드를 포함하는 교정 테이블을 이용하여, 상기 오인식 어절 데이터에 대응하는 키워드를 추출하는 교정부를 더 포함할 수 있다.
여기서 상기 교정 테이블은, 각각의 키워드에 포함된 자음과 동일한 자음을 포함하는 복수의 오인식 어절 데이터가 저장된 자음보전단어집합; 상기 각각의 키워드에 포함된 모음과 대응되는 모음을 포함하는 복수의 오인식 어절데이터가 저장된 모음유사단어집합; 및 상기 각각의 키워드를 오인식 어절 데이터로 오인식하는 비율이 기 설정값 이상인 복수의 오인식 어절 데이터가 저장된 오인식집합 중 적어도 어느 하나를 포함할 수 있다.
여기서 상기 교정부는, 상기 교정 테이블에 상기 오인식 어절 데이터에 대응하는 키워드가 없으면, 상기 오인식 어절 데이터에 대한 음소값을 계산하는 음소값계산부; 및 상기 오인식 어절 데이터의 음소값과 가장 근사한 음소값을 가지는 키워드를 상기 오인식 어절 데이터에 대응하는 키워드로 설정하는 근사키워드설정부를 더 포함할 수 있다.
여기서 상기 음소값계산부는, 상기 오인식 어절 데이터를 구성하는 각각의 음절에 대하여 상기 음절을 구성하는 각각의 음소에 대응하는 점수를 합산하고, 상기 오인식 어절 데이터에 포함된 음절의 개수 및 상기 음절의 위치에 따른 가중치를 상기 합산된 점수에 곱한 후, 상기 가중치가 고려된 음절의 점수를 합산하여 상기 오인식 어절 데이터에 대한 음소값을 계산할 수 있다.
본 발명의 일 실시예에 의한 컴퓨터로 읽을 수 있는 기록매체는, 상기 음성 인식 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록할 수 있다.
본 발명의 일 실시예에 의한 음성인식장치 및 음성인식방법은, 입력되는 사용자의 음성이 오인식되어 잘못된 음절로 변환된 경우에도, 상기 오인식된 음절을 교정할 수 있으므로, 음성 인식율을 높일 수 있다.
특히, 본 발명의 일 실시예에 의한 음성인식장치 및 음성인식방법에 의하면, 사용자의 억양이나 발음상에 문제로 인하여 잘못 인식된 음절도, 사용자가 발화하고자 하는 의도에 맞는 음절로 교정할 수 있다.
도1은 본 발명의 일 실시예에 의한 음성인식장치를 나타내는 블록도이다.
도2는 본 발명의 일 실시예에 의한 음성인식장치의 음성후처리부를 나타내는 블록도이다.
도3은 본 발명의 일 실시예에 따라, 문장 데이터를 복수의 어절 데이터로 분할하는 것을 도시한 개략도이다.
도4는 본 발명의 일 실시예에 의한 키워드 테이블 및 교정 테이블을 도시한 테이블표이다.
도5는 본 발명의 일 실시예에 의한 음소값 계산을 위한 음소별 점수를 나타낸 테이블표이다.
도6은 본 발명의 일 실시예에 의한 음소 동질성 테이블을 도시한 테이블표이다.
도7은 본 발명의 일 실시예에 의한 음성인식방법을 나타낸 순서도이다.
도2는 본 발명의 일 실시예에 의한 음성인식장치의 음성후처리부를 나타내는 블록도이다.
도3은 본 발명의 일 실시예에 따라, 문장 데이터를 복수의 어절 데이터로 분할하는 것을 도시한 개략도이다.
도4는 본 발명의 일 실시예에 의한 키워드 테이블 및 교정 테이블을 도시한 테이블표이다.
도5는 본 발명의 일 실시예에 의한 음소값 계산을 위한 음소별 점수를 나타낸 테이블표이다.
도6은 본 발명의 일 실시예에 의한 음소 동질성 테이블을 도시한 테이블표이다.
도7은 본 발명의 일 실시예에 의한 음성인식방법을 나타낸 순서도이다.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시 예를 상세히 설명한다. 다만, 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략한다.
도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
또한, 어떤 부분이 어떤 구성 요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도1은 본 발명의 일 실시예에 의한 음성인식장치를 나타내는 블록도이다.
도1을 참조하면, 본 발명의 일 실시예에 의한 음성인식장치는 음성전처리부(100) 및 음성후처리부(200)를 포함할 수 있다.
이하, 도1을 참조하여 본 발명의 일 실시예에 의한 음성인식장치를 설명한다.
본 발명의 일 실시예에 의한 음성인식장치는, 자동 응답 서비스 등에 적용되어 사용자가 입력한 음성에 따라 그에 대응하는 처리를 수행하는 데 사용될 수 있으며, 이에 한정되지 않고 음성 인식 기술을 필요로 하는 모든 분야에 적용가능하다.
음성전처리부(100)는, 상기 음성전처리부(100)에 구비되는 마이크로폰 등의 음성입력수단(미도시)을 이용하여 입력되는 사용자의 음성을 감지할 수 있다. 여기서, 상기 사용자의 음성은 특정한 주파수 및 진폭을 가지는 아날로그 형태의 음성 신호로 볼 수 있으며, 상기 음성전처리부(100)는 상기 입력된 음성 신호를 아날로그-디지털 변환기(미도시) 등을 통하여 디지털 신호로 변환할 수 있다. 이때, 아날로그-디지털 변환기는 샘플링 주파수로 8kHz 또는 16kHz를 사용할 수 있으며, 상기 디지털 신호로 변환되는 샘플의 해상도는 16비트(bit)로 할 수 있다. 이후, 상기 디지털 신호에 대한 부호화 과정을 통하여 상기 디지털 신호를 디지털 데이터 형태의 음성데이터로 변환할 수 있다.
상기 입력되는 사용자의 음성은 복수개의 음절의 결합으로 구성될 수 있으며, 상기 음절의 결합을 통하여 특정한 의미를 가지는 단어나 문장을 형성할 수 있다. 여기서, 상기 "음절"은 직관적으로 인지되는 단어나 말의 기본 음성 단위로서, 각각의 음절마다 고유한 진동 및 진폭을 가질 수 있다. 따라서, 상기 음성데이터를 각각의 음절단위로 구별한 후, 상기 음절단위에 해당하는 음절을 매칭하여 상기 사용자의 음성에 대응하는 문장을 판별할 수 있다. 여기서, 상기 음성전처리부(100)는, 상기 각각의 음절에 대응하는 값을 미리 설정할 수 있으므로, 상기 음성데이터를 디지털 데이터 형태의 문장데이터로 변환할 수 있다.
음성후처리부(200)는, 상기 문장데이터에서 키워드를 추출하고, 상기 키워드에 대응하는 질의정보를 생성할 수 있다.
상기 문장데이터에는 사용자의 정보요청이나 특정한 동작의 수행에 대한 요청 등이 포함될 수 있다. 예를들어, 사용자는 "10월달의 계좌 입출금내역을 보여달라" 음성신호를 은행의 자동 응답 서비스에 입력할 수 있으며, 상기 자동 응답 서비스는 상기 음성전처리부(100)를 이용하여 상기 음성신호에 대응하는 문장데이터를 생성할 수 있다. 여기서, 상기 자동 응답 서비스가 사용자의 "10월달 계좌 입출금내역"을 제공하기 위해서는, 상기 문장데이터에 포함된 의미를 판별할 수 있어야 한다. 다만, 상기 음성전처리부(100)는 상기 음성신호를 대응하는 음절을 포함하는 문장데이터를 생성하는 것으로서, 상기 문장데이터로의 변환만으로는 사용자의 정보요청이나 특정 동작 수행 요청 등에 대한 내용을 판별할 수는 없다. 따라서, 상기 음성후처리부(200)를 이용하여, 상기 문장데이터에 포함된 사용자의 정보요청이나 특정 동작 수행 요청 등 사용자의 의사를 판별하고, 상기 사용자의 의사에 대한 질의정보를 생성할 필요가 있다.
구체적으로, 상기 음성후처리부(200)는, 상기 문장데이터 중에서 상기 사용자의 의사를 판별할 수 있는 핵심어인 키워드를 추출할 수 있으며, 상기 키워드를 이용하여 상기 사용자의 의사에 관한 질의정보를 생성할 수 있다. 이하 도2를 참조하여, 상기 음성후처리부(200)에 대하여 구체적으로 설명한다.
도2는 본 발명의 일 실시예에 의한 음성인식장치의 음성후처리부를 나타내는 블록도이다.
도2를 참조하면, 본 발명의 일 실시예에 의한 음성후처리부는 단편화부(210), 키워드추출부(220), 교정부(230) 및 질의정보생성부(240)를 포함할 수 있다.
이하, 도2를 참조하여 본 발명의 일 실시예에 의한 음성후처리부를 설명한다.
단편화부(210)는, 상기 문장데이터(d_sen)를 문장의 띄어쓰기 단위에 대응하는 복수의 어절 데이터(d_sub)로 분할할 수 있다. 어절은, 문장을 구성하는 각각의 마디를 의미하는 것으로서, 띄어쓰기의 단위와 일치한다. 예를들면, 도3에 도시된 바와 같이, "통장에 잔액이 얼마나 있어?"라는 문장데이터(d_sen)가 입력되면 이를 "통장에", "잔액이", "얼마나", "있어"의 4개의 어절데이터(d_sub)로 분할할 수 있다. 여기서, 띄어쓰기 단위는 상기 문장데이터에서 공백으로 표시될 수 있다. 따라서, 상기 공백으로 기준으로 상기 어절데이터(d_sub)를 구별할 수 있다.
구체적으로, 상기 음성전처리부(100)가 상기 음성데이터를 각각의 음절단위로 끊어서 음절을 판별할 때, 상기 띄어쓰기 부분은 묵음으로 표현될 수 있다. 즉, 상기 띄어쓰기부분에서는 짧은 시간동안 음성의 입력이 중단될 수 있으므로, 이를 감지하여 상기 묵음으로 표현할 수 있다. 따라서, 상기 음성전처리부(100)는 상기 묵음을 띄어쓰기 단위로 판별한 후, 상기 문장데이터(d_sen)을 생성할 때 상기 묵음에 대하여 공백에 대응하는 디지털 데이터를 부여할 수 있다.
이외에도, 상기 음성전처리부(100)는 다양한 방법으로 어절과 어절 사이를 구별할 수 있다. 예를들어, 상기 음성데이터에서 진폭의 크기, 주파수 등을 이용하여 어절의 시작점 및 종료점을 설정한 후, 상기 어절의 시작점 및 종료점 사이의 시간간격과 기 설정된 어절 유지시간을 비교하여 어절을 구별하는 것도 가능하다.
상기 사용자의 의사를 판별할 수 있는 핵심어인 키워드는 일반적으로 단어나 어절단위로 구성될 수 있으므로, 상기 문장데이터(d_sen)를 상기 어절 데이터(d_sub)로 분할할 수 있다. 이후, 상기 어절 데이터(d_sub)를 이용하여 상기 문장 데이터(d_sen)에 포함된 키워드를 추출할 수 있다.
키워드추출부(220)는, 상기 각각의 어절 데이터(d_sub)를 기 설정된 키워드 테이블과 비교하여, 상기 어절 데이터(d_sub)에 대응하는 키워드(d_key)를 추출할 수 있다. 상기 키워드에는 사용자의 의사가 포함되어 있으므로, 상기 키워드 추출부(220)를 통하여 상기 키워드를 추출하면 상기 사용자의 의사를 판별하는 것이 가능하다.
구체적으로, 상기 키워드는 상기 키워드의 종류에 따라서 분류될 수 있으며, 상기 분류된 키워드는 서로 다른 테이블에 저장될 수 있다. 예를들어, 상기 키워드는 질의의 대상이 되는 목적키워드, 상기 목적 키워드에 대한 동작을 나타내는 동작 키워드와 상기 동작이 수행될 때 부가되는 조건을 나타내는 조건 키워드 등이 있을 수 있다. 상기 목적 키워드는 목적 테이블, 상기 동작 키워드는 동작 테이블에 저장될 수 있으며, 상기 조건 키워드는 조건 테이블에 저장될 수 있다.
도4(a)를 참조하면, 상기 목적 키워드, 조건 키워드 및 동작 키워드를 포함하는 테이블표에 대한 예시가 제시되어 있다. 예를들어, 사용자로부터 "지난달의 카드 사용액 좀 보여줘"라는 음성신호가 입력되면, 상기 단편화부(210)는 상기 "지난달의 카드 사용액 좀 보여줘"의 문장데이터(d_sen)을 "지난달의", "카드", "사용액", "좀", "보여줘"로 분할하여 5개의 어절데이터(d_sub)를 생성할 수 있다. 이후, 상기 키워드추출부(220)는, 상기 각각의 어절데이터(d_sub)를 상기 목적 테이블, 조건 테이블 및 동작 테이블에 포함된 키워드들과 비교할 수 있다. 즉, 상기 "지난달의"의 어절데이터(d_sub)를 먼저 목적 테이블에 저장된 목적 키워드들과 비교하여 대응하는 키워드가 존재하는지 여부를 판별할 수 있으며, 이후 순차적으로 조건 테이블 및 동작 테이블과 비교하여 대응하는 키워드를 찾을 수 있다. 이때, "카드", "사용액" 등의 나머지 어절데이터(d_sub)에 대하여도 병렬적으로 각각의 키워드 테이블과 비교할 수 있다.
이 경우, 상기 키워드 추출부(220)는, 목적 키워드로 "카드", 조건 키워드로 "지난달"을 추출할 수 있으며, 상기 동작 키워드로 "보여줘"를 추출할 수 있다. 상기 키워드 테이블에 저장된 각각의 키워드는 미리 설정되는 것으로서, 상기 어절 데이터(d_sub)는 상기 키워드에 의하여 특정될 수 있다. 따라서, 상기 어절 데이터(d_sub)인 "카드"는 목적 키워드의 하나인 "카드"로 특정됨으로써, 사용자가 "카드"에 대한 어떠한 동작을 원한다는 것으로 파악할 수 있다. 마찬가지로, 어절 데이터(d_sub)인 "지난달"은 "지", "난", "달"이라는 음절의 결합으로서 구체적인 의미가 부여되어 있지 않지만, 상기 조건 키워드에 해당하는 "지난달"은 특정한 시간개념으로서 구체적인 의미를 가질 수 있다. 즉, 사용자가 발화를 한 시점이 11월이라면, 상기 "지난달"이라는 키워드는 10월1일부터 10월31일까지의 특정한 기간을 의미할 수 있다. 또한, 음절의 결합인 상기 어절 데이터(d_sub) "보여줘"도, 상기 동작 키워드 "보여줘"로 특정되면, 검색결과를 도출하라는 구체적인 의미가 부여될 수 있다.
따라서, 상기 "지난달의 카드 사용액 좀 보여줘"라는 음성신호는, 상기 키워드 추출부(220)에 의하여 지난달의 카드 사용액을 보여달라는 구체적인 질의로서의 의미가 부여될 수 있다.
여기서, 일부 어절 데이터(d_sub)는 특히, 앞자리가 인식되지 않는 경우가 있을 수 있다. 예를들어, 사용자가 발화한 "당좌예금"이라는 단어는 어절데이터(d_sub)로 변환되는 과정에서 앞자리의 한자가 탈락되고 "좌예금" 혹은 "자예금"으로 변환될 수 있다. 따라서, 상기 키워드 테이블에는 키워드의 앞자리 한자를 제외한 키워드도 상기 키워드 테이블에 포함할 수 있다.
교정부(230)는, 상기 키워드 테이블에 상기 어절 데이터(d_sub)와 대응하는 키워드(d_key)가 없으면, 상기 어절 데이터(d_sub)를 오인식 어절 데이터(d_mal)로 설정하고, 교정 테이블을 이용하여 상기 오인식 어절 데이터(d_mal)에 대응하는 키워드(d_key)를 추출할 수 있다.
앞서 살핀 바와 같이, 상기 문장 데이터(d_sen)는 사용자가 입력하는 음성신호를 대응하는 음절로 변환하여 생성하는 것이다. 따라서, 상기 음성전처리부(100)가 상기 음성신호를 이용하여 문장 데이터(d_sen)를 생성하는 과정에서, 상기 대응하는 음절을 잘못 변환하는 경우가 있을 수 있다. 또는, 사용자의 억양이나 발음상의 문제로 인하여 사용자가 발화하고자 의도한 음절과는 다른 음절로 변환될 수 있다. 예를들어, 사용자가 발화한 "계좌"라는 음성신호를, 상기 음성전처리부(100)는, "게자", "괘자", "계절", "교정" 등으로 잘못 변환할 수 있다. 이 경우, 상기 키워드 추출부(220)는 상기 "게자"나 "괘자"를 키워드 테이블과 비교하게 되므로, 상기 키워드 추출부(220)는 결국 상기 키워드를 추출하는데 실패하고 오류 메시지를 출력할 수 있다. 따라서, 상기 교정부(230)를 이용하여, 상기 음성전처리부(100)에서 잘못 변환된 음절을 교정한 후 키워드를 추출할 수 있다.
구체적으로, 상기 교정부(230)는 상기 키워드 추출부(220)에서 상기 어절 데이터(d_sub)에 대응하는 키워드(d_key)가 없으면, 상기 어절 데이터(d_sub)를 오인식 어절 데이터(d_mal)로 설정할 수 있다. 이후, 상기 교정부(230)는 상기 오인식 어절 데이터(d_mal)를 교정 테이블과 비교하고, 상기 교정 테이블에서 상기 오인식 어절 데이터(d_mal)과 대응하는 키워드(d_key)를 추출할 수 있다.
여기서, 상기 교정 테이블은 상기 오인식 어절 데이터(d_mal)에 대응하는 키워드(d_key)를 포함하는 것으로서, 상기 교정 테이블은 자음보전단어집합, 모음유사단어집합 및 오인식 집합 중 적어도 어느 하나를 포함할 수 있다. 구체적으로, 상기 교정 테이블의 일 예가 도4(b)에 도시되어 있다. 상기 도4(b)를 참조하면, 상기 자음보전단어집합은 각각의 키워드에 포함된 자음과 동일한 자음을 포함하는 복수의 오인식 어절 데이터가 저장될 수 있으며, 상기 모음유사단어집합에는 상기 각각의 키워드에 포함된 모음과 대응되는 모음을 포함하는 복수의 오인식 어절 데이터가 저장될 수 있다. 즉, 상기 자음보전단어집합은, 키워드(d_key)인 "계좌"와 대응하는 오인식 어절 데이터(d_mal)로서, 상기 "계좌"와 동일한 자음을 가지는 단어인 "계절, 개정, 교정" 등과 같은 단어들을 포함할 수 있다. 또한, 상기 모음유사단어집합은, 동일한 키워드(d_key)에 대응하는 오인식 어절 데이터(d_mal)로서, 상기 "계좌"와 유사한 모음을 가지는 단어인 "개좌, 게좌"같은 단어들을 포함할 수 있다. 따라서, 상기 오인식 어절 데이터(d_mal)로서 "계절, 개정, 교정"이나 "개좌, 게좌" 등이 입력되면, 상기 교정부(230)는 "계좌"를 키워드(d_key)로 추출할 수 있다.
또한, 도4(b)에는 도시하지 않았으나, 상기 오인식 집합에는 각각의 키워드를 오인식 어절 데이터로 오인식하는 비율이 기 설정값 이상인 복수의 오인식 어절 데이터가 저장될 수 있다. 즉, 키워드 중에서 상기 음성전처리부(100)가 음절을 잘못 변환하는 오인식 비율이 높은 단어를 선택하여, 상기 오인식 집합에 저장할 수 있다. 따라서, 상기 오인식 집합을 이용하여, 상기 오인식 어절 데이터를 교정하고 키워드를 추출하는 것도 가능하다.
여기서, 상기 교정 테이블에도 상기 오인식 어절 데이터(d_mal)에 대응하는 키워드가 없으면, 상기 교정부(230)는 오류 메시지를 출력하고 동작을 중단하여 상기 키워드 추출에 실패하였음을 표시할 수 있다.
추가적으로, 상기 교정부(220)는 음소값 계산부 및 근사키워드설정부를 더 포함하여, 상기 오인식 어절 데이터(d_mal)와 가장 근사한 키워드(d_key)를 추출하는 것도 가능하다. 즉, 상기 교정테이블에 상기 오인식 어절 데이터(d_mal)에 대응하는 키워드가 없으면, 상기 음소값 계산부 및 근사키워드설정부를 이용하여, 상기 키워드를 추출할 수 있다.
구체적으로, 상기 음소값 계산부는 상기 오인식 어절 데이터(d_mal)에 대한 음소값을 계산할 수 있다. 상기 음소값은 상기 음절을 구성하는 각각의 "음소"에 대응하는 점수로서, 상기 음소값은 도5에 예시되어 있다. 도5에 도시된 바와 같이, 상기 "ㄱ, ㄲ, ㅋ" 이나 "ㅅ, ㅆ" 등과 같이 서로 유사한 소리에 해당하는 음소에 대하여는 동일한 점수를 부여할 수 있다. 음절은, 상기 음절을 구성하는 각각의 "음소"에 따라 초성, 중성, 종성으로 구별될 수 있으며, 특히 종성의 경우에는 0.1의 가중치를 부여하여 상기 음절에 대응하는 음소값을 계산할 수 있다.
또한, 상기 오인식 어절 데이터(d_mal)은 복수개의 음절로 구성될 수 있으며, 상기 음절의 순서에 따라 서로 다른 의미를 가지는 키워드에 대응될 수 있다. 따라서, 상기 음소값 계산부는 상기 오인식 어절 데이터(d_mal)에 포함된 음절의 개수 및 상기 음절의 위치에 따른 가중치를 부여하는 방식으로 상기 음절의 순서에 대응하는 음소값을 계산할 수 있다. 예를들어, "당좌예금"의 경우, "당"은 "ㄷ", "ㅏ", "ㅇ"으로 구성되므로, 상기 "당"에 대응하는 음소값은 "1.4 + 100 + 2.2 * 0.1" 즉, "101.62"가 계산될 수 있다. 동일한 방식으로, "좌"는 "131.6", "예"는 "272.2", "금"은 "431.22"의 음소값을 가질 수 있다.
또한, 상기 "당좌예금"은 4개의 음절로 이루어지므로 음절의 순서에 따라, "당"에는 1000, "좌"에는 100, "예"에는 1, "금"에는 0.05의 가중치를 부여할 수 있다. 따라서, "당좌예금"은 "101.62 * 1000 + 131.6 * 100 + 272.2 * 1 + 431.22 * 0.05" 즉, "115073.7610"의 음소값을 가질 수 있다. 여기서, 5개의 음절을 가지는 경우에는, 가중치를 "10000, 1000, 100, 1, 0.05"순으로 부여할 수 있으며, 음절의 수가 증가하거나 감소하면 동일한 방식으로 가중치를 부가할 수 있다.
이후, 상기 근사키워드 설정부는, 상기 오인식 어절 데이터(d_mal)의 음소값과 가장 근사한 음소값을 가지는 키워드(d_key)를 상기 오인식 어절 데이터(d_mal)에 대응하는 키워드(d_key)로 설정할 수 있다. 구체적으로, 도6과 같은 음소 동질성 테이블을 이용하여, 상기 오인식 어절 데이터의 음소값과 가장 근사한 음소값을 가지는 키워드를 상기 음소 동질성 테이블에서 추출할 수 있다. 예를들어, "당좌예금을 개설하고 싶은데요"라는 음성신호를 상기 음성전처리부(210)가 "탕자의 근부 잘 하고 싶은데요"의 문장데이터로 변환되는 경우가 있을 수 있으며, 상기 "탕자의"에 해당하는 어절 데이터(d_sub)는 상기 키워드 테이블 및 교정 테이블에 존재하지 않을 수 있다. 이러한 경우, 상기 "탕자의"에 해당하는 음소값을 계산한 후, 상기 근사키워드 설정부를 이용하여 상기 음소값을 음소 동질성 테이블에서 검색하면, 상기 음소값과 가장 근사한 "당좌예"가 추출될 수 있다. 여기서, 상기 "당좌예"는 상기 음소 동질성 테이블에서 "당좌예금"이라는 키워드와 대응하므로, 상기 "탕자의"에 해당하는 어절 데이터(d_sub)를 "당좌예금"이라는 키워드로 연결할 수 있다.
따라서, 상기 음소값 계산부 및 근사키워드 설정부를 이용하면, 상기 교정테이블에 없는 오인식 어절 데이터(d_mal)도 교정할 수 있으며, 상기 오인식 어절 데이터(d_mal)에 대응하는 키워드를 추출할 수 있다.
질의정보생성부(240)는, 상기 키워드(d_key)를 결합하여 상기 질의정보(fc)를 생성할 수 있다. 앞서 살핀바와 같이, 사용자가 입력하는 음성신호에는, 정보요청이나 특정 동작 수행 요청 등에 대한 사용자의 의사가 포함될 수 있다. 상기 사용자의 의사는 상기 키워드 추출부(220)가 추출한 키워드에 포함되어 있으므로, 상기 질의정보생성부(240)는 상기 키워드를 결합하여 상기 사용자의 의사에 대응하는 동작을 수행하기 위한 명령어를 포함하는 질의정보(fc)를 생성할 수 있다.
구체적으로, 사용자의 음성신호에 대응하여, "통장", "잔액", "얼마나"의 키워드를 추출한 경우에는, 상기 사용자의 통장 잔액에 대한 정보가 저장되어 있는 데이터베이스(a)에 대하여 통장잔액에 대한 질의(inquiry)를 수행할 수 있어야 한다. 이를 위하여, 상기 질의정보생성부(240)는 상기 목적 키워드, 동작 키워드 및 조건 키워드 등의 키워드에 대응하는 각각의 기능코드(function code)를 이용하여 상기 데이터베이스(a)에 대한 질의를 수행할 수 있는 명령어 등을 포함하는 질의정보(fc)를 생성할 수 있다. 여기서, 상기 질의정보(fc)는 데이터 베이스와 통신을 수행할 수 있는 명령어 형식이면 어떠한 것이라도 활용될 수 있으며, 특히, SQL 명령어 형식을 이용하여 생성하는 것도 가능하다.
도7은 본 발명의 일 실시예에 의한 음성인식방법을 나타낸 순서도이다.
도7을 참조하면, 본 발명의 일 실시예에 의한 음성인식방법은, 음성전처리과정(S100) 및 음성후처리과정(S200)을 포함할 수 있다. 또한, 상기 음성후처리과정(S200)은, 단편화 단계(S210), 키워드 추출단계(S220), 교정단계(S230) 및 질의정보생성단계(S240)를 포함할 수 있다.
이하, 도7을 참조하여, 본 발명의 일 실시예에 의한 음성인식방법을 설명한다.
음성 전처리 과정(S100)은, 입력되는 사용자의 음성을 감지하여, 상기 사용자의 음성에 대응하는 문장을 전기적 신호인 문장데이터로 생성할 수 있다. 상기 사용자의 음성은 마이크로폰 등 음성입력수단 등을 통하여 입력받을 수 있으며, 상기 사용자의 음성에 대응하는 각각의 음절을 판별하여 상기 문장데이터를 생성할 수 있다. 여기서, 상기 입력되는 음성에 대응하는 문장데이터의 생성하는 것은 마이크로프로세서 등의 제어장치에 의하여 수행될 수 있다.
음성 후처리 과정(S200)은, 상기 문장데이터에서 키워드를 추출하고, 상기 키워드에 대응하는 질의정보를 생성할 수 있다. 구체적으로, 상기 음성 후처리 과정(S200)은, 단편화단계(S210), 키워드 추출단계(S220), 교정단계(S230) 및 질의정보 생성단계(S240)를 포함할 수 있다. 여기서, 상기 음성 후처리 과정(S200)은, 마이크로프로세서 등의 제어장치에서 수행될 수 있다.
먼저, 단편화단계(S210)를 통하여, 상기 문장데이터를 문장의 띄어쓰기 단위에 대응하는 복수의 어절 데이터로 분할할 수 있다. 상기 키워드는 단어나 어절단위로 구성될 수 있으므로, 상기 키워드의 추출을 용이하게 하기 위하여 상기 문장데이터를 복수의 어절 데이터로 분할할 수 있다.
키워드 추출단계(S220)는, 상기 각각의 어절 데이터를 기 설정된 키워드 테이블과 비교하여, 상기 어절 데이터에 대응하는 키워드를 추출할 수 있다. 여기서, 상기 키워드 테이블은, 질의의 대상이 되는 목적 키워드가 저장되는 목적 테이블, 상기 목적 키워드에 대한 동작을 나타내는 동작 키워드가 저장되는 동작 테이블 및 상기 질의에 대한 조건을 나타내는 조건 키워드가 저장되는 조건 테이블을 포함할 수 있다. 따라서, 상기 어절 데이터를 각각의 목적 테이블, 동작 테이블 및 조건 테이블과 비교하여, 상기 어절 데이터에 대응하는 목적 키워드, 동작 키워드 및 조건 키워드를 추출할 수 있다.
다만, 상기 키워드 테이블에 상기 어절 데이터와 대응하는 키워드가 없는 경우에는, 교정단계(S230)를 통하여 상기 어절 데이터를 교정한 후, 상기 키워드를 추출할 수 있다. 즉, 상기 교정단계(S230)는, 상기 키워드 테이블에 상기 어절 데이터와 대응하는 키워드가 없으면 상기 어절 데이터를 오인식 어절 데이터로 설정하고, 상기 오인식 어절 데이터에 대응하는 키워드를 포함하는 교정 테이블을 이용하여, 상기 오인식 어절 데이터에 대응하는 키워드를 추출할 수 있다. 여기서, 상기 교정 테이블은 자음보전단어집합, 모음유사단어집합 및 오인식집합 중 적어도 어느 하나를 포함할 수 있다. 상기 자음보전단어집합은, 각각의 키워드에 포함된 자음과 동일한 자음을 포함하는 복수의 오인식 어절 데이터가 저장될 수 있으며, 상기 모음유사단어집합에는 상기 각각의 키워드에 포함된 모음과 대응되는 모음을 포함하는 복수의 오인식 어절데이터가 저장될 수 있다. 또한, 상기 오인식집합은, 각각의 키워드를 오인식 어절 데이터로 오인식하는 비율이 기 설정값 이상인 복수의 오인식 어절 데이터가 저장될 수 있다.
따라서, 상기 음성전처리과정(S100)에서 음절이 잘못 변환된 경우에는 상기 교정 테이블을 통하여 상기 잘못 변환된 음절을 바로 잡을 수 있으며, 대응하는 키워드를 추출할 수 있다.
다만, 상기 교정 테이블에도 상기 오인식 어절 데이터에 대응하는 키워드가 없는 경우가 있을 수 있다. 이 경우, 오류 메시지를 출력하고 동작을 중단하여 상기 키워드 추출에 실패하였음을 표시할 수도 있으나, 음소값 계산 및 근사키워드 설정단계(S231)로 진행하여, 추가적인 교정을 진행할 수 있다.
구체적으로, 상기 음소값 계산 및 근사키워드 설정단계(S231)는, 상기 오인식 어절 데이터에 대한 음소값을 계산하고, 상기 오인식 어절 데이터의 음소값과 가장 근사한 음소값을 가지는 키워드를 상기 오인식 어절 데이터에 대응하는 키워드로 설정할 수 있다.
구체적으로, 상기 음소값 계산 단계는 상기 오인식 어절 데이터를 구성하는 각각의 음절에 대하여 상기 음절을 구성하는 각각의 음소에 대응하는 점수를 합산할 수 있다. 이후, 상기 오인식 어절 데이터에 포함된 음절의 개수 및 상기 음절의 위치에 따른 가중치를 상기 합산된 점수에 곱한 후, 상기 가중치가 고려된 음절의 점수를 합산하는 방식으로 상기 음소값을 계산할 수 있다. 이 경우, 유사한 발음의 어절은 근사한 값의 음소값을 가질 수 있으므로, 상기 오인식 어절 데이터와 가장 근사한 값을 가지는 키워드를 대응하는 키워드로 설정할 수 있다.
질의정보 생성단계(S240)는, 상기 키워드를 결합하여 상기 질의정보를 생성할 수 있다. 앞서 살핀바와 같이, 사용자가 입력하는 음성신호에는, 정보요청이나 특정동작수행 등에 대한 사용자의 의사가 포함될 수 있다. 따라서, 상기 사용자의 의사가 포함된 키워드를 추출하여 사용자의 의사를 판별한 후, 상기 사용자의 의사에 대응하는 동작을 수행하기 위한 질의정보를 생성할 수 있다. 구체적으로, 상기 목적 키워드, 동작 키워드 및 조건 키워드를 결합하여, 데이터베이스에 대한 질의를 수행하는 명령어를 포함하는 상기 질의정보를 생성할 수 있다. 여기서, 상기 명령어는 상기 데이터베이스에 대한 질의를 수행할 수 있는 것이면 어떠한 것도 활용할 수 있으며, 특히 SQL 명령어를 활용하여 상기 데이터베이스에 대한 질의를 수행하는 것도 가능하다.
본 발명은 또한 컴퓨터가 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽은 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경할 수 있다는 것은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 당업자에게 있어 명백할 것이다.
100: 음성전처리부 200: 음성후처리부
210: 단편화부 220: 키워드 추출부
230: 교정부 240: 질의정보생성부
S100: 음성전처리과정 S200: 음성후처리과정
S210: 단편화단계 S220: 키워드 추출단계
S230: 교정단계 240: 질의정보생성단계
210: 단편화부 220: 키워드 추출부
230: 교정부 240: 질의정보생성부
S100: 음성전처리과정 S200: 음성후처리과정
S210: 단편화단계 S220: 키워드 추출단계
S230: 교정단계 240: 질의정보생성단계
Claims (21)
- 입력되는 사용자의 음성을 감지하여, 상기 사용자의 음성에 대응하는 문장을 전기적 신호인 문장데이터로 생성하는 음성 전처리 과정; 및
상기 문장데이터에서 키워드를 추출하고, 상기 키워드에 대응하는 질의정보를 생성하는 음성 후처리 과정을 포함하고,
상기 음성 후처리 과정은
상기 문장데이터를 문장의 띄어쓰기 단위에 대응하는 복수의 어절 데이터로 분할하는 단편화(fragmentation) 단계;
상기 각각의 어절 데이터를 기 설정된 키워드 테이블과 비교하여, 상기 어절 데이터에 대응하는 키워드를 추출하는 키워드 추출단계;
상기 키워드를 결합하여, 상기 질의정보를 생성하는 질의정보 생성단계; 및
상기 키워드 테이블에 상기 어절 데이터와 대응하는 키워드가 없으면 상기 어절 데이터를 오인식 어절 데이터로 설정하고, 상기 오인식 어절 데이터에 대응하는 키워드를 포함하는 교정 테이블을 이용하여, 상기 오인식 어절 데이터에 대응하는 키워드를 추출하는 교정단계를 포함하는 음성인식방법.
- 삭제
- 제1항에 있어서, 상기 키워드 테이블은
질의의 대상이 되는 목적 키워드가 저장되는 목적 테이블, 상기 목적 키워드에 대한 동작을 나타내는 동작 키워드가 저장되는 동작 테이블 및 상기 질의에 대한 조건을 나타내는 조건 키워드가 저장되는 조건 테이블을 포함하는 음성인식방법.
- 제3항에 있어서, 상기 키워드 추출단계는
상기 목적 테이블, 동작 테이블 및 조건 테이블과 상기 어절 데이터를 각각 비교하여, 상기 어절 데이터에 대응하는 목적 키워드, 동작 키워드 및 조건 키워드를 추출하는 음성인식방법.
- 제4항에 있어서, 상기 질의정보 생성단계는
상기 목적 키워드, 동작 키워드 및 조건 키워드를 결합하여, 데이터베이스에 대한 질의(inquiry)를 수행하는 명령어를 포함하는 상기 질의정보를 생성하는 음성인식방법.
- 제5항에 있어서, 상기 질의정보 생성단계는
상기 데이터베이스에 대한 질의를 SQL 명령어를 이용하여 생성하는 음성인식방법.
- 삭제
- 제1항에 있어서, 상기 교정 테이블은
각각의 키워드에 포함된 자음과 동일한 자음을 포함하는 복수의 오인식 어절 데이터가 저장된 자음보전단어집합, 상기 각각의 키워드에 포함된 모음과 대응되는 모음을 포함하는 복수의 오인식 어절데이터가 저장된 모음유사단어집합 및 상기 각각의 키워드를 오인식 어절 데이터로 오인식하는 비율이 기 설정값 이상인 복수의 오인식 어절 데이터가 저장된 오인식집합 중 적어도 어느 하나를 포함하는 음성인식방법.
- 제1항에 있어서, 상기 교정단계는
상기 교정 테이블에 상기 오인식 어절 데이터에 대응하는 키워드가 없으면, 상기 오인식 어절 데이터에 대한 음소값을 계산하는 음소값 계산단계; 및
상기 오인식 어절 데이터의 음소값과 가장 근사한 음소값을 가지는 키워드를 상기 오인식 어절 데이터에 대응하는 키워드로 설정하는 근사키워드 설정단계를 더 포함하는 음성인식방법.
- 제9항에 있어서, 상기 음소값 계산 단계는
상기 오인식 어절 데이터를 구성하는 각각의 음절에 대하여 상기 음절을 구성하는 각각의 음소에 대응하는 점수를 합산하고, 상기 오인식 어절 데이터에 포함된 음절의 개수 및 상기 음절의 위치에 따른 가중치를 상기 합산된 점수에 곱한 후, 상기 가중치가 고려된 음절의 점수를 합산하여 상기 오인식 어절 데이터에 대한 음소값을 계산하는 음성인식방법.
- 입력되는 사용자의 음성을 감지하여, 상기 사용자의 음성에 대응하는 문장을 전기적 신호인 문장데이터로 생성하는 음성전처리부; 및
상기 문장데이터에서 키워드를 추출하고, 상기 키워드에 대응하는 질의정보를 생성하는 음성후처리부을 포함하고,
상기 음성 후처리부는
상기 문장데이터를 문장의 띄어쓰기 단위에 대응하는 복수의 어절 데이터로 분할하는 단편화부;
상기 각각의 어절 데이터를 기 설정된 키워드 테이블과 비교하여, 상기 어절 데이터에 대응하는 키워드를 추출하는 키워드추출부;
상기 키워드를 결합하여, 상기 질의정보를 생성하는 질의정보생성부; 및
상기 키워드 테이블에 상기 어절 데이터와 대응하는 키워드가 없으면 상기 어절 데이터를 오인식 어절 데이터로 설정하고, 상기 오인식 어절 데이터에 대응하는 키워드를 포함하는 교정 테이블을 이용하여, 상기 오인식 어절 데이터에 대응하는 키워드를 추출하는 교정부를 포함하는 음성인식장치.
- 삭제
- 제11항에 있어서, 상기 키워드 테이블은
질의의 대상이 되는 목적 키워드가 저장되는 목적 테이블;
상기 목적 키워드에 대한 동작을 나타내는 동작 키워드가 저장되는 동작 테이블; 및
상기 질의에 대한 조건을 나타내는 조건 키워드가 저장되는 조건 테이블을 포함하는 음성인식장치.
- 제13항에 있어서, 상기 키워드추출부는
상기 목적 테이블, 동작 테이블 및 조건 테이블과 상기 어절 데이터를 각각 비교하여, 상기 어절 데이터에 대응하는 목적 키워드, 동작 키워드 및 조건 키워드를 추출하는 음성인식장치.
- 제14항에 있어서, 상기 질의정보생성부는
상기 목적 키워드, 동작 키워드 및 조건 키워드를 결합하여, 데이터베이스에 대한 질의(inquiry)를 수행하는 명령어를 포함하는 상기 질의정보를 생성하는 음성인식장치.
- 제15항에 있어서, 상기 질의정보생성부는
상기 데이터베이스에 대한 질의를 SQL 명령어를 이용하여 생성하는 음성인식장치.
- 삭제
- 제11항에 있어서, 상기 교정 테이블은
각각의 키워드에 포함된 자음과 동일한 자음을 포함하는 복수의 오인식 어절 데이터가 저장된 자음보전단어집합;
상기 각각의 키워드에 포함된 모음과 대응되는 모음을 포함하는 복수의 오인식 어절데이터가 저장된 모음유사단어집합; 및
상기 각각의 키워드를 오인식 어절 데이터로 오인식하는 비율이 기 설정값 이상인 복수의 오인식 어절 데이터가 저장된 오인식집합 중 적어도 어느 하나를 포함하는 음성인식장치.
- 제11항에 있어서, 상기 교정부는
상기 교정 테이블에 상기 오인식 어절 데이터에 대응하는 키워드가 없으면, 상기 오인식 어절 데이터에 대한 음소값을 계산하는 음소값계산부; 및
상기 오인식 어절 데이터의 음소값과 가장 근사한 음소값을 가지는 키워드를 상기 오인식 어절 데이터에 대응하는 키워드로 설정하는 근사키워드설정부를 더 포함하는 음성인식장치.
- 제19항에 있어서, 상기 음소값계산부는
상기 오인식 어절 데이터를 구성하는 각각의 음절에 대하여 상기 음절을 구성하는 각각의 음소에 대응하는 점수를 합산하고, 상기 오인식 어절 데이터에 포함된 음절의 개수 및 상기 음절의 위치에 따른 가중치를 상기 합산된 점수에 곱한 후, 상기 가중치가 고려된 음절의 점수를 합산하여 상기 오인식 어절 데이터에 대한 음소값을 계산하는 음성인식장치.
- 청구항 제1항, 제3항 내지 제6항, 제8항 내지 제10항 중 어느 한 항에 기재된 음성 인식 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120132307A KR101242182B1 (ko) | 2012-11-21 | 2012-11-21 | 음성인식장치 및 음성인식방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020120132307A KR101242182B1 (ko) | 2012-11-21 | 2012-11-21 | 음성인식장치 및 음성인식방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101242182B1 true KR101242182B1 (ko) | 2013-03-12 |
Family
ID=48181637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120132307A KR101242182B1 (ko) | 2012-11-21 | 2012-11-21 | 음성인식장치 및 음성인식방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101242182B1 (ko) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101579292B1 (ko) * | 2014-08-29 | 2015-12-21 | 서울대학교 산학협력단 | 범용 음성인식 제어 장치 및 제어 방법 |
KR101629726B1 (ko) * | 2015-06-15 | 2016-06-13 | 주식회사 무하유 | 띄어쓰기 교정 방법 및 프로그램 |
KR101663521B1 (ko) * | 2016-05-02 | 2016-10-07 | 주식회사 무하유 | 띄어쓰기 교정 방법 및 프로그램 |
KR20170137285A (ko) * | 2016-06-03 | 2017-12-13 | 주식회사 허브케이 | 판독/입력 오류 단어 정정 장치 및 방법 |
KR20190060931A (ko) | 2017-11-25 | 2019-06-04 | 조성현 | 게르마늄 감정 분석 팔찌 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060015092A (ko) * | 2004-08-13 | 2006-02-16 | 삼성전자주식회사 | 음성인식기능을 구비한 전기기기 및 그 제어방법 |
KR20110027362A (ko) * | 2009-09-10 | 2011-03-16 | 한국전자통신연구원 | 음성 인터페이스를 이용한 iptv 시스템 및 서비스 방법 |
KR101122590B1 (ko) | 2011-06-22 | 2012-03-16 | (주)지앤넷 | 음성 데이터 분할에 의한 음성 인식 장치 및 방법 |
KR101122591B1 (ko) * | 2011-07-29 | 2012-03-16 | (주)지앤넷 | 핵심어 인식에 의한 음성 인식 장치 및 방법 |
-
2012
- 2012-11-21 KR KR1020120132307A patent/KR101242182B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20060015092A (ko) * | 2004-08-13 | 2006-02-16 | 삼성전자주식회사 | 음성인식기능을 구비한 전기기기 및 그 제어방법 |
KR20110027362A (ko) * | 2009-09-10 | 2011-03-16 | 한국전자통신연구원 | 음성 인터페이스를 이용한 iptv 시스템 및 서비스 방법 |
KR101122590B1 (ko) | 2011-06-22 | 2012-03-16 | (주)지앤넷 | 음성 데이터 분할에 의한 음성 인식 장치 및 방법 |
KR101122591B1 (ko) * | 2011-07-29 | 2012-03-16 | (주)지앤넷 | 핵심어 인식에 의한 음성 인식 장치 및 방법 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101579292B1 (ko) * | 2014-08-29 | 2015-12-21 | 서울대학교 산학협력단 | 범용 음성인식 제어 장치 및 제어 방법 |
KR101629726B1 (ko) * | 2015-06-15 | 2016-06-13 | 주식회사 무하유 | 띄어쓰기 교정 방법 및 프로그램 |
KR101663521B1 (ko) * | 2016-05-02 | 2016-10-07 | 주식회사 무하유 | 띄어쓰기 교정 방법 및 프로그램 |
KR20170137285A (ko) * | 2016-06-03 | 2017-12-13 | 주식회사 허브케이 | 판독/입력 오류 단어 정정 장치 및 방법 |
KR101995540B1 (ko) | 2016-06-03 | 2019-07-15 | 주식회사 허브케이 | 판독/입력 오류 단어 정정 장치 및 방법 |
KR20190060931A (ko) | 2017-11-25 | 2019-06-04 | 조성현 | 게르마늄 감정 분석 팔찌 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11990127B2 (en) | User recognition for speech processing systems | |
US11270685B2 (en) | Speech based user recognition | |
US6910012B2 (en) | Method and system for speech recognition using phonetically similar word alternatives | |
JP4680714B2 (ja) | 音声認識装置および音声認識方法 | |
US10019986B2 (en) | Acoustic model training using corrected terms | |
JP5824829B2 (ja) | 音声認識装置、音声認識方法及び音声認識プログラム | |
KR101242182B1 (ko) | 음성인식장치 및 음성인식방법 | |
US20070038453A1 (en) | Speech recognition system | |
US20130289987A1 (en) | Negative Example (Anti-Word) Based Performance Improvement For Speech Recognition | |
US6963834B2 (en) | Method of speech recognition using empirically determined word candidates | |
KR20210130024A (ko) | 대화 시스템 및 그 제어 방법 | |
EP1887562B1 (en) | Speech recognition by statistical language model using square-root smoothing | |
WO2006093092A1 (ja) | 会話システムおよび会話ソフトウェア | |
US20180012602A1 (en) | System and methods for pronunciation analysis-based speaker verification | |
KR101122591B1 (ko) | 핵심어 인식에 의한 음성 인식 장치 및 방법 | |
KR20180033875A (ko) | 음성 신호를 번역하는 방법 및 그에 따른 전자 디바이스 | |
KR101483947B1 (ko) | 핵심어에서의 음소 오류 결과를 고려한 음향 모델 변별 학습을 위한 장치 및 이를 위한 방법이 기록된 컴퓨터 판독 가능한 기록매체 | |
JP6755633B2 (ja) | 用件判定装置、用件判定方法およびプログラム | |
WO2014197592A2 (en) | Enhanced human machine interface through hybrid word recognition and dynamic speech synthesis tuning | |
US8024191B2 (en) | System and method of word lattice augmentation using a pre/post vocalic consonant distinction | |
CN112997247A (zh) | 利用大数据的最佳语言模型生成方法及用于其的装置 | |
JP4604424B2 (ja) | 音声認識装置及び方法、並びにプログラム | |
JP5762359B2 (ja) | 用件区間抽出用特徴的単語学習装置と用件区間抽出装置とそれらの方法とプログラム | |
US8688452B2 (en) | Automatic generation of distractors for special-purpose speech recognition grammars | |
Hosier et al. | Disambiguation and Error Resolution in Call Transcripts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20170906 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20180306 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20190306 Year of fee payment: 7 |