Frage

Ich versuche, ein neuronales Netzwerk mit dem Lasagne -Modul in Python zu trainieren. Ich möchte kein vollständig verbundenes Netzwerk gemäß Lasagne.layers.DenSeLayer. Stattdessen möchte ich einige der Gewichtsparameter auf Null reparieren. Weiß jemand, wie man das macht?

Die nächste Lösung, die ich gefunden habe, ist so etwas wie:

params = lasagne.layers.get_all_params(network, trainable=True)
layer1.params[layer1.W].remove("trainable")

Dies behebt jedoch den gesamten Satz von Gewichtsparametern auf ihre Anfangswerte. Wie kann ich nur eine Untergruppe dieser Gewichte beheben?

Keine korrekte Lösung

Andere Tipps

Ich bin mir nicht sicher, was Ihre Absicht ist, indem Sie die Gewichte auf Null setzen. Haben Sie sich Dropout -Schichten angesehen?

l_hid1 = lasagne.layers.DenseLayer(num_units=200)

l_hid1_drop = lasagne.layers.DropoutLayer(l_hid1, p=0.5)

Dies sollte 50% Ihrer Daten aus der L_HID1 -Ebene fallen lassen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit datascience.stackexchange
scroll top