내가 볼려고 만든 방송대 기말 예상 문제 (컴퓨터과학과 딥러닝)

기존 정리해둔 자체 필기본을 제미나이에 돌려서 시험에 출제될 가능성이 높은 예상 문제 50선(정답 포함)을 정리하였습니다.(답 맞는지는 따로 체크 안해서 공부 시 맞는 내용인지 체크하면서 보시길 바랍니다.)

1. 파트별 상세 핵심 요약 (시험 공부용)
Part 1. 신경망 기초 (Neural Networks Basics)
* 퍼셉트론과 한계:
   * 초기 퍼셉트론은 선형 결정 경계만 가질 수 있어 **XOR 문제(비선형 문제)**를 해결하지 못함.
   * 이를 해결하기 위해 **다층 퍼셉트론(MLP)**과 역전파(Backpropagation) 알고리즘이 등장함.
* 활성함수 (Activation Function):
   * Sigmoid: 0 \sim 1 사이 값 출력. 층이 깊어지면 미분값이 0에 가까워지는 기울기 소실(Gradient Vanishing) 문제 발생.
   * ReLU: x>0이면 그대로, x<0이면 0. 기울기 소실 문제를 해결하여 심층망 학습의 표준이 됨. 단, 0 이하에서 뉴런이 죽는 Dying ReLU 문제 존재.
   * Softmax: 다중 클래스 분류의 출력층에서 사용. 출력의 총합이 1이 되도록 정규화함.
* 학습 원리:
   * 손실 함수(Loss Function): 예측값과 실제값의 차이(예: MSE, Cross-Entropy).
   * 경사 하강법(Gradient Descent): 손실을 줄이는 방향(기울기의 반대 방향)으로 가중치(w)와 바이어스(b)를 업데이트함.

Part 2. 딥러닝 프레임워크 (TensorFlow/Keras)
* 텐서(Tensor): 다차원 배열.
   * Rank 0(스칼라), Rank 1(벡터), Rank 2(행렬), Rank 3(3차원 배열).
* 실행 모드:
   * 지연 실행(Lazy/Graph): 계산 그래프를 미리 정의하고 실행. 속도가 빠르고 최적화에 유리.
   * 즉시 실행(Eager): 파이썬처럼 즉시 연산. 디버깅이 쉽고 직관적 (TensorFlow 2.x 기본).
* 자동 미분: tf.GradientTape 컨텍스트 안에서 연산을 기록하고 .gradient()를 호출하여 미분값을 구함.
Part 3. CNN (합성곱 신경망)
* 구조적 특징:
   * Conv2D: 필터(커널)를 사용하여 이미지의 **특징(Feature Map)**을 추출. 파라미터 공유를 통해 완전연결층 대비 학습 파라미터 수를 획기적으로 줄임.
   * Pooling: 특징 맵의 크기를 줄여(Downsampling) 연산량을 감소시키고, 위치 변화에 불변하는 특징을 만듦 (Max Pooling, Average Pooling).
* 주요 아키텍처:
   * AlexNet: ReLU와 Dropout을 처음 도입하여 딥러닝 붐을 일으킴.
   * VGGNet: 3x3 작은 필터를 여러 번 중첩하여 비선형성을 높이고 파라미터 수를 줄임.
   * GoogLeNet (Inception): 1x1 합성곱을 사용하여 채널 수를 줄여 연산량을 감소시킴 (Bottleneck 구조).
   * ResNet: **잔차 연결(Skip Connection, F(x) + x)**을 도입하여 층이 깊어져도 학습이 잘 되도록 함.
Part 4. 생성 모델 (Generative Models)
* Autoencoder (AE):
   * 입력 \to 인코더 \to 잠재 벡터(Latent Vector) \to 디코더 \to 출력 구조. 입력을 압축하고 복원하며 특징을 학습.
* GAN (Generative Adversarial Networks):
   * 생성자(Generator): 가짜 데이터를 생성하여 판별자를 속이려 함.
   * 판별자(Discriminator): 진짜와 가짜를 구별하려 함.
   * 두 네트워크가 적대적으로 경쟁하며 학습.
