2016-07-29 10 views
0

Ich studierte this link und dies ist der Code.Unbekannt * in numpy.random Funktion

U1 = np.random.rand(*H1.shape) < p # first dropout mask 

Warum schlägt es fehl, wenn ich das versuche?

import numpy 
numpy.random.rand(*1) < 2 

Ich verstehe, dass die rand() Funktion in einer Reihe nimmt, weshalb ich bin verwirrt, dass der Code funktionieren soll.

+0

@reviewers, Sorry über bearbeiten nach Dupe. Ich habe nicht gesehen, dass es dupe geschlossen war. – Lafexlos

+0

Ich glaube nicht, dass das eine doppelte Frage ist. – Aaron

Antwort

6

Die * entpackt ein Tupel in mehrere Eingabeargumente. Der Code erstellt eine zufällige Matrix mit der gleichen Form wie H1 mit dem Attribut shape (das ein Tupel ist) als die Dimensionseingaben zu np.random.rand.

Sie können dies tun, mit jedem Tupel

np.random.rand(*(2,3))  # The same as np.random.rand(2,3) 
# Creates a 2 x 3 array 

Sie versuchen, eine ganze Zahl zu entpacken, die fehlschlagen wird zu.