oosioo
3D 무대에서 같은 색 원피스를 입은 인형 다섯이 한 줄로 서서 같은 동작을 하고 있다. 다섯 모두 오른팔을 머리 위로 굽혀 우산처럼 들고, 왼손은 가슴 앞에 모았다. 뒤쪽 벽에는 파란 빗줄기가 내린다
연재진짜 딸깍하는 AI · 35회

노래를 들려주면 다섯 명이 춤을 출까 — 황순원 「소나기」로 만든 아이돌 곡에 포인트 안무와 대형, 동선까지 짜 주는 안무 생성기

아이돌 무대는 노래만으로 완성되지 않는다. 후렴마다 되풀이되는 포인트 안무가 있고, 다섯 명이 자리를 바꾸는 대형과 동선이 있다. 황순원 「소나기」에서 모티프를 빌려 노트북 GPU로 2분 30초짜리 걸그룹 곡을 만들고, 그 노래를 듣고 5인조 안무를 짜는 생성기를 만들었다. 관절 20개짜리 인형 다섯이 3D 무대에서 춘다. 춤을 숫자로 적는 법도 함께 정리했다. 박 맞춤, 같이 움직임, 되풀이 구조, 가장 가까운 간격, 라반 에포트 같은 수치다. 후보 300개를 만들어 이 수치로 골랐다. 되풀이를 빼면 구조 점수가 0.147에서 0.019로 떨어졌고, 길을 휘게 하는 단계를 빼면 60개 씨앗이 전부 부딪혔다. 같은 사전으로 AI에게 구성표를 직접 짜게 했더니, 잘 짠 판은 300개 중 2위였고 못 짠 판은 164위였다.

· SYSOP · 조회 3

3D 무대에서 같은 색 원피스를 입은 인형 다섯이 한 줄로 서서 같은 동작을 하고 있다. 다섯 모두 오른팔을 머리 위로 굽혀 우산처럼 들고, 왼손은 가슴 앞에 모았다. 뒤쪽 벽에는 파란 빗줄기가 내린다

아이돌 무대를 떠올리면 노래보다 동작이 먼저 생각날 때가 있다. 후렴마다 다섯 명이 똑같이 추는 몇 박, 그리고 따라 추고 싶어지는 그 동작. 흔히 포인트 안무라고 부른다. 그 사이사이 멤버들은 끊임없이 자리를 바꾼다. 노래하는 사람이 앞 가운데로 나오고, 후렴이 오면 V자로 펼쳐지고, 브리지에서는 한 줄로 늘어선다.

곡을 만드는 일은 이제 AI로 꽤 된다. 지난 「오늘의 한 페이지」에서 노트북 GPU로 노래 세 곡을 만들어 봤다. 그렇다면 그 노래를 듣고 안무까지 짜는 것도 될까. 동작 하나가 아니라, 다섯 명의 동작과 대형과 동선을 한꺼번에. 이번 회에는 그걸 만들어 봤다.

무엇을 하려 했나

  1. 황순원 「소나기」에서 모티프만 빌려 아이돌 걸그룹 곡을 새로 만든다. 가사도 새로 쓰고, 곡은 노트북에서 생성한다.
  2. 노래를 듣는 귀를 만든다. 박, 마디, 구간(벌스·프리코러스·후렴·브리지), 가사 한 줄 한 줄의 시각을 뽑는다.
  3. 5인조 안무를 짜는 생성기를 만든다. 동작을 고르고, 후렴마다 같은 포인트 안무를 되풀이하고, 파트를 나누고, 대형과 동선을 정한다. 멤버끼리 부딪히면 안 된다.
  4. 관절 20개짜리 단순한 인형 다섯을 3D 무대에 세워 노래에 맞춰 춤추게 한다.
  5. 춤을 숫자로 적는 방법을 정리하고, 그 수치로 후보 여러 개 중 하나를 고른다.
  6. 같은 동작 사전을 주고 AI에게 구성표를 직접 짜게 해서, 같은 채점기로 잰다.

역사와 연구 흐름 조사는 AI 에이전트에게 맡겼다. 논문 원문과 판결문, 공식 발표를 우선하게 했고, 확인하지 못한 것은 미확인으로 남기게 했다. 곡 생성, 분석, 안무 생성기, 3D 화면, 실험도 모두 AI 에이전트가 만들고 돌렸다.

춤을 적어 온 100년

춤은 오랫동안 적을 수 없는 예술이었다. 악보가 있는 음악과 달리 몸의 움직임은 사람에게서 사람으로만 건너갔다. 그걸 종이에 적으려는 시도는 꽤 오래됐다. 조선 궁중 정재를 기록한 『정재무도홀기』는 박(拍) 단위로 어떤 음악에 누가 어떤 동작을 하는지 글로 적었다. 이번 생성기가 박 격자 위에 동작을 얹는 방식과 거의 같다.

1928년부터 2025년까지의 연표. 기록·안무가 줄: 1928 라반 『Schrifttanz』, 1956 베네시 표기법 보급, 1989 머스 커닝햄이 LifeForms로 안무, 2019 맥그리거와 구글 「Living Archive」 초연. AI 연구 줄: 2019 AIST Dance DB 영상 13,939개, 2021 AIST++와 FACT(5.2시간, BAS 지표), 2022 Bailando, 2023 EDGE와 AIOZ-GDANCE, 2024 Lodge와 POPDG, 2025 TCDiff. K-pop·권리 줄: 2011 「샤이보이」 안무 저작물 인정, 2012 항소심, 2020 「아무노래」 챌린지, 2024 한국안무저작권협회 출범

