딥러닝 개론
딥러닝은 인공 신경망을 사용하여 원시 데이터에서 복잡하고 계층적인 특성 표현을 학습하는 머신러닝의 하위 분야입니다. 이 과정에서는 기본 원리, 기반 수학, 최적화 개념(경사하강법, 역전파), 네트워크 모듈(선형, 컨볼루션, 풀링 레이어) 및 일반적인 아키텍처(CNN, RNN)를 다룹니다. 적용 사례로는 컴퓨터 비전, 자연어 처리, 강화 학습이 포함됩니다. 학생들은 구현을 위해 PyTorch 딥러닝 라이브러리를 사용하며, 실제 사례에 대한 최종 프로젝트를 완료하게 됩니다.
강좌 개요
📚 콘텐츠 요약
딥러닝은 인공 신경망을 사용하여 원시 데이터에서 복잡하고 계층적인 특징 표현을 학습하는 데 초점을 맞춘 머신러닝의 하위 분야입니다. 이 과정에서는 기본 원리, 기초 수학, 최적화 개념(경사 하강법, 역전파), 네트워크 모듈(선형, 합성곱, 풀링 계층) 및 일반적인 아키텍처(CNN, RNN)를 다룹니다. 컴퓨터 비전, 자연어 처리, 강화 학습 등 다양한 응용 사례를 제시하며, 학생들은 구현에 파이토치 딥러닝 라이브러리를 사용하고 실제 세계 문제 해결을 위한 최종 프로젝트를 수행하게 됩니다.
핵심 목표 간략 요약: 딥러닝 이론을 숙지하고 파이토치를 활용해 모델을 구현하며, 전문적인 아키텍처(CNN, RNN, 트랜스포머)를 이해하고 이를 컴퓨터 비전, 자연어 처리, 순차적 의사결정에 적용한다.
🎯 학습 목표
- 딥 신경망 학습에 필요한 수학적 기초와 주요 최적화 기술(경사 하강법, 역전파)을 설명할 수 있다.
- 파이토치 딥러닝 프레임워크를 사용해 CUDA 가속과 효율적인 데이터 처리 기법을 활용해 현대적인 네트워크 아키텍처를 효과적으로 구현, 학습 및 디버깅할 수 있다.
- 이미지 데이터에 적합한 합성곱 신경망(CNN)과 시계열 종속성에 적합한 트랜스포머 모델과 같은 전문 아키텍처를 설계하고 분석할 수 있다.
- 컴퓨터 비전, 자연어 처리, 강화 학습 등 핵심 응용 분야에서 실질적인 문제 해결을 위해 딥러닝 기술을 적용할 수 있다.
- 모델의 견고성, 해석 가능성, 윤리적 공정성을 평가하고, 다양한 고급 패러다임(예: 생성 모델, 반감독 학습)의 장점을 비교할 수 있다.
🔹 수업 1: 딥러닝 기초 및 최적화
개요: 이 기초 수업은 딥러닝의 핵심 구성 요소를 소개합니다. 먼저 선형 분류기, 특히 소프트맥스 함수와 교차 엔트로피 손실을 사용한 오류 측정 방식을 살펴봅니다. 이를 바탕으로 기본 전방향 신경망(다층 퍼셉트론)의 구조를 정의하며, 가중치, 편향, 비선형 활성화 함수(예: ReLU)의 역할을 설명합니다. 주된 초점은 이러한 고도로 매개변수화된 모델을 학습하기 위한 최적화 과정으로 옮겨집니다. 경사 하강법(GD)을 중심 최적화 알고리즘으로 도입하고, 확률적 경사 하강법(SGD)과 미니배치 경사 하강법과의 계산 요구량 차이를 비교합니다. 특히 수업의 핵심은 계산 그래프를 통해 미적분의 연쇄 법칙을 효율적으로 적용하여 모든 계층의 가중치 업데이트에 필요한 기울기를 계산하는 역전파 알고리즘의 상세 설명입니다. 학습 결과:
- 기본 전방향 신경망의 구조를 정의하고, 비선형 활성화 함수(예: ReLU)의 필요성을 설명할 수 있다.
- 분류 손실 함수(예: 소프트맥스, 교차 엔트로피)를 설정하고, 모델 오류를 어떻게 측정하는지 이해할 수 있다.
- 경사 하강법(GD)의 작동 원리를 설명하고, 그 변형들(SGD, 미니배치 GD)의 수렴 성능과 계산 효율성 차이를 구분할 수 있다.
- 연쇄 법칙을 사용해 역전파 알고리즘을 유도하고, 계산 그래프를 통해 기울기 계산을 구현할 수 있다.
- 신경망 최적화를 이해하기 위한 주요 수학적 전제(선형 대수학, 다변수 미적분학)를 식별할 수 있다.
🔹 수업 2: 실용적 구현 및 딥러닝 도구
개요: 이 수업은 이론적 개념에서 생산 준비 완료된 파이토치 기반 딥러닝 구현으로 전환됩니다. 파이토치의 핵심 라이브러리인 파이토치의 기본 개념을 시작으로, 텐서 구조, CUDA를 통한 GPU 가속, 동적 계산 그래프를 통한 자동 미분을 설명합니다. 중요한 초점은 효율적인 데이터 처리입니다. 파이토치의 데이터셋 클래스를 통한 데이터 추상화와 대규모 데이터셋 관리, 배치 처리, 섞기, 다중 프로세스 데이터 로딩을 가능하게 하는 데이터로더의 소개를 포함합니다. 마지막으로, 학습 확장에 대한 실용적인 고려사항을 다루며, 메모리 관리 최적화, 기울기 누적 기법, 단일 GPU 용량을 초과하는 모델 작업에 필수적인 분산 학습(예: 데이터 병렬화)의 핵심 개념을 소개합니다. 학습 결과:
- 파이토치 텐서를 사용해 핵심 딥러닝 연산을 구현하고, 자동 미분 기능을 활용해 기울기 계산을 할 수 있다.
- 파이토치 데이터셋과 데이터로더 추상화를 사용해 대규모, 배치 처리 가능한 데이터 입력을 효율적으로 처리하는 데이터 파이프라인을 설계하고 구현할 수 있다.
- CUDA 지원 GPU에서 모델과 데이터를 구성하여 학습 및 추론 과정을 크게 가속화할 수 있다.
- 기울기 누적과 같은 메모리 최적화 기술의 역할을 설명하고, 확장성을 위한 분산 학습의 개념적 기초를 이해할 수 있다.
🔹 수업 3: 합성곱 네트워크: 계층과 아키텍처
개요: 이 수업에서는 현대 컴퓨터 비전의 핵심인 합성곱 신경망(CNN)을 소개합니다. 기초 모듈인 합성곱 계층과 풀링 계층을 깊이 탐구합니다. 합성곱 계층의 경우, 커널(필터), 스트라이드, 패딩의 역할을 포함한 연산 수학을 다루며, 고차원 이미지 데이터에 대해 효율적인 모델링을 가능하게 하는 국부적 연결성과 매개변수 공유 개념을 논의합니다. 마스크 풀링과 평균 풀링을 구분하고, 특징맵 축소 및 번역 불변성 유도라는 중요 역할을 설명합니다. 마지막으로 이러한 계층들을 완전한 기본 CNN 아키텍처로 통합하며, 원시 픽셀 데이터에서 계층적 특징 추출 스택을 거쳐 최종 분류를 위한 완전 연결 계층으로 이어지는 일반적인 순차적 전이를 보여주며, 레넷-5와 같은 고전 모델을 예시로 제시합니다. 학습 결과:
- 2차원 합성곱의 수학적 연산을 설명하고, 필터 크기, 스트라이드, 패딩이 출력 특징맵 차원에 미치는 영향을 이해할 수 있다.
- 국부적 연결성과 매개변수 공유의 개념을 설명하고, 이들이 이미지 데이터에 대해 완전 연결 네트워크보다 효율적이고 효과적인 이유를 설명할 수 있다.
- 마스크 풀링과 평균 풀링의 차이를 구분하고, 풀링 계층의 주요 목적(특징맵 축소, 번역 불변성 달성)을 설명할 수 있다.
- 교대로 배열된 합성곱, 활성화(ReLU), 풀링, 완전 연결 계층으로 구성된 기본 순차적 CNN 아키텍처를 설계하고 분석할 수 있다.
🔹 수업 4: 컴퓨터 비전: 고급 모델과 해석 가능성
개요: 이 수업은 아르케넷과 같은 기초적인 CNN을 넘어, 최첨단 컴퓨터 비전 작업에 사용되는 정교하고 영향력 있는 딥러닝 아키텍처를 탐색합니다. 주요 모델들의 설계 원리와 혁신을 분석하며, VGG 네트워크의 효율적인 깊이, 인셉션(구글넷)의 다스케일 특징 집계, 그리고 극도로 깊은 네트워크에서의 소멸 기울기 문제를 해결하기 위한 잔차 연결의 중요성을 다룹니다. 수업 후반부는 모델 해석 가능성과 설명 가능한 인공지능(XAI)이라는 중요한 주제에 집중합니다. 특징 맵 활성화를 검사하는 시각화 기술과 기울기 기반 지역화 방법을 배우게 됩니다. 특히, 클래스 활성화 맵(CAM)과 그 기울기 기반 일반화인 그레이드-CAM의 메커니즘과 구현 방법을 다루며, 입력 이미지의 주목적 영역을 강조함으로써 네트워크 결정을 시각적으로 설명하는 방법을 설명합니다. 학습 결과:
- VGG, 구글넷, 리즈넷 모델들의 핵심 아키텍처 혁신(예: 잔차 연결, 인셉션 모듈)을 비교하고 구분할 수 있다.
- 네트워크 깊이를 늘릴 때의 역할과 도전 과제, 특히 성능 저하 문제와 리즈넷이 이를 어떻게 완화하는지를 설명할 수 있다.
- 특징 시각화의 기본 방법을 설명하며, 중간 계층 활성화와 학습된 필터를 검사하는 방법을 설명할 수 있다.
- 클래스 활성화 맵(CAM)과 그레이드-CAM의 이론적 메커니즘을 설명하고, 기울기 흐름 기반 시각 설명 생성 방법을 서술할 수 있다.
- 해석 가능성 기술을 활용해 고급 CNN의 분류 작업에서 의사결정 과정을 분석하고 진단할 수 있다.
🔹 수업 5: 순환 신경망과 시퀀스 모델링
개요: 이 수업에서는 구조화된 데이터, 특히 시계열(예: 텍스트, 시간 시리즈)을 모델링하는 데 직면하는 도전 과제를 소개합니다. 이는 전방향 네트워크에서 흔히 가정하는 독립성 조건을 위반합니다. 시퀀스 모델링 작업(예: 기계 번역, 음성 인식, 시간 시리즈 예측)을 정의하며, 상태 정보를 유지할 수 있는 메커니즘의 필요성을 강조합니다. 핵심 초점은 전통적인 순환 신경망(RNN)의 아키텍처에 맞춰집니다. 공유 가중치 메커니즘, 시간 단계를 따라 전개되는 계산 그래프, 숨겨진 상태 업데이트(h_t) 계산, 가변 길이 입력 시퀀스 처리 등을 다룹니다. 또한 기본적인 RNN의 주요 한계, 즉 역전파 시간(백프롭 투 타임, BPTT) 과정에서 발생하는 기울기 소멸 및 폭발 문제로 인해 장기 의존성을 포착하지 못하는 점을 검토합니다. 학습 결과:
- 구조화된 데이터(시계열)를 정의하고, 표준 전방향 네트워크(FNN)가 시계열 종속성 모델링에 부적절한 이유를 설명할 수 있다.
- 기본 순환 신경망(RNN)의 핵심 아키텍처를 설명하며, 숨겨진 상태와 공유 가중치 행렬 등의 구성 요소를 식별할 수 있다.
- RNN 계산 그래프를 시간 단계에 따라 '전개'하는 과정을 시각화하고, 가변 길이 입력 시퀀스 처리 방법을 설명할 수 있다.
- 역전파 시간(BPTT)의 작동 원리를 설명하고, 전통적인 RNN 학습 과정에서 내재된 기울기 소멸 및 폭발 문제를 분석할 수 있다.
🔹 수업 6: 주의 메커니즘과 트랜스포머 아키텍처
개요: 이 수업에서는 "주의는 모두이다"라는 논문이 제시한 패러다임 전환을 깊이 탐구하며, 순환 신경망(RNN)을 넘어서 회귀 없이 오직 주의 메커니즘에만 의존하는 시퀀스 모델링으로 전환합니다. 먼저 주의 메커니즘의 수학적 기초, 특히 질의(Q), 키(K), 값(V) 벡터를 사용한 스케일링된 도트-곱 주의에 초점을 맞춥니다. 강의는 이 개념을 다중 헤드 주의 메커니즘으로 확장하며, 다양한 맥락적 종속성을 포착하는 역할을 설명합니다. 핵심 초점은 완전한 트랜스포머 아키텍처이며, 인코더와 디코더 스택의 구조를 분석하고, 잔차 연결, 레이어 정규화, 시퀀스 정보 유지에 필수적인 위치 인코딩과 같은 중요한 요소를 설명합니다. 마지막으로 트랜스포머가 어떻게 큰 병렬 처리를 가능하게 하고, 신경 기계 번역 및 사전 훈련된 언어 모델 등 분야에 혁명적인 영향을 미쳤는지를 살펴봅니다. 학습 결과:
- 주의 메커니즘의 목적을 정의하고, 순환 신경망의 한계(예: 장거리 의존성, 순차 처리 버퍼링)를 해결하는 방식을 설명할 수 있다.
- 스케일링된 도트-곱 주의의 수학적 연산을 상세히 설명하고, 질의, 키, 값 벡터의 역할을 정확히 식별할 수 있다.
- 트랜스포머 모델의 전체 구조를 설명하며, 인코더와 디코더 스택의 차이를 구분하고, 다중 헤드 주의와 피드포워드 네트워크의 기능을 설명할 수 있다.
- 순열 불변 트랜스포머 아키텍처 내에서 위치 인코딩의 필요성과 수학적 구현을 설명할 수 있다.
- 트랜스포머 아키텍처의 계산적 이점(병렬 처리)과 현대 딥러닝 작업에서의 광범위한 적용 가능성을 분석하며, BERT와 GPT와 같은 모델을 참조할 수 있다.
🔹 수업 7: 자연어 처리 응용과 임베딩
개요: 이 강의는 딥러닝을 활용한 자연어 처리(NLP)의 기초적 및 응용적 측면을 탐구합니다. 먼저 효과적인 단어 표현의 중요성을 다루며, 희박한 방법에서 밀도 높은, 학습된 단어 임베딩으로의 전환을 설명합니다. 워드2벡(워드2벡: 스킵그램, CBOW)의 핵심 메커니즘을 설명하며, 맥락이 풍부한 벡터 표현을 생성하여 의미를 포착하는 방식을 강조합니다. 그런 다음 이러한 기초 개념을 두 가지 주요 NLP 작업에 적용합니다: 신경 기계 번역(NMT), 시퀀스-투-시퀀스 인코더-디코더 아키텍처와 장거리 의존성 및 일치 처리에 있어 주의 메커니즘의 중요한 역할을 이용; 그리고 자동 음성 인식(ASR), 깊은 모델이 음향 데이터의 시간 시퀀스를 처리해 텍스트 출력을 생성하는 방식을 탐구합니다. 논의는 임베딩과 시계열 딥러닝 아키텍처가 현대 상용 NLP 시스템의 핵심을 형성한다는 점에 초점을 맞춥니다. 학습 결과:
- 희박한 단어 표현(예: 원-핫 인코딩)의 한계를 설명하고, 밀도 높은 단어 벡터 임베딩의 필요성을 정당화할 수 있다.
- 분산 표현을 학습하는 데 사용되는 모델(예: 워드2벡: 스킵그램/컨텍스트 백워드 워드)의 기본 원리와 아키텍처를 설명할 수 있다.
- 현대 신경 기계 번역 시스템의 핵심 구성 요소(인코더, 디코더, 주의)를 개괄하고, 기존 방법과의 차이를 비교할 수 있다.
- 신경 기계 번역과 자동 음성 인식(ASR)과 같은 시퀀스-투-시퀀스 작업의 본질적인 도전 과제(예: 가변 입력/출력 길이)를 분석할 수 있다.
- 자동 음성 인식 환경에서 오디오 입력을 처리하기 위해 신경 아키텍처가 어떻게 적응되는지 식별할 수 있다.
🔹 수업 8: 생성 모델: 변분 오토인코더와 생성 적대망
개요: 이 수업에서는 현대 딥러닝 생성 모델의 두 핵심 기술, 변분 오토인코더(VAE)와 생성 적대망(GAN)을 소개합니다. 먼저 VAE를 다루며, 데이터를 매개변수화된 잠재 분포로 매핑하는 인코더와 샘플을 생성하는 디코더로 구성된 아키텍처를 설명합니다. 강력한 초점은 수학적 기초, 특히 증거 하한값(ELBO) 목적 함수에 있으며, 재구성 손실과 정규화를 위한 KL 발산 항의 역할을 분석합니다. 샘플링 과정을 통해 기울기 흐름을 가능하게 하는 필수적인 재매개변수화 기법을 철저히 설명합니다. 그런 다음 GAN으로 전환하며, 생성자(G)와 판별자(D) 사이의 적대적, 제로섬 게임을 정의합니다. 강의는 이론적 미니맥스 가치 함수를 다루며, 최적 판별자가 목적을 최대화하는 방식을 탐색하고, 모드 붕괴와 학습 불안정성과 같은 주요 실용적 도전 과제를 논의합니다. 마지막으로, 생성된 샘플의 품질과 잠재 공간의 해석 가능성 측면에서 비교 분석을 제공하며, VAE의 해석 가능성과 GAN의 일반적으로 더 우수한 샘플 정확성에 대해 대비합니다. 학습 결과:
- 구분형 모델링과 생성형 모델링을 구분하고, 복잡한 데이터 분포를 학습하는 수학적 목표를 설명할 수 있다.
- 변분 오토인코더(VAE)의 아키텍처를 설명하고, 증거 하한값(ELBO) 목적 함수를 유도할 수 있다.
- VAE 학습에서 재매개변수화 기법의 필요성과 기능을 분석하여 효과적인 역전파를 보장할 수 있다.
- 생성 적대망(GAN)의 학습 과정을 생성자와 판별자 사이의 미니맥스 게임으로 설명할 수 있다.
- 샘플 품질, 잠재 공간의 해석 가능성, 모드 붕괴와 같은 일반적인 학습 도전 과제를 기준으로 VAE와 GAN을 비교하고 대조할 수 있다.
🔹 수업 9: 딥 강화 학습
개요: 이 수업에서는 마코프 결정 과정(MDP)이라는 기초적 의사결정 프레임워크를 설정함으로써 딥 강화 학습(DRL)을 소개합니다. 에이전트-환경 루프, 상태 및 행동 공간, 기대 할인 수익을 최대화하는 목표를 정의합니다. 전통적 강화 학습의 핵심 개념인 가치 함수와 벨먼 최적성 방정식을 다룹니다. 이후 딥 강화 학습으로 전환하며, 큰 상태 공간의 도전과 딥 Q 네트워크(DQN)가 신경망을 사용해 Q-함수 근사를 통해 이를 극복하는 방법을 탐색합니다. DQN에 필수적인 안정성 기술, 예: 경험 재생과 타겟 네트워크를 상세히 설명합니다. 마지막으로 가치 기반 방법과 정책 기반 방법을 대비하며, 직접 정책 최적화를 위한 리인포스 알고리즘의 수학적 직관을 설명하고, 더 고급의 액터-크리틱 아키텍처로 이어지는 기반을 마련합니다. 학습 결과:
- 마코프 결정 과정(MDP) 프레임워크를 사용해 순차적 의사결정 문제를 정식화하며, 상태, 행동, 보상, 가치 함수의 정의를 포함할 수 있다.
- 표본 기반 큐러닝에서 딥 Q 네트워크(DQN)로의 전환 과정을 설명하고, DRL 학습 안정화에 사용되는 주요 기술(경험 재생, 타겟 네트워크)을 식별할 수 있다.
- 가치 기반 방법(예: DQN)과 정책 기반 방법(예: 리인포스)의 본질적인 차이를 구분할 수 있다.
- 정책 기반 정리와 그 구현 방법인 리인포스 알고리즘의 목적 함수와 수학적 직관을 설명할 수 있다.
- 현대 딥 강화 학습 시나리오에서 가치 기반 접근과 정책 기반 접근의 응용을 대비할 수 있다.
🔹 수업 10: 고급 학습 패러다임과 윤리적 인공지능
개요: 이 수업은 견고한 배포를 위한 고급 딥러닝 패러다임을 소개하며, 중요한 사회적 함의를 다룹니다. 먼저 비감독 딥러닝의 이론적 기초와 실용적 응용을 탐색하며, 자동인코더와 생성 모델이 표현 학습 및 이상 탐지에 사용될 때의 역할을 중심으로 합니다. 이후 반감독 학습(SSL) 기법, 예: 가짜 레이블링과 일관성 정규화(예: \Pi-모델, 믹스매치)를 탐구하며, 많은 양의 레이블 없는 데이터를 소량의 레이블 있는 예제와 함께 활용하는 데 필수적임을 강조합니다. 수업의 두 번째 주요 부분은 윤리적 인공지능을 비판적으로 다루며, 데이터 수집과 아키텍처 선택이 알고리즘 편향을 유발하는 방식을 설명합니다. 공정성 지표(예: 동등 기회 차이, 인구 비율 평등)를 정의하고 분석하며, 효과적인 완화 전략을 논의하며, 고위험 딥러닝 시스템에서 모델 해석 가능성(XAI)과 책임성의 중요성을 강조합니다. 학습 결과:
- 비감독 학습, 반감독 학습, 일반 감독 학습을 구분하고 각 패러다임에 적합한 현실 세계 시나리오를 식별할 수 있다.
- 자동인코더와 같은 주요 비감독 모델의 기능과 아키텍처를 설명하고, 차원 축소 또는 표현 학습에 사용되는 방식을 설명할 수 있다.
- 현대 반감독 기법의 방법론을 설명하며, 가짜 레이블링과 일관성 정규화 개념을 설명할 수 있다.
- 딥러닝 생명주기(데이터 획득, 모델링, 배포) 동안 도입되는 알고리즘 편향의 주요 원인을 식별하고 분류할 수 있다.
- 일반적인 알고리즘 공정성 지표(예: 동등한 오답률)를 정의하고 비교하며, 편향 완화 전략의 내재된 트레이드오프를 논의할 수 있다.