3차 성취도 평가 오답노트 🌈

해피해피슈크림·2025년 7월 1일
  • 교과목 : LLM
  • 평가내용 : 자연어 데이터 준비, 자연어 딥러닝, LLM, 프롬프트 엔지니어링, 파인튜닝, 자연어-이미지 멀티모달
  • 평가일시 : 6/30(월) 8교시 (17:00) 진행

🐰 자연어 처리

1. 정규 표현식 메타문자

다음 중 정규 표현식 메타문자 중 문자 개수를 표현하는 것과 관련 없는 것은 무엇인가요?

  1. ^
  2. +
  3. ?
  4. *

정답: 1. ^

풀이:

  • ^

    • 문자 개수와는 관련이 없습니다.
    • 정규 표현식에서 문자열의 시작을 의미합니다.
    • 예시: ^abc는 "abc"로 시작하는 문자열과 매치됩니다.
  • +

    • 바로 앞 문자가 1번 이상 반복됨을 의미합니다.
    • 예시: a+는 "a", "aa", "aaa" 등과 매치됩니다.
  • ?

    • 바로 앞 문자가 0번 또는 1번 나타남을 의미합니다.
    • 예시: a?는 "a" 또는 ""(없음)과 매치됩니다.
  • *

    • 바로 앞 문자가 0번 이상 반복됨을 의미합니다.
    • 예시: a*는 "", "a", "aa", "aaa" 등과 매치됩니다.

따라서, 문자 개수(반복 횟수)와 관련 없는 메타문자는 ^입니다.


2. 토큰화 방식

다음 중 subword 기반 토큰화 방법이 아닌 것은 무엇인가요?

  1. Byte-Pair Encoding (BPE)
  2. Unigram
  3. WordPiece
  4. Lemmatization

정답: 4. Lemmatization

풀이:

  • Byte-Pair Encoding (BPE), Unigram, WordPiece
    → 모두 subword 기반 토큰화 방법입니다.
    이들은 단어를 더 작은 subword 단위로 분해하여 희귀 단어 처리와 어휘 크기 감소에 효과적입니다.

  • Lemmatization
    단어를 그 기본형(lemma)으로 변환하는 전처리 기법입니다.
    예를 들어, "running", "ran", "runs"를 모두 "run"으로 변환합니다.
    이는 토큰화(tokenization)와는 다르며, subword 단위로 분해하지 않습니다.**

따라서, subword 기반 토큰화 방법이 아닌 것
4. Lemmatization입니다.


3. 토크나이저

다음 중 토크나이저(tokenizer)의 역할과 거리가 먼 것을 고르세요.

  1. 어휘 사전(vocab)을 구성한다.
  2. 각 단어(토큰)과 그 토큰의 index를 연결해서 저장한다.
  3. 문장의 시작이나 알수없는 토큰등을 표현하는 특수 토큰(special token)들을 가질 수 있다.
  4. 각 단어(토큰)들의 문맥적 의미를 저장한다.

정답: 4. 각 단어(토큰)들의 문맥적 의미를 저장한다.

풀이:

  • 1. 어휘 사전(vocab)을 구성한다.
    → 토크나이저는 입력 데이터에서 토큰을 추출해 중복 없이 어휘 사전(vocabulary)을 만듭니다.

  • 2. 각 단어(토큰)과 그 토큰의 index를 연결해서 저장한다.
    → 각 토큰에 고유한 정수 ID(인덱스)를 부여하고, 이를 저장합니다. 모델 입력을 위해 필수적인 과정입니다.

  • 3. 문장의 시작이나 알수없는 토큰등을 표현하는 특수 토큰(special token)들을 가질 수 있다.
    → [CLS], [SEP], [UNK] 등 특수 토큰을 정의하고 관리하는 것도 토크나이저의 역할입니다.

  • 4. 각 단어(토큰)들의 문맥적 의미를 저장한다.
    → 토크나이저는 단어(토큰)의 문맥적 의미를 저장하지 않습니다.
    문맥적 의미(semantic meaning)는 토크나이저가 아니라, 실제 딥러닝 모델(예: Transformer, BERT 등)이 학습 과정에서 파악하고 저장합니다.

따라서, 토크나이저의 역할과 거리가 먼 것
4. 각 단어(토큰)들의 문맥적 의미를 저장한다.입니다.


4. 단어 임베딩 모델

다음 중 count 기반 언어 모델은 무엇인지 고르세요.

  1. Word2Vec
  2. Glove
  3. TF-IDF
  4. Fastext

정답: 3. TF-IDF

풀이:

위 모델은 모두 단어를 임베딩(벡터화)하는 데 사용되는 모델입니다.
TF-IDF는 빈도 기반 임베딩, Word2Vec, Glove, Fastext는 의미 기반(분산 표현) 임베딩입니다.

  • TF-IDF
    count 기반 언어 모델입니다.

    • 단어의 빈도수(Term Frequency)와 역문서 빈도수(Inverse Document Frequency)를 활용해 각 단어의 중요도를 계산합니다.
    • 이 방식은 단어의 등장 횟수(카운트)를 기반으로 벡터를 생성하며, 자연어를 컴퓨터가 이해할 수 있도록 임베딩하는 데 사용됩니다.
  • Word2Vec, Glove, Fastext
    → 모두 신경망 기반 예측 모델로, 주변 단어 정보를 활용해 단어의 의미를 벡터 공간에 학습합니다.

    • 빈도수 카운트가 아니라, 단어의 문맥적 관계를 바탕으로 임베딩을 생성합니다.

5. 단어 임베딩 모델 (2)

word2vec 알고리즘 중 중심단어를 이용해 주변단어를 예측 하는 모델은 무엇인가?

  1. skip gram
  2. cbow
  3. fastext
  4. glove

정답: 1. skip gram

풀이:

  • skip gram
    → Word2Vec의 skip-gram 모델은 중심 단어(입력 단어)를 이용해 주변 단어(문맥 단어)를 예측하는 방식입니다.
    예를 들어, "cat"이 중심 단어라면, "the", "sat", "on", "the", "mat" 등 주변 단어들을 예측하는 것이 목표입니다.

  • cbow
    → 반대로, 주변 단어(문맥 단어)들을 입력으로 받아 중심 단어를 예측합니다.

  • fastext, glove
    → 둘 다 Word2Vec의 변형 또는 별도의 임베딩 모델로, 질문의 조건(중심 단어로 주변 단어 예측)과 직접적인 관련은 없습니다.

따라서, 중심단어를 이용해 주변단어를 예측하는 Word2Vec 모델
1. skip gram입니다.


🐻‍❄️ LLM

1. Transformer

Transformer 모델의 핵심 구성 요소로 알맞지 않은 것은 무엇인지 고르세요.

  1. Self-Attention
  2. Multi-Head Attention
  3. Recurrent Layer
  4. Feed-Forward layer

정답: 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입니다.


🦝 프롬프트 엔지니어링

1. Output Parser

다음 Output Parser 중 Pydantic을 이용해 schema를 정의하지 않는 것은 무엇인가요?

  1. StrOutputParser
  2. JsonOutputParser
  3. PydanticOutputParser
  4. YamlOutputParser

정답: 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입니다.


🐼 파인튜닝

1. PEFT

다음 중 PEFT 기법이 아닌 것은?

  1. QLoRA
  2. P-tuning
  3. Prompt Tuning
  4. Full Fine Tuning

정답: 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입니다.

0개의 댓글