KR102405648B1 - 2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법 - Google Patents

2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법 Download PDF

Info

Publication number
KR102405648B1
KR102405648B1 KR1020210006936A KR20210006936A KR102405648B1 KR 102405648 B1 KR102405648 B1 KR 102405648B1 KR 1020210006936 A KR1020210006936 A KR 1020210006936A KR 20210006936 A KR20210006936 A KR 20210006936A KR 102405648 B1 KR102405648 B1 KR 102405648B1
Authority
KR
South Korea
Prior art keywords
pronunciation
value
weight value
recognition model
error
Prior art date
Application number
KR1020210006936A
Other languages
English (en)
Inventor
임용민
Original Assignee
주식회사 아이포트폴리오
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아이포트폴리오 filed Critical 주식회사 아이포트폴리오
Priority to KR1020210006936A priority Critical patent/KR102405648B1/ko
Application granted granted Critical
Publication of KR102405648B1 publication Critical patent/KR102405648B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/01Assessment or evaluation of speech recognition systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/48Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use
    • G10L25/69Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 specially adapted for particular use for evaluating synthetic or decoded voice signals
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • G10L2015/0635Training updating or merging of old and new templates; Mean values; Weighting

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Artificial Intelligence (AREA)
  • Probability & Statistics with Applications (AREA)
  • Electrically Operated Instructional Devices (AREA)

Abstract

본 명세서는 학습자의 발음 수준에 따라 보다 정확하게 발음의 오류를 분석할 수 있는 장치 및 방법을 개시한다. 본 명세서에 따른 발음 오류 분석 장치는, 제1 음성 인식 모델 및 제2 음성 인식 모델을 저장하는 음성 인식 모델 저장부; 상기 제1 음성 인식 모델의 가중치값(이하 '제1 가중치값')과 상기 제2 음성 인식 모델의 가중치값(이하 '제2 가중치값')을 저장하는 가중치 저장부; 사용자의 발화 중 발음에 대한 오류값(이하 '발음 오류값')을 저장하는 오류값 저장부; 상기 오류값 저장부에 저장된 오류값 중 미리 설정된 개수의 최근 발음 오류값을 이용하여 상기 가중치 저장부에 저장된 제1 가중치값 및 제2 가중치값을 갱신하는 가중치값 갱신부; 및 상기 가중치값 갱신부에 의해 갱신된 제1 가중치값 및 제2 가중치값을 이용하여 발음 오류값을 산출하는 발음 오류값 산출부;를 포함할 수 있다.

Description