서양에서 체계를 세운 사람은 루돌프 폰 라반이다. 1928년 『Schrifttanz』로 춤을 기호로 적는 법을 내놓았다. 세로로 긴 오선지 같은 칸에 몸의 왼쪽과 오른쪽, 팔과 다리를 나눠 적고, 기호의 모양으로 방향을, 길이로 시간을, 칠한 모양으로 높이를 나타낸다. 영미권에서는 라바노테이션(Labanotation)이라고 부른다. 1950년대 중반에는 베네시 부부가 발레를 위한 표기법을 따로 만들었다.

흑백 사진. 정장을 입은 루돌프 폰 라반이 의자에 앉아 있고, 뒤 벽에는 삼각형·사각형·빗금 친 막대 같은 라반 표기법 기호들이 붙어 있다. 라반은 한 손을 기호에 대고, 다른 손에 막대로 엮은 다면체 모형을 들고 있다
루돌프 폰 라반과 그의 표기 기호. 출처: Wikimedia Commons, 작자 미상, 퍼블릭 도메인

라반은 기호 말고도 움직임의 「결」을 나누는 틀을 남겼다. 라반 움직임 분석의 에포트(Effort) 네 요소다. 힘이 센가 가벼운가(무게), 급한가 느긋한가(시간), 곧게 가는가 돌아가는가(공간), 끊어지는가 흘러가는가(흐름). 같은 팔 들기도 이 넷이 다르면 전혀 다른 동작이 된다. 이 네 요소는 뒤에서 숫자로 다시 나온다.

컴퓨터가 들어온 건 1989년쯤이다. 머스 커닝햄은 사이먼프레이저대가 만든 LifeForms라는 프로그램으로 화면 속 인형을 움직여 가며 안무를 짰다. 모션캡처가 퍼지면서 춤은 아예 숫자가 됐다. 관절마다 회전값 세 개를 한 프레임에 한 줄씩 적는 BVH 같은 형식이 사실상 표준이 됐다.

AI가 춤을 배우기 시작한 건 데이터가 생기고 나서다. 2019년 일본 산업기술종합연구소(AIST)가 프로 댄서 40명이 10개 장르를 춘 영상 13,939개를 공개했고, 2021년 구글 연구진이 그중 5.2시간을 3D 동작으로 바꾼 AIST++와 생성 모델 FACT를 냈다. 이후 Bailando(2022), EDGE(2023), Lodge(2024) 같은 모델이 노래를 넣으면 한 사람의 춤을 만들어 낸다. 2019년 웨인 맥그리거는 컴퍼니 25주년을 맞아 구글과 함께 지난 작품 영상을 학습시킨 도구로 「Living Archive」를 무대에 올렸다. 새 동작 구절을 보여 주면 이어질 구절 후보를 여러 개 내놓는 도구였다.

다만 이 데이터에는 K-pop이 거의 없다. AIST의 10개 장르는 브레이크, 팝, 락킹, 힙합, 하우스, 크럼프, 재즈 같은 스트리트 댄스다. FineDance(2023) 논문은 아예 「애니메이션과 K-pop은 독립된 춤 장르로 치지 않는다」고 적었다. K-pop이 들어간 POPDG(2024)는 중국 영상 사이트 이용자가 올린 커버 영상에서 3D를 추정한 것이다. 그룹 댄스 데이터 AIOZ-GDANCE(2023, 16.7시간)도 주류는 줌바와 에어로빅이다. 다섯 명이 칼같이 맞추고 자리를 바꾸는 K-pop 군무를 정면으로 다룬 공개 데이터는 찾지 못했다.

K-pop 기획사가 AI로 안무를 만들었다는 공식 발표도 찾지 못했다. 확인된 AI 활용은 목소리와 가상 아티스트 쪽이다. 국내에서는 댄스트럭트가 주관하고 KAIST가 참여하는 안무 창작 AI 국책 과제(총 48.69억 원)가 진행 중이다.

안무에는 권리도 붙어 있다. 2011년 서울중앙지법은 걸그룹 시크릿 「샤이보이」의 안무를 저작물로 인정했고(2011가합23960), 2012년 서울고법은 이 안무를 무단으로 가르친 댄스 교습 업체에 공연권·복제권·전송권·성명표시권 침해를 인정했다(2011나104668). 2024년에는 한국안무저작권협회가 출범했다. 그래서 이번 생성기의 동작 사전은 특정 곡의 안무를 옮기지 않고, 바운스·스텝 터치·팔 물결 같은 흔한 동작과 이번 곡을 위해 새로 짠 포인트 안무로만 채웠다.

노래부터: 「소나기」를 아이돌 곡으로

황순원의 「소나기」는 1953년 『신문학』에 처음 실렸다. 작가는 2000년에 세상을 떠났고, 작품은 2070년 말까지 저작권 보호를 받는다. 그래서 원작 문장은 한 줄도 옮기지 않았다. 개울가 징검다리, 조약돌, 소나기, 분홍 스웨터, 대추 같은 모티프만 빌려 가사를 새로 썼다. 원작이 소년의 이야기라면, 이번 곡은 다섯 소녀가 부르는 늦여름의 기억쯤 된다. 후렴은 이렇게 갔다.

