Bird
Raised Fist0
TensorFlowml~5 mins

Tensor creation (constant, variable, zeros, ones) in TensorFlow

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Introduction

Tensors are like containers for numbers. We create them to hold data for machine learning models.

When you want to store fixed data that does not change during training.
When you need a tensor that can change values during training, like model weights.
When you want to create a tensor filled with zeros to initialize data.
When you want to create a tensor filled with ones for bias or masks.
When you want to quickly create tensors of specific shapes for experiments.
Syntax
TensorFlow
tf.constant(value, dtype=None, shape=None)
tf.Variable(initial_value, dtype=None)
tf.zeros(shape, dtype=tf.float32)
tf.ones(shape, dtype=tf.float32)

tf.constant creates a tensor with fixed values.

tf.Variable creates a tensor that can change during training.

Examples
Creates a constant tensor with values 1, 2, 3.
TensorFlow
tf.constant([1, 2, 3])
Creates a variable tensor with a 2x2 shape.
TensorFlow
tf.Variable([[1.0, 2.0], [3.0, 4.0]])
Creates a 3x2 tensor filled with zeros.
TensorFlow
tf.zeros([3, 2])
Creates a 1D tensor of length 4 filled with ones.
TensorFlow
tf.ones([4])
Sample Model

This program shows how to create different types of tensors and prints them.

TensorFlow
import tensorflow as tf

# Create a constant tensor
const_tensor = tf.constant([[1, 2], [3, 4]])

# Create a variable tensor
var_tensor = tf.Variable([[5.0, 6.0], [7.0, 8.0]])

# Create a zeros tensor
zeros_tensor = tf.zeros([2, 3])

# Create a ones tensor
ones_tensor = tf.ones([3])

print("Constant Tensor:")
print(const_tensor)
print("Variable Tensor:")
print(var_tensor)
print("Zeros Tensor:")
print(zeros_tensor)
print("Ones Tensor:")
print(ones_tensor)
OutputSuccess
Important Notes

Use tf.constant for data that should not change.

Use tf.Variable for data that will update during training.

tf.zeros and tf.ones help quickly create tensors with default values.

Summary

Tensors hold data for machine learning.

tf.constant creates fixed tensors.

tf.Variable creates changeable tensors.

tf.zeros and tf.ones create tensors filled with zeros or ones.

Practice

(1/5)
1. Which TensorFlow function creates a tensor with arbitrary fixed values that cannot be changed later?
easy
A. tf.ones
B. tf.Variable
C. tf.zeros
D. tf.constant

Solution

  1. Step 1: Understand tensor mutability

    tf.constant creates tensors with fixed values that cannot be changed after creation.
  2. Step 2: Compare with other functions

    tf.Variable creates tensors that can be changed, while tf.zeros and tf.ones create tensors filled with zeros or ones but are also constants by default.
  3. Final Answer:

    tf.constant -> Option D
  4. Quick Check:

    Fixed tensor = tf.constant [OK]
Hint: Fixed tensors use tf.constant, variables use tf.Variable [OK]
Common Mistakes:
  • Confusing tf.constant with tf.Variable
  • Thinking tf.zeros creates changeable tensors
  • Assuming tf.ones creates variables
2. Which of the following is the correct syntax to create a TensorFlow variable with initial value 5?
easy
A. tf.zeros(5)
B. tf.Variable(5)
C. tf.constant(5)
D. tf.ones(5)

Solution

  1. Step 1: Identify variable creation syntax

    tf.Variable(5) creates a variable tensor with initial value 5.
  2. Step 2: Check other options

    tf.constant(5) creates a constant, not a variable. tf.zeros(5) and tf.ones(5) create tensors of shape 5, not a single value 5.
  3. Final Answer:

    tf.Variable(5) -> Option B
  4. Quick Check:

    Variable init = tf.Variable(value) [OK]
Hint: Variables use tf.Variable(value), constants use tf.constant(value) [OK]
Common Mistakes:
  • Using tf.constant instead of tf.Variable for changeable tensors
  • Using tf.zeros or tf.ones with a single number instead of shape tuple
  • Confusing value and shape in function arguments
3. What is the output of this code?
import tensorflow as tf
x = tf.zeros((2, 3))
print(x.numpy())
medium
A. [[1 1 1] [1 1 1]]
B. [5 5 5 5 5 5]
C. [[0. 0. 0.] [0. 0. 0.]]
D. Error: shape must be a single integer

Solution

  1. Step 1: Understand tf.zeros with shape (2, 3)

    This creates a 2-row, 3-column tensor filled with zeros.
  2. Step 2: Print tensor as numpy array

    Calling .numpy() converts tensor to numpy array, showing zeros in 2x3 shape.
  3. Final Answer:

    [[0. 0. 0.] [0. 0. 0.]] -> Option C
  4. Quick Check:

    tf.zeros((2,3)) = 2x3 zeros [OK]
Hint: tf.zeros(shape) creates zeros tensor of given shape [OK]
Common Mistakes:
  • Confusing tf.zeros with tf.ones output
  • Misunderstanding shape argument as single integer
  • Expecting a flat list instead of 2D array
4. The following code throws an error. What is the mistake?
import tensorflow as tf
x = tf.ones(3, 4)
print(x)
medium
A. tf.ones expects a single shape tuple, not separate integers
B. tf.ones cannot create tensors with more than 2 dimensions
C. tf.ones requires dtype argument
D. tf.ones only creates scalar tensors

Solution

  1. Step 1: Check tf.ones argument format

    tf.ones expects a single shape argument as a tuple, e.g., (3, 4), not two separate integers.
  2. Step 2: Identify error cause

    Passing two integers separately causes a TypeError because the function signature expects one shape argument.
  3. Final Answer:

    tf.ones expects a single shape tuple, not separate integers -> Option A
  4. Quick Check:

    Shape must be tuple for tf.ones [OK]
Hint: Pass shape as tuple like (3,4) to tf.ones [OK]
Common Mistakes:
  • Passing shape as separate arguments instead of tuple
  • Assuming dtype is mandatory
  • Thinking tf.ones only creates scalars
5. You want to create a TensorFlow variable initialized with a 3x3 identity matrix (ones on diagonal, zeros elsewhere). Which code correctly does this?
hard
A. tf.Variable(tf.eye(3))
B. tf.Variable(tf.ones((3,3)))
C. tf.Variable(tf.zeros((3,3)))
D. tf.Variable(tf.constant(3))

Solution

  1. Step 1: Identify identity matrix creation

    tf.eye(3) creates a 3x3 identity matrix with ones on the diagonal and zeros elsewhere.
  2. Step 2: Wrap identity matrix in variable

    Using tf.Variable makes this tensor changeable during training or updates.
  3. Step 3: Check other options

    tf.ones and tf.zeros create all ones or zeros, not identity. tf.constant(3) creates scalar 3, not matrix.
  4. Final Answer:

    tf.Variable(tf.eye(3)) -> Option A
  5. Quick Check:

    Identity matrix = tf.eye + tf.Variable [OK]
Hint: Use tf.eye(shape) inside tf.Variable for identity matrix [OK]
Common Mistakes:
  • Using tf.ones or tf.zeros instead of tf.eye for identity
  • Passing scalar to tf.Variable instead of matrix
  • Forgetting to wrap tensor in tf.Variable for mutability