본문 바로가기
공부/인공지능

📑 Modular Deep Neural Network(MDNN)

by 별똥별💫 2025. 1. 6.

📌 Modualr DNN의 주요 특징

1. 모듈화(Modularity)

  • 각 모듈은 독립적으로 작동, 서로 다른 기능 수행 가능
  • 특정 문제에 맞게 각 모듈을 교체, 재사용, 수정 가능 → 유연성이 높음

2. 병렬 처리(Parallel Processing)

  • 여러 모듈이 병렬로 동시에 작업 가능 → 복잡한 문제를 효율적으로 처리 

3. 분할 정복( Drive-and-Conquer)  전략

  • 문제를 작은 부분 문제로 나누고, 이를 각각의 모듈이 처리
  • 각 모듈은 특정 기능에 전문화(Specialization)될 수 있다.

 

📌 Modular DNN의 구조

 

1. 입력 레이어(Input Layer)

  • 데이터를 각 모듈로 분배하는 역할

2. 여러 모듈(Module)

  • 각 모듈 → 특정한 하위 작업을 수행하는 서브 네트워크
  • 예: 이미지의 특정 부분을 인식 / 텍스트의 특정 의미를 추출하는 모듈

3. 통합 레이어(Integration Layer)

  • 각 모듈의 출력을 합쳐 최종 결과를 도출하는 레이어

📌 Modular DNN의 장점

1. 유연성

  • 특정 모듈을 교체하거나 추가하여 네트워크를 쉽게 확장 가능

2. 전문화

  • 각 모듈이 특정한 서브태스크에 대해 전문화될 수 있음.

3. 재사용성

  • 이미 학습된 모듈을 다른 네트워크에서도 재사용할 수 있음

4. 병렬 처리 가능

  • 여러 모듈이 병렬로 동시에 작업하여 속도를 향상시킬 수 있음

📌 Modular DNN의 단점

1. 복잡성 증가

  • 모듈 간의 통신과 조정이 필요하여 네트워크가 복잡해질 수 있음.

2.  훈련 어려움

  • 모듈들이 개별적으로 훈련되어야 하므로, 전체 네트워크 훈련이 어려울 수 있음.

3. 의존성 문제

  • 모듈 간 의존성이 높을 경우, 한 모듈의 성능 저하가 전체 네트워크 성능에 영향을 줄 수 있음.

📌 Modular DNN의 예시

  • Natural Language Processing(자연어 처리)
    • 모듈 1 : 문장 분류
    • 모듈 2 : 감정 분석
    • 모듈 3 : 개체명 인식(NER)
    • 모듈 4 : 문맥 기반 번역

📌 Modular DNN과 일반 DNN의 차이

특징 일반 DNN Modular DNN
구조 단일 네트워크로 구성 여러 개의 독립 모듈로 구성
유연성 유연성이 낮음 모듈을 추가/교체 가능
병렬 처리 병렬 처리 제한적 모듈 병렬 처리 가능
훈련 방식 전체 네트워크를 한 번에 훈련 각 모듈을 개별적으로 훈련
재사용성 재사용이 어려움 모듈을 다른 네트워크에서 재사용 가능