쏴아 쏴아 소나기 우산 없이 너와 나 쏴아 쏴아 소나기 젖어도 난 좋아 똑똑 떨어지는 맘 소나기처럼 왔다 가

곡은 「오늘의 한 페이지」 17회에서 쓴 오픈소스 음악 생성 모델 ACE-Step 1.5로 만들었다. 노트북의 RTX 3070(8GB)에서 돌렸다. 템포는 120 BPM, 길이는 2분 30초, 장르는 걸그룹 댄스 팝으로 정해 씨앗 셋으로 세 곡을 뽑았다. 한 곡에 102~114초가 걸렸고 GPU 메모리는 3.7GB까지 올라갔다.

세 곡 중 하나를 고르는 일도 기계에 맡겼다. 받아쓰기 모델 Whisper로 가사를 받아 적게 해서, 쓴 가사가 순서대로 가장 많이 들린 곡을 골랐다. 한 곡은 앞 1분 30초를 통째로 못 알아들었고, 한 곡은 1절이 안 들렸다. 남은 한 곡은 브리지 한 줄만 빼고 모든 줄이 순서대로 들렸다. 「쏴아 쏴아」는 끝까지 「사야 사야」로 적혔다.

노래를 듣는 귀

안무를 짜려면 먼저 노래의 뼈대를 알아야 한다. 박이 언제 오는지, 마디의 첫 박이 어디인지, 후렴이 언제 시작하는지.

음악 분석에서 흔히 쓰는 파이썬 라이브러리 librosa의 박 추적기에 곡을 넣었더니 117.45 BPM이 나왔다. 생성 모델에 120 BPM으로 만들라고 했으니 이상했다. 그래서 다른 방법으로 다시 쟀다. 박 간격을 100에서 140 BPM까지 0.05씩 바꿔 가며 격자를 곡에 대 보고, 격자 자리마다 소리가 시작되는 세기(onset)를 평균 냈다. 120.00에서 다른 데보다 세 배 넘게 큰 봉우리가 섰다. 생성된 곡은 박이 기계처럼 고정돼 있었고, 117.45로 깔면 2분 30초 동안 6박 넘게 밀린다. 곡이 끝날 때 춤은 한 마디 반 뒤처져 있는 셈이다.

왼쪽 그래프: 박 간격(BPM)을 100에서 140까지 바꿔 가며 박 자리의 onset 세기 평균을 잰 곡선. 120 BPM에서 약 6으로 뾰족하게 솟고 나머지는 2 안팎이다. librosa 박 추적기가 고른 117.45 BPM 자리에는 봉우리가 없다. 오른쪽 그래프: 117.45 격자가 120 격자보다 밀린 박 수가 시간에 따라 곧게 늘어, 약 25초에 한 박, 150초에 6박을 넘는다

마디의 첫 박은 1절 첫 가사가 들어오는 자리에 맞췄다. 구간은 받아쓰기로 나눴다. 「개울가」가 들리면 1절, 「바보 바보」가 들리면 프리코러스, 「우산」이 들리면 후렴이다. 가사 첫 줄이 나온 시각을 가장 가까운 마디 첫 박에 붙이니 곡이 75마디, 10구간으로 나뉘었다. 인트로 5마디, 1절 7마디, 프리코러스 8마디, 후렴 9마디, 이런 식이다. 가사 줄은 30개다. 받아쓰기가 놓친 브리지 한 줄 「기다려도 오지 않아」는 앞뒤 줄 사이에 손으로 넣었다.

마디마다 소리의 세기와 음색·화성 특징도 뽑았다. 마디끼리 얼마나 닮았는지 모든 쌍을 재면 판 하나가 나온다(뒤에 나오는 그림의 왼쪽). 대각선과 나란한 밝은 줄이 「여기는 앞에서 나온 대목과 닮았다」는 뜻이다. 이 판이 나중에 춤과 비교할 기준이 된다.

안무를 짜는 순서

생성기는 사람 안무가가 일하는 순서를 흉내 낸다. 어디서 누가 노래하는지 정하고, 동작을 고르고, 누가 어디에 설지 정하고, 어떻게 걸어갈지 정한다.

① 파트 나누기. 후렴이 아닌 가사 줄을 다섯 명에게 하나씩 나눈다. 줄 수가 고르게 가도록, 같은 사람이 연달아 부르지 않도록. 2절 프리코러스처럼 같은 가사가 다시 나오면 같은 사람이 부른다. 후렴은 다 같이 부르고, 가운데에는 한 사람을 고정해 세운다.

② 동작 사전. 동작 24개를 손으로 만들어 뒀다. 바운스, 흔들기, 스텝 터치, 어깨 튕기기, 팔 물결, 가로 찌르기, 머리 위 박수, 머리 위 하트, 킥 볼 체인지, 한 바퀴, 바디 웨이브, 빗방울 손, 우산 쓰기, 손 흔들기, 앉았다 일어서기 같은 것들이다. 동작마다 길이(4박 또는 8박), 세기(1~3), 갈래(가벼운 리듬·팔·발·느린 동작)가 붙어 있다. 동작은 박 위치마다 자세를 적은 키프레임 몇 개다. 자세는 팔을 얼마나 들었나(아래 0도, 수평 90도, 머리 위 180도), 어느 쪽으로 뻗었나, 무릎을 얼마나 굽혔나, 몸을 얼마나 숙였나 같은 숫자 묶음이다. 키프레임마다 「부드럽게 도착」과 「빨리 도착해 멈춤」 중 하나를 고른다. 라반이 말한 시간 요소, 곧 느긋함과 급함이다.

