Data Scientist(DS)

Project 4 발표 script 본문

AI 부트캠프

Project 4 발표 script

빅데사이퍼 2021. 11. 11. 17:32

안녕하세요. CNN을 이용한 폐렴 진단을 발표하게 된 입니다.//

먼저 목차를 보여드리겠습니다. 목차 서론 본론 결론 및 한계점 순서로 발표를 진행하겠습니다.//

서론은 데이터를 선정한 이유와 가설입니다. //

데이터를 선정한 이유는 두가지입니다. 첫번째로 제가 관심있는 분야가 헬스케어이기때문입니다. 헬스케어 분야의 회사들은 주로 이미지를 통한 조기 진단을 목표로 하고 있습니다. 따라서 조기 판단을 할 수 있는 데이터 중 폐렴 데이터로 선정하게 되었습니다. 정상적인 폐포의 내부는 기체로 이뤄진 상태이지만 폐렴으로 인해 손상된 폐포에는 염증이 있어 액체 물질로 가득 차 있습니다. 증상에 따른 X-ray 색상 표를 참조해서 말씀드리면 왼쪽의 사진처럼 원래 폐포는 공기 상태로 존재하기 때문에 검은 부분이 많이 나오는 것이 정상입니다. 하지만 폐렴으로 인해 액체가 폐포에 가득해지면 X-ray촬영 시, 오른쪽 사진과 같이 연한 회색으로 존재하게 됩니다. //

다음은 실제 모델에 쓰인 데이터들입니다. 빨간 네모박스 안에 있는 두 데이터 중 어느 사진이 정상일까요? X-ray 표를 참조해서 생각해보면 연한 회색이 있는 왼쪽이 폐렴 환자의 사진 같습니다. //

하지만 실제로는 왼쪽이 정상인의 폐 사진이고 오른쪽이 폐렴 환자의 폐 사진입니다. 이처럼 x-ray로만은 확실한 판단을 내리기 힘듭니다. 그렇기 때문에 원래 폐렴을 판단하는 기준은 혈액검사와 x-ray 각종 배양검사에서 양성이 나왔을 때를 기준으로 하게 됩니다. 이처럼 다양한 검사를 하게 되면 그만큼 인적 및 자원이 더 들어가게 됩니다. 따라서 인공지능을 사용하면 육안으로 구분하기 힘들어 놓칠 수 있는 폐렴 초기도 판단을 할 수 있을 것이며, 다른 검사가 필요없이 x-ray만으로도 빠른 판단을 할 수 있다는 가설을 세워 진행하였습니다.//

본론은 다음과 같습니다. //

데이터의 전처리는 데이터 정규화와 불균형 해소를 해주었습니다. X-ray 사진의 경우 RGB가 아닌 Grayscale이며 각 픽셀이 0부터 255까지의 값을 가지고 있습니다. 범위가 크게 차이날수록 오차값이 최저가 되기까지 오랜 시간이 걸립니다. 따라서 비슷한 범위의 정규화를 시켜주어 빠른 학습이 되도록 정규화를 해주었습니다. 학습 데이터셋에서 정상환자의 데이터 수는 1080, 폐렴환자의 데이터는 3107개로 데이터 수가 약 세배가 차이나는 걸 확인할 수 있습니다. 따라서 데이터의 불균형을 해소하기 위해 가중치를 적용해주었습니다.//

데이터 증강 과정입니다사람마다 방향을 살짝씩 틀  있으니 shear_range를 조정해주었고사람마다 체구가 다르기 때문에 상대적 크기 조정을 통한 학습을 위해 zoom_range도 조정해주었습니다. 또한 보통  사진은 좌우반전 및 상하반전을 하지 않으므로 horizontal vertical flip을 사용하지 않았습니다. 오른쪽은 하나의 데이터로 증강한 이미지들입니다.//

선정 모델은 합성곱 신경망을 사용했습니다. 합성곱 신경망은 합성곱층과 풀링층으로 이루어져있습니다. 합성곱층에서는 이미지의 특징을 찾고 풀링층에서는 피처 맵의 차원을 줄입니다. 이미지에 있는 것처럼 convolution layerpooling layer를 두번 쌓은 모델을 사용했습니다. 또한 convolution 활성함수로 렐루를 사용했고 마지막 층에선 정상과 폐렴환자를 구분하기 위해 시그모이드를 사용했습니다. pooling 방법으로는 maxpooling을 사용했습니다.//

   모델 검증에 사용한 데이터의 비율은 데이터에 주어져 있는 6 : 1.5 : 2.5를 사용했습니다. 파라미터 튜닝으로는 얼리 스탑핑을 사용했습니다. Epoch20으로 잡고 validation data의 정확도가 max가 되는 지점을 찾았습니다. Epoch20으로 잡은 이유는 모델 을 학습하는 시간이 오래 걸리기 때문에 최대 1시간 반 이하의 학습할 수 있는 에포크로 잡았습니다. 그 결과 epoch15인 모델을 선정하게 되었습니다.//

   Test data로 모델을 평가한 결과 검증 데이터셋에 비해 크게 차이가 안 나는 것을 볼 수 있습니다. 폐렴환자를 진단하는데 중요한 지표 중 하나인 Recall값도 잘 나온 것을 확인할 수 있습니다. 전반적으로 큰 차이가 나지않는 것을 보아 일반화가 잘 되었다고 할 수 있습니다.

결론입니다. 이 모델을 통해 가설인 폐렴 초기 발견에 도움이 될 것으로 예상되며, X-ray 결과로 빠른 판단이 가능할 것으로 판단됩니다. 하지만 느낀 한계점으로는 정확도가 100%가 아니기 때문에 폐렴 환자를 놓칠 수 있어 단독으로 사용하기엔 아직 무리가 있다는 점입니다. 이것으로 발표를 마치겠습니다. 감사합니다.//