Building a Dementia Diagnosis Pipeline

고령화 시대의 의료 불균형 해소를 위한 치매 진단 파이프라인 구축
May 17, 2023
Building a Dementia Diagnosis Pipeline
📄
계획서

진행 상황

회의록

 

1. 프로젝트 개요

1-1. 주제


고령화 시대의 의료 불균형 해소를 위한 치매 진단 파이프라인 구축 -Kim Oh Choi-

 
퇴행성 질환인 치매 관련 AI 기술의 필요성을 탐색하고 비정형, 정형 데이터를 통해 치매의 위험 인자를 탐색, 예측, 판단 할 수 있는 모델을 개발한다.
  • 라이프로그 데이터 : 웨어러블 기기를 통해 수집한 정형 데이터로 치매 위험 인자를 판별하고 M.L / D.L 모델을 통해 경도 인지 장애 단계를 조기에 예측한다.
  • 비정형 데이터(MRI) : 영상 이미지 데이터를 통해 치매를 판단한다.
 

1-2. 주제 선정의 배경


👵🏼  치매 유병률 증가와 가속화되는 의료 불균형

  • 고령화 : 고령화에 따른 치매 유병률은 기하급수적으로 늘어나는데, 의료 불균형은 가속화 되고 있다. 의료인력 부족 문제가 지방에서는 이미 발생하고 있으며, 이런 추세라면 의료 공백 문제가 더욱 심화될 것이다.
 

1-3. 본 프로젝트의 활용 방안 제시


  • 라이프 로그 데이터를 통해 치매 예측 모델 개발
  • 라이프 로그 데이터로 예측 후 직접 만든 MRI 분류 모델로 검증
💡
효용성
  1. 병원 밖에서 수집 가능한 데이터를 가지고 진단 모델을 만듦으로써 지역 사회에서도 의료 서비스를 이용 할 수 있다.
  1. 생활하며 수집되는 데이터를 활용한 모델로써, 더욱 많은 데이터를 쉽게 수집할 수 있으며 금전적인 부담이 없다.
  1. AI 기술을 활용해 부족한 영상의학과 및 신경과 등 불균형한 의료 인력에서 오는 부담을 줄일 수 있다.
 
제한점
  1. 치매란 인지 기능 및 다양한 의학적 근거를 통해 진단되어야 하기에 완벽한 조기 진단을 보기 위해선 다양한 전문 의료 인력이 필요하다.
  1. 라이프로그 데이터에서는 치매 환자의 표본이 부족한 문제점을 가지고 있으며 치매의 증상은 생활 수준의 변화 뿐이 아니라 다양한 변화를 가지고 오기에 다양한 변수를 수집해 모델링하여 더욱 정확도 높은 예측 결과를 제공해야 한다.
  1. 웨어러블 기기의 보편화가 이루어지지 않는다면 조기진단 모델 적용이 어렵다.
  1. 신뢰도가 높은 웨어러블 기기를 활용해야 하며, 수집 시 사용한 웨어러블 기기의 신뢰도에 따라 모델링의 결과가 달라질 수 있다.
 

1-4. 프로젝트 결과물 (Output)


2. 프로젝트 팀 구성 및 역할

김민기
라이프로그 데이터 및 이미지 데이터 분석 결과를 활용한 대시보드 제작
최용현
라이프로그 데이터 분석 및 머신러닝 및 딥러닝을 활용한 예측 모델 개발
김지민
두개골 없앤 MRI를 학습한 모델에 OASIS2데이터 적용
김희묵
CANNY로 MR외곽선을 학습한 모델에 OASIS2데이터 적용
오정현
데이터 증강을 통해 일반화한 학습한 모델에 OASIS2데이터 적용
최유현
OASIS-2 demographics 데이터로 치매 예측에 유의미한 변수 탐색

3. 프로젝트 수행 절차 및 방법

3-1. 활용 데이터 설명 (데이터 출처, 데이터 개요)

 
 
 
선행 모델 데이터 (Alzheimer MRI Preprocessed Dataset)
데이터 개요

