Uitdaging: Het Creëren van een Neurale Netwerklaag
Enkele Neurale Netwerklaag
In een basis feedforward-neuraal netwerk wordt de output van een neuron in een laag berekend met behulp van de gewogen som van de invoerwaarden, doorgegeven aan een activatiefunctie. Dit kan als volgt worden weergegeven:
y=σ(W⋅x+b)
Waarbij:
- y: output van het neuron;
- W: een matrix die de gewichten van de verbindingen met het neuron voorstelt;
- x: een kolommatrix (of vector) die de invoerwaarden naar het neuron voorstelt;
- b: een scalair waarde;
- σ: een activatiefunctie, zoals de sigmoid-, ReLU- of softmaxfunctie.
Voor optimale prestaties worden alle berekeningen uitgevoerd met matrices. We zullen deze taak op dezelfde manier aanpakken.
Swipe to start coding
Gegeven gewichten, inputs en bias voor een enkele neuronlaag, bereken de output met behulp van matrixvermenigvuldiging en de sigmoid activatiefunctie. Beschouw een laag met 3 inputs en 2 neuronen, waarbij één batch slechts één sample bevat.
-
Bepalen van vormen:
- De vorm van de inputmatrix
Imoet in de eerste dimensie het aantal samples in de batch weergeven. Gezien één sample met 3 inputs, is de grootte1x3; - De gewichtenmatrix
Wmoet kolommen hebben die de inputgewichten voor elk neuron representeren. Dus voor 2 neuronen met 3 inputs is de verwachte vorm3x2. Dit is niet het geval, dus je moet de gewichtenmatrix transponeren om de vereiste vorm te verkrijgen.
- De vorm van de inputmatrix
-
Matrixvermenigvuldiging:
- Met de matrices in de juiste vorm, voer de matrixvermenigvuldiging uit;
- Onthoud dat bij matrixvermenigvuldiging de output wordt afgeleid uit het dotproduct van elke rij van de eerste matrix met elke kolom van de tweede matrix. Zorg ervoor dat je in de juiste volgorde vermenigvuldigt.
-
Bias toevoegen:
- Voer een elementgewijze optelling uit van het resultaat van de matrixvermenigvuldiging met de bias.
-
Toepassen van activatie:
- Gebruik de sigmoid activatiefunctie op het resultaat van de biasoptelling om de output van het neuron te verkrijgen;
- TensorFlow biedt de sigmoidfunctie aan als
tf.sigmoid().
Opmerking
Aan het einde van de cursus gaan we dieper in op het implementeren van een volledig feed-forward netwerk met TensorFlow. Deze oefening vormt de basis daarvoor.
Oplossing
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Can you explain why we need to transpose the weight matrix?
What is the purpose of the bias in this calculation?
How does the sigmoid activation function affect the output?
Awesome!
Completion rate improved to 5.56
Uitdaging: Het Creëren van een Neurale Netwerklaag
Veeg om het menu te tonen
Enkele Neurale Netwerklaag
In een basis feedforward-neuraal netwerk wordt de output van een neuron in een laag berekend met behulp van de gewogen som van de invoerwaarden, doorgegeven aan een activatiefunctie. Dit kan als volgt worden weergegeven:
y=σ(W⋅x+b)
Waarbij:
- y: output van het neuron;
- W: een matrix die de gewichten van de verbindingen met het neuron voorstelt;
- x: een kolommatrix (of vector) die de invoerwaarden naar het neuron voorstelt;
- b: een scalair waarde;
- σ: een activatiefunctie, zoals de sigmoid-, ReLU- of softmaxfunctie.
Voor optimale prestaties worden alle berekeningen uitgevoerd met matrices. We zullen deze taak op dezelfde manier aanpakken.
Swipe to start coding
Gegeven gewichten, inputs en bias voor een enkele neuronlaag, bereken de output met behulp van matrixvermenigvuldiging en de sigmoid activatiefunctie. Beschouw een laag met 3 inputs en 2 neuronen, waarbij één batch slechts één sample bevat.
-
Bepalen van vormen:
- De vorm van de inputmatrix
Imoet in de eerste dimensie het aantal samples in de batch weergeven. Gezien één sample met 3 inputs, is de grootte1x3; - De gewichtenmatrix
Wmoet kolommen hebben die de inputgewichten voor elk neuron representeren. Dus voor 2 neuronen met 3 inputs is de verwachte vorm3x2. Dit is niet het geval, dus je moet de gewichtenmatrix transponeren om de vereiste vorm te verkrijgen.
- De vorm van de inputmatrix
-
Matrixvermenigvuldiging:
- Met de matrices in de juiste vorm, voer de matrixvermenigvuldiging uit;
- Onthoud dat bij matrixvermenigvuldiging de output wordt afgeleid uit het dotproduct van elke rij van de eerste matrix met elke kolom van de tweede matrix. Zorg ervoor dat je in de juiste volgorde vermenigvuldigt.
-
Bias toevoegen:
- Voer een elementgewijze optelling uit van het resultaat van de matrixvermenigvuldiging met de bias.
-
Toepassen van activatie:
- Gebruik de sigmoid activatiefunctie op het resultaat van de biasoptelling om de output van het neuron te verkrijgen;
- TensorFlow biedt de sigmoidfunctie aan als
tf.sigmoid().
Opmerking
Aan het einde van de cursus gaan we dieper in op het implementeren van een volledig feed-forward netwerk met TensorFlow. Deze oefening vormt de basis daarvoor.
Oplossing
Bedankt voor je feedback!
single