1P by GN⁺ | ★ favorite | 댓글 1개
  • DiffLogic CA는 Neural Cellular AutomataDifferentiable Logic Gate Networks를 결합해, 이산 셀 상태를 유지하면서도 경사 기반으로 지역 규칙을 학습하는 셀룰러 오토마타 접근법임
  • 각 셀은 n차원 이진 벡터 상태를 갖고, 인지 단계와 업데이트 단계 모두 로직 게이트 네트워크로 처리해 다음 상태를 직접 계산함
  • Conway의 Game of Life 실험에서는 3x3 주기 격자의 512개 구성을 한 스텝 학습해 전체 규칙을 익혔고, 하드 추론에서도 glider, block, loaf, boat 같은 대표 패턴을 재현함
  • 패턴 생성 실험은 16x16 체크보드를 20스텝에 만들고, 4배 큰 격자와 4배 긴 시간에서도 작동했으며, 손상된 셀에 대한 내결함성과 재활성화 후 자기 복구를 보임
  • 더 복잡한 lizard 윤곽과 8색 RGB G도 생성했지만, 복잡한 구조 학습에는 많은 하이퍼파라미터 튜닝이 필요했고 계층형 NCA와 LSTM 유사 게이트가 개선 후보로 남음

DiffLogic CA가 겨냥한 문제

  • 셀룰러 오토마타는 보통 지역 규칙을 먼저 정하고, 그 결과로 나타나는 창발 패턴을 관찰하는 방식으로 다뤄짐
  • DiffLogic CA는 원하는 복잡한 패턴이 있을 때, 그 패턴을 만드는 지역 규칙을 완전 미분 가능한 방식으로 학습하는 방법을 탐색함
  • 기존 Neural Cellular Automata는 임의의 패턴과 행동을 학습할 수 있지만, 본질적으로 이산 상태 공간에서 동작하지 않아 해석성이 낮아지고 연속 상태 업데이트에 행렬 곱 비용이 듦
  • Differentiable Logic Gate Networks는 조합 논리 회로 발견에 쓰였지만, 공간과 시간 양쪽에서 재귀적인 NCA 설정에서는 아직 동작이 입증되지 않았음
  • 전체 실험은 노트북에서 재현할 수 있음

Neural Cellular Automata의 기본 구조

  • Neural Cellular Automata는 고전적인 셀룰러 오토마타에 딥러닝을 결합해, 손으로 규칙을 설계하는 대신 경사 하강법으로 업데이트 규칙을 학습함
  • Growing-NCA의 각 셀은 2D 격자 위에서 n차원 상태 벡터를 가짐
    • RGB 3채널은 셀의 색을 나타냄
    • Alpha 채널은 셀의 생존성을 나타내며, alpha 값이 0.1보다 크면 살아 있는 셀로 간주됨
    • 나머지 hidden channel은 주변 환경에 대한 더 복잡한 정보를 전달함
  • 업데이트는 두 단계로 이뤄짐
    • 인지 단계: Sobel filter를 채널별로 적용해 공간 기울기를 근사하고, 셀의 현재 상태와 주변 정보를 합친 perception vector를 만듦
    • 업데이트 단계: 약 8,000개 파라미터를 가진 신경망이 모든 셀에 동일하게 적용되어 각 셀이 어떻게 변할지 결정함
  • 모든 연산이 미분 가능하므로, 시스템 전체가 특정 패턴이나 행동을 학습할 수 있음

Differentiable Logic Gate Networks의 방식

  • Deep Differentiable Logic Gate Networks는 인공 뉴런 대신 AND, OR, XOR 같은 로직 게이트를 기본 단위로 사용함
  • 네트워크는 게이트 층으로 구성되며, 각 게이트는 이전 층의 두 게이트에서 입력을 받는 희소 구조를 가짐
  • 연결은 무작위로 초기화된 뒤 학습 중 바뀌지 않고, 학습은 각 게이트가 어떤 논리 연산을 수행할지만 결정함
  • 학습 중에는 이산 로직 게이트를 그대로 쓰지 않고 두 가지 장치를 사용함
    • 연속 완화: hard AND 같은 이산 연산을 0과 1 사이 입력을 받는 미분 가능한 버전으로 대체함
    • 확률적 게이트 선택: 각 게이트가 두 입력에 대한 16가지 가능한 이진 연산 위의 확률 분포를 갖고, softmax로 표현된 16차원 파라미터를 학습함
  • 학습이 끝나면 각 게이트는 가장 확률이 높은 연산으로 고정되고, 추론 시에는 순수 이진 연산만 수행함
  • 학습 안정성을 위해 초기 게이트 분포는 pass-through 게이트 쪽으로 치우치게 설정됨

