WO2024147461A1 - 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법 - Google Patents

발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법

Info

Publication number
WO2024147461A1
WO2024147461A1 PCT/KR2023/017523 KR2023017523W WO2024147461A1 WO 2024147461 A1 WO2024147461 A1 WO 2024147461A1 KR 2023017523 W KR2023017523 W KR 2023017523W WO 2024147461 A1 WO2024147461 A1 WO 2024147461A1
Authority
WO
WIPO (PCT)
Prior art keywords
sentence
pronunciation
history data
voice
pseudo
Prior art date
Application number
PCT/KR2023/017523
Other languages
English (en)
French (fr)
Inventor
김유희
신유경
홍찬휘
유정현
조민호
Original Assignee
주식회사 한글과컴퓨터
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 한글과컴퓨터 filed Critical 주식회사 한글과컴퓨터
Publication of WO2024147461A1 publication Critical patent/WO2024147461A1/ko

Links

Abstract

전자 장치 및 그 동작 방법이 개시된다. 본 발명은 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법을 제시함으로써, 사용자가 자신의 발음에 대해 보다 객관적으로 평가받을 수 있도록 지원할 수 있다.

Description

발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법
본 발명은 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법에 대한 것이다.
최근, 한류 문화에 대한 관심이 증대하면서, 한국을 방문하는 외국인들이 증가하고 있고, 이로 인해 한국어를 배우려고 하는 외국인들도 증가하고 있다.
이와 관련해서, 많은 외국인들이 한국어 4대 영역인 '듣기, 읽기, 말하기, 쓰기'를 어학당과 사설 학원에서 배우고 있지만 어려움을 호소하고 있다. 특히, '말하기' 영역에서의 발음에 난항을 겪고 있다.
한편, 최근에는 음성 인식 기술이 발전됨에 따라, 사용자가 마이크로폰에 한국어로 특정 단어를 말하면, 해당 한국어 단어의 발음을 한국어 문자로 표시해 주는 서비스도 등장하고 있다. 그리하여, 사용자로부터 문장에 대한 발음 평가 요청이 오면, 사용자로 하여금 마이크로폰에 해당 문장을 말하도록 하고, 상기 사용자의 음성을 음성 인식 기술을 통해 새로운 문장으로 생성한 후, 해당 문장과 생성된 문장 간의 비교를 통해 발음 평가 점수를 산출해 줄 수 있도록 하는 문장에 대한 발음 평가 서비스 제공 시스템의 도입을 고려할 수 있다.
이러한 시스템이 도입된다면, 사용자는 자신의 발음에 대해 보다 객관적으로 평가받음으로써, 발음과 관련된 어려운 부분을 극복할 수 있게 될 것이다.
따라서, 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 기술에 대한 연구가 필요하다.
본 발명은 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법을 제시함으로써, 사용자가 자신의 발음에 대해 보다 객관적으로 평가받을 수 있도록 지원하고자 한다.
본 발명의 일실시예에 따른 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치는 발음 평가용으로 사전 지정된 복수의 문장들 - 상기 복수의 문장들 각각은 한글로 구성되어 있음 - 이 저장되어 있는 문장 저장부, 상기 전자 장치의 사용자로부터, 상기 복수의 문장들 중 어느 하나인 제1 문장에 대한 발음 평가 명령이 인가되면, 상기 제1 문장을 화면 상에 표시하면서, 상기 제1 문장을 음성으로 발음할 것을 지시하는 내용이 포함된 발음 지시 메시지를 화면 상에 표시하는 표시부, 상기 제1 문장과 상기 발음 지시 메시지가 화면 상에 표시된 이후, 상기 전자 장치에 연결된 마이크로폰을 통해, 상기 제1 문장에 대한 상기 사용자의 음성이 입력되면, 상기 사용자의 음성을 사전 구축된 음성 인식 모델에 입력으로 인가하여 음성 인식을 수행함으로써, 상기 사용자의 음성에 대한 제1 인식 문장을 생성하는 인식 문장 생성부 및 상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 일치 비율, 및 상기 사용자의 음성을 구성하는 전체 구간에서 음성이 존재하지 않는 무음 구간이 차지하는 비율인 무음 구간 비율을 기초로, 상기 제1 문장에 대한 발음 평가 점수를 산출하여 화면 상에 표시하는 발음 평가 점수 처리부를 포함한다.
또한, 본 발명의 일실시예에 따른 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치의 동작 방법은 발음 평가용으로 사전 지정된 복수의 문장들 - 상기 복수의 문장들 각각은 한글로 구성되어 있음 - 이 저장되어 있는 문장 저장부를 유지하는 단계, 상기 전자 장치의 사용자로부터, 상기 복수의 문장들 중 어느 하나인 제1 문장에 대한 발음 평가 명령이 인가되면, 상기 제1 문장을 화면 상에 표시하면서, 상기 제1 문장을 음성으로 발음할 것을 지시하는 내용이 포함된 발음 지시 메시지를 화면 상에 표시하는 단계, 상기 제1 문장과 상기 발음 지시 메시지가 화면 상에 표시된 이후, 상기 전자 장치에 연결된 마이크로폰을 통해, 상기 제1 문장에 대한 상기 사용자의 음성이 입력되면, 상기 사용자의 음성을 사전 구축된 음성 인식 모델에 입력으로 인가하여 음성 인식을 수행함으로써, 상기 사용자의 음성에 대한 제1 인식 문장을 생성하는 단계 및 상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 일치 비율, 및 상기 사용자의 음성을 구성하는 전체 구간에서 음성이 존재하지 않는 무음 구간이 차지하는 비율인 무음 구간 비율을 기초로, 상기 제1 문장에 대한 발음 평가 점수를 산출하여 화면 상에 표시하는 단계를 포함한다.
본 발명은 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법을 제시함으로써, 사용자가 자신의 발음에 대해 보다 객관적으로 평가받을 수 있도록 지원할 수 있다.
도 1은 본 발명의 일실시예에 따른 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치의 구조를 도시한 도면이다.
도 2는 본 발명의 일실시예에 따른 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치의 동작 방법을 도시한 순서도이다.
이하에서는 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명하기로 한다. 이러한 설명은 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였으며, 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 본 명세서 상에서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 사람에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
본 문서에서, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있다는 것을 의미한다. 또한, 본 발명의 다양한 실시예들에 있어서, 각 구성요소들, 기능 블록들 또는 수단들은 하나 또는 그 이상의 하부 구성요소로 구성될 수 있고, 각 구성요소들이 수행하는 전기, 전자, 기계적 기능들은 전자회로, 집적회로, ASIC(Application Specific Integrated Circuit) 등 공지된 다양한 소자들 또는 기계적 요소들로 구현될 수 있으며, 각각 별개로 구현되거나 2 이상이 하나로 통합되어 구현될 수도 있다.
한편, 첨부된 블록도의 블록들이나 흐름도의 단계들은 범용 컴퓨터, 특수용 컴퓨터, 휴대용 노트북 컴퓨터, 네트워크 컴퓨터 등 데이터 프로세싱이 가능한 장비의 프로세서나 메모리에 탑재되어 지정된 기능들을 수행하는 컴퓨터 프로그램 명령들(instructions)을 의미하는 것으로 해석될 수 있다. 이들 컴퓨터 프로그램 명령들은 컴퓨터 장치에 구비된 메모리 또는 컴퓨터에서 판독 가능한 메모리에 저장될 수 있기 때문에, 블록도의 블록들 또는 흐름도의 단계들에서 설명된 기능들은 이를 수행하는 명령 수단을 내포하는 제조물로 생산될 수도 있다. 아울러, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 명령들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 가능한 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 정해진 순서와 달리 실행되는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 실질적으로 동시에 수행되거나, 역순으로 수행될 수 있으며, 경우에 따라 일부 블록들 또는 단계들이 생략된 채로 수행될 수도 있다.
도 1은 본 발명의 일실시예에 따른 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치의 구조를 도시한 도면이다.
도 1을 참조하면, 본 발명에 따른 전자 장치(110)는 문장 저장부(111), 표시부(112), 인식 문장 생성부(113) 및 발음 평가 점수 처리부(114)를 포함한다.
문장 저장부(111)에는 발음 평가용으로 사전 지정된 복수의 문장들(상기 복수의 문장들 각각은 한글로 구성되어 있음)이 저장되어 있다.
예컨대, 사전 지정된 복수의 문장들을 '문장 1, 문장 2, 문장 3, ...'이라고 가정하는 경우, 문장 저장부(111)에는 상기 복수의 문장들인 '문장 1, 문장 2, 문장 3, ...'이 저장되어 있을 수 있다.
표시부(112)는 전자 장치(110)의 사용자로부터, 상기 복수의 문장들 중 어느 하나인 제1 문장에 대한 발음 평가 명령이 인가되면, 상기 제1 문장을 화면 상에 표시하면서, 상기 제1 문장을 음성으로 발음할 것을 지시하는 내용이 포함된 발음 지시 메시지를 화면 상에 표시한다.
인식 문장 생성부(113)는 상기 제1 문장과 상기 발음 지시 메시지가 화면 상에 표시된 이후, 전자 장치(110)에 연결된 마이크로폰을 통해, 상기 제1 문장에 대한 상기 사용자의 음성이 입력되면, 상기 사용자의 음성을 사전 구축된 음성 인식 모델에 입력으로 인가하여 음성 인식을 수행함으로써, 상기 사용자의 음성에 대한 제1 인식 문장을 생성한다.
예컨대, 전자 장치(110)의 사용자로부터, 상기 복수의 문장들인 '문장 1, 문장 2, 문장 3, ...' 중 어느 하나의 제1 문장인 '원숭이가 마을에 나타났다'라는 '문장 2'에 대한 발음 평가 명령이 인가되었다고 가정하자.
그러면, 표시부(112)는 상기 제1 문장인 '문장 2'를 화면 상에 표시하면서, '문장 2'를 음성으로 발음할 것을 지시하는 내용이 포함된 발음 지시 메시지를 화면 상에 표시할 수 있다.
이렇게, 표시부(112)에 의해 상기 제1 문장과 상기 발음 지시 메시지가 화면 상에 표시된 이후, 전자 장치(110)에 연결된 마이크로폰을 통해, '문장 2'에 대한 상기 사용자의 음성이 입력되면, 인식 문장 생성부(113)는 상기 사용자의 음성을 사전 구축된 음성 인식 모델에 입력으로 인가하여 음성 인식을 수행함으로써, 상기 사용자의 음성에 대한 제1 인식 문장을 생성할 수 있다.
발음 평가 점수 처리부(114)는 상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 일치 비율, 및 상기 사용자의 음성을 구성하는 전체 구간에서 음성이 존재하지 않는 무음 구간이 차지하는 비율인 무음 구간 비율을 기초로, 상기 제1 문장에 대한 발음 평가 점수를 산출하여 화면 상에 표시한다.
이때, 본 발명의 일실시예에 따르면, 발음 평가 점수 처리부(114)는 발음 정확도 점수 추출부(115), 발음 유창도 점수 추출부(116) 및 점수 표시부(117)를 포함할 수 있다.
발음 정확도 점수 추출부(115)는 상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 상기 일치 비율을 산출한 후, 사전 설정된 정확도 테이블로부터, 상기 일치 비율이 속하는 범위 값에 대응되어 기록되어 있는 제1 발음 정확도 점수를 추출한다.
여기서, 상기 정확도 테이블에는, 사전 설정된 복수의 제1 비율 범위 값들과, 상기 복수의 제1 비율 범위 값들 각각에 매칭되는 사전 설정된 발음 정확도 점수가 기록되어 있다.
예컨대, 상기 정확도 테이블에는, 하기의 표 1과 같이 정보가 기록되어 있을 수 있다.
복수의 제1 비율 범위 값들 발음 정확도 점수
0 이상 0.5 미만 0점
0.5 이상 0.6 미만 20점
0.6 이상 0.65 미만 40점
0.65 이상 0.7 미만 60점
0.7 이상 0.8 미만 80점
0.8 이상 1 이하 100점
이때, 본 발명의 일실시예에 따르면, 발음 정확도 점수 추출부(115)는 낱글자 생성부(118), LCS 길이 연산부(119) 및 일치 비율 산출부(120)를 포함할 수 있다.
낱글자 생성부(118)는 상기 제1 문장을 구성하는 텍스트를 자소 단위로 분할함으로써, 상기 제1 문장에 대응되는 낱글자들을 생성하고, 상기 제1 인식 문장을 구성하는 텍스트를 자소 단위로 분할함으로써, 상기 제1 인식 문장에 대응되는 낱글자들을 생성한다.
LCS 길이 연산부(119)는 상기 제1 문장에 대응되는 낱글자들과 상기 제1 인식 문장에 대응되는 낱글자들 간의 최장 공통 부분 수열(Longest Common Subsequence: LCS)의 길이를 연산한다.
여기서, LCS란 두 개의 문자열에서 일치하는 연속된 문자열을 의미하는 것으로, 'ACAYKP'와 'CAPCAK'가 있다고 하였을 때, 두 문자열 간의 LCS는 'ACAK'이고, 이때 LCS의 길이는 '4'가 된다.
일치 비율 산출부(120)는 상기 LCS의 길이가 연산되면, 상기 제1 문장에 대응되는 낱글자들의 전체 개수(A)에 대한, 상기 LCS의 길이(B)의 비율(B/A)을, 상기 일치 비율로 산출한다.
예컨대, 인식 문장 생성부(113)에 의해 생성된 상기 제1 인식 문장을 '원숭이가 마일에 나다나다'라고 가정하는 경우, 발음 정확도 점수 추출부(115)에 포함된 낱글자 생성부(118)는 상기 제1 문장인 '문장 2'를 구성하는 텍스트인 '원숭이가 마을에 나타났다'를 자소 단위로 분할함으로써, '문장 2'에 대응되는 낱글자들을 'ㅇㅜㅓㄴㅅㅜㅇㅣㄱㅏㅁㅏㅇㅡㄹㅇㅔㄴㅏㅌㅏㄴㅏㅆㄷㅏ'와 같이 생성할 수 있고, 상기 제1 인식 문장을 구성하는 텍스트인 '원숭이가 마일에 나다나다'를 자소 단위로 분할함으로써, 상기 제1 인식 문장에 대응되는 낱글자들을 'ㅇㅜㅓㄴㅅㅜㅇㅣㄱㅏㅁㅏㅇㅣㄹㅇㅔㄴㅏㄷㅏㄴㅏㄷㅏ'와 같이 생성할 수 있다.
그러고 나서, LCS 길이 연산부(119)는 '문장 2'에 대응되는 낱글자들인 'ㅇㅜㅓㄴㅅㅜㅇㅣㄱㅏㅁㅏㅇㅡㄹㅇㅔㄴㅏㅌㅏㄴㅏㅆㄷㅏ'와 상기 제1 인식 문장에 대응되는 낱글자들인 'ㅇㅜㅓㄴㅅㅜㅇㅣㄱㅏㅁㅏㅇㅣㄹㅇㅔㄴㅏㄷㅏㄴㅏㄷㅏ' 간의 최장 공통 부분 수열의 길이를 '23'과 같이 연산할 수 있다.
이렇게, LCS 길이 연산부(119)에 의해 상기 LCS의 길이가 연산되면, 일치 비율 산출부(120)는 '문장 2'에 대응되는 낱글자들의 전체 개수(A)인 '26(개)'에 대한, 상기 LCS의 길이(B)인 '23'의 비율(B/A)인 '0.885'를, 일치 비율로 산출할 수 있다.
그 이후, 발음 정확도 점수 추출부(115)는 상기 표 1과 같은 정확도 테이블로부터, 상기 일치 비율인 '0.885'가 속하는 범위 값인 '0.8 이상 1 이하'에 대응되어 기록되어 있는 발음 정확도 점수인 '100점'을, 제1 발음 정확도 점수로 추출할 수 있다.
발음 유창도 점수 추출부(116)는 상기 제1 발음 정확도 점수가 추출되면, 상기 사용자의 음성을 구성하는 전체 구간에서 상기 무음 구간이 차지하는 비율인 상기 무음 구간 비율을 산출한 후, 사전 설정된 유창도 테이블로부터, 상기 무음 구간 비율이 속하는 범위 값에 대응되어 기록되어 있는 제1 발음 유창도 점수를 추출한다.
여기서, 상기 유창도 테이블에는, 사전 설정된 복수의 제2 비율 범위 값들과, 상기 복수의 제2 비율 범위 값들 각각에 매칭되는 사전 설정된 발음 유창도 점수가 기록되어 있다.
예컨대, 상기 유창도 테이블에는, 하기의 표 2와 같이 정보가 기록되어 있을 수 있다.
복수의 제2 비율 범위 값들 발음 유창도 점수
0 이상 0.2 미만 100점
0.2 이상 0.3 미만 80점
0.3 이상 0.35 미만 60점
0.35 이상 0.4 미만 40점
0.4 이상 0.5 미만 20점
0.5 이상 1 미만 0점
이때, 본 발명의 일실시예에 따르면, 발음 유창도 점수 추출부(116)는 무음 구간 검출부(121) 및 무음 구간 비율 산출부(122)를 포함할 수 있다.
무음 구간 검출부(121)는 상기 사용자의 음성을 구성하는 전체 구간에서, 사전 설정된 제1 시간 이상 연속하여 음성이 존재하지 않는 구간들을, 상기 무음 구간으로 검출한다.
무음 구간 비율 산출부(122)는 상기 무음 구간이 검출되면, 상기 무음 구간으로 검출된 구간들 각각의 시간을 모두 합산함으로써, 합산 시간을 생성한 후, 상기 사용자의 음성을 구성하는 전체 구간의 시간(C)에 대한, 상기 합산 시간(D)의 비율(D/C)을, 상기 무음 구간 비율로 산출한다.
예컨대, 전술한 예와 같이, 발음 정확도 점수 추출부(115)에 의해 상기 제1 발음 정확도 점수가 '100점'으로 추출되었다고 하는 경우, 발음 유창도 점수 추출부(116)에 포함된 무음 구간 검출부(121)는 상기 사용자의 음성을 구성하는 전체 구간에서, 사전 설정된 제1 시간 이상 연속하여 음성이 존재하지 않는 구간들을, 상기 무음 구간으로 검출할 수 있다.
여기서, 상기 사용자의 음성을 구성하는 전체 구간을 '0~5.19초'라고 하고, 사전 설정된 제1 시간을 '0.1초'라고 가정하는 경우, 무음 구간 검출부(121)는 상기 사용자의 음성을 구성하는 전체 구간인 '0~5.19초'에서, 사전 설정된 제1 시간인 '0.1초' 이상 연속하여 음성이 존재하지 않는 구간들을, 상기 무음 구간으로 검출할 수 있다.
이때, 무음 구간 검출부(121)에 의해 상기 무음 구간이 '구간 1, 구간 2, 구간 3'과 같이 검출되었다고 하는 경우, 무음 구간 비율 산출부(122)는 '구간 1, 구간 2, 구간 3' 각각의 시간을 모두 합산함으로써, 합산 시간을 생성할 수 있다.
만약, 상기 합산 시간을 '1.53초'라고 가정하는 경우, 무음 구간 비율 산출부(122)는 상기 사용자의 음성을 구성하는 전체 구간의 시간(C)인 '5.19초'에 대한, 상기 합산 시간(D)인 '1.53초'의 비율(D/C)인 '0.294'를, 무음 구간 비율로 산출할 수 있다.
그 이후, 발음 유창도 점수 추출부(116)는 상기 표 2와 같은 유창도 테이블로부터, 상기 무음 구간 비율인 '0.294'가 속하는 범위 값인 '0.2 이상 0.3 미만'에 대응되어 기록되어 있는 발음 유창도 점수인 '80점'을, 제1 발음 유창도 점수로 추출할 수 있다.
점수 표시부(117)는 상기 제1 발음 유창도 점수가 추출되면, 상기 제1 발음 정확도 점수와 상기 제1 발음 유창도 점수의 평균을 연산한 후, 상기 평균을, 상기 제1 문장에 대한 발음 평가 점수로 지정하여 화면 상에 표시한다.
예컨대, 전술한 예와 같이, 발음 정확도 점수 추출부(115)에 의해 상기 제1 발음 정확도 점수가 '100점'으로 추출되었다고 하고, 발음 유창도 점수 추출부(116)에 의해 상기 제1 발음 유창도 점수가 '80점'으로 추출되었다고 하는 경우, 점수 표시부(117)는 상기 제1 발음 정확도 점수인 '100점'과 상기 제1 발음 유창도 점수인 '80점'의 평균을 '90점'과 같이 연산할 수 있다.
그 이후, 점수 표시부(117)는 상기 평균인 '90점'을, 상기 제1 문장인 '문장 2'에 대한 발음 평가 점수로 지정하여 화면 상에 표시할 수 있다.
본 발명의 일실시예에 따르면, 전자 장치(110)는 이력 데이터를 생성하여 이를 사전 지정된 클라우드 저장 서버(140)에 암호화하여 저장하는 구성을 더 포함할 수 있다.
이와 관련해서, 본 발명의 일실시예에 따르면, 전자 장치(110)는 비밀번호 저장부(123), 의사 난수 생성 함수 저장부(124), 이력 데이터 생성부(125), 저장 이벤트 발생부(126), 의사 난수 생성부(127), 연산 행렬 생성부(128), 일련번호 생성부(129), 암호화부(130) 및 저장 처리부(131)를 더 포함할 수 있다.
비밀번호 저장부(123)에는 상기 사용자에 대해 사전 발급된 n(n은 2 이상의 자연수임)자릿수의 비밀번호가 저장되어 있다.
예컨대, n을 '9'라고 하고, 상기 사용자에 대해 사전 발급된 9자릿수의 비밀번호를 '827570859'라고 하는 경우, 비밀번호 저장부(123)에는 상기 비밀번호인 '827570859'가 저장되어 있을 수 있다.
의사 난수 생성 함수 저장부(124)에는 사전 설정된 서로 다른 t(t는 2 이상의 자연수임)개의 의사 난수(Pseudo Random Number) 생성 함수들이 저장되어 있다.
여기서, 의사 난수는 소정의 난수 생성 알고리즘에 의해서 생성되는 난수를 의미한다.
예컨대, t를 '3'이라고 하고, 사전 설정된 서로 다른 3개의 의사 난수 생성 함수들을 '의사 난수 생성 함수 1, 의사 난수 생성 함수 2, 의사 난수 생성 함수 3'이라고 하는 경우, 의사 난수 생성 함수 저장부(124)에는 상기 3개의 의사 난수 생성 함수들인 '의사 난수 생성 함수 1, 의사 난수 생성 함수 2, 의사 난수 생성 함수 3'이 저장되어 있을 수 있다.
이력 데이터 생성부(125)는 상기 제1 문장에 대한 발음 평가 점수가 화면 상에 표시된 이후, 상기 사용자로부터, 상기 제1 문장에 대한 발음 평가 이력 저장 명령이 인가되면, 상기 발음 평가 이력 저장 명령이 인가된 시점에 대한 제1 날짜 및 시간 정보를 생성한 후, 상기 사용자의 음성에 대한 음성 데이터, 상기 제1 문장에 대한 발음 평가 점수, 상기 제1 날짜 및 시간 정보로 구성된 제1 이력 데이터를 생성한다.
저장 이벤트 발생부(126)는 상기 제1 이력 데이터가 생성되면, 상기 제1 이력 데이터를 암호화하여 클라우드 저장 서버(140)에 저장하기 위한 저장 이벤트를 발생시킨다.
의사 난수 생성부(127)는 상기 저장 이벤트가 발생되면, 상기 제1 문장에 포함된 문자의 개수를, 의사 난수 생성을 위한 시드(Seed) 값으로 지정한 후, 상기 시드 값을 의사 난수 생성 함수 저장부(124)에 저장되어 있는 상기 t개의 의사 난수 생성 함수들 각각에 입력으로 인가하여, t개의 의사 난수들을 생성한다.
연산 행렬 생성부(128)는 상기 t개의 의사 난수들이 생성되면, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 열벡터와, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 행벡터를 생성한 후, 상기 열벡터와 상기 행벡터 간의 행렬 곱을 연산함으로써, t x t 크기의 연산 행렬을 생성한다.
일련번호 생성부(129)는 상기 연산 행렬이 생성되면, 상기 연산 행렬을 구성하는 t2개의 성분들을 오름차순으로 연접함으로써, 제1 일련번호를 생성한다.
암호화부(130)는 상기 제1 일련번호가 생성되면, 상기 제1 일련번호에 대해, 상기 비밀번호를 제수로 하는 모듈로 연산을 수행함으로써, 모듈로 값을 생성한 후, 상기 모듈로 값을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 이력 데이터를 상기 제1 해시 값으로 암호화함으로써, 제1 암호화 이력 데이터를 생성한다.
여기서, 모듈로 연산은 피제수를 제수로 나누는 나눗셈을 수행하여 그에 대한 나머지(remainder)를 산출하는 연산을 의미한다.
저장 처리부(131)는 상기 제1 암호화 이력 데이터가 생성되면, 클라우드 저장 서버(140)에, 상기 제1 문장과 상기 제1 암호화 이력 데이터를 서로 대응시켜 저장함으로써, 상기 제1 이력 데이터에 대한 저장 과정을 완료한다.
이하에서는, 이력 데이터 생성부(125), 저장 이벤트 발생부(126), 의사 난수 생성부(127), 연산 행렬 생성부(128), 일련번호 생성부(129), 암호화부(130) 및 저장 처리부(131)의 동작을 예를 들어, 상세히 설명하기로 한다.
먼저, 전술한 예와 같이, 발음 평가 점수 처리부(114)에 의해 상기 제1 문장인 '문장 2'에 대한 발음 평가 점수인 '90점'이 화면 상에 표시되었다고 가정하자.
이때, 상기 사용자로부터, 상기 제1 문장인 '문장 2'에 대한 발음 평가 이력 저장 명령이 인가되면, 이력 데이터 생성부(125)는 상기 발음 평가 이력 저장 명령이 인가된 시점에 대한 제1 날짜 및 시간 정보를 생성한 후, 상기 사용자의 음성에 대한 음성 데이터, 상기 제1 문장인 '문장 2'에 대한 발음 평가 점수인 '90점', 상기 제1 날짜 및 시간 정보로 구성된 제1 이력 데이터를 생성할 수 있다.
여기서, 이력 데이터 생성부(125)에 의해 생성된 상기 제1 날짜 및 시간 정보를 '2022년 12월 19일 16시 30분'이라고 가정하는 경우, 이력 데이터 생성부(125)는 상기 사용자의 음성에 대한 음성 데이터, 상기 제1 문장인 '문장 2'에 대한 발음 평가 점수인 '90점', 상기 제1 날짜 및 시간 정보인 '2022년 12월 19일 16시 30분'으로 구성된 제1 이력 데이터를 생성할 수 있다.
이렇게, 이력 데이터 생성부(125)에 의해 상기 제1 이력 데이터가 생성되면, 저장 이벤트 발생부(126)는 상기 제1 이력 데이터를 암호화하여 클라우드 저장 서버(140)에 저장하기 위한 저장 이벤트를 발생시킬 수 있다.
이렇게, 저장 이벤트 발생부(127)에 의해 상기 저장 이벤트가 발생되면, 의사 난수 생성부(127)는 상기 제1 문장인 '문장 2'의 '원숭이가 마을에 나타났다'에 포함된 문자의 개수인 '13(개)'을, 의사 난수 생성을 위한 시드 값으로 지정할 수 있다.(본 발명에서는, 공백이 문자와 같은 것으로 취급하기로 함)
그 이후, 의사 난수 생성부(127)는 상기 시드 값인 '13'을 의사 난수 생성 함수 저장부(124)에 저장되어 있는 상기 3개의 의사 난수 생성 함수들인 '의사 난수 생성 함수 1, 의사 난수 생성 함수 2, 의사 난수 생성 함수 3' 각각에 입력으로 인가하여, '8, 3, 5'와 같은 3개의 의사 난수들을 생성할 수 있다.
이렇게, 의사 난수 생성부(127)에 의해 상기 3개의 의사 난수들이 생성되면, 연산 행렬 생성부(128)는 상기 3개의 의사 난수들인 '8, 3, 5' 각각을 성분으로 갖는 3차원의 열벡터인 ''와, 상기 3개의 의사 난수들인 '8, 3, 5' 각각을 성분으로 갖는 3차원의 행벡터인 ''를 생성한 후, 상기 열벡터인 ''와 상기 행벡터인 '' 간의 행렬 곱을 연산함으로써, ''와 같은 3 x 3 크기의 연산 행렬을 생성할 수 있다.
그러고 나서, 일련번호 생성부(129)는 상기 연산 행렬인 ''를 구성하는 9개의 성분들인 '64, 24, 40, 24, 9, 15, 40, 15, 25'를 오름차순으로 연접함으로써, 제1 일련번호를 '91515242425404064'와 같이 생성할 수 있다.
그 이후, 암호화부(130)는 상기 제1 일련번호인 '91515242425404064'에 대해, 상기 비밀번호인 '827570859'을 제수로 하는 모듈로 연산을 수행함으로써, '606874488'이라는 모듈로 값을 생성한 후, 상기 모듈로 값인 '606874488'을 사전 설정된 해시 함수에 입력으로 인가하여 '26d103c620a31345ag57qat327891703'과 같은 제1 해시 값을 생성할 수 있다.
이렇게, 암호화부(130)에 의해 상기 제1 해시 값이 생성되면, 암호화부(130)는 상기 제1 이력 데이터를 상기 제1 해시 값인 '26d103c620a31345ag57qat327891703'으로 암호화함으로써, 제1 암호화 이력 데이터를 생성할 수 있다.
그러고 나서, 저장 처리부(131)는 클라우드 저장 서버(140)에, 상기 제1 문장인 '문장 2'와 상기 제1 암호화 이력 데이터를 서로 대응시켜 저장함으로써, 상기 제1 이력 데이터에 대한 저장 과정을 완료할 수 있다.
이때, 본 발명의 일실시예에 따르면, 전자 장치(110)는, 클라우드 저장 서버(140) 상에 암호화된 상태로 저장되어 있는 상기 제1 이력 데이터를 조회하기 위한 구성을 더 포함할 수 있다.
이와 관련해서, 본 발명의 일실시예에 따르면, 전자 장치(110)는 입력 지시 메시지 표시부(132), 복원부(133) 및 이력 데이터 조회부(134)를 더 포함할 수 있다.
입력 지시 메시지 표시부(132)는 클라우드 저장 서버(140)에 상기 제1 문장과 상기 제1 암호화 이력 데이터가 저장된 이후, 상기 사용자로부터, 상기 제1 이력 데이터를 조회할 것을 지시하는 조회 명령이 인가되면, 클라우드 저장 서버(140)로부터 상기 제1 문장과 상기 제1 암호화 이력 데이터를 수신하고, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호를 입력할 것을 지시하는 내용이 포함된 입력 지시 메시지를 화면 상에 표시한다.
복원부(133)는 상기 사용자에 의해, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호로서, 상기 n자릿수의 비밀번호가 입력되면, 상기 제1 문장에 포함된 문자의 개수를, 상기 시드 값으로 지정한 후, 상기 시드 값을 의사 난수 생성 함수 저장부(124)에 저장되어 있는 상기 t개의 의사 난수 생성 함수들 각각에 입력으로 인가하여, 상기 t개의 의사 난수들을 생성하고, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 상기 열벡터와, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 상기 행벡터를 생성한 후, 상기 열벡터와 상기 행벡터 간의 행렬 곱을 연산함으로써, 상기 연산 행렬을 생성하고, 상기 연산 행렬을 구성하는 t2개의 성분들을 오름차순으로 연접함으로써, 상기 제1 일련번호를 생성한 후, 상기 제1 일련번호에 대해, 상기 사용자에 의해 입력된 비밀번호를 제수로 하는 모듈로 연산을 수행함으로써, 상기 모듈로 값을 생성하고, 상기 모듈로 값을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제1 암호화 이력 데이터를 상기 제1 해시 값으로 복호화함으로써, 상기 제1 이력 데이터를 복원한다.
이력 데이터 조회부(134)는 상기 제1 이력 데이터가 복원되면, 상기 제1 이력 데이터에 포함되어 있는 상기 사용자의 음성에 대한 음성 데이터를 재생함과 동시에, 상기 제1 날짜 및 시간 정보와 상기 제1 문장에 대한 발음 평가 점수를 화면 상에 표시한다.
이하에서는, 입력 지시 메시지 표시부(132), 복원부(133) 및 이력 데이터 조회부(134)의 동작을 예를 들어, 상세히 설명하기로 한다.
먼저, 전술한 예와 같이, 저장 처리부(131)를 통해, 클라우드 저장 서버(140)에 상기 제1 문장인 '문장 2'와 상기 제1 암호화 이력 데이터가 저장되었다고 가정하자.
이때, 상기 사용자로부터, 상기 제1 이력 데이터를 조회할 것을 지시하는 조회 명령이 인가되면, 입력 지시 메시지 표시부(132)는 클라우드 저장 서버(140)로부터, 상기 제1 문장인 '문장 2'와 상기 제1 암호화 이력 데이터를 수신할 수 있다.
이렇게, 클라우드 저장 서버(140)로부터 상기 제1 문장과 상기 제1 암호화 이력 데이터가 수신되면, 입력 지시 메시지 표시부(132)는 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호를 입력할 것을 지시하는 내용이 포함된 입력 지시 메시지를 화면 상에 표시할 수 있다.
이때, 상기 사용자는 이러한 입력 지시 메시지를 보고, 자신이 숙지해 두었던 비밀번호를 전자 장치(110) 상에 입력할 수 있다.
이렇게, 상기 사용자에 의해, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호로서, '827570859'라고 하는 상기 9자릿수의 비밀번호가 입력되었다고 하는 경우, 복원부(133)는 상기 제1 문장인 '문장 2'의 '원숭이가 마을에 나타났다'에 포함된 문자의 개수인 '13(개)'을, 상기 시드 값으로 지정한 후, 상기 시드 값인 '13'을 의사 난수 생성 함수 저장부(124)에 저장되어 있는 상기 3개의 의사 난수 생성 함수들인 '의사 난수 생성 함수 1, 의사 난수 생성 함수 2, 의사 난수 생성 함수 3' 각각에 입력으로 인가하여, '8, 3, 5'와 같은 상기 3개의 의사 난수들을 생성할 수 있다.
이렇게, 복원부(133)에 의해 상기 3개의 의사 난수들이 생성되면, 복원부(133)는 상기 3개의 의사 난수들인 '8, 3, 5' 각각을 성분으로 갖는 3차원의 상기 열벡터인 ''와, 상기 3개의 의사 난수들인 '8, 3, 5' 각각을 성분으로 갖는 3차원의 상기 행벡터인 ''를 생성한 후, 상기 열벡터인 ''와 상기 행벡터인 '' 간의 행렬 곱을 연산함으로써, ''와 같은 상기 연산 행렬을 생성할 수 있다.
그러고 나서, 복원부(133)는 상기 연산 행렬인 ''를 구성하는 9개의 성분들인 '64, 24, 40, 24, 9, 15, 40, 15, 25'를 오름차순으로 연접함으로써, '91515242425404064'와 같은 상기 제1 일련번호를 생성할 수 있다.
그 이후, 복원부(133)는 상기 제1 일련번호인 '91515242425404064'에 대해, 상기 사용자로부터 입력된 비밀번호인 '827570859'을 제수로 하는 모듈로 연산을 수행함으로써, '606874488'이라는 모듈로 값을 생성한 후, 상기 모듈로 값인 '606874488'을 상기 해시 함수에 입력으로 인가하여 '26d103c620a31345ag57qat327891703'과 같은 상기 제1 해시 값을 생성하고, 상기 제1 암호화 이력 데이터를 상기 제1 해시 값인 '26d103c620a31345ag57qat327891703'으로 복호화함으로써, 상기 제1 이력 데이터를 복원할 수 있다.
이렇게, 복원부(133)에 의해 상기 제1 이력 데이터가 복원되면, 이력 데이터 조회부(134)는 상기 제1 이력 데이터에 포함되어 있는 상기 사용자의 음성에 대한 음성 데이터를 재생함과 동시에, 상기 제1 날짜 및 시간 정보인 '2022년 12월 19일 16시 30분'과 상기 제1 문장인 '문장 2'에 대한 발음 평가 점수인 '90점'을 화면 상에 표시할 수 있다.
도 2는 본 발명의 일실시예에 따른 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치의 동작 방법을 도시한 순서도이다.
단계(S210)에서는 발음 평가용으로 사전 지정된 복수의 문장들(상기 복수의 문장들 각각은 한글로 구성되어 있음)이 저장되어 있는 문장 저장부를 유지한다.
단계(S220)에서는 상기 전자 장치의 사용자로부터, 상기 복수의 문장들 중 어느 하나인 제1 문장에 대한 발음 평가 명령이 인가되면, 상기 제1 문장을 화면 상에 표시하면서, 상기 제1 문장을 음성으로 발음할 것을 지시하는 내용이 포함된 발음 지시 메시지를 화면 상에 표시한다.
단계(S230)에서는 상기 제1 문장과 상기 발음 지시 메시지가 화면 상에 표시된 이후, 상기 전자 장치에 연결된 마이크로폰을 통해, 상기 제1 문장에 대한 상기 사용자의 음성이 입력되면, 상기 사용자의 음성을 사전 구축된 음성 인식 모델에 입력으로 인가하여 음성 인식을 수행함으로써, 상기 사용자의 음성에 대한 제1 인식 문장을 생성한다.
단계(S240)에서는 상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 일치 비율, 및 상기 사용자의 음성을 구성하는 전체 구간에서 음성이 존재하지 않는 무음 구간이 차지하는 비율인 무음 구간 비율을 기초로, 상기 제1 문장에 대한 발음 평가 점수를 산출하여 화면 상에 표시한다.
이때, 본 발명의 일실시예에 따르면, 단계(S240)에서는 상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 상기 일치 비율을 산출한 후, 사전 설정된 정확도 테이블(상기 정확도 테이블에는, 사전 설정된 복수의 제1 비율 범위 값들과, 상기 복수의 제1 비율 범위 값들 각각에 매칭되는 사전 설정된 발음 정확도 점수가 기록되어 있음)로부터, 상기 일치 비율이 속하는 범위 값에 대응되어 기록되어 있는 제1 발음 정확도 점수를 추출하는 단계, 상기 제1 발음 정확도 점수가 추출되면, 상기 사용자의 음성을 구성하는 전체 구간에서 상기 무음 구간이 차지하는 비율인 상기 무음 구간 비율을 산출한 후, 사전 설정된 유창도 테이블(상기 유창도 테이블에는, 사전 설정된 복수의 제2 비율 범위 값들과, 상기 복수의 제2 비율 범위 값들 각각에 매칭되는 사전 설정된 발음 유창도 점수가 기록되어 있음)로부터, 상기 무음 구간 비율이 속하는 범위 값에 대응되어 기록되어 있는 제1 발음 유창도 점수를 추출하는 단계 및 상기 제1 발음 유창도 점수가 추출되면, 상기 제1 발음 정확도 점수와 상기 제1 발음 유창도 점수의 평균을 연산한 후, 상기 평균을, 상기 제1 문장에 대한 발음 평가 점수로 지정하여 화면 상에 표시하는 단계를 포함할 수 있다.
이때, 본 발명의 일실시예에 따르면, 상기 제1 발음 정확도 점수를 추출하는 단계는 상기 제1 문장을 구성하는 텍스트를 자소 단위로 분할함으로써, 상기 제1 문장에 대응되는 낱글자들을 생성하고, 상기 제1 인식 문장을 구성하는 텍스트를 자소 단위로 분할함으로써, 상기 제1 인식 문장에 대응되는 낱글자들을 생성하는 단계, 상기 제1 문장에 대응되는 낱글자들과 상기 제1 인식 문장에 대응되는 낱글자들 간의 최장 공통 부분 수열의 길이를 연산하는 단계 및 상기 LCS의 길이가 연산되면, 상기 제1 문장에 대응되는 낱글자들의 전체 개수(A)에 대한, 상기 LCS의 길이(B)의 비율(B/A)을, 상기 일치 비율로 산출하는 단계를 포함할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 제1 발음 유창도 점수를 추출하는 단계는 상기 사용자의 음성을 구성하는 전체 구간에서, 사전 설정된 제1 시간 이상 연속하여 음성이 존재하지 않는 구간들을, 상기 무음 구간으로 검출하는 단계 및 상기 무음 구간이 검출되면, 상기 무음 구간으로 검출된 구간들 각각의 시간을 모두 합산함으로써, 합산 시간을 생성한 후, 상기 사용자의 음성을 구성하는 전체 구간의 시간(C)에 대한, 상기 합산 시간(D)의 비율(D/C)을, 상기 무음 구간 비율로 산출하는 단계를 포함할 수 있다.
또한, 본 발명의 일실시예에 따르면, 상기 전자 장치의 동작 방법은 상기 사용자에 대해 사전 발급된 n(n은 2 이상의 자연수임)자릿수의 비밀번호가 저장되어 있는 비밀번호 저장부를 유지하는 단계, 사전 설정된 서로 다른 t(t는 2 이상의 자연수임)개의 의사 난수 생성 함수들이 저장되어 있는 의사 난수 생성 함수 저장부를 유지하는 단계, 상기 제1 문장에 대한 발음 평가 점수가 화면 상에 표시된 이후, 상기 사용자로부터, 상기 제1 문장에 대한 발음 평가 이력 저장 명령이 인가되면, 상기 발음 평가 이력 저장 명령이 인가된 시점에 대한 제1 날짜 및 시간 정보를 생성한 후, 상기 사용자의 음성에 대한 음성 데이터, 상기 제1 문장에 대한 발음 평가 점수, 상기 제1 날짜 및 시간 정보로 구성된 제1 이력 데이터를 생성하는 단계, 상기 제1 이력 데이터가 생성되면, 상기 제1 이력 데이터를 암호화하여 사전 지정된 클라우드 저장 서버에 저장하기 위한 저장 이벤트를 발생시키는 단계, 상기 저장 이벤트가 발생되면, 상기 제1 문장에 포함된 문자의 개수를, 의사 난수 생성을 위한 시드 값으로 지정한 후, 상기 시드 값을 상기 의사 난수 생성 함수 저장부에 저장되어 있는 상기 t개의 의사 난수 생성 함수들 각각에 입력으로 인가하여, t개의 의사 난수들을 생성하는 단계, 상기 t개의 의사 난수들이 생성되면, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 열벡터와, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 행벡터를 생성한 후, 상기 열벡터와 상기 행벡터 간의 행렬 곱을 연산함으로써, t x t 크기의 연산 행렬을 생성하는 단계, 상기 연산 행렬이 생성되면, 상기 연산 행렬을 구성하는 t2개의 성분들을 오름차순으로 연접함으로써, 제1 일련번호를 생성하는 단계, 상기 제1 일련번호가 생성되면, 상기 제1 일련번호에 대해, 상기 비밀번호를 제수로 하는 모듈로 연산을 수행함으로써, 모듈로 값을 생성한 후, 상기 모듈로 값을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 이력 데이터를 상기 제1 해시 값으로 암호화함으로써, 제1 암호화 이력 데이터를 생성하는 단계, 상기 제1 암호화 이력 데이터가 생성되면, 상기 클라우드 저장 서버에, 상기 제1 문장과 상기 제1 암호화 이력 데이터를 서로 대응시켜 저장함으로써, 상기 제1 이력 데이터에 대한 저장 과정을 완료하는 단계, 상기 클라우드 저장 서버에 상기 제1 문장과 상기 제1 암호화 이력 데이터가 저장된 이후, 상기 사용자로부터, 상기 제1 이력 데이터를 조회할 것을 지시하는 조회 명령이 인가되면, 상기 클라우드 저장 서버로부터 상기 제1 문장과 상기 제1 암호화 이력 데이터를 수신하고, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호를 입력할 것을 지시하는 내용이 포함된 입력 지시 메시지를 화면 상에 표시하는 단계, 상기 사용자에 의해, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호로서, 상기 n자릿수의 비밀번호가 입력되면, 상기 제1 문장에 포함된 문자의 개수를, 상기 시드 값으로 지정한 후, 상기 시드 값을 상기 의사 난수 생성 함수 저장부에 저장되어 있는 상기 t개의 의사 난수 생성 함수들 각각에 입력으로 인가하여, 상기 t개의 의사 난수들을 생성하고, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 상기 열벡터와, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 상기 행벡터를 생성한 후, 상기 열벡터와 상기 행벡터 간의 행렬 곱을 연산함으로써, 상기 연산 행렬을 생성하고, 상기 연산 행렬을 구성하는 t2개의 성분들을 오름차순으로 연접함으로써, 상기 제1 일련번호를 생성한 후, 상기 제1 일련번호에 대해, 상기 사용자에 의해 입력된 비밀번호를 제수로 하는 모듈로 연산을 수행함으로써, 상기 모듈로 값을 생성하고, 상기 모듈로 값을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제1 암호화 이력 데이터를 상기 제1 해시 값으로 복호화함으로써, 상기 제1 이력 데이터를 복원하는 단계 및 상기 제1 이력 데이터가 복원되면, 상기 제1 이력 데이터에 포함되어 있는 상기 사용자의 음성에 대한 음성 데이터를 재생함과 동시에, 상기 제1 날짜 및 시간 정보와 상기 제1 문장에 대한 발음 평가 점수를 화면 상에 표시하는 단계를 더 포함할 수 있다.
이상, 도 2를 참조하여 본 발명의 일실시예에 따른 전자 장치의 동작 방법에 대해 설명하였다. 여기서, 본 발명의 일실시예에 따른 전자 장치의 동작 방법은 도 1을 이용하여 설명한 전자 장치(110)의 동작에 대한 구성과 대응될 수 있으므로, 이에 대한 보다 상세한 설명은 생략하기로 한다.
본 발명의 일실시예에 따른 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치의 동작 방법은 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램으로 구현될 수 있다.
또한, 본 발명의 일실시예에 따른 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치의 동작 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 본 발명에서는 구체적인 구성 요소 등과 같은 특정 사항들과 한정된 실시예 및 도면에 의해 설명되었으나 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상적인 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
따라서, 본 발명의 사상은 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐 아니라 이 특허청구범위와 균등하거나 등가적 변형이 있는 모든 것들은 본 발명 사상의 범주에 속한다고 할 것이다.

