Back to Blog

Blog Post

[3 - 2 FNN/ANFIS] 신경망에 '직관'을 이식하다: 학습하는 퍼지 시스템

Published on May 17, 2026

안녕하세요, MiTornAve입니다.

지난 시간 우리는 압도적인 '속도'를 무기로 국소적인 영역에서 민감하게 반응하는 RBFNN에 대해 알아보았습니다. 수 밀리초 단위로 변하는 데이터를 즉각적으로 처리해야 하는 제어 시스템의 세계에서, RBFNN의 단순하고 빠른 구조는 훌륭한 해결책이었습니다.

하지만 현실 세계의 문제들이 항상 칼로 물 베듯 정확한 숫자와 공식으로만 떨어지는 것은 아닙니다. "방이 좀 더운 것 같은데, 에어컨 온도를 적당히 낮춰줄래?" 인간에게는 너무나 자연스러운 이 문장이, 0과 1밖에 모르는 컴퓨터에게는 심각한 오류를 일으키는 외계어와 같습니다. '좀', '적당히'라는 기준은 대체 숫자로 얼마일까요?

지난 시간 우리는 이 차가운 이분법의 세계를 깨뜨리고, 인간의 '모호함'과 '직관'을 이식한 퍼지 논리(Fuzzy Logic)의 강력한 무기를 확인했습니다. 인간의 지식을 IF-THEN 규칙으로 구조화하여 복잡한 비선형 문제들을 유연하게 해결해 냈죠.

하지만 지난 시간의 마지막에 던졌던 의문을 기억하시나요? 아무리 인간의 직관을 닮은 퍼지(F)가 훌륭하더라도, 사람이 일일이 멤버십 함수를 튜닝하고 수천 개의 규칙을 손으로 써야 하는 '전문가 의존성'과 '규칙의 폭발'이라는 거대한 벽은 공학자들을 다시 고뇌에 빠뜨렸습니다.

반면, 데이터만 주면 알아서 척척 학습하는 인공신경망(T)은 무척 똑똑하지만, 정작 내부를 들여다보면 왜 그런 결론을 내렸는지 도무지 알 수 없는 '블랙박스'라는 치명적인 약점을 가지고 있었죠.

"이해력과 직관은 만점인데 스스로 변하지 못하는 F(퍼지),
데이터 학습 능력이 있는 T(신경망).
이 둘을 쌈@뽕하게 합칠수는 없나?"

이 발칙하고도 완벽한 공학적 결합에서 탄생한 기술이 바로 FNN(Fuzzy Neural Network, 퍼지 신경망)입니다. 그리고 오늘은 이 뉴로-퍼지 시스템의 가장 대표적인 주자이자, 스스로 오차를 줄이며 진화하는 지능형 제어의 정점, ANFIS(Adaptive Neuro-Fuzzy Inference System)의 세계를 파헤쳐 보겠습니다.

1. 개념의 결합: FNN이란 무엇인가?

MBTI 극과 극인 두 사람이 만나 서로의 단점을 완벽하게 채워주는 상상, 해보셨나요? 공학의 세계에서도 이와 똑같은 일이 일어났습니다. 바로 인간의 언어적 직관을 가진 퍼지(F)와 차가운 데이터 분석 능력을 가진 인공신경망(T)의 결합입니다. 이 결합이 왜 필요했고, 어떻게 가능한지 단계별로 파헤쳐 보겠습니다.

1.1 퍼지와 신경망의 서로 다른 빈자리

우선 전통적인 퍼지 시스템은 인간의 지식을 "IF (온도가 높으면) THEN (에어컨을 강하게 틀어라)"와 같은 명확한 규칙으로 표현할 수 있어 속내가 훤히 들여다보입니다. 즉, '설명 가능성'이 100%입니다. 하지만 치명적인 약점이 있었죠. 환경이 바뀌면 사람이 직접 가우시안 멤버십 함수의 중심값(c)이나 너비(\sigma)를 손으로 일일이 수정해야 했습니다. 스스로 발전할 줄 모르는 정적인 시스템이었던 셈입니다.