③ 포인트 안무. 후렴용 8박 두 개를 따로 짰다. 하나는 「쏴아 쏴아 소나기」다. 두 손을 머리 위로 올렸다가 손끝을 털며 빗줄기처럼 내리고, 무릎을 굽혀 빗줄기를 땅에 닿게 한 뒤, 한 팔을 머리 위로 굽혀 우산을 쓰고, 앞을 가리키며 한 발 나선다. 다른 하나는 「똑똑 · 왔다 가」로, 볼 옆을 검지로 두드리다 손을 흔든다. 후렴이 올 때마다 다섯 명이 이 8박을 똑같이 춘다.

후렴 포인트 안무 「쏴아 쏴아 소나기」 8박을 한 박에 한 장씩 찍은 띠. 1박 두 손 위로, 2박 손끝 털며 내려, 3박 어깨까지, 4박 무릎 굽혀 빗줄기 끝, 5박 오른팔을 머리 위로 굽혀 우산 쓰기, 6박 우산 든 채 반대쪽으로 골반, 7박 앞을 가리키며 한 발, 8박 두 손 가슴에

④ 되풀이와 변주. 음악이 되풀이되면 춤도 되풀이한다. 1절에서 고른 동작 순서는 2절에서 다시 쓰되, 열에 셋쯤은 다른 동작으로 바꾼다. 「빗방울 손」은 포인트 안무 앞부분과 닮은 동작이라 벌스에서도 가끔 나오게 했다. 후렴에서 볼 동작을 벌스에서 미리 조금 보여 주는 셈이다.

⑤ 군무 방식. 같은 동작이라도 다섯 명이 추는 방식은 여럿이다. 다 같이(칼군무), 거울(왼쪽 멤버는 좌우를 뒤집어서), 물결(왼쪽부터 반 박씩 늦게), 한 명 + 받쳐 주기(노래하는 사람만 동작, 나머지는 흔들기), 엇갈려 나누기(둘씩 번갈아). 후렴은 대부분 다 같이, 인트로는 물결, 브리지는 한 명 + 받쳐 주기나 물결로 간다.

⑥ 대형. 일자, V자, 역V자, W자, 앞3·뒤2, 앞2·뒤3, 피라미드, 한 줄 세로, 사선, 십자. 열 가지를 만들었다. 대형마다 「0번 자리」가 맨 앞 가운데다. 이 이름들은 현장에서 흔히 부르는 이름일 뿐 정해진 정의가 있는 용어는 아니라서, 그림으로 정의했다. 인트로는 한 줄 세로로 숨어 있다가 펼쳐지고, 후렴은 V자나 W자처럼 다섯이 다 보이는 대형으로, 벌스는 노래하는 사람이 꼭짓점에 서는 대형으로 간다.

⑦ 동선. 다음 대형의 다섯 자리에 누가 갈지는 가능한 짝을 전부 따져서 정한다. 다섯 명이면 5×4×3×2×1 = 120가지다. 노래하는 사람은 0번 자리에 가야 하고, 그 조건에서 걷는 거리의 제곱 합이 가장 작고 길이 서로 엇갈리지 않는 짝을 고른다. 그다음 다섯 명이 동시에 걸을 때 두 사람이 0.7m보다 가까워지는지 검사한다. 가까워지면 두 사람 길을 서로 반대쪽으로 휘게 하고 다시 검사한다. 걷는 동안에는 반 박에 한 걸음씩 발을 바닥에 딛고 옮긴다.

구간마다 한 장씩 위에서 본 무대 10장. 인트로는 한 줄 세로, 벌스 1은 V자, 프리코러스 1은 앞3·뒤2, 후렴은 V자, 벌스 2는 십자, 브리지는 일자, 아웃트로는 피라미드. 다섯 멤버는 색깔 원으로, 그 구간에 가운데 선 멤버는 검은 테두리로 표시돼 있다. 아래쪽이 관객석이다

⑧ 몸. 인형은 관절 20개짜리다. 골반, 가슴, 목, 머리, 양쪽 어깨·팔꿈치·손목·손끝, 양쪽 엉덩이·무릎·발목·발끝. 키는 1.63m쯤이고 팔다리 길이는 성인 여성 비율에 맞췄다. 팔과 몸통은 자세 숫자를 그대로 돌려 위치를 계산하고(순운동학), 다리는 발을 놓을 자리를 먼저 정한 뒤 엉덩이에서 거꾸로 무릎 각도를 푼다(역운동학). 그래야 무릎을 굽혀도 발이 바닥에서 뜨지 않는다. 뼈마다 원통을, 관절마다 공을 붙여 3D로 그린다.

춤을 숫자로 적는 법

인형이 춤을 추는 순간, 춤은 이미 숫자다. 한 사람이 한 프레임에 관절 20개 × 좌표 3개 = 숫자 60개. 초당 30프레임, 2분 30초, 다섯 명이면 135만 개다. 라반이 기호로 적던 것을 이제는 표로 적는다. 문제는 이 숫자 더미에서 「좋은 춤」을 어떻게 읽어 내느냐다.

연구자들이 쓰는 지표는 대략 이렇다.

