2017-01-25 4 views
1

In Matlab, kann ich die Wahrscheinlichkeitsdichtefunktion (PDF) der Gauß-Verteilung berechnen, indem Sie mitwie berechnen PDF in tensorflow

x = [0.8147,0.9058,0.1270,0.9134,0.6324,0.0975,0.2785,0.5469,0.9575,0.9649] 
y = normpdf(x,1.0,2.5) 

Ausgang:

y = 0.1591 0.1595 0.1501 0.1595 0.1579 0.1495 0.1531 0.1570 0.1596 0.1596 

Mit tensorflow, habe ich versucht, mit dies

x = tf.variable([0.8147,0.9058,0.1270,0.9134,0.6324,0.0975,0.2785,0.5469,0.9575,0.9649],tf.float32) 
y = tf.contrib.distributions.NormalWithSoftplusSigma.pdf(x) 

ich erhalte einen Fehler TypeError: pdf missing 1 required positional argument

Wie geben Sie die mu und sigma Werte für diese Verteilung ein? um die ähnliche Ausgabe zu erhalten.

Antwort

1

zuerst ein Normal distributions-Objekt erstellen und verwenden Sie dann die pdf Methode

dist = tf.contrib.distributions.Normal(1.0, 2.5) 
y = dist.pdf(x) 

Siehe this für weitere Details.

+0

vielen Dank – Raady

+0

Der Link zu den Details ist tot – slcott

1

Diese Funktion pdf als prob aktualisiert:

dist = tf.contrib.distributions.Normal(1.0, 2.5) 
y = dist.prob(x)