Warstwy gęste

Wprowadzenie do TensorFlow w Pythonie

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Model regresji liniowej

Diagram przedstawia model regresji z dwiema cechami: stanem cywilnym i wiekiem. Zmienną docelową jest status niewywiązania się kredytobiorcy z karty kredytowej.

Wprowadzenie do TensorFlow w Pythonie

Czym jest sieć neuronowa?

Diagram przedstawia sieć neuronową z dwiema cechami wejściowymi: stanem cywilnym i wiekiem. Zmienną docelową jest status niewywiązania się kredytobiorcy z karty kredytowej.

Wprowadzenie do TensorFlow w Pythonie

Czym jest sieć neuronowa?

Obraz przedstawia bardziej złożoną sieć neuronową z 10 cechami wejściowymi, 3 ukrytymi warstwami gęstymi i warstwą wyjściową.

  • Warstwa gęsta stosuje wagi do wszystkich węzłów z poprzedniej warstwy.
Wprowadzenie do TensorFlow w Pythonie

Prosta warstwa gęsta

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])
Wprowadzenie do TensorFlow w Pythonie

Prosta warstwa gęsta

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

Diagram przedstawia warstwę gęstą przyjmującą dwa węzły wejściowe i produkującą jedno wyjście.

Wprowadzenie do TensorFlow w Pythonie

Definiowanie kompletnego modelu

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)
Wprowadzenie do TensorFlow w Pythonie

Definiowanie kompletnego modelu

# 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)

Diagram przedstawia warstwę gęstą przyjmującą dwa węzły wejściowe i produkującą jedno wyjście.

Wprowadzenie do TensorFlow w Pythonie

Podejście wysokopoziomowe a niskopoziomowe

  • Podejście wysokopoziomowe
    • Operacje wysokopoziomowego API
dense = keras.layers.Dense(10,\
 activation='sigmoid')
  • Podejście niskopoziomowe
    • Operacje algebraiczno-liniowe
prod = matmul(inputs, weights)
dense = keras.activations.sigmoid(prod)
Wprowadzenie do TensorFlow w Pythonie

Czas na ćwiczenia!

Wprowadzenie do TensorFlow w Pythonie

Preparing Video For Download...