DOI QR코드

DOI QR Code

A technique to support the personalized learning based on the log data of piano chords practicing

피아노 코드 연습 데이터를 활용한 맞춤형 학습 지원

  • 정우성 (서울교육대학교 교육전문대학원) ;
  • 이은주 (경북대학교 컴퓨터학부) ;
  • 최수아 (경북대학교 컴퓨터학부 )
  • Received : 2023.01.15
  • Accepted : 2023.02.03
  • Published : 2023.02.28

Abstract

As Edutech arises which is integrating IT technology into education, many related attempts have been tried on music education area. The focus has been shifted from the teachers to the learners, and this makes the personalized learning emerge. The learner's proficiency is an essential factor to support the personalized learning. The chord fingering is an important technique in piano learning. In this paper, a personalized learning tool for piano chords has been suggested. And then, several utilization ways have been described by analyzing the chords patterns. Specifically, the difficulty of the chords and the proficiency of the learner are derived from the accumulated practicing log data of the users. More effective learning way of the chords has been presented through hierarchical clustering based on chords similarity. Furthermore, the suggested approach where only the practicing log data are used lessens the learner's burden to measure the proficiency and the chord's difficulty without additional efforts like taking tests.

IT기술을 교육 서비스에 접목시키는 에듀테크 시대가 도래함에 따라, 음악 교육에서도 다양한 시도들이 행해지고 있다. 교수자 중심에서 학습자 중심으로 옮아가면서 학습자 맞춤형 학습에 대해 관심이 높아졌으며, 이를 위해서 학습자의 숙련도를 파악하는 것이 필요하다. 피아노 학습에서 코드 운지법은 반주자가 필수적으로 익혀야 할 기법이다. 본 논문에서는 맞춤형 코드 운지법 학습 도구를 제안하고 코드 운지법 패턴 분석을 통한 활용 방안을 보였다. 구체적으로는, 학습자의 축적된 코드 연습 데이터를 활용하여 코드의 난이도나 학습자의 숙련도를 파악하고, 코드 사이의 유사도에 기반한 계층적 클러스터링을 수행하여 코드 클러스터들을 통하여 보다 향상된 코드 연습에 대한 활용방안을 제시하였다. 본 연구의 의의는 연습 데이터로부터 의미 있는 정보를 획득하여 맞춤형으로 코드 학습을 할 수 있다는 데 있다. 또한 테스트와 같은 부가적인 노력 없이, 연습 시에 저장되는 데이터들을 이용하여 숙련도와 코드 학습 난이도가 산정되므로 학습자 입장에서의 부담을 경감시킬 수 있다.

Keywords

Ⅰ. 서론

에듀테크(edutech)가 교육 분야에서의 화두로 떠오르고 있다. 에듀테크는 교육과 기술의 합성어로 교육에 기술, 특히 IT 기술을 접목시켜 보다 향상된 교육 서비스를 제공하고자 함을 의미한다[1]. 인공지능, 빅데이터 기술, 광범위한 네트워크 연결 등을 통하여 학습자들은 보다 정밀하게 본인의 상황에 맞는 교육 콘텐츠를 장소에 구애받지 않고 제공받을 수 있게 되었다. 또한 교수자 중심에서 학습자의 흥미와 관심으로 초점이 옮겨지게 되었다[2].

이러한 변화는 음악 교육에서도 마찬가지로 적용되고 있다. 이전의 음악 교육, 특히 악기 교육의 경우 교수자가 직접 개별 학습자의 숙련 정도를 파악하여 수준에 맞는 연습 과제를 반복 수행 방식으로 부과하고 학습자는 이에 맞추어 과제를 완수하였다. 이는 학습자의 연습이 숙련도와 직접적인 연관이 있음을 내포하고 있다. 학습자에 따라 경험이나 관심도가 다르므로, 학습자의 학습 상태에 따라 학습할 콘텐츠나 수준을 상대적으로 판단해야 한다[3]. 그런데 교수자의 경우 대부분 학습자가 다수이고 각각의 수준이 다르므로 이에 대해 수동으로 데이터를 기록하고 진도를 나가거나 평가하는 데 어려움이 있었다. 그러나 에듀테크를 접목하여 학습자에게 맞춤형 음악 교육 서비스를 제공해 줄 수 있다면 학습자는 효율적으로 관련 사항을 익힐 수 있고 학습자 개개인의 학습 상황을 파악해야 하는 교수자의 부담도 덜어주게 될 것이다.

악기 학습의 경우에는 타 분야와는 달리, 상대적으로 부가적인 노력 없이 축적된 연습 데이터를 통하여 숙련도를 평가할 수 있다. 즉, 국어나 수학, 영어와 같은 과목들은 학습자의 이해도 평가를 위하여 특정 시점마다 테스트를 치르게 되는데, 악기 학습의 경우에는 학습자의 평소 연습 과정에서 축적된 데이터를 통해 학습에 관련된 숙련도를 투명하게 평가할 수 있다는 차이점이 있다.

기존에 존재하는 IT 기반 음악 교육 시스템들이 존재하지만[4][5], 온라인 교육 환경에서는 쌍방향 커뮤니케이션에 한계가 있으며 학습자의 학업 상태를 체계적으로 관리하지 못한다는 문제점이 있다[6]. 연습 데이터를 적극적으로 이용하여 맞춤형 교육에 활용하는 사례가 드문 실정이다. 특히 코드(chord) 운지법은 피아노 반주법을 익히려고 할 때, 필수적으로 배워야 할 기법인데[7], 코드 학습과 관련하여 단순히 코드 횟수 기반으로 숙련도를 산정하거나[8], 학습콘텐츠들의 학습경로를 제안하고 있다[7]. 또한 온라인 학습의 경우 학생의 취약점을 실시간으로 파악하는 것이 중요한데[9], 이전 연구에서는 악보에 나와 있는 코드명에 기반하고 학습자의 실제 연습에 의한 입력을 처리하고 있지 않으므로 실용적으로 적용하기에는 한계가 있다.

