데이터 반출 없는 다기관 연합 인공지능 학습 플랫폼

인공지능 35

보안 위협: 멤버십 추론 공격(Membership Inference Attack)

인공지능 모델의 보안 위협 중 하나인 멤버십 추론 공격에 대해 소개하고, 실제 적용 사례를 제시합니다.멤버십 추론 공격 소개멤버십 추론 공격은 특정 데이터가 AI 모델의 학습 데이터 세트에 포함되었는지 여부를 알아내려는 프라이버시 공격입니다.1. 공격의 목표와 원리목표: 공격자는 자신이 가진 특정 데이터(예: A라는 사람의 의료 기록, B의 사진)가 이 모델을 학습시키는 데 사용되었는지 '예' 또는 '아니오'로 판별하는 것을 목표로 합니다.핵심 원리: AI 모델, 특히 딥러닝 모델은 학습 데이터에 과적합(overfitting)되는 경향이 있습니다. 즉, 모델은 자신이 학습한 '본 적 있는' 데이터와 '처음 보는' 데이터에 대해 미묘하게 다르게 반응합니다. 학습 데이터(멤버): 모델이 이미 학습한 데이터가..

보안 위협: 모델 탈취/추출 공격(Model Stealing/Extraction Attack)

인공지능(AI) 모델, 특히 딥러닝 모델의 구조(architecture)와 파라미터(parameter, 가중치)는 모델의 핵심 지적 재산(IP)이자 성능을 좌우하는 전부입니다. 이러한 정보가 유출되는 것은 기업이나 연구 기관에 막대한 금전적, 전략적 손실을 초래할 수 있는 심각한 보안 위협입니다. 이러한 위협은 크게 '모델 탈취(Model Stealing)' 또는 '모델 추출(Model Extraction)' 공격의 범주에 속합니다.1. 모델 구조 누출모델 구조 누출은 AI 모델의 '청사진'을 훔치는 행위입니다. 이는 모델이 몇 개의 레이어로 구성되어 있는지, 각 레이어는 어떤 종류(e.g., Convolutional, Recurrent, Transformer)인지, 어떻게 연결되어 있는지 등의 하이퍼파..

보안 위협: 모델 역공격(Model Inversion Attack)

