더북(TheBook)

2.10 마무리

이번 장에서는 당뇨 발병을 80% 정확도로 예측할 수 있는 다중 레이어 퍼셉트론을 설계하고 만들어 보았다.

가장 먼저 탐색적 데이터 분석을 수행했다. 각 특징 변수 분포를 확인하고 특징 변수와 목표 변수 사이의 관계도 살펴봤다. 그런 다음 데이터 전처리 과정을 거쳤다. 결측값을 제거하고 데이터를 표준화해 각 변수의 평균을 0으로, 분산을 1로 만들었다. 마지막으로 데이터를 무작위로 분할해 훈련 데이터셋, 검증 데이터셋, 테스트 데이터셋을 준비했다.

다음으로 다중 레이어 퍼셉트론의 아키텍처를 설계했다. 은닉 레이어는 두 개를 사용했고, 첫 번째 은닉 레이어에는 노드를 32개, 두 번째에는 16개 배치했다. 그런 다음 케라스의 Sequential 모델을 사용해 레이어를 하나씩 쌓아 완성했다. 다음으로 훈련 데이터셋을 사용해 다중 레이어 퍼셉트론을 훈련시켰다. adam 옵티마이저를 사용해 200회 반복 훈련하고 가중치와 편향을 갱신하며 모델 정확도를 점점 개선시켰다.

마지막으로 테스트 정확도, 혼동 행렬, ROC 곡선 지표를 사용해 모델을 평가했다. 위음성과 위양성 등 중요한 지표를 소개했고, 당뇨 발병을 예측하는 분류 모델에는 위음성이 특히 중요하다는 점을 역설했다.

이것으로 2장을 마친다. 다음 3장의 프로젝트에서는 시간 정보와 위치 정보를 담은 복잡한 데이터셋을 활용해 택시 요금을 예측해 본다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.