본 연구에서는 학습자 맞춤형으로 피아노의 코드 운지법을 학습할 수 있는 도구를 제안하였다. 학습자가 연습시마다 축적된 로그들, 예를 들어 누른 건반과 시간 데이터로부터 연습한 코드, 바르게 누른 경우와 그렇지 않은 경우 등의 정보를 추출한다. 이로부터 코드 자체의 난이도나 사용자 각각의 숙련도를 평가할 수 있음을 보이고, 유사한 코드끼리의 계층적 클러스터링을 통하여 9,581개의 코드들을 효율적으로 익힐 수 있는 방안을 제시하였다.

본 논문의 이후 구성은 다음과 같다. 2장에서는 기존의 IT 기반 음악 교육 지원 시스템과 맞춤형 음악 연구 현황, 숙련도 모델링, 그리고 코드의 유사도와 관련된 연구를 기술한다. 3장에서는 본 연구에서 제안한 피아노 코드 운지법 연습 도구와 코드 운지법 패턴 분석 방법을 설명한다. 4장에서는 제안된 도구를 이용하여 맞춤형 학습에 활용할 수 있는 방안들을 보이며, 5장에서 결론을 맺는다.

Ⅱ. 관련 연구

IT 기반 음악 교육 지원 시스템과 관련하여 다수의 시스템이 개발되었다. Lin등은 초보 연주자를 위한 가상 피아노 튜터(virtual piano tutor)를 개발했다[4]. 학습자가 미디(MIDI) 디바이스를 통해 입력 데이터를 제공하면, 실시간으로 해당 미디 데이터와 일치하는 운지법(fingering)이 생성된다. 이는 GUI를 통해 화면에 표시되며 동시에 가상의 피아니스트가 해당 운지법을 시연함으로써 사용자의 학습을 돕는다. 실시간으로 최적의 운지법을 계산하기 위해 SFG(Slicing Fingering Generating) 알고리즘을 제안하였다. 이후, IK-Engine을 통해 해당 키 프레임(keyframe)을 생성하고 이를 매끄럽게 표시하기 위해 사원수 보간법(quaternion interpolation)을 사용한다. Xue등은 무선네트워크를 기반으로 인공지능을 적용한 피아노 교육 보조시스템을 제안하였다[5]. 일반적으로는 교수자와의 상호작용을 통하여 피아노 교육이 이루어지지만, 제안된 시스템에서는 상호작용 없이 학생이 교수자를 선택하여 온라인으로 클래스를 수강한 후 학생의 피드백을 통하여 데이터를 수정하고 다른 교수자를 선택할 수 있도록 한다. 이 시스템은 신호 지연이 있을 수 있는 무선 네트워크 환경에서 적합한 교수자를 선택할 수 있도록 하는 것을 목적으로 하며, 학생들의 연습 데이터를 활용하거나 프로파일을 통해 맞춤형 교육을 제공하는 것과는 차이가 있다.

맞춤형 음악 교육 연구와 관련된 이전 연구들이 존재한다[3][7][8]. [3]에서는 기존 맞춤형 교육에서 난이도가 콘텐츠 제공자에 의해 일률적으로 주어짐을 지적하고, 학습자의 수준과 환경을 고려한 상대적 맞춤형 난이도 측정기법을 제안하였다. 일반적인 지식 도메인을 대상으로 학습자와 지식 요소, 지식 요소 점수, 지식 요소 그래프를 정의하였고 이를 이용하여 학습상태 및 콘텐츠 지식을 모델링하였다. 이를 통하여 맞춤형 난이도를 산정하는 알고리즘을 제안하고 이를 음악 교육용 콘텐츠와 학습자를 대상으로 실험하여, 맞춤형 난이도가 유의미하게 계산됨을 보였다. 코드 학습자들을 대상으로 적합한 악보를 추천해 주기 위하여 연습 데이터와 악보의 코드 데이터를 분석하는 연구가 수행되었다[8]. 학습자의 숙련도와 악보 관계를 분석하여 시각화하였고 코드 기반 악보유사도, 학습자 숙련도 유사도, 악보 숙련도, 학습자별 마스터 코드, 코드 시퀀스 패턴 등에 대한 분석이 이루어졌다. [7]에서는 유전 알고리즘을 이용하여 음악 교육에서의 콘텐츠 학습경로를 최적화하는 기법을 제안하였다. 해당 연구에서는 학습 요소의 비례 벡터를 이용해서 학습 여부를 반영하는 프로필에 따라 맞춤형 학습경로를 제공해주는 데 유전 알고리즘이 효과적으로 적용될 수 있음을 실험을 통해 보였다. 이전 연구들에서는 악보의 코드명을 이용한 학습 횟수 기반으로 시뮬레이션하였는데, 이는 사용자의 실제 연습 데이터를 처리하여 이용하는 것이 아니므로 실용적으로 적용하기에는 한계가 있다.

