러프집합을 이용한 규칙기반 신체활동상태 결정방법
이영동
*
·손창식*
·정완영**
·박희준*** †
·김윤년***
Decision method for rule-based physical activity status using rough sets
Young-Dong Lee * , Chang-Sik Son * , Wan-Young Chung ** , Hee-Joon Park *** † ,
and Yoon-Nyun Kim ***
Abstract
This paper presents an accelerometer based system for physical activity decision that are capable of recognizing three different types of physical activities, i.e., standing, walking and running, using by rough sets. To collect physical acceleration data, we developed the body sensor node which consists of two custom boards for physical activity monitoring applications, a wireless sensor node and an accelerometer sensor module. The physical activity decision is based on the acceleration data collected from body sensor node attached on the user's chest. We proposed a method to classify physical activities using rough sets which can be generated rules as attributes of the preprocessed data and by constructing a new decision table, rules reduction. Our experimental results have successfully validated that performance of the rule patterns after removing the redundant attribute values are better and exactly same compare with before.
Key Words : physical activity, rough sets, tri-axial accelerometer, wireless sensor network, body sensor node
1. 서 론
최근의 센서는 고성능화 · 지능화 · 고집적화 · 저전력 화 및 소형화의 추세로 발전해 가고 있으며 , 환경 , 국 방 , 자동화 시스템 , 의료 등 다양한 분야에서 유비쿼터 스 센서네트워크 (ubiquitous sensor network) 기반의 서 비스를 통해 효과적인 센서 데이터 처리가 가능하여 그 응용범위가 확대되고 있다 . 그 중 가장 비약적인 발
전을 보이고 있는 분야가 의료분야이며 센서 기술은 미래 의료 패러다임의 변화를 이끌 핵심 역할을 담당 할 것으로 기대하고 있으며 , 센서를 활용한 의료기기
개발에 있어서도 가장 관심이 집중되고 있다 . 의료분야 에서 센서는 생체정보 측정 , 환자 모니터링 , 활동량 모
니터링 , 자원관리 등 다양한 분야로 활용이 가능하다 .
특히 , 센서를 활용한 신체활동상태 인식 기술은 센 서를 인체의 특정 부위에 부착시키고 , 인간의 활동에
의해 발생하는 데이터를 조합하여 기계로 하여금 인간 의 동작을 구분토록 하고 있다 . 인체의 동작상태 또는
활동의 정량적 측정에 대한 상황인식 기술에 사용되고 있는 센서는 작고 가벼워서 몸에 착용하기 편리해야 하며 장시간 동작하기 위해 저전력 , 저가격등이 요구되
고 있다 . 현재까지 일상생활 중의 신체활동상태 ( 걷기 ,
앉기 , 서기 , 뛰기 , 눕기 등 ) 인식 관련연구에서의 신호 측정에는 가속도 센서가 주로 이용되고 있고 , 측정된
가속도 신호로부터 인체의 동작상태 정보와 활동량 분 석을 위해서 주파수 성분 분석 (frequency components analysis) [1,2] , 뉴럴네트워크 (neural network) [2,3] 와 웨이
브렛 변환 (wavelet transform) [4-6] 과 같은 방법을 적용한 다양한 연구들이 진행되고 있다 . 그러나 이러한 방법들 은 복잡한 연산으로 비교적 많은 시간이 걸리며 규칙 을 과다하게 생성하기 때문에 실용성이 낮고 시스템의 설계도 복잡하다는 제약점을 가지고 있다 .
따라서 본 논문에서는 러프집합을 신체활동상태 결정 에 적용하여 규칙을 감축하고 감축된 규칙들 간의 중복
*
계명대학교생체정보기술개발사업단(Biomedical Information Technology Center, Keimyung University, Daegu 700-720, Korea)
**
부경대학교전자컴퓨터정보통신공학부(Div. of Electronics, Computer and Telecommunication Engineering, Pukyong National University, Busan 608-737, Korea)
***
계명대학교의과대학의료정보학교실(Dept. of Medical Informatics, School of Medicine, Keimyung University, Daegu 700-720, Korea)
†
Corresponding author : [email protected]
(Received : July 28, 2009, Revised : September 17, 2009
Accepted : October 12, 2009)
속성 값들을 제거하여 규칙을 최소화하는 방법을 제안 한다. 생체센서노드와 가속도 센서보드를 가슴착용형으 로 일체 제작하여 피실험자의 가슴 중앙 부위에 착용시 키고 획득한 신체 가속도 데이터로부터 X, Y, Z 각 축의 입력 속성 중 불필요한 속성 값들을 제거하기 위해 러 프집합을 적용하여 러프집합 기반의 규칙패턴을 생성하 고, 빈도수가 높은 속성 값을 선택하여 최종 규칙 패턴 을 추출하였다. 제안된 러프집합기반 신체활동상태 결 정은 복잡한 규칙을 단순화시키고 규칙의 과다한 중복 에 대한 문제를 개선함으로서 규칙패턴 생성 시간을 단 축시킬 뿐만 아니라 단순화된 규칙에 따라 신체활동상 태 규칙을 결정하는데 유용하게 적용이 가능하다.
2. 러프집합 기반 신체활동상태 결정
본 논문에서 제안된 3축 가속도 센서를 이용한 러프 집합 기반의 신체활동상태 결정 시스템의 전체 구성은 Fig. 1과 같다. 러프집합 기반의 신체활동상태 결정 시 스템은 피실험자의 가슴에 착용하는 생체센서노드와 가속도 센서로부터의 출력 신호를 모니터링 하기 위한 서버 PC로 구성되어 있다.
피실험자가 생체센서노드를 가슴에 착용하고 러닝머 신위에서 측정한 신체 가속도 데이터는 IEEE 802.15.4 무선통신을 통해 서버 PC로 전송되며 그 결과는 원격 지에서 실시간으로 모니터링 할 수 있도록 구성하였다.
신체활동상태를 결정하기 위한 전처리 과정으로서 3축 가속도 센서로부터 얻은 신체 가속도 데이터의 이산화 를 통해 이산화 구간을 추출하고, 이산화된 구간을 근 거로 하여 규칙패턴을 생성한다. 생성된 규칙패턴에서 동일한 패턴의 규칙들을 제거하고 후보 규칙패턴을 생 성함으로서 최종적으로 러프집합 기반으로 한 신체활 동상태를 결정한다.
2.1. 3축 가속도 센서
신체활동상태 결정에 필요한 신체 가속도 데이터 수
집을 위하여 3축 가속도 센서(MMA7260Q, Freescale) 를 사용하였다. 이 센서는 저중력 신호 특성이 필요한 분야에 사용할 수 있도록 개발된 저전력 3축 가속도계 로서 X, Y, Z축 방향 감지를 위해 X-Y축에 교차 연결 된 핑거 형태의 단일 질량 변환기와 축에 장착되어 Z 축 가속이 감지되면 비틀림 효과를 제공하는 Teeter Totter 중량을 사용한다. Fig. 2에서와 같이 가속력이 진자를 움직이면 그 결과로 정전용량이 변화하게 된다.
X축 및 Y축 방향의 가속력은 이동 경로에 따라 이동 하는 감지 핑거를 통해 감지되며, Z축 가속력은 시험 대상의 회전에 의해 감지가 가능하다. 단일 디바이스에 서 1.5 g, 2 g, 4 g, 6 g의 g-선택 기능을 통한 감도 선택 이 가능하며, 낮은 소비전력의 특징을 가지고 있다. 3 축 가속도 센서의 사양은 Table 1에 나타내었다.
2.2. 생체센서노드
생체센서노드는 신체 가속도 데이터의 샘플링 및 무 선통신을 하기 위한 것으로 무선센서노드와 가속도 센 서보드로 구성하여 설계 및 구현하였다. 무선센서노드 는 Fig. 3에서와 같이 제어부, 무선통신부, 센서부, 전 원부로 구성되며, u-헬스케어 응용에 적합한 생체센서 노드 설계를 위하여 각 구성 부품은 MSP430F1611(TI, USA) 마이크로컨트롤러와 IEEE 802.15.4를 적용한 RF트랜시버(CC2420, Chipcon AS, Norway), 외부 플 래시메모리(M25P80, ST Microelectronics, USA)로 구 성하였다. MSP430F1611은 16비트 RISC로 내부에 Fig. 1. Overall system architecture based on rough sets. Fig. 2. Measurement principle of tri-axial accelerometer.
Table 1. Specification of tri-axial accelerometer
Axis 3-axis(X, Y, Z)
Selective sensitivity 1.5 g, 2 g, 4 g, 6 g high sensitivity(800 mV/g @1.5 g) Low power consumption 500 uA, 3 uA(Idle state)
Low power 2.2 V ~ 3.6 V
Fast turn-on time 1 ms
Size 6 mm × 6 mm × 1.45 mm
48 KB 의 프로그램 메모리와 10 KB 의 램을 가지고 있 으며 , 12 비트 ADC 8 채널을 가지고 있다 .
RF 트랜시버 모듈로 사용된 CC2420 은 IEEE802.15.4 /ZigBee 를 지원하는 RF 칩으로 2400~2483.5MHz 대역 을 지원하며 , 직접시퀀스 대역확산 (direct sequence spread spectrum, DSSS) 방식으로 동작하며 , O-QPSK 변조 방 식과 250 kbps 의 전송률을 지원한다 .
가속도 센서보드는 무선센서노드와 확장커넥터를 통 해 연결하여 신체활동상태 모니터링이 가능하도록 하였 다 . 3 축 가속도 센서의 출력 신호는 생체센서노드에 내
장된 A/D 컨버터를 통해 아날로그 신호에서 디지털 신
호로 변환되고 , IEEE 802.15.4 무선통신을 통해 신체 가
속도 데이터는 서버 PC 로 무선 전송한다 . 설계에 사용된 무선센서노드의 하드웨어 사양은 Table 2 에 명시하였다 .
2.3. 신체활동상태 결정
본 절에서는 3 축 가속도 센서로부터 얻은 데이터를 이용하여 신체활동상태를 결정하기 위한 전처리 과정으 로서 데이터의 이산화 (discretization) 방법과 규칙생성
(rule generation) 절차에 대해서 논의한다 . 만약 주어진
데이터 가 s 개의
인스턴스들을 포함하는 n 차원 벡터이고 , j 번째 속성 ( 즉
차원 ) , 은 s 개의 데이 터 포인트들로 구성되고 , 출력 는
m 개의 라벨로 이루어진 집합이라고 하자 . 이때 각 속성
의 이산화 구간 및 규칙생성은 다음과 같은 과정에 의해 서 추출된다 .
단계 1: j 번째 입력 속성의 도메인 d j =[min( a j ), max( a j )] 을 추출하고 , 해당 라벨에 대응하는 j 번째 속성 의 내부 구간 을 찾는다 . 과
은 각각 j 번째 속성에서 k 번째 라벨에 대
응하는 속성 값들의 최소값과 최대값을 나타낸다 .
단계 2: 단계 1 에서 추출된 내부 구간들 사이에서 중 첩된 구간들을 중심으로 Fig. 4 에서 보여주는 것처럼 , 주 어진 데이터 포인트들을 분할 , 한
X x = {
ix
i= ( x
i1, , , x
i2… x
in) , i = 1 2 , , , … s }
a
j= { x
1j, , , x
2j… x
sj} ( j = 1 2 , , … n )
C c = {
kk = 1 2 , … , m }
I
jk= [ I
jkl, I
jku] I
jkl= min a ( )
jI
jku= max a ( )
jd
j= o
j1+ + + o
j2… o
jlFig. 3. Block diagram of wireless sensor node.
Table 2. Specification of wireless sensor node
Item Specification Remarks
sensor Body node
Processor MSP430F1611
Memory 48 kB Program flash
10 kB Data RAM
Current draw 1.8 mA Active mode
5.1 uA Sleep mode
ADC 12 bit resolution 8 channels
Power 3 V Battery
Connector Expansion Sensor boards
USB Type Serial programming
RF transceiver CC2420
Frequency band 2.4 GHz ~ 2.485 GHz IEEE 802.15.4 compliant
Sensitivity − 95 dBm
Transfer rate 250 kbps
RF power − 25 dBm ~ 0 dBm
Range 150 m
20 ~ 30 m Outdoor
Indoor
Current draw Rx: 18.8 mA,
Tx: 17.4 mA
1 uA Sleep mode
Antenna Ceramic PCB antenna
다 . l은 중첩된 구간을 중심으로 분할된 이산화된 구간 의 수를 , 은 이산화된 구간의 길이를 나타내고 , 이
산화된 구간의 길이 (length) 의 총합은 전체 도메인의
길이와 동일하다 .
단계 3: 각 인스턴스를 정성적으로 평가하기 위해서 위의 과정으로 추출된 이산화된 구간을 근거로 해당 구간을 언어적인 항 (linguistic term), 즉 slow, moderate,
fast 등으로 변환하고 규칙패턴을 생성한다 .
단계 4: 단계 3 에서 생성된 규칙패턴에서 동일한 패 턴의 규칙들을 제거하고 신체활동상태를 결정하기 위 한 후보 규칙패턴을 생성한다 .
제안된 방법에서는 위의 과정으로부터 생성된 후보 규칙패턴에서 여러 불필요한 속성 값 (redundant attribute values) 들을 제거하기 위해서 1980 년 초 Pawlak [7,8] 에
의해서 제안된 러프집합의 개념과 의사결정 규칙 테이 블에서 코어 (core) 와 리덕트 (reduct) 개념을 추출하기 위해 Slowinski 와 Stefanowski [9] 에 의해서 제안된 식별 가능행렬을 이용하였다 . 오브젝트 ( 즉 인스턴스 ) 들의 유 한집합 와 속성들의 집합 A로 이루 어진 정보시스템 (information system) IS = ( U, A ) 이 있
다고 하자 . 이때 각 속성 의 도메인 V a 는 정보 함 수 (information function) f a : U → V a 으로 정의되고 , 식 별가능행렬 (discernibility matrix) 은 식 (1) 과 같이 n × n
행렬로 정의된다 . c ij ( i , j = 1,2,..., n ) 는 i번째 오브젝트 x i
와 j번째 오브젝트 x j 을 구별하는 모든 속성들의 집합 을 의미한다 .
(1)
예제 1) Table 3 과 같은 규칙 테이블이 있다고 가정하자 .
은 오브젝트들의 집합 ,
는 3 개의 조건부 ( 입력부 ) 속성과 1 개의 의사결정부 ( 출 력부 ) 속성을 나타낸다 .
식 (1) 에 의해서 , Table 3 의 규칙 테이블은 Table 4 와
같은 식별가능행렬을 구성할 수 있다 .
Table 4 에서 ‘-’ 는 동일한 출력 속성값 ( 즉 라벨 ) 을 가
지는 경우와 동일한 오브젝트들을 가지는 경우를 나타 낸 것이다 . 다시 말해서 , 동일한 클래스 내에 존재하는 인스턴스들은 이미 전체 공간 내에서 특정 부분공간으 로 분할되어 있으므로 식별가능요소를 추출할 필요가 없다 . 또한 식별가능행렬에서 주 대각원소를 제외한 하 삼각 행렬의 원소와 상삼각 행렬의 원소는 서로 대칭 적인 특성을 가지기 때문에 어떠한 행렬의 원소를 사 용하더라도 동일한 특성을 갖는다 . 또한 Table 4 의 식 별가능행렬에서 코어속성은 단일 원소로 이루어진 항 목들의 집합으로 식 (2) 와 같이 정의될 수 있다 .
(2)
a는 i번째와 j번째 속성을 유일하게 식별할 수 있는 속성을 의미한다 .
식 (2) 로부터 , Table 4 의 식별가능행렬의 예에서 코 어 속성은 유일한 단일 속성을 가진 { a 1 , a 3 } 가 되고 , 리 덕트는 하나 이상의 속성을 포함하는 {{ a 1 , a 2 , a 3 }, { a 2 , a 3 }, {a 1 , a 3 }, { a 1 , a 2 }} 가 된다 . 즉 정보 시스템 IS 에 서 코어는 주어진 인스턴스를 분류하는데 반드시 필요 한 속성을 의미하고 , 리덕트는 그 인스턴스를 분류하는
데 부가적으로 필요한 속성을 의미한다 . 이것은 집합의 근사화 개념 즉 상한근사 (upper approximation) 와 하한 근사 (lower approximation) 에서 아주 중요한 특징이며 확률개념에 기반한 Dempster-Shafer 의 증거이론 (evidence theory) 과도 유사한 성질을 보여준다 [10,11] .
다음으로 식별가능행렬에서 코어 속성과 리덕트 속 성을 계산하기 위해서 식 (3) 의 식별가능함수 를 계산한다 .
(3) .
U = { x
1, , , x
2… x
n}
a A ∈
c
ij( ) = { a A ∈ : a x ( ) a x
i≠ ( )
j} , , i j
U = { x
1, , … x
6} A = { a
1, , , a
2a
3d }
Core A ( ) = { a A ∈ : c
ij= ( ) a } , i j ,
f A ( ) f A ( ) ( ∑ δ x y ( ) , : ( ) U x y , ∈
2and δ x y ( ) ∅ , ≠ )
x y, ( ) U2
∏
∈=
Fig. 4. Example of discretized interval with three labels.
Table 3. Example rule table
U A a
1a
2a
3d
x
11 1 2 1
x
21 1 3 1
x
32 2 1 2
x
42 2 3 3
x
51 2 1 2
x
62 1 3 3
Table 4. Example 1 discernibility matrix
U U x
1x
2x
3x
4x
5x
6x
1- - a
1, a
2, a
3a
1, a
2, a
3a
2, a
3a
1, a
3x
2- - a
1, a
2, a
3a
1, a
2a
2, a
3a
1x
3a
1, a
2, a
3a
1, a
2, a
3- a
3- a
2, a
3x
4a
1, a
2, a
3a
1, a
2a
3- a
1, a
3-
x
5a
2, a
3a
2, a
3- a
1, a
3- a
1, a
2, a
3x
6a
1, a
3a
1a
2, a
3- a
1, a
2, a
3-
는 최소 논리곱 정규형 (conjunctive normal normal form, CNF) 을 의미하며 , 최종적으로 코어와 리덕트를 계산하기 위해 부울 대수의 흡수법칙
(absorption law) 을 이용한다 .
예제 2) Table 4 의 식별가능행렬로부터 식별가능함
수 의 사용 예 .
= ( a 1 + a 2 + a 3 )( a 1 + a 2 + a 3 )( a 2 + a 3 )( a 1 + a 3 ) ( a 1 + a 2 + a 3 )( a 1 + a 2 )( a 2 + a 3 ) a 1 a 3 ( a 2 + a 3 ) ( a 1 + a 3 )( a 1 + a 2 + a 3 )
=( a 2 + a 3 )( a 1 + a 3 ) a 1 a 3
= a 1 a 3
{ a 1 , a 3 } 는 식별가능함수 의 요소 즉 리덕트를 의미한다 . 따라서 식 (2) 와 (3) 에 의해서 속성 { a 1 , a 3 }
은 Table 4 의 식별가능행렬에서 코어 속성인 동시에
리덕트 속성을 의미하고 , 속성 a 2 는 불필요한 속성이 라는 것을 나타낸다 .
마지막으로 식 (3) 으로부터 얻은 리덕트 속성을 근
거로 오브젝트들의 불필요한 속성값들을 제거하기 위 해서 식 (4) 의 식별가능함수 를 계산한다 .
(4)
예제 3) 리덕트 속성 { a 1 , a 3 } 만으로 재구성된 Table 4 의
식별가능행렬에서 불필요한 속성값의 제거에 관한 예 . (A) = ( a 1 + a 3 )( a 1 + a 3 ) a 3 ( a 1+ a 3 )= a 3 ,
(A) = ( a 1 + a 3 ) a 1 a 3 a 1= a 1 a 3 ,
(A) = ( a 1 + a 3 )( a 1 + a 3 ) a 3 a 3 = a 3 , (A) = ( a 1 + a 3 ) a 1 a 3 ( a 1+ a 3 ) = a 1 a 3 , (A) = a 3 a 3 ( a 1+ a 3 )( a 1 + a 3 ) = a 3
(A) = ( a 1 + a 3 ) a 1 a 3 ( a 1+ a 3 ) = a 1, a 3
식 (4) 를 이용하여 각 오브젝트의 불필요한 속성값을 제거한 결과 , 3 개의 오브젝트 x 1 , x 3 , x 5 는 조건부 속성 a 1
의 값이 불필요한 속성값이라는 것을 나타낸다 . 따라서 Table 6 과 같은 최종 규칙 테이블이 생성되고 , 이들 규칙 패턴만을 사용하더라도 신체활동상태를 결정할 수 있다 .
3. 실험 및 결과
3 축 가속도 센서를 이용한 신체활동상태 실험은 생체 센서노드와 가속도 센서보드를 가슴착용형으로 일체 제 작하여 건강상태가 양호한 성인 ( 연령 29 세 ) 남 ( 신장 173 cm, 체중은 65 kg) 1 명을 대상으로 하였으며 , 피실험
자의 가슴 중앙 부위에 Fig. 5 와 같이 착용시키고 ,
Standing, Walking, Running 의 동작 상태를 수행하여 피실
험자의 신체의 움직임에 따라 변화하는 신체 가속도 데 이터를 측정하였다 . 본 실험은 러닝머신 위에서 Walking, Running 동안의 신체의 움직임에 따른 신호를 3 축 가속
δ x y ( ) ,
∑
x y, ( ) U2
∏
∈f A ( ) f A ( )
f A ( )
f
x( ) A
f
x( ) A ( ∑ δ x y ( ) , : y U ∈ and δ x y ( ) ∅ , ≠ )
y U