반면 인공신경망(ANN)은 데이터만 던져주면 역전파(Backpropagation) 알고리즘을 통해 수만 개의 파라미터를 알아서 튜닝하며 최적의 정답을 찾아냅니다. 학습 능력은 타의 추종을 불허합니다. 하지만 수많은 레이어와 가중치(w) 속에 정답이 꽁꽁 숨겨져 있어, 기계가 '왜' 그런 판단을 내렸는지 인간이 도무지 해석할 수 없는 블랙박스(Black-box) 구조라는 한계가 있었습니다.

1.2 FNN(퍼지 신경망): 공학적 결합의 시작

이 두 시스템의 장점만 취해 결합한 것이 바로 FNN(Fuzzy Neural Network, 퍼지 신경망)입니다.

FNN의 본질은 간단합니다. 퍼지 추론 시스템(FIS)의 수학적 메커니즘을 인공신경망의 계층적 구조(Layer)로 그대로 시각화한 것입니다.

퍼지 시스템의 핵심이었던 '멤버십 함수'와 'IF-THEN 규칙'들을 신경망의 노드(Node)와 가중치(Weight)로 매핑한 것이죠.

이렇게 구조를 짜면 기막힌 시너지가 발생합니다.

  • 퍼지 시스템에 부여된 '학습 능력': 사람이 손으로 튜닝하던 멤버십 함수의 파라미터들을, 신경망의 역전파 알고리즘이 오차를 계산해가며 실시간으로 최적화합니다.

  • 인공신경망에 부여된 '설명 가능성': 인공신경망의 고질적인 문제였던 '블랙박스'가 화이트박스로 탈바꿈합니다. 학습이 끝난 후 FNN 내부의 가중치를 열어보면, 그것이 곧 인간이 읽을 수 있는 퍼지 규칙과 멤버십 함수의 형태로 고스란히 드러나기 때문입니다.

2. 핵심 구조: ANFIS의 5단계 레이어 파헤치기

FNN이라는 거대한 개념을 현실에서 가장 완벽하게 구현해낸 주인공이 바로 ANFIS(Adaptive Neuro-Fuzzy Inference System, 적응형 뉴로-퍼지 추론 시스템)입니다.

ANFIS는 전 편에서 배운 '언어적 변수', '멤버십 함수', 'IF-THEN 규칙'이라는 퍼지의 내장 기관들을 인공신경망의 5개 레이어(Layer)로 완벽하게 시각화하여 배치했습니다. 이해를 돕기 위해 입력 변수가 2개(x, y)이고, 널리 쓰이는 Sugeno(스게노) 퍼지 모델 기반의 규칙이 2개인 가장 고전적인 ANFIS 구조를 기준으로 각 레이어가 하는 일을 파헤쳐 보겠습니다.

참고로 우리가 다룰 규칙 2개는 다음과 같습니다.

  • Rule 1: IF x is A_1 and y is B_1, THEN f_1 = p_1 x + q_1 y + r_1

  • Rule 2: IF x is A_2 and y is B_2, THEN f_2 = p_2 x + q_2 y + r_2

2.1 Layer 1: 퍼지화 계층 (Fuzzification Layer)

첫 번째 레이어는 외부에서 들어온 칼 같은 실제 데이터(Crisp Input, 예: 현재 온도 x)를 퍼지 집합의 소속도로 변환하는 통역사 역할을 합니다. 이 레이어의 모든 노드는 파라미터에 따라 모양이 변하는 적응형 노드(Adaptive Node)입니다.

\nu_{1,i} = \mu_{A_i}(x) \quad (i = 1, 2)

만약 전 편에서 배운 가우시안 멤버십 함수를 사용한다면 수식은 다음과 같이 표현됩니다.

\mu_{A_i}(x) = \exp\left(-\frac{(x - c_i)^2}{2\sigma_i^2}\right)

  • 신경망 관점의 해석: 이 레이어의 노드가 가진 파라미터(c_i, \sigma_i)를 전제부 파라미터(Premise Parameters)라고 부릅니다. 데이터가 입력되면서 역전파 알고리즘에 의해 최적의 중심점(c)과 너비(\sigma)로 끊임없이 형태가 정교하게 다듬어지는 가중치(w) 역할을 합니다.