2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법{APPARATUS FOR ANALYZING PRONUNCIATION ERROR USING DUAL SPEECH RECOGNITION MODEL AND METHOD THEREOF}
본 발명은 발음 오류 분석 장치 및 방법에 관한 것이며, 보다 상세하게는 2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법에 관한 것이다.
이 부분에 기술된 내용은 단순히 본 명세서에 기재된 실시예에 대한 배경 정보를 제공할 뿐 반드시 종래 기술을 구성하는 것은 아니다.
최근 발달된 음성 인식 기술을 이용한 다양한 외국어 학습 방법이 제시되고 있다. 일 예로, 주어진 문장 또는 단어를 학습자가 발음하고, 이를 음성 신호로 변환한 후, 음성 인식 모델과 비교하여 발음의 정확도를 측정하는 학습 방법이 있다. 정확한 발음 연습을 위해 음성 인식 모델은 원어민의 발음으로 구성되는 것이 일반적이다.
다만, 이러한 학습 방법은 학습자의 발음 수준이 다름에도 불구하고 모두 동일한 원어민 음성 인식 모델을 사용하는 단점이 있다. 특히, 학습자의 나이가 어려서 아직 발음이 정확하지 않거나, 모국어를 오랫동안 사용하여 발음 교정이 어려운 초보자에게 적합하지 않다. 이 경우, 초보자의 발음이 원어민 음성 인식 모델과 차이가 커서 학습 진도가 나아가지 않거나, 계속 낮은 평가로 인해 초보 학습자가 학습 흥미를 잃어버리는 문제가 발생할 수 있다.
이러한 문제점을 해결하고자 원어민 음성 인식 모델이 아닌 학습자의 모국어 음성 인식 모델을 사용하는 종래 기술이 있지만, 이 경우 초보자의 발음이 원어민이 아닌 모국어 사용자가 발음하는 외국어의 발음으로 학습하는 잘못된 학습하는 결과를 가져올 수 있다.
대한민국 등록특허공보 제10-1779361호
본 명세서는 학습자의 발음 수준에 따라 보다 정확하게 발음의 오류를 분석할 수 있는 장치 및 방법을 제공하는 것을 목적으로 한다.
본 명세서는 상기 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 명세서에 따른 발음 오류 분석 장치는, 제1 음성 인식 모델 및 제2 음성 인식 모델을 저장하는 음성 인식 모델 저장부; 상기 제1 음성 인식 모델의 가중치값(이하 '제1 가중치값')과 상기 제2 음성 인식 모델의 가중치값(이하 '제2 가중치값')을 저장하는 가중치 저장부; 사용자의 발화 중 발음에 대한 오류값(이하 '발음 오류값')을 저장하는 오류값 저장부; 상기 오류값 저장부에 저장된 오류값 중 미리 설정된 개수의 최근 발음 오류값을 이용하여 상기 가중치 저장부에 저장된 제1 가중치값 및 제2 가중치값을 갱신하는 가중치값 갱신부; 및 상기 가중치값 갱신부에 의해 갱신된 제1 가중치값 및 제2 가중치값을 이용하여 발음 오류값을 산출하는 발음 오류값 산출부;를 포함할 수 있다.
본 명세서의 일 실시예에 따르면, 상기 제1 음성 인식 모델은 학습 대상 언어의 원어민 음성으로 구성된 모델이고, 상기 제2 음성 인식 모델은 학습자의 모국어 음성으로 구성된 모델일 수 있다.
본 명세서의 일 실시예에 따르면, 상기 오류값 산출부는 사용자의 발화와 상기 제1 음성 인식 모델과의 유사도를 산출하고, 산출된 유사도가 미리 설정된 기준 유사도 이상일때, 상기 발음 오류값을 산출할 수 있다.
본 명세서의 일 실시예에 따르면, 상기 오류값 산출부는, 사용자의 발화에 포함된 각 단어마다 발음 오류값을 산출할 수 있다.
본 명세서의 일 실시예에 따르면, 상기 오류값 산출부는 사용자가 발화한 각 단어마다 상기 제1 음성 인식 모델의 유사도(이하 '제1 발음 유사도') 및 상기 제2 음성 인식 모델의 유사도(이하 '제2 발음 유사도')를 산출하고, 상기 제1 발음 유사도와 상기 제1 가중치값을 곱한 값과 상기 제2 발음 유사도와 상기 제2 가중치값을 곱한 값을 합산하여 발음 오류값을 산출할 수 있다.
본 명세서의 일 실시예에 따르면, 상기 제1 가중치값과 상기 제2 가중치값은 상호 반비례관계일 수 있다.
본 명세서의 일 실시예에 따르면, 상기 가중치값 갱신부는 아래 수식에 따라 제1 가중치값 및 제2 가중치값을 갱신할 수 있다.
Ak+1=Ak / (Ak+(1-Rk))
Bk+1 = 1-Ak+1
Ak : k번째 제1 가중치값
Bk : k번째 제2 가중치값
Rk : k번째 조정 비율
본 명세서의 일 실시예에 따르면, 상기 가중치값 갱신부는 사용자의 발화 문장에 포함된 각 단어의 발음 오류값에 대한 평균값(이하 '문장별 발음 오류 평균값')을 산출하고, 미리 설정된 개수의 문장별 발음 오류 평균값에 대한 평균값을 상기 k번째 조정 비율(Rk)로 산출할 수 있다.
상술한 과제를 해결하기 위한 본 명세서에 따른 발음 오류 분석 방법은 메모리에 저장된 제1 음성 인식 모델 및 제2 음성 인식 모델을 이용하여 사용자의 발화 중 발음 오류를 분석하는 방법으로서, 프로세서가 (a) 상기 메모리에 저장된 사용자의 발화 중 발음에 대한 오류값(이하 '발음 오류값')을 이용하여 제1 가중치값 및 제2 가중치값을 산출하는 단계; (b) 상기 갱신된 제1 가중치값 및 제2 가중치값을 이용하여 발음 오류값을 산출하는 단계; 및 (c) 상기 산출된 제1 가중치값, 갱신된 제2 가중치값 및 발음 오류값을 상기 메모리에 저장하는 단계;을 포함할 수 있다.
본 명세서의 일 실시예에 따르면, 상기 제1 음성 인식 모델은 학습 대상 언어의 원어민 음성으로 구성된 모델이고, 상기 제2 음성 인식 모델은 학습자의 모국어 음성으로 구성된 모델일 수 있다.
본 명세서에 따른 발음 오류 분석 방법은 상기 (a) 단계와 (b) 단계 사이에 (a-1) 사용자의 발화와 상기 제1 음성 인식 모델과의 유사도를 산출하는 단계;를 더 포함할 수 있다. 이 경우, 상기 (b) 단계는 산출된 유사도가 미리 설정된 기준 유사도 이상일때, 발음 오류값을 산출하는 단계일 수 있다.
본 명세서의 일 실시예에 따르면, 상기 (b) 단계는 사용자의 발화에 포함된 각 단어마다 발음 오류값을 산출하는 단계일 수 있다.
본 명세서의 일 실시예에 따르면, 상기 (b) 단계는, (b-1) 사용자가 발화한 각 단어마다 상기 제1 음성 인식 모델의 유사도(이하 '제1 발음 유사도') 및 상기 제2 음성 인식 모델의 유사도(이하 '제2 발음 유사도')를 산출하는 단계; 및 (b-2) 상기 제1 발음 유사도와 상기 제1 가중치값을 곱한 값과 상기 제2 발음 유사도와 상기 제2 가중치값을 곱한 값을 합산하여 발음 오류값을 산출하는 단계;를 포함할 수 있다.
본 명세서의 일 실시예에 따르면, 상기 제1 가중치값과 상기 제2 가중치값은 상호 반비례관계일 수 있다.
본 명세서의 일 실시예에 따르면, 상기 (a) 단계는 아래 수식에 따라 제1 가중치값 및 제2 가중치값을 산출하는 단계일 수 있다.
Ak+1=Ak / (Ak+(1-Rk))
Bk+1 = 1-Ak+1
Ak : k번째 제1 가중치값
Bk : k번째 제2 가중치값
Rk : k번째 조정 비율
본 명세서의 일 실시예에 따르면, 상기 (a) 단계는, (a-1) 사용자의 발화 문장에 포함된 각 단어의 발음 오류값에 대한 평균값(이하 '문장별 발음 오류 평균값')을 산출하는 단계; 및 (a-2) 미리 설정된 개수의 문장별 발음 오류 평균값에 대한 평균값을 상기 k번째 조정 비율(Rk)로 산출하는 단계;를 포함할 수 있다.
본 명세서에 따른 발음 오류 분석 방법은 컴퓨터에서 발음 오류 분석 방법의 각 단계들을 수행하도록 작성되어 컴퓨터로 독출 가능한 기록 매체에 기록된 컴퓨터프로그램의 형태로 구현될 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 명세서의 일 측면에 따르면, 초보자의 발음이 원어민 음성 인식 모델과 차이가 커도 흥미를 잃어버리지 않게 평가할 수 있으며, 이를 통해 학습 진도를 유지할 수 있는 장점이 있다.
본 명세서의 다른 측면에 따르면, 모국어 사용자가 발음한 외국어 음성 인식 모델로 인해 종래 발생하는 잘 못된 외국어의 발음으로 학습하는 문제를 방지할 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 명세서에 따른 발음 오류 분석 장치의 구성을 개략적으로 도시한 블럭도이다.
도 2는 본 명세서에 따른 발음 오류 분석 방법이다.
도 3은 초기 가중치를 이용하여 발음 오류값을 산출하는 참고도이다.
도 4는 1번째 발음 오류값을 이용하여 2번째 가중치값을 산출하고, 2번째 발음 오류값을 산출하는 참고도이다.
도 5는 1번째 발음 오류값 및 2번째 발음 오류값을 이용하여 3번째 가중치값을 산출하고, 3번째 발음 오류값을 산출하는 참고도이다.
본 명세서에 개시된 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 명세서가 이하에서 개시되는 실시예들에 제한되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 명세서의 개시가 완전하도록 하고, 본 명세서가 속하는 기술 분야의 통상의 기술자(이하 '당업자')에게 본 명세서의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 명세서의 권리 범위는 청구항의 범주에 의해 정의될 뿐이다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 명세서의 권리 범위를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
명세서 전체에 걸쳐 동일한 도면 부호는 동일한 구성 요소를 지칭하며, "및/또는"은 언급된 구성요소들의 각각 및 하나 이상의 모든 조합을 포함한다. 비록 "제1", "제2" 등이 다양한 구성요소들을 서술하기 위해서 사용되나, 이들 구성요소들은 이들 용어에 의해 제한되지 않음은 물론이다. 이들 용어들은 단지 하나의 구성요소를 다른 구성요소와 구별하기 위하여 사용하는 것이다. 따라서, 이하에서 언급되는 제1 구성요소는 본 발명의 기술적 사상 내에서 제2 구성요소일 수도 있음은 물론이다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 명세서가 속하는 기술분야의 통상의 기술자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
한편, 본 명세서에는 외국어를 학습하는 사용자가 영어를 학습하는 상황을 예시로 가정하고 설명하도록 하겠다. 그러나 본 명세서에 따른 발음 오류 분석 장치 및 방법이 영어 학습에만 적용되는 것은 아니다. 이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도 1은 본 명세서에 따른 발음 오류 분석 장치의 구성을 개략적으로 도시한 블럭도이다.
도 1을 참조하면, 본 명세서에 따른 발음 오류 분석 장치(100)는 음성 인식 모델 저장부(110), 가중치 저장부(120), 오류값 저장부(130), 가중치값 갱신부(140) 및 발음 오류값 산출부(150)를 포함할 수 있다. 상기 음성 인식 모델 저장부(110), 가중치 저장부(120) 및 오류값 저장부(130)는 데이터를 저장하는 메모리 장치로서, 물리적으로 구분될 수 있고 또는 하나의 메모리 장치에 논리적으로 구분될 수도 있다. 상기 가중치값 갱신부(140) 및 발음 오류값 산출부(150)는 이하에서 설명될 산출 및 다양한 제어 로직을 실행하는 프로세서로 구현될 수 있으며, 메모리에 저장되어 프로세서에 의해 실행되는 프로그램 모듈의 집합으로 구현될 수도 있다.
상기 음성 인식 모델 저장부(110)는 제1 음성 인식 모델 및 제2 음성 인식 모델을 저장할 수 있다. 본 명세서의 일 실시예에 따르면, 상기 제1 음성 인식 모델은 학습 대상 언어(예: 영어)의 원어민 음성으로 구성된 모델이고, 상기 제2 음성 인식 모델은 학습자의 모국어(예: 한국어) 음성으로 구성된 모델일 수 있다.
상기 가중치 저장부(120)는 상기 제1 음성 인식 모델의 가중치값(이하 '제1 가중치값')과 상기 제2 음성 인식 모델의 가중치값(이하 '제2 가중치값')을 저장할 수 있다. 상기 제1 가중치값과 상기 제2 가중치값은 사용자의 발화 중 발음에 대한 오류값을 산출할 수록 변화(갱신)될 수 있는 값이다. 상기 제1 가중치값과 상기 제2 가중치값의 초기값은 임의로 설정될 수 있다.
상기 오류값 저장부(130)는 사용자의 발화 중 발음에 대한 오류값(이하 '발음 오류값')을 저장할 수 있다. 상기 발음 오류값은 상기 발음 오류값 산출부(150)에서 산출된 값이다. 따라서, 사용자의 사용 횟수 누적에 따라 발음 오류값 역시 누적될 수 있다.
상기 가중치값 갱신부(140)는 상기 오류값 저장부(130)에 저장된 오류값 중 미리 설정된 개수의 최근 발음 오류값을 이용하여 상기 가중치 저장부(120)에 저장된 제1 가중치값 및 제2 가중치값을 갱신할 수 있다.
상기 발음 오류값 산출부(150)는 상기 가중치값 갱신부(140)에 의해 갱신된 제1 가중치값 및 제2 가중치값을 이용하여 발음 오류값을 산출할 수 있다.
이하에서는 본 명세서에 따른 발음 오류 분석 방법을 통해, 상기 가중치값 갱신 및 발음 오류값 산출에 대해 보다 자세히 설명하도록 하겠다.
도 2는 본 명세서에 따른 발음 오류 분석 방법이다.
도 2를 참조하면, 먼저 단계 S110에서 프로세서는 사용자의 발화를 수신하여 음성 신호로 변환할 수 있다. 사용자의 발화는 미리 제시된 문장 또는 단어를 발화한 것으로서, 마이크를 통해 입력되어 소정의 전처리 과정을 거쳐 음성 신호로 변환될 수 있다.
본 명세서에 따른 발음 오류 분석 방법은 단계 S120를 더 포함할 수 있다. 단계 S120에서 프로세서는 사용자의 발화와 상기 제1 음성 인식 모델과의 유사도를 산출할 수 있다. 이때 산출된 유사도가 미리 설정된 기준 유사도 이상일 때(단계 S120의 'YES'), 다음 단계 S130으로 이행할 수 있다. 반면, 산출된 유사도가 미리 설정된 기준 유사도 미만일 때(단계 S120의 'NO'), 사용자에게 재발화를 요청하고 다시 단계 S110으로 이행할 수 있다. 이 과정은 사용자의 발화가 제시된 문장 또는 단어를 바르게 발음하였는지 여부를 확인하는 절차이다. 사용자가 제시된 문장 또는 단어를 잘 못 이해하거나 주변 소음이 들어가는 경우를 배제하기 위함이다.
다음 단계 S130에서 프로세서는 메모리에 저장된 제1 가중치값과 제2 가중치값을 호출할 수 있다. 이때, 호출된 제1 가중치값과 제2 가중치값은 가장 마지막에 산출되어 갱신된 값이다.
다음 단계 S130에서 프로세서(발음 오류값 산출부)는 제1 가중치값 및 제2 가중치값을 이용하여 발음 오류값을 산출할 수 있다. 이때, 상기 발음 오류값 산출부(150)는 사용자의 발화에 포함된 각 단어마다 발음 오류값을 산출할 수 있다. 한편, 영어의 경우, 단어와 단어 사이의 연음이 존재하므로 상기 발음 오류값 산출부(150)는 문장 전체에 대한 발음 오류값을 산출할 수도 있다.
도 3은 초기 가중치를 이용하여 발음 오류값을 산출하는 참고도이다.
도 3을 참조하면, 사용자가 'Hi nice to meet you.'라는 발화를 한 상황을 가정하였다. 초기 가중치으로 제1 가중치값(A1)은 '0.3', 제2 가중치값(B1)은 '0.7'을 가정하였다. 상기 발음 오류값 산출부(150)는 사용자가 발화한 각 단어마다 상기 제1 음성 인식 모델의 유사도(이하 '제1 발음 유사도') 및 상기 제2 음성 인식 모델의 유사도(이하 '제2 발음 유사도')를 산출할 수 있다. 그리고, 발음 오류값 산출부(150)는 상기 제1 발음 유사도와 상기 제1 가중치값을 곱한 값과 상기 제2 발음 유사도와 상기 제2 가중치값을 곱한 값을 합산하여 발음 오류값을 산출할 수 있다.
다시 도 2를 참조하면, 다음 단계 S150에서 상기 프로세서는 산출된 발음 오류값을 상기 오류값 저장부(130)에 저장할 수 있다.
다음 단계 S160에서 상기 프로세서(가중치값 갱신부)는 상기 오류값 저장부(130)에 저장된 오류값 중 미리 설정된 개수의 최근 발음 오류값을 이용하여 상기 가중치 저장부(120)에 저장된 제1 가중치값 및 제2 가중치값을 갱신할 수 있다. 이때, 상기 제1 가중치값과 상기 제2 가중치값은 상호 반비례관계일 수 있다.
도 4는 1번째 발음 오류값을 이용하여 2번째 가중치값을 산출하고, 2번째 발음 오류값을 산출하는 참고도이다.
도 4를 참조하면, 앞서 도 3에서 설정된 초기 가중치값과 오류값 저장부(130)에 저장된 발음 오류값(E1)을 확인할 수 있다. 상기 가중치값 갱신부(140)는 사용자의 발화 문장에 포함된 각 단어의 발음 오류값에 대한 평균값을 산출할 수 있다. 도 4에 도시된 예시에서는 도 3의 예시에서 산출된 발음 오류값(E1)인 [0.41, 0.58, 0.31, 0.54, 0.41]의 평균값인 0.45가 1번째 조정 비율(R1)로 산출되었다. 그리고 상기 가중치값 갱신부(140)는 아래 수식에 따라 제1 가중치값 및 제2 가중치값을 갱신할 수 있다.
<수식>
Ak+1=Ak / (Ak+(1-Rk))
Bk+1 = 1-Ak+1
Ak : k번째 제1 가중치값
Bk : k번째 제2 가중치값
Rk : k번째 조정 비율
상기 수식에 따라 2번째 제1 가중치값(A2)는 '0.35', 2번째 제2 가중치값(B2)는 '0.65'로 갱신된 것을 확인할 수 있다. 상기 프로세서는 새롭게 산출된 제1 가중치값 및 제2 가중치값을 상기 가중치 저장부(120)에 저장하여 갱신할 수 있다. 그리고 상기 프로세서는 단계 S110로 이행하여 이후, 사용자의 새로운 발화에 대한 발음 오류값을 산출하는 과정은 도 3에 도시된 과정과 동일하다. 다만, 도 4에 도시된 예시에서는 갱신된 제1 가중치값(A2) '0.35'과 제2 가중치값(B2) '0.65'을 사용하는 차이점이 있다.
한편, 사용자의 발화를 분석하는 횟수가 증가할 수록 상기 발음 오류값은 누적 증가할 수 있다. 이 경우, 상기 k번째 조정 비율(Rk)은 최근 발화에 대한 발음 오류값을 이용하여 산출될 수 있다. 구체적으로 상기 프로세서(가중치값 갱신부)는 사용자의 발화 문장에 포함된 각 단어의 발음 오류값에 대한 평균값(이하 '문장별 발음 오류 평균값')을 산출하고, 미리 설정된 개수의 문장별 발음 오류 평균값에 대한 평균값을 상기 k번째 조정 비율(Rk)로 산출할 수 있다.
도 5는 1번째 발음 오류값 및 2번째 발음 오류값을 이용하여 3번째 가중치값을 산출하고, 3번째 발음 오류값을 산출하는 참고도이다.
도 5를 참조하면, 2번째 조정 비율(R2)이 산출되는 과정을 확인할 수 있다. 도 3의 예시에서 산출된 발음 오류값(E1)인 [0.41, 0.58, 0.31, 0.54, 0.41]의 평균값인 '0.45', 도 4의 예시에서 산출된 발음 오류값(E2)인 [0.53, 0.63, 0.33, 0.66, 0.46]의 평균값인 '0.52'를 산출하고, 다시 0.45와 0.52의 평균값인 0.49가 2번째 조정 비율(R2)이다. 상기 2번째 조정 비율(R2)에 의해 제1 가중치값(A3)은 '0.41'로, 제2 가중치값(B3)은 '0.59'로 갱신된다. 이후 사용자의 새로운 발화에 대해 3번째 가중치값을 이용하여 3번째 발음 오류값(E3)을 산출할 수 있다.
상기 과정을 통해 사용자의 발음 실력이 증가할 수록 점차 제1 음성 인식 모델(원어민 모델)에 대한 비중이 점차 커지는 것을 확인할 수 있다. 즉, 초보 학습자일 때에는 제2 음성 인식 모델(모국어 발음)에 가깝게 평가하지만, 사용자의 발음 실력이 좋아질 수록 제1 음성 인식 모델(원어민 모델)에 가깝게 평가하여 학습자의 발음을 보자 정확하게 분석할 수 있다.
한편, 도 3 내지 도 5에서는 계산의 편의를 위해 소수점 2째짜리까지만 계산하였다. 또한, 도 5에서는 앞서 2개의 발음 오류값만을 이용하여 가중치를 갱신하는 예시를 설명하였으나, 실시예에 따라 10개, 20개, 30개 등 다양하게 설정될 수 있다. 또한, 본 명세서에서는 이해 및 설명의 편의를 위해 동일한 문장을 사용자가 반복 발화한 예시를 제시하였다. 하지만 상기 발음 오류값은 단어마다 산출될 수 있는바, 발화 문장이 서로 달라도 동일한 단어에 대해서는 저장된 발음 오류값을 이용하여 가중치를 갱신하는 과정에 사용될 수 있다. 또한, 영어의 경우 연음이 존재하는바, 단어와 단어를 하나의 묶음으로 처리하여 발음 오류값을 산출하는 것도 가능하다.
상기 가중치값 갱신부 및 발음 오류값 산출부는 산출 및 다양한 제어 로직을 실행하기 위해 본 발명이 속한 기술분야에 알려진 프로세서, ASIC(application-specific integrated circuit), 다른 칩셋, 논리 회로, 레지스터, 통신 모뎀, 데이터 처리 장치 등을 포함할 수 있다. 또한, 상술한 제어 로직이 소프트웨어로 구현될 때, 상기 가중치값 갱신부 및 발음 오류값 산출부는 프로그램 모듈의 집합으로 구현될 수 있다. 이 때, 프로그램 모듈은 메모리에 저장되고, 프로세서에 의해 실행될 수 있다.
상기 프로그램은, 상기 컴퓨터가 프로그램을 읽어 들여 프로그램으로 구현된 상기 방법들을 실행시키기 위하여, 상기 컴퓨터의 프로세서(CPU)가 상기 컴퓨터의 장치 인터페이스를 통해 읽힐 수 있는 C/C++, C#, JAVA, Python, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. 이러한 코드는 상기 방법들을 실행하는 필요한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Functional Code)를 포함할 수 있고, 상기 기능들을 상기 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수 있다. 또한, 이러한 코드는 상기 기능들을 상기 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 상기 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조되어야 하는지에 대한 메모리 참조관련 코드를 더 포함할 수 있다. 또한, 상기 컴퓨터의 프로세서가 상기 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 상기 컴퓨터의 통신 모듈을 이용하여 원격에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수 있다.
상기 저장되는 매체는, 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 구체적으로는, 상기 저장되는 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있지만, 이에 제한되지 않는다. 즉, 상기 프로그램은 상기 컴퓨터가 접속할 수 있는 다양한 서버 상의 다양한 기록매체 또는 사용자의 상기 컴퓨터상의 다양한 기록매체에 저장될 수 있다. 또한, 상기 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장될 수 있다.
이상, 첨부된 도면을 참조로 하여 본 명세서의 실시예를 설명하였지만, 본 명세서가 속하는 기술분야의 통상의 기술자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로, 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며, 제한적이 아닌 것으로 이해해야만 한다.
100 : 발음 오류 분석 장치
110 : 음성 인식 모델 저장부
120 : 가중치 저장부
130 : 오류값 저장부
140 : 가중치값 갱신부
150 : 발음 오류값 산출부

