KR102078765B1 - 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치 - Google Patents

복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치 Download PDF

Info

Publication number
KR102078765B1
KR102078765B1 KR1020190109907A KR20190109907A KR102078765B1 KR 102078765 B1 KR102078765 B1 KR 102078765B1 KR 1020190109907 A KR1020190109907 A KR 1020190109907A KR 20190109907 A KR20190109907 A KR 20190109907A KR 102078765 B1 KR102078765 B1 KR 102078765B1
Authority
KR
South Korea
Prior art keywords
motion
user
motion detection
sensor data
learning model
Prior art date
Application number
KR1020190109907A
Other languages
English (en)
Inventor
신민용
신성준
유흥종
전진홍
최윤철
Original Assignee
주식회사 바딧
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 바딧 filed Critical 주식회사 바딧
Priority to KR1020190109907A priority Critical patent/KR102078765B1/ko
Application granted granted Critical
Publication of KR102078765B1 publication Critical patent/KR102078765B1/ko
Priority to PCT/KR2020/007435 priority patent/WO2021045354A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/038Control and interface arrangements therefor, e.g. drivers or device-embedded control circuitry
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning

Abstract

본 발명의 다양한 실시 예는 복수의 센서데이터의 차원 축소를 이용한 사용자 동작 검출 방법에 관한 것이다. 본 발명의 다양한 실시 예에 따르면, 복수의 센서데이터의 차원 축소를 이용한 사용자 동작 검출 방법은, 상기 사용자 동작과 관련된 상기 복수의 센서데이터를 검출하는 단계; 상기 센서부에서 검출된 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 단계; 상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 출력하는 단계; 및 상기 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인하는 단계;를 포함할 수 있다. 다른 실시 예들도 가능할 수 있다.

Description

