안녕하세요.
이번 글에서는 Adversarial Attack이 무엇인지 간단히 설명하고 왜 이러한 분야들을 알고 있어야 하는지 설명해보겠습니다.
1. Adversarial Attack이란?
- 우선 adversarial attack이 무엇인지 간단히 알아보겠습니다.
- 딥러닝에서는 일반화 성능을 높이기 위해 여러 Data augmentation 기법을 적용해서 학습을 시키곤 합니다.
- 가끔 인간도 동물의 각도나 색이 다른 경우 정확히 구분하지 못하기 때문에, 딥러닝 역시 이러한 오류를 범하기 쉽습니다.
- 그래서, 하나의 클래스를 학습시키기 위해 다양한 각도로 data를 augmentation 시켜 학습시킵니다. (Augmentation 기법에는 각도 뿐만 아니라, 색을 변조시키는 등 다양한 기법들이 존재합니다)
- 그런데, 아래 그림을 한 번 보도록 하겠습니다. 우선 제일 왼쪽의 이미지와 제일 오른쪽의 이미지가 다르게 보이시나요? 사람들이 봤을 땐 아무리봐도 같은 판다로 보일 거에요. 실제로 왼쪽 이미지에 어떤 noise를 입힌 결과가 오른쪽 이미지라고 해도, 사람눈엔 그저 별반 다를게 없어보이죠.
- 하지만, 딥러닝 입장에서는 이러한 noise에 민감합니다.
- 그래서, 아래 그림을 보면 딥러닝이 예측한 왼쪽 이미지의 결과와 오른쪽 이미지의 결과는 전혀 다릅니다.
- 위 그림의 중간 위치에 있는 어떤 noise 같은 것을 입력 했을 때 전혀 결과가 다르게 나오게 하는 기법을 'Adversarial attack'이라고 합니다. 즉, 딥러닝 모델이 잘 못 예측하도록 공격을 하는 것이죠. (Adversarial attack에 대한 개념은 앞으로 게재될 글에서 설명하도록 하겠습니다)
- 그렇다면, 이러한 adversarial attack으로 인해 어떤 문제가 발생할 수 있을까요? 여러 답이 있을 수 있겠지만, 여기에서는 미국의 의료 시스템 관점에서 발생할 수 있는 문제들에 대해 알아보도록 하겠습니다.
2. Medical imaging에서의 adversarial attack 사례
아래 논문을 바탕으로 딥러닝 모델이 adversarial attack에 얼마나 취약한지 살펴 보도록 하겠습니다.
https://arxiv.org/abs/1804.05296
- 하버드 의대의 Finlayson 등(36)은 흉부 X선 영상, 안저 영상, 피부 영상 등 3가지의 대표적인 의료 영상 분석에 딥러닝이 활용된 사례에 대해 적대적 공격을 시도하여 성공한 결과를 제시했습니다.
- Retina (안질환 예측)
- Chest X-ray (Pneumonia(폐렴) 예측)
- Dermoscopy (피부질환 예측)
- 공격 대상이 되는 모델에 대한 구조파악 정도에 따라 두 가지 공격방식이 존재 합니다. (더 다양한 종류에 대해서는 앞으로 게재될 글에서 설명하도록 하고, 여기에서는 간단하게 두 가지 종류만 설명하겠습니다.)
- White box attack: 공격자(or 해커)가 공격의 대상이 되는 모델 구조(모델의 아키텍쳐, 파라미터 및 하이퍼 파라미터 등) 및 학습 데이터를 알고 있는 상황에서 adversarial attack을 수행하는 공격 방식
- Black box attack: 공격자가 모델에 대한 내부구조를 파악하지 못한 상태에서 수행하는 블랙박스(black box) 공격 방식
- 아래 결과를 보면 adversarial attack 을 통해 얻은 결과(accuracy)는 충격적인 수준입니다.
4. Adversarial Attack에 의해 발생할 문제
의료산업에서 딥러닝 모델을 사용한다고 했을 때, adversarial attack은 산업전반에 치명적인 타격을 줄 수 있습니다. 아래 두 논문을 기반으로 발생할 수 있는 문제들에 대해서 알아보도록 하겠습니다.
https://arxiv.org/abs/1804.05296
https://ir.ymlib.yonsei.ac.kr/handle/22282913/173346
4-1. 의료소송 문제
- 미국 병원은 의료소송으로 망하는 경우가 많다고 합니다. 그렇다면, adversarial attack으로 인해 병원이 타격을 받을 수 있는 시나리오를 설명해보겠습니다.
- 우선, 원격의료 시스템 기반에서 deep learning 모델이 병원에서 사용되고 있다고 가정해보겠습니다.
- 사용하는 도중에 누군가가 adversarial attack을 시도했고, 이로 인해 딥러닝이 잘 못 된 진단을 하게된다면 분명 의료 소송이 발생할 것입니다. 이런 경우 딥러닝 모델을 제공한 회사에서 보상을 해주어야 할까요? 병원에서 보상을 해주어야 할까요? 이 문제에 대해서 확실하게 답을 할 수는 없지만, 병원 측에서는 이미지 하락을 통한 경제적 타격을 피할 수는 없을 겁니다.
- Adversarial attack이 법정에서 사기로 금방 판명 될 수 있다는 보장도 없고, 항상 사각지대가 있기 때문에 deep learning 제품 자체가 adversarial attack에 robustness 하게 만들지 않는 이상 병원에서는 항상 adversarial attack과 관련된 리스크를 안고 갈 수 밖에 없을 것 입니다.
4-2. 의료 사기 (Upcoding)
- 미국에서 보험 사기는 매해 'hundreds of billions of dollars (천억 달러 → 원화 환산: 110조)의 비용을 유발하고 있고, 2011년에는 $272 billion of dollars (원화 환산 → 300조) 의 비용이 발생했던 것으로 추정된다고 합니다.
- 의료보험 사기는 large institutions (조직)과 individual actors (ex: physician (전문의))이 주로 일으키는 데, 이들은 자신들의 수익을 증대시키기 위해 의료청구비용을 증가시킨다고 합니다.
- 미국의 의료는 민영화 시스템이기 때문에 병원에서 비용을 청구하기 때문에, 병원에서 upcoding 하는 경우도 발생합니다. 만약, 자체적으로 adversarial attack을 이용한다면 병의 중증도를 왜곡해 쉽게 upcoding을 할 수 도 있겠죠. (미국 의료시스템과 upcoding에 대한 설명은 아래 글을 참고해주세요!)
https://89douner.tistory.com/195
4-3. 약물 임상시험 대상자 선별을 위한 적대적 사례 사용
- 일반적으로, 개발된 신약의 임상적 효능을 제대로 검증하기 위해서 임상시험 참가자가 적절한 대상이었는지 평가합니다.
- 이때 adversarial attack을 이용하면 환자의 상태를 임상시험의 참여 조건에 적절하도록 변조시킬 수 있습니다. 즉, 변조된 의료 영상 자료를 제출하여 제대로된 검증시도를 회피할 가능성이 있습니다.
- Papangelou 등은 임상시험 참가자 선별을 위한 적대적 환자(adversarial patient)의 개념을 제시하기도 했습니다.
(↓↓↓적대적 환자 개념 제시 논문↓↓↓)
https://link.springer.com/chapter/10.1007/978-3-030-10925-7_3
4-4. 딥러닝 모델 학습 교란
- 현재 의료 영상에 적용되는 딥러닝 네트워크 구조는 대부분 유사한 것으로 알고 있습니다 (보통 ResNet 또는 DenseNet과 같은 CNN 구조를 기반으로 했던 것 같습니다).
- 특히 문제에 따라 충분한 수의 환자 데이터 확보가 어려운 경우 전이학습(transfer learning)을 위해 미리 학습된 딥러닝 모델 (pre-trained model)을 이용하는 경우가 많습니다.
- 위와 같이, 딥러닝 학습모델 구조의 다양성이 부족하다는 점은 공격자(or 해커)가 그 구조를 미리 파악하고 수행하는 white box 공격이 가능하게 할 확률을 높여줍니다.
- 또한, 연구자들을 위해 의료 데이터를 공개하는 경우가 많은데, 학습 데이터가 공개 된다는 것은 공격자에 입장에서 적대적 공격의 성공 확률을 높일 수 있는 여건이 될 수 있습니다.
4-5. 의료용 소프트웨어의 업데이트 한계
- 프로그램으로 진단을 할 경우 adversarial attack과 관련한 문제가 지속적으로 발전한다면, 이를 예방하기 위해 프로그램 업데이트를 자주 해야합니다.
- 하지만, 의료용 소프트웨어는 수정 및 업데이트에 많은 시간과 비용이 소요됩니다.
- 일반적으로, 밤에 모두가 퇴근하면 원격으로 프로그램 업데이트를 해주면 되지만, 응급환자인 경우 이러한 업데이트 시간을 기다리는 것도 쉬운 일이 아닐 것입니다.
- 그렇기 때문에 미리 adversarial attack을 방지하는 딥러닝 모델을 만드는 노력이 필요합니다.
5. Future work
앞서 언급한 adversarial attack은 딥러닝 모델을 상용화 시키는데 큰 걸림돌이 될 수 있습니다. 그러므로, adversarial attack에 robust한 딥러닝 모델을 만들기 위한 노력도 수반되어야 합니다.
앞으로, 해당 카테고리에서는 adversarial attack과 관련된 연구들이 뭐가 있는지 알아볼 예정입니다.
읽어주셔서 감사합니다.