생성형 AI의 기본 구조로 쓰이는 핵심 모델 아키텍처부터 정리해보면 아래와 같다.
모델 구조 | 주요 생성 대상 | 설명 |
GAN (Generative Adversarial Network) |
이미지, 영상, 음성 | 생성자(Generator)와 판별자(Discriminator)가 경쟁하여 사실적인 데이터를 생성 |
VAE(Variational Autoencoder) | 이미지, 음성 | 잠재 공간에서 샘플링을 통해 연속적이고 부드러운 데이터 생성 |
LSTM / RNN (Recurrent Neural Network) |
텍스트, 음악, 시계열 | 과거 시점 정보를 고려하여 시퀀스 형태의 데이터를 생성 |
Transformer | 텍스트, 코드, 시퀀스 | 문맥을 이해하고 고품질 텍스트를 생성하는 기반 구조 (GPT, BART 등 기반) |
Diffusion Models | 이미지, 멀티모달 | 노이즈를 점진적으로 제거하며 데이터를 생성하는 방식 (Stable Diffusion 등 기반) |
Autoregressive Models | 텍스트, 오디오 | 이전 출력에 기반하여 다음 출력을 한 토큰씩 예측하며 생성 (GPT류 모두 포함) |
1. GAN (Generative Adversarial Network)
적대적 생성 신경망이라고도 불리며 2014년 Ian Goodfellow에 의해 제안된 비지도 학습 기반의 생성 모델이다. 두 개의 신경망( Generator, Discriminator)이 서로 경쟁하며 학습하는 구조를 갖으며 점점 더 정교한 데이터를 생성한다.
1-1) 구성 요소
- Generator(생성자):비유하자면 '위조지폐범'으로 실제 데이터와 최대한 유사한 가짜 데이터를 생성하는 것이 목표
- Discriminator(판별자) : '경찰'에 해당하며 진짜/가짜 데이터를 구분
위조범은 점점 더 진짜 같은 돈을 만들고 경찰은 이를 더 잘 구별하기 위해 훈련되면서 둘 다 점점 더 정교해지는 과정을 반복
1-2) 단계별 설명
단계 | 구성 요소 | 설명 |
1단계 | Random Noise (z) | 잠재 공간에서 무작위 벡터를 샘플링하여 생성자의 입력으로 사용 |
2단계 | Generator (G) | 노이즈 벡터 z를 기반으로 진짜처럼 보이는 가짜 데이터(x̂)를 생성 |
3단계 | Discriminator (D) | 생성된 가짜 데이터(x̂)와 실제 데이터(x)를 입력받아, 진짜/가짜 여부를 판별 |
4단계 | 경쟁 학습 | 생성자는 판별자를 속이기 위해 학습하고, 판별자는 속지 않기 위해 학습함. 이 과정을 반복하면서 두 모델 모두 성능이 향상됨 |
1-3) 잠재공간 z의 역할
- 잠재 벡터 z는 보통 정규분포 등에서 샘플링된 무작위 벡터로, Generator의 입력값으로 사용됨
- 잠재 공간(latent space)은 이 z들이 위치하는 다차원 연속 공간으로, 데이터의 핵심 특성과 구조가 압축되어 있음
- z는 잠재 공간 내 하나의 점이며, Generator는 z의 위치에 따라 특정 특성을 반영한 가짜 데이터를 생성함
- z를 조금씩 변화시키면 생성 결과도 자연스럽고 연속적으로 변화함 → 특성 간 연속성 확보
- z의 위치나 방향을 조절함으로써 특정 속성(예: 표정, 나이, 스타일 등)을 선택적으로 제어할 수 있음
- 따라서 잠재 공간은 다양한 생성 결과의 조절 가능성을 제공하며, 의미 있는 데이터 변형에 핵심적인 역할을 수행함
1-4) 손실 함수 (loss function)
초기 GAN은 교차 엔트로피 손실을 사용했지만, gradient 소실과 학습 불안정 문제가 있어 WGAN, WGAN-GP, Hinge Loss 등 더 안정적인 손실 함수로 발전해왔다.
단계 | 손실 함수 | 특징 및 문제점 |
1 | Binary Cross Entropy (Vanilla GAN) |
GAN 최초 사용. 진짜/가짜 분류에 교차 엔트로피 사용 → gradient vanishing, mode collapse 문제 발생 |
2 | Wasserstein Loss (WGAN) |
확률 대신 실수 값을 출력. 데이터 분포 간 거리(Wasserstein distance)를 최소화 → 학습 안정성 향상 |
3 | WGAN-GP | WGAN에 Gradient Penalty 추가 → Lipschitz 조건 강화, 더 안정적인 학습 가능 |
4 | LSGAN, Hinge Loss | MSE 기반(L2), 마진 기반 손실 등 추가 → 고품질 이미지 생성, 훈련 효율성 향상 |
1-5) 훈련 시 발생 가능 문제점
문제점 | 설명 |
Mode Collapse( 모드 붕괴) | Generator가 한 가지 또는 몇 가지 유형의 데이터만 생성함. 다양성이 사라짐 |
Training Instability( 학습 불안정 ) | Generator와 Discriminator의 학습 균형이 깨지면 발산하거나 수렴하지 않음 |
Gradient Vanishing | Discriminator가 너무 잘 구분하면 Generator의 역전파 학습 신호가 약해짐 |
Evaluation Difficulty( 평가 어려움 ) | 생성 품질을 정량적으로 평가하기 어려움 (→ FID, IS 등 메트릭 등장) |
1-6) 활용 분야: 가짜 이미지 생성, 스타일 전환(Style Transfer), 딥페이크, 이미지 복원 등. GAN은 이미지 데이터에만 국한되지 않고 음성, 텍스트, 시계열 데이터 등 다양한 형태의 데이터 생성에 활용
2. RNN(Recurrent Neural Network)
RNN은 시퀀스(순차적 데이터)를 처리하기 위해 고안된 인공신경망 구조로, 이전 시점의 출력을 현재 시점의 입력에 반영하여 시간의 흐름과 맥락을 고려한 학습이 가능하다. 즉, 과거 정보를 기억하고 이를 바탕으로 현재를 예측하는 구조이다.
- xₜ: 시점 t의 입력
- hₜ: 시점 t의 은닉 상태 (이전 hₜ₋₁ 의 영향을 받음)
- oₜ: 시점 t의 출력( 태스크에 따라 다름)
2-1) 구조와 동작 원리
RNN은 동일한 연산 구조를 시간의 흐름에 따라 반복 적용하는 방식으로, 시점마다 입력값과 이전 은닉 상태를 기반으로 현재 은닉 상태를 계산한다. 이 구조를 통해 RNN은 순차 데이터의 맥락을 학습할 수 있으며, 시간에 따른 정보 축적 및 전달이 가능하다.
- 은닉 상태 갱신:
hₜ= f(Wxₜ + Uhₜ₋₁ + b)
→ 여기서 f는 일반적으로 tanh 또는 ReLU, W/U는 학습 가능한 파라미터 - 출력 방식 유형
RNN은 문제의 성격에 따라 다양한 입력-출력 매핑 구조로 활용된다.
구조 | 형태 | 예시 |
One-to-One | 고정된 입력 → 고정된 출력 | 이미지 분류 |
One-to-Many | 하나의 입력 → 시퀀스 출력 | 이미지 캡셔닝 |
Many-to-One | 시퀀스 입력 → 하나의 출력 | 감정 분석 |
Many-to-Many | 시퀀스 입력 → 시퀀스 출력 | 기계 번역, 음성 인식 등 |
2-2) 장점과 한계
장점 | 한계 |
|
|
2-3) 개선 구조: LSTM과 GRU
RNN의 구조적 한계를 극복하기 위해 등장한 모델들이 LSTM(Long Short-Term Memory)과 GRU(Gated Recurrent Unit)이다.
- LSTM: 입력 게이트, 출력 게이트, 망각 게이트를 통해 정보의 흐름을 제어함으로써 장기 의존성 문제를 완화
- GRU: LSTM보다 단순한 구조(업데이트 게이트, 리셋 게이트)를 사용하며 연산량을 줄인 대안
2-4) 활용 분야
- 자연어 처리(NLP): 감정 분석, 기계 번역, 텍스트 생성
- 음성 처리: 음성 인식, 음성 합성
- 시계열 예측: 주가 예측, 날씨 예보, 센서 데이터 분석
- 음악 생성 및 분석: 시퀀스 형태의 음표나 소리 신호 분석/생성
3. LSTM (Long Short-Term Memory)
LSTM은 장기 의존성 문제(Long-Term Dependency Problem)를 해결하기 위해 개발된 순환 신경망(RNN)의 한 종류다. 시계열 데이터나 순차적인 데이터를 다루는 데 효과적이며 특히 텍스트, 음성, 주가, 센서 데이터 등 시간 흐름이 중요한 문제에 주로 사용된다.
기존의 RNN은 과거의 정보를 반영해 현재 출력을 예측하지만, 입력 시퀀스가 길어질수록 과거 정보가 소실되거나 왜곡되는 기울기 소실 문제가 발생하게 되는데 LSTM은 이 문제를 셀 상태(Cell State)와 세 가지 게이트 구조를 통해 해결한다.
3-1) 구성 요소
구성 요소 | 역할 |
셀 상태 (Cell State) | 정보를 장기적으로 전달하는 통로. 시계열의 흐름을 따라 정보를 보존 |
입력 게이트 (Input Gate) | 현재 입력 정보를 얼마나 반영할지 결정 |
망각 게이트 (Forget Gate) | 과거 정보를 얼마나 잊을지 결정 |
출력 게이트 (Output Gate) | 최종 출력에 어떤 정보를 보낼지 결정 |
3-2) 학습 방식
시계열 순서를 유지하며 입력을 처리 (순서를 유지하기 때문에 일반적인 신경망 보다 학습이 느릴 수 있음 )
단계 | 사용되는 구성 요소 | 역할 설명 |
1. 입력 수신 | xₜ, hₜ₋₁, cₜ₋₁ - xₜ: 지금 들어온 정보 - hₜ₋₁: 바로 전의 출력 (단기 기억) - cₜ₋₁: 바로 전의 셀 상태 (장기 기억) |
현재 입력과 이전 정보를 받아 처리 준비 |
2. 망각 판단 | Forget Gate | 이전 셀 상태에서 무엇을 버릴지 결정 |
3. 정보 선택 | Input Gate, 셀 후보값 | 현재 입력에서 어떤 정보를 새로 저장할지 결정 |
4. 셀 상태 업데이트 | Cell State | 이전 기억 + 새로운 정보를 결합해 기억 저장소 갱신 |
5. 출력 생성 | Output Gate | 최종 출력(hₜ)을 생성해 다음 단계로 전달 |
3-3) 기존 문제 해결 방법
문제 유형 | 설명 | 해결 방법 |
기울기 소실 문제 (Gradient Vanishing) |
RNN에서 시퀀스가 길어질수록 과거 정보의 영향력이 점점 줄어들어 학습이 어려워짐 | 셀 상태(Cell State)를 통해 정보를 장기적으로 전달하며, 기울기 소실을 완화함 |
정보의 선택적 기억/삭제 필요 | 모든 과거 정보를 그대로 유지하는 것은 비효율적이고 잡음이 많을 수 있음 | 입력 게이트, 망각 게이트, 출력 게이트를 통해 어떤 정보를 기억하고 버릴지 선택적으로 조절함 |
장기 의존성 문제 (Long-Term Dependency) |
문장의 앞부분처럼 멀리 떨어진 정보(예: 주어)를 끝까지 기억해야 하는 상황에서 기존 RNN은 어려움 | 필요한 정보만 셀 상태에 장기적으로 유지하여, 멀리 떨어진 시점 간 의존성을 안정적으로 학습함 |
3-4) 활용 분야
- 자연어 처리(NLP):
문맥을 고려한 감정 분석, 텍스트 생성, 기계 번역, 질문 응답 시스템 등 → 단어 간 순서와 문장 구조가 중요한 문제에 적합 - 음성 인식 및 합성:
연속된 음성 데이터를 처리하여 문장으로 변환하거나, 텍스트를 자연스러운 음성으로 합성 - 시계열 예측:
주가, 날씨, 수요 예측, 센서 데이터 분석 등에서 과거 흐름을 반영한 미래 예측 수행 - 행동 인식 및 영상 분석:
비디오 속 연속된 프레임의 움직임 분석을 통해 사람의 행동을 인식하거나 이벤트를 탐지 - 음악 생성 및 분석:
음표의 시퀀스를 학습해 음악을 생성하거나, 음악의 리듬과 흐름을 분석
4. Transformer
Transformer는 자연어 처리와 생성형 AI에서 현재 가장 널리 사용되는 신경망 구조다. 기존 RNN 계열 모델들과 달리 시퀀스 데이터를 순차적으로 처리하지 않고, 병렬로 처리할 수 있다는 점이 장점이다.
Transformer의 핵심은 Self-Attention 메커니즘입니다. 이 메커니즘을 통해 입력 시퀀스 내의 단어(또는 토큰)들이 서로 어떤 관계에 있는지 파악하고 문맥의 의미를 더 효과적으로 반영할 수 있다.
Transformer는 인코더(Encoder)와 디코더(Decoder) 구조로 나뉘며 모델 목적에 따라 둘 중 하나 또는 둘 다 사용한다.
4-1) 인코더-디코더 구조
Transformer는 기본적으로 인코더(Encoder)와 디코더(Decoder)로 구성된 구조를 가진다.
- 인코더는 입력 문장을 받아 각 토큰의 문맥 정보를 반영한 벡터 표현을 생성
- 디코더는 이 인코더의 출력을 바탕으로 최종 출력을 생성
이 구조는 특히 기계 번역과 같이 입력 시퀀스를 출력 시퀀스로 변환하는 작업에서 유용하다.
예를 들어, 영어 문장을 입력받아 프랑스어로 번역하는 경우, 인코더가 영어 문장을 이해하고, 디코더가 프랑스어 문장을 생성하는 방식이다.
Transformer는 목적에 따라 구조를 다르게 사용한다:
- BERT는 문장을 이해(Encoding)하기 위한 모델로, 인코더만 사용
- GPT는 문장을 생성(Decoding)하기 위한 모델로, 디코더만 사용
즉, Transformer는 인코더와 디코더 구조를 선택적으로 활용하여 이해 중심 작업과 생성 중심 작업 모두에 대응할 수 있는 유연한 구조를 갖는다.
4-2) Self-Attention 메커니즘
Transformer 구조의 핵심은 바로 Self-Attention 메커니즘이다. 이 메커니즘은 입력된 단어들이 서로 간의 관계를 학습하도록 하며, 각 단어(또는 토큰)가 문장 내 다른 단어들과 얼마나 관련이 있는지를 계산해 그 중요도에 따라 정보를 조합한다.
- Self-Attention은 각 입력을 Query, Key, Value라는 세 가지 벡터로 변환하고, 이들 간의 내적(dot product)을 통해 유사도(Attention Score)를 구한 뒤, 이를 기반으로 각 토큰의 가중합을 계산한다. 이 과정을 통해 각 단어는 문맥상 중요한 다른 단어에 더 많은 주의를 집중하게 된다. 예를 들어, 문장 “The animal didn't cross the street because it was too tired.”에서 “it”이 가리키는 대상이 “animal”임을 Self-Attention이 자동으로 파악할 수 있다.
Self-Attention은 인코더와 디코더 각 블록 내부에 포함되어 있으며, Transformer가 문맥을 이해하고 긴 시퀀스 간 관계를 병렬로 처리할 수 있게 만드는 핵심 메커니즘이다.
4-3) 활용 분야 및 대표 모델
활용 분야 | 설명 | 대표 모델 및 서비스 |
자연어 이해 및 생성 | 문장 분류, 감정 분석, 번역, 요약, 질문 응답, 텍스트 생성 등 NLP 전반에 활용 | BERT, RoBERTa, T5, GPT-2/3/4, PaLM, Claude, LLaMA 등 |
생성형 AI 텍스트 생성 | 글쓰기, 이메일 작성, 소설/기사 생성, 대화 응답 등 자연어 생성 | ChatGPT, GPT-4, Claude, Gemini |
코드 생성 및 분석 | 코드 자동 완성, 주석 생성, 코드 요약, 버그 수정 추천 등 | GitHub Copilot, Amazon CodeWhisperer |
음성 및 오디오 처리 | 음성 인식(STT), 음성 합성(TTS), 오디오 명령 해석 등 | Whisper(OpenAI), SpeechT5, SeamlessM4T |
시계열 예측 | 주가, 수요, 센서 데이터 등 시간 흐름을 가진 데이터의 예측 및 이상 감지 | Time Series Transformer, Informer |
멀티모달 처리 | 텍스트 + 이미지 동시 이해 및 생성 (예: 이미지 설명, 이미지 생성) | DALL·E, GPT-4V, Flamingo, Gemini Vision, Midjourney 등 |
5. VAE (Variational Autoencoder)
VAE는 입력 데이터를 압축하고 다시 복원하는 오토인코더(Autoencoder) 구조에 확률적(latent) 요소를 도입한 생성 모델이다.
데이터를 잠재 공간(latent space)에 매핑하고, 그 공간에서 새로운 데이터를 샘플링해 생성할 수 있도록 설계되어 있다.
5-1) 구성 요소
VAE는 입력 데이터를 압축·복원하는 오토인코더에 확률적 요소를 결합한 구조로, 아래와 같은 주요 구성 요소로 이루어져 있다.
구성요소 | 설명 |
인코더 (Encoder) | 입력 데이터를 받아 잠재 변수 z의 분포 파라미터(평균 μ, 분산 σ²)를 출력하는 신경망. CNN 또는 MLP 구조 사용. |
잠재 공간 (Latent Space) | 인코더의 출력값으로부터 잠재 벡터 z를 샘플링하는 공간. 이 z는 데이터의 핵심 특성을 압축한 벡터로 간주됨. |
샘플링 기법 (Reparameterization Trick) |
z를 μ + σ × ε (ε는 N(0,1)에서 샘플링) 형태로 표현해, 학습 가능한 방식으로 샘플링을 수행함. |
디코더 (Decoder) | 잠재 변수 z를 입력으로 받아, 원래 데이터와 유사한 출력 데이터를 생성하는 신경망. |
손실 함수 (Loss Function) | 재구성 손실(입력과 복원 데이터의 차이)과 KL Divergence(잠재 분포가 N(0,1)에 가까워지도록 유도)를 함께 최적화함. |
5-2) 작동 원리 요약
VAE는 입력 데이터를 잠재 공간으로 매핑하고, 거기서 샘플링한 z를 통해 다시 원래 입력을 복원하는 구조이다. 이 과정은 다음과 같은 단계로 진행된다:
- 입력 데이터 인코딩
- 인코더는 입력 데이터를 받아, 잠재 변수 z의 평균과 표준편차 값을 계산한다.
- 이 값들은 "이 데이터는 어떤 특성을 가진 z에서 나왔을 것 같다"는 식의 확률 분포를 의미한다.
- 잠재 벡터 샘플링
- 평균과 표준편차로부터 z라는 벡터를 무작위로 하나 샘플링한다.
- 이때 단순 샘플링이 아니라, 샘플링이 학습에 방해되지 않도록 '재파라미터화 기법'을 사용해 학습 가능한 방식으로 처리한다.
- 복원 단계 (디코딩)
- 샘플링한 z를 디코더에 넣으면, 다시 원래 입력과 유사한 데이터를 출력한다.
- 이로써 VAE는 입력과 비슷한 데이터를 생성할 수 있게 된다.
- 손실 계산 및 학습
- 원본 입력과 복원된 데이터 사이의 차이를 계산해 재구성 손실을 구하고, 동시에 z가 표준 정규분포와 비슷해지도록 유도하는 정규화 손실(KL Divergence)을 함께 계산한다.
- 이 두 가지 손실을 더한 값을 기준으로 모델을 학습한다.
5-3) 손실함수
손실함수 | 설명 |
재구성 손실 (Reconstruction Loss) | 입력 데이터와 복원된 데이터 간의 차이를 최소화함. MSE 또는 BCE 방식이 주로 사용됨. |
정규화 손실 (KL Divergence) | 잠재 벡터 z의 분포가 표준 정규분포(평균 0, 분산 1)에 가깝도록 유도함. |
최종 손실 함수 | 두 손실을 합하여 학습함. Loss = Reconstruction Loss + KL Divergence |
5-4) 장단점
장점 | 단점 |
잠재 공간을 구조화하여 의미 있는 z 생성 가능 | GAN에 비해 이미지 품질이 낮을 수 있음 |
연속적이고 부드러운 데이터 생성 | KL 손실이 과도하게 작용할 경우 모델이 의미 있는 z를 학습하지 못할 수 있음 |
다양한 분야(이미지, 음성, 시계열 등)에 적용 가능 | 확률적 구조로 인해 해석이 어렵거나 느릴 수 있음 |
5-5) 활용 분야
활용 분야 | 설명 |
이미지 생성 | MNIST, CelebA와 같은 데이터셋을 기반으로 손글씨, 얼굴 등 다양한 이미지를 생성하는 데 사용됨. |
데이터 압축 | 고차원의 입력 데이터를 저차원의 잠재 공간으로 효과적으로 압축하여 저장하거나 전송할 수 있음. |
이상 탐지 | 정상 데이터를 학습한 후, 재구성 오차가 큰 데이터를 이상(anomaly)으로 간주하여 탐지하는 데 활용됨. |
이미지 보간 및 스타일 변환 | 잠재 공간의 벡터를 연속적으로 조정함으로써 두 이미지 사이를 자연스럽게 전이하거나 스타일을 변환할 수 있음. |
음악/오디오 생성 | 오디오 파형을 잠재 공간으로 압축 및 샘플링하여 새로운 소리나 음악을 생성하는 데 사용됨. |
텍스트 생성 | 텍스트 시퀀스를 잠재 벡터로 변환 후 샘플링하여 다양한 문장 구조나 의미 기반 문장을 생성하는 데 응용 가능함. |
6. Diffusion Model
Diffusion Model은 데이터를 점진적으로 노이즈화한 후, 이를 역으로 복원하며 새로운 데이터를 생성하는 확률 기반의 생성 모델이다. 최근에는 이미지 생성 분야에서 매우 높은 품질을 보여주며 주목받고 있다. 대표적으로 Stable Diffusion, DALL·E 2, Imagen 등이 이 구조를 기반으로 한다.
6-1) 구성 요소
구성 요소 | 설명 |
1. 인코더 (E) | 입력 이미지 x를 잠재 공간(latent space) z로 변환함. 이 공간은 저차원 공간으로, 학습 효율이 높고 계산량이 줄어듦. |
2. 디코더 (D) | 노이즈 제거 후 나온 z를 다시 이미지 공간으로 복원함. 최종적으로 생성된 이미지가 나옴. |
3. Diffusion Process | 잠재 공간 z에 T단계에 걸쳐 점진적으로 노이즈를 추가함. 이 과정을 통해 zₜ를 생성하고, 완전한 노이즈 상태로 변환함. |
4. Denoising U-Net (εθ) | 노이즈 zₜ에서 원래의 z를 복원하는 역할. 일반적으로 U-Net 기반 구조에 Cross-Attention이 결합됨. |
5. Cross Attention | 조건부 생성 시 사용됨. 예: 텍스트 정보(text) 또는 이미지 조건(conditioning)을 반영하여 생성 결과를 유도함. Q/K/V는 Transformer의 attention 구조 요소를 의미. |
6. Conditioning Module (τθ) | 텍스트, 의미지도(Semantic Map), 기타 정보를 임베딩하여 모델에 조건으로 전달함. |
7. Scheduler (T) | Diffusion 단계 수 및 노이즈 추가/제거 비율을 조절함. |
8. Skip Connection / Switch / Concat | 모델 학습 안정성과 정보 흐름을 유지하기 위한 구조적 요소들로, 특히 U-Net 계열에서 자주 사용됨. |
6-2) 작동 원리 요약
- 순방향 과정 (Forward Process)
- 실제 데이터를 점진적으로 노이즈화한다.
- 수십에서 수천 단계에 걸쳐, 원본 데이터에 점점 강한 노이즈를 추가하여 완전한 무작위 상태로 만든다.
- 이 과정을 통해 데이터의 분포를 정규분포에 가깝게 만든다.
- 역방향 과정 (Reverse Process)
- 노이즈 상태에서 점차 노이즈를 제거해 나가며 원본 데이터처럼 보이는 샘플을 생성한다.
- 이 과정은 딥러닝 모델(주로 U-Net 기반)이 수행하며, 각 단계에서 노이즈를 예측해 제거한다.
6-3) 주요 특징
특징 | 설명 |
고품질 생성 | 다른 생성 모델(GAN 등)에 비해 더 선명하고 자연스러운 이미지를 생성할 수 있음. |
안정적인 학습 | GAN과 달리 훈련이 불안정하거나 모드 붕괴가 발생하지 않아 학습이 비교적 안정적임. |
유연한 제어 | 조건부 입력(Caption, Prompt 등)을 활용해 원하는 스타일, 내용, 속성을 가진 데이터를 생성할 수 있음. |
단점 | 생성 시간이 오래 걸리고, 계산 자원이 많이 소모되는 편임. |
6-4) 활용 분야
활용 분야 | 설명 |
텍스트 기반 이미지 생성 | "강아지가 우주복을 입고 있는 모습"처럼 문장을 입력하면 해당 이미지를 생성함 (예: DALL·E 2, Stable Diffusion) |
이미지 변환/보완 | 손상된 이미지 복원, 부분 채우기(inpainting), 스타일 변환 등에 사용됨 |
음성/음악 생성 | 텍스트 또는 악보 기반으로 음악을 생성하거나, 잡음을 제거하는 데 활용됨 |
3D 모델링 | 2D 이미지 또는 텍스트 기반으로 3차원 형상이나 장면을 생성함 |
7. 생성형 AI 프롬프트 엔지니어링 (Prompt Engineering)
7-1) 기본 프롬프트 구성 요소
용어 | 설명 |
Prompt (프롬프트) | 생성형 AI에 입력되는 텍스트 전체. 모델의 응답을 유도하기 위한 지시문, 입력, 컨텍스트 등을 포함. |
System Prompt | AI 모델의 전체 행동을 지정하는 초기 지침. 대화 스타일이나 역할 등을 정의하는 설정값. |
Instruction (지시) | 모델에게 “무엇을 해야 하는지” 명확히 알려주는 명령형 문장. 예: “다음 텍스트 요약해줘.” |
Input (입력 데이터) | 모델이 작업을 수행하는 데 사용하는 텍스트 데이터. 예: 요약할 문장, 분석할 기사 등. |
Output Format | 출력의 형식을 지정하는 요소. 예: “표로 정리해줘”, “JSON 형태로 응답해줘” 등. |
Prompt Template | 프롬프트의 구조를 일정한 형식으로 고정한 틀. 반복적인 작업에서 자동화에 유용함. 예: 지시문 + 입력 + 출력형식. |
Context (컨텍스트) | 모델이 기억하고 있는 이전 대화 내용이나 관련 배경 정보. 길이가 길수록 문맥 이해에 도움됨. |
7-2) 역할 기반 기법
용어 | 설명 |
Role Prompting | 모델에게 특정 역할을 부여하여 더 적절한 응답을 유도하는 기법. 예: “너는 전문가 상담사야”, “기획자로서 답변해줘” 등. |
7-3) 예시 기반 학습 방법
용어 | 설명 |
Zero-shot Prompting | 예시 없이 단순한 지시만으로 문제를 해결하게 하는 방식. 예: “이 문장을 영어로 번역해줘.” |
One-shot Prompting | 하나의 예시를 함께 제시하여 모델이 문제 유형을 이해하고 응답하게 하는 방식. |
Few-shot Prompting | 2개 이상의 예시를 보여주고 패턴을 학습하도록 유도하는 방식. 다양한 문맥에 대한 적응력이 향상됨. |
7-4) 추론 유도 기법
기법명 | 설명 |
Chain of Thought (CoT) | 문제를 단계별로 사고하며 답을 유도함. 수학, 논리, 복잡한 질문에 강함. |
Self-Consistency | CoT를 여러 번 실행하고, 가장 많이 등장한 답변을 선택하여 일관성과 정확도 향상. |
Tree of Thought (ToT) | 사고 과정을 트리 구조로 분기시켜 여러 경로를 탐색함. 복잡한 의사결정, 창의적 작업에 효과적. |
Scratchpad Prompting | 모델이 중간 계산 결과나 메모를 기록하며 추론하도록 유도함. 수학 계산 문제에서 특히 유용함. |
Program-Aided Prompting | 모델이 문제 해결을 위해 **코드(예: Python)**를 생성·실행하며 결과를 활용하도록 유도함. |
Least-to-Most Prompting | 문제를 가장 쉬운 하위 문제부터 해결하여 전체 문제를 구성하게 함. 단계적 사고 구조에 효과적. |
ReAct Prompting | 모델이 **"생각(Reasoning)"과 "행동(Acting)"**을 번갈아 수행하도록 구성. 도구 기반 질의응답에 활용됨. |
7-5) 생성 제어 변수
용어 | 설명 |
Temperature | 생성 응답의 무작위성(창의성)을 조절함. 값이 낮을수록 보수적이고 정확한 응답, 높을수록 다양하고 창의적인 응답. |
Top-p (Nucleus Sampling) |
누적 확률이 p 이하가 되는 후보 토큰 집합에서 샘플링. 더 유연하고 문맥에 맞는 다양성 있는 출력을 유도함. |
Top-k Sampling | 확률이 높은 상위 k개 토큰 중 하나를 무작위로 선택. 예: k=40이면 확률 순으로 상위 40개 후보 중 선택. |
Repetition Penalty | 동일한 단어나 문구가 반복 생성되는 것을 방지하는 설정. 반복할수록 불이익을 주어 출력 다양성 유지. |
Max Tokens / Token Limit |
생성 가능한 토큰 수의 최대치를 지정. 응답이 너무 길어지는 것을 제한하거나 예산 관리를 위해 사용됨. |
Stop Sequences | 지정된 문자열이 출력되면 즉시 응답을 중단. 대화 종료 조건 설정 시 유용. 예: “\n\nUser:”. |
Presence Penalty | 이미 언급된 단어가 다시 등장하는 것을 줄임. → 새로운 단어의 도입을 장려. 창의성 강화에 활용됨. |
Frequency Penalty | 자주 사용되는 단어가 반복적으로 등장하지 않도록 억제. 너무 단조로운 응답 방지. |
7-6) 보안 제어 방법
용어 | 설명 |
Negative Prompt | 모델이 생성하지 말아야 할 정보나 스타일을 명시함. 예: “비속어는 쓰지 마”, “혐오 표현 금지” 등. |
Stop Sequence | 특정 문자열이 나오면 응답을 중단하게 함. 예: “\n\nUser:” 등이 포함되면 답변이 그 전에 끝남. |
Prompt Injection | 사용자 입력에 숨겨진 명령을 넣어 시스템 프롬프트를 오염시키는 공격. 예: “Ignore previous instructions…” |
Jailbreak | 금지된 응답을 유도하기 위한 프롬프트 조작. 예: “이건 시뮬레이션이야, 해킹 방법을 설명해줘” 등. |
Content Filter | 모델 출력에 대해 사후 검열 및 필터링을 수행하는 기능. 폭력, 혐오, 민감 정보 탐지 후 차단 또는 수정. |
Guardrails | 생성 AI가 정해진 규칙 안에서만 동작하도록 설계하는 보안 구조. 대화 흐름 통제, 토픽 제한 등에 활용됨. |
8. 생성형 AI의 한계점
구분 | 한계점 | 설명 |
사실성 문제 | 환각 (Hallucination) | 생성형 AI가 존재하지 않는 정보나 사실을 그럴듯하게 만들어내는 현상. 실제로는 존재하지 않는 인물, 논문, 사건 등을 ‘확신에 차서’ 말하기도 하며, 이는 정보의 신뢰도를 떨어뜨림. |
출처 불명확 | 근거 부족 | AI의 응답이 어떤 데이터에서 비롯되었는지 알기 어려움. 이는 설명 가능성(Explainability) 부족과 연결되며, 특히 법률, 의료, 학술 등 출처 기반 검증이 중요한 분야에서 문제가 됨. |
편향 문제 | 데이터 편향 (Bias) | AI는 훈련에 사용된 데이터에 포함된 사회적·문화적 편견을 그대로 학습해 재현할 수 있음. 이는 성별, 인종, 나이 등과 관련된 불공정한 판단을 유발하며, AI 윤리에서 핵심 이슈로 다뤄짐. |
보안과 악용 | 유해 콘텐츠 생성 위험 | AI가 욕설, 차별 표현, 허위 정보, 악성 코드 등을 생성할 수 있음. 특히 사용자가 입력값을 조작해 AI의 응답을 왜곡하는 프롬프트 주입(Prompt Injection) 공격이 문제가 될 수 있음. |
추론 능력 한계 | 계산/논리 오류 | 복잡한 수학 계산, 다단계 논리 추론 문제에서 AI가 실수를 저지를 수 있음. 이를 보완하기 위해 Chain of Thought Prompting(사고과정 유도) 기법이 활용되기도 함. |
최신성 부족 | 지식 업데이트 한계 | AI는 학습 시점 이후의 정보를 알지 못함(Knowledge Cutoff). 따라서 실시간 데이터가 필요한 분야(뉴스, 주식, 날씨 등)에선 RAG (Retrieval-Augmented Generation) 같은 기법이 병행되어야 함. |
맥락 기억 부족 | 긴 대화에서 정보 손실 | 대화가 길어지면 앞에서 말한 내용을 잊거나 연결이 어색해질 수 있음. 이는 AI가 한 번에 기억할 수 있는 범위(Context Window)의 한계 때문이며, 일부 모델은 장기 메모리(Long-term Memory) 기능으로 개선 중임. |
창의성의 경계 | 진짜 창의성과 구분 어려움 | AI가 만들어내는 ‘창의적’ 결과는 대부분 기존 데이터를 조합한 결과이며, 진정한 창조성과는 다름. 이를 **합성 창의성(Synthetic Creativity)**이라 하며, 완전히 새로운 개념이나 혁신은 인간 중심 사고에 여전히 의존함. |
이미지 출처
모델 | 문서명 | url |
GAN | Generative adversarial network | Link |
RNN | Recurrent neural network | Link |
LSTM | Long short-term memory | Link |
Transformer | Transformer (deep learning architecture) | Link |
VAE | Variational autoencoder | Link |
Diffusion Model | Denoising diffusion probabilistic models | Link |
'AWS' 카테고리의 다른 글
[AWS] AWS Certified AI Practitioner 취득 후기 (0) | 2025.06.22 |
---|---|
[AWS] AWS Certified AI Practitioner 개념 정리 - 5 (0) | 2025.06.22 |
[AWS] AWS Certified AI Practitioner 개념 정리 - 4 (0) | 2025.06.22 |
[AWS] AWS Certified AI Practitioner 개념 정리 - 3 (0) | 2025.06.22 |
[AWS] AWS Certified AI Practitioner 개념 정리 - 1 (0) | 2025.06.22 |