DAESHIN C201
100% Student LabTeachable Machine · ColabTree · Neural Net

AI 두뇌
실험실

대신고 2차시 · 2026. 7. 22 (수) · 3시간 — 전부 실습: 첫 분류기부터 AI 두뇌 실험실까지

TWINXEN · SPACE × AI
INSTRUCTOR02
INSTRUCTOR

강사 소개

이용재

트윈젠 대표Satellite · Space · AI
위성 소프트웨어를 만드는 사람,
회사에 AI를 박는 사람.
그 두 일을 동시에 합니다.
01 / COMPANY

트윈젠 TWINXEN

우주항공·위성 스타트업 대표. 위성 소프트웨어를 설계하고 만듭니다.

02 / SATELLITE

국가 연구소 협력

정부 연구소 위성 사업 협력 프로젝트를 수행했습니다. 실제 임무에 들어가는 위성을 함께 만듭니다.

03 / AI

기업 AI 도입

기업 현장에 AI 도구와 워크플로를 박아 넣는 프로젝트를 다수 수행했습니다.

TWINXEN · SPACE × AI
RECAP03
LAST TIME

지난 시간 — 우주항공 × AI 트렌드

Earth from Apollo 17

트렌드 강의

우주항공 × AI가 바꾸는 세상

Mars

Teachable Machine

오늘 Lab A

Jupiter

Colab 첫 분류기

오늘 Lab B

TWINXEN · SPACE × AI
SCHEDULE04

오늘 3시간 — 전부 실습

13:30

도입

리캡+안내 · 15분

13:45

Lab A

Teachable Machine 분류기

14:45

Lab B

Colab 첫 분류기

15:45

Lab C

트리·신경망 탐구

16:20

마무리

정리·과제

TWINXEN · SPACE × AI
SETUP05
SETUP

노트북 2개를
미리 받습니다

Lab B와 Lab C에서 바로 씁니다. 지금 두 개 모두 다운로드하고, Colab에서 '파일 → 노트 업로드'로 열어 두세요. 바로 열기 링크는 환경마다 실패할 수 있습니다.

TWINXEN · SPACE × AI
LAB A · 50 min06
Teachable Machine — 코드 0줄

4단계로 분류기 완성

1

접속 + 프로젝트

Image Project 만들기

2

4 카테고리

도시·농경지·산림·바다

3

사진 모으기

NASA Worldview / 검색

4

학습 + 테스트

Train → 새 사진

→ 50분 안에 내 AI 모델 완성. 코드 0줄.

TWINXEN · SPACE × AI
LAB A · STEP 1-207

STEP 1 — 접속 (5분)

  • teachablemachine.withgoogle.com 접속
  • Get Started → Image Project
  • Standard image model 선택
  • Google 계정 로그인
✓ 빈 프로젝트 화면 보이면 OK

STEP 2 — 4 카테고리 (5분)

  • 왼쪽 Class 1 → 도시
  • Add a class → 농경지
  • Add a class → 산림
  • Add a class → 바다
✓ 4 클래스 세로 나열 OK
TWINXEN · SPACE × AI
LAB A · STEP 3-408

STEP 3 — 사진 (30분)

  • NASA Worldview 또는 Google 이미지 검색
  • 카테고리당 10-15장 다운로드
  • 각 클래스에 Upload (drag & drop)
  • 막히면 Gemini에게 "좋은 위성 사진 출처" 질문
✓ 4 × 10 = 40장 이상 OK

STEP 4 — 학습 + 테스트 (10분)

  • 중앙의 Train Model 클릭
  • 15-30초 기다림 (탭 닫지 말 것)
  • Preview에서 새 사진 테스트
  • 틀린 사진? → 사진 더 모아 재학습
✓ 정확도 70%+ OK
TWINXEN · SPACE × AI
LAB B · 50 min09
Colab — 직접 코드

이미지 = 행렬

노트북 전체 Run All (Ctrl/Cmd + F9)로 결과부터 봅니다. 그 다음 셀별로 무엇이 일어났는지 읽습니다 — 일단 돌려보고, 왜는 나중에.

TWINXEN · SPACE × AI
LAB B · CODE 110

이미지 = 행렬 · 셀 1-6

import numpy as np
from PIL import Image
import matplotlib.pyplot as plt

# 합성 위성 사진 4장 (4 카테고리)
np.random.seed(42)
city = np.random.randint(80,160,(128,128,3),np.uint8)

print(city.shape)  # (128, 128, 3)
print(city.dtype)  # uint8 (0~255)

포인트

  • CORE — 이미지 = (높이, 너비, 3) 행렬
  • 3 채널 — R / G / B 각각 한 장
  • uint8 — 각 픽셀 = 0(검정) ~ 255(밝음)
  • CHECK — shape == (128,128,3) 확인
TWINXEN · SPACE × AI
LAB B · CODE 211