Part 5. 순환 신경망 (RNN) & Transformer
* RNN: 이전 시점의 은닉 상태(h_{t-1})를 현재 시점(t)의 입력으로 사용. 시계열 데이터에 적합하나, 길이가 길어지면 장기 의존성(Long-term dependency) 문제 발생.
* LSTM/GRU: Cell State와 Gate(입력, 망각, 출력)를 도입하여 장기 의존성 문제 해결.
* Transformer:
   * RNN을 제거하고 Self-Attention만으로 전체 시퀀스를 한 번에 처리(병렬화 가능).
   * Positional Encoding: 순서 정보가 없으므로 위치 정보를 더해줌.
   * Attention(Q, K, V): Query와 Key의 유사도를 구해 Value에 가중치를 둠.


2. 기말고사 대비 예상 문제 50선 (정답 포함)
[제1장: 신경망 개요 & 기초]
1. (단답형) 입력층과 출력층 사이에 있으며, 데이터의 특징을 추출하고 변환하는 층을 무엇이라 하는가?
> 정답: 은닉층 (Hidden Layer)
>
2. (OX 퀴즈) 단층 퍼셉트론(Single-layer Perceptron)으로 XOR 문제를 해결할 수 있다.
> 정답: X (해결할 수 없음, 다층 퍼셉트론이 필요함)
>
3. (객관식) 다음 중 딥러닝에서 '기울기 소실(Gradient Vanishing)' 문제를 완화하기 위해 가장 널리 사용되는 활성함수는?
① Sigmoid  ② Tanh  ③ ReLU  ④ Step Function
> 정답: ③ ReLU
>
4. (단답형) 다중 클래스 분류 문제에서 신경망의 마지막 출력층에 주로 사용되며, 출력값의 합을 1로 만들어주는 활성함수는?
> 정답: Softmax
>
5. (서술형) 경사 하강법(Gradient Descent)에서 '학습률(Learning Rate)'이 너무 클 때 발생할 수 있는 문제는?
> 정답: 최솟값에 수렴하지 못하고 발산(overshooting)할 수 있다.
>
6. (계산형) 입력 x=[1, 2], 가중치 w=[0.5, 0.5], 바이어스 b=0, 활성함수가 ReLU일 때 출력값은?
> 정답: 1.5  (식: 1*0.5 + 2*0.5 + 0 = 1.5, ReLU(1.5) = 1.5)
>
7. (단답형) 모델이 학습 데이터에만 과도하게 최적화되어 새로운 데이터에 대한 예측 성능이 떨어지는 현상은?
> 정답: 과적합 (Overfitting)
>
8. (객관식) 다음 중 과적합을 방지하기 위한 기법이 아닌 것은?
① Dropout  ② Batch Normalization  ③ Data Augmentation  ④ Learning Rate 증가
> 정답: ④ Learning Rate 증가 (학습률 증가는 과적합 방지와 직접 관련 없음, 오히려 발산 위험)
>
9. (단답형) 학습 과정에서 전체 데이터셋을 한 번 학습하는 단위를 무엇이라 하는가?
> 정답: 에폭 (Epoch)
>
10. (단답형) 가중치 업데이트를 위해 전체 데이터가 아닌 일부 데이터 묶음을 사용하는 방식을 무엇이라 하는가?
> 정답: 미니배치 (Mini-batch)
>
[제2장: 딥러닝 프레임워크 (TensorFlow)]
11. (단답형) TensorFlow에서 데이터를 담는 기본 자료구조로, 다차원 배열을 의미하는 용어는?
> 정답: 텐서 (Tensor)
>
12. (객관식) 텐서의 Rank(랭크)가 0인 것은 무엇인가?
① 스칼라 (Scalar)  ② 벡터 (Vector)  ③ 행렬 (Matrix)  ④ 3차원 배열
> 정답: ① 스칼라
>
13. (코드형) TensorFlow에서 자동 미분을 수행하기 위해 사용하는 API는?
with tf.__________() as tape:
> 정답: GradientTape
>
14. (OX 퀴즈) TensorFlow의 '즉시 실행(Eager Execution)' 모드는 그래프를 컴파일하지 않고 파이썬 코드를 즉시 실행한다.
> 정답: O
>
15. (단답형) Keras에서 층(Layer)을 순차적으로 쌓아 모델을 만들 때 사용하는 클래스는?
> 정답: Sequential
>
16. (코드형) 모델 학습을 시작하기 위해 호출하는 메소드는? model.____(x_train, y_train, epochs=10)
> 정답: fit
>
17. (코드형) 모델의 구조(Layer 구성, 파라미터 개수 등)를 요약해서 출력해주는 메소드는?
> 정답: summary()
>
18. (단답형) Dense 층과 같이 모든 입력 뉴런이 출력 뉴런과 연결된 층을 무엇이라 하는가?
> 정답: 완전연결층 (Fully Connected Layer)
>
19. (객관식) 모델 컴파일 시 optimizer 인자에 들어갈 수 없는 것은?
① SGD  ② Adam  ③ RMSprop  ④ MSE
> 정답: ④ MSE (MSE는 손실 함수임)
>
20. (단답형) 텐서플로 2.0부터 텐서플로의 공식 고수준 API로 통합된 라이브러리 이름은?
> 정답: Keras
>
[제3장: CNN (합성곱 신경망)]
21. (단답형) 이미지의 공간적 특징(Spatial Feature)을 유지하면서 특징을 추출하는 신경망 층은?
> 정답: 합성곱층 (Convolution Layer / Conv2D)
>
22. (계산형) 입력 크기 4 \times 4, 필터 크기 3 \times 3, 스트라이드 1, 패딩 없음(Valid)일 때 출력 특징 맵의 크기는?
(공식: (N - F) / S + 1)
> 정답: 2 \times 2
>
23. (단답형) 합성곱 연산 결과인 특징 맵의 크기를 줄이고, 중요 특징을 강조하는 과정은?
> 정답: 풀링 (Pooling)
>
24. (객관식) 다음 중 CNN의 구성 요소가 아닌 것은?
① Convolution Layer  ② Pooling Layer  ③ Recurrent Layer  ④ Fully Connected Layer
> 정답: ③ Recurrent Layer (RNN의 요소)
>
25. (단답형) 입력 이미지의 가장자리에 0과 같은 값을 채워 넣어, 합성곱 후에도 이미지 크기가 줄어들지 않게 하는 기법은?
> 정답: 패딩 (Padding)
>
26. (서술형) GoogLeNet(Inception) 모델에서 **1x1 합성곱(Convolution)**을 사용하는 주된 이유는?
> 정답: 채널 수를 줄여 연산량(파라미터 수)을 감소시키기 위해 (차원 축소).
>
27. (단답형) ResNet에서 층이 깊어질수록 학습이 어려워지는 문제를 해결하기 위해 입력값을 출력값에 더해주는 구조(F(x) + x)를 무엇이라 하는가?
> 정답: 잔차 연결 (Residual Connection / Skip Connection)
>
28. (단답형) 이미지의 특정 영역에서 가장 큰 값만 남기는 풀링 방식은?
> 정답: 맥스 풀링 (Max Pooling)
>
29. (객관식) VGGNet의 핵심적인 구조적 특징은?
① 7x7 큰 필터 사용  ② 3x3 작은 필터의 연속적 사용  ③ Inception 모듈 사용  ④ Skip Connection 사용
> 정답: ② 3x3 작은 필터의 연속적 사용
>
30. (단답형) CNN의 마지막 부분에서 2차원 특징 맵을 1차원 벡터로 변환하는 층은?
> 정답: Flatten
>
[제4장: 생성 모델 (Autoencoder & GAN)]
31. (단답형) 입력 데이터를 저차원의 잠재 벡터(Latent Vector)로 압축하는 Autoencoder의 앞부분을 무엇이라 하는가?
> 정답: 인코더 (Encoder)
>
32. (단답형) Autoencoder는 입력 데이터와 출력 데이터가 (같게 / 다르게) 되도록 학습한다.
> 정답: 같게 (복원 목적)
>
33. (단답형) GAN에서 '가짜' 데이터를 생성하여 판별자를 속이려는 네트워크는?
> 정답: 생성자 (Generator)
>
34. (단답형) GAN에서 입력 데이터가 '진짜'인지 '가짜'인지 구별하는 네트워크는?
> 정답: 판별자 (Discriminator)
>
35. (OX 퀴즈) GAN 학습의 목표는 생성자가 판별자를 완벽하게 속여 판별 확률이 0.5가 되도록 하는 것이다.
> 정답: O
>
[제5장: 순환 신경망 (RNN)]
36. (단답형) 시계열 데이터나 자연어와 같은 순차적 데이터(Sequence Data) 처리에 특화된 신경망은?
> 정답: RNN (순환 신경망)
>
37. (서술형) 기본 RNN에서 시퀀스 길이가 길어질수록 앞쪽의 정보가 뒤쪽까지 전달되지 못하는 문제를 무엇이라 하는가?
> 정답: 장기 의존성 문제 (Long-term Dependency) 또는 기울기 소실 (Vanishing Gradient)
>
38. (객관식) LSTM(Long Short-Term Memory)의 핵심 구성 요소인 3가지 게이트에 해당하지 않는 것은?
① 입력 게이트  ② 망각 게이트  ③ 출력 게이트  ④ 잔차 게이트
> 정답: ④ 잔차 게이트
>
39. (단답형) LSTM보다 구조가 간단하며, 셀 상태(Cell State) 없이 은닉 상태(Hidden State)만으로 정보를 전달하는 모델은?
> 정답: GRU
>
40. (단답형) RNN을 사용하여 "나는 학교에" 다음에 올 단어로 "간다"를 예측하는 것과 같은 모델을 무엇이라 하는가?
> 정답: 언어 모델 (Language Model)
>
[제6장: 트랜스포머 (Transformer)]
41. (단답형) 트랜스포머 모델에서 RNN의 순환 구조를 대체하기 위해, 입력 시퀀스 내 단어 간의 관계를 계산하는 메커니즘은?
> 정답: 어텐션 (Attention) 또는 셀프 어텐션 (Self-Attention)
>
42. (단답형) 트랜스포머는 데이터를 순차적으로 처리하지 않으므로, 단어의 순서 정보를 주기 위해 입력에 더해주는 값은?
> 정답: 위치 인코딩 (Positional Encoding)
>
43. (객관식) 어텐션 메커니즘에서 사용되는 세 가지 주요 벡터가 아닌 것은?
① Query (Q)  ② Key (K)  ③ Value (V)  ④ State (S)
> 정답: ④ State (S)
>
44. (서술형) 트랜스포머의 인코더와 디코더 구조 중, BERT는 어떤 부분을 사용하여 만든 모델인가?
> 정답: 인코더 (Encoder)
>
45. (단답형) 트랜스포머 디코더 부분에서 사용된 GPT 모델은 어떤 작업에 특화되어 있는가?
> 정답: 텍스트 생성 (다음 단어 예측)
>
[종합 및 응용]
46. (코드형) tf.keras.layers.Conv2D(32, (3,3), activation='relu')에서 숫자 32가 의미하는 것은?
> 정답: 필터(커널)의 개수 (또는 출력 채널의 수)
>
47. (단답형) 학습 데이터가 부족할 때, 이미지를 회전하거나 잘라내어 데이터 수를 늘리는 기법은?
> 정답: 데이터 증강 (Data Augmentation)
>
48. (단답형) 훈련 조기 종료를 위해 fit 함수에 사용하는 콜백(Callback) 함수는?
> 정답: EarlyStopping
>
49. (단답형) 모델이 예측한 값과 실제 정답이 얼마나 일치하는지 평가하기 위해 분류 문제에서 주로 사용하는 지표는?
> 정답: 정확도 (Accuracy)
>
50. (서술형) 배치 정규화(Batch Normalization)를 사용하는 주된 이유는?
> 정답: 학습 과정을 안정화하고(Internal Covariate Shift 감소), 학습 속도를 높이며, 과적합을 억제하기 위해.
>

좋은 결과 있으시길 바랍니다!

#방송대 #컴퓨터과학과 #딥러닝 #공부요약

반응형