2.2 Layer 2: 규칙 계층 (Rule Layer)

두 번째 레이어는 입력된 조건들이 결합하여 하나의 규칙을 완성하는 단계입니다. 고정된 원형 노드로 구성되어 있으며, 들어오는 입력 신호들을 모두 곱하는(\Pi) 연산을 수행합니다.

\nu_{2,i} = w_i = \mu_{A_i}(x) \cdot \mu_{B_i}(y) \quad (i = 1, 2)

  • 의미: 전 편에서 "온도가 80% 정도 덥고, 습도가 50% 정도 높다"라고 했을 때 두 모호한 상황의 가중치를 곱했던 것을 기억하시나요? 이 곱해진 결과값(w_i)을 각 규칙의 발화 강도(Firing Strength)라고 부릅니다. 해당 규칙이 현재 상황에 얼마나 강하게 들어맞는지를 수치화한 것입니다.

2.3 Layer 3: 정규화 계층 (Normalization Layer)

세 번째 레이어 역시 고정된 원형 노드(N)로, 각 규칙의 발화 강도가 '전체 규칙 중에서 어느 정도의 비중을 차지하는지' 비율을 계산합니다. 즉, 밥그릇의 크기를 맞춰주는 정규화 단계입니다.

\nu_{3,i} = \bar{w}_i = \frac{w_i}{w_1 + w_2} \quad (i = 1, 2)

  • 의미: 전체 발화 강도의 합으로 자신의 발화 강도를 나눔으로써, 모든 규칙의 영향력 총합이 항상 1이 되도록 조율합니다. 특정 규칙이 혼자 독주하거나 시스템을 마비시키는 것을 방지하는 브레이크 역할을 합니다.

2.4 Layer 4: 결론부 계층 (Defuzzification Layer)

네 번째 레이어는 다시 파라미터 수정이 가능한 적응형 노드로 돌아옵니다. 여기서는 정규화된 발화 강도(\bar{w}_i)와 해당 규칙의 결론부 함수(f_i)를 곱하는 연산을 수행합니다.

\nu_{4,i} = \bar{w}_i f_i = \bar{w}_i (p_i x + q_i y + r_i) \quad (i = 1, 2)

  • 신경망 관점의 해석: 수식에 등장하는 p_i, q_i, r_i를 결론부 파라미터(Consequent Parameters)라고 부릅니다. 일반적인 신경망의 출력층 직전 가중치와 정확히 일치하는 개념으로, 규칙이 내린 최종 결론의 정밀도를 데이터를 통해 학습하며 칼같이 조정해 나갑니다.

2.5 Layer 5: 합산 계층 (Output Summation Layer)

마지막 다섯 번째 레이어는 단 하나의 고정 노드(\Sigma)로 이루어져 있습니다. 앞선 레이어에서 넘어온 규칙별 결론들을 모두 더하여, 마침내 컴퓨터와 외부 기계가 이해할 수 있는 단 하나의 명확한 제어값(Crisp Output)을 출력합니다.

\nu_{5,1} = \text{Overall Output} = \sum_{i} \bar{w}_i f_i = \frac{\sum_{i} w_i f_i}{\sum_{i} w_i}

"ANFIS는 다층 피드포워드 신경망 구조를 통해 퍼지 추론 메커니즘을 완벽히 모사하며, 전제부의 비선형 파라미터와 결론부의 선형 파라미터가 유기적으로 연결된 선형-비선형 결합 모델이다."

결국 수많은 규칙과 멤버십 함수들이 복잡하게 뒤엉켜 있는 것처럼 보였던 퍼지 시스템이, ANFIS라는 잘 짜인 5단계 신경망 컨베이어 벨트를 통과하면서 물 흐르듯 명확한 수학적 연산으로 정리되는 것입니다.

3. 하이브리드 학습 (Hybrid Learning)

ANFIS가 제어 공학뿐만 아니라
다양한 학술 연구와 산업 현장에서 사랑받는 가장 큰 이유는
"압도적으로 빠른 학습 속도"에 있습니다.

