AI 개념 정리

Berkley·2025년 8월 30일
0

AI 개념 정리

1. AI의 계층 구조

인공지능 (Artificial Intelligence)

  • 정의: 인간의 지능을 모방하는 모든 기술
  • 범위: 가장 포괄적인 개념으로 ML과 DL을 모두 포함

머신러닝 (Machine Learning)

  • 정의: 데이터 기반 방법론 (Data-Driven Methods)
  • 특징: 명시적 프로그래밍 없이 데이터로부터 학습
  • AI의 부분집합: AI ⊃ ML

딥러닝 (Deep Learning)

  • 정의: 데이터 기반 심층 학습 방법론 (Data-Driven Deep Methods)
  • 특징: 다층 신경망을 사용한 학습
  • ML의 부분집합: ML ⊃ DL

2. 자동화의 진화

1차 혁명: 육체 노동의 자동화

  • 산업혁명 시대의 기계화
  • 물리적 작업의 기계 대체

2차 혁명: 정신 노동의 자동화

  • 컴퓨터와 소프트웨어의 등장
  • 계산과 정보처리 자동화

3차 혁명: 자동화의 자동화

  • 머신러닝 혁명: 프로그래밍 자체를 자동화
  • 데이터로부터 규칙을 자동으로 학습

3. 머신러닝 분류 체계

3.1 지도학습 (Supervised Learning)

특징: 정답이 있는 데이터로 학습

회귀 (Regression)

  • 목적: 연속적인 값 예측
  • 예시: 주택 가격 예측, 주가 예측
  • 출력: 실수값

분류 (Classification)

  • 목적: 카테고리 예측
  • 예시: 이메일 스팸 분류, 이미지 인식
  • 출력: 이산적 클래스

3.2 비지도학습 (Unsupervised Learning)

특징: 정답 없이 데이터의 패턴 발견

표현 학습 (Representation Learning)

  • 목적: 데이터의 의미있는 특징 추출
  • 방법: 차원 축소, 특징 추출
  • 예시: PCA, Autoencoder

클러스터링 (Clustering)

  • 목적: 유사한 데이터끼리 그룹화
  • 방법: K-means, DBSCAN, 계층적 클러스터링
  • 예시: 고객 세분화, 문서 그룹화

3.3 강화학습 (Reinforcement Learning)

특징: 시행착오를 통한 학습

  • 핵심 요소:
    • Agent: 학습 주체
    • Environment: 상호작용 환경
    • State: 현재 상태
    • Action: 행동
    • Reward: 보상
  • 예시: 게임 AI, 로봇 제어, 자율주행

4. 딥러닝 아키텍처

4.1 완전 연결 신경망 (Fully-Connected Networks)

  • 구조: 모든 뉴런이 연결된 다층 퍼셉트론 (MLP)
  • 특징: 범용적이지만 파라미터가 많음
  • 용도: 테이블 데이터, 일반적인 회귀/분류

4.2 합성곱 신경망 (CNN)

  • 구조: Convolution + Pooling 레이어
  • 특징:
    • 지역적 패턴 감지
    • 파라미터 공유로 효율성 증가
    • 이동 불변성 (Translation Invariance)
  • 용도: 이미지 인식, 컴퓨터 비전

4.3 순환 신경망 (RNN)

  • 구조: 순환 연결로 시퀀스 처리
  • 변형:
    • LSTM: 장기 의존성 학습
    • GRU: 간소화된 LSTM
  • 용도: 시계열 예측, 자연어 처리

4.4 트랜스포머 (Transformer)

  • 구조: Self-Attention 메커니즘
  • 특징:
    • 병렬 처리 가능
    • 장거리 의존성 포착
    • 위치 인코딩 사용
  • 모델 예시:
    • GPT 시리즈: 자동회귀 언어 모델
    • BERT: 양방향 인코딩
    • Vision Transformer: 이미지 처리

5. 핵심 학습 개념

5.1 손실 함수 (Loss Function)

  • 역할: 예측과 정답의 차이 측정
  • 종류:
    • MSE: 회귀 문제
    • Cross-Entropy: 분류 문제
    • Custom Loss: 특수 목적

