조 제 민 류 은 미 정 성 훈 한성대학교 정보통신공학과 인공신경망을 이용한 자동 작곡시스템 개발 조 제 민 류 은 미 정 성 훈 한성대학교 정보통신공학과
발표순서 1 연구배경 2 자동작곡 시스템 알고리즘 3 실험결과 4 결론 The contents of my talk are as follows. I will first introduce my research background and then explain simple bacteria cooperative optimization algorithm. Next, the rank-based perturbation method in order to improve the performances of sBCO will be described. After that, experimental results of the proposed method and previous methods with four function optimization problems are compared. I will conclude my talk with further works. 4 결론
연구배경 문화와 IT기술의 융합을 통한 문화산업 인간을 대신하여 새로운 형태의 곡을 창작 K-POP으로 대표되는 문화상품의 수출로 여러 문화상품에 정보기술을 융합하여 창작을 지원하는 연구가 활발히 진행 문화기술의 대표인 음악과 정보기술을 융합하는 새로운 방법으로서 자동으로 곡을 작곡하는 자동 작곡시스템을 개발 인간을 대신하여 새로운 형태의 곡을 창작 인공신경망이 인간을 대신하여 새로운 곡을 만듬 다른 장르의 곡을 학습시켜서 새로운 장르의 곡을 만들 수도 있음 Some bio-inspired optimization algorithms have been introduced and successfully applied to many problems. Typical bio-inspired algorithms are genetic algorithms, ant colony optimization, and particle swarm optimization.
자동작곡 시스템 알고리즘 자동작곡 시스템 구현방법 알고리즘 음정과 박자를 숫자화 숫자화된 곡을 시계열 데이터로 하여 인공신경망으로 학습 학습된 인공신경망에 새로운 노래의 도입부분을 입력 출력된 값을 박자와 화성학에 맞도록 후 처리 기존의 곡의 느낌을 갖는 새로운 곡 출력
자동작곡 시스템 알고리즘 음정의 경우 전체음계 1~7옥타브 중에서 총 3개의 2~4옥타브만을 사용 1개의 옥타브로 도, 도#, 레, 레#, 미, 파, 파#, 솔, 솔#, 라, 라#, 시의 총 12개를 차례로 ‘01~12’로 표현 01~36은 음계로 표현, 37은 쉼표로 표현 32 34 .. 36 30 27 29 25 20 22 24 15 17 18 13 12 13 08 10 06 37 01 03 05 쉼표
자동작곡 시스템 알고리즘 박자의 경우 음표박자와 쉼표박자 모두 1/4, 1/2, 3/4, 1, 3/2, 2, 3, 4의 8개 박자를 1부터 8로 숫자화 음표박자는 십의자리에 ‘1’을 두고 쉼표박자는 ‘0’을 두어 구분 음표 11 12 13 14 15 16 17 18 The simple bacteria cooperative optimization algorithm is developed based on the bacteria behavior patterns for foraging. E. coli, a typical bacteria, have been evolved for few millenniums for foraging. So, we think that their behavior patterns are optimized for foraging. We extracted their behavior patterns into two simple rules such as behavior rules and decision rules. Behavior rules are as follows. AEs decide their actions for run or tumble every Bn runs. If their run counts become to Bm, then AEs must do tumble. Decision rules are composed of following two rules. AEs calculate the current density of attractant chemical molecules using the average values of those on Dn steps And previous density on Dm steps. If the current density of attractant chemical molecules is greater than the previous density, then the AE decides its action to run, otherwise, tumble. 쉼표 01 02 03 04 05 06 07 08
자동작곡 시스템 알고리즘 인공신경망을 통한 학습 숫자화된 곡을 시계열 데이터로 하여 인공신경망으로 학습
자동작곡 시스템 알고리즘 인공신경망에 학습 후 새로운 곡 출력 학습시킨 인공신경망에 한두 마디 정도의 새로운 도입부를 입력 출력 된 음정이나 박자가 다시 Inputs값으로 들어가고 다시 출력 하는 과정을 반복
실험결과 Matlab 신경망 Toolbox Custom network 사용 음정 Input은 음정 10개, 마디 구분 40개 , output은 출력 1개 마디구분은 ‘같은 음정이 오는 마디’ 뒤에 오는 ‘다른 음정의 마디’를 구분 마디 구분(40개)을 음정(10개)보다 많이 넣어 마디를 확실하게 구분 마디를 적게 넣어 줄 경우 학습이 제대로 되지 않는 오류 발생
실험결과 실험에 사용된 곡 박자 학습 시 Epoch를 100만(1000000)으로 지정 음정과 동일 학습 시 Epoch를 100만(1000000)으로 지정 Epoch가 약 5만 까지 도달하고 학습이 종료 실험에 사용된 곡 학습시킨 노래인 Roly-Poly 도입부 This figure shows one example of the two rules. Figure (a) shows the behavior rules when the Bn is 3, and Bm is 7. As shown in the figure, AE move one step to its direction, then the run count is increased. If the run counts becomes to 3, then it decides its action. In this case, the current density of attractant molecules is less than the previous density of attractant molecules, then it turns and runs. Since it turns, then run counts resets to zero. If the run count becomes to 7, then it unconditionally tumble. This B2 rule prevents somewhat from falling local optimum areas. Figure (b) shows how to calculate the previous and current density of attractant molecules. At current position, AE calculates the previous density using the attractant molecules of 9 positions previously visited and Current density using 3 positions. 음정 = 37 11 13 15 15 14 13 15 14 15 15 15 14 13 15 10 15 15 14 13 15 15 14 15 14 15 14 박자 = 02 12 12 12 14 12 12 14 12 12 12 12 12 12 15 12 12 12 12 12 12 12 12 12 12 12 12
실험결과 박자 및 화성학 후 처리 인공신경망을 통해 새롭게 출력된 박자 및 화성학은 음악이론에 맞지 않는 경우가 생길 수 있음 박자 후 처리 4/4박자의 경우 새롭게 출력된 박자를 각 마디의 첫번째 부터 차례대로 더함 더한 박자가 각 마디에 4박자를 넘을 경우 4박자가 넘는 마지막 박자를 4박자가 맞게 처리
실험결과 화성학 후 처리 화성학 프로그램 구현은 진행중에 있으므로 본 논문에서는 직접 수동으로 후 처리 인공신경망을 통해 출력한 음정을 마디별로 가장 유사한 코드를 찾아 해당 코드로 결정 각 마디에 결정된 해당 코드와 어울어 지지 않는 음정 선택 선택된 음정을 화성에 맞는 음정 중에 가장 가까운 음으로 대치 화성학 프로그램 구현은 진행중에 있으므로 본 논문에서는 직접 수동으로 후 처리 파 솔 솔 솔 도 시 파 솔 솔 솔 도 시 파 솔 솔 솔 도 시 솔 솔 솔 솔 도 시
실험결과 자동작곡시스템 데모
결론 향후과제 인공신경망을 이용한 자동작곡 시스템 기존의 곡 Roly-Poly를 숫자화 시켜 인공신경망으로 학습하였고 학습된 인공신경망에 새로운 도입부를 넣고 출력 Roly-Poly의 느낌을 갖는 새로운 곡 출력 향후과제 화성 후 처리 코딩 가우시안 분포의 랜덤을 이용하여 새로운 곡을 출력 여러 장르의 곡을 학습하여 새로운 곡을 출력 B(Base 노래) + A(Added 노래) Base 노래는 전곡을 그대로 학습 Added 노래는 Base 노래의 마디 별 특징을 유지하면서 섞이도록 사용자가 time series를 변경
Thank You ! www.hansung.ac.kr Thank you for your attention.