사실, 일반적인 인공신경망처럼 단순히 모든 오차를 역전파(Backpropagation)로만 해결하려고 하면, 파라미터가 조금만 많아져도 계산 시간이 기하급수적으로 늘어납니다.

ANFIS는 이 문제를 해결하기 위해, 하이브리드 학습법(Hybrid Learning Algorithm)을 사용합니다. 5개의 레이어를 전방향과 역방향으로 나누어 최적의 수학적 도구를 각각 다르게 적용하는 방식입니다.

3.1 전방향 통과 (Forward Pass): 결론부의 초고속 선형 계산

입력 데이터가 Layer 1에서 Layer 4까지 앞으로 쭉 흘러갈 때, ANFIS는 앞단인 Layer 1의 전제부 파라미터(c_i, \sigma_i)를 일단 고정된 상수로 취급합니다.

이렇게 앞단을 고정해 버리면, 놀랍게도 최종 출력식은 Layer 4에 있던 결론부 파라미터에 대한 선형 방정식(Linear Equation)으로 단순화됩니다.

\text{Output} = \bar{w}_1 (p_1 x + q_1 y + r_1) + \bar{w}_2 (p_2 x + q_2 y + r_2)

선형 변수들을 구하는 가장 확실하고 빠른 방법이 무엇일까요? 바로 선형대수학의 치트키인 최소자승법(LSE, Least Squares Estimator)입니다. (다른 방법도 많이 있긴 하다) 데이터들을 행렬로 묶어 의사역행렬(Pseudo-inverse)을 구하면, 경사하강법처럼 수백 번 반복할 필요 없이 단 한 번의 행렬 계산(One-shot)으로 오차를 최소화하는 최적의 결론부 파라미터를 번개처럼 찾아냅니다.

3.2 역방향 통과 (Backward Pass): 전제부의 정밀한 미세 조정

방금 구한 최적의 결론부 파라미터를 고정한 상태에서, 이제 최종 출력값과 실제 정답(Target) 사이의 오차(Error)를 계산합니다. 그리고 이 오차를 뒤로 보내는 역전파(Backpropagation) 과정을 시작합니다.

이때 우리가 다듬어야 할 파라미터는 Layer 1에 있는 멤버십 함수의 모양을 결정하는 전제부 파라미터(c_i, \sigma_i)입니다. 이 파라미터들은 가우시안 함수 내부에 갇혀 있는 비선형(Non-linear) 변수들이기 때문에, 한 번에 계산할 수 없습니다.

따라서 여기서는 우리가 잘 아는 경사하강법(Gradient Descent)을 사용합니다. 오차의 기울기(Gradient)를 타고 내려가면서 멤버십 함수의 중심값과 너비를 조금씩 깎고 다듬어 나가는 것이죠.

\theta_{\text{premise}}(t+1) = \theta_{\text{premise}}(t) - \eta \frac{\partial E}{\partial \theta_{\text{premise}}}

"전방향의 최소자승법(LSE)과 역방향의 경사하강법(GD)을 융합한 하이브리드 학습은, 순수 경사하강법만을 사용하는 일반 신경망에 비해 수렴 속도를 수십 배 이상 향상시키며 국소 최적해(Local Minima)에 빠질 위험을 크게 낮춘다."

과거의 퍼지 시스템이었다면 인간 전문가가 수개월 동안 시행착오를 겪으며 미세 조정해야 했을 멤버십 함수의 경계선과 출력 규칙들을, ANFIS는 이 이성적인 '하이브리드 톱니바퀴'를 돌려 단 몇 초 만에 완벽하게 찾아내는 것입니다.

4. FNN/ANFIS의 진정한 가치: "설명 가능한 AI (XAI)"

현대 딥러닝(Deep Learning) 기술이 아무리 거대해지고 똑똑해졌다고 한들, 의료계, 금융권, 그리고 정밀 제어 시스템을 다루는 대기업 공장 등에서 선뜻 도입하기를 꺼리는 결정적인 이유가 있습니다. 바로 내부를 들여다볼 수 없는 '블랙박스(Black-box)' 구조이기 때문입니다.

