[kaggle]유방암 예측 프로젝트:step1 EDA

민서·2024년 6월 9일
0

kaggle

목록 보기
1/3

캐글의 유방암 초음파 이미지 데이터셋을 활용하여 CNN classification Task를 진행해보고자 합니다.
해당 코드는 작성자의 Github에 공유되어 있습니다.

01. 문제정의

유방암은 여성 사망 원인 중 하나로, 조기 발견이 매우 중요하다. 본 프로젝트는 유방 초음파 이미지를 사용하여 유방암을 분류하는 모델을 개발하는 것을 목표로 한다.

About Dataset

이 데이터셋은 2018년에 25세에서 75세 여성 600명을 대상으로 수집된 유방 초음파 이미지를 포함하며, 총 780개의 이미지가 PNG 형식으로 이루어져 있다.
이미지 크기는 평균 500*500 픽셀이고, 정상, 양성, 악성 세 가지 클래스로 이루어져 있다고 한다.

02. EDA(탐색적 데이터 분석)

해당 코드는 Github 레파지토리의 00_eda.py에 공유되어있습니다.

실제로 딥러닝 학습을 하기 전, 데이터셋을 충분히 이해하는 것은 데이터의 품질을 확인하고 데이터의 분포를 파악하여 적절한 모델을 선택하고 전처리방법을 강구하는 데에 매우 중요하다.

A. 이미지 크기분포 확인

우선 데이터셋 설명을 통해 각각의 이미지의 크기가 다름을 유추할 수 있다. 그러므로 우선 이미지의 크기를 확인해보았다.

Class: benign
  Average Width: 614.19
  Average Height: 495.86
  Max Width: 1028
  Max Height: 719
  Min Width: 315
  Min Height: 324
  Width Quartiles: [554. 563. 714.]
  Height Quartiles: [464. 471. 574.]

Class: malignant
  Average Width: 597.90
  Average Height: 493.96
  Max Width: 1048
  Max Height: 677
  Min Width: 190
  Min Height: 332
  Width Quartiles: [552. 564. 650.]
  Height Quartiles: [463. 474. 555.]

Class: normal
  Average Width: 651.17
  Average Height: 532.85
  Max Width: 948
  Max Height: 712![](https://velog.velcdn.com/images/kms39273/post/7ae2779f-9083-477d-b855-5fbfd3fa2dba/image.jpg)

  Min Width: 391
  Min Height: 310
  Width Quartiles: [556. 616. 765.]
  Height Quartiles: [470. 493. 587.]
  
class benign : 891 files found!
class malignant : 421 files found!
class normal : 266 files found!

width, height의 평균과 사분위수를 확인해본 결과, 대략적으로 width는 500~700 사이, height는 450~600 사이에 50%의 데이터가 존재함을 확인했다.
3개의 클래스에는 각각 891개, 421개, 266개의 파일이 확인된다. 클래스별 데이터 갯수 편차가 있기 때문에 학습 시 stratified sampling과 같은 methodology가 요구된다.
또한 클래스별 데이터 갯수도 적은 편이기 때문에 필요에 따라 data-augmentation이 요구되며, k-fold cross-validation 기법을 사용할 수도 있다.

B. 이미지 확인


시각적으로도 normal 클래스에서는 종양이 관찰되지 않고, malignant 클래스와 benign 클래스에서는 관찰됨이 확인된다.
malignant클래스와 benign클래스간에는 선명도 정도의 차이가 있는 것이 대략적으로 확인되었다.

C. 분포확인

class benign : 437 files found!
Class: benign
	Mean of pixel values: 86.28
	Standard deviation of pixel values: 8.82

class malignant : 210 files found!
Class: malignant
	Mean of pixel values: 79.77
	Standard deviation of pixel values: 9.29

class normal : 133 files found!
Class: normal
	Mean of pixel values: 81.01
	Standard deviation of pixel values: 9.45

Mean of pixel values(All class): 83.63
Standard deviation of pixel values(All class): 9.16

추후 Normalization을 위해 채널별 평균 표준편차도 확인하였다.

profile
실패보다 사람을 더 미치게 하는게 후회더라구요

0개의 댓글