Pages Menu
TwitterRssFacebook
Categories Menu

Posted by on Ago 2, 2019

tf.where 예제

그래프를 만드는 동안 사용되는 두 가지 중요한 작전은 스위치와 병합입니다. 따라서 이 섹션에서는 그들이 어떻게 작동하는지 소개하고 그들의 이상한 행동에 익숙해지기위한 몇 가지 예를 제공 할 것입니다! true_fn의 경우 스위치 출력은 실제 분기에서 내보내됩니다. false_fn의 경우 스위치 출력은 거짓 분기에서 내보내됩니다. 조건 결과(x가 y보다 작든 아니든)에 따라 술어는 참또는 false일 수 있으며 가지 중 하나(왼쪽 또는 오른쪽)가 실행됩니다. tf.add() 및 tf.square() 작업은 모두 스위치 후에 제공됩니다. 결과적으로 이 예제에서는 그 중 하나만 실행되고 다른 하나는 그대로 유지됩니다. 상황을 보다 명확하게 하는 예제를 살펴보겠습니다. 나는이 예제를 제공하기 위한이 게시물에서 영감을 얻었습니다. 각 교육 예제에 대해 네트워크에 알려야 합니다. 우리는 단순히 그들을 추가하여 자신의 손실을 결합 할 수 있습니다. 병합은 둘 이상의 입력을 수신할 수 있지만 그 중 하나만 데이터를 포함해야 하며 다른 하나는 죽은 텐서여야 합니다.

그렇지 않으면, 우리는 몇 가지 무작위와 예측할 수없는 행동에 직면하게 될 것이다. 마지막 예제에서 병합이 어떻게 작동하는지 살펴보겠습니다. 참조: 이 예제에서는 일괄 처리에서 잘 작동하지 않으므로 tf.cond 또는 tf.case가 필요하지 않습니다. 이 개념을 소개하는 간단한 예를 살펴보겠습니다. 다음 조건을 고려하십시오 : 잘하면, 당신은 tf.cond()에 대해 뭔가를 배웠고,이 API로 작업하는 것이 더 편안해졌습니다. 논란의 여지가 있는 한 가지 예를 제공하여 이 게시물을 끝내고 지금까지 배운 것이 내면의 일을 이해하는 데 어떻게 도움이 되는지 설명해 보겠습니다. TensorFlow 웹 사이트에서 다음 문을 찾을 수 있습니다: 다행히도 각 디코더에 대한 그라데이션은 동일하게 유지됩니다. 두 디코더의 손실에 대한 부분 미분은 1이다. 한 손실이 다른 손실보다 훨씬 높을 때 특정 최적화 프로그램에 대한 문제가 발생할 수 있지만이 예제에서는 효과적입니다. safe_W2 = tf.where (W1>4, W2, [1.0]) 출력 = tf.where (W1 >4, W1/safe_W2, tf.zeros_like (W1)) 그라데이션=tf.gradients (출력, W2)[0] sess.run(tf.global_variables_initializer))에서 각 가지 중 하나를 선택할 수 있습니다. 일반 파이썬에서는 TensorFlow가 데이터 흐름 모델을 사용하지만 반드시 게으른 것은 아니라는 점을 기억하십시오.

실행하는 동안 두 분기(읽기: 텐서)를 tf.where에서 실행해야 합니다. tf.where를 사용하면 계산된 값의 절반을 내보십습니다. 이 몇 가지 프로세서 주기를 먹을 것 이다, 하지만 GPU의 특성을 고려 (SIMD 좋은, 나쁜 분기), 그것은 가능성이 가장 빠른 방법. 간절한 실행 대신 게으른 것이 필요한 경우 tf.cond 또는 tf.case를 대신 시도하고 쉬운 일괄 처리를 포기하십시오. 이 비디오에서는 tf.cond() 및 tf.while_loop를 자세히 다룹니다. 그래서, tf.cond() 작동 하는 방법에 대 한 자세한 내용은이 게시물을 작성 하기로, 그리고 그림에 대 한 몇 가지 예제를 제공. 바라건대, 나는 후속 게시물에서 tf.while_loop를 다룰 것입니다. 모든 것이 여기에 매우 일반적입니다.

모듈을 선택하는 것을 제외하고는 대부분 조밀 한 레이어가 많이 있을 것입니다. 프로그래밍에서 대/소문자 식을 호출할 수 있습니다. 전기 공학에서는 멀티플렉서라고 부를 수 있습니다. 텐서플로우에서는 tf.where , tf.cond 및 tf.case 작업을 호출합니다. 0으로 분할이 있는 tf.where 함수를 사용하는 경우 두 가지 중 하나에 분할이 실행되는 위치에 0으로 분할된 경우에도 NaN 그라데이션을 얻게 됩니다. 구현을 추가하려고 했지만 tf.where의 현재 동작과 TensorFlow의 다른 옵스가 사용하는 브로드캐스트 사이에 는 몇 가지 비호환성이 있다는 것을 알게되었습니다. 이 간단한 예제에 대한 계산 그래프를 구성했으며 그림 4에서 찾을 수 있습니다.

Centro per un Futuro Sostenibile via Tacito, 84 00193 Roma tel. +39 06 90288228