맞춤형 음악 교육을 위해서는 연주자의 숙련도를 평가해 적절한 학습 방법을 제안하는 것이 필수적이다. 이에 따라 음악 숙련도를 측정하는 연구들이 수행되었다[10][11][12][13][14][15][16][17][18]. 기타와 바이올린과 같은 현악기의 경우 시각(timing)과 음높이(pitch), 음(tone), 표현의 품질(quality of expression), 비브라토(vibrato) 등을 통해 숙련도를 평가하고[10][11][12], 보컬의 경우 음높이 간격(pitch interval) 정확도와 비브라토로 평가한다[13]. 피아노 연주의 숙련도 측정과 관련하여, Akinaga등은 미디 피아노 각각의 노트(note)에 대해 온셋(onset), 미디 입력 속도(velocity), 온오프간격(duration)을 기록하고 3가지 데이터에 대해 스플라인 보간법(spline interpolation)을 적용해 숙련도를 측정했다[14]. 해당 연구는 한 옥타브 내의 간단한 음계 연주(scale performance)에 대해 숙련도를 측정했으며 이를 보완해 이후 체르니(Czerny) 숙련도를 측정하는 연구[15]와 평가 파라미터를 통해 효과적으로 숙련도를 추정하는 연구가 진행되었다[16]. [14]에서 제안된 방법을 통해 어쿠스틱 피아노의 숙련도를 측정한 연구가 있다[17]. 피아노의 각 노트에 대해 온셋 타임, 미디 속도, 온오프 간격을 측정하고 이를 미디 notes로 변환한 뒤, 숙련도를 계산한다. 이후 모델과 전문가가 평가한 숙련도 점수 사이의 상관계수를 통해 제안된 모델이 숙련도 측정에 효과적임을 증명했다. 이 외에도 eigen performace를 사용해 연주자의 피아노 숙련도를 분석한 연구가 있다[18]. 해당 연구에서는 k-means 클러스터링으로 구한 4개의 클러스터(excellent, good, poor, worst)에 대해 스플라인 곡선(spline curves)의 모양으로 숙련자와 비숙련자 연주의 특징을 비교했다. 숙련된 연주자의 경우 곡선이 가파른 변화 없이 선형적으로 변함을 실험을 통해 보였다. 본 연구에서는 이전 연구들과 달리, 계층 클러스터링을 통해 유사한 코드를 분류해 제공함으로써 맞춤형 음악 교육에 더 가깝도록 하였다.

9,500여개의 코드(chord)들 중에서 유사한 코드들이 존재하며, 이들을 하나의 그룹으로 간주하여 코드에 대한 학습자의 숙련도나 연습해야 할 코드를 추천하는 데 활용할 수 있다. 이를 위해서는 코드들 사이의 유사성과 차이점을 측정할 수 있어야 하는데, 다수의 관련 연구가 존재한다[19][20][21][22]. Maršík등은 커버송(cover song)을 식별하기 위하여 코드 거리를 이용하고 있으며 [19], [20]에서는 음악 오디오로부터 반복되는 패턴을 찾기 위하여 다양한 방법을 적용하였다. 반복 패턴은 유사도를 이용해서 찾는데, 코드 거리도 유사도를 찾기 위한 방법 중의 하나로 이용되었다. [21]에서는 음악 정보 검색(MIR: Music information retrieval)을 위해서 코드 거리를 이용하고 있다. 여기서의 코드 거리는 코드 시퀀스들 의 차이를 뜻하며, 한 코드 시퀀스에서 다른 코드 시퀀스가 유도되는 스텝의 수를 코드 거리로 칭한다. Huang등은 초보 작곡가에게 적절한 코드를 추천해주기 위하여 코드 사이의 거리를 코사인 유사도를 이용하였다[22]. Rohrmeier등은 Bach의 합창을 대상으로 화성(harmonry)에 대해 통계적인 분석을 수행하였는데[23], 구체적으로, 장조와 단조에서 빈번히 사용되는 코드들과 진행되는 코드 전후를 식별하였다. 그리고 식별된 코드들을 대상으로 계층적인 클러스터링을 수행했는데, 전후 확률벡터의 Euclidean 거리를 이용하였다. 해당 연구는, 코드의 계층적인 클러스터링을 수행한다는 점에서는 본 연구와 유사하지만, 화성에 대한 경험적 분석이 목적이므로 코드 자체의 유사도를 이용하는 점에서 본질적으로 차이가 있다.

코드 거리 관련 연구들 다수는 비슷한 음악이나 코드를 찾거나 비교하려는 목적이 많고, 코드 연습 데이터에 초점을 맞춘 연구는 드문 상황이다. 본 연구에서는 코드 거리를 이용하여 유사한 코드 클러스터들을 만들어 연습에 활용하고자 한다.

Ⅲ. 연습 데이터 기반 코드 운지법 학습 지원

본 장에서는 연구의 전체 개요를 설명하고, 학습자의 실제 연습 데이터의 추출 및 분석, 난이도와 숙련도 모델링에 대해 기술한다. 피아노 연습 시마다 축적되는 미디데이터로부터 분석에 필요한 정보를 얻게 된다. 이용하는 미디 데이터들은 노트와 온오프, 미디입력속도이며 2장에서 소개한 기존 연구에서 이용하는 데이터와 큰 차이는 없다.

1. 기초 데이터 구조

악보를 반주하는 과정에서 사용되는 P사[24]의 피아노 코드 운지법 패턴 11,244개를 수집하였다. P사의 운지법 패턴 데이터는 MusicXML 형식 악보에서 획득한 root-step, root-alter, base-step, base-alter, kind, step, alter, octave 토큰 기반으로 인코딩되었다. 본 연구에서는 ‘stf02E3D4(1)stf01G4C5(1)’와 ‘stf02E3stf01D4(1)G4C5(1)’의 경우처럼 인코딩 표현은 다르지만 결과적으로 동일한 운지법에 해당하는 중복 패턴을 묶어 총 9,581개의 패턴으로 정리하였다. 즉, 본 연구에서는 운지법 표현 방식과 무관하게 실제 피아노 건반의 효과적인 입력 비교를 위해 기존 P사의 표기법으로부터 건반이 눌러진 상태인 0 또는 1을 요소값으로 가지는 벡터를 생성하였다. 실험에 사용한 61건반에서 미디 신호로 출력되는 note 번호는 최소 36, 최대 96이므로 이 범위를 포함시킬 수 있도록 100차원 벡터로 인코딩하였다.

