Wenn Vorgang
Elementweise auswahl einer von zwei Eingaben, die eine Bedingung gegeben haben.
BS.Boolean.If (condition, thenValue, elseValue)
Parameter
condition
: Bedingung, nach der Elementwerte ausgewählt werdenthenValue
: Elementwert ausgewählt, wenncondition
das Element nicht 0 istelseValue
: Elementwert ausgewählt, wenncondition
element 0 ist
Sparsewerte werden derzeit nicht unterstützt.
Rückgabewert
Ein Tensor der Dimension der Eingaben. Wenn eine der Eingaben Dimensionen von 1 hat, wird die Übertragung angewendet; in diesem Fall wird die Ausgabedimension über die entsprechenden drei Argumentedimensionen maximal.
BESCHREIBUNG
If()
wählt Elemente aus zwei Eingaben basierend auf einer Bedingung in elementweise aus.
Für jedes Eingabeelement, bei dem condition
es sich nicht um 0 handelt, wird das entsprechende Element thenValue
ausgewählt; wobei 0, wird das entsprechende elseValue
Element condition
ausgewählt.
Diese Funktion unterstützt die Übertragung. Beispielsweise ist es möglich, dass es sich bei der Bedingung um einen Skalar handelt, oder eine der Eingaben ein konstanter Tensor ohne Zeitdimension ist.
Beispiel
Die elementweise maximal zwei Eingaben können als Kombination von Greater()
und If()
:
MyElementwiseMax (a, b) = BS.Boolean.If (Greater (a, b), a, b)
Dies funktioniert auch mit dem Rundfunk. Beispielsweise kann der lineare Retifier mit dieser mithilfe einer Skalarkonstante als zweite Eingabe geschrieben werden:
MyReLU (x) = MyElementwiseMax (x, Constant(0))