지표무엇을 재나주의할 점
박 맞춤(BAS, Beat Align Score)몸 전체 속도가 가장 작아지는 순간(운동 박)이 음악 박에 얼마나 가까운가논문마다 방향이 다르다. 음악과 아무렇게나 짝지은 실제 춤도 0.213이 나온다(AIST++)
FID_k, FID_g생성한 춤의 운동·자세 특징 분포가 실제 춤 분포와 얼마나 먼가EDGE 논문에서 실제 춤이 생성물보다 나쁜 점수를 받았다(41.4 대 12~25)
PFC몸 중심이 가속할 때 발이 바닥에 붙어 있었나(발 미끄러짐)손을 짚는 동작은 못 다룬다
GMC, TIF그룹이 서로 맞춰 추나, 궤적이 엇갈리나그룹 댄스 데이터가 줌바·에어로빅 위주다
사람 평가둘을 보여 주고 더 나은 쪽을 고르게 한다EDGE는 실제 춤을 65.7% 이겼지만 막대 인형 화면 조건이다

박 맞춤은 이렇게 잰다. 몸이 박자에 맞춰 춤추면 동작이 바뀌는 순간 몸이 잠깐 멈칫한다. 관절 20개의 속도 평균이 가장 작아지는 순간을 「운동 박」이라 부르고, 각 운동 박에서 가장 가까운 음악 박까지의 시간 차이를 잰다. 차이가 0이면 1점, 0.05초면 0.61점으로 깎이는 식으로 점수를 매겨 평균을 낸다. AIST++의 실제 춤이 0.292, 당시 최고 생성 모델이 0.241이었다.

위 그래프: 후렴 앞뒤 8초 동안 센터 멤버의 관절 20개 평균 속도 곡선. 회색 점선은 음악 박, 빨간 점은 속도가 가장 작아지는 운동 박이다. 후렴이 시작한 뒤로는 빨간 점이 거의 모두 점선 바로 앞에 붙어 있다. 아래 그래프: 마디별 라반 에포트 네 요소(무게·시간·흐름·공간)의 곡 안 상대값. 무게·시간·흐름은 후렴 구간마다 솟고 브리지에서 가라앉으며, 공간(곧음)은 브리지에서 0.9까지 오른다

이번 생성기는 박 맞춤이 0.46이 나왔다. 실제 댄서보다 높다. 자랑할 일은 아니다. 키프레임을 박 위에 정확히 놓았으니 당연한 결과다. 사람 댄서는 박보다 살짝 먼저 가기도 하고 늦게 가기도 하는데, 이 인형은 기계처럼 박에 붙는다. 실제로 동작 키를 ±0.3박씩 무작위로 흔들어 봤더니 박 맞춤은 0.426에서 0.355로 조금 떨어졌을 뿐이다. 박을 반쯤 무시해도 점수가 크게 안 깎인다. 이 지표 하나로는 춤을 못 고른다는 연구자들의 비판과 같은 이야기다.

그래서 여러 수치를 같이 봤다. 이번에 쓴 것은 열 가지다.

  • 같이 움직임: 다섯 명의 속도 곡선이 서로 얼마나 닮았나. 두 명씩 짝지은 열 쌍의 상관을 평균 낸다. 1이면 완전한 칼군무다. AIOZ-GDANCE의 GMC와 비슷한 생각이다.
  • 되풀이 구조: 마디끼리 닮은 정도를 음악에서 한 판, 춤에서 한 판 잰 뒤 두 판의 상관을 본다. 음악이 되풀이되는 곳에서 춤도 되풀이하면 올라간다.
  • 세기 따라가기: 마디별 음악 세기와 몸의 운동 에너지가 같이 오르내리나.
  • 노래하는 사람 가운데: 그 줄을 부르는 멤버가 대형의 0번 자리에 서 있었던 비율.
  • 가장 가까운 간격: 곡 내내 두 멤버가 가장 가까워진 거리. 0.5m 아래면 부딪힌 것으로 본다.
  • 길 엇갈림: 대형을 바꿀 때 두 사람 길이 교차한 횟수. AIOZ-GDANCE의 TIF와 비슷하다.
  • 대형 바꾼 횟수, 걸은 거리, 쓴 동작 수, 발 미끄러짐.
  • 라반 에포트 네 요소의 근사: 무게는 운동 에너지의 최댓값, 시간은 가속도 크기, 흐름은 저크(가속도의 변화) 크기, 공간은 손끝이 지나간 길의 곧음(직선거리 ÷ 실제로 지나간 길이)으로 잡았다. 학계에 정해진 정의가 있는 건 아니고, 흔히 쓰는 근사를 따랐다. 위 그래프 아래쪽을 보면 후렴(분홍)마다 무게·시간·흐름이 솟는다. 포인트 안무가 크고 급하고 끊어지는 동작이라서다. 브리지(초록)에서는 셋 다 가라앉고, 대신 공간이 오른다. 천천히 손을 곧게 내미는 「손 내밀기」가 들어가서다. 숫자만 보고도 어디가 후렴이고 어디가 브리지인지 알 수 있다.

두 개의 자기유사도 판. 위에는 마디 75개의 음악 세기 막대와 구간 색 띠가 있다. 왼쪽 판은 음악의 마디끼리 닮은 정도이고, 오른쪽 판은 춤(센터 하늘)의 마디끼리 닮은 정도다. 하늘색 선은 후렴 시작이다. 춤 판에는 후렴끼리 만나는 자리마다 대각선과 나란한 밝은 줄이 또렷하다. 두 판의 상관은 0.19다

후보 300개를 만들어 골랐다