인코딩 되어 있는 기존 표기법을 100차원 벡터로 변환하는 과정에서 건반 위치 번호를 계산하기 위해서는 ‘stf02’,‘stf01’의 표현을 무시하고 남아 있는 ‘@#’ 또는 ‘@#(?)’의 패턴의 시퀀스만 분석하면 된다. @에는 ‘ABCDEFG’ 중 하나의 문자가 표기되며, ‘A’는 9, ‘B’는 11, ‘C’는 0, ‘D’는 2, ‘E’는 4, ‘F’는 5, ‘G’는 7로 변환한 값을 u1이라 하고, 옥타브에 해당하는 #에 표기된 숫자 값을 u2, ?에 반올림/반내림을 표기한 1 또는 –1의 값을 u3로 두고 ‘(?)’패턴이 생략된 경우는 u3를 0으로 처리하면 u1 × u3 + 12 X u2 + 24식을 이용해 미디 신호로 입출력되는 note 속성의 값과 일치시킬 수 있다.

그림 1은 분석을 위해 변환된 피아노 운지법 데이터와 동시 건반의 개수, 왼쪽, 오른쪽 건반의 최대 범위, 흑건과 백건의 개수, 그리고 건반의 높낮이를 무시하고 누른 건반 종류의 횟수를 나타내는 12차원의 벡터로 구성된 9,581건의 기초 데이터 일부 구조를 보여준다. 운지법 패턴이 사용하는 note의 범위가 43~96이므로 53차원 벡터로 축소하여 운지법을 나타낼 수 있지만, 효과적인 클러스터링과 유사도 평가를 위해 옥타브가 반영되지 않도록 동일한 노트로 묶은 12차원 벡터를 추가하였다. 이 벡터는 k0~k11의 축을 가지며 k0이 노트 C, k11이 노트 B에 해당하고, k1, k3, k6, k8, k10이 흑건, 나머지 축은 백건에 매핑되며 운지법에 포함된 해당 노트의 개수를 요소값으로 가진다. (u1 + u3 + 12) mod 12를 통해 기존 54차원의 요소 위치를 0~11로 매핑할 수 있다.

OTNBBE_2023_v23n1_191_f0014.png 이미지

그림 1. 운지법 데이터에 대한 다양한 특징

Fig. 1. Encoded piano fingering patterns and calculated features of fundamental data

2. 운지법 데이터 기본 통계

운지법 패턴에서 건반의 범위는 43(G1)~96(C6)이다. 각 건반은 평균적으로 795.2회 사용되었고, C4에 해당하는 72번 노트가 1,699회로 가장 많이 사용되었으며 C1에 해당하는 43번 노트가 1회 사용되어 가장 적었다.

그림 2는 패턴에 사용된 각 노트의 횟수와 평균 라인을 보여준다. 건반 61을 제외하면 60(C3)~84(C5)가 모두 평균 이상으로 사용되었다. 운지법 패턴에서 가장 왼쪽과 가장 오른쪽 건반의 평균 위치는 각각 58.7, 81.2로 평균 거리는 22.6이었다. 또한, 백건은 총 26,321회, 흑건은 16,671회 사용되어 백건이 흑건보다 1.58배 많이 사용되었다. 동시에 누른 건반의 개수는 평균 4.49개로 최소 1개, 최대 8개였다.

OTNBBE_2023_v23n1_191_f0001.png 이미지

그림 2. 피아노 운지법 패턴에서의 노트 분포

Fig. 2. Note distribution of piano fingering pattern

동시 건반의 개수, 건반과의 거리, 흑건과 백건의 비율은 반주자가 느끼는 기본적인 복잡도에 영향을 줄 것으로 생각되지만, 본 연구에서는 올바르게 피아노 건반을 누를 때까지의 시간이 연주자가 느끼는 복잡도나 숙련도, 인지 노력 등을 모두 반영하여 포함함을 가정하였다.

그림 3은 43~96번에 해당하는 note를 옥타브 구분없이 C~B에 해당하는 노트로 묶어서 분포를 살펴본 것이다. 3,557회 사용된 A를 제외한 C,D,E,F,G,B가 평균 3,582.7회보다 많이 사용되었고 C가 3,918회로 가장 많이 사용되었으며, C#은 3,252회로 가장 적게 사용되어 운지법 구성에서 백건 비율이 높음을 확인할 수 있다.

OTNBBE_2023_v23n1_191_f0002.png 이미지

그림 3. 피아노 운지법 패턴에서 옥타브 구분 없는 노트 분포

Fig. 3. Combined note distribution of piano fingering patterns

3. 운지법 연습도구 구조

그림 4는 피아노 코드 운지법 연습도구의 전반적 구조를 보여준다. 이 도구의 구성을 위해서는 앞서 3.1절에서 제시한 방법을 이용하여 악보 데이터로부터 각각의 코드에 대한 올바른 건반 번호를 추출해야 한다. 그리고, 이에 대응되는 운지법 그림 이미지가 매핑 되어야 하는데 이는 MusicXML 파서를 이용하여 구현할 수 있다. 다만, 기존 인코딩된 운지법 표기는 컴퓨터의 미디 신호와 비교하기 어렵기 때문에 PF(Piano Fingering) 인코더를 이용해서 건반 위치를 표현할 수 있는 새로운 벡터 구조가 운지법 이미지에 매핑 된다.

OTNBBE_2023_v23n1_191_f0003.png 이미지

그림 4. 피아노 운지법 연습 도구의 전체 구조

Fig. 4. Overall architecture of adaptive piano chord fingering practice tool

