2017-03-15 1 views
1

Ich dachte, is_sparse bedeutet, dass die Daten, die an die Variable gebunden werden sollen, im spärlichen Format sind, aber ich bin der Meinung, dass dies bedeutet, dass die interne Repräsentation der Variablen, nachdem sie an Daten gebunden ist, spärlich ist.Was bedeutet das Argument is_sparse von input_variable?

Insbesondere fand ich dieses Beispiel (in der Quelle für one_hot). Scheint zu funktionieren, egal ob is_sparse True oder False ist. Und ich kann nicht scheinen, die sparse_indicies direkt an den i0 input_variable zu binden:

import cntk as C 
import numpy as np 

num_classes = 10 
sparse_indices = [[5, 1, 3], [2], [5, 1, 6]] 
i0 = C.input_variable(shape=num_classes, is_sparse=True) 
z = C.times(i0, np.eye(num_classes)) 
value = C.one_hot(sparse_indices, num_classes) 
z.eval({i0: value}) 

Antwort

0

Wenn Sie ausführen:

z = C.times(i0, np.eye(num_classes)) 

z wird eine dichte Darstellung unabhängig davon, ob i0 ist spärlich oder dicht. Daher hat das is_sparse Flag keine Konsequenz, wenn z gebildet wird.

+0

Wenn ich eine Eingabe mit "input_variable (100, is_sparse = True)" erstellen kann, sollte ich in der Lage sein, sparse Daten an sie zu binden (One-Hot-Indizes vs. One-Hot-Vektoren)? –