생성기는 씨앗 번호에 따라 매번 다른 안무를 낸다. 파트를 누구에게 줄지, 어떤 동작을 고를지, 어떤 대형으로 갈지가 바뀐다. 씨앗 1부터 300까지 300개를 만들어 위 수치로 채점했다. 점수는 박 맞춤 + 되풀이 구조 × 0.8 + 세기 따라가기 × 0.6 + 노래하는 사람 가운데 × 0.5에서 길 엇갈림·부딪힘·지나치게 긴 이동을 깎는 식이다. 가중치는 사람이 정했다. 노트북에서 한 개를 만들고 채점하는 데 0.4초쯤 걸렸다.

왼쪽: 무작위 후보 300개의 종합 점수 분포. -0.75부터 1.40까지 퍼져 있고 0.9 근처가 가장 많다. 1위는 씨앗 114, 1.40이다. 아래쪽 삼각형은 Claude Sonnet과 Opus가 짠 구성표 6개의 점수다. 오른쪽: 하나씩 빼 보기(씨앗 60개 중앙값). 되풀이 구조 0.147 → 되풀이 없애기 0.019, 가장 가까운 간격 0.691m → 길 휘기 끄기 0.081m, 박 맞춤 0.426 → 동작 ±0.3박 흔들기 0.355, 같이 움직임 0.727 → 흔들기 0.613

점수는 -0.75부터 1.40까지 넓게 퍼졌다. 1위는 씨앗 114다. 초당 30프레임으로 다시 재면 박 맞춤 0.46, 같이 움직임 0.71, 되풀이 구조 0.19, 노래하는 사람 가운데 73%, 가장 가까운 간격 0.69m, 길 엇갈림 0번, 대형 바꾼 횟수 38번, 쓴 동작 20개다. 다섯 명이 2분 30초 동안 27~40m를 걷는다. 이 안무가 아래 화면에 처음 뜨는 안무다.

생성기의 어느 부분이 무슨 일을 하는지 보려고 하나씩 빼 봤다. 씨앗 60개로 같은 실험을 하고 중앙값을 비교했다.

  • 되풀이를 빼면 2절과 후렴을 매번 새로 고른다. 되풀이 구조가 0.147에서 0.019로 떨어진다. 다른 점수는 거의 그대로다. 「되풀이가 춤을 노래처럼 만든다」는 게 숫자로 보인다.
  • 길 휘기를 빼면 짝은 그대로 고르되 곧게만 걷게 한다. 가장 가까운 간격이 0.691m에서 0.081m가 되고, 60개 모두 어딘가에서 두 사람이 0.5m 안으로 붙는다. 대형을 바꿀 때 누군가는 꼭 누군가와 부딪힌다는 뜻이다.
  • 동작을 ±0.3박 흔들면 박 맞춤은 0.07 떨어지는 데 그치지만 같이 움직임은 0.727에서 0.613으로 떨어진다. 박이 조금 어긋나는 것보다 다섯 명이 서로 어긋나는 게 더 잘 보인다.

AI에게 직접 짜게 하면

이번에는 생성기의 무작위 고르기 대신 AI에게 구성표를 맡겨 봤다. 같은 동작 사전 24개, 대형 10개, 군무 방식 5개를 주고, 구절 40개마다 동작·방식·대형·가운데 설 멤버를 고르게 했다. 「후렴마다 같은 포인트 안무를 되풀이하고, 음악이 되풀이되면 춤도 되풀이하고, 노래하는 멤버를 가운데로」 같은 K-pop 안무의 관례도 적어 줬다. 걸음과 간격 검사는 생성기가 그대로 맡았다. Claude Sonnet과 Claude Opus에게 세 번씩 시켰다.

누가점수(300개 중 순위)되풀이 구조노래하는 사람 가운데대형 바꾼 횟수
Sonnet 11.34 (7위)0.1073%30
Sonnet 21.13 (55위)0.0777%34
Sonnet 30.84 (164위)0.1564%34
Opus 11.01 (94위)0.1785%35
Opus 21.32 (8위)0.1777%30
Opus 31.40 (2위)0.2180%21
생성기 1위(씨앗 114)1.400.1973%38

여섯 번 모두 형식은 완벽했다. 없는 동작 이름을 지어내지 않았고, 구절 길이를 넘기는 동작도 없었다. 후렴에는 빠짐없이 포인트 안무를 넣었다. 잘 짠 판은 무작위 300개 중 2위였다. 하지만 같은 요청에 164위짜리도 나왔다. 평균으로 보면 무작위 후보의 중앙값(0.88)보다 낫고, 300개 중 1위보다는 못하다. 「AI가 안무를 짠다」의 지금 모습은 이쯤이다. 한 번 시키면 운이 좋을 수도 나쁠 수도 있고, 여러 번 시켜서 채점기로 고르면 상위권이 나온다.

처음 시켰을 때는 누가 어느 줄을 부르는지 알려 주지 않았다. 그랬더니 「노래하는 사람 가운데」가 8.5%로 나왔다. 노래하지 않는 사람을 계속 가운데로 보냈다. AI 잘못이 아니라 내가 정보를 안 준 탓이다. 파트 분배를 넣어 다시 시킨 것이 위 표다.

직접 보기

아래가 이번에 만든 무대다. 「재생」을 누르면 노래가 나오고 다섯 명이 춤을 춘다. 노래는 화면 안에 들어 있어서 따로 받지 않는다. 처음 누르면 노래를 푸느라 잠깐 기다린다.

