Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Створення тензорів | Тензори
Quizzes & Challenges
Quizzes
Challenges
/
Вступ до TensorFlow

bookСтворення тензорів

Створення тензорів

У цьому уроці розглядається створення тензорів за допомогою TensorFlow. TensorFlow надає численні методи для ініціалізації тензорів. Після завершення цього уроку ви будете впевнено генерувати тензори для широкого спектра застосувань.

Базові ініціалізатори тензорів

  • tf.constant(): це найпростіший спосіб створити тензор. Як випливає з назви, тензори, ініціалізовані цим методом, містять сталi значення та є незмінними;
12345
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
copy
  • tf.Variable(): на відміну від tf.constant(), тензор, створений за допомогою tf.Variable(), є змінним. Це означає, що його значення можна змінювати, що робить його ідеальним для таких випадків, як навчальні параметри в моделях;
12345
import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
copy
  • tf.zeros(): створення тензора, заповненого нулями;
12345
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
copy
  • tf.ones(): навпаки, створює тензор, заповнений одиницями;
12345
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
copy
  • tf.fill(): створює тензор, заповнений певним значенням;
12345
import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
copy
  • tf.linspace() та tf.range(): ідеально підходять для створення послідовностей;
123456789
import tensorflow as tf # Generate a sequence of numbers starting from 0, ending at 9 tensor_range = tf.range(10) print(tensor_range) # Create 5 equally spaced values between 0 and 10 tensor_linspace = tf.linspace(0, 10, 5) print(tensor_linspace)
copy
  • tf.random: генерує тензори з випадковими значеннями. У цьому модулі доступно декілька розподілів і функцій, наприклад, tf.random.normal() для значень із нормального розподілу та tf.random.uniform() для значень із рівномірного розподілу.
Note
Примітка

Можна також встановити фіксоване зерно для отримання стабільних результатів при кожному генеруванні випадкових чисел за допомогою tf.random.set_seed(). Однак майте на увазі, що при цьому ви отримуватимете одне й те саме число для будь-якого випадкового генерування в TensorFlow.

Якщо потрібно отримати стабільні числа лише для певної команди, можна передати аргумент seed цій команді із бажаним значенням зерна.

1234567891011121314
import tensorflow as tf # Set random seed tf.random.set_seed(72) # Tensor of shape (2, 2) with random values normally distributed # (by default `mean=0` and `std=1`) tensor_random = tf.random.normal((2, 2), mean=4, stddev=0.5) print(tensor_random) # Tensor of shape (2, 2) with random values uniformly distributed # (by default `min=0` and `max=1`) tensor_random = tf.random.uniform((2, 2), minval=-2, maxval=2) print(tensor_random)
copy

Перетворення між структурами даних

Тензори TensorFlow можна легко конвертувати до та з відомих структур даних Python.

  • З масивів Numpy: Тензори TensorFlow та масиви Numpy добре сумісні. Використовуйте tf.convert_to_tensor();
12345678910
import numpy as np import tensorflow as tf # Create a NumPy array based on a Python list numpy_array = np.array([[1, 2], [3, 4]]) # Convert a NumPy array to a tensor tensor_from_np = tf.convert_to_tensor(numpy_array) print(tensor_from_np)
copy
  • З Pandas DataFrames: для тих, хто віддає перевагу аналізу даних з Pandas, перетворення DataFrame або Series у тензор TensorFlow є простим. Також використовуйте tf.convert_to_tensor();
12345678910
import pandas as pd import tensorflow as tf # Create a DataFrame based on dictionary df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) # Convert a DataFrame to a tensor tensor_from_df = tf.convert_to_tensor(df.values) print(tensor_from_df)
copy
Note
Примітка

Завжди переконуйтеся, що типи даних ваших початкових структур (Numpy arrays або Pandas DataFrames) сумісні з типами даних тензорів TensorFlow. Якщо виникає невідповідність, розгляньте можливість приведення типів.

  • Перетворення константного тензора на Variable: можна ініціалізувати Variable, використовуючи різні методи створення тензорів, такі як tf.ones(), tf.linspace(), tf.random тощо. Просто передайте функцію або вже існуючий тензор у tf.Variable().
12345678910111213
import tensorflow as tf # Create a variable from a tensor tensor = tf.random.normal((2, 3)) variable_1 = tf.Variable(tensor) # Create a variable based on other generator variable_2 = tf.Variable(tf.zeros((2, 2))) # Display tensors print(variable_1) print('-' * 50) print(variable_2)
copy

