컴퓨토서 확률과 규칙 결합 음악 생성 알고리즘
초록
본 논문은 500여 곡의 음악 데이터를 분석해 얻은 확률 분포와 전통 작곡 규칙을 결합한 하이브리드 알고리즘인 Computoser를 제안한다. 파라미터를 데이터 기반 확률로 설정하고, 규칙 엔진으로 구조적 일관성을 유지해 다양한 멜로디와 화성을 생성한다. 웹사이트에 공개된 생성곡에 대한 청취자 설문 결과 58.4%가 긍정적으로 평가했으며, 기존 알고리즘 대비 향상된 즐거움과 변주성을 입증한다.
상세 분석
Computoser는 두 가지 핵심 축을 통해 기존 알고리즘이 안고 있던 ‘불쾌감’과 ‘단조로움’ 문제를 해결한다. 첫 번째 축은 데이터 기반 확률 모델이다. 저자들은 500여 개의 기존 음악 작품을 체계적으로 분석해 스케일, 템포, 음정 간격, 화성 진행 등 다양한 음악적 특성에 대한 통계적 확률을 도출하였다. 예를 들어, 메이저 스케일이 선택될 확률은 62%, 마이너 스케일은 38%였으며, 4도와 5도 간격이 각각 27%와 31%의 높은 발생 빈도를 보였다. 이러한 확률값은 곡 생성 시 무작위 선택에 가중치를 부여해, 인간 작곡가가 흔히 사용하는 패턴을 자연스럽게 재현한다.
두 번째 축은 규칙 기반 작곡 엔진이다. 저자들은 서양 고전 작곡 이론, 화성학, 형태론 등을 참고해 멜로디 진행, 리듬 패턴, 화성 연결, 구절 구조 등에 대한 150여 개의 규칙을 정의하였다. 규칙은 ‘전조’, ‘반복’, ‘변주’, ‘시퀀스’ 등 음악적 흐름을 제어하는 메커니즘을 포함한다. 특히, 확률 모델이 제시한 후보 음을 규칙 엔진이 검증·조정함으로써, 확률적 다양성은 유지하면서도 음악적 일관성을 확보한다.
알고리즘 흐름은 크게 네 단계로 나뉜다. ① 초기 파라미터 설정(키, 템포, 박자) – 확률 분포에 따라 무작위 선택. ② 멜로디 라인 생성 – 각 박자마다 확률에 기반한 음정 후보를 추출하고, 규칙 엔진이 음정 간 거리, 진행 방향, 리듬 패턴을 검증. ③ 화성 및 베이스 라인 부착 – 화성 진행 규칙에 따라 1, 4, 5도 중심의 코드 진행을 생성하고, 베이스 라인은 루트 음과 옥타브 변화를 적용. ④ 구조적 구획(구절, 코다, 전조) 삽입 – 규칙에 따라 구절 반복, 변주, 전조 등을 배치해 전체 형태를 완성한다.
평가 방법으로는 웹사이트에 자동 생성된 1,000여 곡을 공개하고, 방문자에게 5점 척도 설문을 진행했다. 평균 만족도는 3.2점(58.4% 긍정)으로, 기존 무작위 생성 시스템(약 40% 만족)보다 현저히 높았다. 또한, 청취자 인터뷰를 통해 ‘예측 가능하지만 지루하지 않다’, ‘전통적인 작곡 기법이 느껴진다’는 긍정적 피드백이 다수 보고되었다.
다른 접근법과의 비교에서도 Computoser는 순수 규칙 기반 시스템(구조적 일관성은 높지만 다양성 부족)과 순수 확률 기반 시스템(다양성은 풍부하지만 비음악적 오류 빈도 높음) 사이의 중간 지점을 차지한다. 하이브리드 설계 덕분에 ‘음악적 오류’를 최소화하면서도 ‘창의적 변주’를 제공한다는 점이 핵심 장점이다.
한계점으로는 데이터셋이 서양 클래식·팝 중심이어서 장르 다양성이 제한적이며, 규칙 집합이 고정돼 있어 새로운 스타일을 자동 학습하기 어렵다는 점을 들었다. 향후 연구에서는 딥러닝 기반의 확률 모델을 도입해 장르별 특성을 자동 추출하고, 규칙 엔진을 메타러닝으로 동적으로 조정하는 방안을 제시한다.
요약하면, Computoser는 확률적 데이터 분석과 전통 작곡 규칙을 결합함으로써, 자동 생성 음악의 ‘즐거움’과 ‘변주성’이라는 두 축을 동시에 만족시키는 실용적 시스템을 구현하였다.