학습자라면 각 편의 확인 문제를 먼저 풀어 본 뒤 확인하세요. 강사·튜터는 편마다 확인 문제의 정답과 채점 기준, Colab·실험 과제의 예시 답안을 참고해 수업에 맞게 조정해 쓰면 됩니다. 예시 결과의 숫자는 scikit-learn 1.8(CPU) 또는 각 실험실의 기본 데이터에서 실행한 값입니다.
문제 1 규칙 기반 분류기가 학습 데이터에서 새 패턴을 발견하면 어떻게 되나요?
해설 규칙 기반 모델에는 학습 단계가 없습니다. 사람이 규칙을 고치기 전까지 판단은 그대로입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 2 규칙이 "x₁ > 0.5 그리고 x₂ > 0.4 → A, 그 외 B"일 때 x = (0.6, 0.2)의 답은?
해설 x₁ > 0.5는 참이지만 x₂ > 0.4가 거짓이라, "그리고" 조건 전체가 거짓이 되어 기본값 B입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 3 k = 1이면 경계는 어떻게 되기 쉬운가요?
해설 가장 가까운 한 점만 보므로 잡음 섞인 점 하나가 주변 판단을 통째로 바꿉니다. 과적합의 전형입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 4 키(cm)와 몸무게(kg)를 그대로 넣고 KNN을 쓰면 생기는 문제는?
해설 거리는 숫자 크기에 민감합니다. 표준화 같은 스케일링으로 특성의 범위를 맞춰야 합니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 5 의사결정나무의 결정 경계가 항상 축에 평행한 이유는?
해설 한 번에 한 특성만 보고 자르므로 경계선은 x₁ = t 또는 x₂ = t 꼴, 즉 축에 평행한 선입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 6 칸에 A 6개, B 4개가 있을 때 지니 불순도는?
해설 1 − (0.6² + 0.4²) = 1 − (0.36 + 0.16) = 0.48입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 7 퍼셉트론이 예측을 맞혔을 때 가중치는?
해설 맞히면 y − ŷ = 0이므로 w ← w + 0 입니다. 틀린 예시에서만 배웁니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 8 퍼셉트론 하나로 절대 풀 수 없는 문제는?
해설 결정 경계가 직선 하나뿐이라 XOR처럼 대각선 방향으로 섞인 데이터는 나눌 수 없습니다. 층을 쌓아야 풀립니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 9 z = 0일 때 σ(z)는?
해설 e⁰ = 1이므로 1/(1+1) = 0.5입니다. 그래서 z = 0인 곳이 결정 경계가 됩니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 10 로지스틱 회귀의 결정 경계 모양은?
해설 확률이 0.5가 되는 곳은 w·x + b = 0이고, 이는 직선(고차원에서는 초평면)입니다. 확률 출력이 있을 뿐 경계는 퍼셉트론과 같은 모양입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 11 SVM의 경계를 결정하는 점은?
해설 목적 함수에 영향을 주는 것은 마진에 닿거나 침범한 점뿐입니다. 멀리 있는 점은 지워도 경계가 같습니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 12 C를 크게 하면?
해설 C는 벌점의 무게입니다. 크면 틀리는 것을 싫어해 도로를 좁히고, 작으면 넓은 도로를 위해 침범을 허용합니다. 아래 C 조절 그림에서 확인할 수 있습니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 13 커널 트릭의 핵심은?
해설 고차원 좌표 대신 K(xᵢ, x)만 계산해도 고차원에서의 내적과 같은 결과를 얻습니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 14 RBF 커널에서 γ를 아주 크게 하면?
해설 언덕이 좁고 뾰족해져 각 점 주변만 따로 칠하게 됩니다. 위 그림에서 γ를 60으로 올려 확인해 보세요.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 15 은닉층에서 활성화 함수 g를 모두 빼면?
해설 W₃(W₂(W₁x)) = (W₃W₂W₁)x이므로 하나의 선형 변환으로 합쳐집니다. 꺾는 함수가 있어야 곡선 경계가 생깁니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 16 딥러닝의 출력층(소프트맥스)은 어떤 모델과 수식이 같나요?
해설 마지막 층은 입력이 h(x)라는 점만 다를 뿐 소프트맥스 회귀와 같은 식입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
1편 10장 "물고기 7종으로 모델 비교하기" 코드에서 KNN의 k를 1, 5, 15로 바꿔 5겹 교차검증 정확도를 비교하라.
for k in [1, 5, 15]:
knn = make_pipeline(StandardScaler(), KNeighborsClassifier(n_neighbors=k))
s = cross_val_score(knn, X, y, cv=cv, groups=groups) # 같은 원본 묶음은 한쪽에만
print(f"k={k:<3} {s.mean():.3f} ± {s.std():.3f}")예시 결과 (scikit-learn 1.8, CPU): k = 1 → 0.920 ± 0.019, k = 5 → 0.900 ± 0.033, k = 15 → 0.871 ± 0.035.
예시 해석 이 데이터에서는 k가 작을수록 점수가 높았다. 종 사이 경계가 촘촘해 가까운 이웃 하나가 가장 믿을 만하기 때문이다. 다만 k = 1과 k = 5의 차이(0.02)는 표준편차와 비슷해 "확실히 낫다"고 말하기는 어렵다.
채점 포인트 ① groups=groups를 유지했는가 ② 평균과 표준편차를 함께 보고했는가 ③ 차이가 표준편차 안이면 단정하지 않았는가.
체형 비율(높이 ÷ 몸길이)과 꼬리 비율((length3 − length2) ÷ length2)을 만들어 로지스틱 회귀와 랜덤 포레스트를 다시 비교하라.
df["height_ratio"] = df["height_cm"] / df["length2_cm"]
df["tail_ratio"] = (df["length3_cm"] - df["length2_cm"]) / df["length2_cm"]
cols = FEATS + ["height_ratio", "tail_ratio"]예시 결과 특성 6개일 때 로지스틱 회귀 0.899 ± 0.036, 랜덤 포레스트 0.909 ± 0.034 → 특성 8개일 때 0.980 ± 0.014, 0.984 ± 0.014.
채점 포인트 ① 비율을 행 단위로 계산했는가 ② 같은 교차검증 설정으로 비교했는가 ③ "모델 교체보다 특성 추가의 효과가 컸다"는 결론을 수치로 뒷받침했는가.
문제 1 소수 클래스가 5%인 데이터에서 "모두 다수 클래스"라고 답하는 모델의 정확도는?
해설 100개 중 95개를 맞히니 정확도 95%입니다. 하지만 소수 클래스는 하나도 못 찾았으므로 재현율은 0입니다. 불균형 데이터에서는 정확도만 보면 안 됩니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 2 StandardScaler를 전체 데이터에 먼저 적용한 뒤 train_test_split을 하면?
해설 스케일러가 시험 데이터까지 보고 평균을 계산했기 때문입니다. 스케일러를 Pipeline에 넣어 교차검증의 각 학습 조각에서만 fit하게 해야 합니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 3 학습률을 너무 크게 잡으면 흔히 생기는 일은?
해설 보폭이 너무 크면 바닥을 지나 반대편 벽으로 갑니다. 실제 결과에서도 η = 20은 손실이 폭발하며 정확도 0.500에 머물렀습니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 4 데이터 1,000개, 배치 크기 50으로 3 에포크를 학습하면 가중치 갱신은 몇 번?
해설 한 에포크에 1000 / 50 = 20번 갱신하고, 3 에포크이므로 60번입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 5 학습 정확도 1.00, 시험 정확도 0.86인 모델에 먼저 해 볼 조치는?
해설 학습과 시험의 차이가 큰 것은 과적합의 신호입니다. 규제(λ를 키움 = C를 줄임)나 특성 수 줄이기가 먼저입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 6 L1 규제가 L2와 달리 "특성 선택" 효과를 내는 이유는?
해설 L1 벌점의 마름모 모양 때문에 최솟값이 축 위(한 계수가 0)에 걸리기 쉽습니다. 0이 된 계수의 특성은 사실상 쓰이지 않습니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 7 랜덤 포레스트와 가장 가까운 관계는?
해설 부트스트랩 표본으로 나무를 여러 그루 키우는 배깅에, 갈림길마다 특성을 일부만 보게 해서 나무끼리 덜 닮게 만든 것입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
문제 8 부스팅이 다음 모델을 학습할 때 하는 일은?
해설 앞 모델이 틀린 점에 더 큰 가중치를 줘서 다음 모델이 그 점을 맞히도록 보완합니다. 위 그림에서 점이 커지는 것이 그 가중치입니다.
배점 2점 · 정답을 고르고 이유를 한 문장으로 말하면 2점, 정답만 고르면 1점, 오답이어도 해설의 핵심 이유(괄호 안 낱말 수준)를 말하면 1점.
1장 "물고기로 보면" 코드를 실행해 세 모델의 행 단위·물고기 단위 교차검증 점수를 표로 정리하고, 차이가 가장 큰 모델과 그 이유를 쓰라.
예시 결과 KNN(k = 1) 0.959 → 0.920, 로지스틱 회귀 0.909 → 0.899, 의사결정나무 0.884 → 0.872 (원본 158마리만 쓰면 0.810, 0.804, 0.735).
예시 해석 KNN(k = 1)의 차이가 가장 크다. 시험 물고기와 거의 같은 "쌍둥이"가 학습 세트에 있으면 가장 가까운 한 마리를 베끼는 KNN이 그대로 정답을 맞히기 때문이다. 원본만 쓴 점수가 낮은 것은 누수 때문이 아니라 학습 데이터가 적어서다.
채점 포인트 ① 세 열을 모두 채웠는가 ② KNN을 꼽고 "쌍둥이·가장 가까운 이웃" 논리를 썼는가 ③ 원본만의 점수를 누수와 혼동하지 않았는가.
3장 코드에서 L1 규제의 C를 10, 1, 0.1로 바꿔 남은 특성 수와 교차검증 점수를 비교하고, length2·length3 계수의 부호를 해석하라.
예시 결과 C = 10 → 남은 특성 6/9, 1.000 · C = 1 → 6/9, 0.997 · C = 0.1 → 3/9, 0.877. C가 10과 1일 때 length2와 length3에 크기는 비슷하고 부호가 반대인 큰 계수(약 −73과 +73, −32와 +33)가 붙는다.
예시 해석 두 계수의 합은 "length3 − length2", 즉 꼬리 길이다. 모델이 꼬리 길이라는 새 특성을 스스로 만들어 쓴 것이다. 규제를 너무 세게 하면(C = 0.1) 이 신호까지 지워져 점수가 떨어진다.
채점 포인트 ① C와 λ의 관계(C = 1/λ)를 바르게 썼는가 ② 반대 부호 계수를 꼬리 길이로 해석했는가 ③ 과한 규제의 손해를 수치로 보였는가.
이 편은 확인 문제 대신 실험 과제로 평가한다.
실험실 숫자는 처음 열었을 때의 기본 데이터(다른 물고기로 다시 뽑기를 누르지 않은 상태, 측정 잡음 0.5%) 기준이다. 데이터를 바꾸면 숫자는 달라지지만 경향은 같아야 한다.
① "쉬운 짝"에서 규칙 기반을 뺀 일곱 모델을 차례로 눌러 시험 정확도를 기록하라. ② "어려운 짝"에서 로지스틱 회귀를 몸길이·높이로 학습한 뒤, 꼬리 비율을 켜고 다시 기록하라.
예시 결과 ① 일곱 모델 모두 1.000. ② 몸길이·높이: 학습 0.650, 시험 0.657 (기준선 0.651 근처) → 꼬리 비율 추가: 학습 0.978, 시험 1.000.
예시 해석 모델의 차이는 데이터가 어려울 때만 드러난다. 어려운 짝에서는 모델보다 특성이 결정적이다.
채점 포인트 ① 기준선과 비교했는가 ② 특성을 바꾼 것과 모델을 바꾼 것을 구분해 썼는가.
"어시장 4종"(몸길이·높이)에서 KNN의 k를 1과 5로, 의사결정나무의 깊이를 10과 4로 바꿔 학습·시험 정확도를 표로 만들고 과적합을 설명하라.
예시 결과 KNN k = 1: 학습 1.000 / 시험 0.824 · k = 5: 0.914 / 0.784 · 나무 깊이 10: 0.959 / 0.804 · 깊이 4: 0.893 / 0.804.
예시 해석 k = 1과 깊이 10은 학습 정확도가 시험보다 크게 높아 학습 데이터를 외운 상태다. 이 데이터에서는 시험 점수가 오히려 k = 1이 높게 나왔으므로 "복잡하면 늘 시험 점수가 떨어진다"고 단정하면 안 된다. 학습·시험 차이와 시험 점수를 함께 봐야 한다.
채점 포인트 ① 학습과 시험의 차이를 계산했는가 ② 예상과 다른 결과(k = 1의 높은 시험 점수)를 그대로 보고했는가.
이 편은 확인 문제 대신 실험 과제로 평가한다.
실험실 숫자는 처음 열었을 때의 기본 데이터(다른 물고기로 다시 뽑기를 누르지 않은 상태, 측정 잡음 0.5%) 기준이다. 데이터를 바꾸면 숫자는 달라지지만 경향은 같아야 한다.
"① 누수: 행 단위 vs 물고기 단위" 빠른 비교를 로지스틱 회귀와 KNN을 각각 고정한 상태에서 실행하고 실험 기록표를 해석하라(복제본 3개씩, 5겹 교차검증).
예시 결과 로지스틱 회귀: 행 단위 0.703 ± 0.038, 물고기 단위 0.698 ± 0.024 · KNN(k = 5): 행 단위 0.805 ± 0.006, 물고기 단위 0.738 ± 0.091.
예시 해석 누수의 피해는 모델마다 다르다. 직선 하나로 판단하는 로지스틱 회귀는 거의 영향이 없지만, 가까운 이웃을 보는 KNN은 쌍둥이 덕분에 점수가 크게 부풀려졌다.
채점 포인트 ① 두 모델의 차이를 비교했는가 ② 표준편차를 함께 읽었는가.
로지스틱 회귀를 고정하고 "학습률 0.001 · 0.1 · 3", "꼬리 비율 추가", "배깅 없음 vs 15개"를 실행한 뒤, 효과가 큰 순서로 정리하라.
예시 결과 학습률 0.001 → 0.584, 0.1 → 0.698, 3 → 0.688 · 꼬리 비율 추가 0.698 → 0.879 · 배깅 0.698 → 0.699.
예시 해석 효과 순서: 꼬리 비율(+0.18) > 학습률을 너무 작게 두지 않기(+0.11) > 배깅(거의 0). 흔들림이 적은 로지스틱 회귀에는 배깅이 거의 도움이 되지 않는다.
채점 포인트 ① 한 번에 하나만 바꿨는가 ② 효과를 같은 기준(교차검증 평균)으로 비교했는가 ③ 배깅이 효과 없던 이유를 모델의 성질로 설명했는가.