DBPIA-NURIMEDIA

Similar documents
DBPIA-NURIMEDIA

°í¼®ÁÖ Ãâ·Â

지능정보연구제 16 권제 1 호 2010 년 3 월 (pp.71~92),.,.,., Support Vector Machines,,., KOSPI200.,. * 지능정보연구제 16 권제 1 호 2010 년 3 월

<313120C0AFC0FCC0DA5FBECBB0EDB8AEC1F2C0BB5FC0CCBFEBC7D15FB1E8C0BAC5C25FBCF6C1A42E687770>

DBPIA-NURIMEDIA

High Resolution Disparity Map Generation Using TOF Depth Camera In this paper, we propose a high-resolution disparity map generation method using a lo

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Mar.; 28(3),

Microsoft PowerPoint - 30.ppt [호환 모드]

08김현휘_ok.hwp

09권오설_ok.hwp

example code are examined in this stage The low pressure pressurizer reactor trip module of the Plant Protection System was programmed as subject for

김경재 안현철 지능정보연구제 17 권제 4 호 2011 년 12 월

09È«¼®¿µ 5~152s

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. vol. 29, no. 6, Jun Rate). STAP(Space-Time Adaptive Processing)., -

<333820B1E8C8AFBFEB2D5A B8A620C0CCBFEBC7D120BDC7BFDC20C0A7C4A1C3DFC1A42E687770>

2 : (Juhyeok Mun et al.: Visual Object Tracking by Using Multiple Random Walkers) (Special Paper) 21 6, (JBE Vol. 21, No. 6, November 2016) ht

04 최진규.hwp

(JBE Vol. 21, No. 1, January 2016) (Regular Paper) 21 1, (JBE Vol. 21, No. 1, January 2016) ISSN 228

. 서론,, [1]., PLL.,., SiGe, CMOS SiGe CMOS [2],[3].,,. CMOS,.. 동적주파수분할기동작조건분석 3, Miller injection-locked, static. injection-locked static [4]., 1/n 그림

. 고성능마이크로프로세서 LU 와레지스터 파일의구조 (2.). 직접디지털주파수합성기 (FS) 의구조 3. 고성능마이크로프로세서부동소수점연산기 (Floating-Point Unit) 구조 (2) (2.) (2.) 2. 암호화를위한 VLSI 구조와설계의개요 (2.) 다음참

[ReadyToCameral]RUF¹öÆÛ(CSTA02-29).hwp

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Jun.; 27(6),

DBPIA-NURIMEDIA

¼º¿øÁø Ãâ·Â-1

À±½Â¿í Ãâ·Â

DBPIA-NURIMEDIA

DBPIA-NURIMEDIA

슬라이드 1

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Nov.; 25(11),