DiffLogic CA의 구조

  • DiffLogic CA는 NCA의 2D 격자 구조를 따르지만, 각 셀의 상태를 n차원 이진 벡터로 표현함
  • 셀 상태와 채널은 같은 의미로 쓰이며, 이진 상태 벡터는 이전 반복의 정보를 저장하는 작업 메모리 역할을 함
  • 인지 단계는 Sobel filter 대신 로직 게이트 네트워크 기반 커널을 사용함
    • 각 커널은 고정된 연결 구조를 가진 별도 회로이고, 게이트 종류는 학습됨
    • 커널은 채널별로 계산됨
    • 각 회로는 중심 셀과 이웃 셀 간 상호작용을 계산하도록 설계된 4개 층을 사용함
  • 업데이트 단계는 셀의 이전 메모리와 이웃에게서 받은 정보를 이어 붙인 입력을 Differentiable Logic Gate Network에 넣어 새 상태를 계산함
  • 표준 NCA처럼 상태를 점진적으로 더하는 ODE식 업데이트가 아니라, 다음 이진 상태를 직접 출력함
  • 한 라운드의 동작은 두 레지스터로 볼 수 있음
    • 회색 레지스터에는 기존 셀 상태가 있음
    • 주황색 레지스터에는 인지 단계 결과가 저장됨
    • 업데이트 후 새 상태는 회색 레지스터에 쓰이고, 주황색 레지스터는 다음 라운드를 위해 비워짐
  • 이 구조는 각 셀이 이웃과 통신하고 관찰 결과로 결정을 내리는 작은 독립 컴퓨터들의 네트워크처럼 동작함

실험 1: Conway의 Game of Life 학습

  • Game of Life는 각 셀이 8개 이웃의 상태와 자신의 현재 상태에 따라 다음 세대에서 살거나 죽는 이진 셀룰러 오토마타임
  • 규칙은 네 가지임
    • 죽은 셀은 정확히 3개의 살아 있는 이웃이 있으면 다음 세대에 살아남
    • 살아 있는 셀은 2개 또는 3개의 살아 있는 이웃이 있으면 생존함
    • 살아 있는 셀은 이웃이 2개보다 적으면 죽음
    • 살아 있는 셀은 이웃이 3개보다 많으면 죽음
  • 이 실험은 이전 상태 반복에 의존하지 않는 규칙을 대상으로 하므로, 셀 상태는 1비트로 설정됨
  • 모델 구성은 다음과 같음
    • 인지 회로 커널 16개
    • 각 인지 커널의 노드 구조는 [8, 4, 2, 1]
    • 업데이트 네트워크는 23개 층
    • 처음 16개 층은 각각 128개 노드
    • 이후 층은 [64, 32, 16, 8, 4, 2, 1]
  • 학습 데이터는 3x3 주기 격자에서 가능한 512개 구성 전체를 포함함
    • 각 셀의 다음 상태는 자신과 8개 이웃으로 결정되므로 3x3 구성은 512가지임
    • 한 스텝의 다음 상태를 모두 맞히면 Game of Life 전체 규칙을 학습한 것과 같음
  • 손실 함수는 예측 격자와 정답 격자의 제곱 차이를 합산함
  • soft loss와 hard loss가 모두 완전히 수렴했고, 하드 추론에서 학습된 회로는 더 큰 격자에서도 Game of Life 패턴을 재현함
  • 활성 게이트 수는 pass-through A와 B를 제외하고 336개였으며, 인지 네트워크와 업데이트 네트워크에서 OR와 AND가 가장 자주 사용됨
  • 생성된 회로는 Game of Life 회로로 직접 상호작용할 수 있음