예를 들어, 수십 개의 레이어를 가진 딥러닝 모델이 자율주행 차량의 브레이크를 갑자기 작동시켰다고 가정해 봅시다. 사고는 면했지만, 개발자가 "왜 하필 그 타이밍에 브레이크를 밟았는가?"라고 물었을 때, 딥러닝은 수백만 개의 가중치(w) 배열만 보여줄 뿐 언어적으로 설명해 주지 못합니다. 안전과 책임이 직결된 분야에서 이것은 치명적인 약점입니다.

하지만 ANFIS는 다릅니다. 데이터 학습이 완벽하게 끝난 후, 모델의 내부 파라미터를 열어보면 놀라운 일이 벌어집니다.

  • 가시화되는 소속함수: 학습 전에는 임의로 잡아두었던 가우시안 함수의 중심점(c)과 너비(\sigma)가 데이터의 특성에 맞춰 이동한 것을 시각적으로 확인할 수 있습니다. "아, 기계가 데이터를 보더니 '덥다'라는 기준의 중심을 31°C에서 29.3°C로 스스로 낮췄구나!" 하고 인간이 직관적으로 이해할 수 있죠.

  • 추출 가능한 IF-THEN 규칙: 가중치 행렬을 사람이 읽을 수 있는 언어적 규칙(Linguistic Rules)으로 그대로 번역해 낼 수 있습니다. "현재 시스템은 Rule 3: 만약 온도가 매우 높고 습도가 보통이면 출력을 85%로 하라는 규칙을 92%의 가중치로 신뢰하여 동작했다"라는 명확한 근거를 제시합니다.

"뉴로-퍼지 시스템은 인공신경망 수준의 비선형 매핑 능력을 확보함과 동시에, 입력과 출력 간의 인과관계를 퍼지 규칙의 형태로 명시적으로 표출할 수 있다는 점에서 설명 가능한 인공지능(XAI)의 초기 모델로서 강력한 실무적 이점을 가진다."

결국 ANFIS는 성능을 위해 해석 가능성을 포기하거나, 해석 가능성을 위해 성능을 타협하던 공학자들에게 '강력한 성능(T)'과 '투명한 설명 능력(F)'을 동시에 쥐여준 좋은 솔루션인 셈입니다.


우리는 총 2회에 걸쳐 인간의 모호한 감각을 수학으로 바꾼 퍼지 논리, 그리고 여기에 신경망의 역전파와 최소자승법을 결합해 스스로 진화하게 만든 ANFIS(FNN)까지 쉴 새 없이 달려왔습니다.

이 기술들은 인간의 머릿속에만 있던 '숙련자의 노하우'와 컴퓨터가 좋아하는 '센서 데이터'가 결합할 때 얼마나 아름다운 시너지가 발생하는지 완벽하게 증명해 냈습니다.

하지만 이렇게 똑똑하고 정교한 지능형 시스템을 실제 산업 현장에 구축하려고 할 때, 공학자들이 가장 먼저 마주하는 또 다른 복병이 있습니다. 바로 센서들이 사방에서 쏟아내는 '데이터의 홍수'입니다.

압력, 온도, 진동, 유량 등
수십 가지의 변수가 한꺼번에 밀려 들어오면,
아무리 강력한 ANFIS라도
'규칙의 폭발'과 계산 과부하를 피하기 어렵습니다.
심지어 그 데이터들 속에는 시스템을 방해하는
수많은 '노이즈(Noise)'와
서로 중복되는 쓸모없는 정보들이 뒤섞여 있죠.

과연 이 수많은 변수 속에서 겉치레는 걷어내고, 시스템을 제어하는 데 꼭 필요한 '알짜배기 진짜 정보'만 골라내려면 어떻게 해야 할까요?

다음 시간에는 데이터의 차원을 효율적으로 압축하여 시스템의 핵심 뼈대만 남기는 차원 축소와 최적화의 기술, 데이터 홍수 속에서 '진짜'만 골라내는 차원 축소 기술 편으로 찾아오겠습니다.

Written by MiTornAve

Previous / Next

Previous: [3 - 1 Fuzzy Logic] "적당히"를 이해하는 AI: 멤버십 함수와 언어적 변수