Livelli densi

Introduzione a TensorFlow in Python

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Il modello di regressione lineare

Il diagramma mostra un modello di regressione con due feature: stato civile ed età. Il target del modello è il default di un titolare di carta di credito.

Introduzione a TensorFlow in Python

Che cos'è una rete neurale?

Il diagramma mostra una rete neurale con due input di feature: stato civile ed età. Il target della rete è il default di un titolare di carta di credito.

Introduzione a TensorFlow in Python

Che cos'è una rete neurale?

Questa immagine mostra una rete neurale più complessa con 10 feature in input, 3 livelli densi nascosti e un livello di output.

  • Un livello denso applica pesi a tutti i nodi del livello precedente.
Introduzione a TensorFlow in Python

Un semplice livello denso

import tensorflow as tf
# Define inputs (features)
inputs = tf.constant([[1, 35]])
# Define weights
weights = tf.Variable([[-0.05], [-0.01]])
# Define the bias
bias = tf.Variable([0.5])
Introduzione a TensorFlow in Python

Un semplice livello denso

# Multiply inputs (features) by the weights
product = tf.matmul(inputs, weights)
# Define dense layer
dense = tf.keras.activations.sigmoid(product+bias)

Questo diagramma mostra un livello denso che prende due nodi in input e produce un output.

Introduzione a TensorFlow in Python

Definire un modello completo

import tensorflow as tf
# Define input (features) layer
inputs = tf.constant(data, tf.float32)
# Define first dense layer
dense1 = tf.keras.layers.Dense(10, activation='sigmoid')(inputs)
Introduzione a TensorFlow in Python

Definire un modello completo

# Define second dense layer
dense2 = tf.keras.layers.Dense(5, activation='sigmoid')(dense1)
# Define output (predictions) layer
outputs =  tf.keras.layers.Dense(1, activation='sigmoid')(dense2)

Questo diagramma mostra un livello denso che prende due nodi in input e produce un output.

Introduzione a TensorFlow in Python

Approccio high-level vs low-level

  • Approccio high-level
    • Operazioni API di alto livello
dense = keras.layers.Dense(10,\
 activation='sigmoid')
  • Approccio low-level
    • Operazioni algebriche lineari
prod = matmul(inputs, weights)
dense = keras.activations.sigmoid(prod)
Introduzione a TensorFlow in Python

Esercitiamoci!

Introduzione a TensorFlow in Python

Preparing Video For Download...