Для кращого засвоєння створення тензорів рекомендується практикуватися з різними формами та значеннями. Детальніше про конкретні команди можна дізнатися в офіційній документації TensorFlow. Тут міститься вся необхідна інформація про будь-яку команду чи модуль бібліотеки.

Завдання

Swipe to start coding

Ваше завдання — створити, змінити та конвертувати різні тензори за допомогою TensorFlow.

Частина 1 — Ініціалізація тензорів

  1. Створіть тензор з назвою tensor_A розміром (3, 3), усі елементи якого дорівнюють 5.
  2. Створіть змінний тензор з назвою tensor_B розміром (2, 3) з будь-якими значеннями на ваш вибір.
  3. Створіть тензор з назвою tensor_C розміром (3, 3), заповнений нулями.
  4. Створіть тензор з назвою tensor_D розміром (4, 4), заповнений одиницями.
  5. Створіть тензор з назвою tensor_E, що містить 5 рівновіддалених значень у діапазоні від 3 до 15.
  6. Створіть тензор з назвою tensor_F з випадковими значеннями та розміром (2, 2).

Частина 2 — Конвертації

  1. Перетворіть масив NumPy np_array у тензор TensorFlow з назвою tensor_from_array.
  2. Перетворіть DataFrame df у тензор TensorFlow з назвою tensor_from_dataframe.

Примітка

  • Використовуйте найбільш відповідні функції TensorFlow для кожної операції:
  • tf.fill() для тензорів з одним повторюваним значенням;
  • tf.Variable() для змінних тензорів;
  • tf.zeros() / tf.ones() для тензорів, заповнених нулями або одиницями;
  • tf.linspace() для тензорів з рівновіддаленими значеннями;
  • tf.random.normal() для випадкових тензорів;
  • Для конвертації з масивів NumPy або pandas DataFrame використовуйте tf.convert_to_tensor();
  • Уникайте використання tf.constant() — використовуйте більш специфічні функції, зазначені вище.

Рішення

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 6
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

close

Awesome!

Completion rate improved to 6.25

bookСтворення тензорів

Свайпніть щоб показати меню

Створення тензорів

У цьому уроці розглядається створення тензорів за допомогою TensorFlow. TensorFlow надає численні методи для ініціалізації тензорів. Після завершення цього уроку ви будете впевнено генерувати тензори для широкого спектра застосувань.

Базові ініціалізатори тензорів

  • tf.constant(): це найпростіший спосіб створити тензор. Як випливає з назви, тензори, ініціалізовані цим методом, містять сталi значення та є незмінними;
12345
import tensorflow as tf # Create a 2x2 constant tensor tensor_const = tf.constant([[1, 2], [3, 4]]) print(tensor_const)
copy
  • tf.Variable(): на відміну від tf.constant(), тензор, створений за допомогою tf.Variable(), є змінним. Це означає, що його значення можна змінювати, що робить його ідеальним для таких випадків, як навчальні параметри в моделях;
12345
import tensorflow as tf # Create a variable tensor tensor_var = tf.Variable([[1, 2], [3, 4]]) print(tensor_var)
copy
  • tf.zeros(): створення тензора, заповненого нулями;
12345
import tensorflow as tf # Zero tensor of shape (3, 3) tensor_zeros = tf.zeros((3, 3)) print(tensor_zeros)
copy
  • tf.ones(): навпаки, створює тензор, заповнений одиницями;
12345
import tensorflow as tf # Ones tensor of shape (2, 2) tensor_ones = tf.ones((2, 2)) print(tensor_ones)
copy
  • tf.fill(): створює тензор, заповнений певним значенням;
12345
import tensorflow as tf # Tensor of shape (2, 2) filled with 6 tensor_fill = tf.fill((2, 2), 6) print(tensor_fill)
copy
  • tf.linspace() та tf.range(): ідеально підходять для створення послідовностей;
123456789
import tensorflow as tf # Generate a sequence of numbers starting from 0, ending at 9 tensor_range = tf.range(10) print(tensor_range) # Create 5 equally spaced values between 0 and 10 tensor_linspace = tf.linspace(0, 10, 5) print(tensor_linspace)
copy
  • tf.random: генерує тензори з випадковими значеннями. У цьому модулі доступно декілька розподілів і функцій, наприклад, tf.random.normal() для значень із нормального розподілу та tf.random.uniform() для значень із рівномірного розподілу.
Note
Примітка

Можна також встановити фіксоване зерно для отримання стабільних результатів при кожному генеруванні випадкових чисел за допомогою tf.random.set_seed(). Однак майте на увазі, що при цьому ви отримуватимете одне й те саме число для будь-якого випадкового генерування в TensorFlow.

