Розширені операції

Вступ до TensorFlow на Python

Isaiah Hull

Visiting Associate Professor of Finance, BI Norwegian Business School

Огляд розширених операцій

  • Ми розглянули базові операції в TensorFlow
    • add(), multiply(), matmul() і reduce_sum()
  • У цьому уроці вивчимо розширені операції
    • gradient(), reshape() і random()
Вступ до TensorFlow на Python

Огляд розширених операцій

Операція Призначення
gradient() Обчислює нахил функції в точці
reshape() Змінює форму тензора (напр., 10x10 → 100x1)
random() Заповнює тензор значеннями з імовірнісного розподілу
Вступ до TensorFlow на Python

Пошук оптимуму

  • У багатьох задачах потрібно знайти оптимум функції.

    • Мінімум: найменше значення функції втрат.
    • Максимум: найбільше значення цільової функції.
  • Це можна зробити за допомогою gradient().

    • Оптимум: точка, де gradient = 0.
    • Мінімум: зміна градієнта > 0
    • Максимум: зміна градієнта < 0
Вступ до TensorFlow на Python

Обчислення градієнта

На слайді зображено графік функції y дорівнює x.

Вступ до TensorFlow на Python

Обчислення градієнта

На слайді зображено графік функції y дорівнює x у квадраті.

Вступ до TensorFlow на Python

Градієнти в 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
Вступ до TensorFlow на Python

Зображення як тензори

Слайд показує, як зображення двох котів можна подати як двовимірний тензор і перетворити на одновимірний вектор.

Вступ до TensorFlow на Python

Як змінити форму сірого зображення

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

Зображення: 2×2 сіре зображення перетворюється на вектор 4×1.

Вступ до TensorFlow на Python

Як змінити форму кольорового зображення

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

На рисунку 2×2×3 кольорове зображення перетворюється на матрицю 2×3.

Вступ до TensorFlow на Python

Давайте потренуємось!

Вступ до TensorFlow на Python

Preparing Video For Download...