Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Vervolgkeuzelijst, functie.
Dropout (x)
Parameters
x: de invoer voor het toepassen van de vervolgkeuzelijst op
Opmerking: de dropout rate is geen parameter voor deze functie, maar in plaats daarvan opgegeven in de SGD sectie.
Retourwaarde
Dropout() retourneert het resultaat van de vervolgkeuzelijst die is toegepast op de invoer.
Het resultaat heeft dezelfde tensordimensies als de invoer.
Description
De Dropout() bewerking selecteert willekeurig elementen van de invoer met een bepaalde waarschijnlijkheid, de dropoutsnelheid genoemd, en stelt deze in op 0.
Dit is gebleken om de generaliseerbaarheid van modellen te verbeteren.
Bij de implementatie van CNTK worden de resterende waarden die niet zijn ingesteld op 0, vermenigvuldigd met (1 / (1 - dropout rate)). Op deze manier zijn de modelparameters die zijn geleerd met vervolgkeuzelijsten rechtstreeks van toepassing op deductie. (Als dit niet is gebeurd, moet de gebruiker deze handmatig schalen vóór deductie.)
Als u vervolgkeuzelijsten in uw training wilt inschakelen, moet u ook een parameter dropoutRate toevoegen aan de SGD sectie om de vervolgkeuzelijst te definiëren.
Dit wordt gedaan in een SGD sectie, in plaats van een parameter voor Dropout() zichzelf, om een training zonder vervolgkeuzelijst te starten en deze na een paar tijdvakken in te schakelen, wat een gemeenschappelijk scenario is.
Hiervoor wordt de dropoutRate waarde opgegeven als een vector, waarbij elke waarde voor een specifiek tijdvak is.
Bij het uitvoeren van deductie geeft de Dropout() bewerking de invoer ongewijzigd door (het is een no-op).
Voorbeeld
Hier volgt een eenvoudig convolutioneel netwerk met een vervolgkeuzelijst aan het einde:
features = Input{...}
c = ConvolutionalLayer {32, (5:5), activation=ReLU} (features)
p = MaxPoolingLayer {(3:3), stride = (2:2)} (c)
h = DenseLayer {64, activation = ReLU} (p)
d = Dropout (h)
z = LinearLayer {10} (d)
Daarnaast hebt u een bijbehorende vermelding in de SGD sectie nodig.
In het volgende voorbeeld wordt gedefinieerd dat er geen vervolgkeuzelijst wordt gebruikt voor de eerste 3 epochs en vervolgens een vervolgkeuzepercentage van 50%.
Voor het gemak gebruikt dit voorbeeld de syntaxis van het sterretje (*) om herhaling aan te geven:
SGD = {
...
dropoutRate = 0*3:0.5
...
}