5.2 최적화 (Optimization)

  • 목적: 손실 최소화
  • 방법:
    • Gradient Descent: 기본 경사하강법
    • SGD: 확률적 경사하강법
    • Adam: 적응적 학습률
    • RMSprop: 학습률 조정

5.3 정규화 (Regularization)

  • 목적: 과적합 방지
  • 기법:
    • L1/L2 정규화: 가중치 패널티
    • Dropout: 랜덤 뉴런 비활성화
    • Batch Normalization: 배치 정규화
    • Early Stopping: 조기 종료

5.4 과적합 vs 과소적합

  • 과적합 (Overfitting):

    • 훈련 데이터에 과도하게 적응
    • 일반화 성능 저하
    • 해결: 정규화, 더 많은 데이터
  • 과소적합 (Underfitting):

    • 모델이 너무 단순함
    • 패턴 학습 실패
    • 해결: 모델 복잡도 증가

6. 고급 주제

6.1 불확실성 정량화 (Uncertainty Quantification)

  • 목적: 예측의 신뢰도 측정
  • 방법:
    • Bayesian Neural Networks
    • Monte Carlo Dropout
    • Ensemble Methods

6.2 메타러닝 (Meta-Learning)

  • 개념: 학습하는 방법을 학습
  • 접근법:
    • Few-shot Learning: 적은 데이터로 학습
    • Transfer Learning: 지식 전이
    • Model-Agnostic Meta-Learning (MAML)

6.3 생성 모델 (Generative Models)

  • VAE (Variational Autoencoder):

    • 확률적 잠재 공간
    • 재구성과 생성
  • GAN (Generative Adversarial Networks):

    • Generator vs Discriminator
    • 적대적 학습
  • Diffusion Models:

    • 노이즈 추가/제거 과정
    • 고품질 이미지 생성

6.4 설명가능한 AI (XAI)

  • 목적: 모델의 결정 과정 이해
  • 방법:
    • LIME: 지역적 해석
    • SHAP: Shapley 값 기반
    • Attention Visualization
    • Feature Importance

7. 학습 전략

7.1 데이터 준비

  1. 수집: 충분한 양과 품질의 데이터
  2. 전처리: 정규화, 결측치 처리
  3. 증강: 데이터 다양성 증가
  4. 분할: Train/Validation/Test

7.2 모델 선택

  1. 문제 유형 파악: 회귀/분류/생성
  2. 데이터 특성 고려: 이미지/텍스트/시계열
  3. 복잡도 조절: 단순→복잡 점진적 접근

7.3 평가와 개선

  1. 메트릭 선택: 정확도, F1-score, AUC
  2. 검증 전략: Cross-validation
  3. 하이퍼파라미터 튜닝: Grid/Random Search
  4. 앙상블: 여러 모델 결합

8. 실무 적용 체크리스트

문제 정의

  • 해결하려는 문제가 명확한가?
  • ML이 적합한 해결책인가?
  • 성공 기준이 정의되었는가?

데이터 준비

  • 충분한 데이터가 있는가?
  • 데이터 품질이 검증되었는가?
  • 레이블이 정확한가?

모델 개발

  • 베이스라인 모델이 있는가?
  • 적절한 평가 메트릭을 사용하는가?
  • 과적합을 모니터링하는가?

배포와 운영

  • 모델 성능을 지속 모니터링하는가?
  • 데이터 드리프트를 감지하는가?
  • 재학습 전략이 있는가?

9. 주요 용어 정리

  • Epoch: 전체 데이터셋을 한 번 학습
  • Batch: 한 번에 처리하는 데이터 묶음
  • Learning Rate: 가중치 업데이트 크기
  • Gradient: 손실 함수의 기울기
  • Backpropagation: 오차 역전파
  • Feature: 입력 데이터의 특성
  • Label: 정답 데이터
  • Inference: 학습된 모델로 예측
  • Fine-tuning: 사전학습 모델 미세조정
  • Embedding: 고차원 데이터의 저차원 표현
profile
성장하는 개발자 Berkley 입니다.

0개의 댓글