Claims (17)

  1. 제1 음성 인식 모델 및 제2 음성 인식 모델을 저장하는 음성 인식 모델 저장부;
    상기 제1 음성 인식 모델의 가중치값(이하 '제1 가중치값')과 상기 제2 음성 인식 모델의 가중치값(이하 '제2 가중치값')을 저장하는 가중치 저장부;
    사용자의 발화 중 발음에 대한 오류값(이하 '발음 오류값')을 저장하는 오류값 저장부;
    상기 오류값 저장부에 저장된 오류값 중 미리 설정된 개수의 최근 발음 오류값을 이용하여 상기 가중치 저장부에 저장된 제1 가중치값 및 제2 가중치값을 갱신하는 가중치값 갱신부; 및
    상기 가중치값 갱신부에 의해 갱신된 제1 가중치값 및 제2 가중치값을 이용하여 발음 오류값을 산출하는 발음 오류값 산출부;를 포함하되,
    상기 가중치값 갱신부는 상호 반비례관계인 제1 가중치값 및 제2 가중치값을 아래 수식에 따라 갱신하는 발음 오류 분석 장치.
    Ak+1=Ak / (Ak+(1-Rk))
    Bk+1 = 1-Ak+1
    Ak : k번째 제1 가중치값
    Bk : k번째 제2 가중치값
    Rk : k번째 조정 비율
  2. 청구항 1에 있어서,
    상기 제1 음성 인식 모델은 학습 대상 언어의 원어민 음성으로 구성된 모델이고,
    상기 제2 음성 인식 모델은 학습자의 모국어 음성으로 구성된 모델인, 발음 오류 분석 장치.
  3. 청구항 1에 있어서,
    상기 오류값 산출부는,
    사용자의 발화와 상기 제1 음성 인식 모델과의 유사도를 산출하고, 산출된 유사도가 미리 설정된 기준 유사도 이상일때, 상기 발음 오류값을 산출하는, 발음 오류 분석 장치.
  4. 청구항 1에 있어서,
    상기 오류값 산출부는, 사용자의 발화에 포함된 각 단어마다 발음 오류값을 산출하는 발음 오류 분석 장치.
  5. 청구항 4에 있어서,
    상기 오류값 산출부는,
    사용자가 발화한 각 단어마다 상기 제1 음성 인식 모델의 유사도(이하 '제1 발음 유사도') 및 상기 제2 음성 인식 모델의 유사도(이하 '제2 발음 유사도')를 산출하고,
    상기 제1 발음 유사도와 상기 제1 가중치값을 곱한 값과 상기 제2 발음 유사도와 상기 제2 가중치값을 곱한 값을 합산하여 발음 오류값을 산출하는, 발음 오류 분석 장치.
  6. 삭제
  7. 삭제
  8. 청구항 1에 있어서,
    상기 가중치값 갱신부는,
    사용자의 발화 문장에 포함된 각 단어의 발음 오류값에 대한 평균값(이하 '문장별 발음 오류 평균값')을 산출하고,
    미리 설정된 개수의 문장별 발음 오류 평균값에 대한 평균값을 상기 k번째 조정 비율(Rk)로 산출하는, 발음 오류 분석 장치.
  9. 메모리에 저장된 제1 음성 인식 모델 및 제2 음성 인식 모델을 이용하여 사용자의 발화 중 발음 오류를 분석하는 방법으로서, 프로세서가
    (a) 상기 메모리에 저장된 사용자의 발화 중 발음에 대한 오류값(이하 '발음 오류값')을 이용하여 상호 반비례관계인 제1 가중치값 및 제2 가중치값을 아래 수식에 따라 산출하는 단계;
    Ak+1=Ak / (Ak+(1-Rk))
    Bk+1 = 1-Ak+1
    Ak : k번째 제1 가중치값
    Bk : k번째 제2 가중치값
    Rk : k번째 조정 비율
    (b) 상기 산출된 제1 가중치값 및 제2 가중치값을 이용하여 발음 오류값을 산출하는 단계; 및
    (c) 상기 산출된 제1 가중치값, 제2 가중치값 및 발음 오류값을 상기 메모리에 저장하는 단계;을 포함하는 발음 오류 분석 방법.
  10. 청구항 9에 있어서,
    상기 제1 음성 인식 모델은 학습 대상 언어의 원어민 음성으로 구성된 모델이고, 상기 제2 음성 인식 모델은 학습자의 모국어 음성으로 구성된 모델인, 발음 오류 분석 방법.
  11. 청구항 9에 있어서,
    상기 (a) 단계와 (b) 단계 사이에
    (a-1) 사용자의 발화와 상기 제1 음성 인식 모델과의 유사도를 산출하는 단계;를 더 포함하고,
    상기 (b) 단계는, 산출된 유사도가 미리 설정된 기준 유사도 이상일때, 발음 오류값을 산출하는 단계인, 발음 오류 분석 방법.
  12. 청구항 9에 있어서,
    상기 (b) 단계는, 사용자의 발화에 포함된 각 단어마다 발음 오류값을 산출하는 단계인, 발음 오류 분석 방법.
  13. 청구항 12에 있어서,
    상기 (b) 단계는,
    (b-1) 사용자가 발화한 각 단어마다 상기 제1 음성 인식 모델의 유사도(이하 '제1 발음 유사도') 및 상기 제2 음성 인식 모델의 유사도(이하 '제2 발음 유사도')를 산출하는 단계; 및
    (b-2) 상기 제1 발음 유사도와 상기 제1 가중치값을 곱한 값과 상기 제2 발음 유사도와 상기 제2 가중치값을 곱한 값을 합산하여 발음 오류값을 산출하는 단계;를 포함하는 발음 오류 분석 방법.
  14. 삭제
  15. 삭제
  16. 청구항 9에 있어서,
    상기 (a) 단계는,
    (a-1) 사용자의 발화 문장에 포함된 각 단어의 발음 오류값에 대한 평균값(이하 '문장별 발음 오류 평균값')을 산출하는 단계; 및
    (a-2) 미리 설정된 개수의 문장별 발음 오류 평균값에 대한 평균값을 상기 k번째 조정 비율(Rk)로 산출하는 단계;를 포함하는, 발음 오류 분석 방법.
  17. 컴퓨터에서 청구항 9 내지 13, 16 중 어느 한 청구항에 따른 발음 오류 분석 방법의 각 단계들을 수행하도록 작성되어 컴퓨터로 독출 가능한 기록 매체에 기록된 컴퓨터프로그램.
