딥러닝 그리고 모델들

심층 학습(EEP)은 음성 비서부터 자율주행차에 이르기까지 오늘날 가장 혁신적인 AI 애플리케이션의 기반이 되고 있습니다. 이러한 혁신의 핵심에는 인간의 뇌 기능을 모방하도록 설계된 강력한 신경망 아키텍처가 있습니다. 이 글에서는 가장 영향력 있는 심층 학습 모델을 분석하여 명확하고 간결한 설명을 제공하려고 합니다.

퍼셉트론

퍼셉트론은 인공 뉴런이라고도 불리는 신경망의 가장 기본적인 구성 요소입니다. 여러 개의 입력 노드, 가중 합 함수, 그리고 출력을 결정하는 활성화 함수로 구성됩니다. 결정 경계를 학습하여 이진 분류 문제(예: 고양이와 개 구분)를 해결하도록 설계되었습니다. 모델은 퍼셉트론 학습 알고리즘을 사용하여 데이터 포인트를 정확하게 분류할 수 있을 때까지 가중치를 업데이트합니다.

그림 1: 퍼셉트론 네트워크

다층 퍼셉트론

다층 퍼셉트론(MLP)은 데이터를 수신하는 입력층, 복잡한 데이터 표현을 학습하는 하나 이상의 은닉층, 최종 예측을 생성하는 출력층 등 3개 이상의 층으로 구성됩니다.

ReLU, Sigmoid, Tanh와 같은 활성화 함수를 사용하여 비선형성을 구현하여 복잡한 데이터 패턴을 포착합니다. 모델은 예측 오류를 최소화하기 위해 내부 가중치를 지속적으로 조정하는 역전파(Backpropagation)라는 과정을 통해 학습합니다.

그림 2: 다층 퍼셉트론(ANN)의 예

합성곱 신경망(CNN)

합성곱 신경망(CNN)은 이미지나 비디오와 같은 격자형 데이터를 처리하도록 특별히 설계된 특수한 유형의 신경망입니다. 인간 뇌의 시각 피질에서 영감을 받은 CNN은 수동적인 피처 엔지니어링 없이 원시 이미지 데이터에서 에지, 모양, 질감과 같은 중요한 특징을 자동으로 추출합니다.

CNN의 핵심 구성 요소에는 패턴을 감지하기 위해 필터를 적용하는 합성곱 계층, 중요한 정보를 유지하면서 공간 차원을 줄이는 풀링 계층, 최종 예측을 내리는 완전히 연결 계층이 포함됩니다.

그림 3: 일반적인 CNN 모델 아키텍처( 출처 )

ResNet(잔여 신경망)

ResNet은 잔여 연결(또는 건너뛰기 연결)을 도입하여 매우 깊은 신경망에서 사라지는 기울기 문제를 해결하도록 설계된 심층 학습 모델입니다.

기존의 심층 네트워크에서는 그래디언트가 여러 계층을 통과하면서 감소하는 경향이 있어 학습이 어려웠습니다. ResNet은 그래디언트가 스킵 연결을 통해 직접 흐르도록 하여 이 문제를 해결합니다. 이를 통해 모델은 성능 저하 없이 매우 깊은 네트워크를 학습할 수 있습니다.

핵심 아이디어는 출력을 직접 학습하는 대신 잔여 매핑(입력과 출력의 차이)을 학습하여 최적화를 더 쉽게 만드는 것입니다.

그림 4: 일반적인 ResNet 아키텍처( 출처 )

순환 신경망(RNN)

순환 신경망(RNN)은 시계열, 텍스트, 오디오와 같은 순차적 데이터를 처리하도록 설계된 딥러닝 모델입니다. RNN은 이전 입력의 정보를 유지할 수 있는 피드백 루프를 가지고 있어 시간 종속성이 있는 작업에 효과적입니다. 이러한 메모리와 유사한 동작 덕분에 RNN은 데이터의 맥락을 이해할 수 있어 언어 모델링, 음성 인식, 시계열 예측과 같은 분야에 이상적입니다.

그림 5: RNN 아키텍처의 가장 간단한 형태

표준 RNN은 기울기 소멸 문제로 인해 장기 의존성 문제에 종종 어려움을 겪으며, 이로 인해 긴 시퀀스에 대한 정보 수집 능력이 제한됩니다. 이러한 한계를 해결하기 위해 LSTM과 GRU와 같은 변형 모델이 도입되었으며, RNN은 순차적 작업에서 더욱 효과적입니다.