연습 패턴 관리자(Practice Pattern Manager)는 전체 운지법 리스트 중에서 연습에 사용할 운지법 패턴들만 선택해서 랜덤 또는 순차적 연습이 가능하도록 구성한 개별 연습 모듈(Personalized Practice Module)을 생성한다. 그러면 실제 피아노와 미디 인터페이스를 통해 연결된 자동 연습 및 평가 도구 APET (Automated Practice & Evaluation Tool)가 해당 연습 모듈의 운지법 벡터를 이용해서 연습에 필요한 악보나 그림 이미지를 화면에 로드하고, 연주자는 이를 통해 해당 코드를 피아노로 연주해 실험에 참여하게 된다. 이 과정에서 피아노 건반으로부터 전달되는 미디 신호를 분석해서 연주자의 실수나 반응 시간 등을 포함한 로그 기록(Personalized Practice Log)을 자동 생성한다. 그 후, 최종적으로 연습 로그 분석기(Practice Log Analyzer)가 해당 로그를 분석해서 연주자의 수준이나 상태에 적합한 프로파일링 정보를 생성하고, 이 과정이 반복되면서 누적된 로그를 기반으로 유사도, 히트맵, 클러스터링 등의 다양한 맞춤형 분석 및 숙련 상태 파악이 가능해진다.

운지법에 대한 숙련 상태가 파악되면 연습 패턴 관리자는 이를 기반으로 새로운 개별화 연습 모듈을 생성함으로써 적응형 피아노 운지법 학습 과정의 반복이 가능하다. 이러한 구성을 기반으로, 현재 연습하는 코드와 유사한 코드를 묶어서 함께 효과적으로 연습을 하거나, 숙련도에 맞는 악보를 검색하여 추천하거나 특정 악보를 연주하기 위해 추가 연습이 필요한 맞춤형 운지법 연습을 자동 생성할 수 있다.

그림 5는 APET가 건반을 통해 입력한 사용자의 미디 신호를 분석하여 note_on, note_off 이벤트에 대해 note 값과 velocity값 기반의 벡터를 구성하여 만든 로그를 보여준다. APET는 올바른 운지법이 완성(SUCCESS)될 때까지 시도한 모든 이벤트를 감지하고, 해당 운지법에 대한 숙련도나 난이도 예측에 필요한 반응 시간과 TRY 과정을 상세히 저장한다. 그러므로, TRY 상태의 벡터를 분석하면 자주 실수하는 건반이나 누르는 속도가 상대적으로 느린 건반에 대한 사용자별 특성을 세밀하게 파악할 수 있다. 연습에 사용된 n개의 운지법 패턴 벡터를 순서대로 p1,..., pn, 연주자가 운지법 패턴 pi에 대해 mi번 시도한 패턴 벡터를 순서대로 pi, 1, ⋯, pi, mi라고 하고, pi가 제시된 후 pi,k를 시도하는데 걸린 시간을 ti,k라고 하면, 패턴 pi에 대한 연주자의 개별 연습 로그의 집합 PPL(pi) = {(pi,k, ti,k, si,k) | 1 ≤ k ≤ mi}를 수집하기 위한 알고리즘 의사코드는 그림 6과 같다. 본 연구의 실험에서는 TIME_LIMIT을 30초로 설정하였다.

OTNBBE_2023_v23n1_191_f0004.png 이미지

그림 5. 개별 연습 로그

Fig. 5. Personalized Practice Log

OTNBBE_2023_v23n1_191_f0005.png 이미지

그림 6. 맞춤형 연습 로그를 구축하는 의사코드

Fig. 6. Pseudocode for constructing personalized practice log

discrete(x)가 벡터 x의 요소값 중 양수값을 1로 변환하는 함수라면, discrete(pi) - discrete(pi,k)의 결과 벡터 요소값이 –1인 위치가 pi,k의 시도 중 실수한 건반 번호에 해당한다. 이에 대한 정보를 누적하여 자주 실수하는 건반 위치를 고려한 사용자별 연습 통계를 얻을 수 있다.

Ⅳ. 활용 방안

본 장에서는 3장에서 설명한 연습 데이터를 이용하여 맞춤형 난이도를 평가하거나 지속적으로 학습 숙련도를 추적하고 기록하여 분석하고, 운지법 클러스터링을 통해 효과적인 학습 계획을 생성함으로써 맞춤형 학습에 활용할 수 있는 접근법에 대해 설명한다.

1. 맞춤형 난이도 평가

그림 7은 사용자 U1, U2에게 운지법을 랜덤하게 제시하여 이를 정확히 연주하는데 걸리는 시간을 각각 2회의 전체 연습 과정에서 측정하고 이를 표준편차 기준으로 정렬한 것이다. 1차에 비해 2차의 시간이 더 늘어난 운지법도 있었으나, 2차의 전반적인 시간 평균과 표준편차는 1차에 비해 줄었다. U1의 경우 1차는 평균 6.59초, 표준편차 2.96초였으며, 2차는 평균 5.21초이고 표준편차 2.21초였고 U2의 경우 1차는 6.36초, 표준편차 3.84초였고 2차는 평균 5.19초이고 표준편차 2.88초였다. 이는 학습자가 운지법에 익숙해지면서 인지 및 반응 시간이 짧아지고 반주 과정의 편차가 줄어들었기 때문으로 해석된다. 하지만 학습이 계속 반복되어 전반적 숙련도가 어느 수준에 도달하게 될 경우 시간과 표준편차는 특정 범위 내에서 수렴할 것으로 예상된다.

OTNBBE_2023_v23n1_191_f0006.png 이미지

그림 7. 랜덤 운지법 패턴 연주 평균 소요 시간

Fig. 7. Avg. time of playing random fingering pattern sequence correctly

