제안하는 감도 분석은 입력과 관련하여 출력의 부분 미분을 검사하는 것에 해당합니다. 출력 벡터 은 로 주어집니다 . 여기서 는 입력 벡터이고 는 네트워크가 구현하는 함수입니다. 입력에 대한 출력 의 Jacobian 은 다음과 같습니다.y∈Rmy=f(x)x∈Rdf
Jij(x)=∂∂xjfi(x)
Jacobian은 각 입력에 대한 각 출력의 로컬 변경 속도를 제공하므로 무한 변동에 대한 반응을 알려줍니다 . 입력 시작 하여 번째 입력에 무한 값 를 추가 하면 번째 출력이 증가 할 것으로 예상 됩니다.fxΔjiΔJij(x)
경우 큰 크기를 갖고, 그 출력 수단 입력에 민감 근방 . 때문에 이고, 일반적으로 비선형으로, 민감성이 개념은 입력에 의존한다; 일부 지역에서는 크거나 다른 지역에서는 거의 0 일 수 있습니다. 출력이 입력에 얼마나 강하게 의존하는지에 대한 일종의 요약 측정을 원한다면 여러 입력 값을 집계해야합니다. 예를 들어 훈련 세트의 모든 입력에 대한 평균 인 Jacobian의 절대 값을 사용할 수 있습니다 (입력의 기본 분포에 대한 예상 값에 대한 대리 역할). 물론, 이러한 종류의 요약은 정보를 버리는 결과를 초래하므로 일부 상황에서는 오도 될 수 있습니다.Jij(x)ijxf
연쇄 규칙을 사용하여 백프로 프에 사용할 매개 변수를 사용하여 손실 함수의 그라디언트를 도출하는 방법과 유사하게 Jacobian에 대한 표현식을 도출 할 수 있습니다. Theano, TensorFlow 등과 같은 라이브러리를 사용하여 자동 차별화를 사용하여 계산할 수도 있습니다. 이 경우 Jacobian이 존재하지 않습니다).
몇 가지주의 사항 : 입력이 서로 다른 단위 / 스케일을 갖는 경우 감도도 다른 단위 / 스케일을 가지며 직접 비교할 수 없습니다. 입력 표준화 / 스케일링이 하나의 가능한 솔루션입니다. 이 유형의 분석은 모델 자체에 대해 알려주지 만 반드시 데이터를 생성 한 기본 분포는 아니라는 점을 명심해야합니다. 예를 들어, 두 입력이 서로 연관되어 있으면 모델은 첫 번째를 사용하지만 두 번째는 사용하지 않을 수 있습니다. 이 경우 첫 번째 입력의 경우 감도가 높고 두 번째 입력의 경우 감도가 낮다는 것을 알 수 있지만 첫 번째 입력이 본질적으로 출력을 예측하는 데 더 중요하다는 결론을 내리지 않아야합니다.
이 기사 는 관심을 가져야합니다.