인공지능(AI) 모델의 보안 위협 중 하나인 모델 역공격(Model Inversion Attack)에 대해 소개하고 주요 사례를 설명합니다.모델 역공격 (Model Inversion Attack) 이란? 모델 역공격은 이미 학습이 완료된 AI 모델을 이용하여, 모델이 학습했던 원본 학습 데이터(training data)의 일부 또는 전체를 복원하려는 사이버 공격입니다. 일반적으로 AI 모델은 학습 데이터를 통해 특정 패턴을 학습하며, 이 과정에서 데이터의 민감한 정보가 모델 내부에 '기억'될 수 있습니다. 공격자는 이 점을 악용하여, 모델의 출력값(예: 예측 결과, 신뢰도 점수)을 분석하고 역추적함으로써 원본 데이터를 재구성해냅니다.주요 목표: 모델이 학습한 민감한 정보(개인정보, 의료 기록, 금융 데이..

혼란도(Perplexity, PPL)

혼란도는 언어 모델(LM)이 텍스트를 얼마나 잘 예측하는지 측정하는 표준 지표입니다. 이름 그대로, 모델이 특정 단어 시퀀스(문장)를 보고 얼마나 '당황했는지' 또는 '혼란스러워했는지'를 수치화한 것입니다.PPL이 낮을수록 (Less perplexed) 모델이 해당 텍스트의 구조를 잘 이해하고 다음 단어를 높은 확률로 정확하게 예측했다는 의미입니다. (성능이 좋음)PPL이 높을수록 (More perplexed) 모델이 해당 텍스트를 예측하는 데 어려움을 겪었으며, 실제 정답 단어에 매우 낮은 확률을 할당했다는 의미입니다. (성능이 나쁨)1. 직관적인 이해: "평균적인 선택지의 개수"PPL을 가장 쉽게 이해하는 방법은 "모델이 다음 단어를 예측할 때 평균적으로 느끼는 유효한 선택지의 개수"라고 생각하는 것..

TR-06. 트랜스포머 디코더(Decoder)

트랜스포머의 인코더(Encoder)가 입력 문장 전체를 읽고 문맥적 의미를 풍부하게 담은 '표현(representation)'을 생성하는 역할이라면, 디코더(Decoder)는 이 표현을 참조하여 우리가 원하는 출력 문장을 한 단어씩 순차적으로 생성하는 '생성기' 역할을 합니다. 디코더 역시 인코더와 마찬가지로 동일한 구조의 여러 개 레이어(논문에서는 6개)를 쌓아 올린 형태입니다. 하나의 디코더 레이어는 크게 세 부분으로 구성됩니다.1. 디코더 레이어의 핵심 구성 요소각 디코더 레이어는 다음과 같은 세 개의 하위 레이어(sub-layer)로 이루어져 있습니다.마스크드 멀티-헤드 어텐션 (Masked Multi-Head Attention)역할: 디코더가 '지금까지 생성한' 출력 단어들 간의 관계를 파악합니..

TR-05. 트랜스포머 인코더(Encoder)

트랜스포머 모델의 인코더는 입력 시퀀스(예: "나는 학생이다")를 받아, 각 단어(토큰)의 문맥적 의미를 풍부하게 담은 벡터 시퀀스로 변환하는 역할을 합니다. 이 벡터 시퀀스는 디코더가 번역이나 요약과 같은 작업을 수행하는 데 필요한 핵심 정보를 담고 있습니다. 인코더는 동일한 구조의 '인코더 레이어(Encoder Layer)'가 N개(오리지널 논문에서는 6개) 쌓여 있는 형태입니다.1. 인코더의 시작: 입력 처리본격적으로 인코더 레이어에 들어가기 전에, 입력 텍스트는 두 단계를 거칩니다.입력 임베딩 (Input Embedding):입력 문장의 각 단어(토큰)는 고유한 벡터로 변환됩니다. 예를 들어 "I", "am", "a", "student"라는 단어들이 각각 512차원의 벡터가 됩니다. 이 벡터는 단..

GPT-2의 자동회귀 학습 상세 설명

GPT-2(Generative Pre-trained Transformer 2)는 이름에서 알 수 있듯이 Transformer 아키텍처를 기반으로 한 생성형(Generative) 모델입니다. GPT-2의 핵심 동작 원리는 자동회귀(Autoregressive)입니다. 이 문서에서는 자동회귀의 개념이 무엇인지, 그리고 GPT-2가 학습 과정에서 이 원리를 어떻게 구현하는지, 특히 '룩-어헤드 마스크'의 역할을 중심으로 자세히 설명합니다.1. 자동회귀 (Autoregressive) 란?자동회귀(AR)는 간단히 말해 "자기 자신(Auto)을 입력으로 참조하여 다음 결과를 예측(Regressive)하는" 방식입니다. 언어 모델의 맥락에서 이는 다음에 올 단어를 예측하기 위해 이전에 생성된 모든 단어들을 입력으로 사..

BERT의 마스크드 언어 모델 상세 설명

BERT (Bidirectional Encoder Representations from Transformers)의 핵심 혁신 중 하나가 바로 이 '마스크드 언어 모델(Masked Language Model, MLM)'입니다. 이 개념이 왜 중요하고 어떻게 작동하는지 자세히 설명합니다.1. MLM이란 무엇이며 왜 필요한가?전통적인 언어 모델(예: GPT-1)은 문장을 왼쪽에서 오른쪽으로 순차적으로 처리하며 다음 단어를 예측하는 방식으로 학습되었습니다."나는 학교에 [?]" -> 모델이 "가서"를 예측이 방식은 문맥을 한쪽 방향(왼쪽)으로만 학습한다는 한계가 있습니다. 반면, BERT는 "깊은 양방향성(deep bidirectionality)"을 구현하고자 했습니다. 즉, 문장 내 모든 단어가 자신의 왼쪽과..

TR-04. 멀티-헤드 인코더-디코더 어텐션(Multi-head Encoder-Decoder Attention)

멀티-헤드 인코더-디코더 어텐션은 트랜스포머 디코더의 "두 번째 어텐션 층"에 위치하며, 디코더가 출력 단어를 생성할 때 인코더의 입력 문장 전체를 참고할 수 있게 해주는 핵심 다리 역할을 합니다. 이는 "크로스-어텐션(Cross-Attention)"이라고도 불립니다. 앞서 설명한 '셀프 어텐션'은 문장 내부의 관계를 파악하는 것이 목적이었다면, 이 '인코더-디코더 어텐션'은 서로 다른 두 문장(입력 문장과 출력 문장) 간의 관계를 파악하는 것이 목적입니다.핵심 차이점: Q, K, V의 출처가장 큰 차이점은 Query(Q), Key(K), Value(V)를 가져오는 위치입니다.Query (Q): 디코더의 이전 층(Masked Self-Attention 층)에서 옵니다. 의미: "내가 지금 번역/생성하려는..

DistilBERT + KorQuAD MLM 훈련 소요 시간 비교 (RTX 4090, T4, A100)

개요BERT 계열 언어 모델 중 하나인 DistilBERT(논문)로 미세 조정 훈련을 수행할 때 NVIDIA GPU 모델에 따라 훈련에 걸리는 시간이 어떻게 달라지는지 궁금했습니다. 실험에 사용한 모델과 데이터셋은 다음과 같습니다.기본 모델: distilbert-base-multilingual-cased데이터셋: KorQuAD 1.0미세 조정 훈련은 아래의 작업을 목표로 하였습니다.Masked Language Model (MLM) (참고: Fine-tuning a masked language model)GPU 모델 사양훈련 소요 시간 비교를 위해 사용한 NVIDIA GPU 모델은 아래 표와 같습니다.GPU 모델RTX 4090T4A100 (40GB 기준)CUDA 코어 수16,384개2,560개6,912개T..