장단기 네트워크(LSTM)

장단기 메모리(LSTM) 네트워크는 기존 RNN의 장기 의존성 포착 한계 (기울기 소실 문제) 를 극복하도록 설계된 고급 순환 신경망(RNN)입니다 . LSTM은 입력, 망각, 출력 게이트와 정보 흐름을 제어하는 메모리 셀을 갖춘 고유한 아키텍처를 사용합니다.

그림 6: LSTM 단위의 아키텍처( 출처 )

망각 게이트는 어떤 정보를 삭제할지 결정하고, 입력 게이트는 셀 상태를 새 데이터로 업데이트하며, 출력 게이트는 다음 은닉 상태를 결정합니다. 이러한 메커니즘을 통해 LSTM은 순차적 데이터의 장기 의존성을 포착할 수 있으므로, 장시간의 컨텍스트 유지가 필요한 작업에 매우 효과적입니다.

게이트형 순환 유닛(GRU)

게이트 순환 유닛(GRU)은 기울기 소실 문제를 해결하고 학습 효율을 높이기 위해 설계된 순환 신경망(RNN)의 또 다른 고급 변형입니다. 세 개의 게이트를 사용하는 LSTM과 달리 GRU는 업데이트 게이트와 리셋 게이트, 두 개의 게이트만 사용합니다. 업데이트 게이트는 이전 정보 중 얼마나 많은 부분을 전달할지 제어하고, 리셋 게이트는 이전 정보 중 얼마나 많은 부분을 삭제할지 결정합니다. 성능 저하 없이 학습 속도가 중요한 작업에서는 LSTM보다 GRU가 더 선호되는 경우가 많습니다.

그림 7: RNN 대 LSTM 대 GRU 아키텍처( 출처 )

오토인코더

오토인코더는 입력 데이터를 저차원 잠재 공간으로 압축한 후 원래 형태로 재구성하도록 설계된 비지도 학습 딥러닝 모델입니다. 오토인코더는 두 가지 주요 부분으로 구성됩니다. 입력 데이터를 압축된 표현으로 압축하는 인코더와 이 표현으로부터 원래 입력 데이터를 재구성하는 디코더입니다. 오토인코더는 차원 축소, 이상 감지, 이미지 노이즈 제거 및 새로운 데이터 샘플 생성에 일반적으로 사용됩니다.

그림 8: 오토인코더 아키텍처

변분형 자동 인코더(VAE)

변이형 오토인코더(VAE)는 입력 데이터의 잠재 표현을 학습하고 훈련 데이터와 유사한 새로운 데이터 샘플을 생성하도록 설계된 생성형 딥러닝 모델입니다. 일반적인 오토인코더와 달리, VAE는 고정된 표현 대신 평균(μ)과 분산(σ)을 출력하는 확률적 잠재 공간을 학습하여 확률론적 특성을 도입합니다.

학습 과정에서 이러한 분포에서 무작위 잠재 벡터가 샘플링되어 디코더를 통해 다양한 출력을 생성합니다. 이를 통해 VAE는 이미지 생성, 데이터 증강, 이상 감지, 잠재 공간 탐색 등의 작업에 매우 효과적입니다.

그림 9: VAE(변형 자동 인코더) 아키텍처

생성적 적대 신경망(GAN)

생성적 적대 신경망(GAN)은 생성자와 판별자라는 두 개의 신경망으로 구성되어 있으며, 두 신경망은 제로섬 게임에서 서로 경쟁합니다.

생성기는 무작위 노이즈로부터 현실적인 합성 데이터를 생성하는 반면, 판별기는 실제 데이터와 생성된 데이터를 구분하려고 노력합니다. 학습이 진행됨에 따라 생성기는 판별기가 실제 데이터와 더 이상 구분할 수 없는 매우 현실적인 데이터를 생성할 때까지 지속적으로 향상됩니다.

GAN은 이미지 생성, 딥페이크 제작, 데이터 증강, 스타일 전송에 널리 사용되어 생성적 딥 러닝에서 가장 강력한 모델 중 하나입니다.

그림 10: 생성적 적대 신경망(GAN) 아키텍처

StyleGAN(스타일 기반 생성적 적대 신경망)

