강의 / AI를 속이는 법
적대적 공격 논문 10편
주장을 한 문장으로 말씀드릴게요. 신경망이 속는 이유는 너무 선형적으로 동작하기 때문이라는 겁니다. 그 생각에서 저자들은 그래디언트 한 번이면 되는 공격을 만듭니다.
주장부터 보겠습니다. 방어적 증류라는 방어가 공격 성공률을 95%에서 0.5%로 낮췄다고 했어요. 저자들은 그 강건함이 착시였다고 주장합니다.
방법 전체를 한 문장으로 말씀드리겠습니다. 매 학습 스텝마다 자기 모델을 공격하고, 깨끗한 이미지 대신 공격당한 이미지로 학습합니다. 최적화 관점에서 보면 이게 우리가 진짜 풀고 싶은 문제에 가장 가까운 해법이에요.
주장을 한 문장으로 말씀드릴게요. 저자들은 질문만 할 수 있어도 원하는 틀린 답을 만들 수 있다고 주장합니다. 이 논문의 공격 방법은 진짜 현실적인 공격 상황을 가정합니다.
먼저 논문 전체를 한 문장으로 말씀드릴게요. 모델에 계속 물어보고, 출력된 답만 읽는데도 아무도 못 알아볼 만큼 작은 변화를 찾아냅니다. 지금까지 본 공격들은 무언가가 더 필요했죠.
주장부터 보겠습니다. 공격자는 점수 없이 예측 라벨만 봅니다. 그래도 저자들은 기존 라벨 전용 공격보다 훨씬 적은 질의로 된다고 보고합니다.
전체 아이디어를 한 문장으로 말씀드릴게요. 사진을 고쳐서 깨뜨리는 대신, 아예 새 이미지를 그립니다. 그 이미지는 처음부터 모델이 틀리게 읽고요.
다른 것보다 방법부터 말씀드리겠습니다. 생성 모델이 벡터를 얼굴로 바꿔 주는데, 저는 픽셀 대신 그 벡터를 탐색합니다. 서비스는 이름 하나만 알려 주고, 공격이 읽는 건 그게 전부예요.
다른 것보다 방법부터 먼저 말씀드릴게요. 이미지에서 무작위로 한 조각을 잘라, 크기를 맞추고, 목표 사진 쪽으로 끌어당깁니다. 끌어당긴다는 건 공개된 이미지 인코더가 둘을 비슷하게 보게 만든다는 뜻이에요.
아이디어를 한 문장으로 말씀드릴게요. 디코더 하나를 4억 장으로 학습해 두면, 어떤 사진이든 다른 사진을 겨냥한 공격이 됩니다. 디코더는 이미지를 받아 얇은 잡음 층을 내놓아요.