Definindo redes neurais com Keras

Introdução ao TensorFlow em Python

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Classificando letras em língua de sinais

Esta imagem mostra a letra A em língua de sinais.

Esta imagem mostra a letra B em língua de sinais.

Esta imagem mostra a letra C em língua de sinais.

Esta imagem mostra a letra D em língua de sinais.

Introdução ao TensorFlow em Python

A API sequencial

Esta imagem mostra uma rede neural com 16 nós na primeira camada oculta, 8 na segunda e 4 na camada de saída.

Introdução ao TensorFlow em Python

A API sequencial

  • Camada de entrada
  • Camadas ocultas
  • Camada de saída
  • Ordenadas em sequência
Introdução ao TensorFlow em Python

Construindo um modelo sequencial

# Import tensorflow
from tensorflow import keras

# Define a sequential model
model = keras.Sequential()
# Define first hidden layer
model.add(keras.layers.Dense(16, activation='relu', input_shape=(28*28,)))
Introdução ao TensorFlow em Python

Construindo um modelo sequencial

# Define second hidden layer
model.add(keras.layers.Dense(8, activation='relu'))
# Define output layer
model.add(keras.layers.Dense(4, activation='softmax'))
# Compile the model
model.compile('adam', loss='categorical_crossentropy')
# Summarize the model
print(model.summary())
Introdução ao TensorFlow em Python

A API funcional

A figura mostra uma rede neural com dois conjuntos de entradas.

Introdução ao TensorFlow em Python

Usando a API funcional

# Import tensorflow
import tensorflow as tf

# Define model 1 input layer shape
model1_inputs = tf.keras.Input(shape=(28*28,))

# Define model 2 input layer shape
model2_inputs = tf.keras.Input(shape=(10,))
# Define layer 1 for model 1
model1_layer1 = tf.keras.layers.Dense(12, activation='relu')(model1_inputs)

# Define layer 2 for model 1
model1_layer2 = tf.keras.layers.Dense(4, activation='softmax')(model1_layer1)
Introdução ao TensorFlow em Python

Usando a API funcional

# Define layer 1 for model 2
model2_layer1 = tf.keras.layers.Dense(8, activation='relu')(model2_inputs)

# Define layer 2 for model 2
model2_layer2 = tf.keras.layers.Dense(4, activation='softmax')(model2_layer1)
# Merge model 1 and model 2
merged = tf.keras.layers.add([model1_layer2, model2_layer2])
# Define a functional model
model = tf.keras.Model(inputs=[model1_inputs, model2_inputs], outputs=merged)

# Compile the model
model.compile('adam', loss='categorical_crossentropy')
Introdução ao TensorFlow em Python

Vamos praticar!

Introdução ao TensorFlow em Python

Preparing Video For Download...