소나기 · 5인조 안무 생성기. 재생하면 AI로 만든 곡에 맞춰 인형 다섯이 춤을 춘다. 오른쪽 「동선」에는 위에서 본 대형과 다음 대형으로 가는 길이, 「구성」에는 구절마다 고른 동작·대형·군무 방식이, 「수치」에는 이 안무의 박 맞춤·같이 움직임·간격 같은 점수가 나온다. 「새 안무 만들기」는 그 자리에서 후보 8개를 만들어 채점한 뒤 1위를 보여 준다.

화면이 좁으면 새 창에서 열기가 편하다. 「포인트 안무로」를 누르면 후렴 첫머리로 바로 간다. 카메라는 정면, 위에서, 돌려 보기 셋이다. 무대를 끌면 돌아가고, 휠로 당기고 밀 수 있다. 위에서 보면 대형이 바뀔 때 다섯 명이 서로 피해 가며 걷는 게 잘 보인다.

「새 안무 만들기」를 누르면 새 씨앗으로 후보 8개를 만들고, 빠르게 채점해 1위를 띄운다. 노트북에서 4초쯤 걸렸다. 파트를 누가 맡는지, 어떤 대형으로 가는지가 바뀌는데, 후렴 포인트 안무는 언제나 같다. 오른쪽 「수치」 판의 숫자도 새 안무에 맞게 바뀐다. 「구성」 판에서 구절을 누르면 그 자리로 간다.

생성기 화면을 위에서 본 모습. 후렴 2에서 다섯 명이 앞3·뒤2 대형으로 서 있다. 오른쪽 「수치」 판에는 박 맞춤(BAS) 0.46, 같이 움직임 0.71, 되풀이 구조 0.19, 세기 따라가기 0.15, 노래하는 사람 가운데 73%, 가장 가까웠던 간격 0.69m, 길 엇갈림 0, 대형 바꾼 횟수 38, 걸은 거리 27·32·28·36·40m, 발 미끄러짐 8.4cm/s, 쓴 동작 수 20이 나와 있다

어디서 틀렸나

  • 박을 3% 틀리게 들었다. librosa 박 추적기는 117.45 BPM을 냈다. 그대로 썼다면 2분 30초 동안 6박 넘게 밀려, 후렴 포인트 안무가 후렴 중간에 시작했을 것이다. 생성된 곡은 박이 고정돼 있어서 격자를 직접 대 보는 쪽이 정확했다. 사람이 연주한 곡이라면 이 방법은 안 통한다.
  • 마디 첫 박이 두 박 어긋났다. 처음에는 「첫 노랫소리」에 마디를 맞췄는데, 7초에 나오는 인트로 구호 「쏴아 쏴아」를 첫 노래로 잡았다. 구호가 마디 셋째 박에 있어서 모든 구간이 두 박씩 밀렸다. 1절 첫 줄로 기준을 바꿨다.
  • 노래의 마디가 전부 닮아 보였다. 마디별 음색·화성 특징의 닮은 정도를 처음 쟀을 때는 어떤 두 마디를 골라도 0.88 이상이었다. 곡 전체에 공통으로 깔린 소리가 닮음을 다 차지한 것이다. 곡 전체 평균을 뺀 뒤에 재자 후렴끼리 0.91, 후렴과 벌스는 0.49로 갈렸다.
  • 두 사람이 정면으로 부딪혔다. 노래하는 사람이 바뀌어 가운데 자리를 맞바꿀 때, 두 사람이 같은 길을 반대로 걸어 정확히 한가운데서 만났다. 간격이 0.002m였다. 길을 휘게 하는 단계를 넣었는데도 한 번 더 부딪혔다. 한 사람은 제자리에 서 있고 다른 사람이 그 사람을 관통해 지나가는 경우였다. 서 있는 사람은 「가는 방향」이 없어서 어느 쪽으로 휘어야 할지 계산이 안 됐다. 더 멀리 걷는 사람의 길을 기준으로 휘게 고쳤다. 그래도 후보 300개 중 11개는 어딘가에서 0.5m 안으로 붙는다. 채점에서 깎아 고르지 않을 뿐이다.
  • 손이 순간이동했다. 대형을 옮기는 동안 팔 동작을 절반 크기로 줄였는데, 걷기가 끝나는 순간 한 프레임에 원래 크기로 돌아갔다. 손목이 초속 24m로 튀었다. 속도 곡선에 한 프레임짜리 뾰족한 봉우리가 서서 알았다. 걷기의 세기를 이동 구간 가운데서 가장 크게, 양 끝에서 0으로 바꿨다.
  • 한 바퀴 돈 뒤 거꾸로 한 바퀴를 되감았다. 「한 바퀴」 동작은 몸 돌기 0도에서 360도로 간다. 다음 동작은 0도에서 시작하니, 그 사이를 이으며 360도를 거꾸로 돌아왔다. 한 박 만에. 각도는 짧은 쪽으로 잇게 고쳤다.
  • 팔이 머리 뒤로 넘어갔다. 후렴에서 동작을 1.15배 크게 키웠더니 머리 위로 170도 든 팔이 195도쯤이 돼 뒤로 넘어갔다. 팔 드는 각도에 상한(178도)을 걸었다.
  • 파트가 고르지 않다. 줄 수를 고르게 나누다가, 같은 가사는 같은 사람이 부르게 덮어쓰는 단계에서 균형이 깨진다. 1위 안무는 다섯 명이 3·4·2·4·4줄을 맡는다. 실제 그룹이라면 팬들이 먼저 알아챘을 것이다.

