Zaawansowane operacje

Wprowadzenie do TensorFlow w Pythonie

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Przegląd zaawansowanych operacji

  • Omówiliśmy podstawowe operacje w TensorFlow
    • add(), multiply(), matmul() i reduce_sum()
  • W tej lekcji poznamy zaawansowane operacje
    • gradient(), reshape() i random()
Wprowadzenie do TensorFlow w Pythonie

Przegląd zaawansowanych operacji

Operacja Zastosowanie
gradient() Oblicza nachylenie funkcji w danym punkcie
reshape() Przekształca tensor (np. 10x10 na 100x1)
random() Wypełnia tensor wartościami z rozkładu prawdopodobieństwa
Wprowadzenie do TensorFlow w Pythonie

Znajdowanie optimum

  • W wielu problemach szukamy optimum funkcji.

    • Minimum: Najniższa wartość funkcji straty.
    • Maksimum: Najwyższa wartość funkcji celu.
  • Można to osiągnąć za pomocą operacji gradient().

    • Optimum: Punkt, w którym gradient = 0.
    • Minimum: Zmiana gradientu > 0
    • Maksimum: Zmiana gradientu < 0
Wprowadzenie do TensorFlow w Pythonie

Obliczanie gradientu

Slajd przedstawia wykres funkcji y równa się x.

Wprowadzenie do TensorFlow w Pythonie

Obliczanie gradientu

Slajd przedstawia wykres funkcji y równa się x do kwadratu.

Wprowadzenie do TensorFlow w Pythonie

Gradienty w TensorFlow

# Import tensorflow under the alias tf
import tensorflow as tf

# Define x
x = tf.Variable(-1.0)
# Define y within instance of GradientTape
with tf.GradientTape() as tape:
    tape.watch(x)
    y = tf.multiply(x, x)
# Evaluate the gradient of y at x = -1
g = tape.gradient(y, x)
print(g.numpy())
-2.0
Wprowadzenie do TensorFlow w Pythonie

Obrazy jako tensory

Slajd pokazuje, jak obraz dwóch kotów można przedstawić jako tensor 2D, który następnie przekształca się w wektor 1D.

Wprowadzenie do TensorFlow w Pythonie

Jak przekształcić obraz w skali szarości

# Import tensorflow as alias tf
import tensorflow as tf

# Generate grayscale image
gray = tf.random.uniform([2, 2], maxval=255, dtype='int32')

# Reshape grayscale image
gray = tf.reshape(gray, [2*2, 1])

Obraz pokazuje przekształcenie obrazu w skali szarości 2x2 w wektor 4x1.

Wprowadzenie do TensorFlow w Pythonie

Jak przekształcić obraz kolorowy

# Import tensorflow as alias tf
import tensorflow as tf

# Generate color image
color = tf.random.uniform([2, 2, 3], maxval=255, dtype='int32')

# Reshape color image
color = tf.reshape(color, [2*2, 3])

Rysunek pokazuje przekształcenie kolorowego obrazu 2x2x3 w macierz 2x3.

Wprowadzenie do TensorFlow w Pythonie

Czas na ćwiczenia!

Wprowadzenie do TensorFlow w Pythonie

Preparing Video For Download...