1. 서론
최근 수면장애를 겪는 현대인이 많다. 한국표준 질병분류체계에서 수면장애를 질병으로 분류할 정도로 수면은 단순한 휴식의 개념을 넘어 인간의 삶과 건강에 밀접한 관계가 있다. 연구에 따르면 깊은 수면으로 들어가거나 심신이 안정될수록 뇌파의 파동이 느려지고, 각성될수록 뇌파의 파동이 빨라진다[1]. 하지만 수면장애가 있는 경우에는 이러한 양상이 달라진다. 예를 들어, 안정을 취하거나 수면을 취하는 데에 있어 여전히 각성상태인 것처럼 뇌파가 빨라진다면 수면을 취하기 힘들고, 설령 수면을 취한다고 해도 깊은 수면을 취하지 못해 무기력증이나 만성 피로와 같은 일상생활에서의 피해가 발생된다[2].
수면장애를 겪는 사람이 많아질수록 인한 업무능률저하나 우울증, 치매로 인한 사회적 문제가 발생될 수 있기 때문에 헬스케어 산업에서 수면상태에서의 분석과 수면케어에 관한 연구가 더욱 더 필요하다[1]. 연구에 따르면 수면과 뇌파는 밀접한 관련이 있다[3]. 뇌파는 사람의 감정과 의식의 상태에 따라 달라질 뿐만 아니라 수면장애의 정도, 수면의 상태에 따라 차이가 난다. 그래서 뇌파 데이터의 해석과 파악은 수면케어에 있어서 중요한 지표가 된다[3]. 일반적으로 수면을 유도할때는 음향, 온열, 빛을 이용할 수 있지만 본 논문에서는 음향을 이용한 방법으로 한정하고자 한다. ASMR(Autonomous Sensory Meridian Response), Pink Noise, 특정 클래식과 같은 음향은 뇌파의 진정과 수면유도에 효과가 있다[4-11]. 하지만 이러한 연구는 수면을 유도함에 있어 몇 가지 한계가 있다.
첫째로는 몇몇 피실험자에 한정되어있어 그 이외의 다른 사람들에게는 음향의 수면유도 효과를 확인할 수 없다는 한계가 있다. 예를 들어 User1이라는 사람에게 A라는 수면유도음향을 들려주면 안정적으로 뇌파가 변하더라도 User2에게는 동일한 뇌파 변화가 있다고 단정지을 수 없다. 즉 개인마다 뇌파적 차이가 있어 특정 사용자에게는 기존의 수면유도음향이 효과가 없을 수 있다.
둘째로는 몇몇개의 한정된 음향에 대해선 효과가 검증되었지만, 수많은 다른 음향이나 음악에서는 수면유도효과가 확인된 바가 없어서 한정된 음향만 사용자에게 제공할 수 있다. 특히 많은 예술가나 작곡가들의 창작활동으로 만들어지는 신규음향과 신규 음악은 장르를 가리지 않고 생겨난다. 그뿐만 아니라 그 모든 신규음향이나 음악에 대해서도 수면유도의 효과성을 알 수 없다. 그러므로 사용자의 개인적 뇌파특성을 반영한 창작된 음향과 음악들에게 수면유도 효과가 있는지 확인할 분류체계가 필요하다. 또한 그 과정에서 개인간의 편차를 줄이기 위해 사용자의 취향이나 심리적 요인까지도 반영할 필요가 있다. 따라서 다음의 세 번째 요소까지도 고려하여야 한다.
세 번째로는 분류체계에서 평가한 음향이 수면에 효과적이라고 할지라도 사용자에게 제공되는 자극이나 강도가 개인에 맞지 않으면 오히려 사용자에게 통증이나 불쾌감을 줄 뿐만 아니라 수면에도 방해가 된다[12]. 그래서 기존의 고정된 수면유도음향의 구성은 개인에게 맞지 않을 경우, 오히려 수면을 방해하는 요소가 될 수 있다. 따라서 개인의 뇌파적 특성을 반영한 음향의 카테고리 분류는 수면유도에 있어 사용자가 느끼는 부작용을 줄여주고 수면유도에 더 좋은 효과를 제공할 수 있다.
이와같은 맥락에서 본 논문에서는 수면유도음향에 대한 분류기법를 제안하고, 기법의 효과성을 확인하기 위한 지표로 뇌파 데이터를 측정하여 이용한다. 분류체계의 방법으로는 최근 매스미디어 산업과 소셜미디어 여러 산업에서 추천 알고리즘으로 쓰이는 협업필터링(Collaborative Filtering, CF)[13,14]을 도입하되 MinHash[15] 기법을 개량하여 추천 시스템에 적용하고자 한다. 기존 추천 알고리즘은 대용량 클러스터링 방식을 사용하기 때문에 추천에 있어서 많은 비용이 들고 군집화된 사용자마다 각기 다른 특징 값이 늘어남에 따라 연산의 양이 기하급수적으로 늘어남으로 확장성문제가 발생될 수 있다[16,17]. 이러한 기존의 한계를 MinHash 값으로 해결하면 계산시에 충돌을 피하고 해시 값이 겹치는 정도를 비교하여 유사도 계산의 복잡성을 줄일 수 있다. 그리고 실시간 개인의 뇌파 특성에 따른 음향을 제어하기 때문에 효과에 따른 개인차를 반영할 수 있어 수면유도음향 제공의 신뢰성이 높일 수 있고 새로운 음향까지도 자동으로 분류시킬 수 있다.
본 논문의 2장의 관련연구에서는 뇌파기기를 통해 측정된 뇌파 데이터에서 사용자의 상태를 해석하는 방법을 고찰하고 수면유도음향의 효과 및 특성에 대해 분석한다. 또한 기존 추천 알고리즘 연구사례를 살펴본다. 3장에서는 뇌파를 이용한 수면유도음향 분류기법을 제안한다. 제안한 기법은 사용자 개인마다의 뇌파적 특성을 반영하여 수면유도에 효과가 있는 음향을 분류 및 추천하여 수면유도음향을 재생한다. 4장에서는 제안된 수면유도음향 분류알고리즘의 성능과 효과를 실험을 통해 확인하고자 하며 5장에서 결론을 맺는다.
2. 관련연구
2.1 뇌파 데이터
뇌파데이터는 수면상태를 분석하기 위한 좋은 지표이다. Fig. 1은 뇌파 측정 기기로부터 측정된 뇌파 데이터이다. 사용자가 각성(Active)상태일수록 뇌파의 주파수가 높고 깊은 수면(Deep Sleep)에 접어들수록 뇌파의 주파수가 낮다. 하지만 이러한 원시데이터의 형태로 전반적인 뇌파의 활성화상태를 파악하기 어렵고 측정과정에서 발생되는 잡파와 오류로 인해 정확한 상태파악이 어려워진다. 그래서 뇌파의 해석과 이용에 있어 전처리 과정이 필요하다.
Fig. 1. Raw EEG data for user state.
뇌파를 해석하는 방법 중 하나는 우세파형을 추출하는 것이다. 우세파형이란 뇌에서 발생하는 뇌파를 볼 때 Fig. 1과 같은 5개의 파형중에서 상대적으로 활성화된 파형을 의미한다. 우세파형을 추출하는 방법에는 뇌파측정기기로부터 추출된 뇌파데이터를 가지고 PSD(Power Spectrum Density)과정을 거친다. 이 과정은 뇌파에서 주파수 성분을 분해하고, 주파수의 각 영역대별 진폭의 세기를 분리해내는 것이다. PSD값의 평균을 구하여 주파수별 상대적 파워 스펙트럼값을 도출함으로써 뇌파의 주파수별 상대적인 우세파형의 비교가 가능하고 상대적으로 어떤 뇌파가 보다 많이 활성화되었는지를 파악할 수 있다[5]. Table 1에서 제시된 바와 같이, 뇌파는 주파수 대역에 따라 Delta(∆), Theta(θ), Alpha(α), Beta(β)로 구분한다[18,19].
Table 1. Characteristics of EEG frequency bands
Gamma파에서 Delta파로 갈수록 뇌파의 주파수가 느려짐을 알 수 있다. 깊은 수면일수록 Theta파와 Delta파와 같이 느린 주파수 비율이 커진다. 느린 주파수 대역인 Delta파를 2개구간으로 나누면 수면의 깊이를 정밀하게 평가할 수 있다[18-21]. 특히 수면 유도음향은 각성상태의 빠른 뇌파를 이완상태의 느린 뇌파로 유도하는데 효과가 있다[4-11].
2.2 수면유도음향
수면유도음향이란 실험으로 심신이 이완되어 수면유도에 효과가 있는 음향을 말한다. 음향효과를 검증하려면 음향을 들려주면서 뇌파가 변화되는 형태를 관찰한다. 만약 뇌파가 안정된다면 수면유도와 이완에 효과가 있다고 할 수 있다[12]. 수면유도음향으로 검증된 사례로는 ASMR, Pink Noise, 특정 클래식음악 등이 있다[4-11]
실험에 따르면 음향마다 사용자의 뇌파에 미치는 영항이 다르다[4-11]. 그러므로 이러한 음향을 잘 활용하려면 사용자의 상태파악이 우선이 되어야 하고 그에 따른 적절한 음향을 제공해야 한다. 만약 사용자가 흥분상태이거나 각성상태라면 감마파와 베타파가 뇌파의 주요 우세파형으로 측정될 것이다. 이러한 경우 감마파와 베타파를 감소시켜 줄 수 있는 음향이 제공된다면 사용자가 진정되는 효과를 볼 수 있다. 그렇지만 세타파와 델타파가 증가되는 음향을 들려준다면 세타파 이하의 주파수인 서파가 증가한다 할지라도 베타파와 감마파의 감소없이는 수면유도효과를 기대하기 어렵다. 이것은 각성상태의 주된 파형이 여전히 우세파형이 되므로 사용자가 수면으로 유도되지 않기 때문이다.
또한 수면유도음향의 검증과정은 몇몇 피실험자에게 한정되었을 뿐만 아니라 실험에 사용된 음향도 많지 않다. 그래서 기존의 수면유도음향들은 사용자에 대한 뇌파특성의 차이를 반영하지 못할수 있으므로 효과를 단정할 수 없으며, 새로운 만들어진 음향에 대해서도 수면유도의 효과성을 판단하기 어려워, 늘 한정된 음향만을 사용한다는 한계가 있다. 이러한 점을 해결하려면 시시각각 변하는 뇌파를 실시간으로 측정하여 사용자의 상태를 파악하고 이를 통해 개인마다 음향의 효과성을 판단해야 한다. 즉 뇌파특성과 심리특성을 반영한 새로운 수면유도음향도 분류할 수 있는 분류체계가 필요하며, 그 방법으로 협업필터링과 MinHash 기법이 적용된 클러스터링이 있다.
2.3 클러스터링(카테고리의 분류방법)
협업필터링은 사용자에게 컨텐츠를 추천하는데 사용되는 기법으로써, 사물 또는 사용자의 특징을 추출한 후, 그 유사도나 패턴을 분석하여 사용자가 선호할만한 콘텐츠 또는 제품을 추천하는 데 이용된다. 이 방식에는 사용자 간의 또는 아이템 간의 상호작용 관계를 유사도로 도출하여 특정 콘텐츠를 추천하는데 사용자 기준과 아이템 기준의 두 가지 분류방식이 있다[14-16].
Fig. 2의 (a)는 사용자 간의 유사성(Similar)을 기준으로 클러스터링한 User based 방식이다. Usern의 예를 들어보자. Usern이 Item1을 선택한 상태에서 Item1을 선택한 다른 사용자를 찾는다. User1은 Item1과 Item3을 선택하였다. 그렇게 되면 Usern과 User1이 Item1을 선택함에 유사성이 있다고 간주하고 Usern에게 Item3을 추천(Recommend)하는 방식이다. 또 다른 방식으로써. Fig. 2의 (b)와 같이 아이템 중심의 유사성(Similar)을 기준으로 클러스터링한 Item based 방식이 있다[13,22]. 예를 들어 Item1과 Item3의 특징의 교점이 많다면 유사성이 있는 관계라고 볼 수 있다. 유사성 관계를 따지는 기준으로 자카드 유사도가 사용된다.
Fig. 2. Memory-based collaborative filtering.
식 (1)와 같이 자카드 유사도는 두 집합의 교집합을 두 합집합으로 나누는 방식으로 구하며 0과 1 사이의 자카드 계수 값을 가진다[14]. 두 집합이 동일할 수록 1에 가깝고 이질적일수록 0에 가깝다. 하지만 이러한 전통적인 협업필터링 방식은 확장성 한계가 있다. 이는 유사도를 계산할 때 아이템의 개수가 늘어날수록 연산이 기하급수적으로 늘어난다[14,15]. 그래서 근래에는 협업필터링에 MinHash 기법과 LSH(Locality Sensitive Hashing)기법을 활용한 방법이 사용된다[15-17]
\(J(A, B)=\frac{|A \cap B|}{|A \cup B|}\) (1)
MinHash 란 기존의 협업필터링에서 해시 값의 최소값들을 이용해 행렬의 차원을 축소한후 클러스터하는 기법이다. Fig. 3의 예에서 보면, 해시 값들 [7, 1, 3, 6, 8, 2, 5, 9, 4]을 갖는 임의순열 S에서 첫 번째 MinHash값은 가장 최소 값인 1이 된다. 그 다음 최소 값인 2가 두 번째 MinHash값이 된다. 정리하면, 전체 아이템 세트의 임의순열 S에 대해 i번째 사용자(ui)의 해시 값 h(ui)으로 사용자의 아이템 세트에 속해있는 아이템 중 S에서 최소 값을 말한다[15,16]. 이해시 값으로 사용자(또는 아이템)의 특징 값을 랜덤으로 추출할 때 인덱스로 사용한다.
Fig. 3. Process for collecting MinHash value from per- mutation, S
이와 같은 방법으로 추출된 행렬을 이용해 사용자(또는 아이템)간의 유사성을 따지게 된다[15,22]. 이 방법은 효율적으로 확장성 문제를 해결할 수 있지만, 유사도 계산을 위해서는 사용자 id를 key로 해서 유사도 계산을 위한 데이터를 추가로 가져와서 비교해야한다. 이 경우 사용자마다 가진 feature의 개수가 다르기 때문에 feature의 수가 많은 사용자와의 유사도 계산을 실행할 경우 병목 현상을 야기할 수 있어 고성능의 클러스터 서버가 필요하다[15-17]. 특히 데이터가 증가하면 디스크 공간이 급격하게 필요하기 때문에 IoT기기나 엣지디바이스와 같은 성능과 배터리에 민감한 소형 컴퓨터에 적용하는 것이 적합하지 않아 이러한 한계를 극복하는 개선된 분류기법이 필요하며 다음 장에서 제안하고자 한다.
3. 수면유도음향의 분류기법
3.1 뇌파에 기반한 수면유도음향의 분류체계
사람은 잠을 잘 때 각성단계, 1단계, 2단계, 3단계, REM단계로 순차적 변화를 통해서 깊은 잠을 자게 되며 각 단계에 따라 뇌파는 변화한다. 이런 특징으로 사용자의 상태를 관찰하면서 수면을 유도하는데 어떤 뇌파로 변화시킬지 타겟을 설정할 수 있다. Table 2에서는 타겟 설정을 위해 수면단계를 기준으로 5개의 카테고리로 정의한다. 사람은 각성상태에서부터 수면을 취하게 되는데 그 상태에서 수면을 유도하려면 집중 카테고리(Concentration)단계로 전환되어야 한다. 그렇게 하려면 감마파와 베타파가 감소되어야 하며, 알파파를 유도하여야 한다. 또한 다음단계인 이완(Relax) 카테고리로 전환하려면 알파파와 세타파를 유도해야 한다. 이와 같은 방식으로 깊은 수면으로 진행하려면 델타파와 세타파에서 주파수가 매우 낮은 서파로 유도해야 한다. 이것은 뇌파의 상태를 설정된 타겟(유도한 방향)에 맞도록 전환시키려면, 해당 카테고리에 속한 음향을 들려주어야 한다는 것이다.
따라서 집중카테고리 음향에서 Relax 카테고리로 전환시키고, 전환이 되면, Shallow sleep 카테고리로 계속전환을 시켜, 결국 Deep sleep 카테고리 단계에 이르도록 하는 유도과정에 필요하며, 다음 절에서 유도과정을 위한 분류기법에 대해 제안한다.
3.2 수면유도음향의 분류과정과 분류기법
Fig. 4에서 제시한 수면유도음향의 분류과정에서는 사용자에게 음향(Sound)을 들려주면서 발생하게 되는 뇌파데이터(EEG data)를 측정하고 그것을 이용해서 분류과정을 시작한다. 또한 사용자의 음향 선호도(Preference)값을 반영하여 개인의 차를 보정하며 수면효과에 따른 음향 카테고리(Category1..n)로 분류한다.
Fig. 4. Classification process model of sounds for sounds for sleep induction.
각각의 카테고리마다 음향효과의 타겟 값에 맞는 클러스터링된 음향들이 있다. Table 2를 기준으로 타겟 값을 Table 3와 같이 정의하되, 열값은 사용자의 음향 카테고리의 이름이고, 행값은 뇌파의 변화 추세를 표기한다. 특정 음향을 들려주었을 때 측정되는 뇌파의 상태에서 수면을 유도하기 위한 상태로 전환하려면 이 타겟 값을 사용한다. 예를 들어보자. Table 3에서 현재상태를 Relax 라고 하자. 수면을 유도하려면 Shallow sleep 단계로 넘어가야 하는데, 그 단계의 타겟 값은 [0, 1, 1, 0, 0, 0, 1, 0] 이다. 즉, 고대역 델타파와 세타파가 증가(1)되어야 하고, 베타파는 감소(1)되어야 한다는 것이다. 따라서 이 타겟 상태로 전환되면 자연스럽게 수면이 유도된다.
Table 2. Five categories for sleep induction sound in case of frequency in increasing(#) decreasing(#)
이와 같은 타겟 값을 고려하여 Fig. 4에서 다음으로 진행한다. 우선, 측정하는 뇌파의 주파수별 변화 수치에 따라 그 상태를 고정된 행렬에 채워 넣는다. 이 과정을 Shingling이라고 하며 뇌파행렬(Matrix for EEG)을 만드는 과정이다. 그 후 뇌파행렬에 대해 MinHash 값을 활용해서 Signature 행렬을 만들어 행렬의 차원을 축소한다. Signature 행렬은 기존행렬의 차원을 축소하는 방법 중 하나로 임의의 순열에서 원본 데이터를 추출해 행렬의 차원을 줄이지만, 원본행렬의 특징을 가지고 있다.
그렇다면 다음의 Fig. 5와 같이 예를 통해서 실제로 분류되는 과정을 자세히 살펴보자. Fig. 5(a)에서처럼 3 × 9 형태의 임의순열을 미리 만들어 놓는다. 임의순열은 임의의 해시함수를 h(x) = ((3x+2) mod 9) + 1로 정하고, 랜덤 값 x에 대해 h(x)를 산출하여 P1, P2, P3를 생성한다. 또 그 길이도 뇌파행렬에서 행의 크기와 같도록 9행으로 만든다. 사용자에게 Sound1을 들려주면서 뇌파를 측정하고 주파수별 변화의 증감값을 산출하여 (b)의 뇌파행렬(Matrix for EEG) S1에 설정한다. 또한 사용자의 선호도 정보를 R9에 설정한다.
Fig. 5. Process to matrix for classification.
(b)의 R1열에는 측정한 뇌파에서 저대역 델파파가 증가하지 않았으므로 0으로 설정하고, 고대역 델타파가 증가하였으므로 2열인 R2에 1로 표시하도록 설정한다. 따라서 R3, R4, R5, 가 각각 0으로 설정된 상태를 볼 때 세타파에는 변화가 없고, 알파파는 증가하지 않았으며, R6 이 1이므로 알파파가 오히려 감소한 것으로 볼 수 있다. R7, 과 R8 이 각각 1이므로 베타파와 감마파가 감소로 정의하고 마지막으로 9열인 R9에이 0으로 설정되어 있기 때문에 사용자가 이 음향을 수면유도에 선호하지 않고 있음을 알 수 있다.
이러한 레코드의 구성은 하나의 예시이며, 사용자가 다른 특징들을 추가할 수도 있고, 음향도 추가할 수 있다. 수면을 유도하기 위한 타겟상태를 표현할 때도 Table 3에서 제시한 값들을 1 × 9 행렬로 표현한다면, 타겟행렬과 뇌파행렬이 음향에 대해 유사성이 높은지를 추정할 수 있게 된다. 이것은 음향이 사용자에게 수면유도 효과가 있는지 또는 없는지 혹은 효과가 악화되었는지를 판단할 수 있는 기준이 된다.
Table 3. Target values to cluster sound for categories
다음으로는 뇌파행렬에서 Signature matrix를 생성하여야 하는데, Fig. 5의 뇌파행렬(b)로부터 Min Hash 기법을 통해 (c)를 도출한다. 다시 말하면, (a)의 P1 [6, 4, 2, 7, 3, 1, 9, 8, 5]에서 MinHash값을 찾아보면 가장 작은 수가 R6에 있는 1이다. 그러므로 뇌파 행렬에서 R6를 살펴보면 S1과 S3가 각각 1로 설정되어 있으므로 (c)에서 R1행의 S1과 S3에 MinHash값 1을 대입한다. 다음으로 두번째 MinHash 값을 찾으면 R3행의 2이며, (b) R3행의 S2과 S4 가 1로 채워져있기 때문에 (c) 의 R1행 S2과 S4에 MinHash 값인 2로 채워 넣는다. 이러한 방식으로 Signature matrix를 생성한다.
다음으로 Signature 행렬의 해시 값을 참조하여 보조 인덱스(Secondary index matrix)를 만든다. 이 과정을 Secondary indexing이라 정의한다. 보조 인덱스란 인덱스와 Signature의 값을 조합으로 키(key)를 생성하고 아이템에 따라 값을 채워 넣는 키값(key value)형식이다. 이렇게 되면 적은 연산으로도 아이템간의 유사도를 구할 수 있고 가시적으로도 손쉽게 유사성을 파악할 수 있다. 또 해시값과 인덱스의 조합으로 보조 인덱스의 키를 생성하기 때문에 동일한 해시 값이 생성하게 되더라도 해시충돌을 최소화시킬 수 있고 새로운 아이템을 추가할 때도 용이하다.
예를 들어, Fig. 5의 (d)행렬에서 Sound value값은 해시 값이 동일한 음향끼리 묶는다. (d)의 Category1은 1-1, 2-3, 3-1가 key인 MinHash 보조 인덱스에 속하고 MinHash 값의 1,3,1은 Category1의 클러스터링 타겟 값이 된다. 이 방식은 행렬을 축소시킬수 있을 뿐만아니라 음향간의 유사성을 비교하기 용이하다.
비교대상끼리는 같은 MinHash 값을 가질 확률이 각 대상이 갖는 자카드 계수와 같다. 이 성질을 이용해서 두 대상 간에 자카드 계수와 유사한 값을 구할 수 있다. 자카드 유사도를 구하는 식 (2)에서 볼 때, 대상 A와 대상 C 사이의 자카드 유사도 S(I A,I C)는 A와 C 의 MinHash 값이 겹치는 개수(|hi (I A)∩hi (I C)|)를 전체 MinHash 함수의 개수(|h(x)|)로 나눈 값과 유사하다[17].
\(S\left(I_{A}, I_{C}\right) \approx \frac{\left|h_{i}\left(I_{A}\right) \cap h_{i}\left(I_{C}\right)\right|}{|h(x)|}\) (2)
Fig. 5. (d) Category1의 경우에는 그 카테고리의 타겟값이 [1, 3, 1]이 되고 Cateogry2의 타겟값은 [2, 1, 2]가 된다. 이와 겹치는 해시 값을 Sound value속성으로 추가한다.
Category1 (d)를 이용하여 유사도를 구하기 위한 예시로 Target key에 해당하는 value 인 sound1와 sound3의 유사성을 비교한다면 각각 1-1과 2-3 Sound value 값이 1과 3으로 동일한 것을 알 수 있다. 이와 같이 식 (2)의 값은 MinHash 보조 인덱스를 살펴보는 것만으로도 손쉽게 유사도를 계산할 수 있다. 유사도를 구하는 방식으로는 총 3개의 해시 값중 2개가 동일하므로 식 (2)의 값을 구하면 2/3 가 된다.
(e)는 n개의 새로운 음향이 추가되는 과정 속에서 카테고리별 유사도를 구하는 예시이다. 새로운 음향의 특징 값과 카테고리별 타겟값이 겹치는 값을 Sound value에 표기한다. 그 후 n개의 음향에 대해서 식 (2)과 같이 유사도를 구하고 n개의 음향 중 타겟 값과의 유사도가 높은 음향들을 클러스터링 하여 (f)와 같이 구성한다. (f)의 음향(Sound)과 유사도(Similarity)값으로 이루어져있고 Category1과 Category2의 유사도 0.95, 0.75, 0.65과 같은 값은 n개의 음향에 대한 임의의 예시 값이다.
n개의 음향과 새로운 음향을 추가하며 유사도를 구하는 과정에서 (c)의 Signature 행렬과 (d)의 보조 인덱스를 디스크에 저장하도록 하여, 새로운 음향이 추가될때마다 (a), (b), (c), (d)과정을 생략할 수 있어 보다 효율적인 분류가 가능하다. 결국 새로운 음향이 추가될 때 저장한 인덱스를 불러와 새로운 음향에 대한 (e)값을 추출하고 Target key에 따른 기존의 Sound value에 타겟 값과 일치하는 값들을 모아둔다. 그 후 Sound value의 해시 값이 겹치는 비율에 따라 식 (2)를 통해 쉽게 유사도를 구할 수 있다. 이렇게 함으로써 유사도가 높은 음향끼리 분류하여 카테고리에 편입시킬 수가 있다. 지금까지 MinHash기법에 보조 인덱스를 추출하고, 유사도를 산출하는 개선된 수면유도음향 분류기법을 제안하였으며, 이 기법의 효용성을 확인하기 위해 다음 장에서 분류정확도 실험과 분류처리속도 비교실험을 하고자 한다.
4. 실험 및 평가
4.1 실험환경
본 실험에서는 10개의 음향(또는 음악)을 사용하며, OpenBCI 오픈소스 뇌파측정 툴[23]을 이용하여 사람의 뇌파를 측정하면서 실험을 한다. 툴은 뇌에 전극을 부착하도록 해주는 뇌파 헤드밴드모듈과 측정된 EEG raw 데이터로부터 상대파워 스펙트럼 값을 추출하여 2초 간격으로 라즈베리파이로 전송하는 Ganglion 보드모듈로 구성된다. 본 실험을 위해서 제안한 분류기법의 알고리즘을 라즈베리파이에 직접 구현하였으며, Ganglion 으로부터 블루투스로 뇌파 데이터를 수신받아 제안한 분류기법의 입력 값으로 사용할 수 있도록 전처리를 하였다. Table 4에서는 실험환경에 대한 사항을 정의한 것이다.
Table 4. Experiment environments details
Table 4는 실험을 하기 위해 하드웨어와 소프트웨어의 환경을 정리한 표이다. 뇌파를 측정할 때 4개의 전극을 사용하였으며, 뇌파측정 부위 국제표준법[24]에 따라 머리의 전두엽 부위인 Fp1, Fp2, A1, A2에 전극을 부착하여 뇌파를 측정하였다. 수면유도음향 분류알고리즘은 라즈베리파이의 Node.js 플랫폼에서 동작할 수 있도록 실험을 위해 개발하였다. 라즈베리파이 모델은 3 B+를 사용하였으며, 그 하드웨어 구성은 CPU ARM-A53, Memory 1GB LPDDR2 SDRAM 이며, OS의 경우 Raspbian v-4.19를 이용하였고, Node v-12.13.1 플랫폼에서 수면유도음향 분류알고리즘이 동작하도록 구현하였다.
수면유도의 분류기법의 경우 4개의 해시함수를 사용하였고 열값은 9개의 뇌파 특징값으로 3 × 9 임의 순열 행렬을 생성하였다. 뇌파행렬은 4.2 수면유도음향 분류 정확도 실험의 경우 Table 3과 같이 열의 특징 값을 구성하였고 컬럼 값은 Table 5의 10개의 음향으로 10 × 9 행렬로 구성하였다. 4.3 처리속도 비교 실험의 경우에는 열값의 경우 9개의 뇌파 특징값과 임의의 순열로 채워진 10-10000개 음향에 대한 컬럼 값으로 n × 9 행렬로 구성하였다.
이러한 실험환경에서 분류기법의 효용성과 효율성을 모두 확인하기 위해 분류 정확도실험과 분류하는데 소요되는 시간을 측정하는 실험을 하고자 한다. 특히 분류 정확도 실험은 Table 5와 같이 이미 효과가 알려진 음향들을 선정하여 제안된 분류알고리즘에서 실험하였을 때 의도한 카테고리로 정확히 분류되는지 확인하는 실험이다.
Table 5를 보면 음향은 10개의 음향으로 실험을 진행하였고 효과(Effect)별로 Induct, Relax, Concentration 음향들로 구성하였다. 수면유도음향에 효과가 검증된 음향인 Pink noise, Firewood Sound, Drifting into delta, Dolphin Dreams 4개의 음향을 사용하였고 또 다른 3개의 음향은 이완에 효과가 있는 음향인 Sun singer, Crystal Meditation from Essence, Relax with the Classics, Vol. III 3개의 음향은 집중에 효과가 되는 음향이다. 나머지 3개의 음향은 집중에 효과가 있는 음향으로 Andante Sostenuto from Violin Sonata, C Major, Voi che sapete, Relax with the Classics, Vol. 2 음향으로 구성되었다. 이와 같은 10개의 검증된 음향을 가지고 제안된 수면 유도음향 분류의 정확도 실험을 한다.
Table 5. Sound list for experiment
4.2 수면유도음향 분류 정확도 실험
본 실험에서는 기존에 효과가 검증된 수면유도음향을 사용하여 예측된 카테고리로 정확히 분류하는지를 확인하는 정확도 실험이다. 우선, 사용자에게 10개의 음향을 하나씩 제공해 가면서 뇌파를 측정하고, Ganglion 보드에서 뇌파 특징 값을 측정한 후 라즈베리파이로 전송하도록 하였다. 그 다음 Fig. 6에서처럼 라즈베리파이에서 구현한 classify_category. js 프로그램(수면유도음향 분류 알고리즘)을 실행시켜 블루투스를 통해 뇌파데이터를 수신한 후 분석하게 하였다. 좌측 화면에서는 제안된 분류기법으로 음향을 분류처리 과정을 알 수 있도록 출력하였으며, 우측 화면에는 Table 5의 검증된 음향을 실험자에게 제공하였을 때 실험자 뇌파가 변화하면서 목표 카테고리로 전환되는 과정을 보여주고 있다.
Fig. 6. Log Information during execution of proposed classification algorithm.
본 실험에서는 Table 1의 Sound1을 실험자에게 제공하였을 때 사용자의 뇌파 변화를 통해 Fig. 6의 우측 그림과 같이 카테고리로 분류됨을 볼 수 있다. 분류 기준은 Table 2를 기준으로 카테고리를 나누어 분류하였다. Sound1은 수면 유도효과가 검증된 음향으로 예상하는 목표 카테고리는 Shallow sleep 카테고리이다. 실험 결과로는 우측 그림과 같이 20번의 실험을 통해 반복 실험 중 16번이 예상하는 목표 카테고리로 분류되어 80%의 분류 정확율을 보였다. 이와 같은 방식으로 10개의 음향에 대해서 20번의 반복실험을 통해 정확도 확인실험을 하였으며, 각 음향마다 평균 값을 산출하여 Fig. 7과 같은 정확도 결과를 얻었다.
Fig. 7. Accuracies for proposed classification.
Fig. 7의 그래프를 보면 가로축은 Table 4에 명시된 음향들이다. 세로축은 분류의 정확도를 수치화하였다. 실험결과로 볼 때, 수면유도효과가 있는 음향 sound4와 집중효과(Concentration)가 있는 sound9음향이 95%로 가장 정확도가 높았으며, 집중효과(Concentration)의 sound10이 70%로 가장 낮은 정확도를 보였다. 제안된 분류기법은 각 음향에 대한 평균 85%의 높은 분류 정확도를 보였다. 이는 새로운 음향에 있어서도 사용자의 뇌파에 따라 제안된 수면유도음향 분류기법이 수면유도의 효과에 따라 음향의 카테고리 분류에 대한 신뢰성을 입증한다.
4.3 수면유도음향 분류처리속도 비교실험
정확하게 분류한다 하더라도 빠르게 분류하지 못한다면 그 효용가치가 없기 때문에 제안된 기법이 기존의 방식과 비교하였을 때 얼마나 빠르게 분류하는지를 확인하기 위한 처리속도 비교실험을 시행하였다. 이 실험에서는 Fig. 5의 (a)-(c) 과정을 통해 MinHash 값이 겹치는 값을 이용하여 유사도를 계산하는 기존 MinHash 방식과 Fig. 5(d)에서처럼 인덱스를 생성하여 해시 값의 충돌은 피하고, 해시 값이 겹치는 정도를 비교하여 유사도로 계산하는 개선한 방식에서 수면유도음향의 분류처리속도를 비교한다.
Fig. 8을 보면 가로축은 음향의 개수이고 세로축은 처리속도를 나타낸 표이다. 가로축의 음향의 개수의 경우 점증적으로 증가하였고 음향의 특징값은 임의의 특징값을 넣었다. 이러한 환경은 각기 다른 다양한 뇌파 특징을 갖는 방대한 양의 음향들을 분류하는 환경을 나타낸다. 가로축의 음향의 개수가 증가할수록 두 방식의 분류 처리시간의 간격이 커짐을 알 수 있다. 제안된 분류기법은 음향의 개수가 10개의 경우 기존대비 57%의 감소율을 보였지만 음향의 개수가 10,000개의 경우 기존대비 83%의 처리시간 단축을 보였다. 이를 통해 제안된 방식의 분류기법은 음향의 수가 증가할수록 기존의 방식보다 높은 효율을 기대할 수 있다.
Fig. 8. Comparison of processing times between two methods.
5. 결론
본 논문에서는 효과적인 입면을 위해 뇌파에 기반한 수면유도음향의 분류기법을 제안하였다. 기존의 일괄적이고 일방적인 수면유도음향의 제공과는 다르게 음향에 따라 변화하는 뇌파상태를 실시간으로 반영하여 적절한 분류체계를 만들고자 하였다. 특히 이미 알려진 평가로 확인된 몇몇 음향뿐만 아니라 사용자가 선호하는 새로운 음향에 대해서도 적용할 수 있도록 분류하는 방식이며, 그 분류성능에 있어서도 뇌파처리 부분을 최적화하여 효율성을 높이도록 하였다.
제안한 수면유도음향 분류 기법의 효과를 검증하기 위해서 라즈베리파이에서 분류알고리즘을 구현하였으며 실험에 활용하였다. 실험은 분류 정확도 실험과 분류시간 측정실험이다. 실험결과, 평균 85%의 수면유도음향 분류 정확도를 얻었다. 분류시간 실험에 있어서는 음향의 개수가 늘어날수록 처리시간이 더 적어지는 효율성을 확인하였다. 기존의 추천 기법의 경우 희박성 확장성에 대한 이슈로 추천에 대한 신뢰성, 성능문제가 제기되고 있었다. 하지만 제안된 분류기법에서는 뇌파데이터에 대한 활용체계의 정립과 연산의 수를 감소시켜 희박성과 확정성 문제를 해결하였다. 특히 이러한 결과는 많은 음악 창작자들에 의해 만들어지는 음악이나 음향이 수면에 어느 정도 효과가 있는지를 확인하기 위한 분류기법으로써 의미가 있다고 평가한다. 특히 라즈베리파이에서 구현하여 그 성능과 효율을 확인하였기 때문에 소형 컴퓨팅 능력이 있는 IoT, 엣지, Fog 컴퓨팅에서도 활용될 수 있을 것이라 기대한다.
수면유도음향을 분류할 때 뇌파를 사용하였다. 그러나 사용자 선호도는 사용자가 누구인지를 먼저 식별하여야 의미가 있다. 뇌파를 측정할 때 수면중 안구 움직임도 같이 측정하고, 이 데이터를 사용할 수 있다면 사용자가 누구인지 식별이 가능하다. 따라서 사용자 식별과 음향 분류기법을 통합하는 새로운 알고리즘을 설계할 수 있을 것이며, 이 부분에 대한 추가연구가 필요할 것으로 본다.
※ This work was supported by the Technology development Program funded by the Ministry of SMEs and Startups(MSS, Korea) (Grants No. S2798371)
References
- Y. Baek, J. Yoo, S. Lee, and H. Jin, "Domestic Trends of Research and Patent for Sleep Disorder," Life Sciences, Vol. 13, No. 6, pp. 309-317, 2013.
- Y. Touitou, A. Reinberg, and D. Touitou, "Shift Work and Cancer Risk: Potential Mechanistic Roles of Circadian Disruption, Light at Night, and Sleep Deprivation," Sleep Medicine Reviews, Vol. 173, No. 4, pp. 94-106, 2017.
- B.M. Lee and H.J. Hwang, "Virtual Sleep Sensor with PSQI for Sleep Therapy Service," Journal of Korea Multimedia Society, Vol. 18, No. 12, pp. 1538-1546, 2015. https://doi.org/10.9717/kmms.2015.18.12.1538
- Y.S. Kim, S.Y. Park, and S.Y. Ok, "Human Gesture Recognition Technology Based on User Experience for Multimedia Contents Control," Journal of Korea Multimedia Society, Vol. 15, No. 10, pp. 1196-1204, 2012. https://doi.org/10.9717/kmms.2012.15.10.1196
- J. Lee and J. Kim, "Analysis of the Relaxing Effect of ASMR Sound Contents," The Institute of Electronics and Information Engineers, Vol. 56, No. 3, pp. 139-145, 2019. https://doi.org/10.5573/ieie.2019.56.3.139
- B. Fredborg, J. Clark, and S.D. Smith, "An Examination of Personality Traits Associated with Autonomous Sensory Meridian Response (ASMR)," Frontiers in P sychology, Vol. 8, No. 247, pp. 1-9, 2017.
- D.H. Moon, "The Effect on Human Body by the Stimuli of Musics and Acoustic Vibrations," Journal of the Korea Society For Power System Engineering, Vol. 12, No. 5, pp. 59-64, 2008.
- T. Kawada and S. Suzuki, "Sleep Induction Effects of Steady 60 dB (A) Pink Noise," Industrial Health, Vol. 31, No. 1, pp. 35-38, 1993. https://doi.org/10.2486/indhealth.31.35
- U. Will and F. Berg, "Brain Wave Synchronization and Entrainment to Periodic Acoustic Stimuli," Neuroscience Letters, Vol. 424, No. 1, pp. 55-60, 2000. https://doi.org/10.1016/j.neulet.2007.07.036
- B. Kim and M. Whang, "The Effect of White Noise and Pink Noise on the Brain Activity," The Journal of the Korea Contents Association, Vol. 17, No. 5, pp. 491-498, 2017. https://doi.org/10.5392/JKCA.2017.17.05.491
- T. Trahan, S.J. Durrant, D. Mullensiefen, and V.J. Williamson, "The Music That Helps People Sleep and the Reasons They Believe It Works: A Mixed Methods Analysis of Online Survey Reports," Public Library of Science One, Vol. 13, No. 11, pp. 1-19, 2018.
- H.S. Wi and B.M. Lee, "Customized Realtime Control of Sleep Induction Sound Based on Brain Wave Data," Journal of Korea Multimedia Society, Vol. 23, No. 2, pp. 204-215, 2020.
- H.I. Kim and J.K. Eom, "A Feature Generation Method for Multimedia Recommendation System," Journal of Korea Multimedia Society, Vol. 11, No. 2, pp. 257-268, 2008.
- S. Niwattanakul, J. Singthongchai, and E. Naenudorn, "Using of Jaccard Coefficient for Keywords Similarity," Proceedings of the International Multi Conference of Engineers and Computer Scientists, Vol. 1, No. 6, pp. 380-384, 2013.
- D.C. Jeon, B.M. Lee, and H.H. Hwang, "Design and Implement of Smart Gateway Interface API for Real-time Monitoring in Smart Factory," Journal of Korea Multimedia Society, Vol. 22, No. 5, pp. 601-612, 2019. https://doi.org/10.9717/KMMS.2019.22.5.601
- J.S. Lee and S.D. Park, "Performance Improvement of a Movie Recommendation System Using Genre-wise Collaborative Filtering," Journal of Intelligence and Information Systems, Vol. 13, No. 4, pp. 65-78, 2007.
- A.S. Das, M. Datar, A. Garg, and S. Rajaram, "Google News Personalization: Scalable Online Collaborative Filtering," Proceedings of International Conference on World Wide Web, pp. 271-280, 2007.
- O. Benoit, A. Daurat, and J. Prado, "Slow (0.7-2 Hz) and Fast (2-4 Hz) Delta Components are Differently Correlated to Theta, Alpha and Beta Frequency Bands During NREM Sleep," Clinical Neurophysiology, Vol. 111, No. 12, pp. 2103-2106, 2000. https://doi.org/10.1016/S1388-2457(00)00470-3
- F. Amzica and M. Steriade. "Electrophysiological Correlates of Sleep Delta Waves," ElecTroencephalography and Clinical NeurophysiOlogy, Vol. 107, No. 2, pp. 69-83, 1998. https://doi.org/10.1016/S0013-4694(98)00051-0
- R. Maya and R. Huber, "Developmental Aspects of Sleep Slow Waves: Linking Sleep, Brain Maturation and Behavior," Progress in Brain Research, Vol. 193, pp. 63-82, 2011. https://doi.org/10.1016/B978-0-444-53839-0.00005-3
- I.K. Lee, "Polysomnography," Annals of Clinical Neurophysiology, Vol. 1, No. 2, pp. 230-235, 1999.
- Y. Koren, R.R. Bell, and C. Volinsky, "Matrix Factorization Techniques for Recommender Systems," Computer, Vol. 42, No. 8, pp. 30-37, 2009. https://doi.org/10.1109/MC.2009.263
- OpenBCI Document (2020). https://docs.openbci.com/docs/03Ganglion/GanglionSDK (accessed August 28, 2020).
- R.W. Homan, J. Herman, and P. Purdy, "Cerebral Location of International 10 - 20 System Electrode Placement," Electroen cephalogRaphy and Clinical Neuro physiology, Vol. 66, No. 4, pp. 376-382, 1987. https://doi.org/10.1016/0013-4694(87)90206-9
Cited by
- 머신러닝 기반의 안전도 데이터 필터링 모델 vol.24, pp.2, 2020, https://doi.org/10.9717/kmms.2020.24.2.274
- 수면유도용 온열안대를 위한 뇌파기반의 맞춤형 온열제어 기법 vol.24, pp.8, 2020, https://doi.org/10.9717/kmms.2021.24.8.1149