StyleGAN은 특히 사람 얼굴 합성 분야에서 고품질 이미지 생성을 위해 설계된 고급 생성적 적대 신경망(GAN)입니다. 기존 GAN과 달리 StyleGAN은 스타일 기반 생성기 아키텍처를 도입하여 잠재 벡터(입력 노이즈)를 먼저 스타일 표현으로 변환하여 모델이 나이, 헤어스타일, 표정, 배경 등 다양한 시각적 속성을 제어할 수 있도록 합니다. 또한 이 아키텍처는 적응형 인스턴스 정규화(AdaIN)라는 기술을 사용하여 이러한 스타일 변화를 제어함으로써 매우 사실적이고 사용자 정의 가능한 이미지 생성을 가능하게 합니다.

그림 11: StyleGAN 아키텍처( 출처 )

신경 스타일 전이(NST)

신경망 스타일 전이(NST)는 한 이미지(스타일 이미지)의 예술적 스타일을 다른 이미지(콘텐츠 이미지)의 콘텐츠에 적용하여 시각적으로 매력적인 하이브리드 이미지를 생성하는 딥러닝 기법입니다. 일반적으로 대용량 이미지 데이터셋을 기반으로 사전 학습된 합성곱 신경망(CNN)을 사용하여 이미지에서 콘텐츠 및 스타일 표현을 추출하고 조작합니다. 이 과정에는 콘텐츠 손실(이미지 구조 보존)과 스타일 손실(예술적 질감 포착)을 결합하는 손실 함수가 최소화됩니다. NST는 아트 생성, 사진 스타일 지정, 그리고 창의적인 이미지 조작에 널리 사용됩니다.

그림 12: 신경 스타일 전송의 일반적인 아키텍처( 출처 )

Transformer

트랜스포머는 루프나 컨볼루션을 사용하지 않고 텍스트나 오디오와 같은 순차적 데이터를 처리하는 데 사용되는 딥러닝 모델입니다. 대신, 이 모델은 셀프 어텐션(self-attention) 메커니즘을 사용하여 모든 입력 단어를 동시에 살펴보고 시퀀스의 어디에 나타나든 서로 어떻게 연관되는지 이해합니다. 이 모델은 두 가지 주요 부분으로 구성됩니다. 입력 데이터를 이해하는 인코더와 그 이해를 기반으로 출력을 생성하는 디코더입니다. 트랜스포머는 빠르고 매우 효과적이기 때문에 BERT, GPT, T5와 같은 고급 NLP 모델에서 널리 사용됩니다.

그림 13: 변압기 아키텍처( 출처 )

BERT

BERT는 Transformer 아키텍처를 기반으로 한 사전 학습된 딥 러닝 모델로, 문장 속 단어의 맥락을 좌우 방향(양방향)에서 이해하도록 설계되었습니다.

텍스트를 순차적으로 처리하는 기존 모델과 달리 BERT는 셀프 어텐션을 사용하여 전체 입력 시퀀스를 한 번에 고려하여 맥락적 의미를 포착합니다.

이 시스템은 마스크드 언어 모델링(MLM) 및 다음 문장 예측(NSP)과 같은 작업을 통해 방대한 텍스트 코퍼스를 사전 학습하여 심층적인 맥락적 임베딩을 생성할 수 있습니다.

GPT

GPT는 트랜스포머 아키텍처 기반의 딥러닝 모델로, 주로 텍스트 생성, 콘텐츠 완성, 언어 이해를 위해 설계되었습니다. 텍스트를 양방향으로 처리하는 BERT와 달리, GPT는 텍스트를 한 번에 한 단어씩 왼쪽에서 오른쪽으로 처리하여 이전 단어를 기반으로 명확하고 의미 있는 텍스트를 생성합니다. 대량의 텍스트 데이터를 학습하여 문장의 다음 단어를 예측하므로 챗봇, 텍스트 요약, 코드 생성과 같은 작업에 매우 효과적입니다. GPT의 대표적인 예로 OpenAI의 ChatGPT를 들 수 있습니다.

그림 14: Transformer, GPT 및 BERT의 아키텍처 비교( 출처 )

U-Net

U-Net은 이미지 분할, 특히 의료 이미지 분석에 주로 사용되는 딥러닝 모델입니다. U자형 아키텍처는 두 부분으로 구성됩니다. 중요한 특징을 포착하고 이미지 크기를 줄이는 인코더와 명확한 분할 세부 정보를 사용하여 이미지를 재구성하는 디코더입니다. U-Net은 또한 스킵 연결을 사용하여 인코더에서 디코더로 저수준 특징을 전달하고 이미지 세부 정보를 보존합니다. 이는 의료 이미지 분할, 객체 감지, 위성 이미지 분석과 같은 작업에 매우 효과적입니다.

