Linjäralgebran bakom täta lager
Det finns två sätt att definiera ett tätt lager i tensorflow. Det första bygger på linjäralgebraiska operationer på låg nivå. Det andra använder sig av keras operationer på hög nivå. I den här övningen använder vi den första metoden för att bygga nätverket som visas i bilden nedan.
Ingångsskiktet innehåller 3 särdrag – utbildning, civilstånd och ålder – som finns tillgängliga som borrower_features. Det dolda lagret innehåller 2 noder och utgångsskiktet innehåller en enda nod.
För varje lager tar du föregående lager som indata, initierar en uppsättning vikter, beräknar produkten av indata och vikter och tillämpar sedan en aktiveringsfunktion. Observera att Variable(), ones(), matmul() och keras() har importerats från tensorflow.
Den här övningen är en del av kursen
Introduktion till TensorFlow i Python
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# Initialize bias1
bias1 = Variable(1.0)
# Initialize weights1 as 3x2 variable of ones
weights1 = ____(ones((____, ____)))
# Perform matrix multiplication of borrower_features and weights1
product1 = ____
# Apply sigmoid activation function to product1 + bias1
dense1 = keras.activations.____(____ + ____)
# Print shape of dense1
print("\n dense1's output shape: {}".format(dense1.shape))