LabHub
배우기 러닝패스 코스

보험 도메인 심화 · 사기 탐지 규칙과 임계값 · 실습

규칙 다섯 개로 점수판을 만들고 임계값을 고른다

LabHub 에서 이어서 보기

목표

청구 자료에 규칙 점수판을 만들고, 혼동행렬에서 정밀도와 재현율과 F1 을 직접 계산한다. 임계값을 옮겨 가며 표를 만들고, 집단 편중을 확인한 뒤, 조사 인력 한도 안에서 운영할 임계값을 골라 판 번호와 자료 지문이 붙은 규칙판으로 낸다.

왜 중요한가

탐지 규칙을 떠올리는 일은 어렵지 않다. 어려운 것은 점수를 어디서 끊을지 정하는 일이고, 그 선택이 누구에게 어떤 비용을 남기는지 말하는 일이다. 기저율이 낮은 문제에서는 임계값을 조금만 내려도 정밀도가 빠르게 무너진다. 그리고 F1 이 가장 높은 지점이 운영할 지점인 경우는 드물다. 조사팀이 볼 수 있는 건수가 진짜 제약이다.
이 실습은 탐지기를 만드는 쪽만 다룬다. 실제 사기 수법이나 그 회피 방법은 다루지 않는다. 자료는 전부 합성이고 기관 이름도 가상이며, 정답표(label_fraud)는 임계값을 고르기 위해 심어 둔 것이다.
채점기는 여러분이 만든 DB 에서 기대값을 다시 계산해 대조한다. 소수는 넷째 자리까지 적고, 정수 칸은 정확히 맞아야 한다.

단계

1. /root/fraud/make_claims.py 를 만들어 실행해 /root/fraud/claims.db 에 계약 200건과 청구 400건(확정 사기 24건)을 넣는다.
2. /root/fraud/rules.py 에 규칙 다섯 개와 가중치를 모아 두고, 규칙별 성적을 /root/fraud/rules.csv 에 적는다.
3. 점수를 합쳐 1점 이상인 청구를 /root/fraud/scores.csv 에 어떤 규칙이 걸렸는지와 함께 적는다.
4. 처음 제안된 임계값 4점에서 혼동행렬과 세 지표를 /root/fraud/confusion.json 에 적는다.
5. 임계값 1점부터 11점까지의 지표를 /root/fraud/sweep.csv 에 적는다.
6. 임계값 4점 기준으로 채널별 적용률과 기저율을 /root/fraud/fairness.csv 에, 가장 많이 걸린 집단과 정밀도가 가장 낮은 집단을 /root/fraud/fairness.json 에 적는다.
7. 조사 인력 한도 10건 안에서 임계값을 골라 /root/fraud/threshold_choice.json 에 근거와 함께 적는다.
8. 규칙판을 /root/fraud/rulebook.json 에, 사람이 읽을 정리를 /root/fraud/fraud_report.md 에 낸다.

참고

단계 8개

  1. 합성 청구 자료 만들기
  2. 규칙 다섯 개의 성적 내기
  3. 점수를 합쳐 판정 목록 만들기
  4. 혼동행렬과 세 지표 계산하기
  5. 임계값을 옮겨 가며 표로 만들기
  6. 집단별 적용률과 기저율 나란히 보기
  7. 조사 인력 한도 안에서 임계값 고르기
  8. 규칙판을 판 번호와 지문과 함께 내보내기