본문 바로가기
C.W.K.
Stream
Lesson 04 of 10 · published

Supervised, Unsupervised, 그리고 그 너머

~26 min · supervised, unsupervised, self-supervised

Level 0Scout
0 XP0/48 lessons0/11 achievements
0/120 XP to next level120 XP to go0% complete

모델은 무엇을 보고 잘했다고 아는 걸까

학습 방법을 가르는 가장 좋은 질문은 정답 신호가 어디서 오느냐야. 지도 학습은 입력과 정답이 짝지어진 사례를 보고, 예측과 정답 사이의 차이를 줄여가. 비지도 학습은 정답표 없이 거리나 밀도 같은 가정으로 자료 속 구조를 찾아. 이름은 달라도 엔지니어가 확인할 핵심은 같아. 시스템이 무엇을 개선으로 여기며, 그 신호가 우리가 실제로 원하는 결과와 같은 방향을 가리키는지 묻는 거야.

지도 학습과 비지도 학습 사이에는 넓은 땅이 있어

  • 반지도 학습은 정답이 붙은 작은 자료와 정답 없는 큰 자료를 함께 써. 정답을 만드는 비용이 클 때 유용하지.
  • 자기지도 학습은 입력 일부를 가리고 나머지로 맞히게 하면서 스스로 연습 문제를 만들어. 다음 토큰 맞히기나 가린 이미지 조각 복원이 대표적이야.
  • 강화 학습은 환경에서 받은 보상을 따라 행동을 조정해. 행동과 결과 사이가 멀수록 어느 선택이 공을 세웠는지 찾기 어려워져.
  • 능동 학습은 모델이 가장 헷갈리는 사례를 골라 사람에게 물어봐. 같은 표시 비용으로 더 많은 정보를 얻으려는 방법이야.

정답표가 없다고 평가까지 없는 건 아니야

비지도 학습은 평가가 필요 없다는 뜻이 아니야. 군집 결과를 매번 사람이 읽고 이름을 붙인다면 그 사람의 판단이 이미 시스템 안에 들어와 있어. 그 사실을 숨기지 말고 절차로 만들어야 해. 군집 안의 사례를 무작위로 뽑아 읽고, 서로 정말 닮았는지, 업무에서 구분할 가치가 있는지 확인해. 실루엣 점수가 높아도 고객에게 아무 행동 차이를 만들지 못한다면 예쁜 그림일 뿐이야.

신호의 출처가 곧 실패 방식이야

사람이 붙인 정답은 사람의 기준과 편향을 물려받아. 거리 기반 구조는 어떤 단위와 특성을 골랐는지에 따라 모양이 바뀌지. 보상 신호는 잘못 설계하면 목표 대신 점수판을 공략하게 만들어. 그래서 학습 방법을 고를 때는 장점만 볼 게 아니라 그 방법이 어떤 방식으로 틀릴지까지 함께 적어야 해. 학습 신호는 모델을 움직이는 부모 클래스 같은 거야. 자식 알고리즘을 바꿔도 부모가 잘못됐으면 같은 방향으로 계속 틀려.

쓸모는 다음 행동에서 확인해

새로운 방법을 붙이기 전에 결과가 어떤 행동을 바꿀지 정해봐. 군집이 고객 지원 방식을 나누는 데 쓰이는지, 자기지도 표현이 분류기의 성능을 높이는지, 능동 학습이 표시 비용을 실제로 줄이는지 재야 해. 내부 점수는 구조가 생겼다는 증거일 뿐이고, 그 구조가 쓸모 있다는 증거는 아니야.

Code

되먹임 신호가 생기는 위치 감사하기·python
feedback_source = {
    "supervised": "explicit human labels in the dataset",
    "semi_supervised": "small labeled set + structure of unlabeled set",
    "self_supervised": "held-out part of the input itself",
    "unsupervised": "distance / density / structure assumptions",
    "reinforcement": "reward signal from environment",
    "active": "queries to a human oracle, ranked by uncertainty",
}
scikit-learn으로 만드는 간단한 준지도학습·python
from sklearn.semi_supervised import SelfTrainingClassifier
from sklearn.linear_model import LogisticRegression

base = LogisticRegression(max_iter=500)
ssl = SelfTrainingClassifier(base, threshold=0.85)
ssl.fit(X_partial, y_partial)  # y has -1 for unlabeled rows

External links

Exercise

지금 비지도 학습으로 다루는 자료 하나를 골라봐. 결과를 보고 쓸모 있다고 판단하는 사람이 누구인지, 그 판단에 드는 비용이 얼마인지 적어. 그 사람의 판단을 정식 정답 자료로 쌓아 지도 학습으로 옮길지 결정해.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.