@@@ 인공지능/수학·통계를 몰라도 이해할 수 있는 쉬운 딥러닝

2 - 3. CNN 활용하기(2)

HTG 2021. 8. 28. 23:58
728x90

2-3-2. [의료 AI] 현미경 영상 분석을 통한 세포 종류 진단

데이터 살펴보기

8 종류의 조직 분류

각각 625장씩

데이터의 모든 수치는 0 ~ 1 사이의 숫자로 노멀라이즈하여 사용.

 

●어떤 인공지능 사용?

층수 종류 크기 활성화 함수
1층 CNN 16, (3, 3) ReLu
- MaxPool (2, 2) -
2층 CNN 32, (3, 3) ReLu
- MaxPool (2, 2) -
3층 CNN 64, (3, 3) ReLu
- MaxPool (2, 2) -
4층 CNN 64, (3, 3) ReLu
- MaxPool (2, 2) -
5층 CNN 64, (3, 3) ReLu
- MaxPool (2, 2) -
6층 Flatten - -
7층 FNN 512 ReLu
8층 FNN 8 SoftMax

2-3-1에 사용한 모델과 마지막 분류 종류가 8가지이기 때문에 출력층이 8인 것을 제외하고 동일

그리고 분류 문제이기 때문에 활성화 함수를 SoftMax를 사용

 

●딥러닝 코딩

- 인공신경망 컴파일

옵티마이저(optimizer) - Adam

메트릭(metrics) - accuracy

로스(loss) - sparse_categorical_crossentropy

 

●인공지능 학습

- 인공신경망 학습

 

 

- 학습 결과 출력

그래프로 출력

 

●인공지능 학습 결과 확인

- 인공지능 성능 확인하기

 

저자의 경우 인공지능의 최종 성능은 72~76%.

인간이 수년간의 경험을 통해 쌓아 올려야 하는 전문지식을 AI는 고작 20 에포크만에 확포.

난 뭐지 왜 이러지 이상하네 몇 번을 돌리고 바꿔봐도 이상하네 ....

 

- 학습 기록 확인하기

 

빨간 선이 train, 파란 선이 test

저자의 경우Loss는 트레이닝 로스도 부드럽게 감소하지 않고 로스가 어느정도 내려온 이후부터는 테스트 로스가 꾸준히 트레이닝 로스보다 높은 곳에 위치.

Accuracy로 보면 학습 상화도 썩 좋지 않음. 테스트 성능이 고르지 못하고 진동함.

후반부에는 오버피팅 양상이 보임. 트레이닝 정확도 또한 감소세.

2-3-1과는 다르게 결과 차이가 난다.

 

CNN, 이미지에만 사용되지는 않는다.

CNN은 영상 처리 이외 분야에서도 널리 사용.

목소리나 음악 등 소리 데이터를 CNN으로 분석하면 성능이 좋게 나옴.

소리는 STFT(Short Time Fourier Transform)하면 이미지와 같은 형태로 펼쳐짐. 여기에 CNN을 적용하여 소리 데이터를 처리하는 것.

자연어 처리에도 CNN을 사용하는 시도가 많음.

CNN을 적용할 경우 필터가 이미지 위를 움직이며 연산이 수행.

이때 필터가 움직이는 위치와 순서가 일정하므로 정보가 처리되는 순서가 항상 일정하다는 특색이 있음.

이 점을 이용해 CNN을 텍스트 처리에 응용한 연구가 이미 2014년에 있었음.

자연어 처리 대회 중 가장 유명한 <IMDB Benchmark> 순위를 살펴보면 2014년에 제안된 Seq2-bown-CNN이라는 CNN알고리즘이 11위를 차지 현재 나온 알고리즘 보다도 좋다는 의미.

 

 

오버피팅 회피

지금까지 배운 걸로 오버피팅으로 인한 성능 저하 개선