AI: 자동 설계

ㅁ 자동 설계

ㅇ 정의:
인공지능 모델의 구조를 사람이 직접 설계하지 않고, 알고리즘이 자동으로 탐색하여 최적의 아키텍처를 찾아내는 기술.

ㅇ 특징:
– 모델 설계 자동화로 인적 자원 절감
– 대규모 연산 자원 필요
– 탐색 공간, 탐색 전략, 성능 예측기로 구성

ㅇ 적합한 경우:
– 새로운 문제 영역에서 최적 구조를 빠르게 찾고자 할 때
– 모델 크기와 정확도 간 균형 조정이 필요할 때

ㅇ 시험 함정:
– NAS는 반드시 강화학습만 사용하는 것이 아님 (진화 알고리즘, 그래디언트 기반 가능)
– 탐색 공간이 고정적이라는 오해 (문제 특성에 맞게 정의 가능)

ㅇ 시험 대비 “패턴 보기” 예시:
O: NAS는 탐색 공간, 탐색 전략, 성능 예측기로 구성된다.
X: NAS는 오직 강화학습 기반으로만 구현된다.

================================

1. Neural Architecture Search (NAS)

ㅇ 정의:
주어진 데이터셋과 목표에 맞춰 신경망 구조를 자동으로 탐색하는 방법론.

ㅇ 특징:
– 탐색 공간(Search Space), 탐색 전략(Search Strategy), 성능 예측기(Performance Estimator)로 구성
– 강화학습, 진화 알고리즘, 그래디언트 기반 등 다양한 접근 가능
– 연산량이 많아 GPU/TPU 자원 소모 큼

ㅇ 적합한 경우:
– 모델 설계 경험이 부족한 경우
– 다양한 구조를 빠르게 실험해야 하는 경우

ㅇ 시험 함정:
– NAS가 항상 기존 수작업 설계보다 우수한 것은 아님
– 무조건 고성능 하드웨어가 필요한 것은 아님 (경량 NAS 기법 존재)

ㅇ 시험 대비 “패턴 보기” 예시:
O: NAS는 강화학습, 진화 알고리즘, 그래디언트 기반 탐색이 모두 가능하다.
X: NAS는 무조건 수작업 설계보다 정확도가 높다.

================================

2. Search Space

ㅇ 정의:
NAS에서 탐색 가능한 모든 신경망 구조의 집합.

ㅇ 특징:
– 노드, 연산, 연결 방식 등으로 정의
– 탐색 공간이 크면 더 다양한 구조 가능하지만 계산량 증가
– 문제 특성에 맞게 설계 가능

ㅇ 적합한 경우:
– 특정 도메인에 맞춘 맞춤형 아키텍처 설계 시
– 연산 제약 조건이 있는 환경에서 최적화할 때

ㅇ 시험 함정:
– 탐색 공간이 클수록 항상 좋은 결과를 주는 것은 아님
– 탐색 공간 설계가 NAS 성능에 큰 영향을 미친다는 점 간과

ㅇ 시험 대비 “패턴 보기” 예시:
O: Search Space는 NAS의 성능과 효율에 직접적인 영향을 준다.
X: Search Space는 NAS에서 자동으로 생성되므로 사람이 설계할 필요가 없다.

================================

3. DARTS

ㅇ 정의:
Differentiable Architecture Search로, 아키텍처 탐색을 연속적인 최적화 문제로 변환하여 그래디언트 기반으로 해결하는 NAS 방법.

ㅇ 특징:
– 이산적인 아키텍처 선택을 연속 공간으로 relax
– 탐색 효율성이 높고 GPU 메모리 사용량 감소
– 기존 NAS 대비 탐색 비용 크게 절감

ㅇ 적합한 경우:
– 빠른 탐색이 필요한 경우
– 제한된 연산 자원에서 NAS를 수행해야 할 때

ㅇ 시험 함정:
– DARTS가 항상 최적 구조를 보장하지 않음
– overfitting 가능성 존재

ㅇ 시험 대비 “패턴 보기” 예시:
O: DARTS는 그래디언트 기반으로 아키텍처를 탐색한다.
X: DARTS는 강화학습 기반 NAS의 한 종류이다.

================================

4. Gradient Descent

ㅇ 정의:
손실 함수를 최소화하기 위해 기울기 정보를 이용해 파라미터를 갱신하는 최적화 알고리즘.

ㅇ 특징:
– 학습률(learning rate)에 민감
– 확률적 경사하강법(SGD), 모멘텀, Adam 등 다양한 변형 존재
– DARTS 등 그래디언트 기반 NAS에서 아키텍처 파라미터 최적화에 사용

ㅇ 적합한 경우:
– 연속적인 최적화 문제
– 대규모 데이터셋 학습

ㅇ 시험 함정:
– Gradient Descent가 항상 전역 최적해를 찾는 것은 아님
– 학습률이 너무 크면 발산, 너무 작으면 수렴 속도가 느림

ㅇ 시험 대비 “패턴 보기” 예시:
O: Gradient Descent는 손실 함수의 기울기를 이용해 파라미터를 갱신한다.
X: Gradient Descent는 항상 전역 최적해를 보장한다.

ㅁ 추가 학습 내용

NAS 탐색 전략 비교
– 강화학습 기반: 에이전트가 보상 함수를 통해 아키텍처를 탐색. 장점은 다양한 구조 탐색 가능, 단점은 탐색 비용이 큼.
– 진화 알고리즘 기반: 개체 집단을 진화시켜 최적 구조를 찾음. 장점은 병렬 탐색 가능, 단점은 세대 수가 많아질수록 비용 증가.
– 그래디언트 기반: 연속 공간으로 변환해 그래디언트로 최적화. 장점은 탐색 속도가 빠름, 단점은 이산 구조 표현이 제한적.

Search Space 설계 시 연산 제약 조건 반영
– CPU, 메모리, Latency 제약을 탐색 과정에 포함하여 불필요한 후보 제거.
– 제약 조건을 보상 함수나 탐색 후보 필터링 규칙에 적용.

DARTS의 연속 공간 변환(relaxation)
– 이산적인 연산 선택을 연속 확률 분포로 변환하여 미분 가능하게 함.
– 소프트맥스 가중치를 통해 연산 조합을 학습하고, 최종적으로 가장 큰 가중치 연산 선택.

Gradient Descent 변형 특성
– Adam: 모멘텀과 적응형 학습률 결합, 빠른 수렴, 초기 학습 안정적.
– RMSProp: 최근 기울기 제곱의 이동평균으로 학습률 조정, 비정상 데이터에도 안정적.

탐색 비용 절감 기법
– Zero-cost NAS: 사전 학습 없이 네트워크 품질 지표를 빠르게 추정하여 후보 평가.
– One-shot NAS: 하나의 거대 네트워크(Supernet)에서 가중치 공유로 여러 아키텍처 성능 추정.
– Proxy Dataset: 원본보다 작은 데이터셋으로 빠르게 탐색 후 최종 구조를 전체 데이터로 재학습.

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*