실험 2: 체크보드 패턴 생성

  • 패턴 생성 실험은 임의 초기 상태에서 목표 이미지로 진화하는 규칙을 학습하도록 설정됨
  • 손실은 마지막 타임스텝에서만 계산되므로, 모델은 중간 단계별 감독 없이 이산 전이 규칙을 찾아야 함
  • 셀 상태는 8비트이고, DiffLogic CA는 20스텝 반복됨
  • 모델 구성은 다음과 같음
    • 인지 회로 커널 16개
    • 각 커널은 층별로 8, 4, 2개의 게이트를 가짐
    • 업데이트 네트워크는 16개 층
    • 처음 10개 층은 각각 256개 게이트
    • 이후 층은 [128, 64, 32, 16, 8, 8]
  • 손실 함수는 마지막 타임스텝에서 예측 격자의 첫 번째 채널과 목표 격자 간 제곱 차이의 합임
  • 모델은 16x16 체크보드 패턴을 20스텝 안에 복원하도록 학습됨
  • soft loss와 hard loss가 모두 수렴했고, 첫 번째 채널에서 명확한 패턴 형성이 나타남
  • 모델에는 내장된 방향 편향이 없었지만, 패턴이 왼쪽 아래에서 오른쪽 위로 전파되는 성질이 나타남
  • 활성 게이트 수는 pass-through A와 B를 제외하고 22개였고, 가지치기 후 전체 체크보드 생성 함수는 실질적으로 5개 로직 게이트로 구현 가능했음
  • 4배 큰 격자와 4배 긴 시간으로 확장해도 회로가 작동했으며, 학습된 규칙은 특정 격자 크기에만 과적합된 형태가 아니었음

손상, 자기 복구, 비동기 업데이트

  • 체크보드 실험에서는 일부 셀이 고장 난 상황을 가정해 두 가지 손상 실험을 수행함
    • 큰 영역의 셀을 영구적으로 비활성화해 결함 부품을 시뮬레이션함
    • 일정 스텝 이후 비활성 셀을 다시 활성화함
  • 시스템은 영구 손상 상황에서도 패턴 무결성을 유지했고, 비활성 셀이 다시 온라인 상태가 된 뒤에는 올바른 패턴을 다시 생성함
  • 내결함성과 자기 복구를 명시적으로 설계하지 않았는데도, 손상이 국소화되고 전체 기능이 급격히 붕괴하지 않는 동작을 보임
  • 비동기 업데이트 실험에서는 모든 셀을 동시에 업데이트하지 않고, 각 스텝에서 무작위 셀 부분집합만 업데이트함
  • 비동기 학습은 기존 NCA보다 어려울 것으로 예상됐음
    • 각 스텝에서 증분이 아니라 전체 새 상태를 출력해야 함
    • 주변 셀들이 서로 다른 단계만큼 앞서거나 뒤처진 조합을 처리해야 함
  • 체크보드에서는 비동기 학습이 비교적 쉽게 성공했고, 같은 초기 상태에서 서로 다른 업데이트 순서를 써도 50스텝 안에 목표 패턴을 재구성함
  • 동기 학습된 기존 규칙을 비동기 추론에 적용해도 작동함
  • 매 추론 타임스텝마다 이미지 영역 안의 10x10 픽셀 사각형을 무작위 비활성화하는 테스트에서, 비동기 학습된 셀이 손상에서 조금 더 빠르게 회복함
  • 목표와 재구성 이미지의 절대 차이 합으로 오류를 측정했을 때, 비동기 학습은 이러한 교란에 대한 견고성을 높였음

