[go: up one dir, main page]

KR102817306B1 - 몽유병을 감지하는 엣지 디바이스 - Google Patents

몽유병을 감지하는 엣지 디바이스 Download PDF

Info

Publication number
KR102817306B1
KR102817306B1 KR1020220164099A KR20220164099A KR102817306B1 KR 102817306 B1 KR102817306 B1 KR 102817306B1 KR 1020220164099 A KR1020220164099 A KR 1020220164099A KR 20220164099 A KR20220164099 A KR 20220164099A KR 102817306 B1 KR102817306 B1 KR 102817306B1
Authority
KR
South Korea
Prior art keywords
sleepwalking
model
snn
neural network
recurrent
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
KR1020220164099A
Other languages
English (en)
Other versions
KR20240081587A (ko
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 KR1020220164099A priority Critical patent/KR102817306B1/ko
Priority to PCT/KR2023/016470 priority patent/WO2024117546A1/ko
Publication of KR20240081587A publication Critical patent/KR20240081587A/ko
Application granted granted Critical
Publication of KR102817306B1 publication Critical patent/KR102817306B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/48Other medical applications
    • A61B5/4806Sleep evaluation
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/0002Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network
    • A61B5/0004Remote monitoring of patients using telemetry, e.g. transmission of vital signals via a communication network characterised by the type of physiological signal transmitted
    • A61B5/0006ECG or EEG signals
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/25Bioelectric electrodes therefor
    • A61B5/251Means for maintaining electrode contact with the body
    • A61B5/256Wearable electrodes, e.g. having straps or bands
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/24Detecting, measuring or recording bioelectric or biomagnetic signals of the body or parts thereof
    • A61B5/316Modalities, i.e. specific diagnostic methods
    • A61B5/369Electroencephalography [EEG]
    • A61B5/372Analysis of electroencephalograms
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7264Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems
    • A61B5/7267Classification of physiological signals or data, e.g. using neural networks, statistical classifiers, expert systems or fuzzy systems involving training the classification device
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/74Details of notification to user or communication with user or patient; User input means
    • A61B5/742Details of notification to user or communication with user or patient; User input means using visual displays
    • A61B5/7445Display arrangements, e.g. multiple display units
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/20ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for computer-aided diagnosis, e.g. based on medical expert systems

Landscapes

  • Health & Medical Sciences (AREA)
  • Engineering & Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Theoretical Computer Science (AREA)
  • Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Heart & Thoracic Surgery (AREA)
  • Surgery (AREA)
  • Animal Behavior & Ethology (AREA)
  • Veterinary Medicine (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Psychiatry (AREA)
  • Psychology (AREA)
  • Physiology (AREA)
  • Databases & Information Systems (AREA)
  • Epidemiology (AREA)
  • Primary Health Care (AREA)
  • Fuzzy Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Image Analysis (AREA)

Abstract

본 발명에 따른 몽유병을 감지하는 엣지 디바이스는, 외부 기기로부터 압축된 EEG(Electroencephalogram) 신호를 수신하는 무선통신부; 상기 압축된 EEG 신호를 복원하여 복원된 EEG 신호를 학습된 Recurrent SNN(Spiking Neural Network) 모델의 입력 뉴런층에 입력하고, 상기 입력 뉴런층에서 스파이킹 인코딩을 수행하여 시공간 스파이크 특징이 생성하고, 상기 생성된 시공간 스파이크 특징을 상기 학습된 Recurrent SNN 모델을 적용하여 몽유병 여부에 대한 결과를 출력하는 프로세서를 포함할 수 있다.

Description

몽유병을 감지하는 엣지 디바이스{EDGE DEVICE FOR DETECTING SOMNAMBULISM}
본 발명은 몽유병을 감지하는 엣지 디바이스에 관한 것으로, 보다 자세하게는 뇌파를 측정하여 실시간으로 몽유병을 감지하기 위한 엣지 디바이스에 관한 것이다.
수면은 총 다섯가지 단계로 나누어서 설명할 수 있다. 1~4단계는 빠른 안구 운동이 없는 비렘 (NREM) 수면 단계이며 빠른 안구 운동이 있는 렘 (REM) 수면단계가 존재한다. 비렘 수면 단계와 렘 수면 단계가 이루는 수면 주기는 약 100분가량 지속되며 자는 동안에 비렘 수면단계부터 렘 수면단계까지의 주기가 반복된다. 몽유병의 증상은 수면의 3~4단계에서 발생한다고 추정되며 몽유병으로 인해 경험하는 수면 중 행동들은 기억에 남지 않기 때문에 위험할 수 있다. 몽유병을 포함한 다양한 수면 질환들을 진단하기 위해서는 병원에서 진행하는 수면다원검사를 통해 가능하다. 수면다원검사는 수면 중 뇌파, 안전도, 근전도, 호흡, 심전도 등의 생체 신호를 수면기사가 종합적으로 측정하고 동시에 수면 상태를 비디오를 통해 녹화한다. 결과적으로 수면기사가 녹화된 비디오를 보면서 수면 질환을 판독하는 정밀하고 전문적인 검사이지만 실시간으로는 판독이 불가능 하다.
기존에 수면 데이터 분석 또는 수면 단계 분류 관련한 연구는 다채널 압력신호 기반 수면 단계 분류 방법에 대한 것이었다. 기존 연구에서는 압력 센서를 이용하여 인체로부터 다채널의 심탄도 (BCG) 생체신호를 측정하고 다채널 생체신호 및 심박변이도 (HRV)를 이용하여 사용자의 수면 단계를 분류하였다. 이러한 비접촉식 수면정보 수집 디바이스 및 이를 이용하여 사용자의 수면상태를 판단하는 수면분석 시스템은 제안되고 있다. 특히, 사용자의 수면 환경에서 데이터를 측정한 후 수면 데이터를 이용하여 사용자의 수면 상태에 관한 분석 정보를 제공한다. 측정된 수면 데이터를 컴퓨팅 장치를 이용하여 수면 상태를 분석한 후 사용자의 분석 정보를 사용자 단말로 전송하는 시스템 등에 대해서도 제안된 바가 있다.
한국공개특허 10-2016-0087762호
본 발명에서 이루고자 하는 기술적 과제는 몽유병을 감지하는 엣지 디바이스를 제공하는 데 있다.
본 발명에서 이루고자 하는 다른 기술적 과제는 엣지 디바이스가 몽유병을 판단하는 방법을 제공하는 데 있다.
본 발명에서 이루고자 하는 또 다른 기술적 과제는 엣지 디바이스가 몽유병을 판단하는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 몽유병을 감지하는 엣지 디바이스는, 외부 기기로부터 압축된 EEG(Electroencephalogram) 신호를 수신하는 무선통신부; 상기 압축된 EEG 신호를 복원하여 복원된 EEG 신호를 학습된 Recurrent SNN(Spiking Neural Network) 모델의 입력 뉴런층에 입력하고, 상기 입력 뉴런층에서 스파이킹 인코딩을 수행하여 시공간 스파이크 특징이 생성하고, 상기 생성된 시공간 스파이크 특징을 상기 학습된 Recurrent SNN 모델을 적용하여 몽유병 여부에 대한 결과를 출력하는 프로세서를 포함할 수 있다.
상기 학습된 Recurrent SNN 모델은 사전에 정의한 근사함수에 기초하여 역전파(back propagation) 학습 알고리즘을 적용하여 학습된다.
상기 사전에 정의한 근사함수는 다음 수학식 1로 나타낼 수 있으며,
[수학식 1]
여기서, S(t)는 각 뉴런층에서의 출력값이고, x는 각 뉴런층에서의 입력값이다.
엣지 디바이스는 상기 몽유병 여부에 대한 결과를 저장하는 메모리를 더 포함할 수 있다. 엣지 디바이스는 프로세서의 제어에 따라 상기 몽유병 여부에 대한 결과를 사용자가 확인할 수 있도록 디스플레이되는 디스플레이부를 더 포함할 수 있다.
상기 외부 기기는 사용자의 뇌에 착용된 웨어러블 디바이스에 해당할 수 있다. 상기 무선통신부는 상기 압축된 EEG 신호를 상기 외부기기로부터 다이렉트로 수신하거나 또는 네트워크를 통해 수신할 수 있다. 상기 수신된 압축 EEG 신호는 압축 센싱 알고리즘을 통해 압축된 것이다.
상기의 다른 기술적 과제를 달성하기 위한, 본 발명에 따른 엣지 디바이스가 몽유병을 판단하는 방법은, 외부 기기로부터 압축된 EEG(Electroencephalogram) 신호를 수신하는 단계; 상기 압축된 EEG 신호를 복원하는 단계; 복원된 EEG 신호를 학습된 Recurrent SNN(Spiking Neural Network) 모델의 입력 뉴런층에 입력하는 단계; 상기 입력 뉴런층에서 스파이킹 인코딩을 수행하여 시공간 스파이크 특징이 생성하고 단계; 및 상기 생성된 시공간 스파이크 특징을 상기 학습된 Recurrent SNN 모델을 적용하여 몽유병 여부에 대한 결과를 출력하는 단계를 포함할 수 있다.
상기 방법은, 상기 몽유병 여부에 대한 결과를 사용자가 확인할 수 있도록 디스플레이부에 디스플레이하는 단계를 더 포함할 수 있다.
상기 방법은, 상기 학습된 Recurrent SNN 모델은 사전에 정의한 근사함수에 기초하여 역전파(back propagation) 학습 알고리즘을 적용하여 학습하는 단계를 더 포함할 수 있다.
본 발명에 따른 몽유병 감지 방법에 따라 정확도가 높으면서도 저전력으로 실시간으로 몽유병을 감지할 수 있게 되었다.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
도 1은 인공신경망의 계층 구조(layer structure)를 예시한 도면이다.
도 2는 심층 신경망의 일 예를 도시한 도면이다.
도 3은 Spiking Neural Network (SNN) 알고리즘 모델을 이용한 모니터링을 설명하기 위한 도면이다.
도 4는 본 발명에 따른 엣지 디바이스(400)의 기능을 설명하기 위한 블록도를 예시한 도면이다.
도 5 및 도 6은 본 발명에 따른 엣지 디바이스(400)와 웨어러블 디바이스(500)에서 몽유병을 감지하기 위한 과정을 설명하기 위한 예시도이다.
도 7은 본 발명에서 제안하는 Recurrent SNN 모델 구조를 예시한 도면이다.
도 8은 본 발명에 따른 몽유병 감지를 위한 Recurrent SNN 모델(430)을 예시한 도면이다.
도 9는 기존의 인공지능 모델(CNN)과 본 발명에서 사용한 Recurrent SNN 모델과의 전력 소비와 정확도에 대한 시뮬레이션 결과를 도시한 도면이다.
이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 발명의 완전한 이해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다.
몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시될 수 있다. 또한, 본 명세서 전체에서 동일한 구성요소에 대해서는 동일한 도면 부호를 사용하여 설명한다.
본 발명을 설명하기에 앞서 인공 지능(AI), 머신 러닝, 딥 러닝에 대해 설명한다. 이러한 세 가지 개념의 관계를 가장 쉽게 파악하는 방법은 세 개의 동심원을 가상하면 된다. 인공 지능이 가장 큰 원이고, 그 다음이 머신 러닝이며, 현재의 인공지능 붐을 주도하는 딥 러닝이 가장 작은 원이라 할 수 있다.
인공 지능이라는 개념은 1956년 미국 다트머스 대학에 있던 존 매카시 교수가 개최한 다트머스 회의에서 처음 등장했으며, 최근 몇 년 사이 폭발적으로 성장하고 있는 중이다. 특히 2015년 이후 신속하고 강력한 병렬 처리 성능을 제공하는 GPU의 도입으로 더욱 가속화되고 있죠. 갈수록 폭발적으로 늘어나고 있는 저장 용량과 이미지, 텍스트, 매핑 데이터 등 모든 영역의 데이터가 범람하게 된 빅데이터 시대의 도래도 이러한 성장세에 큰 영향을 미쳤다.
인공 지능 - 인간의 지능을 기계로 구현
1956년 당시 인공 지능의 선구자들이 꿈꾼 것은 최종적으로 인간의 지능과 유사한 특성을 가진 복잡한 컴퓨터를 제작하는 것이었다. 이렇듯 인간의 감각, 사고력을 지닌 채 인간처럼 생각하는 인공 지능을 '일반 AI(General AI)'라고 하지만, 현재의 기술 발전 수준에서 만들 수 있는 인공지능은 '좁은 AI(Narrow AI)'의 개념에 포함된다. 좁은 AI는 소셜 미디어의 이미지 분류 서비스나 얼굴 인식 기능 등과 같이 특정 작업을 인간 이상의 능력으로 해낼 수 있는 것이 특징이다.
머신 러닝 - 인공 지능을 구현하는 구체적 접근 방식
머신 러닝은 메일함의 스팸을 자동으로 걸러주는 역할을 합니다. 한편, 머신 러닝은 기본적으로 알고리즘을 이용해 데이터를 분석하고, 분석을 통해 학습하며, 학습한 내용을 기반으로 판단이나 예측을 수행한다. 따라서 궁극적으로는 의사 결정 기준에 대한 구체적인 지침을 소프트웨어에 직접 코딩해 넣는 것이 아닌, 대량의 데이터와 알고리즘을 통해 컴퓨터 그 자체를 '학습'시켜 작업 수행 방법을 익히는 것을 목표로 한다. 머신 러닝은 초기 인공 지능 연구자들이 직접 제창한 개념에서 나온 것이며, 알고리즘 방식에는 의사 결정 트리 학습, 귀납 논리 프로그래밍, 클러스터링, 강화 학습, 베이즈(Bayesian) 네트워크 등이 포함된다. 그러나 이 중 어느 것도 최종 목표라 할 수 있는 일반 AI를 달성하진 못했으며, 초기의 머신 러닝 접근 방식으로는 좁은 AI조차 완성하기 어려운 경우도 많았던 것이 사실이다.
현재 머신 러닝은 컴퓨터 비전 등의 분야에서 큰 성과를 이뤄내고 있으나, 구체적인 지침이 아니더라도 인공 지능을 구현하는 과정 전반에 일정량의 코딩 작업이 수반된다는 한계점에 봉착하였다. 가령 머신 러닝 시스템을 기반으로 정지 표지판의 이미지를 인식할 경우, 개발자는 물체의 시작과 끝 부분을 프로그램으로 식별하는 경계 감지 필터, 물체의 면을 확인하는 형상 감지, 'S-T-O-P'와 같은 문자를 인식하는 분류기 등을 직접 코딩으로 제작해야 한다. 이처럼 머신 러닝은 '코딩'된 분류기로부터 이미지를 인식하고, 알고리즘을 통해 정지 표지판을 '학습'하는 방식으로 작동된다.
머신 러닝의 이미지 인식률은 상용화하기에 충분한 성능을 구현하지만, 안개가 끼거나 나무에 가려서 표지판이 잘 보이지 않는 특정 상황에서는 이미지 인식률이 떨어지기도 한다. 최근까지 컴퓨터 비전과 이미지 인식이 인간의 수준으로 올라오지 못한 이유는 이 같은 인식률 문제와 잦은 오류 때문이다.
딥 러닝 - 완전한 머신 러닝을 실현하는 기술
초기 머신 러닝 연구자들이 만들어 낸 또 다른 알고리즘인 인공 신경망(artificial neural network)에 영감을 준 것은 인간의 뇌가 지닌 생물학적 특성, 특히 뉴런의 연결 구조였습니다. 그러나 물리적으로 근접한 어떤 뉴런이든 상호 연결이 가능한 뇌와는 달리, 인공 신경망은 레이어 연결 및 데이터 전파 방향이 일정합니다.
예를 들어, 이미지를 수많은 타일(tile)로 잘라 신경망의 첫 번째 레이어에 입력하면, 그 뉴런들은 데이터를 다음 레이어로 전달하는 과정을 마지막 레이어에서 최종 출력이 생성될 때까지 반복합니다. 그리고 각 뉴런에는 수행하는 작업을 기준으로 입력의 정확도를 나타내는 가중치가 할당되며, 그 후 가중치를 모두 합산해 최종 출력이 결정됩니다. 정지 표지판의 경우, 팔각형 모양, 붉은 색상, 표시 문자, 크기, 움직임 여부 등 그 이미지의 특성이 잘게 잘려 뉴런에서 '검사'되며, 신경망의 임무는 이것이 정지 표지판인지 여부를 식별하는 것입니다. 여기서는 충분한 데이터를 바탕으로 가중치에 따라 결과를 예측하는 '확률 벡터(probability vector)'가 활용된다.
딥러닝은 인공신경망에서 발전한 형태의 인공 지능으로, 뇌의 뉴런과 유사한 정보 입출력 계층을 활용해 데이터를 학습합니다. 그러나 기본적인 신경망조차 굉장한 양의 연산을 필요로 하는 탓에 딥러닝의 상용화는 초기부터 난관에 부딪혔다. 그럼에도 불구하고 연구자들의 연구는 지속됐고, 슈퍼컴퓨터를 기반으로 딥러닝 개념을 증명하는 알고리즘을 병렬화하는데 성공했다. 그리고 병렬 연산에 최적화된 GPU의 등장은 신경망의 연산 속도를 획기적으로 가속하며 진정한 딥러닝 기반 인공 지능의 등장을 불러왔다.
신경망 네트워크는 '학습' 과정에서 수많은 오답을 낼 가능성이 크다. 정지 표지판의 예로 돌아가서, 기상 상태, 밤낮의 변화에 관계없이 항상 정답을 낼 수 있을 정도로 정밀하게 뉴런 입력의 가중치를 조정하려면 수백, 수천, 어쩌면 수백만 개의 이미지를 학습해야 할지도 모른다. 이 정도 수준의 정확도에 이르러서야 신경망이 정지 표지판을 제대로 학습했다고 볼 수 있다. 2012년, 구글과 스탠퍼드대 앤드류 응(Andrew NG) 교수는 1만6,000개의 컴퓨터로 약 10억 개 이상의 신경망으로 이뤄진 '심층신경망(Deep Neural Network)'을 구현했다. 이를 통해 유튜브에서 이미지 1,000만 개를 뽑아 분석한 뒤, 컴퓨터가 사람과 고양이 사진을 분류하도록 하는데 성공했습니다. 컴퓨터가 영상에 나온 고양이의 형태와 생김새를 인식하고 판단하는 과정을 스스로 학습하게 한 것이다.
딥러닝으로 훈련된 시스템의 이미지 인식 능력은 이미 인간을 앞서고 있습니다. 이 밖에도 딥러닝의 영역에는 혈액의 암세포, MRI 스캔에서의 종양 식별 능력 등이 포함된다. 구글의 알파고는 바둑의 기초를 배우고, 자신과 같은 AI를 상대로 반복적으로 대국을 벌이는 과정에서 그 신경망을 더욱 강화해 나갔다. 딥러닝의 등장으로 인해 머신 러닝의 실용성은 강화됐고, 인공 지능의 영역은 확장됐다. 딥러닝은 컴퓨터 시스템을 통해 지원 가능한 모든 방식으로 작업을 세분화한다. 운전자 없는 자동차, 더 나은 예방 의학, 더 정확한 영화 추천 등 딥러닝 기반의 기술들은 우리 일상에서 이미 사용되고 있거나, 실용화를 앞두고 있다. 딥러닝은 공상 과학에서 등장했던 일반 AI를 실현할 수 있는 잠재력을 지닌 인공 지능의 현재이자, 미래로 평가받고 있다.
이하 딥러닝에 대해 좀 더 구체적으로 살펴본다.
딥러닝이란 인간의 신경망(Neural Network) 이론을 이용한 인공신경망(Artificial Neural Network, ANN)의 일종으로, 계층 구조(Layer Structure)로 구성하면서 입력층(Input layer)과 출력층(Output layer) 사이에 하나 이상의 숨겨진 층(Hidden layer)(이하, 중간층이라 지칭함)을 갖고 있는 심층 신경망(Deep Neural Network, DNN)을 지칭하는 기계학습(Machine Learning) 모델 또는 알고리즘의 집합입니다. 간단히 말하면, 딥러닝(Deep Learning)은 심층 계층을 가진 인공신경망이라 할 수 있다.
사람의 뇌는 250억 개의 신경세포로 구성되어 있다고 추정됩니다. 뇌는 신경세포로 이루어지며, 각각의 신경세포(뉴런, Neuron)는 신경망을 구성하는 신경세포 1개를 지칭한다. 신경세포는 1개의 세포체(cell body)와 세포체의 돌기인 1개의 축삭(Axon or nurite) 및 보통 여러 개의 수상돌기(dendrite or protoplasmic process)를 포함하고 있다. 이러한 신경세포들 간의 정보 교환은 시냅스라고 부르는 신경세포 간의 접합부를 통하여 전달됩니다. 신경세포 하나만 떼어 놓고 보면 매우 단순하지만, 이러한 신경세포들이 모이면 인간의 지능을 지닐 수 있다. 수상돌기에서 다른 신경세포들이 보내는 신호를 전달받는 부분(Input)이고 축색돌기는 세포체로부터 아주 길게 뻗어가는 부분으로 다른 신경세포에 신호를 전달하는 부분(Output)이다. 신경세포들 사이의 신호를 전달해주는 축색돌기와 수상돌기 간을 연결해주는 시냅스라는 연결부가 있는데, 신경세포의 신호를 무조건 전달하는 것이 아니라, 신호 강도가 일정한 값(임계치, Threshold) 이상이 되어야 신호를 전달하는 것이다. 즉, 각 시냅스마다 연결강도가 다를 뿐만 아니라 신호를 전달할지 말지를 결정하게 되는 것이다.
인공지능의 한 분야인 인공신경망(ANN)은 생물학(통상 인간)의 뇌 구조(신경망)를 모방하여 모델링한 수학적 모델이다. 즉, 인공신경망은 이러한 생물학적 신경세포의 정보처리 및 전달 과정을 모방하여 구현한 것이다. 인간의 뇌가 문제를 해결하는 방식과 유사하게 구현한 것으로서 신경망은 각 신경세포가 독립적으로 동작하는 하기 때문에 병렬성이 뛰어나다. 또한 많은 연결선에 정보가 분산되어 있어서 몇몇 신경세포에 문제가 발생해도 전체에 큰 영향을 주지 않으므로 일정 수준의 오류에 강하고 주어진 환경에 대한 학습 능력을 갖고 있다.
심층신경망(Deep neural network)는 인공신경망의 후손이라 볼 수 있으며, 기존의 한계를 뛰어넘어서 과거에 수많은 인공 지능 기술이 실패를 겪었던 영역에 성공 사례를 거두고 인공신경망의 최신 버전이다. 생물학적 신경망을 모방하여 인공신경망을 모델링한 내용을 살펴보면 처리 단위(Processing unit) 측면에서는 생물적인 뉴런(neurons)이 노드(nodes)로, 연결성(Connections)은 시냅스(Synapse)가 가중치(weights)로 다음 표 1과 같이 모델링 되었다.
생물학적 신경망 인공신경망
세포체 노드(node)
수상돌기 입력(input)
축삭(Axon) 출력(output)
시냅스 가중치(weight)
도 1은 인공신경망의 계층 구조(layer structure)를 예시한 도면이다.
인간의 생물학적 신경세포가 하나가 아닌 다수가 연결되어 의미 있는 작업을 하듯, 인공신경망의 경우도 개별 뉴런들을 서로 시냅스를 통해 서로 연결시켜서 복수개의 계층(layer)이 서로 연결되어 각 층간의 연결 강도는 가중치로 수정(update) 가능합니다. 이와 같이 다층 구조와 연결강도로 학습과 인지를 위한 분야에 활용됩니다.
각 노드들은 가중치가 있는 링크들로 연결되어 있고, 전체 모델은 가중치를 반복적으로 조정하면서 학습을 한다. 가중치는 장기 기억을 위한 기본 수단으로서 각 노드들의 중요도를 표현한다. 간단히 이야기하면, 인공신경망은 이들 가중치를 초기하고 훈련시킬 데이터 세트로 가중치를 갱신하여 조정하여 전체 모델을 훈련시키는 것입니다. 훈련이 완료된 후에 새로운 입력값이 들어오면 적절한 출력값을 추론해 내게 된다. 인공신경망의 학습원리는 경험의 일반화로부터 지능이 형성되는 과정이라고 보면 되고 bottom-up 방식으로 이루어지게 된다. 도 1에서 중간층이 2개 이상(즉 5~10개)일 경우를 층이 깊어진다고 보고 심층신경망(Deep Neural Network)이라 하며, 이러한 심층신경망을 통해서 이루어진 학습과 추론 모델을 딥 러닝이라고 지칭할 수 있다.
인공신경망은 입력과 출력을 제외하고 하나의 중간계층(통상적으로 은닉계층, 'hidden layer'라 지칭함)을 가지고 있어도 어느 정도의 역할을 수행할 수 있지만, 문제의 복잡도가 커지면 노드의 수 또는 계층의 수를 증가시켜야 한다. 이 중에서 계층의 수를 증가시켜 다층구조 모델을 가져가는 것이 효과적인데, 효율적인 학습이 불가능하고 네트워크를 학습하기 위한 계산량이 많다는 한계로 인해 활용 범위가 제한적이다.
그러나, 위와 같이 기존의 한계점이 극복됨으로써, 인공신경망은 깊은 구조(Deep Structure)를 가져갈 수 있게 되었습니다. 이로 인해 복잡하고 표현력 높은 모델을 구축할 수 있게 되어 음성인식, 얼굴인식, 물체인식, 문자인식 등 다양한 분야에서 획기적인 결과들이 발표되고 있다.
도 2는 심층 신경망의 일 예를 도시한 도면이다.
심층 신경망(Deep Neural Network, DNN)은 입력층(input layer)과 출력층(output layer) 사이에 여러 개의 은닉층(hidden layer)들로 이뤄진 인공신경망(Artificial Neural Network, ANN)이다. 입력층(Input layer)과 출력층(Output layer) 사이에 하나 이상의 은닉계층(Hidden layer)을 갖고 있는 심층 신경망(Deep Neural Network, DNN)을 지칭하는 머신 러닝(기계학습(Machine Learning)) 모델 또는 알고리즘의 집합이다. 신경망의 연결은 입력층에서 은닉계층으로, 은닉계층에서 출력층으로 이루어진다.
심층 신경망은 일반적인 인공신경망과 마찬가지로 복잡한 비선형 관계(non-linear relationship)들을 모델링할 수 있다. 예를 들어, 물체 식별 모델을 위한 심층 신경망 구조에서는 각 물체가 영상의 기본적 요소들의 계층적 구성으로 표현될 수 있다. 이때, 추가 계층들은 점진적으로 모인 하위 계층들의 특징들을 규합시킬 수 있다. 심층 신경망의 이러한 특징은, 비슷하게 수행된 인공신경망에 비해 더 적은 수의 유닛(unit, node)들 만으로도 복잡한 데이터를 모델링할 수 있게 해준다.
이전의 심층 신경망들은 보통 앞먹임 신경망으로 설계되어 왔지만, 최근의 연구들은 심층 학습 구조들을 순환 신경망(Recurrent Neural Network, RNN)에 성공적으로 적용했다. 일례로 언어 모델링(language modeling) 분야에 심층 신경망 구조를 적용한 사례 등이 있다. 합성곱 신경망(Convolutional Neural Network, CNN)의 경우에는 컴퓨터 비전(computer vision) 분야에서 잘 적용되었을 뿐만 아니라, 각각의 성공적인 적용 사례에 대한 문서화 또한 잘 되어 있다. 더욱 최근에는 합성곱 신경망이 자동음성인식(Automatic Speech Recognition, ASR)을 위한 음향 모델링(acoustic modeling) 분야에 적용되었으며, 기존의 모델들 보다 더욱 성공적으로 적용되었다는 평가를 받고 있다. 심층 신경망은 표준 오류역전파 알고리즘으로 학습될 수 있다. 이때, 가중치(weight)들은 확률적 경사 하강법(stochastic gradient descent)을 통하여 갱신될 수 있다.
여러 분야에서 인공 신경망을 사용한 딥 러닝이 기존 다른 알고리즘의 성능을 크게 뛰어 넘으면서 큰 관심을 받고 있다. 하지만, 현재 주로 사용되는 딥 러닝 방식은 전력 소모 요구량이 크기 때문에 제한적인 자원을 갖고 있는 모바일 분야에 적용되기 어렵다. 이에 따라 저 전력으로 동작할 수 있는 spiking neural networks (SNNs)에 대한 관심이 커지고 있다. SNN은 시냅스 전과 후의 스파이크 시간관계에 따라 시냅스 가중치가 조절되는 STDP 알고리즘을 사용하여 시냅스 가중치를 학습한다. 따라서 SNN은 학습에 사용하는 스파이크의 수에 따른 STDP 알고리즘과 스파이크 간의 시간적 상호 작용에 따라 다양한 구성으로 학습할 수 있다.
인공지능 컴퓨팅 칩인 뉴로모픽(Neuromorphic) 칩은 기존의 반도체 칩이 갖는 전력 확보 문제를 해결할 수 있고 데이터 처리 과정을 통합할 수 있어 차세대 가장 핫 이슈 기술로 주목된다. 이는 인간의 뇌를 모방해 기억과 연산을 대량으로 같이 진행할 수 있도록 하는 것이 뉴로모픽(Neuromorphic) 기술의 핵심이다
또한 신경 과학(Neurology)의 최신 인사이트를 적용함으로써, 고전적인 컴퓨터 보다 인간의 뇌와 같은 기능을 하는 칩을 만드는 것이 목적이기도 하다. 또 뉴로모픽 칩은 상황에 따라 조절될 수 있는 스파이크(전기자극)와 시냅스를 사용하여 뇌의 뉴런들이 어떻게 의사소통하고 학습하는지 모델링한다. 또 이 칩들은 학습된 패턴과 연관성을 대응하여 스스로 구성하고 결정을 내리도록 디자인되었다.
뉴로모픽 칩의 구현 목표는 현재, 가장 강력한 컴퓨터보다 훨씬 뛰어난 인간의 뇌만큼 빠르고 효율적으로 학습하게 하는 것이다. 뉴로모픽 컴퓨팅은 진화하는 실제 데이터에 대한 지속적인 학습과 적응이 실시간으로 필요한 다양한 AI 엣지 디바이스 및 애플리케이션에서 개발이 보다 쉬어지고 현장에서 인텔리전스 및 자동화를 혁신적으로 적용될 것으로 예상된다.
뉴로모픽 컴퓨팅
1세대 AI는 규칙을 기반으로 기존의 논리를 모방하여 협소하게 정의된 특정 문제 영역 안에서 합리적 결론을 도출하였다. 예를 들어, 1세대 AI는 프로세스를 모니터링하고 효율성을 개선하는 용도에 적합했다. 현재 2세대 AI는 비디오 프레임 콘텐츠를 분석하는 데 딥 러닝 네트워크를 사용하는 등 인지 및 감지와 밀접한 관련이 있다. 향후 차세대 AI는 해석 및 자율 적응과 같은 인간의 인식에 대응하는 영역으로 확장될 것이다. 이는 맥락과 상식에 대한 이해가 부족한 상황에선 결정론적 시각에 의존하는 신경망 학습 및 추론 기반 AI 솔루션의 소위 취약한 부분을 극복하는 데 매우 중요한 역할을 합니다. 차세대 AI가 일반적인 인간의 활동을 자동화하기 위해서는 새로운 상황과 개념을 해결할 수 있어야 한다.
3세대 AI를 완성시킬 컴퓨터 과학 연구가 진행중인데, 주요 핵심 영역으로는, 신경 구조 및 인간 두뇌의 작동 방식의 모방과 관련된 뉴로모픽 컴퓨팅, 그리고 자연 세계의 불확실성, 모호함, 모순을 처리하기 위한 알고리즘 방식을 구현하는 확률 컴퓨팅이 있다.
뉴로모픽 컴퓨팅 연구의 핵심
뉴로모픽 연구의 핵심 과제는 인간의 유연성에 필적하며, 인간 두뇌의 에너지 효율성 수준에서 구조화되지 않은 자극으로부터 학습하는 기능을 연구하는 것이다. 뉴로모픽 컴퓨팅 시스템의 컴퓨팅 구성 요소는 논리적으로 뉴런과 유사하다. SNN(Spiking Neural Network)은 생물학적 두뇌에 존재하는 자연적인 신경망을 모방하기 위해 이러한 요소를 배열하는 새로운 모델입니다.
SNN의 각 "뉴런"은 서로 독립적으로 실행되며, 이를 통해 네트워크의 다른 뉴런에 펄스 신호를 전송하고 해당 뉴런의 전기 상태를 직접 변경한다. 신호 자체 내 정보와 타이밍을 인코딩하는 SNN은 자극에 응답하여 인공 뉴런 사이의 시냅스를 동적으로 재매핑함으로써 자연적인 학습 프로세스를 시뮬레이션한다.
뉴로모픽 컴퓨팅(neuromorphic computing) 또는 뉴로모픽 공학(neuromorphic engineering)은 뉴런의 형태를 모방한 회로를 만들어 인간의 뇌 기능을 모사하려는 공학 분야이다. 이렇게 만들어진 회로와 칩(chip)을 뉴로모픽 회로(neuromorphic circuit)와 뉴로모픽 칩(neuromorphic chip)이라고 한다. 인공 신경망이 인간의 신경계를 소프트웨어적으로 모사한 것이라면, 뉴로모픽 칩은 하드웨어적으로 신경세포를 모사한 것이다. 즉, 뉴로모픽 칩이란 생물의 신경계(뇌)의 구조를 모방한 컴퓨터 칩을 말한다.
오직 신경망 연산을 위해 필요한 회로만으로 구성된 컴퓨터 칩이기에 CPU와 GPU를 이용해 신경망 연산을 하는 것보다 전력, 면적, 속도 측면에서 수 백 배 이상의 이득을 볼 수 있다.
물론 구글의 TPU와 같은 DNN이나 CNN과 같은 추상화된 인공 신경망 회로 전용의 ASIC 칩도 존재하나, 보통은 이들을 뉴로모픽 칩으로 구분하지는 않는다. TPU의 구현 방식은 일반적인 DSP와 비슷하며, 많이 연구되는 뉴로모픽 칩들은 보통 이보다 개개의 뉴런이 독립적으로 구현되고, 더 높은 데이터 로컬리티와 보통 이에 기반한 backpropagation 외의 학습 알고리즘을 가진다. Spike-time dependent plasticity (STDP)를 구현하는 스파이킹 뉴럴 네트워크(spiking neural network)가 대표적인 예 중 하나이다. 이러한 방식이 일반적인 중앙 제어식의 DSP보다 궁극적으로는 더 나은 scalability와 높은 성능을 가질 수 있다. 알고리즘 및 회로 구현 등의 어려움으로 인해 아직까지 산업적으로 큰 가시적 성과는 없는 상황이다.
기존의 컴퓨터와 달리 인간의 뇌는 수많은 데이터를 처리하더라도 전력은 거의 발생하지 않는 수준이다. 뉴런과 시냅스를 잇는 구조가 병렬로 이루어졌기 때문이다. 시냅스는 일을 하거나 하지 않을 때 이어졌다 끊어짐으로써 에너지를 절약한다. 기존 컴퓨터는 CPU와 메모리 간 데이터를 처리하는 과정에서 많은 전기를 소모하는데, 뉴로모픽 칩은 뇌의 작동 방식을 모방하여 전력 소모를 줄였다.
Spiking Neural Network (SNN) 알고리즘 모델
도 3은 Spiking Neural Network (SNN) 알고리즘 모델을 이용한 모니터링을 설명하기 위한 도면이다.
SNN은 스파이킹 인공 신경망이라고 호칭할 수 있다. 일반적인 인공 신경망과의 가장 큰 차이는 시간 축이 존재한다는 것이다. 뉴런별로 한 번씩 이전 뉴런들의 값을 받아오는 것으로 끝나지 않고, 시간에 따라 뉴런의 값(내부 상태)가 지속적으로 변한다. 이 때, 네트워크가 단조로워지지 않게 하기 위하여, 또한 실제 두뇌를 보다 더 유사하게 모사하기 위하여 만들어진 개념이 임계치(역치)와 스파이크이다. 뉴런의 내부 상태 값이 역치를 넘어서게 될 때에, 연결되어 있는 뉴런들에게 스파이크를 전달하게 되고, 내부 상태는 초기화된다. 스파이크를 전달받은 뉴런은, 시냅스의 가중치에 따라서 내부 상태가 증가하거나 감소하게 된다. 이 스파이크를 전달받고 다음 뉴런에 또 다른 스파이크가 발생할 수도 있는 일이다. 시간의 범위를 정한 다음, 입력은 "입력 뉴런의 스파이크 빈도"로 주고, "출력 뉴런에 나타난 스파이크의 수"로서 출력을 측정하면 된다.
예를 들어, 도 3에 도시된 센서들이 지진이나 유사한 재해가 일어난 것을 감지하고, 지진이나 재해가 일어난 후에 건물의 상태 검사를 위한 스파이킹 신경망 기반으로 수행할 수 있다. 센서가 획득한 데이터를 처리하여 특징점 추출을 통해 스파이킹 신경망으로부터 학습되어 건물의 구조적 상태를 감지하는 것이다.
Multi-Spiking Neural Network
여기서 두뇌를 보다 더 정밀하게 모사하는 Multi-Spiking Neural Network라는 모델이 있다. 앞서 소개한 모델은 이와 대비되어 Single-Spiking Neural Network라고도 불린다. 이 모델에서 달라진 점은 같은 쌍의 뉴런 사이를 여러 개의 시냅스가 연결하고 있다는 점이다. 각각의 시냅스는 서로 다른 속도를 가지고 있으며, 이에 따라 스파이크 신호가 전달될 때에 나타나는 지연이 달라지게 된다.
PI-MNIST 문제에 대해서는, 기존의 ANN 모델이 99.06%(Goodfellow et al., 2013)의 정확도를 보였고, SNN 모델은 그에 맞먹는 98.77%(Lee et al., 2016)의 정확도를 보였다. N-MNIST 문제에서는 전통적인 ANN에서의 98.3%(Neil and Liu, 2016; 합성곱 신경망(CNN)을 사용하였다.)에 비해 높은 98.66%(Lee et al., 2016)의 정확도를 보였다.
신경망의 구조 자체는 일반적인 ANN과 같다: 간단하게는 입력 층, 히든 층, 출력 층으로 이루어진다. Spiking CNN 등의 복잡한 구조를 그릴 수도 있겠으나 논외로 한다. 각 이웃한 층의 뉴런들은 모두 연결해 주었다. 이제 단위 시간("초"를 단위로 한다)을 타임 스탬프의 형태로 끊어서, 1초 전의 신경망의 상태로부터 새로운 상태를 구성하는 작업을 타임 스탬프의 개수(주로 60개)만큼 반복하게 된다. 신경망의 상태는 아래 이야기할 뉴런의 내부 상태라는 단 한 가지 변수만으로 이루어진다. 다른 모든 인자는 모두 학습될 매개변수(hyperparameter)들이거나, 상수들이다.
각 뉴런은 "내부 상태"(V)라는 변수를 하나씩 가지고 있다. 이 값은 기본적으로 0으로 시작하며, 임계값(threshold; Vth) 이하의 실수 값이다. Vth는 뉴런마다 특정한 값으로 정해져 있으며, 학습 대상 중 하나이다. 단, 입력 뉴런은 이 값을 가지지 않고, 발화하기만 한다. 발화 주기는 해당하는 입력 값에 따라 결정하면 된다(주로 포아송 분포를 이용한다). 입력 뉴런이 아닌 뉴런은 V?th(문턱전압)일 때에 발화하고, 발화한 직후에 V가 Vth만큼 감소한다. 생물학에서의 불응기(한 번 발화한 뉴런이 일정 시간 내에 다시 발화하지 못하는 시기)를 모방해, 한 번 발화된 뉴런은 곧 다시 발화되지 않는다.
V값은 전 뉴런들로부터 스파이크(발화)를 전달받지 않는 한, 지속적으로 (절댓값이) 감소한다. 논문에서는 지수함수의 꼴로 V를 감소시키고 있으며, 1초마다 e1*?*배 감소하게 된다. 만약 전 층의 뉴런으로부터 시냅스를 통해 스파이크가 전달된다면, V는 시냅스의 가중치 wij만큼 증가하게 된다. w의 부호에 따라 V의 증감 여부가 결정된다.
이와 같이, SNN은 뉴런(neuron)의 막 전위(membrane potential)가 문턱 전압(threshold voltage) 보다 높을 때만 발화 (fire)하고, 발화된 스파이크(spike)를 통해 시냅스 (synapse) 간의 정보를 전달하기 때문에 이벤트 기반(event-driven)으로 동작할 수 있어 다른 인공 신경망에 비해 저 전력 동작이 가능하다. SNN에서는 뉴런과 시냅스가 미분이 안 되기 때문에 경사 강하법과 오차 역전파 방법을 사용하여 SNN을 학습할 수 없다. SNN의 학습 방법으로 가장 널리 알려진 방법이 STDP (Spiking Timing Dependent Plasticity)이다. STDP는 시냅스 전(pre-synaptic) 스파이크와 시냅스 후(post-synaptic) 스파이크의 시간적 관계를 통해 시냅스 가중치(weight)를 학습하는 방법이다. 따라서 STDP 학습에서 고려하는 시냅스 전/후 스파이크의 수와 스파이크 간의 시간적 상호 작용(spike temporal interaction)이 SNN의 학습에 영향을 미치게 된다.
웨어러블 디바이스 같은 비침습 방식의 센서를 이용한 생체 신호 측정을 통해 데이터를 수집하고 심층 신경망 모델과 기계 학습을 이용하여 수집된 데이터에 대하여 실시간 모니터링을 통하여 수면 질환들을 감지하는 기술들이 많이 연구되고 있다. 그러나 웨어러블 디바이스로부터 실시간으로 측정되어 축적되는 뇌파 데이터들에 대해 메모리 부족 문제 때문에 측정 데이터들은 다른 엣지 디바이스(edge device)로 전송하여 모니터링을 할 필요가 있다. 뿐만 아니라 데이터 전송 단계에서 일어나는 오버헤드 역시 존재하기 때문에 효율적으로 데이터를 압축하여 전송하는 방법이 필요하다. 측정된 생체 데이터는 엣지 디바이스에서 모니터링을 위해 처리할 필요가 있다. 그러나 모니터링에 많이 사용되는 방법은 심층 신경망을 이용하여 모니터링 하는 방법이다. 심층 신경망을 이용한 모니터링 방법은 몽유병 여부를 정확하게 감지할 수 있지만, 높은 계산량으로 실시간으로 들어오는 데이터를 모두 처리하는 데 부하가 크고 사용되는 전력이 매우 높기 때문에 엣지 디바이스에서 사용하기에 적합하지 않다.
웨어러블 디바이스 같은 엣지 환경은 메모리가 제한적이기 때문에 실시간으로 측정되는 뇌파(EEG) 데이터에 대해서 다른 디바이스로의 전송이 필수적이다. 또한 엣지 디바이스는 웨어러블 디바이스와 같은 외부기기가 실시간으로 측정하는 데이터에 대해 지속적으로 모니터링을 하기 위해서는 높은 연산량을 요구하지 않는 저전력 기반의 인공지능 모델을 사용하는 것이 중요하다. 엣지 디바이스는 데이터를 발생하는 기기로 데이터를 생성 또는 수집하는 사물 인터넷(IoT) 센서부터 비디오/감시 카메라, 인터넷에 연결된 가전 기기, 스마트폰과 같은 스마트 기기 등을 포함한다.
본 발명에서는 효율적인 데이터 전송을 위한 압축 센싱 기반의 뇌파 데이터 압축 방법 및 스파이킹 신경망을 이용한 저전력으로 실시간 몽유병을 감지하기 위한 방법을 제안하고자 한다.
도 4는 본 발명에 따른 엣지 디바이스(400)의 기능을 설명하기 위한 블록도를 예시한 도면이다.
도 4를 참조하면, 엣지 디바이스(400)는 프로세서(410), 무선통신부 (420), 메모리(430) 및 디스플레이부(440)을 포함할 수 있다.
프로세서(410)는 본 발명에 따른 Spiking Neural Networks (SNN) 알고리즘 모델에 따라 입력 데이터에 대해 연산처리(컴퓨팅)를 하여 결과를 추론하는 등의 기능을 수행한다. 메모리(430)는 프로세서(410)가 결과를 추론하기 위해 필요한 정보, 추론된 결과에 대한 정보 등 뉴로모픽 컴퓨팅을 위해 필요한 다양한 정보를 저장하는 저장한다. 무선통신부(420)는 외부 기기와 무선으로 데이터를 송수신하도록 구비된다.
도 5 및 도 6은 본 발명에 따른 엣지 디바이스(400)와 외부 기기(500)(이하, 웨어러블 디바이스라고 호칭함)에서 몽유병을 감지하기 위한 과정을 설명하기 위한 예시도이다.
도 5에 도시된 웨어러블 디바이스(500)는 사용자의 머리에 착용된 디바이스로서 EEG(Electroencephalogram) 센서가 부착되어 EEG 신호, 즉 뇌파 신호를 측정 혹은 센싱한다. 웨어러블 디바이스(500)는 측정된 혹은 센싱된 EEG 신호를 소정의 압축 센싱(Compressive sensing) 알고리즘 모델을 적용하여 압축하고, 송신기(Transmitter)를 통해 엣지 디바이스(400)로 전송한다. 압축 센싱 알고리즘은 측정된 EEG 아날로그 신호를 디지털 신호로 변환하기 위한 샘플링 하는 방법중의 하나로 기존에 주로 사용되던 아날로그 신호에 일정한 간격의 점을 찍어 샘플링하는 나이키스트-샤논 샘플링 (Nyquist-Shannon sampling) 방법과는 다르게 아날로그 신호에 랜덤하게 점을 찍어 샘플링하는 방법이다. 이러한 랜덤성 때문에 압축 센싱은 기존의 샘플링 방법에 비해서 적은 수의 측정값으로 표현이 가능하여 더 좋은 압축률을 보여준다. 본 발명에서 제안하는 몽유병 감지 방법의 경우 특성상 웨어러블 디바이스(500)가 사람이 수면을 취하는 동안 데이터가 계속 측정되기 때문에 엣지 디바이스(400)로 지속적인 전송을 필요로 하는데, 압축된 EEG 신호의 데이터는 기존 방법보다 더 적은 오버헤드로 전송할 수 있게 해준다.
도 5에 도시된 바와 같이 웨어러블 디바이스(500)가 엣지 디바이스(400)로 무선으로 IoT 통신 등을 통해 다이렉트로 압축된 EEG 신호에 대한 정보를 전송할 수 있고, 도 6에 도시된 바와 같이 웨어러블 디바이스(500)가 압축된 EEG 신호에 대한 정보를 기지국 등의 네트워크를 통해 엣지 디바이스(400)로 전송하는 예를 도시하였다. 웨어러블 디바이스(500)는 측정된 EEG 신호를 벡터화하여 랜덤하게 생성한 행렬과의 행렬 연산을 통해 신호를 압축하여 전송한다.
도 5 및 도 6을 참조하면, 엣지 디바이스(400)의 무선통신부(420)는 웨어러블 디바이스(500)로부터 압축된 EEG(Electroencephalogram) 신호를 수신한다. 프로세서(410)는 압축된 EEG 신호를 복원 알고리즘 등을 이용하여 본래의 EEG 신호로 복원(Reconstruction)한다. 프로세서(410)는 복원된 EEG 신호를 전처리한 이후에 전처리된 신호를 이용하여 사전에 학습되어 엣지 디바이스에 임베딩된 SNN 모델(430)을 통해 EEG 신호를 분석하여 몽유병인지 아닌지를 판단한다. 프로세서(410)는 복원된 EEG 신호를 학습된 Recurrent SNN(Spiking Neural Network) (알고리즘) 모델(430)의 입력 뉴런층(혹은 input layer)에 입력한다.
프로세서(410)는 입력 뉴런층에서 스파이킹 인코딩을 수행하여 시공간(Spatial-temporal) 스파이크 특징이 생성한다. 연속적인 다채널 신호 데이터를 이산적인 스파이크 신호 데이터로 변환하면서 정보의 손실을 막기 위해 새로운 시간축을 부여하였기 때문인데, 이러한 스파이크 신호 데이터 역시 시계열 데이터의 종류이기 때문에 이러한 시간 신호를 처리하기 위해서 Recurrent SNN 구조를 사용하는 것이 바람직하다. 프로세서(410)는 생성된 시공간 스파이크 특징을 상기 학습된 Recurrent SNN 모델을 적용하여 몽유병 여부에 대한 결과를 출력한다. 상술한바와 같이 특히, 프로세서(410)는 복원된 EEG 신호를 소정의 학습된 Recurrent SNN(Spiking Neural Network) (알고리즘) 모델(430)에 적용하여 처리한다.
도 7은 본 발명에서 제안하는 Recurrent SNN 모델 구조를 예시한 도면이다.
도 7을 참조하면, Recurrent SNN 모델 구조는 랜덤한 연결성을 가지고 초기화가 된다. 즉 모든 뉴런과 연결되는 fully connected 방식이 아니며, recurrent한 특징을 가지기 때문에 본 발명에서와 같이 연속적으로 수면자의 뇌파를 측정하여 연속적이 뇌파 데이터가 필요한 경우에 적합하다. 또한 기존 SNN에서의 비지도 학습방법 대신에 DNN에서 사용하는 역전파 학습 알고리즘을 사용한다. 다음 수학식 1은 기존 SNN에서의 각 뉴런층에서의 출력값을 나타낸다.
여기서, S(t)는 기존 SNN 모델에서의 각 뉴런층에서의 출력값이다.
Recurrent SNN 모델의 각 뉴런에서는 수학식 1과 같이 출력(output)이 0 또는 1인 step function을 사용하기 때문에 이산적인 출력값으로 인해 미분이 불가능하여 역전파 기반의 학습 알고리즘을 사용할 수가 없다. 이러한 점을 해결하기 위해서 본 발명에서는 Recurrent SNN 모델에서 Step function을 다음 수학식 2과 같이 연속적인 함수로 근사하여 역전파 학습 알고리즘을 적용한다.
여기서, S(t)는 Recurrent SNN 모델에서 각 뉴런층에서의 출력값, x는 각 뉴런층에서의 입력값이다.
메모리(430)는 몽유병 여부에 대한 결과를 저장한다. 디스플레이부(440)는 프로세서(410)의 제어에 따라 몽유병 여부에 대한 결과를 사용자가 확인할 수 있도록 디스플레이한다.
도 8은 본 발명에 따른 몽유병 감지를 위한 recurrent SNN 모델(430)을 예시한 도면이다.
프로세서(410)는 최종적으로 복원된 신호를 recurrent SNN 모델(430)에서 일 예로서 3개의 레이어를 가지는 학습된 스파이킹 신경망을 이용하여 몽유병 여부를 감지한다. 딥러닝의 특성 상 알고리즘을 훈련시키기 위해서는 많은 데이터를 필요로 하기 때문에 지속적으로 생체신호가 측정되어 들어오는 웨어러블 디바이스 환경에서는 적합할 수 있지만, 딥러닝 모델은 데이터를 학습시키기 위해 사용되는 전력 소모량이 상당히 높고 무겁기 때문에 웨어러블 디바이스에서 직접적으로 사용하기에 적합하지 않다. 본 발명에서 제안하고자 하는 사항은 딥러닝 모델의 0.001배 수준에 해당하는 전력 소모량만을 이용하여 효율적으로 수면 단계 분류를 통해 몽유병 감지가 가능하다는 장점이 있다.
프로세서(410)는 recurrent SNN 모델(430)의 추론을 통해 몽유병 수면 질환 여부를 감지한다. 또한 실시간으로 모니터링이 가능하고 적은 연산량으로 전력 소비량을 줄 일 수 있기 엣지 디바이스(400) 환경에도 매우 적합하다. 이러한 에너지 효율성의 관점에서 스파이킹 신경망을 이용한 추론 방법은 딥러닝 모델보다 훨씬 더 적은 전력 소비량 만으로도 실시간으로 들어오는 뇌파 데이터에 대해 몽유병 여부의 추론이 가능하다.
사용자가 몽유병일 경우 수면 상태일 때 하는 행동은 기억할 수 없으며, 사용자의 위험을 초래할 수 있기 때문에 시스템적인 측면에서의 효과를 살펴봤을 때 사용자가 수면상태 일 때 웨어러블 디바이스로부터 측정된 뇌파 데이터를 지인이나 가족 같은 사용자가 가지고 있는 무선 디바이스로 전송하여 실시간 모니터링을 함으로써 사용자가 무의식적으로 하는 위험한 행동들을 방지할 수 있다.
도 9는 기존의 인공지능 모델(CNN)과 본 발명에서 사용한 Recurrent SNN 모델과의 전력 소비와 정확도에 대한 시뮬레이션 결과를 도시한 도면이다.
도 9를 참조하면, 본 발명에서 사용한 Recurrent SNN 모델, 기존 딥러닝 CNN(Convolutional Neural Network) 모델을 통해 몽유병 감지/진단에 대한 정확도를 측정한 결과, 본 발명에서 사용한 Recurrent SNN 모델의 정확도는 79%로 CNN 모델의 81%와 거의 차이가 없을 정도로 정확도가 높았고, 전력의 경우는 CNN 모델의 0.0074 정도만 소비되어 전력 효율이 매우 향상되었음을 알 수 있고, 엣지 디바이스에 적용될 수 있음이 증명되었다.
이상에서 설명한 본 발명에 따른 몽유병 감지 방법에 따라 정확도가 높으면서도 저전력으로 실시간으로 몽유병을 감지할 수 있게 되었다.
이상에서 설명된 실시예들은 본 발명의 구성요소들과 특징들이 소정 형태로 결합된 것들이다. 각 구성요소 또는 특징은 별도의 명시적 언급이 없는 한 선택적인 것으로 고려되어야 한다. 각 구성요소 또는 특징은 다른 구성요소나 특징과 결합되지 않은 형태로 실시될 수 있다. 또한, 일부 구성요소들 및/또는 특징들을 결합하여 본 발명의 실시예를 구성하는 것도 가능하다. 본 발명의 실시예들에서 설명되는 동작들의 순서는 변경될 수 있다. 어느 실시예의 일부 구성이나 특징은 다른 실시예에 포함될 수 있고, 또는 다른 실시예의 대응하는 구성 또는 특징과 교체될 수 있다. 특허청구범위에서 명시적인 인용 관계가 있지 않은 청구항들을 결합하여 실시예를 구성하거나 출원 후의 보정에 의해 새로운 청구항으로 포함시킬 수 있음은 자명하다.
본 발명에서 프로세서(310)는 컨트롤러(controller), 마이크로 컨트롤러(microcontroller), 마이크로 프로세서(microprocessor), 마이크로 컴퓨터(microcomputer), 등으로도 호칭될 수 있다. 한편, 프로세서(310)는 하드웨어(hardware) 또는 펌웨어(firmware), 소프트웨어, 또는 이들의 결합에 의해 구현될 수 있다. 하드웨어를 이용하여 본 발명의 실시예를 구현하는 경우에는, 본 발명을 수행하도록 구성된 ASICs(application specific integrated circuits) 또는 DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays) 등이 프로세서(310)에 구비될 수 있다.
본 발명은 본 발명의 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상기의 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다.

Claims (13)

  1. 몽유병을 감지하는 엣지 디바이스에 있어서,
    외부 기기로부터 압축된 EEG(Electroencephalogram) 신호를 수신하는 무선통신부; 및
    상기 압축된 EEG 신호를 복원하여 복원된 EEG 신호를 학습된 Recurrent SNN(Spiking Neural Network) 모델의 입력 뉴런층에 입력하고,
    상기 입력 뉴런층에서 스파이킹 인코딩을 수행하여 시공간 스파이크 특징이 생성하며,
    상기 생성된 시공간 스파이크 특징을 상기 학습된 Recurrent SNN 모델을 적용하여 몽유병 여부에 대한 결과를 출력하는 프로세서를 포함하되,
    상기 학습된 Recurrent SNN 모델은 사전에 정의한 근사함수에 기초하여 역전파(back propagation) 학습 알고리즘을 적용하여 학습되고,
    상기 사전에 정의한 근사함수는 다음 수학식 1로 나타낼 수 있으며,
    [수학식 1]

    여기서, S(t)는 각 뉴런층에서의 출력값이고 x는 각 뉴런층에서의 입력값인엣지 디바이스.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 제 1항에 있어서,
    상기 프로세서의 제어에 따라 상기 몽유병 여부에 대한 결과를 사용자가 확인할 수 있도록 디스플레이되는 디스플레이부를 더 포함하는, 엣지 디바이스.
  6. 제 1항에 있어서,
    상기 외부 기기는 사용자의 뇌에 착용된 웨어러블 디바이스에 해당하는, 엣지 디바이스.
  7. 제 6항에 있어서,
    상기 무선통신부는 상기 압축된 EEG 신호를 상기 외부기기로부터 다이렉트로 수신하거나 또는 네트워크를 통해 수신하는, 엣지 디바이스.
  8. 삭제
  9. 엣지 디바이스가 몽유병을 판단하는 방법에 있어서,
    Recurrent SNN(Spiking Neural Network) 모델을 사전에 정의한 근사함수에 기초하여 역전파(back propagation) 학습 알고리즘을 적용하여 학습시키는 단계;
    외부 기기로부터 압축된 EEG(Electroencephalogram) 신호를 수신하는 단계;
    상기 압축된 EEG 신호를 복원하는 단계;
    복원된 EEG 신호를 상기 학습된 Recurrent SNN(Spiking Neural Network) 모델의 입력 뉴런층에 입력하는 단계;
    상기 입력 뉴런층에서 스파이킹 인코딩을 수행하여 시공간 스파이크 특징이 생성하고 단계; 및
    상기 생성된 시공간 스파이크 특징을 상기 학습된 Recurrent SNN 모델을 적용하여 몽유병 여부에 대한 결과를 출력하는 단계를 포함하되,
    상기 사전에 정의한 근사함수는 다음 수학식 1로 나타낼 수 있으며,
    [수학식 1]

    여기서, S(t)는 각 뉴런층에서의 출력값이고 x는 각 뉴런층에서의 입력값인, 몽유병을 판단하는 방법.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 제 9항에 기재된 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020220164099A 2022-11-30 2022-11-30 몽유병을 감지하는 엣지 디바이스 Active KR102817306B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220164099A KR102817306B1 (ko) 2022-11-30 2022-11-30 몽유병을 감지하는 엣지 디바이스
PCT/KR2023/016470 WO2024117546A1 (ko) 2022-11-30 2023-10-23 몽유병을 감지하는 엣지 디바이스

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220164099A KR102817306B1 (ko) 2022-11-30 2022-11-30 몽유병을 감지하는 엣지 디바이스

Publications (2)

Publication Number Publication Date
KR20240081587A KR20240081587A (ko) 2024-06-10
KR102817306B1 true KR102817306B1 (ko) 2025-06-05

Family

ID=91324318

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220164099A Active KR102817306B1 (ko) 2022-11-30 2022-11-30 몽유병을 감지하는 엣지 디바이스

Country Status (2)

Country Link
KR (1) KR102817306B1 (ko)
WO (1) WO2024117546A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN120345873B (zh) * 2025-06-25 2025-09-16 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 基于梯度记忆库的脑电信号处理方法、系统、装置及介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101771835B1 (ko) 2015-01-14 2017-08-25 서울대학교산학협력단 생체신호기반 수면 상호영향 분석방법
US20180103917A1 (en) * 2015-05-08 2018-04-19 Ngoggle Head-mounted display eeg device
KR20170135563A (ko) * 2016-05-31 2017-12-08 한국과학기술원 웨어러블 디바이스 형태의 뉴로모픽 기기 및 상기 뉴로모픽 기기를 이용한 생체 정보 처리 방법
KR20180135505A (ko) * 2017-06-12 2018-12-21 주식회사 라이프사이언스테크놀로지 패치형전극을 이용한 수면상태 판단장치
KR102383921B1 (ko) * 2019-08-29 2022-04-08 고려대학교 산학협력단 사용자 맞춤형 수면 관리 방법 및 시스템
CA3154659A1 (en) * 2019-09-18 2021-03-25 Bioxcel Therapeutics, Inc. Systems and methods for detection and prevention of emergence of agitation

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Ziyi Zhao et al. An Automatic Sleep Stage Classification Approach Based on Multi-Spike Supervised Learning, 2019 12th ISCID. (2019.12.14.) 1부.*

Also Published As

Publication number Publication date
WO2024117546A1 (ko) 2024-06-06
KR20240081587A (ko) 2024-06-10

Similar Documents

Publication Publication Date Title
CN108764059B (zh) 一种基于神经网络的人体行为识别方法及系统
Yu et al. A multi-layer parallel lstm network for human activity recognition with smartphone sensors
KR20210085867A (ko) 사용자의 혈압을 추정하기 위한 장치 및 방법
Li et al. Sensor-based fall detection using a combination model of a temporal convolutional network and a gated recurrent unit
CN117272227B (zh) 一种多模态跨被试情绪识别方法、系统、电子设备及介质
CN109726662A (zh) 基于卷积和循环组合神经网络的多类别人体姿态识别方法
Han et al. GraphConvLSTM: Spatiotemporal learning for activity recognition with wearable sensors
KR102699988B1 (ko) 뇌파 신호와 얼굴 이미지로부터 감정 및 스트레스 지수를 추정하는 시스템
KR20240098407A (ko) 재보정을 이용한 혈압 측정 장치
KR102817306B1 (ko) 몽유병을 감지하는 엣지 디바이스
KR102662987B1 (ko) 손톱주름 모세혈관 속 백혈구의 수를 산출하기 위한 뉴로모픽 컴퓨팅 장치
Berdjouh et al. Pelican Gorilla troop optimization based on Deep feed forward neural network for human activity abnormality detection in smart spaces
Malcangi et al. Evolving fuzzy-neural paradigm applied to the recognition and removal of artefactual beats in continuous seismocardiogram recordings
Gayatri et al. Diabetic Foot Ulcer Identification using Machine Learning
Verma et al. An Efficient AI and IoT Enabled System for Human Activity Monitoring and Fall Detection
KR102535635B1 (ko) 뉴로모픽 컴퓨팅 장치
KR102826054B1 (ko) 다중 uwb 레이더 센서 기반 뉴로모픽 장치
KR102870000B1 (ko) Emg와 dvs를 이용한 snn 기반 팔 동작 모방 로봇 팔 제어 방법
KR102813867B1 (ko) Uwb 레이더 신호 기반 snn 모델을 이용하여 사용자의 생체 정보를 추출하기 위한 모바일 디바이스
KR20240080592A (ko) 신체 이식형 의료 디바이스가 실시간으로 이상을 감지하기 위한 방법
Amin et al. Hybrid spiking neural model for clustering smart environment activities
KR20230099508A (ko) 얼굴 이미지로부터 생체신호를 추정하는 장치
KR20250061105A (ko) Uwb 레이더 기반 뉴로모픽 장치
Parmanto et al. Detection of hemodynamic changes in clinical monitoring by time-delay neural networks
KR20250099492A (ko) 이미지 기반으로 동작과 감정을 동시에 검출할 수 있는 장치

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20221130

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20250116

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
GRNT Written decision to grant
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20250602

PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20250602

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20250602

End annual number: 3

Start annual number: 1

PG1601 Publication of registration