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

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

사용자의 요구

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

대화

  1. ML 엔지니어 1,200행, 8개 항목을 읽었습니다. 답의 기준은 ‘churn’ 열로 잡았습니다. 아래에서 맞는지 확인해 주세요.
  2. 질문한 사람 ‘churn’ 열을 예측해줘. 다음 달에 어떤 고객이 떠날지 알고 싶어
  3. ML 엔지니어 요청 원문으로 확인되지 않은 해석이 있어, 확인된 내용만 남겨 다시 정리하고 있습니다. 학습은 아직 시작하지 않았습니다.
  4. ML 엔지니어 'churn' 열을 예측하는 이진 분류 작업으로 계획합니다. 입력은 customer_id를 제외한 안전 특징 전체를 사용하고, 예측 단위는 고객 행, 지표는 balanced_accuracy, 분할은 특징 그룹 기반 60/20/20, 평가 단위는 unique_feature_group, 결과 제공은 model로 제안합니다. 스키마에 시간·날짜 열이 없어 행 독립(IID) 가정을 적용하며 시간 순서 의존성은 해결하지 못합니다. 다음 달 이탈 예측은 현재 데이터 분포가 유지된다는 가정에 기반합니다. 다음 행동은 이 계획을 DECISION.json에 기록하는 것입니다.
  5. ML 엔지니어 첫 모델을 만듭니다. 여러 방법을 시험해 가장 나은 것을 고르고, 마지막에 처음 보는 데이터로 한 번 더 확인합니다.
  6. ML 엔지니어 하네스 기본 후보를 시험했습니다. 균형 정확도 69.2%. 지금까지 가장 좋습니다. 최종 확인은 마지막에 처음 보는 데이터로 합니다.
  7. ML 엔지니어 다음에 시험할 방법을 정했습니다. 기준선은 범주형 열을 임의 순서의 정수 코드로만 처리해 계약·서비스 유형 같은 범주 신호를 충분히 반영하지 못할 수 있습니다. 원-핫 인코딩과 규제된 로지스틱 회귀로 같은 특징을 다시 학습해 균형 정확도가 개선되는지 검증합니다.
  8. ML 엔지니어 후보 2번을 시험했습니다. 균형 정확도 71.5%. 지금까지 가장 좋습니다. 최종 확인은 마지막에 처음 보는 데이터로 합니다.
  9. ML 엔지니어 다음에 시험할 방법을 정했습니다. t2가 one-hot 표현으로 0.7146까지 개선되었지만 선형 모델의 한계가 남아 있어, 동일 표현에 비선형 모델을 적용하는 실험이 근거 기반으로 남아 있습니다.
  10. ML 엔지니어 후보 3번을 시험했습니다. 균형 정확도 69.0%. 이전 후보가 더 좋아 그대로 둡니다. 최종 확인은 마지막에 처음 보는 데이터로 합니다.
  11. ML 엔지니어 가장 좋은 후보로 마무리합니다. 정해진 시도 횟수를 모두 썼습니다. 지금까지 가장 좋은 후보만 처음 보는 데이터로 최종 확인합니다.
  12. ML 엔지니어 최종 확인을 마쳤습니다. 모델이 학습에 쓰지 않은 데이터에서 균형 정확도 67.7%입니다. 아래 보관된 모델 카드에서 이 결과로 예측을 시험해 볼 수 있습니다.
  13. 질문한 사람 왜 이 점수가 나왔어?
  14. ML 엔지니어 최종 확인 점수는 학습에 쓰지 않은 데이터 239건에서 측정한 균형 정확도 67.7%입니다. 균형 정확도는 클래스별로 맞힌 비율의 평균이라, 떠난 고객과 남은 고객을 각각 얼마나 잘 맞혔는지를 같은 무게로 본 값입니다. 이 점수는 하네스가 만든 기본 모델(t1, 69.2%)보다 낮고, 에이전트가 만든 후보 t2(71.5%)·t3(69.0%)의 개발 점수보다도 낮습니다. 개발 데이터에서의 영향도를 보면 support_calls를 섞었을 때 13.1%p, tenure_months를 섞었을 때 8.0%p 점수가 떨어져 이 두 입력이 결과에 가장 크게 관여했지만, 영향이 크다고 해서 그것이 점수의 원인이라는 뜻은 아닙니다.
  15. 질문한 사람 어떤 항목이 결과에 가장 큰 영향을 줬어?
  16. ML 엔지니어 개발 데이터에서 항목을 하나씩 섞어 점수가 얼마나 떨어지는지 본 영향도 기준으로는 support_calls가 13.1%p로 가장 컸고, tenure_months가 8.0%p로 그다음이었습니다. 나머지 항목은 data_usage_gb 1.1%p, plan -0.5%p, age -0.8%p, monthly_fee -1.1%p로 영향이 거의 없었습니다. 다만 영향이 크다고 해서 그것이 점수의 원인이라는 뜻은 아닙니다.
  17. 질문한 사람 support_calls 4, tenure_months 21, data_usage_gb 19.9이면 결과가 어떻게 나와?
  18. ML 엔지니어 support_calls 4, tenure_months 21, data_usage_gb 19.9로 읽었습니다. 보관된 모델로 직접 예측한 결과입니다 (말하지 않은 항목은 빈 값으로 넣었습니다): 1) data_usage_gb=19.9, support_calls=4, tenure_months=21 → churn: yes
  19. 질문한 사람 이 모델 믿고 써도 돼?
  20. ML 엔지니어 최종 확인 점수는 학습에 쓰지 않은 데이터 239건에서 측정한 균형 정확도 67.7%입니다. 이는 하네스가 만든 기본 모델(t1, 69.2%)과 에이전트가 만든 후보 t2(71.5%)·t3(69.0%)의 개발 점수보다 낮아, 참고용으로는 쓸 수 있지만 그대로 믿고 중요한 결정을 맡기기는 어렵습니다. 개발 데이터 영향도에서는 support_calls 13.1%p, tenure_months 8.0%p로 두 입력이 결과에 가장 크게 관여했지만, 영향이 크다고 해서 그것이 점수의 원인이라는 뜻은 아닙니다. 이 대화에서 재학습이나 새 평가는 바로 실행되지 않으니, 필요하면 새 작업으로 다시 만드는 방법을 제안할 수 있습니다.
  21. 질문한 사람 더 좋게 만들 수 있어?
  22. ML 엔지니어 이 대화에서 재학습이나 새 평가는 바로 실행되지 않아 지금 모델을 더 좋게 만들 수는 없습니다. 다만 기록을 보면 하네스가 만든 기본 모델(t1)은 개발 점수 69.2%, 에이전트가 만든 후보 t2는 71.5%, t3는 69.0%였고, 최종 확인 점수는 학습에 쓰지 않은 239건에서 균형 정확도 67.7%였습니다. 새 작업으로 다시 만들 때는 t2처럼 범주형 항목을 one-hot으로 다루는 방식이나 t3처럼 비선형 상호작용을 잡는 트리 모델을 시도해볼 수 있습니다. 참고로 개발 데이터 영향도에서는 support_calls 13.1%p, tenure_months 8.0%p로 두 입력이 결과에 가장 크게 관여했지만, 영향이 크다고 해서 그것이 점수의 원인이라는 뜻은 아닙니다.
  23. 질문한 사람 결과를 엑셀로 받을 수 있어?
  24. ML 엔지니어 엑셀 파일로 바로 내보내는 기능은 없습니다. 대신 대화 아래 '보관된 모델' 카드의 '예측해보기'에서 한 건 직접 입력하거나 JSON·CSV·JSON 파일(최대 100건, 2MB)로 예측하고 결과를 표로 볼 수 있고, 같은 카드의 '모델·소스 받기'로 학습된 전처리·모델 파일과 학습 소스, 실행 안내를 zip으로 내려받을 수 있습니다. 표로 나온 결과를 엑셀에서 열어 쓰시면 됩니다.