Parte 1: Participe para ganhar prêmios incríveis
Neste exercício, você vai aprender sobre a camada “ Dense
”. Por que não fazer isso com um exercício divertido? Imagina que tem um programa de TV onde os prêmios são decididos por uma rede neural. O participante entra
- o número de irmãos,
- o número de cafés que tomei hoje e
- se eles gostam ou não de tomates,
e o modelo dá uma ideia do que o participante vai ganhar.
Para fazer isso, você vai usar o Keras. Você vai precisar criar um modelo com uma camada de entrada que aceite três características (o número de irmãos como um número inteiro, o número de cafés como um número inteiro e se eles gostam ou não de tomates como um 0 ou 1). Depois, a entrada passa por uma camada Dense, que dá 3 probabilidades (ou seja, as chances de ganhar um carro, um vale-presente ou nada).
Input
e as camadas “ Dense
”, além de um objeto “ Model
” do Keras, já estão importados. Você também tem um inicializador de peso chamado “ init
” para dar uma força inicial à camada Dense.
Este exercício faz parte do curso
Tradução automática com Keras
Instruções do exercício
- Defina uma camada de entrada que só aceita 3 participantes (tamanho do lote), onde cada participante tem 3 entradas: número de irmãos, número de cafés e preferência por tomate (tamanho da entrada).
- Defina uma camada de rede neural (
Dense
) com 3 saídas, ativaçãosoftmax
e inicializaçãoinit
. - Calcule as previsões do modelo para
x
usando o modelo definido. - Pega o prêmio mais provável (como um número inteiro) para cada participante.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# Define an input layer with batch size 3 and input size 3
inp = Input(____=(____,____))
# Get the output of the 3 node Dense layer
pred = ____(____, ____=____, kernel_initializer=init, bias_initializer=init)(inp)
model = Model(inputs=inp, outputs=pred)
names = ["Mark", "John", "Kelly"]
prizes = ["Gift voucher", "Car", "Nothing"]
x = np.array([[5, 0, 1], [0, 3, 1], [2, 2, 1]])
# Compute the model prediction for x
y = ____.____(____)
# Get the most probable class for each sample
classes = np.____(____, ____)
print("\n".join(["{} has probabilities {} and wins {}".format(n,p,prizes[c]) \
for n,p,c in zip(names, y, classes)]))