정교한 Google DeepDream


12

이 사이트에서 Deep Dream에 대한 몇 가지 질문을 보았지만 실제로 DeepDream이 무엇을하고 있는지에 대해 실제로 말하는 사람은 없습니다. 내가 모은 한, 목표 함수를 변경하고 역 전파를 변경하여 가중치를 업데이트하는 대신 입력 이미지를 업데이트하는 것처럼 보입니다.

Google이 한 일을 정확히 아는 사람이 있는지 궁금합니다. 그들은 그들의 기사 중 하나에서 최적화를 수행 할 때 베이지안 이전의 것을 부과하며,이를 통해 신경망이 각 레이블에 대한 이미지를 뱉어내는 것이 그렇게 어렵지는 않다고 상상할 수 있습니다. 우리는 단순히 레이블을 설정 한 다음 입력 벡터를 적절히 최적화하십시오.

그러나 딥 드림의 흥미로운 부분은 레이어 마다이 작업을 수행한다는 점이며, 이와 관련하여 레이어별로 세부 사항을 강조하는 방법을 잘 모르겠습니다.

확실히, 이미지를 먹이는 것은 각각의 뉴런에서 가치를 줄 것이지만, 어떻게 우리는 그 정보를 어떻게 원래 이미지의 세부 사항을 과장하기 위해 사용할 수 있습니까? 나는 이것에 대한 자세한 글을 찾기 위해 고심했다.

참고 자료 : 여기 vzn은 비슷한 질문에 대답했습니다 : /cs//a/44857/49671

이 링크에서 Deepdream의 구현이 있습니다. http://auduno.com/post/125362849838/visualizing-googlenet-classes

http://googleresearch.blogspot.com/2015/06/inceptionism-going-deeper-into-neural.html 과 같이 기능이 과장되지 않은 경우를 제외하고

둘 다 특정 클래스와 특정 레이어의 시각화를 보여주고 다음과 같이 말합니다.

네트워크가 증폭시키고 자하는 기능을 정확히 규정하는 대신 네트워크가 결정을 내릴 수도 있습니다. 이 경우 우리는 단순히 네트워크에 임의의 이미지 또는 사진을 공급하고 네트워크가 사진을 분석하게합니다. 그런 다음 계층을 선택하고 네트워크에서 감지 된 항목을 향상 시키도록 요청합니다.


답변:


7

DeepDream의 아이디어는 다음과 같습니다. 네트워크에서 일부 레이어 (일반적으로 컨볼 루션 레이어)를 선택하고 네트워크를 통해 시작 이미지를 전달하여 선택한 레이어에서 피처를 추출하고 해당 레이어의 그라디언트를 활성화 자체와 동일하게 설정 한 다음 역 전파 이미지에.

왜 이치에 맞습니까? 직관적으로 네트워크에서 최대한 활성화되는 기능을 증폭시킵니다. 이 그라디언트를 역 전파함으로써 기존 활성화를 향상시키는 이미지 업데이트를 만들 것입니다. 레이어에 고양이 모양의 탐지기가 있고 이미지에 고양이처럼 보이는 패치가 포함 된 경우 DeepDream은이 패치를 더욱 고양이처럼 업데이트하여이 활성화를 향상시킵니다. 결과적으로 DeepDream은 이미지의 모든 곳에서 고양이와 개를 찾으려고 노력하고 있습니다 (ImageNet 데이터 세트에는 개가 많으므로 네트워크에는 개 관련 뉴런이 많이 있습니다).

objective_L2엑스=엑스

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.