STN(Spatial Transformer Networks)이 매개변수를 학습하는 방법에 대한 정보

STN은 매우 기본적인 블록입니다.인터넷의 대부분의 기사는 STN이 순방향 전파를 수행하는 방법에 대해서만 설명합니다.대부분의 사람들은 이러한 비지도 블록이 스스로 학습할 수 있는지 궁금해합니다.

1. 네트워크 구조 소개

여기에 이미지 설명 삽입

1.현지화 네트

다중 계층 CNN 네트워크에서 입력은 그림 또는 기능 맵이고 출력은 6개의 매개변수를 포함하는 θ \theta 입니다.세타 행렬.

2.그리드 생성기

θ \theta 에 따르면변환된 새 이미지 V의 좌표(시스템)를 얻기 위해 원본 이미지 U의 세타 행렬과 좌표(시스템)

3.샘플러

새 이미지 V의 좌표(시스템)와 원본 이미지 U의 픽셀 값에 따라 새 이미지에 픽셀을 할당합니다.

둘째, 전반적인 질적

모듈에 사진 또는 기능 맵을 입력하고 아핀 변환된 사진 또는 기능 맵을 출력합니다.

3. 웨이트 배우는 방법

이 부분은 빅맨들이 너무 게으르게 얘기하고, 신인들이 이해를 못한다는 내용에 속한다. 저는 후자에 속합니다.
우선, 이 모듈의 모든 부분이 그래디언트가 될 수 있다는 것을 알아야 합니다.
이것이 손으로 쓴 숫자의 집합이라고 가정하면 가중치는 처음에 임의적입니다. 즉, θ \thetaθ 는 무작위입니다. 그러면 이 무작위 변환 후 이미지가 완전히 다를 수 있습니다. 이때 원래 분류 네트워크의 손실이 매우 클 것입니다. 첫 번째 학습 동안 분류 네트워크의 손실은 기울기 방향으로 감소합니다. 이때θ \theta를업데이트하는 것과 같은 현지화 네트워크의 W를 포함합니다.θ , 분류 네트워크 자체가 업데이트되면 STN이 업데이트됩니다.

Supongo que te gusta

Origin blog.csdn.net/xiufan1/article/details/122953143
Recomendado
Clasificación