RGB 분리 + 평균 · 셀 7-12

# R, G, B 채널만 따로
fig, ax = plt.subplots(1, 3, figsize=(12,4))
ax[0].imshow(city[:,:,0], cmap="Reds")
ax[1].imshow(city[:,:,1], cmap="Greens")
ax[2].imshow(city[:,:,2], cmap="Blues")
plt.show()

# 카테고리별 평균 RGB
for name, img in [("city",city),("farm",farm)]:
    r = img[:,:,0].mean()
    print(name, "R =", round(r))

포인트

  • CORE — 카테고리마다 평균 RGB가 다름
  • slicing — img[:,:,0] = R 채널
  • .mean() — 전체 픽셀 평균
  • INSIGHT — 이 차이 → 분류 가능
TWINXEN · SPACE × AI
LAB B · GEMINI12
Gemini = 옆자리 TA

이렇게 물어봐

"위성 사진 numpy 배열의 평균 RGB로 4 카테고리(도시·농경지·산림·바다) 중
어디인지 분류하는 함수를 파이썬으로 짜줘. 기준 RGB
{city:(120,120,120), farm:(80,140,60), ocean:(30,80,160), forest:(30,100,40)}.
유클리드 거리로 가장 가까운 걸 반환."

받은 코드는 Colab에 붙여넣고 실행 → 결과 확인 → 읽고 의심하고 검증. 틀리면 Gemini에 검증 코드를 다시 요청. 이게 AI와 일하는 방식.

TWINXEN · SPACE × AI
LAB B · CHALLENGE13

최소 / 권장 / 도전

LEVEL 1 · 최소

분류기 동작

TM 학습 + Colab Run All. classify()가 새 사진 1개 올바르게 분류

LEVEL 2 · 권장

정확도 측정

Gemini와 test_accuracy(). 새 사진 20장 → 정확도 %

LEVEL 3 · 도전

실제 위성 사진 (여유 시)

NASA Worldview 1장 → classify() → 결과 기록

TWINXEN · SPACE × AI
LAB C · 35 min14

지금까지

예시를 모으고 학습 버튼을 눌렀다.

Teachable Machine:
예시 사진 → 학습 → 분류

이제 안을 연다

모델 안에서 기준이 어떻게 생기는지 직접 바꿔본다.

model.fit(data, labels)
model.predict(new_data)
TWINXEN · SPACE × AI
LAB C · MISSION 115

탐구 1
트리는 얼마나 깊어야 할까?

바꿀 값

max_depth

1, 2, 3, 5, 10, None

볼 것

test accuracy

처음 보는 데이터 점수

결론

깊다고 좋나?

좋은 깊이를 찾기

TWINXEN · SPACE × AI
LAB C · WORKSHEET16

기록표

max_depth
train
test
한 줄 평가
1
너무 단순?
5
적당?
None
외움?
TWINXEN · SPACE × AI
LAB C · MODEL17

결정 트리

질문을 이어 붙인다.

R < 70?
B > 120?
경계가 계단처럼 생김

신경망

뉴론을 층으로 연결한다.

hidden_layer_sizes=(16,16)
휘어진 경계를 만들 수 있음
TWINXEN · SPACE × AI
LAB C · MISSION 318

탐구 3
트리 vs 신경망

문제

초승달 데이터

직선 하나로 나누기 어려움

비교

경계 모양

계단인가, 곡선인가

판단

숫자+그림

정확도만 보지 않기

TWINXEN · SPACE × AI
OPTIONAL19

(여유 시) 탐구 2 · 4

탐구 2

과적합 찾기

train은 높은데 test가 낮은 모델

탐구 4

뉴론 수 튜닝

(2,) → (16,16) → (64,64)

도전

make_circles

동심원 데이터 모델 대결

TWINXEN · SPACE × AI
BIG IDEA20
BIG IDEA

신경망이 항상
이기는 건 아니다

단순한 색 분류는 트리가 더 깔끔할 수 있다. 진짜 실력은 “문제에 맞는 모델”을 고르는 것.

TWINXEN · SPACE × AI
WRAP-UP21

오늘 가져갈 것

1

TM 분류기

4 카테고리 모델

2

classify()

RGB 분류 함수

3

노트북 2개

Colab Drive 저장

4

train vs test

처음 보는 데이터

5

경계·과적합

계단 vs 곡선

과제 — 두 노트북을 Drive에 저장하고, 오늘 막힌 곳을 markdown 셀에 한 줄로 남기기.

TWINXEN · SPACE × AI
DOWNLOAD22
LINKS

수업 자료

두 노트북 모두 다운로드 후 Colab에서 '파일 → 노트 업로드'로 여세요.

TWINXEN · SPACE × AI
END23

TEST
CHANGE
EXPLAIN

Daeshin High · Class 2 · 2026.07.22 · 3-Hour All-Lab Session

TWINXEN · SPACE × AI
↑↓ / scroll