AI VIDEO BRIEFING
고차원 함수 시각화 방법: 파라메트릭 곡면과 색·시간 축으로 신경망을 눈으로 보는 법
함수의 입력과 출력에 각각 차원이 있다는 관점에서 출발해 파라메트릭 곡면, 색, 시간 축을 차례로 더해 고차원 함수를 시각화하는 방법을 정리했다. 신경망 역시 하나의 함수일 뿐이라는 사실이 자연스럽게 드러난다.

핵심 메시지
쉽게 이해하기
이 영상은 화려한 3차원 생물처럼 보이는 도형들이 사실은 전부 하나의 수학 함수라는 이야기로 시작한다. 만든 이는 이들을 '수학 동물'이라 부르고, 모양과 색과 시간에 따른 변화까지 모두 함수 하나가 결정한다고 설명한다. 출발점은 기본기다. 함수는 숫자를 넣으면 숫자가 나오는 기계이고 입력이 하나면 입력 공간은 1차원, 출력이 셋이면 출력 공간은 3차원인데, 목표는 함수 하나에 최대한 많은 입력과 출력을 밀어 넣으면서도 여전히 눈으로 보고 만질 수 있게 만드는 것이다.
돌파구는 파라메트릭 함수다. 입력을 x축으로 쓰지 않고 u라는 임의의 매개변수로 두면, 출력 두 개는 2차원 좌표가 되어 원을 그리고 출력 세 개는 3차원의 나선이 된다. 여기에 입력 v를 하나 더 붙이면 입력 공간은 평면이 되고, 그 평면이 3차원 공간에서 구겨지며 만들어 내는 것이 파라메트릭 곡면이다. 입력을 늘리는 것은 변수를 추가하는 일이고, 출력을 늘리는 것은 방정식을 추가하는 일이라는 정리가 이 대목에서 나온다.
출력을 더 밀어 넣는 방법은 색이다. 같은 좌표를 x·y·z가 아니라 0에서 1 사이로 맞춘 R·G·B 값으로 내보내면 컴퓨터 그래픽스에서 말하는 UV 맵이 되고, 위치 세 개와 색 세 개를 한 함수에 합치면 출력은 여섯 차원, 투명도까지 얹으면 일곱 차원이 된다. 입력을 더 늘릴 때는 방향을 바꿔 시간을 쓴다. 점을 무한히 쌓으면 선, 선을 쌓으면 면, 면을 쌓으면 입방체가 되듯, 한 변수를 고정한 채 한 겹씩 잘라 보고 그 값을 흘려보내며 전체 모습을 짐작하는 것이다.
직접 만든 웹 도구는 Desmos나 GeoGebra와 비슷하되 프로그래머 친화적이다. surface라는 자바스크립트 함수가 입력 객체를 받아 x·y·z·r·g·b·a를 돌려주고, u와 v 외의 매개변수는 원하는 만큼 이름을 붙여 추가할 수 있다. 매개변수가 23개인 조개껍데기 함수처럼 손잡이를 하나씩 돌리며 형태를 바꿀 수 있는데, 만든 이는 이를 두고 매개변수는 유전자이고 눈에 보이는 형태는 표현형이라고 비유한다.
이 프로젝트의 두 번째 동기가 신경망이다. 신경망은 결국 함수이고, 파라미터가 충분하면 어떤 함수든 근사할 수 있는 보편 함수 근사기다. 단층 퍼셉트론은 평평한 면과 단순한 색 그라데이션밖에 만들지 못하지만, 다층 퍼셉트론은 파라미터가 너무 많아 화면에 다 노출할 수 없어 난수 시드 하나로 가중치와 편향을 채웠다. 시드를 바꾸며 넘기는 행위가 곧 가능한 신경망들의 공간을 산책하는 일이 된다.
주요 인사이트
- 차원이 높아 못 본다는 말은 대개 '한 번에 다 못 본다'는 뜻이다. 슬라이스를 시간처럼 넘겨 보는 방식은 유튜브 영상을 프레임 단위로 스크럽하는 것과 같아서, 전체를 동시에 보지 않아도 형태에 대한 감을 얻을 수 있다.
- 같은 함수라도 시각화 방법에 정답은 없다. 구를 3차원 곡면으로 그릴 수도 있고 색으로 칠한 평면으로 그릴 수도 있는데, 둘은 수학적으로 동일하지만 색으로 쓰려면 값을 0에서 1 사이로 옮겨 놓아야 한다는 제약이 붙는다.
- 매개변수를 유전자에, 결과 형태를 표현형에 대응시키는 관점은 파라미터 탐색을 진화 탐색처럼 바라보게 한다. 매개변수 조합의 수가 폭발적으로 늘어나 모든 조합을 방문할 수는 없지만, 그 공간을 걸어 다니는 것만으로도 많은 형태를 만날 수 있다.
- 신경망을 '학습된 블랙박스'가 아니라 손잡이가 아주 많이 달린 함수로 놓고 보면, 왜 보편 근사가 신경망만의 특권이 아닌지가 보인다. 영상은 테일러 급수와 푸리에 급수로 구현한 대안 구조를 같은 화면에서 보여 준다.
- 만든 이는 이 웹사이트 제작에 AI를 적극적으로 썼다고 밝히고, 기본 예제 코드의 주석 자체가 챗봇에 그대로 붙여 넣을 수 있는 프롬프트 역할을 하도록 설계했다고 설명한다.
자주 묻는 질문
입력과 출력을 각각 몇 개까지 늘렸나?
출력은 위치 x·y·z와 색 R·G·B에 투명도 A까지 더해 일곱 개까지 다뤘다. 입력은 u와 v 외에 원하는 만큼 매개변수를 추가할 수 있으며, 영상에서는 입력 다섯 개와 출력 여섯 개를 가진 초구(5-sphere)와 매개변수 23개짜리 조개껍데기 함수를 예로 든다.
입력을 늘리는 것과 출력을 늘리는 것은 무엇이 다른가?
입력을 늘리면 함수에 새로운 변수가 추가되고, 출력을 늘리면 새로운 방정식이 추가된다. 입력이 하나면 입력 공간은 선, 둘이면 평면, 셋이면 부피가 되고, 출력 개수는 그 결과가 놓이는 공간의 차원을 결정한다.
신경망은 여기서 어떻게 다뤄지나?
신경망을 하나의 함수로 보고 도구 안에 직접 구현했다. 단층 퍼셉트론은 평면과 단순한 색 변화만 만들어 내고, 다층 퍼셉트론은 파라미터가 너무 많아 개별 손잡이 대신 난수 시드를 하나 두어 가중치와 편향을 채우는 방식으로 다뤘다.
이 도구는 어디에 쓸 수 있나?
영상에서는 구면·원통 좌표 변환과 HSV 색 변환을 지원하고, 반복문·조건문·난수·행렬·복소수를 코드에 그대로 쓸 수 있어 프랙털이나 수치 적분 같은 것도 만들 수 있다고 설명한다. 다만 계산량이 커지면 느려지므로 UV 해상도를 낮춰 성능을 조절하라고 안내한다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