New Dataset Description

  • 포맷 : 데이터셋은 전처리된 MRI이미지로, 모두 128 x 128 픽셀로 조정되었습니다.
  • 구성 : 데이터셋은 총 4개의 클래스로 나누어져 있습니다.
    • 비치매 (3200개 이미지)
    • 매우 경증 치매 (2240개 이미지)
    • 경도 치매 (896개 이미지)
    • 중증도 치매 (64개 이미지)
  • 이 데이터가 양이 많아서 정확도가 높게 나옴
  • FreeSurfer로 두개골만 지우고 분석하면 어떨까?
 
 
OASIS 인구통계 데이터(Demographics) + 이미지 데이터(MRI)
OASIS 데이터셋
# 데이터 : OASIS-2 데이터셋 중 인구통계학적 정보 # 형식 : xlsx df_demographic = pd.read_excel('../OASIS-2 dataset/demographics.xlsx') display(df_demographic.head(5)) df_demographic.shape
notion image
 
# 데이터 : OASIS-2 데이터셋 중 MRI 이미지 정보 # 형식 : nifti.img data_dir = '../OASIS-2 dataset/' img_paths = sorted(glob(os.path.join(data_dir, '**/*.nifti.img'), recursive=True)) imgs = [] for img_path in img_paths: try: img_arr = nib.load(img_path).get_fdata() imgs.append(img_arr) except Exception as e: print(f"{img_path} : {e}") # 3차원 이미지(영상)이기 때문에 127개 차원 중 원하는 영역만 불러오기 fig, axes = plt.subplots(1, 5, figsize=(30, 5)) for i in range(5): axes[i].imshow(imgs[i][:, :, 60]); print(len(imgs))
notion image
 

3-2. 활용 라이브러리 등 기술적 요소

pandas
Pandas는 데이터 분석 및 조작에 사용되는 Python 라이브러리입니다. 1차원 데이터와 2차원 데이터를 각각 처리하기 위한 Series와 DataFrame과 같은 데이터 구조를 제공합니다. Pandas는 또한 누락된 데이터, 데이터 시각화 및 다양한 파일 형식의 입력/출력을 처리하는 방법을 제공합니다.
numpy
NumPy는 수치 계산에 사용되는 Python 라이브러리입니다. 대규모 다차원 배열 및 행렬에 대한 지원과 이러한 배열에서 작동하는 광범위한 수학적 함수를 제공합니다. NumPy는 과학 컴퓨팅, 데이터 분석 및 기계 학습 애플리케이션에 널리 사용됩니다.
matplotlib
. Matplotlib는 다양한 플로팅 방법과 사용자 지정 옵션을 제공하는 Python의 포괄적인 데이터 시각화 라이브러리입니다.
seaborn
Seaborn은 Matplotlib를 기반으로 하는 Python 데이터 시각화 라이브러리로, 유익하고 매력적인 통계 그래픽을 만들기 위한 고급 인터페이스를 제공합니다. Seaborn은 또한 Matplotlib과 함께 사용하여 Matplotlib이 제공하는 그래프 기능을 보완할 수 있습니다.
plotly
Plotly는 사용자가 대화형 및 공유 가능한 플롯, 차트 및 대시보드를 만들 수 있는 웹 기반 데이터 시각화 라이브러리입니다.
sklearn
Scikit-learn(sklearn)은 분류, 회귀, 클러스터링 및 차원 감소를 포함하여 데이터 마이닝 및 분석을 위한 도구를 제공하는 기계 학습용 Python 라이브러리입니다.
tensorflow
TensorFlow는 Google에서 개발한 수치 계산 및 대규모 기계 학습을 위한 강력한 오픈 소스 소프트웨어 라이브러리입니다. 다양한 플랫폼과 장치에서 심층 신경망을 포함한 기계 학습 모델을 구축하고 교육하기 위한 도구를 제공합니다.
streamlit
Streamlit은 데이터 과학 및 기계 학습 프로젝트를 위한 맞춤형 웹 애플리케이션을 구축하는 데 사용되는 Python 라이브러리입니다. 이를 통해 개발자는 HTML, CSS 또는 JavaScript에 대한 지식 없이도 간단한 Python 스크립트를 사용하여 대화형 데이터 앱을 빠르게 만들고 배포할 수 있습니다.
networkx
NetworkX는 파이썬에서 복잡한 그래프 및 네트워크를 다루는 데 사용되는 라이브러리입니다. 그래프 객체를 만들고 Node와 Edge를 추가하는 도구뿐만 아니라, 연결성, 중심성, 최단 경로 길이와 같은 다양한 메트릭을 계산하는 기능을 제공합니다.

