다음 중 정규 표현식 메타문자 중 문자 개수를 표현하는 것과 관련 없는 것은 무엇인가요?
^+?*정답: 1. ^
풀이:
^
^abc는 "abc"로 시작하는 문자열과 매치됩니다.+
a+는 "a", "aa", "aaa" 등과 매치됩니다.?
a?는 "a" 또는 ""(없음)과 매치됩니다.*
a*는 "", "a", "aa", "aaa" 등과 매치됩니다.따라서, 문자 개수(반복 횟수)와 관련 없는 메타문자는 ^입니다.
다음 중 subword 기반 토큰화 방법이 아닌 것은 무엇인가요?
정답: 4. Lemmatization
풀이:
Byte-Pair Encoding (BPE), Unigram, WordPiece
→ 모두 subword 기반 토큰화 방법입니다.
이들은 단어를 더 작은 subword 단위로 분해하여 희귀 단어 처리와 어휘 크기 감소에 효과적입니다.
Lemmatization
→ 단어를 그 기본형(lemma)으로 변환하는 전처리 기법입니다.
예를 들어, "running", "ran", "runs"를 모두 "run"으로 변환합니다.
이는 토큰화(tokenization)와는 다르며, subword 단위로 분해하지 않습니다.**
따라서, subword 기반 토큰화 방법이 아닌 것은
4. Lemmatization입니다.
다음 중 토크나이저(tokenizer)의 역할과 거리가 먼 것을 고르세요.
정답: 4. 각 단어(토큰)들의 문맥적 의미를 저장한다.
풀이:
1. 어휘 사전(vocab)을 구성한다.
→ 토크나이저는 입력 데이터에서 토큰을 추출해 중복 없이 어휘 사전(vocabulary)을 만듭니다.
2. 각 단어(토큰)과 그 토큰의 index를 연결해서 저장한다.
→ 각 토큰에 고유한 정수 ID(인덱스)를 부여하고, 이를 저장합니다. 모델 입력을 위해 필수적인 과정입니다.
3. 문장의 시작이나 알수없는 토큰등을 표현하는 특수 토큰(special token)들을 가질 수 있다.
→ [CLS], [SEP], [UNK] 등 특수 토큰을 정의하고 관리하는 것도 토크나이저의 역할입니다.
4. 각 단어(토큰)들의 문맥적 의미를 저장한다.
→ 토크나이저는 단어(토큰)의 문맥적 의미를 저장하지 않습니다.
문맥적 의미(semantic meaning)는 토크나이저가 아니라, 실제 딥러닝 모델(예: Transformer, BERT 등)이 학습 과정에서 파악하고 저장합니다.
따라서, 토크나이저의 역할과 거리가 먼 것은
4. 각 단어(토큰)들의 문맥적 의미를 저장한다.입니다.
다음 중 count 기반 언어 모델은 무엇인지 고르세요.
정답: 3. TF-IDF
풀이:
위 모델은 모두 단어를 임베딩(벡터화)하는 데 사용되는 모델입니다.
TF-IDF는 빈도 기반 임베딩, Word2Vec, Glove, Fastext는 의미 기반(분산 표현) 임베딩입니다.
TF-IDF
→ count 기반 언어 모델입니다.
Word2Vec, Glove, Fastext
→ 모두 신경망 기반 예측 모델로, 주변 단어 정보를 활용해 단어의 의미를 벡터 공간에 학습합니다.
word2vec 알고리즘 중 중심단어를 이용해 주변단어를 예측 하는 모델은 무엇인가?
정답: 1. skip gram
풀이:
skip gram
→ Word2Vec의 skip-gram 모델은 중심 단어(입력 단어)를 이용해 주변 단어(문맥 단어)를 예측하는 방식입니다.
예를 들어, "cat"이 중심 단어라면, "the", "sat", "on", "the", "mat" 등 주변 단어들을 예측하는 것이 목표입니다.
cbow
→ 반대로, 주변 단어(문맥 단어)들을 입력으로 받아 중심 단어를 예측합니다.
fastext, glove
→ 둘 다 Word2Vec의 변형 또는 별도의 임베딩 모델로, 질문의 조건(중심 단어로 주변 단어 예측)과 직접적인 관련은 없습니다.
따라서, 중심단어를 이용해 주변단어를 예측하는 Word2Vec 모델은
1. skip gram입니다.
Transformer 모델의 핵심 구성 요소로 알맞지 않은 것은 무엇인지 고르세요.
정답: 3. Recurrent Layer
풀이:
Self-Attention
→ 입력 시퀀스 내 각 토큰이 다른 모든 토큰과의 관계(의존성)를 동적으로 계산하는 핵심 메커니즘입니다.
→ Transformer의 주요 구성 요소입니다.
Multi-Head Attention
→ 여러 개의 self-attention을 병렬로 수행해 다양한 관계를 동시에 학습할 수 있게 하는 구조입니다.
→ Transformer의 필수 구성 요소입니다.
Feed-Forward layer
→ 각 위치별로 독립적으로 적용되는 완전 연결 신경망 계층입니다.
→ Self-Attention 뒤에 항상 따라오는 핵심 구성 요소입니다.
Recurrent Layer
→ 순환 신경망(RNN, LSTM, GRU 등)에서 사용하는 계층으로, 이전 상태를 기억하며 순차적으로 데이터를 처리합니다.
→ Transformer는 RNN 계열의 Recurrent Layer를 사용하지 않고, attention 메커니즘과 feed-forward layer만으로 시퀀스를 처리합니다.
따라서, Transformer 모델의 핵심 구성 요소로 알맞지 않은 것은
3. Recurrent Layer입니다.
다음 Output Parser 중 Pydantic을 이용해 schema를 정의하지 않는 것은 무엇인가요?
정답: 1. StrOutputParser
풀이:
StrOutputParser
→ 단순히 LLM의 출력을 문자열(string)로 파싱하는 파서입니다.
→ Pydantic을 이용해 schema를 정의하지 않습니다.
JsonOutputParser
→ 출력 결과를 JSON으로 파싱하며, Pydantic 모델(BaseModel)로 구조화할 수 있습니다.
→ Pydantic schema를 정의해 사용합니다.
PydanticOutputParser
→ 이름 그대로, 반드시 Pydantic의 BaseModel로 schema를 정의해야 합니다.
YamlOutputParser
→ 출력 결과를 YAML로 파싱하며, 역시 Pydantic 모델로 schema를 정의해 사용합니다.
따라서, Pydantic을 이용해 schema를 정의하지 않는 Output Parser는
1. StrOutputParser입니다.
다음 중 PEFT 기법이 아닌 것은?
정답: 4. Full Fine Tuning
풀이:
PEFT(파라미터 효율적 미세조정, Parameter-Efficient Fine-Tuning)는 대형 사전학습 모델의 전체 파라미터를 모두 조정하지 않고, 일부 파라미터만 선택적으로 미세조정하는 기법입니다.
대표적으로 LoRA, QLoRA, Prompt Tuning, P-tuning, Adapter Tuning 등이 있습니다.
1. QLoRA
→ LoRA(저차원 적응)에 양자화(quantization)를 결합한 PEFT 기법입니다.
2. P-tuning
→ 연속적인 프롬프트 임베딩을 학습하는 PEFT 기법입니다.
3. Prompt Tuning
→ 입력 프롬프트에 해당하는 임베딩만 학습하는 PEFT 기법입니다.
4. Full Fine Tuning
→ 모델의 전체 파라미터를 모두 업데이트하는 방식으로, PEFT의 정의와는 반대되는 전통적인 미세조정 방법입니다.
→ 파라미터 효율적이지 않으며, 많은 연산 자원과 시간이 필요합니다.
따라서, PEFT 기법이 아닌 것은
4. Full Fine Tuning입니다.