8-VSB (Vestigial Sideband Modulation)., (Carrier Phase Offset, CPO) (Timing Frequency Offset),. VSB, 8-PAM(pulse amplitude modulation,, ) DC 1.25V, [2

28 저전력복합스위칭기반의 0.16mm 2 12b 30MS/s 0.18um CMOS SAR ADC 신희욱외 Ⅰ. 서론 Ⅱ. 제안하는 SAR ADC 구조및회로설계 1. 제안하는 SAR ADC의전체구조

45-51 ¹Ú¼ø¸¸

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Sep.; 30(9),

6.24-9년 6월

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Feb.; 29(2), IS

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Jun.; 27(6),

(JBE Vol. 22, No. 2, March 2017) (Regular Paper) 22 2, (JBE Vol. 22, No. 2, March 2017) ISSN

Gray level 변환 및 Arithmetic 연산을 사용한 영상 개선

Microsoft PowerPoint - o8.pptx

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Nov.; 26(11),

슬라이드 제목 없음

DBPIA-NURIMEDIA

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Mar.; 26(3),

2 : (JEM) QTBT (Yong-Uk Yoon et al.: A Fast Decision Method of Quadtree plus Binary Tree (QTBT) Depth in JEM) (Special Paper) 22 5, (JBE Vol. 2

서론 34 2

歯111

14.531~539(08-037).fm

정보기술응용학회 발표

<4D F736F F F696E74202D2037C0E52DC4B3BDC3BFCDB8DEB8F0B8AE>

歯AG-MX70P한글매뉴얼.PDF

ISSUE PAPER(Vol.2, No.3)

#유한표지F

1 : HEVC Rough Mode Decision (Ji Hun Jang et al.: Down Sampling for Fast Rough Mode Decision for a Hardware-based HEVC Intra-frame encoder) (Special P

<31325FB1E8B0E6BCBA2E687770>

(JBE Vol. 7, No. 4, July 0)., [].,,. [4,5,6] [7,8,9]., (bilateral filter, BF) [4,5]. BF., BF,. (joint bilateral filter, JBF) [7,8]. JBF,., BF., JBF,.

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Dec.; 26(12),


untitled

歯15-ROMPLD.PDF

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE. vol. 26, no. 9, Sep GHz 10 W Doherty. [4]. Doherty. Doherty, C

, N-. N- DLNA(Digital Living Network Alliance).,. DLNA DLNA. DLNA,, UPnP, IPv4, HTTP DLNA. DLNA, DLNA [1]. DLNA DLNA DLNA., [2]. DLNA UPnP. DLNA DLNA.

RRH Class-J 5G [2].,. LTE 3G [3]. RRH, W-CDMA(Wideband Code Division Multiple Access), 3G, LTE. RRH RF, RF. 1 RRH, CPRI(Common Public Radio Interface)

#Ȳ¿ë¼®

PowerPoint 프레젠테이션

04 김영규.hwp

인문사회과학기술융합학회

07.045~051(D04_신상욱).fm

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Feb.; 28(2),

, V2N(Vehicle to Nomadic Device) [3]., [4],[5]., V2V(Vehicle to Vehicle) V2I (Vehicle to Infrastructure) IEEE 82.11p WAVE (Wireless Access in Vehicula

<313920C0CCB1E2BFF82E687770>

0125_ 워크샵 발표자료_완성.key

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

Software Requirrment Analysis를 위한 정보 검색 기술의 응용


<353420B1C7B9CCB6F52DC1F5B0ADC7F6BDC7C0BB20C0CCBFEBC7D120BEC6B5BFB1B3C0B0C7C1B7CEB1D7B7A52E687770>

FMX M JPG 15MB 320x240 30fps, 160Kbps 11MB View operation,, seek seek Random Access Average Read Sequential Read 12 FMX () 2

(JBE Vol. 20, No. 6, November 2015) (Regular Paper) 20 6, (JBE Vol. 20, No. 6, November 2015) ISSN

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Mar.; 25(3),

DBPIA-NURIMEDIA

DBPIA-NURIMEDIA

Ⅱ. Embedded GPU 모바일 프로세서의 발전방향은 저전력 고성능 컴퓨팅이다. 이 러한 목표를 달성하기 위해서 모바일 프로세서 기술은 멀티코 어 형태로 발전해 가고 있다. 예를 들어 NVIDIA의 최신 응용프 로세서인 Tegra3의 경우 쿼드코어 ARM Corte

½½¶óÀ̵å Á¦¸ñ ¾øÀ½

???? 1

10 노지은.hwp

DBPIA-NURIMEDIA

±è¼ºÃ¶ Ãâ·Â-1

05( ) CPLV12-04.hwp

<35335FBCDBC7D1C1A42DB8E2B8AEBDBAC5CDC0C720C0FCB1E2C0FB20C6AFBCBA20BAD0BCAE2E687770>

01이국세_ok.hwp

APOGEE Insight_KR_Base_3P11

Observational Determinism for Concurrent Program Security

2 : (Jaeyoung Kim et al.: A Statistical Approach for Improving the Embedding Capacity of Block Matching based Image Steganography) (Regular Paper) 22

강의10

V28.

PowerPoint 프레젠테이션

Á¶Áø¼º Ãâ·Â-1

Intra_DW_Ch4.PDF

THE JOURNAL OF KOREAN INSTITUTE OF ELECTROMAGNETIC ENGINEERING AND SCIENCE Sep.; 26(10),

부문별 에너지원 수요의 변동특성 및 공통변동에 미치는 거시적 요인들의 영향력 분석

이 장에서 사용되는 MATLAB 명령어들은 비교적 복잡하므로 MATLAB 창에서 명령어를 직접 입력하지 않고 확장자가 m 인 text 파일을 작성하여 실행을 한다

Transcription:

2012 년 3 월전자공학회논문지제 49 권 SP 편제 2 호 149 논문 2012-49SP-2-19 시간적근접성향상을통한효율적인 SVM 기반음성 / 음악 분류기의구현방법 ( Efficient Implementation of SVM-Based Speech/Music Classifier by Utilizing Temporal Locality ) 임정수 *, 장준혁 ** * (Chungsoo Lim and Joon-Hyuk Chang ) 요 약 서포트벡터머신 (support vector machine) 을이용한음성 / 음악분류기는높은분류정확도로주목받고있으나많은계산량과저장공간을요구하므로특히임베디드시스템과같이자원이제한적인경우에는효율적인구현이필수적이다. 특히, 서포트벡터 (support vector) 의차원과개수에의해결정되는서포트벡터의저장공간의크기는일반적으로임베디드프로세서의캐시 (cache) 의크기보다훨씬크므로캐시에존재하지않는서포트벡터를메인메모리로부터읽어야하는경우가많다. 메모리에서데이터를가져오는데는캐시나레지스터와비교했을때상대적으로긴시간과많은에너지가소비되어분류기의실행시간과에너지소비를증가시키는요인이된다. 본논문에서는분류기의데이터접근양식을보다시간적근접성을가지게변환하여일단프로세서칩으로불려진데이터를최대한활용함으로써메모리의접근횟수를줄여전체적인서포트벡터의실행시간의단축시키는기법을제안한다. 실험을통해메모리로의접근회수의감소와이에따른실행시간그리고에너지소비의감소를확인하였다. Abstract Support vector machines (SVMs) are well known for their pattern recognition capability, but proper care should be taken to alleviate their inherent implementation cost resulting from high computational intensity and memory requirement, especially in embedded systems where only limited resources are available. Since the memory requirement determined by the dimensionality and the number of support vectors is generally too high for a cache in embedded systems to accomodate, frequent accesses to the main memory occur inevitably whenever the cache is not able to provide requested data to the processor. These frequent accesses to the main memory result in overall performance degradation and increased energy consumption because a memory access typically takes longer and consumes more energy than a cache access or a register access. In this paper, we propose a technique that reduces the number of main memory accesses by optimizing the data access pattern of the SVM-based classifier in such a way that the temporal locality of the accesses increases, fully utilizing data loaded into the processor chip. With experiments, we confirm the enhancement made by the proposed technique in terms of the number of memory accesses, overall execution time, and energy consumption. Keywords : Support Vector Machine (SVM), Selectable Mode Vocoder (SMV), Speech/Muisc Classification Algorithm, Embedded System, Memory, Cache * 정회원, 목포대학교정보산업연구소 (Research Institute of Information Science and Engineering, Mokpo National University) ** 정회원, 한양대학교융합전자공학부 (Dep. of Electronic Engineering, Hanyang University) 본연구는지식경제부및한국산업기술평가관리원의 IT핵심기술개발사업의일환으로수행하였음. [2009-S-036-1, 고성능가상머신규격및기술개발 ] 이논문은 2011년도정부 ( 교육과학기술부 ) 의재원으로한국연구재단의대학중점연구소지원사업으로수행된연구임 (2011-0022980) 접수일자 : 2011년7월14일, 수정완료일 : 2011년12월9일 (276)

150 시간적근접성향상을통한효율적인 SVM 기반음성 / 음악분류기의구현방법임정수외 Ⅰ. 서론 근래에무선통신기술을기반으로하는멀티미디어서비스의비약적인성장으로제한된주파수대역의효율적인사용이중요한과제로연구되어지고있다. 제한된통신망의효율적인이용을위하여가변전송률을가지는다양한음성코덱이개발되었는데 [1, 2], 음성신호의유형에따라적절한전송률을할당하기위해서는음성신호의유형을정확히분별하는작업이선행되어야한다. 특히음성과음악의분류는각기할당되어야하는전송률의차이가크기때문에매우중요하고따라서활발히연구되어지고있는데 [3, 4], 최근에서포트벡터머신 (SVM) 을이용한분류기가분류의정확도로인해주목받고있다 [5, 6]. 그러나 SVM은일반적으로많은계산량과서포트벡터를저장하기위한넓은메모리공간을요구한다. 특히 SVM 기반분류기를임베디드시스템에서구현하기에는임베디드시스템의제한된프로세서의성능이나메모리의크기로인해효율적인구현이절실히요구되어진다. 대부분의프로세서는데이터와코드를독립적인메모리에서불러들여사용하는 Von Neumann 구조 [7] 를가지고있다. 프로세서와메모리의구조를그림 1에나타내었다. 캐시와레지스터파일 (register file) 은프로세서칩 (processor chip) 안에위치한다. 프로세서는속도를높이는방향으로개발이되어져왔고, 메모리는용량을늘이는방향으로발전되어져왔기때문에, 원래컸었던둘사이의속도의격차가점점더커지게되었다. 이속도의차이때문에메모리보다접근속도는빠르지만용량이적은캐시 (cache) 가도입되어메모리와프로세서사이에서메모리의역할을일부감당하게되었다. 즉캐시가프로세서파이프라인에서필요한데이터를가지고있다면, 메모리접근없이그데이터는레지스터파일로옮겨져프로세서파이프라인에서연산에사용되어진다. 프로세서와메모리사이의속도격차가커질수록둘사이에서중개의역할을하는캐시의중요성이높아지게되고, 또한캐시의활용정도에따라서성능의차이가커지게되었다. 일반적으로학습된서포트벡터머신은많은수의서포트벡터를포함하고또한벡터의차원도높은경우가많아서, 일반적인임베디드프로세서의온칩캐시 (on-chip cache) 의크기 (8KB 64KB) 로는모든서포트벡터를캐시에저장할수없다. 따라서서포트벡터 그림 1 프로세서와메모리의구조. Fig. 1. Processor and memory structure. 중일부만이캐시에저장되어지고계속메모리를접근하여데이터를캐시로이동시켜야한다. 메모리에의접근은레지스터파일이나캐시에접근하는것보다실행시간과에너지소비의관점에서불리하므로최대한줄여야한다. 그러나서포트벡터머신의분류과정을살펴보면하나의입력벡터에대해모든서포트벡터들이순차적으로읽혀서연산에사용되고다음입력벡터에대해서다시처음부터읽혀진다. 그러므로캐시가모든서포트벡터를저장할만큼크지않다면, 각서포트벡터는메모리로부터캐시로불려진후캐시나레지스터파일에저장되어있는동안하나의입력벡터를위해서만사용되어진다. 따라서서포트머신의데이터접근양식 (data reference pattern) 은매우비효율적이고개선의여지가있다고볼수있다. 본논문에서는일단프로세서칩 (processor chip) 으로읽혀진데이터를효율적으로사용하기위하여데이터접근의시간적근접성 (temporal locality) [8] 를증가시키는방향으로소스코드를변환하는방법을제안한다. 즉하나의서포트벡터가캐시나레지스터파일에저장되는동안하나의입력벡터가아니라여러개의입력벡터를위해쓰이게되어서메모리접근횟수를줄이게된다. 적은메모리접근횟수를가지고같은일을한다면그것은각메모리접근의효율성을높였다는의미로도생각될수있다. 본논문은다음과같이구성된다. Ⅱ장에서는서포트벡터머신기반음성 / 음악분류기에대해서설명하고그의데이터접근양식을분석한다. Ⅲ장에서는 Ⅱ장의분석을바탕으로보다효율적인데이터접근방법을제안한다. Ⅳ장에서는실험결과를보이고 Ⅴ장에서본논문을끝맺는다. (277)

2012 년 3 월전자공학회논문지제 49 권 SP 편제 2 호 151 Ⅱ. SVM 기반음성 / 음악분류기의데이터접근양식분석 이번장에서는본논문의주제가되는 SVM기반의음성 / 음악분류기의데이터접근양식을분석해본다. 먼저분류의기초가되는판별식은다음과같다. (1) 는학습에의해구해진 M개의서포트벡터 (support vector) 중 i번째벡터이다. 최적화바이어스 (optimization bias) 와라그랑제승수 (Lagrange Multiplier) 는학습에의해구해지는 quadratic programming problem의해이다. 커널함수로 radial basis function (RBF) 를사용한다면 는다음과같이표현된다. exp (2) σ는 RBF의폭과관계된파라미터이고, RBF를커널 NUM in: the number of input vectors NUM sv: the number of support vectors NUM feature: the number of features in a support/input vector SV[ ]: each element of this structure contains a support vector and its corresponding alpha IN[ ]: each element of this structure is an input vector KF: kernel function output F: decision function output for (i=0;i<num in;i=i+1) { for (j=0;j<num sv ;j=j+1 ) { for (k=0;k<num feature ;k=k+1 ) { dist+=(sv[j].feature[k]-in[i].feature[k]) 2 KF=exp(-1/σ 2 * dist) F+=SV[j].alpha*KF F=F+bias 그림 2. SVM 기반분류기의의사코드. Fig. 2 Pseudo code for SVM-based classifier. 함수로사용하는이유는 RBF는입력신호가선형분류가가능하지않은경우선호되는커널함수이기때문이다. 식 (1) 과 (2) 로구성되는판별식에대응하는의사코드 (pseudo code) 는그림 2와같다. NUM in, NUM sv, NUM feature 는각기입력벡터의개수, 서포트벡터의개수, 그리고서포트벡터와입력벡터의차원을나타낸다. SV는서포트벡터를저장하고있는구조체로차원이 NUM feature 인서포트벡터와그에해당하는라그랑제승수로구성되어진다. IN은입력벡터를저장하고있는구조체이다. 각구조체속의벡터는어레이로저장되는데그이름은 feature 이다. dist는식 (2) 에서 에해당하는값이고, KF는식 (2) 로표현되어지는커널함수의결과값이고, F는식 (1) 의좌변의 이다. 의사코드에는세개의루프가있는데, 첫번째루프는입력벡터를순차적으로판별식에대입하는역할을하고, 두번째루프는각입력벡터에대해모든서포트벡터를차례대로대응시키고, 마지막루프는하나의입력벡터와하나의서포트벡터의벡터연산을수행한다. 본장의분석대상이되는서포트벡터는각입력벡터에대해벡터의요소단위로순차적으로불려서연산에사용된다. 다시말하면, 하나의입력벡터에대하여첫서포트벡터의첫요소부터마지막서포트벡터의마지막요소까지차례대로읽혀지고, 다음입력벡터에대해서도같은순서로읽혀진다. 이런엑세스패턴이캐시와레지스터파일을어떻게활용하는지알아보기위해간단한캐시구조와서포트벡터, 2개의입력벡터 in1, in2를가지고캐시와레지스터파일에저장되는내용이어떻게변하는지그림 3에나타내었다. 이그림을얻기위한가정으로 NUM in, NUM sv, NUM feature 는각각 2, 8, 7로정해졌고, 서포트벡터의메모리엑세스만고려하였다. 또한캐시는네개의 32바이트블럭으로구성되어있다고가정하였고, 서포트벡터는 SV1부터 SV8까지연속적인주소를가지고있다고가정하였다. 즉서포트벡터와각벡터의요소들의주소가위의가정하에그림3 (a) 에표시된것처럼정해졌다. 하나의서포트벡터는 float 형태 (4바이트) 의요소 8 개 (7개요소를가진벡터한개와라그랑제승수 ) 로구성되어있으므로 32바이트인캐시블럭에완전히저장되어진다. 그림에서알수있듯이 SV1과 SV5는모두캐시블럭 0에저장되어진다. 이렇게각캐시블럭에는두개의서포트벡터가대응된다. 첫입력벡터 in1의분류를위해 (278)

152 시간적근접성향상을통한효율적인 SVM 기반음성 / 음악분류기의구현방법임정수외 근을살펴보면공간적근접성이많이존재하고또한캐시에의해서잘활용되어지고있음을볼수있다. 반면에시간적근접성은존재하지만캐시에의해서전혀활용되어지고있지못하고있음을볼수있다. 즉캐시가활용할수있을만큼시간적근접성이없다고볼수도있다. 이를해결하기위하여다음장에서는캐시가시간적근접성을잘활용할수있도록메모리접근양식을변화시켜, 메모리접근의수를줄이는기법을소개한다. Ⅲ. 시간적근접성을높이기위한기법 그림 3. (a) 서포트벡터의주소 (b) 캐시블럭 0과레지스 터 n의내용변화. Fig. 3 (a) Support vectors' addresses (b) Contents of cache block 0 and register n. k 루프의 SV1의첫요소를읽는명령어가실행되면, 먼저캐시에서해당데이터를찾는다. 그러나캐시의블록 0는그값을가지고있지않으므로메모리에서 SV1 전체를불러들여캐시블럭 0에저장하고벡터의첫요소인 feature[0] 를레지스터에저장하게된다. k 루프가진행되면서 SV1의모든요소가하나씩순서대로레지스터 n에저장되고 k 루프가끝나고 j 루프가다음반복 (iteration) 을시작하기전에 SV1의라그랑제승수가레지스터로불려진다. 새로운 j 루프의반복이시작되면, SV1의경우와같은양식으로 SV5가캐시블럭 0에 SV1를대체하고저장되며레지스터파일에 SV5의첫요소부터라그랑제승수까지순차적으로불려들여진다. 그리고 in2에대해서도 SV1과 SV5가순차적으로캐시와레지스터파일로불려들여진다. 두개의입력벡터 in1과 in2를분류하는데 SV1과 SV5를읽는데발생한메모리접근과캐시접근의횟수를세어보면메모리는 4번접근됐고캐시는 32번접근되었다. 데이터접근의공간적근접성 (spatial locality) [8] 이란현재어느한데이터가접근되었다면그데이터와인접한다른데이터가근미래에접근이된다는성질을말한다. 시간적근접성 (temporal locality) [8] 이란현재어느한데이터가접근되었다면그데이터가근미래에다시접근되는성질을뜻한다. 캐시는이러한성질이존재할때메모리로의접근을효과적으로줄일수있다. 이정의를바탕으로위의예에서보여진데이터접 이번장에서는 Ⅱ장에서밝혀진 SVM기반분류기의일반적인성향인낮은시간의근접성을향상시키는방법을제안한다. 캐시의관점에서시간의근접성이란한번메모리로부터읽혀져캐시에저장된데이터가다른데이터에의해대체되기전에얼마나프로세서코어에의해사용되는가를나타낸다. 그러므로시간의근접성을높이기위해서는한번캐시에저장된데이터를여러번사용해야한다. 그림 3에서 SV1을살펴보면, SV1은 in1과 in2 모두를위해사용되므로 in1을위해캐시에저장되었을때 in2를위해서도사용한다면시간적근접성을높일수있다. 즉그림2의의사코드에서는한번에하나의입력벡터를분류하는형태지만한번에여러개의입력벡터를동시에분류하는형태로바꾼다면시간의근접성을높일수있을것이다. 이관찰을바탕으로그림 2의의사코드를변형시키면그림 4의의사코드가된다. 그림 4의의사코드는두개의입력벡터를동시에분류하기위한코드로더많은입력벡터를동시에분류하기위한코드도같은방법으로쉽게얻을수있다. 두개의입력벡터를동시에처리하기위하여중간값을저장하는변수들 (dist2, KF2) 가추가되었고마지막분류값을저장하는변수 F2도추가되었다. 가장안쪽의루프에서입력벡터들은각각 i와 i+1로접근되고입력벡터를차례대로대입시키는가장바깥쪽의루프는 i를각반복 (iteration) 마다동시에처리되는입력벡터의개수만큼증가시킨다. 이시간적근접성이개선된코드를실행시키면그림 3에사용됐던것과동일한가정하에캐시블록 0와레지스터 n의내용의변화는그림 5와같다. 그림 3 (b) 의경우는입력벡터 in1과 in2에대하여 (279)

2012 년 3 월전자공학회논문지제 49 권 SP 편제 2 호 153 NUM in: the number of input vectors NUM sv: the number of support vectors NUM feature: the number of features in a support/input vector SV[ ]: each element of this structure contains a support vector and its corresponding alpha IN[ ]: each element of this structure is an input vector KF1, KF2: kernel function output F1, F2: decision function output for (i=0;i<num in;i=i+2) { for (j=0;j<num sv ;j=j+1 ) { for (k=0;k<num feature ;k=k+1 ) { dist1+=(sv[j].feature[k]-in[i].feature[k]) 2 dist2+=(sv[j].feature[k]-in[i+1].feature[k]) 2 KF1=exp(-1/σ 2 * dist1) KF2=exp(-1/σ 2 * dist2) F1+=SV[j].alpha*KF1 F2+=SV[j].alpha*KF2 F1=F1+bias F2=F2+bias 그림 4. 시간적근접성을높인 SVM기반분류기의의사 코드. Fig. 4 Pseudo code for the enhanced SVM-based classifier that generates more temporal locality. SV1과 SV5를읽는데메모리는 4번접근했고캐시는 32번접근된반면, 그림 5의경우는메모리접근이 2번, 캐시접근이16번일어난다. 즉메모리접근의횟수가줄고캐시접근의개수도줄어들게되어실행시간과에너지소비를줄이는효과가있다. 다음장에서는실험을통하여제안된기법을검증해본다. 1. 실험설정 Ⅳ. 실험 본논문에서사용된음성 / 음악데이터를구성하기위하여음성데이터베이스로 8kHz로샘플링된약 6 sec 정도의깨끗한음성으로 326명의남자와 138명의여자화자에의해서화자마다 10개의파일이발음된 TIMIT 데이터베이스가사용되었다 [9]. 음악데이터베이스는 CD 로부터다섯가지장르의음악을모바일폰을통해서 그림 5. 시간적근접성을높인 SVM기반분류기에의한 캐시블럭 0과레지스터 n의내용변화.. Fig. 5 Contents of cache block 0 and register n when the enhanced SVM-based classifier is used. 녹음하였고, 8kHz로다운샘플링하여사용하였으며, 각기약 5분정도의길이를가진다. 학습을위해서음성과음악데이터베이스에서 20분정도의데이터를선별하여사용하였으며, 테스트를위해서는학습에사용되지않은데이터로각장르별로 2 개씩모두 10개의파일을만들었다. 한개의파일에는음성구간 20개그리고음악구간 20개가포함되어있으며각구간은 5초 의길이를가진다. 음성과음악구간은서로교대로나타나게구성되었다. 실험에사용된특징벡터로는 SMV [1] 에서추출되어지는 6개의파라미터로구성해사용하였다 [5]. SVM을학습시키고테스트할때기본으로사용되는커널 width 파라미터 1/ 를구하기위해여러값을시도하였고그중가장좋은분류성능과가장적은수의 support vector를필요로하는 0.01이사용되었다. SVM기반음성 / 음악분류기의분류성능, 실행시간, 그리고에너지소비를구하기위하여사이클 (cycle) 단위로프로세서의행동을모델한시뮬레이터인 sim- 표 1. 프로세서시뮬레이터파라미터. Table 1. Parameters for the processor simulator. ISA Clock Freq Pipeline Branch Cache Memory FPU ARMv4T 800Mhz 5 stages, in-order, dual issue Dynamic prediction (bimodal) 64KB separate Inst/Data cache, 4way, 32B line, 1 cycle latency 64bit bus, 100 cycle latency, 1 port 1 adder (2 cycle, pipelined) 1 Multiplier (4 cycle, pipelined) (280)

154 시간적근접성향상을통한효율적인 SVM 기반음성 / 음악분류기의구현방법임정수외 panalyzer [10] 가사용되었다. 이시뮬레이터는프로세서의아키텍쳐레벨의모델링뿐아니라프로세서의각부분에서의정적그리고동적인에너지소비도예측할수있는에너지모델도포함하고있다. SVM기반음성 / 음악분류기코드를 ARM instruction set architecture (ISA) 로컴파일하기위하여 gcc-2.95 기반의교차컴파일러 (cross-compiler) 를사용하였고시뮬레이션되는임베디드프로세서의구성은표 1에정리하였다. 표 2. 서포트벡터를읽기위한캐시접근통계. Table 2. Statistics of the accesses to the cache for reading support vectors. 1 2 3 4 5 6 access 88K 44K 30K 22K 18K 15K miss 1.3K 6.4K 4.4K 3.2K 2.6K 2.2K ratio 0.15 0.15 0.15 0.15 0.15 0.15 2. 실험결과제안된알고리즘을검증하기위하여알고리즘을적용한경우와적용하지않은경우의서포트벡터를읽는명령에대한캐시미스의비율 (cache miss ratio), 실행된총명령어 (instruction) 의개수, 실행시간, 그리고에너지소비를비교해보았다. 먼저표 2에서포트벡터를읽는명령어에대한캐시접근수 (the number of cache accesses), 캐시미스의개수 (the number of cache misses), 그리고캐시미스비율 (cache miss ratio) 를정리하였다. 표의 1행은동시에분류되는입력벡터의수를타나내고, 2행, 3행, 4행은각각하나의입력벡터를분류하는데일어난평균캐시접근수, 평균캐시미스의개수, 그리고평균캐시미스의비율이다. 여기서캐시미스의개수는메모리접근의개수와같다. 제안된기법을사용하면메모리로부터캐시로이동된서포트벡터를여러입력벡터에사용할수있으므로캐시접근수와캐시미스의개수는줄어들게된다. 그러나캐시미스의비율은일정하게유지되는것을볼수있는데, 이것은서포트벡터의첫요소를읽는명령어에만캐시미스가발생하고그서포트벡터의나머지부분에는캐시미스가발생하지않는현상은동시에분류되는입력벡터의수와는관계없이동일하기때문이다. 동시에분류되는입력벡터의수를변화시키며하나의입력벡터를처리하는데실행된평균명령어의개수, 평균실행시간, 그리고평균에너지소비를그림 6에나타내었다. 분류의정확도는제안된기법의사용여부에관계없이동일하므로포함시키지않았고세가지지표모두기법이사용되지않은경우, 즉동시에처리되는입력벡터의수가 1인경우에정규화되었다. 명령어의개수와에너지소비량은동시에분류되는입력벡터의개수가 4개일때최소가되고개수가늘어 그림 6. 제안된기법에의한명령어의개수, 실행시간, 에너지소비의변화. Fig. 6 Effectiveness of the proposed technique in terms of the number of executed instructions, execution time, and energy consumption. 날수록조금씩증가한다. 그림 2의의사코드와그림 4 의의사코드를비교해보면, 동시에분류되는입력벡터의개수가많아질수록명령어의개수가점점증가하는것을알수있다. 반면에, 가장바깥루프의반복회수는동시에분류되는입력벡터의개수가많아질수록감소한다. 그러므로동시에처리되는입력벡터의수가 5일때이두가지의균형이명령어의개수가많아지는쪽으로기울었다고볼수있다. 실행되는명령어의개수가증가함에따라에너지소비도조금증가한것으로보인다. 실행시간은표 2에서알수있듯이동시에분류되는입력벡터의수가증가할수록메모리접근의횟수가계속줄어드는추세이므로명령어의증가에영향을덜받는것으로보인다. Ⅴ. 결론 본논문에서는 SVM기반음성 / 음악분류기의임베디드시스템으로의구현을목표로, 먼저 SVM기반분류기의메모리접근의성향을분석하여시간적근접성이부족함을밝혀내었다. 이를바탕으로메모리접근의시간적근접성을증가시켜메모리접근횟수를줄이고, 실행시간과에너지소비를줄이는기법을제안하였다. 제 (281)

2012 년 3 월전자공학회논문지제 49 권 SP 편제 2 호 155 안된기법을검증한결과, SVM기반분류기의실행시간과에너지소비를효과적으로감소시킬수있음을보였다. 앞으로의연구과제로는 SVM기반분류기의공간적근접성을분석하고이를활용하는효과적인기법을연구하는것이다. 감사의글 본연구는지식경제부및한국산업기술평가관리원의 IT핵심기술개발사업의일환으로수행하였음. [2009-S- 036-1, 고성능가상머신규격및기술개발 ] 또한이논문은 2011년도정부 ( 교육과학기술부 ) 의재원으로한국연구재단의대학중점연구소지원사업으로수행된연구임 (2011-0022980) 참고문헌 [1] 3GPP2 Spec., Source-controlled variable-rate multimedia wideband speech codec (VMR-WB), service option 62 and 63 for spread spectrum systems, 3GPP2-C.S0052-A, vol. 1.0, April 2005. [2] Y. Gao, E. Shlomot, A. Benyassine, J. Hyssen, Huan-yu Su, and C. Murgia, The SMV algorithm selected by TIA and 3GPP2 for CDMA appications, in Proc. IEEE International Conference on Acoustics, Speech, and Signal Processing, vol. 2, pp. 709-712, May 2001. [3] J. Saunders, Real-time discrimination of broadcast speech/music, in Proc. IEEE International Conference on Acoustics, Speech, and Signal Processing, vol. 2, pp. 7-10, May 1996. [4] A. Bugatti, A. Flammini, and P. Migliorati, Audio classification in speech and music: a comparison between statistical and a neural approach, EURASIP Journal on Appliled Signal Processing, vol. 2002, pp. 372-378, April 2002. [5] S. -K. Kim and J. -H. Chang, Speech/music classification enhancement for 3GPP2 SMV codec based on support vector machine, IEICE Trans. Fundamentals of Electronics, Communications and Computer Sciences, Vol. E92-A, no. 2, February 2009. [6] S. -K. Kim and J. -H. Chang, Discriminative weight training for support vector machine-based speech/music classification in 3GPP2 SMV codec, IEICE Trans. Fundamentals of Electronics, Communications and Computer Sciences, vol. E93-A, no. 1, pp. 316-319, January 2010. [7] J. Bsckus, Can programming be liberated from the von Neumann style?: a functional style and its algebra of programs, Communications of the ACM, vol. 21, pp. 613-641, August 1978. [8] J. L. Hennessy and D. A. Patterson, Computer architecture: a quantitative approach, Morgan Kaufmann Publishers Inc., San Francisco, CA, 1990. [9] W. M. Fisher, G. R. Doddington and K. M. Goudie-Marshall, The DARPA speech recognition research database: Specifications and status, in Proc. DARPA Workshop Speech Recognition, pp. 93-99, February 1986. [10] T. Austin, T. Mudge, and D. Grunwald, Sim -panalyzer. http://www.eecs.umich.edu/ panalyzer/. (282)

156 시간적근접성향상을통한효율적인 SVM 기반음성 / 음악분류기의구현방법임정수외 저자소개 임정수 ( 정회원 ) 1996 년인하학교전기공학학사 2004 년메릴랜드주립대학전자공학석사. 2009 년노스캐롤라이나주립대학컴퓨터공학박사 2010 년인하대학교박사후연구원 2011 년목포대학교연구교수 < 주관심분야 : 컴퓨터구조, 임베디드시스템, 신호처리, 인공지능 > 장준혁 ( 정회원 ) 1998 년경북대학교전자공학과학사. 2000 년서울대학교전기공학부석사. 2004 년서울대학교전기컴퓨터공학부박사. 2000 년 2005 년 ( 주 ) 넷더스연구소장 2004 년 2005 년캘리포니아주립대학, 산타바바라 (UCSB) 박사후연구원 2005 년한국과학기술연구원 (KIST) 연구원 2005 년 2011 년인하대학교전자공학부조교수 2011 년 현재한양대학교융합전자공학부부교수 < 주관심분야 : 음성신호처리, 오디오신호처리, 통신신호처리, 휴먼 / 컴퓨터인터페이스 > (283)