실험 3: lizard 윤곽 성장

  • lizard 실험은 원래 NCA 작업에 대한 오마주로, DiffLogic CA가 임의 형태를 학습할 수 있는지 확인함
  • 체크보드처럼 고도로 압축 가능한 규칙적 패턴이 아니라, lizard 윤곽은 더 많은 암기를 요구함
  • 설정은 다음과 같음
    • 셀 상태는 128비트
    • DiffLogic CA는 12스텝 반복됨
    • 인지 회로 커널은 4개
    • 각 커널은 층별로 8, 4, 2, 1개의 게이트를 가짐
    • 업데이트 네트워크는 10개 층
    • 처음 8개 층은 각각 512개 게이트
    • 마지막 층들은 [256, 128]
  • 모델은 20x20 lizard 패턴을 12스텝 안에 생성하도록 학습됨
  • 초기 조건은 NCA처럼 대칭을 깨기 위한 중앙 seed이며, 격자 가장자리에는 주기 경계 조건이 적용됨
  • 40x40 더 큰 격자에서 평가했을 때도 lizard 성장 패턴을 성공적으로 생성해, 경계 조건을 이용한 해법이 아니었음을 보임
  • soft loss와 hard loss가 모두 0으로 수렴함
  • 활성 게이트 수는 pass-through A와 B를 제외하고 577개였음
  • 인지 커널은 TRUE 게이트를 주로 사용했고, 업데이트 회로는 사용 가능한 거의 모든 게이트를 사용함
  • 복잡한 패턴 생성 학습은 최적화가 어렵고 광범위한 하이퍼파라미터 튜닝이 필요했음

실험 4: 색이 있는 G 생성

  • 이전 실험들이 사실상 단색 이미지에 집중했기 때문에, 더 복잡한 목표 상태로 16x16 색상 이미지를 생성하는 실험을 진행함
  • 셀 상태는 64채널이고, 모델은 15스텝 동안 색이 있는 알파벳 G를 생성함
  • 첫 세 채널은 표준 NCA 관례처럼 RGB 값을 나타내지만, 여기서는 각 값이 0 또는 1인 이진 표현으로 제한되어 8가지 색상 팔레트를 만듦
  • 모델 구성은 다음과 같음
    • 인지 회로 커널 4개
    • 각 커널은 8, 4, 2개 게이트를 가진 3개 층으로 구성됨
    • 업데이트 네트워크는 11개 층
    • 처음 8개 층은 각각 512개 노드
    • 마지막 3개 층은 [256, 128, 64]
  • 초기 상태는 완전히 0이고, 주기 경계 조건은 사용하지 않음
  • 손실 함수는 마지막 타임스텝에서 첫 세 채널인 0, 1, 2번 채널만 대상으로 예측 격자와 목표 격자의 제곱 차이를 합산함
  • soft loss와 hard loss가 수렴했고, 모델은 15스텝 안에 색이 있는 G를 재구성함
  • 활성 게이트 수는 pass-through A와 B를 제외하고 927개였음
  • TRUE와 FALSE 게이트가 인지 네트워크와 업데이트 네트워크 양쪽에서 많이 사용됐고, 업데이트 네트워크에서는 OR 게이트가 가장 많이 사용됨
  • 이 회로는 이전 실험보다 하이퍼파라미터 탐색과 회로 크기 양쪽에서 더 복잡했음

남은 과제와 개선 방향

  • DiffLogic CA는 완전 이산 셀 상태를 사용하고, 학습된 재귀 이진 회로로 상태를 업데이트하는 새로운 NCA 구조와 학습 방식을 제안함
  • 신경망 구성 요소를 Deep Differentiable Logic Networks로 대체해, 이산 로직 게이트에 미분 가능 학습의 유연성을 결합함
  • Game of Life 복제와 패턴 생성 실험은 미분 가능 로직 게이트가 셀룰러 오토마타에 적용될 수 있음을 보임
  • 결과적으로 Differentiable Logic Gate Networks가 재귀 구조에서도 효과적으로 학습될 수 있음을 확인함
  • 현재 모델은 패턴 학습 가능성을 보였지만, 더 복잡한 형태와 구조를 생성하는 학습은 여전히 어려움
  • 개선 방향으로는 계층형 NCA 구조와 상태 망각을 돕는 특수 게이트가 제안됨
  • LSTM 유사 게이팅 메커니즘을 상태 업데이트 과정에 통합하면, 과거 상태와 새로 계산된 후보 상태를 더 풍부하게 조합해 모델 동역학과 표현력을 높일 수 있음

댓글과 토론

Hacker News 의견들
  • 매우 흥미로움. 새로운 범용 튜링 기계 기질을 찾아다니며, 유전 프로그래밍 실험용으로 Pokémon처럼 모으고 있었음. 예전에 셀룰러 오토마타도 rule 30/110 등으로 만져봤지만, 이 접근은 훨씬 더 설득력 있음
    커널을 디지털 논리 회로처럼 모델링할 생각은 못 했음. 불리언 논리, 게이트, 회로의 제약이 적합도 지형을 만들기에 흥미로운 결을 만들어 주는 듯함. 결과 파라미터는 하드웨어 구현으로 바로 변환하거나 추가 최적화 단계를 거친 뒤 단순한 프로그램으로 컴파일할 수 있음. 수십억 파라미터짜리 블랙박스 안의 마법 같은 부동소수점을 다루는 것보다 나아 보임

    • 이 논문은 정말 중요하게 느껴짐. 오토마타를 미분 가능하게 만들면 불리언 회로 설계에 역전파 최적화를 적용해 복잡한 이산 시스템 동작을 학습할 수 있음. 놀라운 일임
    • difflogic을 보면 좋음. 미분 가능한 신경망 논리 회로를 CUDA나 C 코드로 컴파일할 수 있음. 대표 데모는 CPU에서 초당 100만 장 이상의 이미지를 처리하는 MNIST 분류기임
  • 흥미진진함. Michael Levin은 동물 세포가 계층 구조 없이 어떻게 협력할 수 있는지를 가장 잘 문제화해 줬음. 예를 들어 개구리 배아의 눈 세포를 떼어내도 눈이 있어야 할 위치로 이동한다는 생물학 실험들이 있음
    그가 제대로 답하지 못한 질문은 세포가 언제 멈춰야 하는지 어떻게 아는가였다고 봄. 비계층적 조직화를 이해하는 것은 사회가 작동하는 방식, 그리고 자기조직화된 세계의 여러 규모에서 죄수의 딜레마를 푸는 데도 핵심임. 날것의 복잡성을 이해하고 모델링하는 일이기도 함. 이런 것을 모델링할 수 있는 능력을 본 건 이번이 처음이고, 여기서 뻗어갈 방향이 정말 많아 보임

    • 내가 뭔가 명백한 걸 놓치고 있을 수도 있지만, 이게 입문서에서 다루는 잘 알려진 화학적 기울기 메커니즘으로 처리되지 않는 이유가 궁금함. 기본적으로 세포는 여러 겹으로 겹친 화학적 기울기 안에서 방향을 잡고, 그 기울기들은 반복적으로 구성되면서 매 반복마다 더 복잡한 공간적 행동을 보임
    • Michael Levin 인터뷰 Cognitive Light Cones: https://www.youtube.com/watch?v=YnObwxJZpZc
  • 요즘 지능에 대해 많이 생각하는데, 지능이 어떻게 작동하는지 알아내거나 적어도 이해를 크게 진전시키는 결정적 지점에 와 있는 느낌임. 지능은 고전 뉴턴 역학이나 전기와 크게 다르지 않은, 자연스럽게 창발하는 행동처럼 보임
    결국은 단순한 규칙으로 귀결되는 듯함. 뇌에서 이산적이지 않은 모든 것이 사실은 실제 일을 하는 단순하지만 중요한 핵심 과정을 떠받치는 인프라일 뿐이라면 어떨까? 결국 끝까지 내려가면 논리 게이트와 전기 신호라면? 앞으로 흥미로운 시간이 올 것 같음

  • 이런 접근에는 특히 일반화 능력 측면에서 매력적인 부분이 있음. 하지만 큰 비전이 무엇인지 궁금함. 앞으로 무엇을 할 수 있게 되는 걸까? 철학적으로는 세계에 대해 무엇을 가르쳐 주는 걸까? 1차원 셀룰러 오토마타가 튜링 동등하다는 것은 이미 알고 있으니, 어떤 관점에서는 NCA나 이런 방식이 아주 놀랍지는 않음

    • 위성 이미지에서 격자를 입력해 산불 확산이나 오염 확산 같은 문제를 시뮬레이션할 수 있다면 유용할 수 있음
    • 이것들은 에너지 소비 측면에서 박테리아, 식물, 인간을 넘어 지구의 지배적 생명체가 될 것 같음
      환경과 상호작용하는 셀룰러 오토마타, 저수준 시스템과 고수준 제도 모두와 상호작용하는 오토마타가 나올 것임. 어느 정도 근사하면 인간도 이런 네트워크 안에서 상호작용하는 개별 세포에 불과함. 지능의 미래는 LLM이 아니라 대사적 측면을 가진 오토마타 시스템이라고 봄. 함께 진화하고, 에너지를 소비하고, 가치를 생산하며, 경쟁하고, 서로를 모델링하는 오토마타임
      우리는 대체되는 것이 아니라 기술 시스템과 세포 시스템의 경계가 흐려지고 결국 사라지는 변환에 참여하고 있는 것임. 이를 목격할 수 있어 매우 감사함. 참고: https://x.com/zzznah/status/1803712504910020687
    • 자가 치유 특성은 생물학적 진화를 떠올리게 함
  • 예술 작업에 셀룰러 오토마타를 가지고 노는 걸 좋아함. 어떤 패턴이 창발할 수 있는지 놀라움. 예: https://gods.art/math_videos/hex_func27l_21.html
    DLCA도 한번 만져봐야 할 것 같음

    • 이 패턴들은 무한히 계속 생성되는 건지 궁금함
    • 예전 영화 Andromeda Strain이 떠오름
  • 여기에는 멋진 아이디어가 많음. 작은 관찰일 수 있지만, 이 계산은 상태를 가짐. 각 셀에는 메모리와 주변 환경에 대한 지각이 있음
    반면 현대적인 신경망은 대체로 상태가 없음. 예를 들어 상태를 가진 LLM에 대한 연구가 있었는지 궁금함

  • 자기 홍보이긴 하지만 매우 관련 있음: Robustness and the Halting Problem for Multicellular Artificial Ontogeny(2011)
    갱신 규칙이 등방성 확산과 결합된 퍼셉트론인 셀룰러 오토마타였음. 신경망 가중치를 최적화해서 셀룰러 오토마타가 그림을 그리게 하고, 교란되면 그림을 다시 만드는 자가 치유도 하도록 했음. 당시에는 자동 미분이 지금처럼 접근 가능하지 않아서 진화 전략으로 가중치를 최적화했음. 물론 경사 하강법을 쓰면 훨씬 나을 가능성이 큼

  • 이걸 ARC-AGI 챌린지에 쓸 수 있을까? 최근의 이 접근과 결합할 수도 있을 듯함: https://news.ycombinator.com/item?id=43259182

  • 정말 대단함. 오래 눈팅만 해왔고 모델링과 시뮬레이션을 많이 쓰는 입장에서, 복잡한 행위자 행동 모델의 창발적 행동을 더 잘 이해하는 데 큰 잠재력이 있어 보임
    포식자/피식자 모델 같은 것, 그리고 단순해 보이지만 거대한 규모에서 복잡한 창발 결과를 만들어내는 다른 모델들에 적용되는 걸 보고 싶음. 이 작업은 계속 지켜볼 생각임

  • 결과의 체커보드 패턴이 목표 패턴의 반대, 즉 NOT처럼 보임. 그런데 이에 대한 언급이 없음. 언급할 만큼 중요하지 않은 건지, 아니면 내가 뭔가 놓친 건지 궁금함

    • 잡아줘서 고마움. 출판용으로 내보내는 과정에서 목표 그림이 반전됐고, 지금은 수정됨
    • 정확한 이미지를 배우는 것이 아니라 특징을 배우는 것임. 그래서 자가 치유가 잘 되는 것이고, 이동에 대해서도 불변이어야 함