나는 dropout의 Keras 구현에 대해 읽었으며 드롭 아웃이라고해도 역 드롭 아웃 버전을 사용하는 것 같습니다. I는 Dropout(0.4)
0.4 그 층의 모든 노드들이 어느 낙하의 40 %의 확률을 의미 지정하면TensorFlow 백엔드에서 Keras를 사용할 때 드롭 아웃
0.4가 인 것을 의미한다 : 여기
내가 Keras 및 Tensorflow 문서를 읽을 때 이해 한 무엇 하락 확률. 따라서 역 드롭 아웃의 개념에 의해 나머지 뉴런의 출력은 유지 확률이 0.6이므로 1/0.6 배율로 조정됩니다. 단순히 내가 0.4의 값을 지정하면 킵 확률이 직접 의미를 요청 TensorFlow에 한편(내 해석이 잘못된 경우 지적 바랍니다. 내 모든 의심의 여지가이 해석을 기반으로합니다.)
각 노드는 60 %의 가능성을 갖습니다.
그럼 Keras의 백엔드에서 TensorFlow를 사용할 때 어떻게됩니까? 유지 또는 낙하 확률이 0.4가됩니까? Keras 층에서
나는 당신이 질문에서 볼 수 있듯이 내가 지정한 것과 똑같은 것을 지정했다는 것을 분명히 이해했다. 하지만 그건 제가 묻는 것이 아닙니다. TensorFlow는 역 드롭 아웃을 구현하지만 유지율을 묻습니다. 따라서 tensorflow에서 dropout (0.4)이라고 말하면 노드는 60 %의 낙하 가능성이 있습니다.내 질문 : Keras의 백엔드에서 TensorFlow를 사용하고 드롭 아웃 (0.4)을 지정하면 노드가 40 %의 낙하 가능성 또는 보관 될 확률이 40 %입니까? –
귀하의 의견을 보내 주셔서 감사합니다. 나는 너를 올바르게 이해했다고 생각한다. 필자는 Keras를 백엔드와 상관없이 통일 된 인터페이스를 제공하기 위해 많은 백엔드를 추상화하는 API로 인식합니다. 그래서 거의 모든 측면에서 여러분은 여러분이 사용하는 백엔드가 무엇이든 상관없이 Keras 모델의 차이점을 알지 못할 것입니다. 하지만 어쨌든 : 자신을 확인하는 간단한 방법은 드롭 아웃을 매우 높게 설정하는 것입니다 (예 : .99 또는 1.0). 이 양의 뉴런이 떨어졌습니다 (유지되지 않음). – petezurich