Claims (12)

  1. 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치에 있어서,
    발음 평가용으로 사전 지정된 복수의 문장들 - 상기 복수의 문장들 각각은 한글로 구성되어 있음 - 이 저장되어 있는 문장 저장부;
    상기 전자 장치의 사용자로부터, 상기 복수의 문장들 중 어느 하나인 제1 문장에 대한 발음 평가 명령이 인가되면, 상기 제1 문장을 화면 상에 표시하면서, 상기 제1 문장을 음성으로 발음할 것을 지시하는 내용이 포함된 발음 지시 메시지를 화면 상에 표시하는 표시부;
    상기 제1 문장과 상기 발음 지시 메시지가 화면 상에 표시된 이후, 상기 전자 장치에 연결된 마이크로폰을 통해, 상기 제1 문장에 대한 상기 사용자의 음성이 입력되면, 상기 사용자의 음성을 사전 구축된 음성 인식 모델에 입력으로 인가하여 음성 인식을 수행함으로써, 상기 사용자의 음성에 대한 제1 인식 문장을 생성하는 인식 문장 생성부; 및
    상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 일치 비율, 및 상기 사용자의 음성을 구성하는 전체 구간에서 음성이 존재하지 않는 무음 구간이 차지하는 비율인 무음 구간 비율을 기초로, 상기 제1 문장에 대한 발음 평가 점수를 산출하여 화면 상에 표시하는 발음 평가 점수 처리부
    를 포함하는 전자 장치.
  2. 제1항에 있어서,
    상기 발음 평가 점수 처리부는
    상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 상기 일치 비율을 산출한 후, 사전 설정된 정확도 테이블 - 상기 정확도 테이블에는, 사전 설정된 복수의 제1 비율 범위 값들과, 상기 복수의 제1 비율 범위 값들 각각에 매칭되는 사전 설정된 발음 정확도 점수가 기록되어 있음 - 로부터, 상기 일치 비율이 속하는 범위 값에 대응되어 기록되어 있는 제1 발음 정확도 점수를 추출하는 발음 정확도 점수 추출부;
    상기 제1 발음 정확도 점수가 추출되면, 상기 사용자의 음성을 구성하는 전체 구간에서 상기 무음 구간이 차지하는 비율인 상기 무음 구간 비율을 산출한 후, 사전 설정된 유창도 테이블 - 상기 유창도 테이블에는, 사전 설정된 복수의 제2 비율 범위 값들과, 상기 복수의 제2 비율 범위 값들 각각에 매칭되는 사전 설정된 발음 유창도 점수가 기록되어 있음 - 로부터, 상기 무음 구간 비율이 속하는 범위 값에 대응되어 기록되어 있는 제1 발음 유창도 점수를 추출하는 발음 유창도 점수 추출부; 및
    상기 제1 발음 유창도 점수가 추출되면, 상기 제1 발음 정확도 점수와 상기 제1 발음 유창도 점수의 평균을 연산한 후, 상기 평균을, 상기 제1 문장에 대한 발음 평가 점수로 지정하여 화면 상에 표시하는 점수 표시부
    를 포함하는 전자 장치.
  3. 제2항에 있어서,
    상기 발음 정확도 점수 추출부는
    상기 제1 문장을 구성하는 텍스트를 자소 단위로 분할함으로써, 상기 제1 문장에 대응되는 낱글자들을 생성하고, 상기 제1 인식 문장을 구성하는 텍스트를 자소 단위로 분할함으로써, 상기 제1 인식 문장에 대응되는 낱글자들을 생성하는 낱글자 생성부;
    상기 제1 문장에 대응되는 낱글자들과 상기 제1 인식 문장에 대응되는 낱글자들 간의 최장 공통 부분 수열(Longest Common Subsequence: LCS)의 길이를 연산하는 LCS 길이 연산부; 및
    상기 LCS의 길이가 연산되면, 상기 제1 문장에 대응되는 낱글자들의 전체 개수(A)에 대한, 상기 LCS의 길이(B)의 비율(B/A)을, 상기 일치 비율로 산출하는 일치 비율 산출부
    를 포함하는 전자 장치.
  4. 제2항에 있어서,
    상기 발음 유창도 점수 추출부는
    상기 사용자의 음성을 구성하는 전체 구간에서, 사전 설정된 제1 시간 이상 연속하여 음성이 존재하지 않는 구간들을, 상기 무음 구간으로 검출하는 무음 구간 검출부; 및
    상기 무음 구간이 검출되면, 상기 무음 구간으로 검출된 구간들 각각의 시간을 모두 합산함으로써, 합산 시간을 생성한 후, 상기 사용자의 음성을 구성하는 전체 구간의 시간(C)에 대한, 상기 합산 시간(D)의 비율(D/C)을, 상기 무음 구간 비율로 산출하는 무음 구간 비율 산출부
    를 포함하는 전자 장치.
  5. 제1항에 있어서,
    상기 사용자에 대해 사전 발급된 n(n은 2 이상의 자연수임)자릿수의 비밀번호가 저장되어 있는 비밀번호 저장부;
    사전 설정된 서로 다른 t(t는 2 이상의 자연수임)개의 의사 난수(Pseudo Random Number) 생성 함수들이 저장되어 있는 의사 난수 생성 함수 저장부;
    상기 제1 문장에 대한 발음 평가 점수가 화면 상에 표시된 이후, 상기 사용자로부터, 상기 제1 문장에 대한 발음 평가 이력 저장 명령이 인가되면, 상기 발음 평가 이력 저장 명령이 인가된 시점에 대한 제1 날짜 및 시간 정보를 생성한 후, 상기 사용자의 음성에 대한 음성 데이터, 상기 제1 문장에 대한 발음 평가 점수, 상기 제1 날짜 및 시간 정보로 구성된 제1 이력 데이터를 생성하는 이력 데이터 생성부;
    상기 제1 이력 데이터가 생성되면, 상기 제1 이력 데이터를 암호화하여 사전 지정된 클라우드 저장 서버에 저장하기 위한 저장 이벤트를 발생시키는 저장 이벤트 발생부;
    상기 저장 이벤트가 발생되면, 상기 제1 문장에 포함된 문자의 개수를, 의사 난수 생성을 위한 시드(Seed) 값으로 지정한 후, 상기 시드 값을 상기 의사 난수 생성 함수 저장부에 저장되어 있는 상기 t개의 의사 난수 생성 함수들 각각에 입력으로 인가하여, t개의 의사 난수들을 생성하는 의사 난수 생성부;
    상기 t개의 의사 난수들이 생성되면, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 열벡터와, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 행벡터를 생성한 후, 상기 열벡터와 상기 행벡터 간의 행렬 곱을 연산함으로써, t x t 크기의 연산 행렬을 생성하는 연산 행렬 생성부;
    상기 연산 행렬이 생성되면, 상기 연산 행렬을 구성하는 t2개의 성분들을 오름차순으로 연접함으로써, 제1 일련번호를 생성하는 일련번호 생성부;
    상기 제1 일련번호가 생성되면, 상기 제1 일련번호에 대해, 상기 비밀번호를 제수로 하는 모듈로 연산을 수행함으로써, 모듈로 값을 생성한 후, 상기 모듈로 값을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 이력 데이터를 상기 제1 해시 값으로 암호화함으로써, 제1 암호화 이력 데이터를 생성하는 암호화부;
    상기 제1 암호화 이력 데이터가 생성되면, 상기 클라우드 저장 서버에, 상기 제1 문장과 상기 제1 암호화 이력 데이터를 서로 대응시켜 저장함으로써, 상기 제1 이력 데이터에 대한 저장 과정을 완료하는 저장 처리부;
    상기 클라우드 저장 서버에 상기 제1 문장과 상기 제1 암호화 이력 데이터가 저장된 이후, 상기 사용자로부터, 상기 제1 이력 데이터를 조회할 것을 지시하는 조회 명령이 인가되면, 상기 클라우드 저장 서버로부터 상기 제1 문장과 상기 제1 암호화 이력 데이터를 수신하고, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호를 입력할 것을 지시하는 내용이 포함된 입력 지시 메시지를 화면 상에 표시하는 입력 지시 메시지 표시부;
    상기 사용자에 의해, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호로서, 상기 n자릿수의 비밀번호가 입력되면, 상기 제1 문장에 포함된 문자의 개수를, 상기 시드 값으로 지정한 후, 상기 시드 값을 상기 의사 난수 생성 함수 저장부에 저장되어 있는 상기 t개의 의사 난수 생성 함수들 각각에 입력으로 인가하여, 상기 t개의 의사 난수들을 생성하고, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 상기 열벡터와, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 상기 행벡터를 생성한 후, 상기 열벡터와 상기 행벡터 간의 행렬 곱을 연산함으로써, 상기 연산 행렬을 생성하고, 상기 연산 행렬을 구성하는 t2개의 성분들을 오름차순으로 연접함으로써, 상기 제1 일련번호를 생성한 후, 상기 제1 일련번호에 대해, 상기 사용자에 의해 입력된 비밀번호를 제수로 하는 모듈로 연산을 수행함으로써, 상기 모듈로 값을 생성하고, 상기 모듈로 값을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제1 암호화 이력 데이터를 상기 제1 해시 값으로 복호화함으로써, 상기 제1 이력 데이터를 복원하는 복원부; 및
    상기 제1 이력 데이터가 복원되면, 상기 제1 이력 데이터에 포함되어 있는 상기 사용자의 음성에 대한 음성 데이터를 재생함과 동시에, 상기 제1 날짜 및 시간 정보와 상기 제1 문장에 대한 발음 평가 점수를 화면 상에 표시하는 이력 데이터 조회부
    를 더 포함하는 전자 장치.
  6. 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치의 동작 방법에 있어서,
    발음 평가용으로 사전 지정된 복수의 문장들 - 상기 복수의 문장들 각각은 한글로 구성되어 있음 - 이 저장되어 있는 문장 저장부를 유지하는 단계;
    상기 전자 장치의 사용자로부터, 상기 복수의 문장들 중 어느 하나인 제1 문장에 대한 발음 평가 명령이 인가되면, 상기 제1 문장을 화면 상에 표시하면서, 상기 제1 문장을 음성으로 발음할 것을 지시하는 내용이 포함된 발음 지시 메시지를 화면 상에 표시하는 단계;
    상기 제1 문장과 상기 발음 지시 메시지가 화면 상에 표시된 이후, 상기 전자 장치에 연결된 마이크로폰을 통해, 상기 제1 문장에 대한 상기 사용자의 음성이 입력되면, 상기 사용자의 음성을 사전 구축된 음성 인식 모델에 입력으로 인가하여 음성 인식을 수행함으로써, 상기 사용자의 음성에 대한 제1 인식 문장을 생성하는 단계; 및
    상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 일치 비율, 및 상기 사용자의 음성을 구성하는 전체 구간에서 음성이 존재하지 않는 무음 구간이 차지하는 비율인 무음 구간 비율을 기초로, 상기 제1 문장에 대한 발음 평가 점수를 산출하여 화면 상에 표시하는 단계
    를 포함하는 전자 장치의 동작 방법.
  7. 제6항에 있어서,
    상기 발음 평가 점수를 산출하여 화면 상에 표시하는 단계는
    상기 제1 인식 문장이 생성되면, 상기 제1 문장과 상기 제1 인식 문장 간의 상기 일치 비율을 산출한 후, 사전 설정된 정확도 테이블 - 상기 정확도 테이블에는, 사전 설정된 복수의 제1 비율 범위 값들과, 상기 복수의 제1 비율 범위 값들 각각에 매칭되는 사전 설정된 발음 정확도 점수가 기록되어 있음 - 로부터, 상기 일치 비율이 속하는 범위 값에 대응되어 기록되어 있는 제1 발음 정확도 점수를 추출하는 단계;
    상기 제1 발음 정확도 점수가 추출되면, 상기 사용자의 음성을 구성하는 전체 구간에서 상기 무음 구간이 차지하는 비율인 상기 무음 구간 비율을 산출한 후, 사전 설정된 유창도 테이블 - 상기 유창도 테이블에는, 사전 설정된 복수의 제2 비율 범위 값들과, 상기 복수의 제2 비율 범위 값들 각각에 매칭되는 사전 설정된 발음 유창도 점수가 기록되어 있음 - 로부터, 상기 무음 구간 비율이 속하는 범위 값에 대응되어 기록되어 있는 제1 발음 유창도 점수를 추출하는 단계; 및
    상기 제1 발음 유창도 점수가 추출되면, 상기 제1 발음 정확도 점수와 상기 제1 발음 유창도 점수의 평균을 연산한 후, 상기 평균을, 상기 제1 문장에 대한 발음 평가 점수로 지정하여 화면 상에 표시하는 단계
    를 포함하는 전자 장치의 동작 방법.
  8. 제7항에 있어서,
    상기 제1 발음 정확도 점수를 추출하는 단계는
    상기 제1 문장을 구성하는 텍스트를 자소 단위로 분할함으로써, 상기 제1 문장에 대응되는 낱글자들을 생성하고, 상기 제1 인식 문장을 구성하는 텍스트를 자소 단위로 분할함으로써, 상기 제1 인식 문장에 대응되는 낱글자들을 생성하는 단계;
    상기 제1 문장에 대응되는 낱글자들과 상기 제1 인식 문장에 대응되는 낱글자들 간의 최장 공통 부분 수열(Longest Common Subsequence: LCS)의 길이를 연산하는 단계; 및
    상기 LCS의 길이가 연산되면, 상기 제1 문장에 대응되는 낱글자들의 전체 개수(A)에 대한, 상기 LCS의 길이(B)의 비율(B/A)을, 상기 일치 비율로 산출하는 단계
    를 포함하는 전자 장치의 동작 방법.
  9. 제7항에 있어서,
    상기 제1 발음 유창도 점수를 추출하는 단계는
    상기 사용자의 음성을 구성하는 전체 구간에서, 사전 설정된 제1 시간 이상 연속하여 음성이 존재하지 않는 구간들을, 상기 무음 구간으로 검출하는 단계; 및
    상기 무음 구간이 검출되면, 상기 무음 구간으로 검출된 구간들 각각의 시간을 모두 합산함으로써, 합산 시간을 생성한 후, 상기 사용자의 음성을 구성하는 전체 구간의 시간(C)에 대한, 상기 합산 시간(D)의 비율(D/C)을, 상기 무음 구간 비율로 산출하는 단계
    를 포함하는 전자 장치의 동작 방법.
  10. 제6항에 있어서,
    상기 사용자에 대해 사전 발급된 n(n은 2 이상의 자연수임)자릿수의 비밀번호가 저장되어 있는 비밀번호 저장부를 유지하는 단계;
    사전 설정된 서로 다른 t(t는 2 이상의 자연수임)개의 의사 난수(Pseudo Random Number) 생성 함수들이 저장되어 있는 의사 난수 생성 함수 저장부를 유지하는 단계;
    상기 제1 문장에 대한 발음 평가 점수가 화면 상에 표시된 이후, 상기 사용자로부터, 상기 제1 문장에 대한 발음 평가 이력 저장 명령이 인가되면, 상기 발음 평가 이력 저장 명령이 인가된 시점에 대한 제1 날짜 및 시간 정보를 생성한 후, 상기 사용자의 음성에 대한 음성 데이터, 상기 제1 문장에 대한 발음 평가 점수, 상기 제1 날짜 및 시간 정보로 구성된 제1 이력 데이터를 생성하는 단계;
    상기 제1 이력 데이터가 생성되면, 상기 제1 이력 데이터를 암호화하여 사전 지정된 클라우드 저장 서버에 저장하기 위한 저장 이벤트를 발생시키는 단계;
    상기 저장 이벤트가 발생되면, 상기 제1 문장에 포함된 문자의 개수를, 의사 난수 생성을 위한 시드(Seed) 값으로 지정한 후, 상기 시드 값을 상기 의사 난수 생성 함수 저장부에 저장되어 있는 상기 t개의 의사 난수 생성 함수들 각각에 입력으로 인가하여, t개의 의사 난수들을 생성하는 단계;
    상기 t개의 의사 난수들이 생성되면, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 열벡터와, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 행벡터를 생성한 후, 상기 열벡터와 상기 행벡터 간의 행렬 곱을 연산함으로써, t x t 크기의 연산 행렬을 생성하는 단계;
    상기 연산 행렬이 생성되면, 상기 연산 행렬을 구성하는 t2개의 성분들을 오름차순으로 연접함으로써, 제1 일련번호를 생성하는 단계;
    상기 제1 일련번호가 생성되면, 상기 제1 일련번호에 대해, 상기 비밀번호를 제수로 하는 모듈로 연산을 수행함으로써, 모듈로 값을 생성한 후, 상기 모듈로 값을 사전 설정된 해시 함수에 입력으로 인가하여 제1 해시 값을 생성하고, 상기 제1 이력 데이터를 상기 제1 해시 값으로 암호화함으로써, 제1 암호화 이력 데이터를 생성하는 단계;
    상기 제1 암호화 이력 데이터가 생성되면, 상기 클라우드 저장 서버에, 상기 제1 문장과 상기 제1 암호화 이력 데이터를 서로 대응시켜 저장함으로써, 상기 제1 이력 데이터에 대한 저장 과정을 완료하는 단계;
    상기 클라우드 저장 서버에 상기 제1 문장과 상기 제1 암호화 이력 데이터가 저장된 이후, 상기 사용자로부터, 상기 제1 이력 데이터를 조회할 것을 지시하는 조회 명령이 인가되면, 상기 클라우드 저장 서버로부터 상기 제1 문장과 상기 제1 암호화 이력 데이터를 수신하고, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호를 입력할 것을 지시하는 내용이 포함된 입력 지시 메시지를 화면 상에 표시하는 단계;
    상기 사용자에 의해, 상기 제1 암호화 이력 데이터의 복호화를 위한 비밀번호로서, 상기 n자릿수의 비밀번호가 입력되면, 상기 제1 문장에 포함된 문자의 개수를, 상기 시드 값으로 지정한 후, 상기 시드 값을 상기 의사 난수 생성 함수 저장부에 저장되어 있는 상기 t개의 의사 난수 생성 함수들 각각에 입력으로 인가하여, 상기 t개의 의사 난수들을 생성하고, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 상기 열벡터와, 상기 t개의 의사 난수들 각각을 성분으로 갖는 t차원의 상기 행벡터를 생성한 후, 상기 열벡터와 상기 행벡터 간의 행렬 곱을 연산함으로써, 상기 연산 행렬을 생성하고, 상기 연산 행렬을 구성하는 t2개의 성분들을 오름차순으로 연접함으로써, 상기 제1 일련번호를 생성한 후, 상기 제1 일련번호에 대해, 상기 사용자에 의해 입력된 비밀번호를 제수로 하는 모듈로 연산을 수행함으로써, 상기 모듈로 값을 생성하고, 상기 모듈로 값을 상기 해시 함수에 입력으로 인가하여 상기 제1 해시 값을 생성한 후, 상기 제1 암호화 이력 데이터를 상기 제1 해시 값으로 복호화함으로써, 상기 제1 이력 데이터를 복원하는 단계; 및
    상기 제1 이력 데이터가 복원되면, 상기 제1 이력 데이터에 포함되어 있는 상기 사용자의 음성에 대한 음성 데이터를 재생함과 동시에, 상기 제1 날짜 및 시간 정보와 상기 제1 문장에 대한 발음 평가 점수를 화면 상에 표시하는 단계
    를 더 포함하는 전자 장치의 동작 방법.
  11. 제6항 내지 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 컴퓨터 프로그램을 기록한 컴퓨터 판독 가능 기록 매체.
  12. 제6항 내지 제10항 중 어느 한 항의 방법을 컴퓨터와의 결합을 통해 실행시키기 위한 저장매체에 저장된 컴퓨터 프로그램.