왜 딸깍이 되는가

작곡, 음악 분석, 3D 인형, 채점, AI 구성표까지 이번 회에 들어간 조각은 많다. 그런데 하나로 묶이는 이유는 단순하다. 춤을 숫자로 적을 수 있고, 그 숫자로 「좋은 춤」의 조건 일부를 판정할 수 있어서다. 부딪혔나, 엇갈렸나, 노래하는 사람이 가운데 있나, 후렴마다 같은 포인트를 추나. 이런 건 프로그램이 틀림없이 판정한다. 판정이 되니 만드는 쪽은 많이 만들고 버리면 된다. 지난 회 스도쿠 생성기와 같은 구조다.

딸깍이 안 되는 자리도 같은 데 있다. 「이 춤이 멋있나」를 재는 수치는 없다. 박 맞춤은 박만 맞으면 로봇 춤도 높게 나오고, FID는 실제 춤을 생성물보다 나쁘게 쳤다. 이번 채점도 「부딪히지 않고, 되풀이하고, 노래하는 사람을 앞에 세운 안무」를 고를 뿐이다. 따라 추고 싶은 8박은 아직 사람이 짰다. 포인트 안무 둘은 생성기가 고른 게 아니라 손으로 만든 것이다.

따라 하려면

  • 노래는 박이 고정된 걸로. 생성한 곡이나 전자음악은 박 간격이 일정해 격자로 정확히 잡힌다. 사람이 연주한 곡이면 박 추적기를 쓰고, 그 결과를 꼭 귀로 확인하라.
  • 구간은 가사로 나눠라. 소리 특징으로 구간을 나누는 것보다 받아쓰기로 가사 첫 줄을 찾는 편이 이번엔 훨씬 정확했다. 내가 쓴 가사라 정답을 알고 있어서다.
  • 동선은 따로, 먼저 풀어라. 동작과 자리를 한꺼번에 정하려 하지 말고, 대형과 걷는 길을 먼저 정한 뒤 그 위에 동작을 얹어라. 2025년의 그룹 댄스 연구 TCDiff도 궤적을 먼저 만들고 동작을 나중에 만든다.
  • 간격 검사는 곧은 길로 하지 마라. 다섯 명이 동시에 걸으면 곧은 길끼리 반드시 어딘가에서 만난다. 시간에 따라 두 사람 사이 거리를 재고, 가까우면 길을 휘게 하라.
  • 지표는 여러 개를 같이 보라. 박 맞춤 하나만 올리면 로봇 춤이 된다. 이번에도 박을 0.3박씩 흔들어서 박 맞춤은 거의 그대로였는데 칼군무가 무너졌다.
  • AI에게 시킬 땐 여러 번, 그리고 정보를 다 줘라. 같은 요청에 2위도 164위도 나왔다. 누가 노래하는지 안 알려 주면 엉뚱한 사람을 가운데 세운다.

못 하는 것

  • 학습한 모델이 아니다. 이 생성기는 손으로 만든 동작 사전과 규칙과 무작위 탐색이다. EDGE나 Lodge처럼 실제 춤 데이터에서 배운 모델이 아니다. 그래서 사전에 없는 동작은 영원히 안 나온다. K-pop 군무 3D 데이터가 공개돼 있었다면 다른 길을 갔을 것이다.
  • 사람 눈으로 검증하지 않았다. 점수 1위가 사람이 보기에도 가장 좋은 안무인지는 모른다. 연구들은 사람 평가를 따로 하는데, 이번에는 하지 않았다.
  • 물리를 계산하지 않는다. 인형은 균형을 잡지 않는다. 무게중심이 발 밖으로 나가도 넘어지지 않고, 점프는 그냥 위로 올라갔다 내려온다. 발 미끄러짐은 초당 8.4cm 정도 남아 있다.
  • 손가락과 표정이 없다. K-pop 안무에서 손끝과 표정은 큰 몫을 한다. 이 인형의 손은 막대 하나다. 「똑똑」 동작도 검지가 아니라 손 전체로 두드린다.
  • 너무 박에 붙는다. 박 맞춤 0.46은 사람 댄서보다 높다. 박을 살짝 당기거나 미는 그루브가 없다.
  • 노래가 완벽하지 않다. 생성한 곡은 가사 발음이 뭉개지는 곳이 있다. 받아쓰기가 「쏴아」를 끝까지 「사야」로 적었고, 브리지 한 줄은 아예 못 알아들었다.
  • 이 안무를 그대로 무대에 올리면 안 된다. 실제 사람은 0.7m 간격으로 팔을 휘두르며 지나가기 어렵고, 38번 대형을 바꾸는 건 꽤 바쁜 무대다. 안무가가 보고 고칠 초안쯤으로 봐야 한다.

『소나기』의 소년과 소녀는 개울가에서 몇 번 마주치고 헤어진다. 이번 곡의 다섯 소녀는 2분 30초 동안 서른여덟 번 자리를 바꾼다. 그 길을 하나하나 계산해 주는 일까지는 기계가 했다. 어떤 8박이 사람들을 따라 추게 만드는지는 아직 사람이 고른다.

재미있게 읽었다면 꼭 의견을 달아달라.

출처

이미지 출처

이 연재를 처음부터 보시려면 진짜 딸깍하는 AI 로 가시오.

한마디 0

아직 한마디도 없소. 먼저 보태시오.

한마디 보태려면 들어오시오.