물고기 49마리는 길이와 무게라는 이름 있는 변수 두 개로, 사진 한 장은 이름 없는 픽셀 784개로 컴퓨터에 들어간다. 먼저 두 데이터를 나란히 놓고 "변수 하나로 규칙 찾기"가 물고기에서는 통하고 사진에서는 엉뚱한 칸을 고르는 모습을 본다. 이어서 물고기 쪽에서 분류의 기본 도구(규칙, 퍼셉트론·SVM의 직선, k-NN의 거리와 표준화)를 확인하고, 왜 사진에는 패턴을 찾는 특징이 필요한지로 넘어간다.
물고기 49마리는 길이·무게 두 숫자로, 사진 한 장은 수천 개의 픽셀 숫자로 컴퓨터에 들어간다. 둘 다 숫자인데, 왜 사진 분류는 훨씬 어려울까?
시장에서 들여온 물고기 49마리(도미 35, 빙어 14)를 가르려 합니다. 컴퓨터에게 줄 수 있는 것은 자로 잰 길이와 저울에 단 무게입니다.
| 마리 수 | 길이 범위 | 무게 범위 | |
|---|---|---|---|
| 도미 | 35 | 25.4 ~ 41.0 cm | 242 ~ 1,000 g |
| 빙어 | 14 | 9.8 ~ 15.0 cm | 6.7 ~ 19.9 g |
물고기 데이터로 하는 머신러닝(결정 트리, k-NN, 회귀, 로지스틱 회귀, 교차 검증 등)은 「Fish Market Data로 쉽게 따라하는 머신러닝」에서 자세히 다룹니다. 이 편은 그중 "이미지 분류로 넘어가는 데 필요한 부분"만 짚습니다.
같은 일을 사진으로 하면 어떻게 될까요? 치와와와 머핀 사진을 가로세로 28칸, 흑백으로 아주 작게 줄여도 한 장에 784개의 숫자가 나옵니다. 컬러 224 × 224라면 150,528개입니다.
숫자가 많다는 것보다 더 큰 차이가 있습니다. "길이 25.4cm"는 그 자체로 뜻이 있지만, "412번째 칸의 밝기 187"은 혼자서 아무 뜻이 없습니다. 이 편은 이 차이, 곧 변수(이름과 뜻이 있는 칸)와 특징(여러 칸이 함께 만드는 패턴)의 차이를 먼저 보여 주고, 물고기 쪽에서 분류의 기본 도구(규칙, 직선, 거리)를 확인한 뒤, 왜 사진에는 다른 방법이 필요한지로 넘어갑니다.
물고기 데이터는 실제 측정값입니다(Kaggle Fish Market 데이터셋에서 도미와 빙어만 고른 것 [R1]). 도미는 몸이 높고 크며 빙어는 가늘고 작아서, 이 차이가 길이와 무게라는 숫자에 그대로 드러납니다. 그래서 물고기 쪽은 쉬운 분류이고, 사진 쪽과 나란히 놓으면 "무엇이 사진 분류를 어렵게 만드는가"가 또렷해집니다.
먼저 결론부터 나란히 본다. 물고기는 변수 하나로 규칙 한 줄이 완성되고, 사진은 같은 방법이 엉뚱한 칸을 고른다. 사진에서 뜻이 생기는 곳은 칸이 아니라 여러 칸의 배치, 곧 특징이다.
| 변수 (variable) | 특징 (feature) | |
|---|---|---|
| 뜻 | 이름과 단위가 있는 측정값 | 여러 값이 함께 만드는 패턴을 숫자로 요약한 것 |
| 예 | 길이 25.4cm, 무게 242g | "어두운 점이 세 개, 삼각형으로", "위쪽에 뾰족한 경계" |
| 누가 만드나 | 사람이 무엇을 잴지 정하고 잰다 | 필터·신경망이 원자료(픽셀)에서 계산하거나 학습한다 |
| 칸 하나의 뜻 | 있다 | 원자료의 칸(픽셀) 하나에는 없다. 배치에 있다 |
| 잘 맞는 방법 | 규칙(결정 트리), 선형 모델, k-NN | 합성곱 신경망(CNN)처럼 패턴을 찾는 모델 |
| 설명하기 | 쉽다: "무게가 131g보다 무거워서" | 어렵다: 학습된 필터가 무엇을 보는지 따로 들여다봐야 한다 |
머신러닝에서는 둘 다 "특징(특성)"이라고 부르기도 합니다. 이 시리즈에서는 차이를 분명히 하려고, 사람이 이름 붙인 측정값을 변수, 원자료의 배치에서 찾아낸 패턴을 특징이라고 나눠 부릅니다.
왼쪽(모바일에서는 위)은 물고기, 오른쪽(아래)은 사진입니다. 먼저 두 데이터 모두 "변수 하나 > 기준값이면 이쪽"이라는 규칙을 찾아봅니다. 물고기는 이것으로 끝나지만, 사진은 규칙이 엉뚱한 칸을 고릅니다. 그래서 사진은 필터로 만든 특징 맵에서 패턴을 봅니다. 규칙과 패턴은 "학습용" 80장에서 찾고, 학습에 쓰지 않은 "새 사진" 80장으로 확인합니다.
변수마다 이름과 뜻이 있어, 사람이 읽을 수 있는 규칙 한 줄로 끝납니다.
① 같은 방식으로 "픽셀 하나 > 기준값" 규칙을 784칸 전부에서 찾아봅니다.
② 필터로 특징 맵을 만들고, 맵 전체에서 패턴을 요약합니다.
점과 물고기 색: ● 도미·치와와 ● 빙어·머핀. 오른쪽 ②의 두 필터(어두운 곳 찾기, 경계 찾기)는 이 비교를 위해 사람이 고른 것입니다. CNN은 이런 필터 수십~수백 개를 데이터로 배우고 조합합니다(4-2·4-3). "새 사진"은 같은 12장을 학습용과 다르게 밀고 밝기를 바꿔 만든 것이라, 완전히 다른 사진으로 하는 시험보다 쉽습니다. 실제 사진에서는 두 패턴만으로 100%가 나오기 어렵습니다.
물고기 데이터의 칸은 이름과 뜻이 있는 변수입니다. "길이"라는 변수 하나에 도미와 빙어의 차이가 담겨 있어, "길이 > 기준값이면 도미"라는 규칙 한 줄로 49마리를 다 맞힙니다. 사람이 읽고 설명할 수 있는 규칙이고, 결정 트리 같은 규칙 기반 모델이 잘하는 영역입니다. 사람이 "무엇을 잴지"를 잘 골라 준 덕분이기도 합니다.
사진의 칸(픽셀)도 형식상 변수지만 이름도 뜻도 없습니다. 같은 방식으로 규칙을 찾으면 컴퓨터는 784칸 가운데 우연히 잘 맞은 칸, 흔히 가장자리 배경 칸을 고르고, 처음 보는 사진에서는 성능이 떨어집니다. 사진에서 뜻이 생기는 곳은 칸 하나가 아니라 여러 칸이 함께 만드는 패턴(어두운 점이 몇 개, 어디에, 어떤 모양으로)입니다. 그래서 필터로 특징 맵을 만들고 맵 전체에서 패턴을 요약하면, 새 사진에서도 잘 맞힙니다.
정리하면 둘 다 "특징으로 판단한다"는 점은 같습니다. 다른 것은 특징을 사람이 이름 붙여 준비했느냐(변수 → 규칙), 여러 칸의 배치에서 찾아내야 하느냐(픽셀 → 패턴)입니다. 표 데이터에서도 로지스틱 회귀처럼 규칙 아닌 모델을 쓰고, 사진 특징에도 규칙을 적용할 수 있으므로, 이 대조는 "어떤 데이터에서 무엇이 잘 통하느냐"의 경향으로 이해하면 됩니다.
그렇다면 784개 칸을 모두 쓰면 될까요? 칸이 많아지면 나눌 수 있는 방법도 늘어나지만, 뜻 없는 칸이 대부분이라 문제가 사라지지는 않습니다. 4-2에서 패턴을 찾는 필터를, 4-3에서 이 문제를 "평면으로 나누기"의 눈으로 봅니다.
왼쪽 물고기에서 "규칙 자동 찾기"를, 오른쪽 사진에서 "픽셀 규칙 자동 찾기"를 눌러 보세요. 물고기 규칙은 49마리를 다 맞히고 사람이 읽을 수 있습니다. 사진 규칙은 784칸 중 사진 구석의 배경 칸을 고르고, 처음 보는 사진에서 정확도가 떨어집니다. 오른쪽 ②처럼 필터로 특징 맵을 만들어 패턴을 요약해야 사진이 갈립니다. 이 대조가 이 시리즈 전체의 출발점입니다.
한 줄이 샘플 하나, 숫자 칸이 특징, 정답 칸이 타겟이다. 물고기 표와 사진 표는 칸의 개수와 칸 하나의 뜻만 다르다.
분류 모델이 배우는 데이터는 늘 같은 모양의 표입니다. 한 줄(행)이 샘플 하나이고, 줄마다 특징(특성, feature)이라는 숫자 칸 여러 개와 타겟(라벨, 정답) 칸 하나가 있습니다. 물고기 분류라면 한 줄이 물고기 한 마리, 특징은 길이와 무게 2칸, 타겟은 "도미" 또는 "빙어"입니다. 사진 분류도 똑같습니다. 한 줄이 사진 한 장, 특징은 픽셀 숫자들(4-2에서 자세히)을 한 줄로 늘어놓은 것, 타겟은 "치와와" 또는 "머핀"입니다.
쉽게 말하면건강검진표입니다. 한 사람이 한 줄이고 키·몸무게·혈압이 특징 칸, 맨 끝의 "재검 필요 여부"가 타겟 칸입니다. 물고기 표는 항목이 2개인 짧은 검진표, 사진 표는 항목이 784개인 아주 긴 검진표입니다. 차이는 항목 하나하나에 이름과 뜻이 있느냐입니다. "길이 25.4cm"는 그 자체로 뜻이 있지만, "412번째 칸의 밝기 187"은 혼자서는 아무 뜻이 없습니다.
왼쪽은 물고기 49마리 가운데 6마리, 오른쪽은 치와와·머핀 사진 80장 가운데 6장입니다. 사진은 28 × 28 흑백으로 줄인 뒤 한 줄로 펼쳤습니다. 오른쪽 표의 행을 누르면 그 사진이 어떻게 한 줄이 되는지 아래에 보입니다.
물고기 데이터: Kaggle Fish Market 데이터셋의 도미(Bream) 35마리·빙어(Smelt) 14마리 길이·무게. 박해선, 『혼자 공부하는 머신러닝+딥러닝』 예제 코드(MIT 라이선스)에 실린 값을 그대로 썼습니다. 사진 데이터: 4-4 편 이미지의 12칸(치와와 6, 머핀 6)을 28 × 28로 줄이고, 한 장마다 위치를 ±4칸 밀고 밝기를 70~130%로 바꿔 각 40장씩 만들었습니다.
Q1. 사진 분류 표에서 타겟(라벨)에 해당하는 것은?
Q2. 컬러 32 × 32 사진을 한 줄로 펼치면 특징은 몇 칸인가요?
Q3. 물고기는 변수 하나로 규칙이 만들어지는데, 사진은 픽셀 하나로 만든 규칙이 새 사진에서 잘 안 맞는 가장 큰 이유는?
타겟(target)은 맞혀야 할 정답이고, 정답을 사람이 붙이는 일이 라벨링입니다. 사진 표의 행을 눌러 보면 28 × 28 행렬이 첫째 줄부터 이어 붙어 784칸짜리 한 줄이 되는 모습(펼치기)을 볼 수 있습니다. 형식은 물고기 표와 같아지지만, 칸 하나하나의 이름과 뜻이 사라집니다.
변수에 뜻이 있으면 경계가 단순하다. 틀릴 때마다 선을 옮기는 퍼셉트론과, 가장 넓은 도로를 내는 SVM이 같은 물고기에서 어떤 선을 긋는지 본다.
점 하나가 물고기 한 마리입니다. 보라색 선이 지금의 경계이고, 선 오른쪽 위가 "도미"입니다. 퍼셉트론은 물고기를 한 마리씩 보며 틀렸을 때만 선을 옮깁니다. 빨간 원은 방금 틀린 물고기, 흰 원은 맞힌 물고기입니다.
두 무리를 가르는 직선은 무수히 많습니다. SVM은 그중 두 무리 사이의 빈 도로(마진)가 가장 넓은 직선을 고릅니다. 보라 실선이 경계, 점선이 도로의 양쪽 가장자리입니다. 체크하면 퍼셉트론이 멈춘 선(초록 점선)과 비교할 수 있습니다.
퍼셉트론과 선형 SVM은 경계의 모양이 같습니다(직선 하나, w·z + b = 0). 퍼셉트론은 다 맞히면 거기서 멈추므로 한쪽 무리에 바짝 붙은 선이 나올 수 있고, SVM은 두 무리 모두에서 가장 먼 선(마진 최대)을 고릅니다. 코드 1에서 SVM의 마진 폭은 표준화 단위로 1.233, 경계를 정한 서포트 벡터는 가장 큰 빙어(15.0cm, 19.9g)와 가장 작은 도미(25.4cm, 242g) 두 마리였습니다.
순서도 기억해 두세요. 퍼셉트론(1958)이 먼저이고 SVM(1990년대)이 나중입니다 [R3] [R4]. 둘 다 원래 좌표에 직선 하나를 긋는 방법이라, 칸에 뜻이 있는 물고기 표에서는 충분하지만 픽셀 좌표에서는 막힙니다(4-3).
물고기 데이터로 하는 머신러닝(결정 트리, k-NN, 회귀, 로지스틱 회귀, 교차 검증 등)은 「Fish Market Data로 쉽게 따라하는 머신러닝」에서 자세히 다룹니다. 이 편은 그중 "이미지 분류로 넘어가는 데 필요한 부분"만 짚습니다.
퍼셉트론은 길이와 무게에 가중치를 곱해 더하고, 그 합이 0보다 크면 도미라고 답합니다. 학습은 "틀린 물고기 쪽으로 선을 조금 옮기기"의 반복입니다. SVM 그림에서 체크 상자를 켜면 퍼셉트론이 멈춘 선과 SVM의 선을 겹쳐 볼 수 있습니다. 이 가중합(w·x + b)은 4-2의 합성곱과 4-3의 신경망에서 그대로 다시 나옵니다.
새 물고기 (25cm, 150g)는 도미일까? 가장 가까운 이웃에게 묻는 방법은 "가깝다"를 어떻게 재느냐에 따라 답이 뒤집힌다.
세모가 새로 잡은 물고기(처음 값: 길이 25cm, 무게 150g)입니다. k-최근접 이웃은 가장 가까운 5마리의 정답으로 다수결을 합니다. "원래 단위"와 "표준화"를 바꿔 가며 이웃이 누구로 바뀌는지 보세요.
원래 단위로 거리를 재면 길이 10cm 차이와 무게 10g 차이가 같은 크기로 들어갑니다. 그런데 무게는 수백 g씩 차이 나므로 거리를 무게가 거의 다 정합니다. 그래서 길이 25cm인 새 물고기도 무게 150g이 빙어들(20g 이하)과 "가깝다"고 계산되어 이웃 5마리 중 4마리가 빙어가 됩니다. 표준화하면 두 특징이 같은 잣대가 되어 이웃 5마리가 모두 도미로 바뀝니다(코드 1의 결과와 같음).
규칙(섹션 3)은 변수 하나만 보므로 단위에 영향을 받지 않습니다. 퍼셉트론·SVM·k-NN처럼 여러 특징을 섞어 거리나 가중합을 계산하는 방법은 단위를 맞춰 줘야 합니다. 사진은 모든 칸이 0~255라 이 문제가 작지만, 대신 다른 문제가 생깁니다(섹션 7).
k-최근접 이웃(k-NN)은 새 샘플과 가장 가까운 k개의 정답으로 다수결합니다 [R5]. 단순하지만 "거리"가 전부라서, 무게(g)처럼 숫자가 큰 변수가 거리를 독차지하면 엉뚱한 이웃을 고릅니다. 사진의 픽셀은 모두 0~255라 단위 문제는 작지만, 대신 "같은 자리 숫자의 차이"가 뜻을 반영하지 못하는 더 큰 문제가 있습니다(4-2 섹션 3).
사진의 칸을 물고기의 변수처럼 쓰면 어디까지 통할까? 모양이 다른 쌍과 닮은 쌍에서 결과가 갈린다.
| 숫자 쌍 | 규칙이 고른 픽셀 | 픽셀 하나 규칙 (시험) | 64칸 가중합 (시험) |
|---|---|---|---|
| 0 대 1 | (5행, 5열) | 98.3% | 100.0% |
| 3 대 8 | (6행, 4열) | 86.0% | 98.3% |
| 4 대 9 | (5행, 2열) | 93.9% | 98.3% |
8 × 8 손글씨 숫자를 64칸짜리 표로 보고, 물고기에서 쓴 "변수 하나 > 기준값" 규칙을 적용했습니다. 모양이 아주 다른 0과 1은 가운데 픽셀 하나로도 거의 다 갈립니다(가운데가 비어 있으면 0). 하지만 3과 8처럼 모양이 닮은 쌍에서는 픽셀 하나 규칙이 86.0%에 그치고, 64칸을 모두 가중합해야 98.3%가 됩니다.
모양이 닮을수록 칸 하나가 아니라 여러 칸이 함께 만드는 모양을 봐야 합니다. 손글씨 숫자는 위치가 가지런히 맞춰진 작은 사진이라 가중합만으로도 잘 되지만, 위치·조명·배경이 제각각인 실제 사진에서는 가중합도 막힙니다(4-2 섹션 3, 4-3 섹션 2). 그래서 사진 분류에는 패턴을 찾는 단계, 곧 특징 추출이 필요합니다.
정리하면, 변수에 뜻이 있는 표 데이터에서는 규칙·직선·거리 같은 단순한 도구로 충분합니다. 사진에서는 칸 하나에 뜻이 없어서, 이웃한 칸들의 무늬를 찾는 필터와 그 무늬를 쌓아 모양을 만드는 층이 필요합니다. 4-2는 사진이 숫자 행렬이 되는 과정과 필터를, 4-3은 층을 쌓는 이유를, 4-4는 그래도 남는 어려움을 다룹니다.
두 코드 모두 Colab에 기본으로 설치된 라이브러리와 내장 데이터만 쓴다. "노트북(.ipynb) 내려받기" 후 Colab에서 파일 → 노트북 업로드로 열거나, 복사해서 새 노트북 칸에 붙여 넣는다.
결정 트리 한 마디, 표준화 좌표의 퍼셉트론과 선형 SVM, 새 물고기 (25cm, 150g)의 k-NN 예측을 표준화 전후로 계산한다. 내 데이터로 바꾸려면 맨 위의 네 목록을 내 측정값으로 바꾼다.
8 × 8 손글씨 숫자를 64칸 표로 보고, 픽셀 하나짜리 규칙과 64칸 가중합(로지스틱 회귀)을 0 대 1, 3 대 8, 4 대 9에서 비교한다. 내 데이터로 바꾸려면 compare(a, b)의 숫자 쌍을 바꾼다.
ChatGPT, Qwen, Claude 같은 AI 도우미에 붙여 넣는 프롬프트다. "복사"를 누르면 프롬프트 뒤에 고른 코드가 함께 붙는다. 〔 〕 안을 내 상황으로 바꿔 쓰면 된다.
AI의 답은 출발점일 뿐이다. 제안된 논문·수치·라이브러리 함수는 반드시 원문과 공식 문서로 확인한다. 공모전·논문에 AI 도움을 받았다면 주최 측과 학술지의 규정에 따라 사용 사실과 범위를 밝힌다.
본문의 노란 점선 밑줄과 같은 사전이다. 시리즈 전체에서 같은 표기를 쓴다. 섹션 이름을 누르면 처음 나온 곳으로 간다.
비유는 이해의 첫걸음이지만 오해의 씨앗도 된다. 사람의 눈·뇌 비유에는 강도를 표시했다. 직접 실제로 같은 일을 한다는 근거가 있음 · 부분 일부 성질만 닮음 · 없음 대응하는 것이 알려지지 않음
| 개념 | 일상 비유 | 사람의 눈·뇌 비유 | 비유가 틀리는 지점 |
|---|---|---|---|
| 결정 트리 | 스무고개 | 없음 | 실제 결정 트리는 질문의 기준값을 데이터에서 계산해 고른다. 사람처럼 "그럴듯한 질문"을 떠올리는 것이 아니다 |
| 퍼셉트론 | 틀린 문제만 다시 보는 오답 노트 | 부분 신경세포가 입력을 모아 문턱을 넘으면 신호를 보낸다는 생각에서 나왔다 | 실제 신경세포는 시간에 따라 변하는 전기 신호를 다루고, 학습 규칙도 훨씬 복잡하다 |
| SVM 마진 | 두 편 사이에 가장 넓은 도로 내기 | 없음 | 도로 폭은 "표준화한 단위"로 잰 것이다. 단위를 바꾸면 가장 넓은 도로의 위치도 바뀐다 |
| k-NN | 이사 온 동네에서 가장 가까운 이웃 다섯 집에 물어보기 | 없음 | 이웃을 "몇 m 떨어졌나"가 아니라 "몇 g, 몇 cm 다른가"로 재므로, 잣대를 맞추지 않으면 먼 집을 가깝다고 착각한다 |
| 표준화 | 키와 몸무게를 "반에서 몇 등쯤"으로 바꿔 비교하기 | 없음 | 등수는 순서만 남기지만, 표준화는 평균에서 얼마나 떨어졌는지(간격)를 남긴다 |
E-1 저자 소개 · E-2 학술 레퍼런스 · E-3 그림·데이터 참고 자료
강사, 실무 OJT 담당자, 튜터를 위한 운영 안내다. 시간은 예상치이므로 실제 수업에 맞춰 조정한다.
| 대상 | 머신러닝을 처음 배우는 대학생·직장인. 엑셀 표는 다룰 줄 알지만 모델은 처음인 사람 |
|---|---|
| 선수 지식 | 평균과 표준편차, 좌표평면의 직선 식. 3-2의 퍼셉트론을 읽었으면 좋다 |
| 학습 목표 | ① 변수와 특징의 차이를 물고기와 사진의 예로 설명한다 ② 샘플·특징·타겟으로 데이터를 설명하고, 규칙·퍼셉트론·SVM·k-NN이 경계를 정하는 방식의 차이를 말한다 ③ 표준화가 필요한 경우와, 픽셀 하나를 변수처럼 쓰면 안 되는 이유를 말한다 |
| 예상 시간 | 읽기 35~45분 · 실습 시연 20분 · Colab 실습 25분 (코드 1 15분, 코드 2 10분) |
도입 5분(섹션 1) → 섹션 2 변수 vs 특징 15분 → 섹션 3 표 구조 5분 → 섹션 4 퍼셉트론 10분 → 섹션 5 k-NN 5분 → 섹션 6 다리 놓기 5분 → 확인 문제 5분.
섹션 1·2를 우리 회사 데이터 표로 바꿔 그리기 20분 → 섹션 3 규칙과 섹션 5 SVM 비교 20분 → 섹션 6 표준화 함정 찾기(우리 데이터의 단위 점검) 20분 → 코드 1을 우리 데이터로 실행 30분.
입문자는 섹션 1·2·3·6만. 중급자는 섹션 4의 갱신 식을 손으로 한 번 계산하고, 코드 1의 SVM 서포트 벡터가 왜 두 마리인지 설명하게 한다.
| 섹션 | 멈춰서 물어볼 질문 | 조작 팁 |
|---|---|---|
| 1 문제 | "길이 25.4cm와 412번째 칸 187의 차이는?" | 물고기 표와 사진 숫자 개수를 나란히 짚는다 |
| 2 변수 vs 특징 | "픽셀 규칙이 고른 칸은 치와와와 상관있나?" | 양쪽 "자동 찾기"를 차례로 누른다 |
| 3 특징·타겟 | "이 표에서 정답 칸은 어디인가?" | 사진 행을 눌러 펼친 줄을 본다 |
| 4 규칙과 직선 | "맞힌 물고기를 볼 때는 왜 선을 안 옮길까?" | "한 마리씩"으로 빨간 원(틀림)에서 멈추고, SVM 그림에서 퍼셉트론 선을 겹친다 |
| 5 표준화 | "새 물고기의 이웃이 왜 빙어일까?" | 원래 단위 → 표준화로 바꾸고 무게 슬라이더도 움직인다 |
| 6 픽셀은 변수? | "0과 1은 되는데 3과 8은 왜 안 될까?" | 코드 2 결과표의 두 열을 비교한다 |
| 오해 | 바른 설명 | 보여 줄 장면 |
|---|---|---|
| SVM이 안 돼서 퍼셉트론이 나왔다 | 순서는 반대다. 퍼셉트론(1958) 뒤에 SVM(1990년대)이 나왔다 | 섹션 5 풀이 |
| 가중치를 구하면 다 퍼셉트론이다 | 선형 SVM·로지스틱 회귀도 가중치를 구한다. 차이는 경계를 고르는 기준이다 | 섹션 4·5의 수식 비교 |
| 특징만 많으면 표준화는 필요 없다 | 거리·가중합을 쓰는 방법은 단위가 다르면 결과가 뒤집힌다 | 섹션 6의 (25cm, 150g) |
| 규칙 기반 모델은 낡았다 | 특징에 뜻이 있는 표 데이터에서는 지금도 강하고, 설명하기 쉽다 | 섹션 3의 규칙 한 줄 |
| 사진도 표니까 같은 방법이 통한다 | 형식은 같지만 칸 하나에 뜻이 없어, 패턴을 찾는 단계가 필요하다 | 섹션 7과 코드 2 |
샘플 49(행), 특징 2(길이·무게), 타겟은 도미 1 / 빙어 0 한 칸이다.
w ← w + 0.5 × (+1) × (0.2, −0.1) = w + (0.1, −0.05). b는 0.5 커진다.
같다. 둘 다 w·z + b = 0인 직선이다. SVM은 그중 마진이 가장 넓은 것을 고른다.
거리를 무게 차이가 거의 다 정하기 때문이다. 150g은 도미(242g 이상)보다 빙어(20g 이하)에 숫자상 더 가깝다.
기준값 숫자만 10배가 되고 맞히는 물고기는 같다. 변수 하나만 보는 규칙은 단위에 영향을 받지 않는다.
코드 1에서 StandardScaler를 빼고 SVM을 학습해 경계와 서포트 벡터가 어떻게 바뀌는지 보고, 섹션 6과 연결해 두 문장으로 설명한다.
코드 2에서 결정 트리의 깊이를 1, 3, 10으로 늘려 3 대 8의 학습·시험 정확도를 표로 만들고, 깊어질수록 학습과 시험의 차이가 어떻게 변하는지 해석한다.
| 입문자 | 섹션 4·5의 수식은 건너뛰어도 흐름이 끊기지 않는다. 섹션 3과 6의 실습만 확실히 해 본다 |
|---|---|
| 심화 | 로지스틱 회귀를 섹션 4·5와 같은 표로 비교하고, 확률을 내는 분류기와 경계만 내는 분류기의 차이를 발표하게 한다 |
| 더 배우기 | Fish Market Data로 쉽게 따라하는 머신러닝 (물고기 데이터 머신러닝 전체) · 안상선, 「비즈니스를 위한 데이터 과학」 강의안 |
| 강사용 자료 | 확인 문제의 채점 기준과 과제 예시 답안은 교육자용 정답 페이지 (4-1)에서 볼 수 있다 |
「4-1 도미 vs 빙어」 편을 끝까지 읽었어요. 연구실 식구들이 한마디씩 정리해 드립니다.