PCT/KR2023/017523 2023-01-03 2023-11-03 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법 WO2024147461A1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2023-0000543 2023-01-03

Publications (1)

Publication Number Publication Date
WO2024147461A1 true WO2024147461A1 (ko) 2024-07-11

Family

ID=

Similar Documents

Publication Publication Date Title
US7552469B2 (en) Method for generating mnemonic random passcodes
US20020038421A1 (en) Encrypted file system, encrypted file retrieval method, and computer-readable medium
WO2020235918A1 (ko) 생체 정보 기반의 로그인 인증 처리를 수행하는 전자 단말 장치 및 그 동작 방법
WO2016068455A1 (ko) 적응적인 키보드 인터페이스를 제공하기 위한 방법 및 시스템, 대화 내용과 연동되는 적응적 키보드를 이용한 답변 입력 방법
WO2020246706A1 (ko) 문서의 신뢰성을 보장하기 위한 블록체인 기반의 문서 정보 관리 장치 및 그 동작 방법
WO2023210861A1 (ko) 유해 사이트에 대한 접속 알림 서비스를 제공할 수 있는 알림 서비스 서버 및 그 동작 방법
WO2024147461A1 (ko) 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법
EP4010841A1 (en) System and method for solving text sensitivity based bias in language model
WO2021172668A1 (ko) 블록체인을 이용한 최초 저작권자 인증 시스템 및 그 방법
WO2022025537A1 (ko) 데이터관리컴퓨터, 데이터관리컴퓨터를 포함한 데이터보안시스템 및 데이터보안방법
WO2022220354A1 (ko) 어군 생태계의 이상 여부를 감지하기 위한 어군 생태계 모니터링 시스템 장치 및 그 동작 방법
WO2014003276A1 (ko) 중국어 단어 입력 장치 및 방법
WO2018097481A1 (ko) 애플리케이션을 이용한 족보 관리 방법
KR20240108962A (ko) 발음 평가용 문장에 기초하여 발음 평가를 수행할 수 있도록 지원하는 전자 장치 및 그 동작 방법
TWI485578B (zh) 電腦輸入系統及其輸入方法
WO2020230939A1 (ko) 슈퍼마켓에서 발행되는 영수증 내 상품 명칭을 표준화된 상품 명칭으로 변경하여 영수증 정보를 저장하는 영수증 정보 관리 장치
WO2017175900A1 (ko) 로마자 발음 표기를 매개로 하는 한글 기반의 중국어 입력 장치 및 방법
WO2018074710A1 (ko) 가상키보드를 통해 손쉬운 문자 입력을 지원하는 터치스크린 전자 장치 및 그 동작 방법
WO2024136409A1 (ko) 화자 분할 방법 및 시스템
WO2022186506A1 (ko) 전자 문서에 삽입되는 2차원 코드와의 연동을 통해 상기 전자 문서에 대한 저자 정보의 저장 및 조회를 가능하게 하는 블록체인 기반의 저자 정보 관리 서버 및 그 동작 방법
KR102613911B1 (ko) 문서 파일에 하이퍼링크로 삽입된 유해 사이트의 url 주소에 대한 접속을 방지할 수 있는 전자 단말 장치 및 그 동작 방법
WO2023120861A1 (ko) 전자 장치 및 그 제어 방법
WO2020214001A1 (ko) Pki 기반의 일회성 아이디를 사용하여 서비스를 사용하는 방법, 및 이를 사용한 사용자 단말
WO2023013813A1 (ko) 다수준 등장인물 주의집중을 통한 비디오 스토리 이해 방법 및 이를 수행하기 위한 컴퓨팅 장치
KR20240019472A (ko) 음악 가사를 이용하여 타자 연습용 리듬 게임을 구현하는 전자 단말 장치 및 그 동작 방법