그림 15: U-Net 아키텍처( 출처 )

EfficientNet

EfficientNet은 적은 계산량으로 높은 정확도를 달성하는 이미지 분류용 딥러닝 모델입니다. 기존 모델처럼 단순히 네트워크 크기를 늘리는 대신, EfficientNet은 네트워크의 깊이, 너비, 해상도를 균일하게 확장하는 복합 스케일링(compound scaling) 방식을 사용하여 더 나은 성능을 제공합니다. 이는 ResNet이나 VGG와 같은 대형 모델보다 빠르고 효율적이어서 이미지 분류, 객체 감지, 의료 이미지 분석 등의 작업에 널리 사용됩니다.

그림 16: EfficientNet 아키텍처( 출처 )

YOLO(You Only Look Once)

YOLO(You Only Look Once)는 이미지와 비디오에서 실시간 객체 감지에 사용되는 딥러닝 모델입니다. 여러 단계에 걸쳐 객체를 감지하는 기존 모델과 달리, YOLO는 한 번에 처리하여 매우 빠르고 효율적입니다. 이미지를 그리드로 나누고 객체와 그 위치를 동시에 예측하여 여러 객체를 동시에 감지할 수 있습니다. 이러한 빠른 속도 덕분에 YOLO는 비디오 감시, 자율주행, 객체 추적과 같은 실시간 애플리케이션에 이상적입니다.

그림 17: YOLO 아키텍처( 출처 )

SSD(단일 샷 멀티박스 감지기)

SSD(Single Shot Multibox Detector)는 이미지와 비디오에서 실시간 객체 감지에 사용되는 딥러닝 모델입니다. 기존 모델에서는 두 단계로 객체를 감지했지만, SSD는 한 번에 감지하여 빠르고 효율적입니다. 여러 개의 특징 맵을 사용하여 다양한 크기의 객체를 감지하므로 크고 작은 객체를 정확하게 처리할 수 있습니다. SSD는 속도와 정확도가 중요한 자율주행차, 비디오 감시, 실시간 객체 추적 등에 널리 사용됩니다.

그림 18: SSD 아키텍처( 출처 )

DALL·E(OpenAI의 텍스트-이미지 생성 모델)

DALL·E는 OpenAI에서 개발한 생성적 딥러닝 모델로, 텍스트 설명으로부터 사실적인 이미지를 생성할 수 있습니다(텍스트-이미지 생성). GPT(Generative Pre-trained Transformer) 아키텍처를 기반으로 구축된 DALL·E는 변환기를 사용하여 텍스트 프롬프트를 이해하고 이에 상응하는 시각적 출력을 생성합니다. DALL·E는 텍스트 입력만으로 고품질의 다양하고 창의적인 시각적 콘텐츠를 생성하는 능력으로 널리 인정받고 있습니다.

그림 19: DALL·E 아키텍처

Q-러닝

Q-러닝은 기계가 시행착오를 통해 학습하는 강화 학습 기법입니다. 로봇이나 게임 캐릭터와 같은 “에이전트”는 환경과 상호 작용하고 다양한 행동을 시도하며, 선택에 따라 보상이나 페널티를 받습니다. 시간이 지남에 따라, 에이전트는 Q-테이블에 경험을 저장하여 최적의 행동을 학습합니다. 이 방법은 게임 AI, 자율주행차, 트레이딩 봇 등에 널리 사용되어 스스로 현명한 결정을 내릴 수 있도록 지원합니다.

그림 20: Q-학습 알고리즘의 예 – 이미지 출처

딥 Q-러닝 네트워크(DQN)

심층 Q-러닝 네트워크(DQN)는 Q-러닝(인기 강화 학습 알고리즘)과 심층 신경망(DNN)을 결합하여 에이전트가 복잡한 환경에서 최적의 행동을 학습할 수 있도록 하는 심층 강화 학습 모델입니다. 상태-행동 값을 저장하기 위해 Q-테이블을 사용하는 Q-러닝과 달리, DQN은 신경망을 사용하여 이러한 값을 근사화하여 고차원 상태 공간(예: 게임 이미지)을 처리할 수 있습니다. 또한 DQN은 학습을 안정화하기 위해 경험 재생 및 목표 네트워크와 같은 기술을 통합합니다.

그림 21: 딥 Q-러닝 네트워크(DQN) 아키텍처

참고자료) https://medium.com/data-science-collective/deep-learning-simplified-how-to-explain-20-models-in-an-interview-bc55f99d16fe

댓글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다