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

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

사용자의 요구

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

대화

  1. ML 엔지니어 1,200행, 8개 항목을 읽었습니다. 답의 기준은 ‘churn’ 열로 잡았습니다. 아래에서 맞는지 확인해 주세요.
  2. 질문한 사람 ‘churn’ 열을 예측해줘. 다음 달에 어떤 고객이 떠날지 알고 싶어
  3. ML 엔지니어 요청 원문으로 확인되지 않은 해석이 있어, 확인된 내용만 남겨 다시 정리하고 있습니다. 학습은 아직 시작하지 않았습니다.
  4. ML 엔지니어 'churn' 열을 예측하는 분류 작업으로 계획합니다. 정답 열은 churn이며, 한 고객 행 단위로 이탈 여부를 예측합니다. 입력은 customer_id를 제외한 전체 허용 특징 열을 사용하고, 지표는 balanced_accuracy, 분할은 iid_feature_groups_60_20_20_v1, 평가 단위는 unique_feature_group, 결과 제공은 model로 제안합니다. 스키마에 시간·날짜 열이 없어 시간 순서 의존성은 해결되지 않으며 행 독립(IID) 가정을 적용합니다. 다음 단계는 이 계획을 확정하고 학습 파이프라인을 준비하는 것입니다.
  5. ML 엔지니어 첫 모델을 만듭니다. 여러 방법을 시험해 가장 나은 것을 고르고, 마지막에 처음 보는 데이터로 한 번 더 확인합니다.
  6. ML 엔지니어 하네스 기본 후보를 시험했습니다. 균형 정확도 66.8%. 지금까지 가장 좋습니다. 최종 확인은 마지막에 처음 보는 데이터로 합니다.
  7. ML 엔지니어 다음에 시험할 방법을 정했습니다. 기준선은 범주형 열을 순서형 코드로 인코딩해 명목형 변수의 순서를 잘못 가정하고, 하이퍼파라미터도 고정되어 있습니다. 원-핫 인코딩과 소규모 탐색으로 이 가정을 검증합니다.
  8. ML 엔지니어 후보 2번을 시험했습니다. 균형 정확도 68.7%. 지금까지 가장 좋습니다. 최종 확인은 마지막에 처음 보는 데이터로 합니다.
  9. ML 엔지니어 가장 좋은 후보로 마무리합니다. 에이전트가 후보 2개를 시험한 뒤 더 시험하지 않기로 했습니다(최대 3개). 남은 예산 616원 중 40원을 최종 확인에 씁니다. 지금까지 가장 좋은 후보만 처음 보는 데이터로 최종 확인합니다.
  10. ML 엔지니어 최종 확인을 마쳤습니다. 모델이 학습에 쓰지 않은 데이터에서 균형 정확도 66.8%입니다. 아래 보관된 모델 카드에서 이 결과로 예측을 시험해 볼 수 있습니다.
  11. 질문한 사람 놓치는 고객을 더 줄여줘
  12. 질문한 사람 나이 34살, basic 요금제, 월 29.9, 상담 5번, 가입 3개월 고객은 떠날까?
  13. ML 엔지니어 나이 34, basic 요금제, 월 29.9, 상담 5번, 가입 3개월로 읽었습니다. 보관된 모델로 직접 예측한 결과입니다 (말하지 않은 항목은 빈 값으로 넣었습니다): 1) age=34, monthly_fee=29.9, plan=basic, support_calls=5, tenure_months=3 → churn: yes
  14. 질문한 사람 개선된 모델은 뭐가 달라졌어?
  15. ML 엔지니어 개선된 후보(t2)는 하네스가 만든 기본 모델(t1)과 달리, 명목형 범주 열(plan 등)을 순서가 있는 숫자 코드 대신 원-핫 인코딩으로 바꾸고, HistGradientBoostingClassifier의 학습률(0.05·0.1)과 최대 리프 노드 수(31·63)를 교차검증 균형 정확도로 고르는 제한된 격자 탐색을 추가했습니다. 개발 데이터 점수는 t1 66.9%에서 t2 68.7%로 올랐고, 최종 확인 점수는 t2의 66.8%입니다. 영향도 기록에서 개발 점수를 가장 크게 떨어뜨린 항목은 상담 횟수(10.1%p)와 가입 개월 수(8.1%p)였습니다.