‘churn’ 열을 예측해줘. 다음 달에 어떤 고객이 떠날지…

누구나 볼 수 있는 공개 기록입니다. 읽기 전용.

사용자의 요구

‘churn’ 열을 예측해줘. 다음 달에 어떤 고객이 떠날지 알고 싶어

대화

  1. ML 엔지니어 1,200행, 8개 항목을 읽었습니다. 답의 기준은 ‘churn’ 열로 잡았습니다. 아래에서 맞는지 확인해 주세요.
  2. 질문한 사람 ‘churn’ 열을 예측해줘. 다음 달에 어떤 고객이 떠날지 알고 싶어
  3. ML 엔지니어 요청 원문으로 확인되지 않은 해석이 있어, 확인된 내용만 남겨 다시 정리하고 있습니다. 학습은 아직 시작하지 않았습니다.
  4. ML 엔지니어 'churn' 열을 예측하는 이진 분류 작업으로 계획했습니다. 등록된 과제 조건에 따라 정답 열 churn, 허용된 전체 안전 입력 특징, 균형 정확도 지표, 특징 그룹 기반 60/20/20 분할, 모델 산출물 제공을 제안합니다. 스키마에 시간·날짜 열이 없어 '다음 달'이라는 시간 조건은 현재 특징으로 이탈 여부를 예측하는 것으로 보수적으로 해석했으며, 시간 순서 의존성은 해결되지 않는 한계로 기록했습니다. 다음 행동은 이 결정을 DECISION.json에 기록하는 것입니다.
  5. ML 엔지니어 첫 모델을 만듭니다. 여러 방법을 시험해 가장 나은 것을 고르고, 마지막에 처음 보는 데이터로 한 번 더 확인합니다.
  6. ML 엔지니어 하네스 기본 후보를 시험했습니다. 균형 정확도 63.7%. 지금까지 가장 좋습니다. 최종 확인은 마지막에 처음 보는 데이터로 합니다.
  7. ML 엔지니어 다음에 시험할 방법을 정했습니다. 기준선은 범주형 열을 순서형 코드로만 처리해 이탈과 관련된 범주 조합 신호를 놓칠 수 있습니다. 같은 모델 계열을 유지하면서 범주형 원-핫 인코딩과 상호작용 특징을 추가해 개선 여부를 검증하겠습니다.
  8. ML 엔지니어 후보 2번을 시험했습니다. 균형 정확도 62.8%. 이전 후보가 더 좋아 그대로 둡니다. 최종 확인은 마지막에 처음 보는 데이터로 합니다.
  9. ML 엔지니어 점수가 오르지 않아 방향을 다시 봅니다. 같은 방향을 반복하지 않고, 남은 예산으로 다른 방법을 시험할지 지금까지 가장 좋은 후보로 마칠지 정합니다.
  10. ML 엔지니어 가장 좋은 후보로 마무리합니다. 에이전트의 다음 판단이 형식 검증을 통과하지 못해 추가 시험은 하지 않습니다. 지금까지 가장 좋은 후보만 처음 보는 데이터로 최종 확인합니다.
  11. ML 엔지니어 최종 확인을 마쳤습니다. 모델이 학습에 쓰지 않은 데이터에서 균형 정확도 69.5%입니다. 아래 보관된 모델 카드에서 이 결과로 예측을 시험해 볼 수 있습니다.
  12. 질문한 사람 왜 이 점수가 나왔어?
  13. ML 엔지니어 최종 점수는 학습에 쓰지 않은 데이터 240건에서 측정한 균형 정확도 69.5%입니다. 균형 정확도는 클래스별로 맞힌 비율의 평균이라, 이탈 고객과 잔류 고객을 한쪽으로 치우치지 않고 얼마나 잘 구분했는지를 보여줍니다. 이 모델은 하네스가 만든 기본 모델로, 범주형 열을 순서형 코드로 처리하고 클래스 가중치를 준 히스토그램 그래디언트 부스팅입니다. 개발 데이터에서 항목별 영향을 섞어서 재보면 support_calls가 10.8%p로 가장 크게 떨어졌고, data_usage_gb 1.8%p, tenure_months 1.0%p 순이었습니다.
  14. 질문한 사람 어떤 항목이 결과에 가장 큰 영향을 줬어?
  15. ML 엔지니어 개발 데이터에서 항목별 영향을 섞어서 재보면 support_calls가 10.8%p로 가장 크게 떨어졌고, data_usage_gb 1.8%p, tenure_months 1.0%p 순이었습니다. age(-0.6%p), plan(-1.7%p), monthly_fee(-6.4%p)는 drop이 0 이하라 영향이 거의 없는 항목입니다. 영향이 크다고 해서 그것이 원인이라는 뜻은 아닙니다.
  16. 질문한 사람 support_calls 1, data_usage_gb 1.3, tenure_months 35이면 결과가 어떻게 나와?
  17. ML 엔지니어 support_calls 1, data_usage_gb 1.3, tenure_months 35으로 읽었습니다. 보관된 모델로 직접 예측한 결과입니다 (말하지 않은 항목은 빈 값으로 넣었습니다): 1) data_usage_gb=1.3, support_calls=1, tenure_months=35 → churn: yes
  18. 질문한 사람 이 모델 믿고 써도 돼?
  19. ML 엔지니어 최종 점수는 학습에 쓰지 않은 데이터 240건에서 측정한 균형 정확도 69.5%입니다. 균형 정확도는 클래스별로 맞힌 비율의 평균이라, 이탈 고객과 잔류 고객을 한쪽으로 치우치지 않고 얼마나 잘 구분했는지를 보여줍니다. 다만 이 모델은 하네스가 만든 기본 모델이고, 개발 데이터에서 항목별 영향을 섞어 재보면 support_calls가 10.8%p로 가장 크게 떨어지는 등 일부 항목에 크게 기대고 있어, 그대로 믿고 쓰기에는 한계가 있습니다. 이 대화에서 바로 재학습이나 새 평가는 실행되지 않으니, 필요하면 왼쪽 '+ 새 작업'으로 다른 데이터 파일을 써서 새 모델을 만들어 비교해볼 수 있습니다.
  20. 질문한 사람 더 좋게 만들 수 있어?
  21. ML 엔지니어 이 대화에서 바로 재학습이나 새 평가는 실행되지 않아서 지금 모델을 더 좋게 만드는 건 여기서 할 수 없습니다. 다만 왼쪽 '+ 새 작업'으로 다른 데이터 파일을 써서 새 모델을 만들면, 지금 하네스가 만든 기본 모델(최종 균형 정확도 69.5%)과 비교해볼 수 있습니다. 참고로 개발 데이터에서 support_calls가 10.8%p로 가장 크게 영향을 줬는데, 영향이 크다고 원인이라는 뜻은 아닙니다.
  22. 질문한 사람 결과를 엑셀로 받을 수 있어?
  23. ML 엔지니어 엑셀 파일로 바로 내보내는 기능은 없습니다. 대신 대화 아래 '보관된 모델' 카드의 '예측해보기'에서 한 건 직접 입력하거나 JSON, CSV·JSON 파일(최대 100건, 2MB)로 예측하고 결과를 표로 볼 수 있습니다. 같은 카드의 '모델·소스 받기'로 학습된 전처리·모델 파일과 학습 소스, 실행 안내를 zip으로 내려받을 수도 있습니다.