개별 숙련도 등의 차이로 인해 표준편차가 크고, 반응 시간도 불안정하고 높게 나타나는 일부 패턴들은 맞춤형 교육이 필요한 운지법 패턴임을 암시한다. 1, 2차의 편차가 낮아 비슷한 시간 패턴을 보여 그래프 왼쪽에 위치한 패턴을 저수준, 시간 편차가 크게 나타나고 비교적 시간이 오래 걸려 그래프 오른쪽에 위치한 패턴을 고수준 운지법이라 하면, 저수준은 편차가 낮기 때문에 측정 시간이 보편적 난이도를 잘 반영한다고 볼 수 있다. 실제로 저수준에서 시간이 상대적으로 높고 낮은 운지법을 각각 6개씩 분석해보면, 평균 건반 개수는 6개와 3개로 2배 가량 차이가 나고, 백건의 비율은 0.58, 0.61이고 건반의 최대 거리 평균도 20.1과 15.8로 예상 난이도가 반영되었음을 확인했다. U1은 연주를 성공했으나 U2가 2회 모두 실패해서 가장 오른쪽에 위치한 고수준 운지법은 전체 건반 평균 거리가 21.8인데 비해 해당 건반 평균 거리는 31이었고, 동시 건반의 개수도 7개나 되어서 손이 작은 사람은 반주가 불가능한 운지법이었다. 이는 학습자 차이가 크게 반영되어 나타난 결과로 개별 맞춤형 교육이 필요한 패턴이다.

고수준 패턴은 표준 오차가 크고 성공까지의 시간이 비교적 오래 걸리는 운지법에 해당하는데 각 사용자별 로그를 표준화하여 비교해보면 운지법의 보편적 난이도를 예측하는데 활용할 수 있다.

특히, 표준화 시간의 표준편차가 낮다면 해당 운지법 시간의 신뢰도가 어느 정도 높다고 판단되므로, 사용자 특성과 무관한 운지법의 보편적 난이도 예측에 효과적으로 사용할 수 있다. 하지만, 높은 표준편차를 가지는 영역은 사용자의 특성 차이가 나타나는 부분으로 개별 맞춤형 분석이 필요함을 의미한다.

2. 숙련도 추적 및 분석

그림 8은 동시 건반의 개수에 따라 평균 시간을 측정한 것이다. 1차 연습에서는 건반의 개수와 무관하게 높은 상관관계를 보이지 않으나, 2차 연습의 결과는 건반의 개수와 시간이 어느 정도 상관관계를 보여주고 있음을 확인할 수 있다. 이는 눌러야 할 건반을 인지한 후 누르기까지의 과정이 체계가 잡히고 반주에 익숙해지면서 패턴에 따른 편차가 줄어든 결과로 해석된다. 이러한 학습 과정이 반복되면 전반적 인지와 건반 반응 시간이 빨라질 것으로 예상된다. 하지만, 일정 수준 이상의 숙련도에 도달하면 건반 단위로 인지하지 않고 상위 수준의 패턴으로 인지하거나 예측하여 연주하게 되면서 건반의 개수나 난이도와 무관하게 일정한 반응 속도로 수렴할 것으로 예상된다. 숙련도 모델에서 사용하는 수렴 시간 기준값은 통계적으로 측정해야 하는 값으로 지속적 축적을 통해 얻은 실용적인 값이어야 하므로 본 연구 범위에는 포함하지 않았다.

OTNBBE_2023_v23n1_191_f0007.png 이미지

그림 8. 건반 개수에 따른 운지법 패턴 연주 평균 소요 시간

Fig. 8. Avg. time of playing piano fingering patterns group by key count

그림 9의 (a)~(e)는 9개 운지법 패턴을 포함한 동일한 연습 모듈에 대해 총 25회 반복 연습을 하는 과정에서 변화하는 숙련도 곡선을 5단계 단위로 보여준다. 초기에 가장 많이 걸리는 시간은 9.58초였지만, 5회 연습 후 3초까지 떨어지고 연습이 반복되면서 대부분이 1초 이하로 줄어들었으나 15단계에서도 상대적으로 많은 시간이 걸리는 2개의 운지법이 발견된다. 하지만, 20회 이후 반복 시점에는 대부분이 운지법의 난이도와 무관하게 비슷한 연주 시간을 기록했다. 이는 초기에는 건반의 개수만큼 위치를 인지하고 손가락을 이동하는 등 코드의 복잡도나 난이도에 의해 반응 시간이 결정되지만 숙련도가 어느 수준 이상으로 확보된 이후에는 패턴을 전체적으로 기억하고 예측해서 연주하기 때문에 인지에 소요되는 시간이 줄어들었기 때문으로 해석된다. 이 실험 결과는 학습이 진행되면서 전반적으로 숙련도가 오르고 난이도와 무관하게 반응 시간의 편차가 줄어들 것이라는 예상이 옳음을 보여준다.

OTNBBE_2023_v23n1_191_f0008.png 이미지

그림 9. 단계별 숙련도 곡선

Fig. 9. maturity curve of each phases

그림 10을 보면 학습이 반복되면서 성공에 걸리는 연주 시간이 줄어드는 추세를 보이다가 20회 이후에는 더 감소하지 않고 일정 수준에 수렴하는 추세를 보인다. 이는 해당 운지법에 대한 전반적인 숙련도가 어느 정도 안정적인 단계로 진입했음을 보여주는 것으로 표준편차 그래프에서도 유사하게 나타남을 확인하였다.

OTNBBE_2023_v23n1_191_f0009.png 이미지

그림 10. 성공에 소요되는 단계별 시간의 평균과 표준편차

Fig. 10. avg. and stdev. of SUCCESS time for each phase

3. 맞춤형 학습을 위한 운지법 클러스터링