정형 데이터 모델

LogisticRegression
로지스틱 회귀분석은 데이터 집합의 관측된 개별 결과가 양성 또는 음성인 두 가지 결과 중 하나일 때, 독립 변수와 종속 변수 간의 관계를 모델링하는 데 사용됩니다.
DecisionTreeClassifier
의사결정나무 분류기는 입력 변수에 대한 결정 규칙을 학습하고, 이를 사용하여 관측 결과의 클래스를 예측하는 데 사용됩니다.
SVC
SVM은 고차원 공간에서 선형 및 비선형 분류, 회귀 및 이상치 탐지 문제를 해결하는 데 사용되는 강력한 분류 알고리즘입니다.
KNeighborsClassifier
KNN 분류기는 새로운 관측값의 클래스를 예측할 때 가장 가까운 이웃 데이터의 클래스를 사용하는 분류 알고리즘입니다.
RandomForestClassifier
랜덤 포레스트는 여러 개의 의사결정나무를 생성하고 그들의 예측을 조합하여 보다 정확한 예측을 수행하는 데 사용됩니다.
XGBClassifier
XGBoost는 Gradient Boosting 알고리즘을 기반으로 하며, 빠른 속도와 높은 예측 정확도를 제공하는 데 사용됩니다.
LGBMClassifier
LightGBM은 Gradient Boosting 알고리즘을 기반으로 하며, 대규모 데이터 집합에서 빠른 학습 및 높은 예측 정확도를 제공하는 데 사용됩니다.
Catboost
Catboost는 Gradient Boosting 알고리즘을 기반으로 하며, 범주형 변수를 처리하는 데 있어서 다른 Gradient Boosting 라이브러리와 비교하여 보다 뛰어난 예측 성능을 제공하는 데 사용됩니다.
DNN
Deep Neural Network는 여러 층으로 구성된 인공 신경망 모델로, 이미지, 음성, 텍스트 등 다양한 데이터 유형의 예측 및 분류에 사용됩니다.

비정형 데이터 모델

CNN
CNN은 Convolutional Neural Network의 약자로, 이미지와 같은 고차원 데이터를 처리하기 위한 인공 신경망의 한 종류입니다. 이미지 분류, 객체 검출, 분할 등 다양한 이미지 처리 작업에서 사용됩니다.
Canny
Canny Edge Detection은 이미지에서 에지(Edge)를 검출하는 알고리즘 중 하나입니다. 이미지의 밝기 변화가 큰 지점을 찾아서 에지로 인식합니다.
Contour
Contour는 이미지에서 최외곽의 경계선 위치를 검출하고, 그 위에 검은색 선을 덮어 씌워 두개골을 지우는 방식입니다.
Augmentation
Augmentation은 데이터 증강 기술로, 기존 데이터에 다양한 변형을 적용하여 데이터셋을 보강합니다. 예를 들어 이미지에서는 회전, 크기 조정, 반전 등의 변형을 적용하여 데이터를 다양하게 만들어 모델의 성능을 향상시킵니다.
 
 
 

4. 프로젝트 회고 및 개선점

4-1. 현업자 피드백 + 각종 질문

 

4-2. 회고(개인의 문제인식~극복과정)