KR1020210006936A 2021-01-18 2021-01-18 2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법 KR102405648B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210006936A KR102405648B1 (ko) 2021-01-18 2021-01-18 2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210006936A KR102405648B1 (ko) 2021-01-18 2021-01-18 2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법

Publications (1)

Publication Number Publication Date
KR102405648B1 true KR102405648B1 (ko) 2022-06-08

Family

ID=81981726

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210006936A KR102405648B1 (ko) 2021-01-18 2021-01-18 2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법

Country Status (1)

Country Link
KR (1) KR102405648B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120042490A (ko) * 2010-10-25 2012-05-03 에스케이텔레콤 주식회사 어학 발음 평가 시스템 및 평가 방법
KR101483946B1 (ko) * 2013-10-28 2015-01-19 에스케이텔레콤 주식회사 문장의 발성 오류 측정 방법, 이를 위한 시스템 및 장치
KR101779361B1 (ko) 2016-11-30 2017-09-18 동서대학교산학협력단 어플리케이션 기반 음성인식을 이용한 발음 학습방법
KR101818758B1 (ko) * 2016-06-30 2018-02-28 서울대학교산학협력단 외국어 발음 평가 장치 및 방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120042490A (ko) * 2010-10-25 2012-05-03 에스케이텔레콤 주식회사 어학 발음 평가 시스템 및 평가 방법
KR101483946B1 (ko) * 2013-10-28 2015-01-19 에스케이텔레콤 주식회사 문장의 발성 오류 측정 방법, 이를 위한 시스템 및 장치
KR101818758B1 (ko) * 2016-06-30 2018-02-28 서울대학교산학협력단 외국어 발음 평가 장치 및 방법
KR101779361B1 (ko) 2016-11-30 2017-09-18 동서대학교산학협력단 어플리케이션 기반 음성인식을 이용한 발음 학습방법

