비지도 학습
Unsupervised Learning
방법
정답이 붙지 않은 데이터를 그대로 넣어, 모델이 스스로 묶음이나 규칙을 찾아내게 하는 학습 방식입니다.
등장 배경
모델을 가르치는 기본 방식은 정답을 함께 주는 것입니다. 메일 1만 통에 스팸인지 아닌지를 사람이 표시해 두고 그 표시를 맞히게 훈련시킵니다. 이렇게 표시가 붙은 자료를 학습 데이터라고 부릅니다.
여기에는 두 가지 값이 붙습니다. 하나는 표시를 붙이는 사람의 시간입니다. 1만 건을 건당 10초에 처리해도 28시간이 듭니다. 다른 하나가 더 까다롭습니다. 애초에 정답을 적을 수 없는 질문이 있습니다.
페이지덱에서 이 벽을 만난 적이 있습니다. 지현이 고객을 성격에 따라 몇 갈래로 나눠 보자고 했을 때 태오가 몇 갈래로 나뉘는지, 각 갈래를 무엇이라 부를지 정해 둔 것이 있느냐고 물었습니다. 없었습니다. 떠난 고객에게는 떠났다는 표시를 붙일 수 있지만, 고객이 세 종류인지 다섯 종류인지는 아무도 정한 적이 없었습니다. 정답을 만들 수 없는 질문에 쓰는 것이 이 방식입니다. 데이터를 그대로 주고 그 안의 구조를 찾아내게 합니다.
사용 절차
다섯 단계로 돕니다.
- 질문을 과제 형태로 바꿉니다. 비슷한 것끼리 묶는 군집화인지, 평소와 다른 값을 찾아내는 이상 탐지인지, 항목이 너무 많아 줄여 보려는 것인지를 먼저 정합니다. "고객을 이해하자"는 그대로는 돌릴 수 없고, "행동이 비슷한 계정끼리 묶자"는 돌릴 수 있습니다.
- 재료를 고릅니다. 각 계정을 숫자 몇 개로 적습니다. 페이지덱이라면 주간 접속 일수, 한 달에 만든 문서 수, 문서 하나에 붙는 평균 공유 인원, 댓글 수 네 개입니다. 무엇을 넣느냐가 결과를 거의 정하므로 이 단계가 가장 중요합니다.
- 값의 크기를 맞춥니다. 문서 수는 0에서 2,000까지 가고 접속 일수는 0에서 7까지입니다. 그대로 넣으면 문서 수가 결과를 지배해 사실상 문서 수 하나로 나눈 것과 같아집니다. 각 항목을 같은 범위로 바꿔 놓고 시작합니다.
- 돌리고 묶음 수를 바꿔 봅니다. 셋, 다섯, 여덟으로 나눈 결과를 함께 놓습니다. 몇 개가 맞는지 알려 줄 정답이 없으므로 몇 개일 때 묶음끼리 가장 뚜렷하게 갈리는지를 봅니다.
- 사람이 읽고 이름을 붙입니다. 3번 묶음이 접속은 잦은데 공유 인원이 1명이라면 혼자 쓰는 메모형입니다. 이 단계를 건너뛰면 결과가 아무 데도 쓰이지 않습니다. 묶음 번호는 회의에서 쓸 수 없는 말입니다.
성적표를 만드는 방식도 다릅니다. 정답이 없으니 정확도를 잴 수 없고, 대신 묶음끼리 실제로 다른지와 그 묶음으로 갈라 놓은 뒤에 다른 숫자가 함께 갈리는지를 봅니다. 세 묶음의 갱신율이 92퍼센트, 71퍼센트, 34퍼센트로 나오면 쓸 만한 구분이고, 셋 다 70퍼센트대면 예쁘게 나뉘었어도 쓸모가 없습니다.
적합한 상황과 한계
정답을 만들 수 없거나 만들 값이 너무 클 때 씁니다. 고객을 몇 갈래로 나눌지 아무도 모르는 상태가 앞쪽이고, 문서 20만 건을 주제별로 분류해야 하는데 주제 목록 자체가 없는 상태가 뒤쪽입니다.
값이 큰 경우에는 섞어 씁니다. 20만 건을 먼저 묶고 묶음마다 대표 100건만 사람이 확인해 이름을 붙인 뒤, 그 결과를 정답으로 써서 나머지를 분류하는 모델을 훈련시킵니다. 사람 손이 20만 번에서 수백 번으로 줄어듭니다.
반대로 답이 이미 정해진 예측에는 맞지 않습니다. 이 고객이 다음 달에 해지할지, 이 메일이 스팸인지는 과거 사례에 답이 붙어 있으므로 그 답을 쓰는 쪽이 훨씬 정확합니다.
한계는 셋입니다. 첫째, 결과 해석이 사람 몫이고 그 해석이 흔들립니다. 재료를 하나 바꾸거나 묶음 수를 바꾸면 전혀 다른 구분이 나오는데 어느 쪽이 맞다고 판정할 기준이 없습니다. 재료 목록과 설정을 문서로 남기지 않으면 석 달 뒤에 같은 결과를 다시 만들지 못합니다.
둘째, 이미 아는 것을 다시 말해 주는 일이 흔합니다. 돌려 놓고 보면 묶음이 유료와 무료로 갈려 있거나 계정 규모로 갈려 있습니다. 틀린 결과는 아니지만 새로 알게 된 것이 없습니다. 이럴 때는 이미 아는 구분을 재료에서 빼고 다시 돌립니다.
셋째, 재료에 개인 식별 정보가 섞이면 곤란해집니다. 이름이나 연락처 같은 값은 묶는 데 도움이 되지 않으면서 유출 위험만 늘리므로, 재료를 고를 때 행동 기록만 남기고 사람을 특정하는 값은 제외합니다.
실무 용례
"이건 비지도로 가야 합니다. 정답을 만들 사람이 우리 중에 없어요."
분류 기준 자체가 정해지지 않아 라벨을 붙일 수 없다는 뜻입니다.
"묶음 다섯 개 나왔는데 유료·무료로 갈린 거예요. 요금제는 재료에서 빼고 다시 돌리죠."
이미 아는 구분이 결과를 지배했다는 지적입니다.
"묶음 번호로 보고하지 마세요. 이름 붙여서 가져오세요."
해석 단계를 거치지 않은 산출물은 쓸 수 없다는 요청입니다.
페이지덱은 계정 3,200곳을 네 개 재료로 묶었습니다. 처음 돌린 결과는 요금제를 그대로 따라가서 버렸고, 요금제와 인원 수를 재료에서 뺀 뒤 다시 돌려 세 묶음을 얻었습니다. 혼자 쓰며 접속만 잦은 쪽, 서너 명이 문서를 함께 고치는 쪽, 문서를 대량으로 만들지만 공유는 거의 안 하는 쪽이었습니다.
세 묶음의 다음 분기 갱신율은 34퍼센트, 92퍼센트, 61퍼센트였습니다. 수아는 첫 묶음에 속한 계정부터 손을 대기로 했습니다. 묶음 자체가 답은 아니었고, 어디를 먼저 볼지 정해 준 것이 결과였습니다.
흔한 오해
정답을 안 붙이니 데이터 준비가 가볍다고 읽는 경우가 가장 많습니다. 라벨링이 빠진 만큼 일이 줄어 보이기 때문입니다. 실제로는 줄어든 일이 다른 곳으로 옮겨갑니다. 어떤 재료를 넣을지 고르고 값의 크기를 맞추고 결과를 읽어 이름을 붙이는 일이 그 자리를 채웁니다. 이 오해를 그대로 두면 팀은 준비 없이 도구를 돌리고, 요금제를 따라간 묶음을 받아 든 뒤 이 방식이 쓸모없다고 결론 내립니다.
돌리면 알지 못했던 것이 나온다고 보는 것도 오해입니다. 스스로 구조를 찾는다는 설명이 그렇게 들립니다. 하지만 결과로 나오는 묶음은 답이 아니라 가설입니다. 접속이 잦고 혼자 쓰는 무리가 있다는 사실은 왜 그런지도 무엇을 해야 하는지도 말해 주지 않습니다. 그 묶음의 고객 열 곳에 전화를 걸거나 갱신율과 대조해 본 뒤에야 판단이 생깁니다. 이 방식은 어디를 먼저 들여다볼지 좁혀 주는 데까지입니다.
자주 헷갈리는 용어
| 용어 | 무엇으로 배우는가 | 비지도 학습과의 차이 |
|---|---|---|
| 지도 학습 | 정답이 붙은 데이터 | 정답이 있으니 정확도를 숫자로 잴 수 있고 결과 해석에 사람 판단이 거의 필요하지 않습니다. 대신 정답을 만들 수 없는 질문에는 쓸 수 없습니다 |
같이 보면 좋은 페이지
마지막 업데이트 2026-09-16