이름
회고 내용
김민기
프로젝트 초기에 데이터 수집과정에서 개인 정보 및 의료 데이터다 보니 원하는 데이터를 얻어내는게 어려웠다. 처음 시각화를 진행할때 어떤 방식으로 시각화를 해야할까에 대해서 고민을 했는데 팀원들과 소통을 통해 방향성을 잡고 진행할 수 있었다.
김지민
분석에 용이한 좋은 데이터를 구하는게 얼마나 어려운지 실감했다. 비정형 데이터를 다뤄본 경험이 없어서 데이터를 가져오는 단계에서부터 굉장히 어려웠지만 팀원들과 서로 모르는 내용을 공유하면서 조금씩 해결할 수 있었다.
김희묵
의료데이터다보니 데이터를 구하기가 어려웠으며, 이미지 경로 설정 부분이 어려웠지만 팀원들의 도움으로 극복했습니다. 또한 CNN 모델을 만들 때 어떻게 쌓아야 적절한지를 이론적으로 이해하지 못하고 진행한 것이 아쉬웠습니다. 팀원들 덕분에 여러가지 전처리 방식을 배워 이미지 데이터를 다루는 것이 재밌었습니다. 또한 여러 시각화 기술을 배운 것도 많이 도움이 되었습니다.
오정현
의료데이터이다보니 데이터셋 구하기가 어려웠다. 또한 이미지 데이터를 다루어 본 경험이 부족하여 이미지 차원에 대한 에러나 의료데이터의 확장자를 로드하는 부분에서 어려움이 많았다. 팀원들과 협업하면서 에러 해결, 인사이트 공유 등으로 스킬 업할 수 있었다.
최용현
주제 선정이 초기에 쉽게 되어 진행하는데 어려움은 없었지만, 기술적 한계를 마주 칠 때 마다 많이 좌절했던 기억이 난다. 조원들과 같이 상의하고 다각적으로 접근하며 문제점을 해결 할 수 있었다.
최유현
데이터를 구하는 것에 어려움이 있었고 계획했던 방향이 쉽지 않아서 여러 번의 시행착오를 하게 되었다. 그 과정에서 많은 회의를 통해 방향을 잡아갈 수 있었고 팀원들의 다양한 의견과 스킬로 많은 인사이트를 얻을 수 있었다. 특히 예측 모델의 정확도가 높지 않은 점은 아쉽지만 더 많은 변수들로 훈련한다면 더 좋은 모델이 될 것 같다.
 

4-3. 개선점 (팀 내에서 논의 및 합의된 개선 방향)

예측 모델의 정확도 ➡️ 같은 환자의 더 많은 변수 데이터를 수집하면 정확도를 높일 수 있을 것이다.
 
 

4-4. 추후 개선 계획

종합 모델 대시보드 ➡️ 두개골을 제거하는 전처리 코드를 사용하는 모델을 스트림릿으로 배포하면 더 좋은 모델을 많은 사람들이 사용해 볼 수 있을 것이다.

5. 부록

5-1. 참고자료

데이터셋
스토리텔링
참고
Open Access Series of Imaging Studies: Longitudinal MRI Data in Nondemented and Demented Older Adults
Abstract. The Open Access Series of Imaging Studies is a series of neuroimaging data sets that are publicly available for study and analysis. The present MRI data set consists of a longitudinal collection of 150 subjects aged 60 to 96 years all acquired on the same scanner using identical sequences. Each subject was scanned on two or more visits, separated by at least 1 year for a total of 373 imaging sessions. Subjects were characterized using the Clinical Dementia Rating (CDR) as either nondemented or with very mild to mild Alzheimer's disease. Seventy-two of the subjects were characterized as nondemented throughout the study. Sixty-four of the included subjects were characterized as demented at the time of their initial visits and remained so for subsequent scans, including 51 individuals with CDR 0.5 similar level of impairment to individuals elsewhere considered to have “mild cognitive impairment.” Another 14 subjects were characterized as nondemented at the time of their initial visit (CDR 0) and were subsequently characterized as demented at a later visit (CDR > 0). The subjects were all right-handed and include both men (n = 62) and women (n = 88). For each scanning session, three or four individual T1-weighted MRI scans were obtained. Multiple within-session acquisitions provide extremely high contrast to noise, making the data amenable to a wide range of analytic approaches including automated computational analysis. Automated calculation of whole-brain volume is presented to demonstrate use of the data for measuring differences associated with normal aging and Alzheimer's disease.
Open Access Series of Imaging Studies: Longitudinal MRI Data in Nondemented and Demented Older Adults

5-2. 출처

데이터셋
TEST DATA AI HUB
Test Data OASIS-2
캐글 노트북 참고한 노트북
 
이미지
 
 

프로젝트 깃허브

Share article

CodeYH