복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치{METHOD FOR DETERMINING A USER MOTION DETECTING FUNCTION AND DETECTING A USER MOTION USING DIMENSIONALITY REDUCTION OF A PLULARITY OF SENSOR DATA AND DEVICE THEREOF}
본 발명은 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치에 관한 것으로, 보다 자세하게는 차원 축소 및 딥 러닝에 기반한 학습 모델을 이용하여 다차원의 센서데이터를 효율적으로 처리함으로써 미리 사용자의 동작을 검출할 수 있는 동작 검출 함수를 결정하고 사용자 동작을 확인할 수 있는 방법 및 장치에 관한 것이다.
전자 장치는 다양한 센서 기능이 추가됨에 따라 사용자의 음성 및 사용자의 동작을 실시간으로 인식할 수 있다. 이러한 사용자 음성 및 사용자 동작을 인식하는데 있어서, IMU(Inertial Measurement Unit) 센서가 사용되는데, 이러한 IMU 센서는 가속도 센서, 자이로 센서 및 지자기 센서 등으로 구성될 수 있고, 3축 자이로 센서를 이용해 피치, 롤 값등 각도 정보를 실시간으로 추출하고, 3축 가속도 센서를 이용하여 속도 방향을 추적하고, 지자기 센서를 이용하여 지구의 자기장 값을 추적해 동작 방향을 추적할 수 있다.
이러한 IMU 센서를 이용하여 검출된 센서데이터들은 서로 다른 정보를 가진 다차원(서로 다른 센서 및 축) 데이터들이므로 이를 활용하여 사용자의 음성 및 사용자의 동작을 분석할 경우 연산이 복잡해지고 분석의 정밀도가 떨어지는 문제점이 있었다.
KR 10-2019-0060625
본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로서, 차원 축소 및 딥러닝에 기반한 동작 확인 학습모델을 이용하여 사용자 음성 및 동작을 효율적으로 분석하는 방법 및 장치를 제공하는데 그 목적이 있다.
본 발명의 다양한 실시 예에 따르면, 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법은, 상기 사용자 동작과 관련된 상기 복수의 센서데이터를 학습데이터로서 획득하는 단계; 상기 획득한 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 단계; 및 상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 상기 사용자 동작을 검출하기 위한 함수로써 결정하는 단계;를 포함할 수 있다.
본 발명의 다양한 실시 예에 따르면, 복수의 센서데이터의 차원 축소를 이용한 사용자 동작 검출 방법은, 상기 사용자 동작과 관련된 상기 복수의 센서데이터를 검출하는 단계; 상기 센서부에서 검출된 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 단계; 상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 출력하는 단계; 및 상기 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인하는 단계;를 포함할 수 있다.
본 발명의 다양한 실시 예에 따르면, 복수의 센서데이터의 차원 축소를 이용한 사용자 동작 검출 장치는, 상기 사용자 동작과 관련된 상기 복수의 센서데이터를 검출하는 센서부; 상기 센서부에서 검출된 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 차원 축소부; 상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 출력하는 딥러닝부; 및 상기 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인하는 동작 분류부;를 포함할 수 있다.
상기와 같은 본 발명에 따르면, 아래와 같은 다양한 효과들을 가진다.
본 발명은 복수의 센서데이터를 차원 축소함으로써 사용자 동작 확인의 연산 처리 속도를 높일 수 있다.
또한, 본 발명은 차원 축소한 동작 검출 함수에 기 구축된 동작 확인 학습모델을 적용함으로써 사용자 동작 확인의 정확도를 높일 수 있다.
도 1은 본 발명의 일 실시 예에 따른 사용자 동작 검출 장치를 나타낸 블록도다.
도 2는 본 발명의 일 실시 예에 따른 제어부의 처리 흐름을 나타낸 블록도다.
도 3은 본 발명의 일 실시 예에 따른 복수의 센서데이터의 차원 축소 및 학습 모델을 이용하여 사용자의 동작을 확인하기 위한 동작 검출 함수를 결정하는 방법을 나타낸 흐름도다.
도 4는 본 발명의 일 실시 예에 따른 복수의 센서데이터의 차원 축소 및 학습 모델을 이용하여 사용자 동작을 검출하는 방법을 나타낸 흐름도다.
이하 본 발명의 다양한 실시 예를 첨부된 도면을 참조하여 상세히 설명한다. 그리고, 본 발명의 실시 예를 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략한다. 그리고 후술되는 용어들은 본 발명의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명의 바람직한 실시예에 대하여 첨부한 도면을 참조하여 설명하면 다음과 같다. 그러나 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예는 본 발명의 개시가 완전하도록 하며 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이다.
본 문서의 다양한 실시예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media))에 저장된 명령어를 포함하는 소프트웨어(예: 프로그램)로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시예들에 따른 전자 장치(예: 서버)를 포함할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
일시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.
도 1은 본 발명의 일 실시 예에 따른 사용자 동작 검출 장치를 나타낸 블록도다. 도 2는 본 발명의 일 실시 예에 따른 제어부의 처리 흐름을 나타낸 블록도다.
도 1 및 도 2를 참조하면, 본 발명의 일 실시 예에 따른 전자 장치(100)은 네트워크를 통해 외부 전자 장치(200)와 통신 연결될 수 있다. 네트워크는 무선 네트워크 및 유선 네트워크를 포함할 수 있다. 예를 들어, 상기 네트워크는 근거리 통신 네트워크(예: 블루투스, WiFi direct 또는 IrDA(infrared data association)) 또는 원거리 통신 네트워크(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN))일 수 있다.
일 실시 예에서, 전자 장치(100)는 사용자의 신체 중 적어도 일부에 착용되는 웨어러블 장치(wearable device)이거나 사용자가 휴대하는 전자 장치(예: 스마트폰)일 수 있다.
일 실시 예에서, 외부 장치(200)는 사용자의 동작 확인 결과를 수신할 수 있고, 사용자의 동작과 관련된 데이터를 빅데이터화하여 사용자의 상태를 분석 및 저장할 수 있는 관리용 장치일 수 있다.
일 실시 예에서, 외부 장치(200)는 예를 들면, 스마트폰(smartphone), 서버(server), 태블릿 PC(tablet personal computer), 데스크탑 PC (desktop PC), 랩탑 PC(laptop PC), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 또는 카메라 중 적어도 하나를 포함할 수 있다.
일 실시 예에서, 전자 장치(100)는 센서부(130)에서 수집된 센서데이터를 이용하여 전자 장치(100)를 착용한 사용자의 동작을 검출할 수 있다. 이를 위해, 전자 장치(100)는 제어부(110), 데이터베이스(120) 및 센서부(130)를 포함할 수 있다.
일 실시 예에서, 데이터베이스(120)는 센서부(130)에서 감지된 복수의 센서 데이터, 딥러닝부(112)의 학습 결과 및 사용자의 특정 동작 검출에 최적화된 동작 검출 함수, 동작 분류부(113)의 동작 확인 결과 등을 빅데이터화여 저장할 수 있다.
일 실시 예에서, 센서부(130)는 가속도 센서(acceleration sensor), 자이로 센서((gyro sensor) 및 지자기 센서를 포함할 수 있다. 예컨대, 센서부(130)는 3축의 가속도 센서, 자이로 센서 및 지자기 센서로 구성된 IMU(inertial measurement unit)모듈일 수 있다. 한편, 가속도 센서, 자이로 센서 및 지자기 센서는 각각 복수개가 구비될 수 있다. 복수의 센서데이터는 가속도 센서의 3축 데이터, 자이로 센서(geomagnetic sensor)의 3축 데이터 및 지자기 센서의 3축 데이터를 포함할 수 있다. 즉, 복수의 센서데이터는 9 차원 센서일 수 있다. 여기서, 복수의 센서데이터와 다차원의 센서데이터는 동일한 의미로 혼용될 수 있다.
일 실시 예에서, 가속도 센서는 3축(x, y, z축) 가속도를 측정할 수 있다. 예컨대, 가속도 센서는 전자 장치(100)의 3축읠 기준으로 가속도를 측정할 수 있다. 가속도 센서는 시간 별로 각 축 방향 별 가속도를 측정하고 그 측정값을 출력할 수 있다. 여기서 가속도 센서는 소정의 시간 간격으로 측정한 각 축 방향 별 가속도를 출력할 수 있고, 예를 들면 i 번째 시간 인덱스에서 x, y, z축 방향의 가속도를 측정하여 axi, ayi, azi를 출력할 수 있다. 여기서 z 축 방향은 중력 방향으로, x, y축 방향은 z 축 방향과 직교하면서 서로 직교하는 축 방향으로 정의될 수 있다.
일 실시 예에서, 자이로 센서는 3축 각속도를 측정할 수 있다. 예컨대, 자이로 센서는 전자 장치(100)의 3축을 기준으로 한 회전을 나타내는 3축의 각속도를 측정할 수 있다.
일 실시 예에서, 지자기 센서는 3축 방위각(지자기 측정할 수 있다. 예컨대, 지자기 센서는 지구 자기장을 위해서 전자 장치(100)의 방위각을 측정할 수 있다.
일 실시 예에서, 센서부(130)는 중력센서 등 다른 센서들도 더 포함할 수 있고, 다양한 센서데이터를 수집할 수 있다.
일 실시 예에서, 제어부(110)는 전자 장치(100)에 포함된 각 구성들의 동작들을 전반적으로 제어할 수 있다. 이를 위해 제어부(110)는 각각의 구성들과 내부 네트워크를 통해 데이터 통신을 수행할 수 있다.
일 실시 예에서, 제어부(110)는 차원 축소부(111), 딥러닝부(112) 및 동작 분류부(113)를 포함할 수 있다.
일 실시 예에서, 제어부(110)는 센서부(130)로부터 복수의 센서데이터를 수신할 수 있다. 복수의 센서데이터는 가속도 센서의 3축 센서데이터, 자이로 센서의 3축 센서데이터 또는 지자기 센서의 3축 센서데이터 중 적어도 하나를 포함할 수 있다. 또한, 가속도 센서, 자이로 센서 및 지자기 센서는 각각 2개 이상 구비될 수 있으므로 복수의 센서데이터는 9개보다 더 많을 수 있고, 이와 달리 어느 하나의 센서가 생략될 경우 복수의 센서데이터는 9개보다 적을 수 있다.(예: 6축 데이터)
일 실시 예에서, 차원 축소부(111)는 센서부(130)에서 검출된 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출할 수 있다. 이는 센서데이터의 처리 연산속도를 높이기 위해 수행되는 과정일 수 있다. 센서부(130)에서 검출된 복수의 센서데이터는, 예를 들어, 센서가 6축 센서일 경우 6차원 데이터일 수 있고, 센서가 9축 센서일 경우 9차원 데이터일 수 있다. 따라서, 사용자의 동작을 확인하기 위해 분석해야할 센서데이터가 고차원 데이터일 경우 그만큼 분석에 많은 시간이 걸리게 된다. 따라서, 차원 축소부(111)는 복수의 센서데이터의 차원을 축소할 수 있다.
일 실시 예에서, 복수의 센서데이터는 각각 시계열 함수일 수 있고, 복수의 시계열 함수는 하나 이상의 변수로 이루어진 다항식일 수 있다. 복수의 동작 검출 함수는 상기 복수의 시계열 함수를 다항식 조합을 통해 도출된 함수일 수 있다.
일 실시 예에서, 다항식 조합 중 하나로써 복수의 센서데이터 각각의 그래프들에 다중회귀분석, 다항식회귀분석 중 어느 하나를 적용하여 복수의 동작 검출 함수를 산출할 수 있다.
한편, 복수의 센서데이터 각각의 시계열 함수에 다중회귀분석을 적용하여 복수의 시계열 함수에 대응하는 복수의 회귀식을 각각 도출하고, 도출한 복수의 회귀식을 다양하게 조합함으로써 복수의 동작 검출 함수를 도출할 수 있다.
한편, 차원 축소부(111)는 상기 분석방법 이외에도 복수의 센서데이터를 주성분 분석(Principal Component Analysis)을 사용하여 데이터의 차원을 축소할 수 있다. 주성분 분석은 데이터의 특징을 잘 나타내는 고유벡터들과 고유값들을 추출하고, 고유벡터들 중 특징 성분이 높은 값들만을 추출함으로써 차원(dimension)을 줄이되 원본과의 차이를 최소화하는 기법이다. 구체적으로 데이터를 잘 표현할 수 있는 주성분 축을 고유벡터와 고유값을 기반으로 구하고, 주성분 축에 데이터를 프로젝션(projection)하여 차원을 축소한다.
일 실시 예에서, 딥러닝부(112)는 동작 확인 학습모델을 생성 및 갱신하며 동작 확인 학습 모델을 이용하여 사용자 동작 예측에 적합한 동작 확인 함수를 출력할 수 있다. 다중회귀분석이나 다항식 회귀분석 등을 이용하여 차원을 축소할 경우, 다중회귀 예측식에 있어서 존재할 수 있는 다중공선성(Multicollinearity)은 종속변수에 대한 독립변수들끼리의 강한 상관관계가 존재하게 됨으로서 예측모델의 오류를 유발하게 된다. 즉, 다중공선성이 존재하면, 최소제곱추정량의 계산이 불가능할 수 있고, 추정량의 분산이 커지는 문제가 발생하여 회귀계수의 해석이 불가능하거나, 특정한 한 독립변수에 의한 영향력이 너무 커져서 다른 독립변수의 영향력이 상대적으로 작아지게 되어 예측식의 적합도가 떨어질 수 있다. 따라서, 차원 축소부(111)에서 다항식 조합을 통해 최대한 다양한 동작 검출 함수를 도출하고 딥러닝부(112)에서 이들을 기계학습함으로써 사용자의 특정 동작을 예측하기에 적합한 적어도 하나의 동작 검출 함수를 출력할 수 있다.
일 실시 예에서, 딥러닝부(112)는 데이터베이스(120)를 기반으로 머신러닝 기법을 이용하여 사용자 동작 예측을 위한 최적화된 동작 확인 학습모델을 구축할 수 있다. 특히, 딥러닝부(112)는 시계열 예측 기법과 같은 통계 분석 기법과 랜덤 포레스트와 같은 머신러닝 기법을 혼합하여 동작 확인 학습모델을 구축할 수 있다. 예를 들어, 딥러닝부(112)는 분석 대상인 복수의 센서데이터와 복수의 동작 검출 함수의 특징에 기반하여 시계열 분석으로 통계적 기법을 수행하고, 시계열 분석의 결과값을 전달 받아 사용자 동작 분석을 위한 머신러닝 기법을 적용하며, 사용자 동작 분석에 따른 예측 결과를 전달 받아 예측 결과를 통합하여, 최적화된 동작 확인 학습모델을 구축할 수 있다.
일 실시 예에서, 동작 확인 학습모델은 의사결정나무(Decision Tree), 베이지안 망(Bayesian network), SVM(Support Vector Machine), KNN(K-Nearest Neighbors), ANN(Artificial Neural Network) 및 이들 중 적어도 2 이상을 조합한 학습모델 중 적어도 하나일 수 있다.
일 실시 예에서, 의사결정나무는 의사결정규칙(Decision Rule)을 나무구조로 도표화하여 분류와 예측을 수행하는 분석방법이다. 베이지안 망은 다수의 변수들 사이의 확률적 관계(조건부독립성: conditional independence)를 그래프 구조로 표현하는 모델이다. 베이지안 망은 비지도 학습(unsupervised learning)을 통한 데이터마이닝(data mining)에 적합하다. 서포트벡터머신은 패턴인식과 자료분석을 위한 지도 학습(supervised learning)의 모델이며, 주로 분류와 회귀 분석을 위해 사용한다.
인공신경망은 생물학적 뉴런의 동작원리와 뉴런간의 연결 관계를 모델링한 것으로 노드(node) 또는 처리 요소 (processing element)라고 하는 다수의 뉴런들이 레이어(layer) 구조의 형태로 연결된 정보처리 시스템이다. 인공 신경망은 기계 학습에서 사용되는 모델로써, 기계학습과 인지과학에서 생물학의 신경망(동물의 중추신경계 중 특히 뇌)에서 영감을 얻은 통계학적 학습 알고리즘이다.
구체적으로 인공신경망은 시냅스(synapse)의 결합으로 네트워크를 형성한 인공 뉴런(노드)이 학습을 통해 시냅스의 결합 세기를 변화시켜, 문제 해결 능력을 가지는 모델 전반을 의미할 수 있다. 인공신경망은 복수의 레이어(layer)를 포함할 수 있고, 레이어들 각각은 복수의 뉴런(neuron)을 포함할 수 있다. 또한 인공신경망은 뉴런과 뉴런을 연결하는 시냅스를 포함할 수 있다. 인공 신경망은 일반적으로 다음의 세가지 인자, 즉 (1) 다른 레이어의 뉴런들 사이의 연결 패턴 (2) 연결의 가중치를 갱신하는 학습 과정 (3) 이전 레이어로부터 수신되는 입력에 대한 가중 합으로부터 출력값을 생성하는 활성화 함수에 의해 정의될 수 있다.
인공 신경망은, DNN(Deep Neural Network), RNN(Recurrent Neural Network), BRDNN(Bidirectional Recurrent Deep Neural Network), MLP(Multilayer Perceptron), CNN(Convolutional Neural Network)와 같은 방식의 네트워크 모델들을 포함할 수 있으나, 이에 한정되지 않는다. 인공신경망은 계층 수에 따라 단층 신경망(Single-Layer Neural Networks)과 다층 신경망(Multi-Layer Neural Networks)으로 구분된다. 일반적인 단층 신경망은, 입력층과 출력층으로 구성된다. 또한 일반적인 다층 신경망은 입력층(Input Layer)과 하나 이상의 은닉층(Hidden Layer), 출력층(Output Layer)으로 구성된다. 입력층은 외부의 자료들을 받아들이는 층으로서, 입력층의 뉴런 수는 입력되는 변수의 수와 동일하며, 은닉층은 입력층과 출력층 사이에 위치하며 입력층으로부터 신호를 받아 특성을 추출하여 출력층으로 전달한다. 출력층은 은닉층으로부터 신호를 받고, 수신한 신호에 기반한 출력 값을 출력한다. 뉴런간의 입력신호는 각각의 연결강도(가중치)와 곱해진 후 합산되며 이 합이 뉴런의 임계치보다 크면 뉴런이 활성화되어 활성화 함수를 통하여 획득한 출력값을 출력한다. 한편 입력층과 출력 층 사이에 복수의 은닉층을 포함하는 심층 신경망은, 기계 학습 기술의 한 종류인 딥 러닝을 구현하는 대표적인 인공 신경망일 수 있다.
일 실시 예에서, 동작 확인 학습모델은 훈련 데이터(training data)를 이용하여 학습(training)될 수 있다. 여기서 학습이란, 입력 데이터를 분류(classification)하거나 회귀분석(regression)하거나 군집화(clustering)하는 등의 목적을 달성하기 위하여, 학습 데이터를 이용하여 인공 신경망의 파라미터(parameter)를 결정하는 과정을 의미할 수 있다. 인공 신경망의 파라미터의 대표적인 예시로써, 시냅스에 부여되는 가중치(weight)나 뉴런에 적용되는 편향(bias)을 들 수 있다.
일 실시 예에서, 딥러닝부(112)는 사용자 동작 확인 결과에 기반하여 동작 확인 학습모델을 평가하고, 평가 결과를 동작 확인 학습 모델에 반영하여 점진적으로 최적화할 수 있다.
일 실시 예에서, 동작 분류부(113)는 딥러닝부(112)에서 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인할 수 있다.
차원 축소부(111), 딥러닝부(112) 및 동작 분류부(113)의 구체적인 동작은 하기 도 2 내지 도 4에서 후술한다.
한편, 도면에는 도시되지 않았지만, 전자 장치(100)은 디스플레이부를 더 포함할 수 있고, 제어부(110)는 디스플레이부를 통해 사용자의 동작 상황을 모니터링하는 화면을 표시할 수 있다.
본 발명의 전자 장치(100)는 사용자의 동작을 효율적으로 검출하기 위한 장치이고 제조 공정을 통해 생산되는 제품이다. 따라서, 본 발명은 전자 장치(100)가 제조되어 출고되기 이전까지 사용자의 동작을 효율적으로 검출하기 위한 동작 검출 함수를 차원 축소와 딥러닝을 통해 결정하고, 전자 장치(100)가 제조되어 출고된 이후에도 지속적으로 차원 축소와 딥러닝을 통해 학습 모델을 최적화하면서 사용자 동작을 확인할 수 있는 장치이다,
따라서, 하기 도 3에서 전자 장치(100)가 제조되어 출고되기 이전에 동작 검출 함수를 결정하는 방법을 구체적으로 설명하고, 하기 도 4에서 전자 장치(100)가 제조되어 출고된 이후에 사용자 동작을 검출하는 방법을 구체적으로 설명한다.
도 2는 본 발명의 일 실시 예에 따른 제어부의 처리 흐름을 나타낸 블록도다. 도 3은 본 발명의 일 실시 예에 따른 복수의 센서데이터의 차원 축소 및 학습 모델을 이용하여 사용자의 동작을 확인하기 위한 동작 검출 함수를 결정하는 방법을 나타낸 흐름도다. 도 3의 동작들은 도 2의 차원 축소부(111), 딥러닝부(112) 및 동작 분류부(113)에 의해 수행될 수 있다. 물론, 도 3의 동작은 도 1의 제어부(100)에 의해 일괄적으로 수행될 수 있다.
도 2 및 도 3을 참조하면, 일 실시 예에서, 센서부(130)는 동작 31에서, 사용자 동작과 관련된 복수의 센서데이터(10)를 학습데이터로써 획득할 수 있다. 예를 들어, 복수의 센서데이터(10)는 가속도 센서의 3축 센서데이터, 자이로 센서의 3축 센서데이터 또는 지자기 센서의 3축 센서데이터 중 적어도 하나를 포함할 수 있다. 예컨대, 복수의 센서데이터(10)는 3축 데이터부터 9축 데이터까지 다양한 범위일 수 있다. 또한, 가속도 센서, 자이로 센서 및 지자기 센서 이외에도 중력 센서등 센서가 더 추가될 수 있으므로 복수의 센서데이터(10)는 9차원보다 높은 고차원의 센서데이터일 수 있다.
일 실시 예에서, 차원 축소부(111)는 동작 32에서, 센서부(130)에서 검출된 복수의 센서데이터의 차원을 축소하고 사용자의 동작을 확인할 수 있는 복수의 동작 검출 함수들을 도출할 수 있다. 예컨대, 사용자의 동작은 걷는 동작, 뛰는 동작, 앉는 동작 등 매우 다양한 동작들이 존재하고, 동작 확인 학습 모델은 지속적인 학습을 통해 상기 사용자의 각각의 동작에 대응하는 동작 검출 함수를 저장할 수 있다. 여기서 각각의 사용자 동작에 대응하는 동작 검출 함수는 1개 또는 복수 개일 수 있다.
일 실시 예에서, 복수의 동작 검출 함수의 각각의 결과 값은 모두 동일한 특정 사용자 동작으로 판정되는 지에 대한 확률 값일 수 있다. 예를 들어, 복수의 동작 검출 함수는, n개일 수 있고, F1(t), F2(t)?Fn(t)를 포함할 수 있다. 여기서, 복수의 동작 검출 함수 Fn(t)는 사용자의 동일한 동작(예: 걷는 동작)을 검출하기 위한 함수들일 수 있다. 즉, 복수의 동작 검출 함수는 모두 사용자의 걷는 동작을 검출하기 위한 함수이지만 서로 사용자의 특정 동작(예: 걷는 동작)을 검출하기 위한 민감도, 정확도 등이 다를 수 있다.
일 실시 예에서, 차원 축소부(111)는 복수의 센서데이터 각각에 대응하는 복수의 시계열 함수들을 다항식 조합을 복수의 동작 검출 함수를 도출할 수 있다. 예컨대, 복수의 시계열 함수는 하나 이상의 변수로 이루어진 다항식일 수 있고, 복수의 동작 검출 함수는 복수의 시계열 함수에 포함된 변수들을 포함한 다항식일 수 있다.
일 실시 예에서, 다항식 조합은 다중회귀분석 또는 다항식 회귀분석 중 적어도 하나의 방법을 이용하여 수행될 수 있다. 예를 들어, 복수의 동작 검출 함수는 복수의 센서데이터 각각의 시계열 함수의 결과 값을 독립변수로 놓고, 사용자의 특정 동작일 확률을 종속 변수로 놓는 시계열 다중회귀분석법을 적용하여 간단한 수식으로 이루어진 다항식으로 구성될 수 있다. 예를 들어, 독립변수와 종속변수가 선형의 관계를 갖는다면, 초기값과 기울기만을 갖는 다음 수식으로 복수의 동작 검출 함수가 구성될 수 있다. 한편, 하기 선형식은 일 예에 불과하고, 선형 관계를 가지지 않을 경우에, 2차 이상의 다항식, 지수식, 로그식 등이 적용될 수 있다. 설명의 편의를 위해 수학식 1을 일 예로 들어 설명한다.
[수학식 1]
Fn(t)=Y=a + b1X1ti+ b2Y1ti + b3Z1ti + b4X2ti + b5Y2ti + b6Z2ti + ... + b3m-2Xmti + b3m-1Ymti + b3mZmti + e
여기서, n은 동작 검출 함수의 개수이고, m은 복수의 센서데이터의 개수이고, Xm, Ym, Zm는 센서의 3축 데이터 결과 값일 수 있고, ti는 센서데이터의 검출 시각일 수 있고, Y는 사용자의 특정 동작일 확률일 수 있다. 예를 들어, 센서부(130)가 관성측정센서로서 9축 센서데이터를 검출할 수 있을 경우, m은 3일 수 있고, 상기 변수들은 총 9개(X1, Y1, Z1, X2, Y2, Z2, X3, Y3, Z3)일 수 있다.
일 실시 예에서, n개는 딥러닝을 위한 학습데이터 세트의 개수를 의미할 수 있다. 즉, n개의 동작 검출 함수는 기계학습을 통해 사용자의 특정 동작(예: 걷는 동작)을 검출하기 위한 동작 검출 함수를 결정하기 위한 학습데이트 세트일 수 있다.
일 실시 예에서, F1(t) 내지 Fn(t)는 각각 수학식 1과 같이 동일한 변수들(X1, Y1, Z1, X2, Y2, Z2, Xm, Ym, Zm)을 가지며 서로 다른 계수(b1, b2, b3, b4, b5, b6, b3m-2, b3m-1, b3m)를 갖는 동작 검출 함수일 수 있다. 즉, 사용자의 특정 동작을 보다 정확하게 검출하기 위해서는 기계학습에 이용할 학습데이트 세트가 많을수록 효과적일 수 있으므로 최대한 계수를 다양하게 조정함으로써 n개의 동작 검출 함수를 도출할 수 있다. 여기서 계수를 조정하는 동작은 사용자의 특정 동작을 검출할 수 있도록 공지된 다양한 방법으로 조정될 수 있다.
또한, 다른 실시 예에서, 복수의 동작 검출 함수는 각각 서로 다른 변수와 계수를 갖는 다항식으로 이루어질 수 있다. 예를 들어, F1(t) 내지 Fn(t)는 각각 수학식 1의 변수들(X1, Y1, Z1, X2, Y2, Z2, Xm, Ym, Zm) 중 적어도 3개 이상을 가지며 서로 다른 계수를 갖는 동작 검출 함수일 수 있다. 즉, 사용자의 특정 동작을 보다 정확하게 검출하기 위해서는 기계학습에 이용할 학습데이트 세트가 많을수록 효과적일 수 있으므로 최대한 변수 및 계수를 다양하게 조정함으로써 n개의 동작 검출 함수를 도출할 수 있다. 예컨대, F1(t)=a + b1X1 + b3Z1 + b4X2 + b5Y2 + b3m-1Ym + b3mZm + e 이고 Fn(t)= b1X1 + b2Y1 + b3Z1 + b4X2 + b3m-1Ym + e 으로 구성될 수 있다. 여기서 변수 및 계수를 조정하는 동작은 사용자의 특정 동작을 검출할 수 있도록 공지된 다양한 방법으로 조정될 수 있다.
일 실시 예에서, 딥러닝부(112)는 동작 33에서, 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 사용자 동작을 검출하기 위한 함수로써 결정할 수 있다. 예를 들어, 앞서 설명한 바와 같이, 복수의 동작 검출 함수가 모두 사용자의 특정 동작(예: 걷는 동작)을 검출하기 위한 함수들일 경우, 서로 사용자의 특정 동작(예: 걷는 동작)을 검출하기 위한 민감도, 정확도 등이 다를 수 있다. 따라서, 딥러닝부(112)는 기계학습을 통해 복수의 동작 검출 함수 중 사용자의 특정 동작(예: 걷는 동작)을 보다 정확하게 확인할 수 있도록 민감도 또는 정확도가 높은 적어도 하나의 동작 검출 함수를 결정할 수 있다. 즉, 도 2에 도시된 바와 같이 딥 러닝부(112)는 n개의 F1(t) 내지 Fn(t) 중에서 사용자의 특정동작(예: 걷는 동작)에 적합한 적어도 하나의 동작 검출 함수 Fk(t)를 출력할 수 있다. 물론 여기서 n와 k는 함수의 개수를 의미하며, n>k 일수 있다. 즉, 예컨대, k 는 1 이상의 정수 일 수 있다. 예를 들어, 복수의 동작 검출 함수가 F1(t), F2(t), F3(t), F4(t), F5(t), F6(t), F7(t)일 경우, F1(t), F2(t), F3(t), F4(t), F5(t)의 조합으로 걷는 동작이 기 학습되었다면, 적어도 하나의 동작 검출 함수는 F1(t), F2(t), F3(t), F4(t), F5(t)가 될 수 있다.
일 실시 예에서, 딥러닝부(112)는, 동작 34에서, 동작 확인 학습모델을 이용하여 적어도 하나의 동작 검출 함수를 결정한 결과를 피드백하여, 적어도 하나의 동작 검출 함수를 결정한 결과를 동작 확인 학습모델 구축에 반영하여 동작 확인 학습 모델을 점진적으로 최적화할 수 있다. 예를 들어, 딥러닝에 따른 학습모델은 그 기계학습이 반복될수록 더욱 정교해질 수 있으므로 딥러닝부(112)는 동작 검출 함수를 결정한 결과가 도출될 때 마다 지속적으로 동작 확인 학습 모델을 업데이트할 수 있다.
이와 같이, 본 발명은 전자 장치(100)가 제조되어 출고되기 이전까지 동작 31 내지 동작 34를 반복함으로써 보다 정밀한 동작 검출 함수 설정이 가능하다.
도 2는 본 발명의 일 실시 예에 따른 제어부의 처리 흐름을 나타낸 블록도다. 도 4는 본 발명의 일 실시 예에 따른 복수의 센서데이터의 차원 축소 및 학습 모델을 이용하여 사용자 동작을 검출하는 방법을 나타낸 흐름도다. 도 4의 동작들은 도 2의 차원 축소부(111), 딥러닝부(112) 및 동작 분류부(113)에 의해 수행될 수 있다. 물론, 도 4의 동작은 도 1의 제어부(100)에 의해 일괄적으로 수행될 수 있다.
도 2 및 도 4를 참조하면, 일 실시 예에서, 딥러닝부(112)는, 동작 41에서, 기 수집된 복수의 센서데이터에 기반하여 머신러닝 기법을 이용하여 사용자의 동작을 예측하기 위한 최적화된 동작 확인 학습모델을 미리 구축할 수 있다. 예를 들어, 동작 확인 모델은 도 3의 동작들을 통해 미리 구축될 수 있고, 도 4에 도시된 동작 42 내지 46을 반복함에 따라 사용자의 동작을 보다 정확하게 판단할 수 있는 동작 검출 함수를 지속적으로 학습함에 따라 다수의 동작 검출 함수 중 정확도가 높은 동작 검출 함수를 추출할 수 있는 동작 확인 학습 모델이 보다 정교한 모델로써 구축될 수 있다. 물론 이외에도 기존에 알려진 모델 또는 알고리즘에 따라 미리 동작 확인 학습 모델을 구축할수도 있다.
예컨대, 사용자의 동작은 걷는 동작, 뛰는 동작, 앉는 동작 등 매우 다양한 동작들이 존재하고, 동작 확인 학습 모델은 지속적인 학습을 통해 상기 사용자의 각각의 동작에 대응하는 동작 검출 함수를 저장할 수 있다. 여기서 각각의 사용자 동작에 대응하는 동작 검출 함수는 1개 또는 복수 개일 수 있다.
일 실시 예에서, 센서부(130)는 동작 42에서, 사용자 동작과 관련된 복수의 센서데이터(10)를 검출할 수 있다. 예를 들어, 복수의 센서데이터(10)는 가속도 센서의 3축 센서데이터, 자이로 센서의 3축 센서데이터 또는 지자기 센서의 3축 센서데이터 중 적어도 하나를 포함할 수 있다. 예컨대, 복수의 센서데이터(10)는 3축 데이터부터 9축 데이터까지 다양한 범위일 수 있다. 따라서, 앞서 설명한 바와 같이 복수의 센서데이터(10)는 3차원 내지 9차원의 센서데이터일 수 있다. 또한, 가속도 센서, 자이로 센서 및 지자기 센서 이외에도 중력 센서등 센서가 더 추가될 수 있으므로 복수의 센서데이터(10)는 9차원보다 높은 고차원의 센서데이터일 수 있다.
일 실시 예에서, 차원 축소부(111)는 동작 43에서, 센서부(130)에서 검출된 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출할 수 있다.
일 실시 예에서, 복수의 동작 검출 함수의 각각의 결과 값은 모두 동일한 특정 사용자 동작으로 판정되는 지에 대한 확률 값일 수 있다. 예를 들어, 복수의 동작 검출 함수는, n개일 수 있고, F1(t), F2(t)?Fn(t)를 포함할 수 있다. 여기서, 복수의 동작 검출 함수 Fn(t)는 사용자의 동일한 동작(예: 걷는 동작)을 검출하기 위한 함수들일 수 있다. 즉, 복수의 동작 검출 함수는 모두 사용자의 걷는 동작을 검출하기 위한 함수이지만 서로 사용자의 특정 동작(예: 걷는 동작)을 검출하기 위한 민감도, 정확도 등이 다를 수 있다.
일 실시 예에서, 차원 축소부(111)는 복수의 센서데이터 각각에 대응하는 복수의 시계열 함수들을 다항식 조합을 복수의 동작 검출 함수를 도출할 수 있다. 예컨대, 복수의 시계열 함수는 하나 이상의 변수로 이루어진 다항식일 수 있고, 복수의 동작 검출 함수는 복수의 시계열 함수에 포함된 변수들을 포함한 다항식일 수 있다.
일 실시 예에서, 다항식 조합은 다중회귀분석 또는 다항식 회귀분석 중 적어도 하나의 방법을 이용하여 수행될 수 있다. 예를 들어, 복수의 동작 검출 함수는 복수의 센서데이터 각각의 시계열 함수의 결과 값을 독립변수로 놓고, 사용자의 특정 동작일 확률을 종속 변수로 놓는 시계열 다중회귀분석법을 적용하여 간단한 수식으로 이루어진 다항식으로 구성될 수 있다. 예를 들어, 독립변수와 종속변수가 선형의 관계를 갖는다면, 초기값과 기울기만을 갖는 다음 수식으로 복수의 동작 검출 함수가 구성될 수 있다. 한편, 하기 선형식은 일 예에 불과하고, 선형 관계를 가지지 않을 경우에, 2차 이상의 다항식, 지수식, 로그식 등이 적용될 수 있다. 설명의 편의를 위해 수학식 1을 일 예로 들어 설명한다.
[수학식 1]
Fn(t)=Y=a + b1X1ti+ b2Y1ti + b3Z1ti + b4X2ti + b5Y2ti + b6Z2ti + ... + b3m-2Xmti + b3m-1Ymti + b3mZmti + e
여기서, n은 동작 검출 함수의 개수이고, m은 복수의 센서데이터의 개수이고, Xm, Ym, Zm는 센서의 3축 데이터 결과 값일 수 있고, ti는 센서데이터의 검출 시각일 수 있고, Y는 사용자의 특정 동작일 확률일 수 있다. 예를 들어, 센서부(130)가 관성측정센서로서 9축 센서데이터를 검출할 수 있을 경우, m은 3일 수 있고, 상기 변수들은 총 9개(X1, Y1, Z1, X2, Y2, Z2, X3, Y3, Z3)일 수 있다.
일 실시 예에서, n개는 딥러닝을 위한 학습데이터 세트의 개수를 의미할 수 있다. 즉, n개의 동작 검출 함수는 기계학습을 통해 사용자의 특정 동작(예: 걷는 동작)을 검출하기 위한 동작 검출 함수를 결정하기 위한 학습데이트 세트일 수 있다.
일 실시 예에서, F1(t) 내지 Fn(t)는 각각 수학식 1과 같이 동일한 변수들(X1, Y1, Z1, X2, Y2, Z2, Xm, Ym, Zm)을 가지며 서로 다른 계수(b1, b2, b3, b4, b5, b6, b3m-2, b3m-1, b3m)를 갖는 동작 검출 함수일 수 있다. 즉, 사용자의 특정 동작을 보다 정확하게 검출하기 위해서는 기계학습에 이용할 학습데이트 세트가 많을수록 효과적일 수 있으므로 최대한 계수를 다양하게 조정함으로써 n개의 동작 검출 함수를 도출할 수 있다. 여기서 계수를 조정하는 동작은 사용자의 특정 동작을 검출할 수 있도록 공지된 다양한 방법으로 조정될 수 있다.
또한, 다른 실시 예에서, 복수의 동작 검출 함수는 각각 서로 다른 변수와 계수를 갖는 다항식으로 이루어질 수 있다. 예를 들어, F1(t) 내지 Fn(t)는 각각 수학식 1의 변수들(X1, Y1, Z1, X2, Y2, Z2, Xm, Ym, Zm) 중 적어도 3개 이상을 가지며 서로 다른 계수를 갖는 동작 검출 함수일 수 있다. 즉, 사용자의 특정 동작을 보다 정확하게 검출하기 위해서는 기계학습에 이용할 학습데이트 세트가 많을수록 효과적일 수 있으므로 최대한 변수 및 계수를 다양하게 조정함으로써 n개의 동작 검출 함수를 도출할 수 있다. 예컨대, F1(t)=a + b1X1 + b3Z1 + b4X2 + b5Y2 + b3m-1Ym + b3mZm + e 이고 Fn(t)= b1X1 + b2Y1 + b3Z1 + b4X2 + b3m-1Ym + e 으로 구성될 수 있다. 여기서 변수 및 계수를 조정하는 동작은 사용자의 특정 동작을 검출할 수 있도록 공지된 다양한 방법으로 조정될 수 있다.
일 실시 예에서, 딥러닝부(112)는 동작 44에서, 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 출력할 수 있다. 예를 들어, 앞서 설명한 바와 같이, 복수의 동작 검출 함수가 모두 사용자의 특정 동작(예: 걷는 동작)을 검출하기 위한 함수들일 경우, 서로 사용자의 특정 동작(예: 걷는 동작)을 검출하기 위한 민감도, 정확도 등이 다를 수 있다. 따라서, 딥러닝부(112)는 기계학습을 통해 복수의 동작 검출 함수 중 사용자의 특정 동작(예: 걷는 동작)을 보다 정확하게 확인할 수 있도록 민감도 또는 정확도가 높은 적어도 하나의 동작 검출 함수를 출력할 수 있다. 즉, 도 2에 도시된 바와 같이 딥 러닝부(112)는 n개의 F1(t) 내지 Fn(t) 중에서 사용자의 특정동작(예: 걷는 동작)에 적합한 적어도 하나의 동작 검출 함수 Fk(t)를 출력할 수 있다. 물론 여기서 n와 k는 함수의 개수를 의미하며, n>k 일수 있다. 즉, 예컨대, k 는 1 이상의 정수 일 수 있다. 예를 들어, 복수의 동작 검출 함수가 F1(t), F2(t), F3(t), F4(t), F5(t), F6(t), F7(t)일 경우, F1(t), F2(t), F3(t), F4(t), F5(t)의 조합으로 걷는 동작이 기 학습되었다면, 적어도 하나의 동작 검출 함수는 F1(t), F2(t), F3(t), F4(t), F5(t)가 될 수 있다.
일 실시 예에서, 동작 분류부(113)는 동작 45에서, 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인할 수 있다. 예를 들어, 적어도 하나의 동작 검출 함수가 F1(t), F2(t), F3(t), F4(t), F5(t)일 경우, 동작 분류부(113)는 F1(t), F2(t), F3(t), F4(t), F5(t) 각각의 결과 값을 확인할 수 있다. 각각의 결과 값은 복수의 센서데이터(10)의 측정 시간에 사용자가 특정 동작을 실제로 수행했을 확률 값일 수 있다.
일 실시 예에서, 동작 분류부(113)는, 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 이상일 경우, 사용자의 동작을 확인할 수 있다. 즉, 예를 들어, 임계 값이 0.7이고, 적어도 하나의 동작 검출 함수의 결과 값(확률 값)이 0.7 이상일 경우, 동작 분류부(113)는 사용자가 해당 시간에 특정 동작을 수행했음을 확인할 수 있다. 물론 여기서 기재한 임계 값의 수치는 단지 일 예이고 다양하게 변경될 수 있다.
또한, 임계 값 조건에 적어도 하나의 동작 검출 함수의 절반 이상이 임계 값 이상을 가져야 한다는 부가 조건을 더 추가할 수 있다. 즉, 예를 들어, 적어도 하나의 동작 검출 함수가 F1(t), F2(t), F3(t), F4(t), F5(t)이고, 이중 최소 3개의 함수가 0.7 이상의 임계 값을 가져야 동작 분류부(113)가 사용자가 해당 시간에 특정 동작을 수행했다고 판단할 수 있다.
일 실시 예에서, 동작 분류부(113)는, 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 미만일 경우, 동작 확인을 중단하고 차원 축소부(111) 또는 딥러닝부(112) 중 적어도 하나에게 반복 신호를 전송할 수 있다. 즉, 예를 들어, 적어도 하나의 동작 검출 함수의 결과 값이 0.7 미만일 경우, 동작 분류부(113)는 사용자가 특정 동작을 수행한다고 판단하지 못하고, 다시 동작 32 내지 동작 35를 순차적으로 수행할 수 있도록 차원 축소부(111) 또는 딥 러닝부(112) 중 적어도 하나에게 반복 신호를 전송할 수 있다. 물론 동작을 반복하는 것이므로 동작 42 내지 45 중 일부는 생략될 수 있다.
일 실시 예에서, 딥러닝부(112)는, 동작 46에서, 동작 확인 학습모델을 이용하여 도출한 사용자 동작 확인 결과를 피드백하여, 사용자 동작 확인 결과를 동작 확인 학습모델 구축에 반영하여 동작 확인 학습 모델을 점진적으로 최적화할 수 있다. 예를 들어, 딥러닝에 따른 학습모델은 그 기계학습이 반복될수록 더욱 정교해질 수 있으므로 딥러닝부(112)는 사용자 동작 확인 결과가 도출될 때 마다 지속적으로 동작 확인 학습 모델을 업데이트할 수 있다.
일 실시 예에서, 동작 46이 완료된 이후에 다시 리턴하여 동작 41 내지 46이 반복될 수 있다. 도 4의 동작들이 반복되면서 사용자 동작 검출 장치(100)는 보다 정밀한 사용자 동작 검출이 가능하다.
또한, 앞서 설명한 바와 같이 도 4의 동작들은 전자 장치(100)가 제조되어 출고된 이후의 동작들일 수 있다. 즉, 본 발명의 전자 장치(100)는 사용자에게 판매된 이후에도 지속적으로 동작 확인 학습 모델과 동작 검출 함수를 점진적으로 최적화하면서 사용자 동작을 정밀하게 검출할 수 있다.
본 발명의 다양한 실시 예에 따르면, 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법은, 상기 사용자 동작과 관련된 상기 복수의 센서데이터를 학습데이터로서 획득하는 단계; 상기 획득한 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 단계; 및 상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 상기 사용자 동작을 검출하기 위한 함수로써 결정하는 단계;를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 복수의 동작 검출 함수는 상기 복수의 센서데이터 각각에 대응하는 복수의 시계열 함수들이 다항식 조합을 통해 차원이 축소됨으로써 도출될 수 있다.
다양한 실시 예에 따르면, 상기 동작 확인 학습모델을 이용하여 상기 적어도 하나의 동작 검출 함수를 결정한 결과를 피드백하여, 상기 적어도 하나의 동작 검출 함수를 결정한 결과를 상기 동작 확인 학습모델 구축에 반영하여 상기 동작 확인 학습 모델을 점진적으로 최적화하는 단계를 더 포함할 수 있다.
본 발명의 다양한 실시 예에 따르면, 복수의 센서데이터의 차원 축소를 이용한 사용자 동작 검출 방법은, 상기 사용자 동작과 관련된 상기 복수의 센서데이터를 검출하는 단계; 상기 센서부에서 검출된 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 단계; 상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 출력하는 단계; 및 상기 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인하는 단계;를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 복수의 동작 검출 함수는 상기 복수의 센서데이터 각각에 대응하는 복수의 시계열 함수들이 다항식 조합을 통해 차원이 축소됨으로써 도출될 수 있다.
다양한 실시 예에 따르면, 기 수집된 복수의 센서데이터에 기반하여 머신러닝 기법을 이용하여 사용자의 동작을 예측하기 위한 최적화된 동작 확인 학습모델을 구축하는 단계를 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 동작 확인 학습모델을 이용하여 도출한 사용자 동작 확인 결과를 피드백하여, 상기 사용자 동작 확인 결과를 상기 동작 확인 학습모델 구축에 반영하여 상기 동작 확인 학습 모델을 점진적으로 최적화하는 단계를 더 포함할 수 있다.
다양한 실시 예에 따르면, 상기 사용자 동작을 확인하는 단계는, 상기 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 이상일 경우, 사용자의 동작을 확인하는 단계; 및 상기 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 미만일 경우, 상기 동작 확인을 중단하고 상기 차원 축소부 또는 상기 딥 러닝부 중 적어도 하나에게 반복 신호를 전송하는 단계;를 더 포함할 수 있다.
본 발명의 다양한 실시 예에 따르면, 복수의 센서데이터의 차원 축소를 이용한 사용자 동작 검출 장치는, 상기 사용자 동작과 관련된 상기 복수의 센서데이터를 검출하는 센서부; 상기 센서부에서 검출된 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 차원 축소부; 상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 출력하는 딥러닝부; 및 상기 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인하는 동작 분류부;를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 복수의 센서데이터는 가속도 센서의 3축 센서데이터, 자이로 센서의 3축 센서데이터 또는 지자기 센서의 3축 센서데이터 중 적어도 하나를 포함할 수 있다.
다양한 실시 예에 따르면, 상기 차원 축소부는 상기 복수의 센서데이터 각각에 대응하는 복수의 시계열 함수들을 다항식 조합을 통해 상기 복수의 동작 검출 함수를 도출할 수 있다.
다양한 실시 예에 따르면, 상기 딥러닝부는, 기 수집된 복수의 센서데이터에 기반하여 머신러닝 기법을 이용하여 사용자의 동작을 예측하기 위한 최적화된 동작 확인 학습모델을 구축하고, 상기 동작 확인 학습모델에 기반하여 상기 사용자 동작 검출에 적합한 상기 적어도 하나의 동작 검출 함수를 결정하고, 상기 동작 확인 학습모델을 이용하여 도출한 사용자 동작 확인 결과를 피드백하여, 상기 사용자 동작 확인 결과를 상기 동작 확인 학습모델 구축에 반영하여 상기 동작 확인 학습 모델을 점진적으로 최적화할 수 있다.
다양한 실시 예에 따르면, 상기 동작 분류부는, 상기 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 이상일 경우, 사용자의 동작을 확인하고, 상기 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 미만일 경우, 상기 동작 확인을 중단하고 상기 차원 축소부 또는 상기 딥 러닝부 중 적어도 하나에게 반복 신호를 전송할 수 있다.
따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 청구범위뿐만 아니라 이 청구범위와 균등하게 또는 등가적으로 변형된 모든 것들은 본 발명의 사상의 범주에 속한다고 할 것이다.
100: 전자 장치 200: 외부 장치
110: 제어부 111: 차원 축소부
112: 딥러닝부 113: 동작 분류부
120: 데이터베이스 130: 센서부

Claims (13)

  1. 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법에 있어서,
    사용자 동작과 관련된 상기 복수의 센서데이터를 학습데이터로서 획득하는 단계;
    상기 획득한 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 단계; 및
    상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 상기 사용자 동작을 검출하기 위한 함수로써 결정하는 단계;를 포함하고,
    상기 복수의 동작 검출 함수는 상기 복수의 센서데이터 각각에 대응하는 복수의 시계열 함수들이 다항식 조합을 통해 차원이 축소됨으로써 도출되는 것을 특징으로 하는 동작 검출 함수 결정 방법.
  2. 삭제
  3. 제1 항에 있어서, 상기 동작 확인 학습모델을 이용하여 상기 적어도 하나의 동작 검출 함수를 결정한 결과를 피드백하여, 상기 적어도 하나의 동작 검출 함수를 결정한 결과를 상기 동작 확인 학습모델 구축에 반영하여 상기 동작 확인 학습 모델을 점진적으로 최적화하는 단계를 더 포함하는 것을 특징으로 하는 동작 검출 함수 결정 방법.
  4. 복수의 센서데이터의 차원 축소를 이용한 사용자 동작 검출 방법에 있어서,
    상기 사용자 동작과 관련된 상기 복수의 센서데이터를 검출하는 단계;
    상기 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 단계;
    상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 출력하는 단계; 및
    상기 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인하는 단계;를 포함하고,
    상기 복수의 동작 검출 함수는 상기 복수의 센서데이터 각각에 대응하는 복수의 시계열 함수들이 다항식 조합을 통해 차원이 축소됨으로써 도출되는 것을 특징으로 하는 사용자 동작 검출 방법.
  5. 삭제
  6. 제4 항에 있어서, 기 수집된 복수의 센서데이터에 기반하여 머신러닝 기법을 이용하여 사용자의 동작을 예측하기 위한 최적화된 동작 확인 학습모델을 구축하는 단계를 더 포함하는 것을 특징으로 하는 사용자 동작 검출 방법.
  7. 제4 항에 있어서, 상기 동작 확인 학습모델을 이용하여 도출한 사용자 동작 확인 결과를 피드백하여, 상기 사용자 동작 확인 결과를 상기 동작 확인 학습모델 구축에 반영하여 상기 동작 확인 학습 모델을 점진적으로 최적화하는 단계를 더 포함하는 것을 특징으로 하는 사용자 동작 검출 방법.
  8. 제4 항에 있어서, 상기 사용자 동작을 확인하는 단계는,
    상기 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 이상일 경우, 사용자의 동작을 확인하는 단계; 및
    상기 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 미만일 경우, 상기 동작 확인을 중단하고 차원 축소부 또는 딥 러닝부 중 적어도 하나에게 반복 신호를 전송하는 단계;를 더 포함하는 것을 특징으로 하는 사용자 동작 검출 방법.
  9. 복수의 센서데이터의 차원 축소를 이용한 사용자 동작 검출 장치에 있어서,
    상기 사용자 동작과 관련된 상기 복수의 센서데이터를 검출하는 센서부;
    상기 센서부에서 검출된 복수의 센서데이터의 차원을 축소하고 복수의 동작 검출 함수들을 도출하는 차원 축소부;
    상기 도출된 복수의 동작 검출 함수들을 기 설정된 동작 확인 학습모델을 통해 기계학습시키며 상기 기계학습 결과 도출된 적어도 하나의 동작 검출 함수를 출력하는 딥러닝부; 및
    상기 출력한 적어도 하나의 동작 검출 함수에 기반하여 사용자 동작을 확인하는 동작 분류부;를 포함하고,
    상기 차원 축소부는 상기 복수의 센서데이터 각각에 대응하는 복수의 시계열 함수들을 다항식 조합을 통해 상기 복수의 동작 검출 함수를 도출하는 것을 특징으로 하는 사용자 동작 검출 장치.
  10. 제9 항에 있어서, 상기 복수의 센서데이터는 가속도 센서의 3축 센서데이터, 자이로 센서의 3축 센서데이터 또는 지자기 센서의 3축 센서데이터 중 적어도 하나를 포함하는 것을 특징으로 하는 사용자 동작 검출 장치.
  11. 삭제
  12. 제9 항에 있어서, 상기 딥러닝부는,
    기 수집된 복수의 센서데이터에 기반하여 머신러닝 기법을 이용하여 사용자의 동작을 예측하기 위한 최적화된 동작 확인 학습모델을 구축하고,
    상기 동작 확인 학습모델에 기반하여 상기 사용자 동작 검출에 적합한 상기 적어도 하나의 동작 검출 함수를 결정하고,
    상기 동작 확인 학습모델을 이용하여 도출한 사용자 동작 확인 결과를 피드백하여, 상기 사용자 동작 확인 결과를 상기 동작 확인 학습모델 구축에 반영하여 상기 동작 확인 학습 모델을 점진적으로 최적화하는 것을 특징으로 하는 사용자 동작 검출 장치.
  13. 제9 항에 있어서, 상기 동작 분류부는,
    상기 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 이상일 경우, 사용자의 동작을 확인하고,
    상기 적어도 하나의 동작 검출 함수의 결과 값이 임계 값 미만일 경우, 상기 동작 확인을 중단하고 상기 차원 축소부 또는 상기 딥 러닝부 중 적어도 하나에게 반복 신호를 전송하는 것을 특징으로 하는 사용자 동작 검출 장치.
KR1020190109907A 2019-09-05 2019-09-05 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치 KR102078765B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190109907A KR102078765B1 (ko) 2019-09-05 2019-09-05 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치
PCT/KR2020/007435 WO2021045354A1 (ko) 2019-09-05 2020-06-09 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190109907A KR102078765B1 (ko) 2019-09-05 2019-09-05 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치

Publications (1)

Publication Number Publication Date
KR102078765B1 true KR102078765B1 (ko) 2020-02-19

Family

ID=69670088

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190109907A KR102078765B1 (ko) 2019-09-05 2019-09-05 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치

Country Status (2)

Country Link
KR (1) KR102078765B1 (ko)
WO (1) WO2021045354A1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015011690A (ja) * 2013-07-02 2015-01-19 ニフティ株式会社 効果測定プログラム、方法及び装置
KR20190060625A (ko) 2017-11-24 2019-06-03 옥철식 관성 측정 유닛 센서의 위치 보정 장치 및 그 보정 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015041668A1 (en) * 2013-09-20 2015-03-26 Intel Corporation Machine learning-based user behavior characterization
KR101528236B1 (ko) * 2014-03-06 2015-06-12 국립대학법인 울산과학기술대학교 산학협력단 단말의 휴대 방법에 관계 없이 사용자의 행동을 인지할 수 있는 방법 및 이를 지원하는 장치, 그리고 상기 방법을 실행하는 프로그램을 기록한 컴퓨터 판독 가능한 기록매체
US20170188895A1 (en) * 2014-03-12 2017-07-06 Smart Monitor Corp System and method of body motion analytics recognition and alerting

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015011690A (ja) * 2013-07-02 2015-01-19 ニフティ株式会社 効果測定プログラム、方法及び装置
KR20190060625A (ko) 2017-11-24 2019-06-03 옥철식 관성 측정 유닛 센서의 위치 보정 장치 및 그 보정 방법

Also Published As

Publication number Publication date
WO2021045354A1 (ko) 2021-03-11

Similar Documents

Publication Publication Date Title
US8990133B1 (en) Apparatus and methods for state-dependent learning in spiking neuron networks
Watrous Learning algorithms for connectionist networks: Applied gradient methods of nonlinear optimization
Zhang et al. A digital liquid state machine with biologically inspired learning and its application to speech recognition
US7783585B2 (en) Data processing device, data processing method, and program
US9367798B2 (en) Spiking neuron network adaptive control apparatus and methods
US9189730B1 (en) Modulated stochasticity spiking neuron network controller apparatus and methods
US10783433B1 (en) Method for training and self-organization of a neural network
US7725412B2 (en) Identifying temporal sequences using a recurrent self organizing map
KR102449905B1 (ko) 전자 장치 및 이의 제어 방법
KR20220107302A (ko) 순환 신경망에서의 거리 메트릭 및 클러스터링
KR102320706B1 (ko) 설비 모니터링 시스템의 모델 임계값 설정 방법
KR102637133B1 (ko) 온-디바이스 활동 인식
US20210231775A1 (en) System and method for smart device control using radar
Rampone et al. Neural network aided glitch-burst discrimination and glitch classification
Rodriguez Lera et al. Neural networks for recognizing human activities in home-like environments
KR102438189B1 (ko) 비정상 데이터 검출 방법 및 장치
US11003909B2 (en) Neural network trained by homographic augmentation
KR102362678B1 (ko) 생체신호 분석 방법
KR102078765B1 (ko) 복수의 센서데이터의 차원 축소를 이용한 동작 검출 함수 결정 방법과 사용자 동작 검출 방법 및 그 장치
KR20210089782A (ko) 수면 유도 장치
US20220269718A1 (en) Method And Apparatus For Tracking Object
Mukherjee t-SNE based feature extraction technique for multi-layer perceptron neural network classifier
Ram et al. Enhanced Human Action Recognition with Ensembled DTW Loss Function in CNN LSTM Architecture
Marshakov et al. Evaluation of Neural Network output results reliability in pattern recognition
KR102502387B1 (ko) 음성 인식 기반 물류 처리 방법, 장치 및 시스템

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant