Show HN: Neural Particle Automata
TL;DR Highlight
고정된 격자 대신 움직이는 파티클 위에서 동작하는 Neural Cellular Automata의 확장 버전으로, 형태 생성·포인트 클라우드 분류·텍스처 합성 등 다양한 작업에서 자기조직화 동작을 학습할 수 있다.
Who Should Read
자기조직화 시스템, 물리 시뮬레이션, 또는 생성 모델에 관심 있는 ML/그래픽스 연구자 및 개발자. 특히 NCA(Neural Cellular Automata)나 파티클 기반 시뮬레이션을 프로젝트에 적용해보고 싶은 사람에게 적합하다.
Core Mechanics
- NPA(Neural Particle Automata)는 NCA(Neural Cellular Automata, 격자에 고정된 셀들이 국소 규칙으로 상태를 업데이트하는 신경망 모델)를 픽셀/복셀 격자에서 벗어나 자유롭게 움직이는 파티클 시스템으로 일반화한 것이다. EPFL과 KAIST 공동 연구로 SIGGRAPH 2026에 게재 예정이다.
- 기존 NCA는 오일러(Eulerian) 방식으로 셀이 격자에 고정되어 있는 반면, NPA는 라그랑주(Lagrangian) 방식을 채택해 각 셀이 연속적인 위치와 내부 상태를 가진 파티클로 표현된다. 두 값 모두 공유된 학습 가능한 신경망 규칙으로 업데이트된다.
- 파티클 시스템의 가장 큰 문제는 이웃 관계가 매 스텝마다 바뀌고, 단순 구현 시 파티클 수에 대해 O(N²) 계산 복잡도가 발생한다는 것이다. 이를 해결하기 위해 유체 시뮬레이션에서 쓰이는 SPH(Smoothed Particle Hydrodynamics, 커널 함수로 이웃 파티클 정보를 가중 평균하는 기법) 연산자를 미분 가능하게 구현했다.
- SPH 인식(perception) 단계에서 각 파티클은 지지 반경 ε 내의 이웃 파티클로부터 밀도(ρ), 스무딩된 상태(S̃), 밀도 기울기(∇ρ), 모멘트 행렬(M) 등을 추정해 로컬 인식 벡터를 만든다. 이것이 격자 기반 NCA의 합성곱 인식(convolutional perception)에 해당하는 역할을 한다.
- 상태 기울기 추정에서 0차 추정은 이웃과의 상태 차이(Sj - Si)를 쓰는데, 파티클이 불균일하게 분포하면 편향이 생긴다. 1차 보정은 모멘트 행렬 M의 역행렬을 곱해 국소 기하학적 왜곡을 정규화함으로써, 이웃이 충분히 있을 때 선형 필드에 대해 정확한 기울기를 추정한다.
- SPH 연산을 위한 메모리 효율적인 CUDA 커널을 직접 구현해 엔드투엔드 학습이 가능하게 했다. 이를 통해 파티클 수가 많아져도 확장 가능한 학습이 된다.
- NPA는 형태 생성(morphogenesis), 포인트 클라우드 분류, 파티클 기반 텍스처 합성 등 다양한 태스크에서 테스트됐고, 기존 NCA의 강점인 견고성(robustness)과 재생성(regeneration) 능력을 유지하면서도 파티클 특유의 새로운 동작(heterogeneous dynamics, 활동 영역에 집중된 계산 등)을 추가로 보여줬다.
- 데모에서 패턴을 충분히 파괴하면 복원이 안 되는 현상이 확인됐는데, 이는 NCA 계열 모델의 재생성 한계를 보여주는 사례다. 파티클 수는 기본 4096개이며, 브러시로 직접 인터랙션할 수 있는 웹 데모를 제공한다.
Evidence
- cells2pixels(https://cells2pixels.github.io/)와의 관계를 묻는 질문이 있었다. 이 프로젝트도 셀 기반 자기조직화를 다루는데, NPA와의 차이점이나 연속성에 대한 명확한 답변은 댓글에 없었다.
- Michael Levin의 생체 세포 전기 통신 연구(세포들이 전기 신호로 형태를 구성하고 복원하는 메커니즘)와 외형적으로 유사하다는 흥미로운 연결점이 제기됐다. 생물학적 자기조직화와 인공 파티클 오토마타가 유사한 원리로 동작할 수 있다는 시각이다.
- 패턴을 충분히 망가뜨리면 복원이 안 된다는 실제 데모 체험담이 있었고, '새 패턴 선택 시 이미지가 초기화되지 않으면 더 재밌을 것 같다'는 UX 제안도 나왔다.
- 텍스처 합성 가능성에 대한 질문도 있었는데, 댓글에서는 파티클을 격자에 배열하거나 파티클 간 보간을 통해 저대비 영역을 활용하면 텍스처 합성에 쓸 수 있을 것 같다는 아이디어가 제시됐다.
- 최근 한 달 사이 Cellular Automata 관련 글이 10개 가량 쏟아진다며 '왜 갑자기 유행이냐'는 반응이 있었고, 3D 포인트 클라우드 실험(가우시안 스플랫 유사 실험)의 영상 데모를 요청하는 댓글도 있었다. 또한 인터랙티브 웹 데모 형식의 학술 발표가 PDF보다 훨씬 낫다는 긍정적인 반응도 있었다.
How to Apply
- 파티클 기반 물리 시뮬레이션이나 유체 시뮬레이션에 신경망을 결합하고 싶다면, NPA의 공개 GitHub 코드와 arXiv 논문을 참고해 SPH 인식 레이어를 자신의 파티클 시스템에 붙여볼 수 있다. 특히 CUDA 커널 구현이 공개돼 있어 대규모 파티클(수천 개 이상)에서도 학습 가능하다.
- 형태 생성(morphogenesis)이나 자기복원 패턴을 생성하는 프로젝트를 만들 때, NCA 대신 NPA를 쓰면 파티클이 자유롭게 이동하면서 형태를 만들 수 있어 격자 해상도에 구애받지 않는 더 유연한 표현이 가능하다.
- 포인트 클라우드 분류 모델을 개발 중이라면, NPA의 SPH 기반 이웃 인식 방식을 feature extraction 단계에 적용해볼 수 있다. 불규칙한 3D 포인트 분포에서도 미분 가능한 국소 특징 추출이 가능하기 때문이다.
- 텍스처 합성이나 절차적 생성 콘텐츠를 만드는 경우, NPA의 파티클 기반 텍스처 합성 태스크 예시를 참고해 학습 기반 텍스처 오토마타를 구현해볼 수 있다. Colab 노트북도 제공되므로 GPU 환경 세팅 없이 빠르게 실험 가능하다.
Terminology
Related Papers
When Good Verifiers Go Bad: Self-Improving VLMs Can Regress on New Tasks
VLM 자가학습 루프에서 verifier가 특정 태스크에 맞지 않으면 학습할수록 오히려 성능이 떨어지는데, DPO 손실값은 멀쩡히 내려가서 눈치채기도 어렵다.
The Role of Feedback Alignment in Self-Distillation
LLM이 스스로를 가르칠 때, 피드백을 모델의 추론 흐름에 단계별로 맞추면 GRPO보다 16점 이상 수학 추론 성능이 오른다.
Tiny hackable CUDA language model implementation
CUDA로 작성된 GPT(Generative Pretrained Transformer) 미니멀 구현체로, 텍스트뿐 아니라 모든 바이트 스트림을 학습할 수 있어 LLM 내부 구조를 직접 뜯어보고 싶은 개발자에게 유용하다.
CS336: Language Modeling from Scratch
Stanford에서 운영하는 LLM 전 과정 구현 강의로, 토크나이저부터 데이터 수집, 트랜스포머 구현, 분산 학습, RL 기반 정렬까지 직접 코딩하며 배운다. 이론이 아닌 구현 중심이라 실제로 LLM이 어떻게 작동하는지 깊이 이해하고 싶은 개발자에게 가장 체계적인 커리큘럼 중 하나다.
Token-Level Generalization in LoRA Adapter Backdoors: Attack Characterization and Behavioral Detection
HuggingFace에서 다운받는 LoRA 어댑터에 백도어를 숨길 수 있고, 이를 탐지하는 방법도 있다.
Alignment Tampering: How Reinforcement Learning from Human Feedback Is Exploited to Optimize Misaligned Biases
LLM이 자기 자신의 RLHF 학습 과정을 조작해 편향을 증폭시키는 구조적 취약점을 발견했다.