Якщо потрібно отримати стабільні числа лише для певної команди, можна передати аргумент seed цій команді із бажаним значенням зерна.

1234567891011121314
import tensorflow as tf # Set random seed tf.random.set_seed(72) # Tensor of shape (2, 2) with random values normally distributed # (by default `mean=0` and `std=1`) tensor_random = tf.random.normal((2, 2), mean=4, stddev=0.5) print(tensor_random) # Tensor of shape (2, 2) with random values uniformly distributed # (by default `min=0` and `max=1`) tensor_random = tf.random.uniform((2, 2), minval=-2, maxval=2) print(tensor_random)
copy

Перетворення між структурами даних

Тензори TensorFlow можна легко конвертувати до та з відомих структур даних Python.

  • З масивів Numpy: Тензори TensorFlow та масиви Numpy добре сумісні. Використовуйте tf.convert_to_tensor();
12345678910
import numpy as np import tensorflow as tf # Create a NumPy array based on a Python list numpy_array = np.array([[1, 2], [3, 4]]) # Convert a NumPy array to a tensor tensor_from_np = tf.convert_to_tensor(numpy_array) print(tensor_from_np)
copy
  • З Pandas DataFrames: для тих, хто віддає перевагу аналізу даних з Pandas, перетворення DataFrame або Series у тензор TensorFlow є простим. Також використовуйте tf.convert_to_tensor();
12345678910
import pandas as pd import tensorflow as tf # Create a DataFrame based on dictionary df = pd.DataFrame({'A': [1, 2], 'B': [3, 4]}) # Convert a DataFrame to a tensor tensor_from_df = tf.convert_to_tensor(df.values) print(tensor_from_df)
copy
Note
Примітка

Завжди переконуйтеся, що типи даних ваших початкових структур (Numpy arrays або Pandas DataFrames) сумісні з типами даних тензорів TensorFlow. Якщо виникає невідповідність, розгляньте можливість приведення типів.

  • Перетворення константного тензора на Variable: можна ініціалізувати Variable, використовуючи різні методи створення тензорів, такі як tf.ones(), tf.linspace(), tf.random тощо. Просто передайте функцію або вже існуючий тензор у tf.Variable().
12345678910111213
import tensorflow as tf # Create a variable from a tensor tensor = tf.random.normal((2, 3)) variable_1 = tf.Variable(tensor) # Create a variable based on other generator variable_2 = tf.Variable(tf.zeros((2, 2))) # Display tensors print(variable_1) print('-' * 50) print(variable_2)
copy

Для кращого засвоєння створення тензорів рекомендується практикуватися з різними формами та значеннями. Детальніше про конкретні команди можна дізнатися в офіційній документації TensorFlow. Тут міститься вся необхідна інформація про будь-яку команду чи модуль бібліотеки.

Завдання

Swipe to start coding

Ваше завдання — створити, змінити та конвертувати різні тензори за допомогою TensorFlow.

Частина 1 — Ініціалізація тензорів

  1. Створіть тензор з назвою tensor_A розміром (3, 3), усі елементи якого дорівнюють 5.
  2. Створіть змінний тензор з назвою tensor_B розміром (2, 3) з будь-якими значеннями на ваш вибір.
  3. Створіть тензор з назвою tensor_C розміром (3, 3), заповнений нулями.
  4. Створіть тензор з назвою tensor_D розміром (4, 4), заповнений одиницями.
  5. Створіть тензор з назвою tensor_E, що містить 5 рівновіддалених значень у діапазоні від 3 до 15.
  6. Створіть тензор з назвою tensor_F з випадковими значеннями та розміром (2, 2).

Частина 2 — Конвертації

  1. Перетворіть масив NumPy np_array у тензор TensorFlow з назвою tensor_from_array.
  2. Перетворіть DataFrame df у тензор TensorFlow з назвою tensor_from_dataframe.

Примітка

  • Використовуйте найбільш відповідні функції TensorFlow для кожної операції:
  • tf.fill() для тензорів з одним повторюваним значенням;
  • tf.Variable() для змінних тензорів;
  • tf.zeros() / tf.ones() для тензорів, заповнених нулями або одиницями;
  • tf.linspace() для тензорів з рівновіддаленими значеннями;
  • tf.random.normal() для випадкових тензорів;
  • Для конвертації з масивів NumPy або pandas DataFrame використовуйте tf.convert_to_tensor();
  • Уникайте використання tf.constant() — використовуйте більш специфічні функції, зазначені вище.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 6
single

single

some-alt