JKIICE (Journal of the Korea Institute of Information and Communication Engineering)
한국정보통신학회논문지 Vol. 28, No. 8: 891~897, Aug. 2024
뇌졸중 데이터를 통한 머신러닝, 딥러닝 예측 및 분류 기법 성능비교
김재호1·김장영2
더보기
선택 이유
─머신러닝, 딥러닝 기법을 전반적으로 살펴보고 성능을 평가할 수 있는 방법들이 있을 것 같아 탐구해보고 유사한 프로젝트로 재현해보고자 함
1. 서론
뇌졸중: 뇌의 일부분에 혈액을 공급하는 혈관이 막히거나(뇌경색), 혈관이 터짐(뇌출혈)으로써 뇌가 손상되어 나타나는 증상
사용한 데이터셋 : Kaggle 링크
Stroke Prediction Dataset
11 clinical features for predicting stroke events
www.kaggle.com
─ 성별, 나이, 고혈압유무, 심장질환의 유무, 결혼유무, 일 유형(children, Govt_job, Never_worked, private, self-employee 4개로), 거주유형(도시와 시골), 혈액의 포도당 수준, bmi(body mass index, 체질량지수), 흡연유무, 뇌졸중 유무로 구성
머신러닝 알고리즘: Logistic Regression, Light GBM, CatBoost, Naive Bayes, Random Forest, Decision Tree
딥러닝 알고리즘: DNN
앙상블: RNN+CNN
2. 기존 연구
─Cox 비례 위험 모델
─SVM(Support Vector Machines)과 결합하여 제안된 기능 선택 알고리즘
─마진 기반 분류기의 개념과 중도 회귀 분석을 결합한 마진 기반 중도절단 회귀 알고리즘
3. 분석 알고리즘
3.1. DNN
─DNN(Deep Neural Network): 입력층(input layer)과 출력층(output layer) 사이에 여러 개의 은닉층(hidden layer)들로 이뤄진 인공신경망
─순차적 데이터를 입력을 받아 텍스트 처리, 시계열 데이터 처리, 자연어처리에 많이 사용
3.2. 앙상블 (RNN+CNN)
─CNN(합성곱신경망 : Convolution Neural Network): 하나 또는 여러개의 합성곱 계층과 그 위에 올려진 일반적인 인공 신경망 계층으로 구성
─RNN(순환신경망 : Recurrent Neural Network): 인공신경망을 구성하는 유닛 사이의 연결이 Directed cycle을 구성하는 신경망
4. 실험결과 및 분석
4.1. EDA
─이진분류인 column이 많음, 상관관계 중요
─나이와 가장 많은 상관관계를 가짐. 다중공선성을 가지는 상관관계 기준은 0.8
─stroke에 대한 분포가 불균형 -> Recall을 이용한 방법에서 weighted 평균과 macro 평균을 동시에 제시
4.2. 다중공선성
다중공선성: 독립변수간 상관관계가 있는지 나타내는 지표
다중공선성 해결 방법: 변수 삭제, 주성분분석(PCA), 정규화
VIF(분산팽창인수): 다중공선성 나타내는 척도. 5보다 크면 다중공선성 의심
$ VIF = \frac{1}{1-(결정계수)} $
4.3. Accuracy, Recall
$ Accuracy = \frac{올바르게 \; 예측한 \; 전체 \; 수}{전체 \; 예측 \; 수} $
$ Recall = \frac{올바르게 \; 예측한 \; 실제 \; 양성 \; 수}{전체 \; 예측 \; 수} $
$ ROC AUC \approx \frac{올바르게 \; 순위 \; 매긴 \; 쌍의 \; 수}{전체 \; 가능한 \; 쌍의 \; 수} $