Similar Documents

Publication Publication Date Title
JP6052814B2 (ja) 音声認識モデルの構築方法、音声認識方法、コンピュータ・システム、音声認識装置、プログラムおよび記録媒体
EP1557822B1 (en) Automatic speech recognition adaptation using user corrections
US6985863B2 (en) Speech recognition apparatus and method utilizing a language model prepared for expressions unique to spontaneous speech
Wester Pronunciation modeling for ASR–knowledge-based and data-derived methods
US8990086B2 (en) Recognition confidence measuring by lexical distance between candidates
US20080077404A1 (en) Speech recognition device, speech recognition method, and computer program product
US20080177545A1 (en) Automatic reading tutoring with parallel polarized language modeling
KR20010096490A (ko) 이동통신을 위한 철자 음성인식장치 및 방법
US20120078630A1 (en) Utterance Verification and Pronunciation Scoring by Lattice Transduction
KR20060050361A (ko) 음성 분류 및 음성 인식을 위한 은닉 조건부 랜덤 필드모델
US20100204988A1 (en) Speech recognition method
CN113223506A (zh) 语音识别模型训练方法及语音识别方法
US11495245B2 (en) Urgency level estimation apparatus, urgency level estimation method, and program
CN112908308B (zh) 一种音频处理方法、装置、设备及介质
KR102405648B1 (ko) 2중 음성 인식 모델을 이용한 발음 오류 분석 장치 및 방법
JP6027754B2 (ja) 適応化装置、音声認識装置、およびそのプログラム
KR101283271B1 (ko) 어학 학습 장치 및 어학 학습 방법
JP2000352993A (ja) 音声認識システム及びヒドン・マルコフ・モデルの学習方法
JP2003345388A (ja) 音声認識装置、音声認識方法、および、音声認識プログラム
US11341961B2 (en) Multi-lingual speech recognition and theme-semanteme analysis method and device
WO2022140166A1 (en) Systems and methods for speech validation
CN113506563A (zh) 一种发音识别的方法、装置及电子设备
Luo et al. Regularized-MLLR speaker adaptation for computer-assisted language learning system
Vidal et al. Phone-Level Pronunciation Scoring for Spanish Speakers Learning English Using a GOP-DNN System.
CN112992184B (zh) 一种发音评测方法、装置、电子设备和存储介质

Legal Events

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