의료 영상 데이터 분석 기법 - 서포트 벡터 머신, 결정 트리, 랜덤 포레스트 모델
서포트 벡터 머신은 일명 최대 마진 분류기라고 불리며, 기존의 로지스틱 선형 회귀가 가진 문제점들을 해결하였습니다. 손실 함수를 다시 살펴보면 y가 1인 경우 수식 5의 Z값이 양수이면 경계의 위쪽에 위치하고, 있어서 손실 값을 작게 하고 작거나 음수라면 높게 정의할 수 있습니다. 여러 가지 방법이 존재할 수 있는데, 이를 그림 8이 잘 보여주고 있습니다. 가장 쉽게 생각해볼 수 있는 손실 함수는 경계의 위에 있으면 손실 0, 아래에 있으면 손실 1로 정의되는 0, 1 손실 함수입니다. 그리고 로지스틱 선형 회귀에서 사용한 손실 함수인 –log 함수 기반의 크로스 엔트로피는 빨간색으로 표시되어 있으며, 경계의 위에 있다 하여도 손실 함수가 0이 아닌 작은 값을 가지며 특히 3 이상이 되어도 0은 아님을 알 수 있습니다. 서포트 벡터 머신은 다른 손실 함수를 사용합니다. 경계의 주변에 있는 데이터들이 중요해집니다. 경계 바깥에 있는 데이터들은 더 이상 손실 함수에 영향을 주지 않게 됩니다. 이렇게 손실 함수만의 변화를 통해 경계에 있는 데이터들을 좀 더 잘 나눌 수 있도록 합니다. 서포트 벡터 머신에서 이 경계에 있는 데이터들을 서포트 벡터라고 하며, 학습의 결과로 얻게 되는 경계는 이 서포트 벡터들 사이의 거리가 가장 멀도록 설정됩니다. 이 서포트 벡터 머신에 사용된 손실 함수는 힌지 함수의 일종인데, 일정 한계값 보다 크면 0, 작으면 선형적으로 커지는 특성을 가지고 있습니다. 이러한 함수 형태는 딥러닝에서 다시 나타나게 되며 이를 ReLU라고 합니다. 서포트 벡터 머신은 새로운 손실 함수를 도입하여 두 분포의 경계를 보다 잘 나눌 수 있도록 함으로써 로지스틱 선형 회귀가 갖는 첫 번째 한계점을 극복하였습니다. 이제 두 번째 한계점을 어떻게 극복하였는지 살펴보겠습니다. 두 번째 한계점은 비선형 경계를 갖는 분포를 나눌 수 없다는 것이었습니다. 서포트 벡터 머신은 이를 위해 커널이라는 개념을 도입합니다. 커널은 두 데이터 간의 유사성을 아래와 같은 수식으로 계산하여 사용합니다. 두 데이터의 특징 값들이 서로 비슷하다면 1, 다르다면 0에 가까워집니다. 주어진 데이터를 서로 간의 유사성으로 모두 변환하여 새로운 데이터셋을 만들고 이를 학습에 사용함으로써, 비선형 경계와 같은 한계점을 극복하였습니다. 예를 들어 2개의 특징 값을 가는 100개의 학습 데이터가 있다고 하면 커널 기반 서포트 벡터 머신에서는 내부적으로 각각의 상대적 유사성을 계산하여 100개의 학습 데이터 간 유사성 특징 값을 갖는 데이터로 변환합니다. 이를 학습에 사용하여 경계를 구하게 됩니다. 이렇게 되면 그림 7의 분포는 서로 간의 유사성이 큰 중심 그룹과 유사성이 크지 않은 바깥에 위치한 그룹으로 쉽게 구분할 수 있습니다. 정리하면 서포트 벡터 머신은 커널 개념을 도입하여 데이터들 간에 상대적 유사성을 기준으로 데이터를 변환하여 비선형 경계도 학습이 가능하도록 하였습니다. 이 서포트 벡터 머신은 딥러닝 기반의 인공지능이 활발히 연구되기 전까지 인공지능 분야의 꽃이었습니다. 2000년대 중반까지 대부분의 영상 인공지능 연구들이 이를 사용하여 수행되었습니다. 하나의 기술의 한계는 또 다른 기술이 꽃피기 위한 출발점일지도 모릅니다.
결정 트리
커널 기반의 서포트 벡터 머신은 좋은 성능을 보여주었으나 문제점 또한 있었습니다. 그것은 바로 설명 가능하지 않다는 것입니다. 어떤 결과가 나오더라도 어떤 데이터에 의해서인지 내부적으로 어떤 특징 값 때문에 얻어진 결과인지를 판단할 수가 없었습니다. 그리고 특징값의 수가 점점 늘어날수록 분류 모델의 학습에 적합한 특징 값을 찾는 특징 값 선택과정이 추가적으로 필요하게 되었습니다. 이러한 단점을 해결할 수 있는 방식이 바로 인간이 결정을 내릴 때 사용하는 방식을 운용한 학습 모델인 결정 트리입니다. 이러한 결정 트리는 그림 10과 같은 형태를 취하고 있으며, 맨 위의 루트 노드에서 시작하여 리프 노드까지 내려가면서 결정 값을 얻을 수 있습니다. 그림 10은 의학 연구자에 의해 뎅기열의 고위험군을 찾기 위해 제안한 결정 트리의 예를 보여주고 있습니다. 병원에 내원한 환자에게 토하는 증상이 있었는지를 보고 흉부 X선 영상을 이용하여 흉막 산출이 있는지와 혈압 정보를 이용하여 이러한 결정 트리를 구성하였습니다. 이는 연구자에 전문적 지식을 이용하여 이루어졌는데, 이와 달리 데이터를 통해 인공지능 모델 학습을 통해서도 이러한 결정 트리를 얻을 수 있습니다. 결정 트리 모델은 새로운 정량적 성능 평가 함수를 이용하는데, 이를 정보 이득이라고 하며 이번에는 최솟값이 아닌 최댓값을 갖도록 트리에서 노드를 하나씩 찾게 됩니다. 결정 트리의 학습 방법은 첫 번째, 모든 특징 값을 하나씩 가져와서 임계값을 변화시켜가며 정보 이득 값을 계산하여 최적의 임계값을 찾고. 둘째, 이 임계값을 기준으로 각 특징 값의 정보 이득 중 최댓값을 갖는 특징 값을 이번 노드로 구성하고. 셋째, 다음 노드에서도 1, 2 과정을 반복합니다. 마지막으로 모든 데이터가 구분되었거나, 설정한 층 이상이 되면 중지합니다. 그림 11은 결정 트리의 학습과정 중 한 특징 값에서 임계값을 결정하는 예를 설명하기 위한 것입니다. 서로 다른 임계값을 적용하여 그림 11의 a와 b와 같은 구분된 결과를 얻었다고 가정해 봅시다. 가로 안의 숫자 쌍은 두 분포에 속하는 데이터의 수를 나타낸다고 할 때, a와 b에서 정보 이득을 계산해보면 b가 더 큰 값을 가지게 됩니다. 이는 b에서 두 번째 데이터를 확실히 구분할 수 있기 때문입니다. 이러한 과정을 거치게 되면 그림 12와 같은 결정 트리와 경계를 얻을 수 있습니다. 다만 경계를 보면 모두 직교하게 그려졌음을 알 수 있습니다. 이는 결정 트리 모델의 특징인, 한 가지 특징 값을 한 노드에서 결정하게 되어서 지그재그 형태로 경계가 그려짐을 알 수 있습니다. 결정 트리는 일반적으로 비선형 모델보다 낮은 성능을 보임에도 불구하고 중요한 특징 값을 선별할 수 있다는 특성과 함께 사람이 쉽게 이해할 수 있다는 장점을 가지고 있어 오늘날까지도 사용되고 있는 인공지능 기술입니다.
랜덤 포레스트
결정 트리를 좀 더 보완하고자 등장한 것이 랜덤 포레스트이며, 두 가지 점에 있어 중요한 의미를 가지고 있습니다. 첫 번째는 부트스트랩이라는 데이터 샘플링 방법입니다. 쉽게 설명하면 학습 데이터에서 중복을 허용하여 랜덤 하게 샘플을 뽑는 것입니다. 결정 트리는 주어진 데이터셋에서 하나의 구성을 가지게 되므로 다양성을 줄 수 없습니다. 그러나 부트스트랩을 사용하면 같은 학습데이터 내에서도 조금씩 다른 여러 결정 트리들을 만들어낼 수 있습니다. 두 번째는 이렇게 만들어진 여러 결정 트리들의 예측 결과들을 앙상블 하는 것입니다. 일반적으로 많이 사용되는 앙상블 방식은 다수결 방식입니다. 이 두 가지를 종용하여 결정 트리를 개선하였으며 다른 인공지능 모델과 비교하였어도 우수한 성능을 보여 현재까지도 많이 사용되고 있습니다.
'의료 인공지능 전망, 의료 영상 분석 방법, 의료 데이터 분석 기법' 카테고리의 다른 글
인공지능 병리 영상분석 방법론과 사례 (0) | 2022.08.02 |
---|---|
병리 영상의 특성에 따른 영상분석 모델 개발의 어려움과 극복방안 (0) | 2022.08.02 |
의료 영상 데이터 분석 기법 - 로지스틱 모델 (0) | 2022.08.02 |
의료 영상 데이터 분석 - 지도 학습의 종류와 인공지능 학습 (0) | 2022.08.01 |
의료 영상 데이터 분석 기법 - CNN 구조와 특징 (0) | 2022.08.01 |
댓글