-
당뇨병은 개인이 혈액 내 포도당 수준을 효과적으로 조절하는 능력을 상실하고 삶의 질과 기대 수명을 감소시키는 심각한 만성 질환이다.
-
심장병, 시력 상실, 하지 절단 및 신장 질환과 같은 합병증은 당뇨병 환자의 혈류에 만성적으로 높은 수준의 당이 남아 있는 것과 관련이 있다.
-
당뇨병을 완치할 수 있는 방법은 없지만 체중 감량, 건강한 식사, 활동적 생활 및 치료를 받는 것과 같은 전략은 많은 환자에서 이 질병의 피해를 완화할 수 있다.
-
따라서 조기 진단은 생활 방식의 변화와 보다 효과적인 치료로 이어질 수 있으므로 중요하다.
- The Behavioral Risk Factor Surveillance System(BRFSS)은 CDC에서 매년 수집하는 건강 관련 전화 설문조사다.
- 데이터 출처 : kaggle
- 🇺🇸 미국의 설문조사 결과를 토대로 만들어진 데이터셋이다.
- 원래 데이터 세트는 330개개 변수를 가지고 있는데 22개 변수로 축소된 어느정도 정제된 데이터 셋이다.
- shape = (253680, 22)
-
Diabetes_012 : 당뇨병 유무 및 단계
0 = 당뇨병 없음, 1 = 당뇨병 전증, 2 = 당뇨병 -
HighBP : 고혈압 여부
0 = 높은 혈압 없음, 1 = 높은 혈압 -
HighChol : 고콜레스테롤의 유무
0 = 고콜레스테롤 없음, 1 = 고콜레스테롤 -
CholCheck : 5년 동안 콜레스테롤 검사 유무
0 = 검사 없음, 1 = 검사 있음 -
BMI : 체질량 지수
-
Smoker : 당신은 일생 동안 적어도 100개비의 담배를 피웠습니까? [참고: 5갑 = 100개비]
0 = 아니오, 1 = 예 -
Stroke : 뇌졸중의 유무
0 = 아니오, 1 = 예 -
HeartDiseaseorAttack : 관상 동맥 심장 질환(CHD) 또는 심근 경색증(MI) 유무
0 = 아니오, 1 = 예 -
PhysActivity : 지난 30일 동안의 신체 활동 - 직업을 포함하지 않음
0 = 아니오, 1 = 예 -
Fruits : 과일을 하루에 1번 이상 섭취
0 = 아니오, 1 = 예 -
Veggies : 채소를 하루에 1번 이상 섭취
0 = 아니오, 1 = 예 -
HvyAlcoholConsump : 과음자(성인 남성은 주당 14잔 이상, 성인 여성은 주당 7잔 이상)
0 = 아니오, 1 = 예 -
AnyHealthcare : 건강 보험, HMO와 같은 선불 플랜 등을 포함한 모든 종류의 의료 보험이 있습니다.
0 = 아니오, 1 = 예 -
NoDocbcCost : 지난 12개월 동안 의사의 진찰이 필요했지만 비용 때문에 갈 수 없었던 적이 있습니까?
0 = 아니오, 1 = 예 -
GenHlth : 일반적으로 귀하의 건강 상태는 어떤가요?(1-5 척도)
1 = excellent 2 = very good 3 = good 4 = fair 5 = poor -
MentHlth : 스트레스, 우울증, 감정 문제 등을 포함한 정신 건강을 생각해보면, 지난 30일 동안 정신 건강이 좋지 않았던 날은 며칠입니까? (1-30일)
-
PhysHlth : 지금 귀하의 신체적 질병과 부상을 포함한 신체적 건강을 생각해보면, 지난 30일 동안 귀하의 신체 건강이 좋지 않았던 날은 며칠입니까? (1-30일)
-
DiffWalk : 걷거나 계단을 오르는데 심각한 어려움이 있습니까?
0 = 아니오, 1 = 예 -
Sex : 0 = 여성, 1 = 남성
-
Age : 13단계 연령 범주
1 = 18 ~ 24세
2 = 25 ~ 29세
3 = 30 ~ 34세
4 = 35 ~ 39세
5 = 40 ~ 44세
6 = 45 ~ 49세
7 = 50 ~ 54세
8 = 55 ~ 59세
9 = 60 ~ 64세
10 = 65 ~ 69세
11 = 70 ~ 74세
12 = 75 ~ 79세
13 = 80세 이상
14 = 모름 / 답변 거부 (이것도 제거했습니다) -
Education : 교육 수준 척도(1-6)
1 = 학교에 다니지 않았거나 유치원에만 다니다
2 = 1-8학년(초등)
3 = 9-11학년(일부 고등학교)
4 = 12학년 또는 GED(고등학교 졸업)
5 = 대학 1년~3년 (일부 대학 또는 기술 학교)
6 = 대학 4년 이상(대졸)
9 = 거부됨(이 모든 기록은 데이터세트에서 삭제됨) -
Income :
1 = $10,000 미만
2 = $15,000 미만 ($10,000 ~ $15,000 미만)
3 = $20,000 미만($15,000 ~ $20,000 미만)
4 = $25,000 미만($20,000 ~ $25,000 미만)
5 = $35,000 미만($25,000 ~ $35,000 미만)
6 = $50,000 미만($35,000 ~ $50,000 미만)
7 = $75,000 미만($50,000 ~ $75,000 미만)
8 = $75,000 이상
77 = 모름/모름(데이터 세트에서 제거됨)
99 = 거부됨(데이터 세트에서 제거됨)
BLANK = 묻지 않음 또는 누락(데이터 세트에서 제거됨)
- Diabetes_012 : 0 = 당뇨병 없음, 1 = 당뇨병 전증, 2 = 당뇨병
-
분류문제 → 모델의 성능은 중요하지 않으므로 빠르게 학습하고 정확도가 우수한 LightGBM 모델을 사용할 것이다.
- LightGBM 모델
-
성능평가 지표 : f1_beta_score
- 정밀도(Precision) VS 재현율(Recall)
- 당뇨병이 아니라고 예측했는데 실제로 당뇨병인 경우 → 치명적이다!
- 당뇨병이라고 예측했는데 실제로는 당뇨병이 아닌 경우 → 추가 검사를 통해 정정하면 된다.
- 따라서 당뇨병의 유무를 판별하는 모델은 정밀도보다 재현율(Recall) 이 높아야 한다!
- 모델에 대한 설명 (XAI) → 모델이 결과를 예측할 때 각 특성이 미치는 영향을 파악하고 설명한다.
- 특성중요도(Mean decrease impurity, MDI)
- 순열중요도(Permutation Importance, Mean Decrease Accuracy,MDA)
- PDP(Partial Dependence Plots)
- SHAP 라이브러리