그림 11은 전체 운지법 패턴을 대상으로 열과 행을 기준으로 cosine 유사도를 이용해 분석한 계층형 클러스터링 결과를 보여준다. 12차원의 벡터를 기준으로 했기 때문에 코드 반주 과정에서 높은 빈도로 어울리는 노트 간의 관계를 쉽게 파악할 수 있다. 가령 k3(D#)와 k10(A#), k1(C#)과 k8(G#)끼리 조화를 이루는 음계라고 예측할 수 있다. 뿐만 아니라 패턴 벡터의 유사도를 기반으로 클러스터링한 결과를 통해 특정 운지법 코드와 유사한 패턴을 쉽게 찾아낼 수 있다. 이는, 운지법 학습 과정에서 함께 학습하는데 효과적인 운지법 패턴을 추천하거나 상대적 난이도가 유사한 패턴을 예측할 수 있음을 의미한다. 이를 이용하면 추가 모듈이나 악보를 학습 목표에 맞추어 추천하는 것이 가능해진다.

OTNBBE_2023_v23n1_191_f0010.png 이미지

그림 11. 9,581개의 운지법 패턴에 대한 계층적 클러스터링

Fig. 11. Hierarchical clustering of 9,581 fingering patterns

그림 12는 그림 11에서 선택한 하나의 클러스터에 속한 구체적인 운지법의 클러스터로, 여기에 속한 운지법은 항상 k2(D)와 k4(E)를 포함하고 k2(D)의 비중이 높으며, 대부분 k9(A)를 포함한다. 이러한 공통점을 가진 운지법 클러스터를 학습자의 숙련도나 상대적 난이도에 기반하여 쉽게 찾을 수 있으므로, 학습자는 기본 운지법을 반복하며 일부의 변화로 만들어지는 연계된 연습을 묶어 효과적으로 운지법을 학습할 수 있다.

OTNBBE_2023_v23n1_191_f0011.png 이미지

그림 12. 한 클러스터에 속한 구체적 운지법

Fig. 12. Detail fingering patterns of a cluster

그림 13은 4회 반복 학습에 걸친 클러스터된 연습 모듈과 랜덤 연습 모듈의 시간 및 숙련도 곡선 변화를 보여 준다. 각각의 모듈에 속한 운지법 패턴의 개수는 31개씩이며 서로에게 미치는 학습 효과 영향을 최소화하기 위해 총 8회의 연습 과정에서 선택하는 모듈 종류의 순서를 무작위로 배치하였다. 이 실험에서는 운지법 보편적 난이도에 관련된 동시 건반의 개수가 클러스터링은 평균 5.2개로 랜덤 평균 4.3개보다 오히려 많았다. 하지만, 첫 연습의 경우 1개당 평균 반응 시간은 랜덤이 7.0초, 클러스터링이 3.5초로 거의 2배 정도로 클러스터링이 효과적이었다. 4회의 학습이 이루어진 이후에도 차이는 줄었으나 여전히 클러스터링이 2.6초, 랜덤이 4.6초로 클러스터링이 1.8배 가까이 빨랐다. 표준편차는 4차 연습에서 랜덤과 클러스터링의 차이가 크지 않게 둘 다 유사한 수준으로 줄어들었으나, 전반적으로 클러스터링 모듈이 랜덤 모듈보다 표준편차가 낮았다.

OTNBBE_2023_v23n1_191_f0012.png 이미지

그림 13. 클러스터 연습 모듈과 랜덤 연습 모듈 비교

Fig. 13. Clustered practice module vs. random practice module

그림 14는 랜덤과 클러스터링 양쪽에 모두 사용되었던 운지법 패턴의 연주 시간과 평균 및 표준편차를 보여준다. 동일한 패턴을 연습했음에도 불구하고 클러스터 모듈이 랜덤보다 효과적이었음을 확인하였다.

OTNBBE_2023_v23n1_191_f0013.png 이미지

그림 14. 클러스터와 랜덤 연습 모듈 양쪽에 사용된 운지법 패턴의 연주 시간

Fig. 14. Time of a pattern used both in Clustered and Random practice module

Ⅴ. 결론

본 연구에서는 학습자의 연습 로그들을 분석하여 맞춤형 분석 및 숙련 파악이 가능한 피아노 운지법 학습 도구를 제안하였다. 학습자의 연습 로그들은 건반으로부터 미디 신호를 전달받아 학습자의 실수나 반응 시간 등을 포함한 정보를 얻게 되고 이를 분석하여 적응형으로 피아노 운지법 학습이 가능함을 보였다. 또한 코드의 유사도를 통해 유사한 코드를 계층적으로 클러스터링하여 보다 효율적인 코드 학습의 가능성을 제시하였다. 제안된 기법은 테스트와 같은 부가적인 노력 없이 학습자의 누적된 연습 데이터만을 이용하므로, 학습자의 부담이 덜어질 수 있다.

본 연구에서 학습자의 연습 로그를 기록하고, 분석하여 맞춤형 교육에 활용할 수 있는 구조와 접근법에 대해 제안하고, 관련 도구 구현과 실제 실험을 통해 이를 검증하였으나 연구 시간의 제약으로 인해 대규모의 장기 학습 과정에 대한 실험을 진행하지 못하였다. 이로 인하여, 지속적인 맞춤형 교육의 효과를 확인해야 하는 숙제가 남아 있다. 또한, 개별 숙련도의 유사도를 활용하여 악보 추천 등 응용 학습에 활용할 가능성을 보이고, 이를 실현할 수 있는 아키텍처는 제시하였으나, 전체 학습 주기를 지원하는 플랫폼 수준의 구현을 통해 다양한 응용 사례의 효과성을 입증하지 못한 아쉬움이 있다. 이에, 향후 연구로 악보 추천, 난이도 및 연습 시간에 따른 유연한 맞춤형 교육 자동화, 연습 보고서 생성, 진도 및 이력 관리 등 다양한 개별 응용 도구를 구현하고 확장함으로써 유기적으로 맞물려 동작하는 맞춤형 교육 통합 서비스 개발과 이에 대한 효과성 연구가 필요할 것으로 보인다.

References

  1. Y. Koo, "Trends and Prospects of the Edutech Industry", ASTI MARKET INSIGHT, 2022-087,ISBN 978-89-294-1306-4 (93500). https://repository.kisti.re.kr/bitstream/10580/18021/1/ASTI%20MARKET%20INSIGHT%20087%280712%29.pdf
  2. I. Park, "An Instructional Design for the Converged English-Science Teaching Method using PBL Model in Elementary School", Journal of the Korea Academia-Industrial cooperation Society, Vol. 21 No. 7, pp. 66-72, Jul. 2020. DOI: https://doi.org/10.5762/KAIS.2020.21.7.66
  3. W. Jung, "A Design for the Personalized Difficulty Level Metric based on Learning State", Journal of the Korea Convergence Society, Vol. 11, No. 3, pp. 67-75, Mar 2020. DOI: https://doi.org/10.15207/JKCS.2020.11.3.067
  4. C. Lin and D. Liu, "An Intelligent Virtual Piano Tutor", Proceedings of the 2006 ACM international conference on Virtual reality continuum and its applications, pp. 353-356, Jun 2006. DOI: https://doi.org/10.1145/1128923.1128986
  5. X. Xue and Z. Jia, "The Piano-Assisted Teaching System Based on an Artificial Intelligent Wireless Network", Wireless Communications and Mobile Computing, pp. 1-9, Jan 2022. DOI: https://doi.org/10.1155/2022/5287172
  6. D. Lee, S. Kim and N. Park, "The Blockchain-based Online Learning Platform for the Untact Education Environment in the Post-COVID-19 Era", Journal of KIIT, Vol. 18, No. 11, pp. 109-121, Nov. 2020. DOI: https://doi.org/10.14801/jkiit.2020.18.11.109
  7. W. Jung, "A Genetic Algorithm Based Learning Path Optimization for Music Education", Journal of the Korea Convergence Society, Vol. 10, No. 2, pp. 13-20, Feb 2019. DOI: https://doi.org/10.15207/JKCS.2019.10.2.013
  8. W. Jung and E. Lee, "Analysis technique to support personalized music education based on learner and chord data", Journal of the Korea Convergence Society, Vol. 12, No. 2, pp. 51-60, Feb 2021. DOI: https://doi.org/10.15207/JKCS.2021.12.2.051
  9. Y. Hong, "Smart Education System", Journal of the Institute of Internet, Broadcasting and Communication, Vol.13, No.2. pp.255-260, Apr.2013. DOI: https://doi.org/10.7236/JIIBC.2013.13.2.255
  10. Y. Nishikawa and T. Matsumura, "Proficiency Estimation Method of Vibrato in Electric Guitar", Journal of Information and Communication Engineering, Vol. 7, No. 2, pp. 462-466, Dec 2021.
  11. S. Giraldo, R. Ramirez, G. Waddell and A. Williamon, "A Real-time Feedback Learning Tool to Visualize Sound Quality in Violin Performances", 10th International Workshop on Machine Learning and Music, pp. 19-24, Oct 2017. DOI: https://doi.org/10.5281/zenodo.2580053
  12. M. Okemoto and M. Miura, "Relation between subjective evaluation for proficiency, expression or technique and acoustic feature on violin performance", International Symposium on Music Acoustics, pp. 13-17, Sep 2019.
  13. T. Nakano, M. Goto and Y. Hiraga, "An Automatic Singing Skill Evaluation Method for Unknown Melodies Using Pitch Interval Accuracy and Vibrato Features", International Conference on Spoken Language Processing, Sep 2006. DOI: https://doi.org/10.21437/interspeech.2006-474
  14. S. Akinaga, M. Miura, N. Emura and M. Yanagida, "Toward realizing automatic evaluation of playing scales on the piano", 9th International Conference on Music Perception and Cognition, pp. 1843-1847, Aug 2006.
  15. A. Nonogaki, S. Shimazu, N. Emura, M. Miura, S. Akinaga and M. Yanagida, "Use of spline curve to evaluate performance proficiency of Czerny piano piece", International Symposium on Performance Science, pp. 69-74, 2011.
  16. A. Nonogaki, N. Emura, M. Miura, S. Akinaga and M. Yanagida, "Evaluation parameters for proficiency estimation of piano based on tendency of moderate performance", International Conference on Music Perception and Cognition, pp. 728-737, 2012.
  17. S. Shimazu and M. Miura, "Method for estimating proficiency in playing acoustic piano", International Congress on Acoustics, 2010.
  18. H. Kato and M. Miura, "Use of eigenperformances to analyze proficiency of piano performance", The Acoustic Society of Japan, Vol. 36, No. 4, pp. 336-339, 2015. DOI: https://doi.org/10.1250/ast.36.336
  19. L. Marsik, M. Rusek, K. Slaninova, J. Martinovie, and J. Pokorny. "Evaluation of Chord and Chroma Features and Dynamic Time Warping Scores on Cover Song Identification Task", Proc. of Int'l Conf. on Computer Information Systems and Industrial Management, pp. 205-217, May 2017. DOI: https://doi.org/10.1007/978-3-319-59105-6_18
  20. R. B. Dannengerg and N. Hu, "Pattern Discovery Techniques for Music Audio", Proc. of 3rd Int'l Conf. on Music Information Retrieval, Vol. 32, No. 2, pp. 63-70, Jun 2003. DOI: https://doi.org/10.1076/jnmr.32.2.153.16738
  21. L. Marsik, "Student Research Abstract: Using Chord Distance Descriptors to Enhance Music Information Retrieval", Prof. of the Symposium on Applied Computing, pp. 963-964, Apr 2017. DOI: https://doi.org/10.1145/3019612.3019939
  22. C. A. Huang, D. Duvenaud, and K. Z. Gajos, "ChordRipple: Recommending Chords to Help Novice Composers Go Beyond the Ordinary", Proc. of the 21st Int'l Conf. on Intelligent User Interfaces, pp. 241-250, Mar 2016. DOI: https://doi.org/10.1145/2856767.2856792
  23. M. Rohrmeier and I. Cross. "Statistical Properties of Tonal Harmony in Bach's Chorales", Proc. of 10th Int'l Conf. on Music Percepion and Cognition, Jan 2008.
  24. PHILDAVEMUSIC: https://phildavemusic.com/