Bird
Raised Fist0
PyTorchml~10 mins

Why tensors are PyTorch's core data structure - Test Your Understanding

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to create a tensor from a list.

PyTorch
import torch

my_tensor = torch.[1]([1, 2, 3, 4])
print(my_tensor)
Drag options to blanks, or click blank then click option'
Alist
Barray
Cmatrix
Dtensor
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'array' instead of 'tensor' causes an error.
Trying to use 'list' is invalid in PyTorch.
2fill in blank
medium

Complete the code to get the shape of a tensor.

PyTorch
import torch

x = torch.tensor([[1, 2], [3, 4], [5, 6]])
shape = x.[1]
print(shape)
Drag options to blanks, or click blank then click option'
Alength
Bshape
Csize
Ddim
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'size' as a method requires parentheses.
Using 'length' is not valid for tensors.
3fill in blank
hard

Fix the error in the code to perform element-wise addition of two tensors.

PyTorch
import torch

a = torch.tensor([1, 2, 3])
b = torch.tensor([4, 5, 6])
result = a [1] b
print(result)
Drag options to blanks, or click blank then click option'
A-
B*
C+
D/
Attempts:
3 left
💡 Hint
Common Mistakes
Using '-' subtracts instead of adds.
Using '*' multiplies instead of adds.
4fill in blank
hard

Fill both blanks to create a tensor of zeros with shape (3, 4) and type float.

PyTorch
import torch

zeros_tensor = torch.[1]((3, 4), dtype=torch.[2])
print(zeros_tensor)
Drag options to blanks, or click blank then click option'
Azeros
Bones
Cint32
Dfloat32
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'ones' creates a tensor of ones.
Using 'int32' sets integer type instead of float.
5fill in blank
hard

Fill all three blanks to create a tensor from a list, move it to GPU if available, and print its device.

PyTorch
import torch

x = torch.[1]([1, 2, 3])
if torch.cuda.is_available():
    x = x.[2]('cuda')
print(x.[3])
Drag options to blanks, or click blank then click option'
Atensor
Bto
Cdevice
Dcuda
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'cuda' as a method instead of a string argument.
Trying to print 'to' instead of 'device'.

Practice

(1/5)
1. Why are tensors considered the core data structure in PyTorch?
easy
A. Because they are the only way to create variables in Python
B. Because they efficiently store and process numerical data for machine learning
C. Because they are only used for storing text data
D. Because they replace Python lists for all programming tasks

Solution

  1. Step 1: Understand the role of tensors in PyTorch

    Tensors are designed to hold numbers and perform math operations efficiently, which is essential for machine learning.
  2. Step 2: Compare tensors with other data types

    Unlike text or general variables, tensors are optimized for numerical computation on CPUs and GPUs.
  3. Final Answer:

    Because they efficiently store and process numerical data for machine learning -> Option B
  4. Quick Check:

    Tensors = Core numerical data structure [OK]
Hint: Tensors store numbers for fast math in ML [OK]
Common Mistakes:
  • Thinking tensors store only text
  • Confusing tensors with Python variables
  • Assuming tensors replace all Python data types
2. Which of the following is the correct way to create a tensor in PyTorch?
easy
A. torch.array([1, 2, 3])
B. torch.list([1, 2, 3])
C. torch.tensor([1, 2, 3])
D. torch.create([1, 2, 3])

Solution

  1. Step 1: Recall PyTorch tensor creation syntax

    The correct function to create a tensor from a list is torch.tensor().
  2. Step 2: Identify incorrect options

    Functions like torch.list(), torch.array(), and torch.create() do not exist in PyTorch.
  3. Final Answer:

    torch.tensor([1, 2, 3]) -> Option C
  4. Quick Check:

    Use torch.tensor() to create tensors [OK]
Hint: Use torch.tensor() to make tensors [OK]
Common Mistakes:
  • Using non-existent torch.list()
  • Confusing with numpy.array()
  • Trying torch.create() which is invalid
3. What will be the output of this PyTorch code?
import torch
x = torch.tensor([1, 2, 3])
y = x + 5
print(y)
medium
A. Error: cannot add int to tensor
B. [6, 7, 8]
C. tensor([1, 2, 3, 5])
D. tensor([6, 7, 8])

Solution

  1. Step 1: Understand tensor addition with a scalar

    Adding 5 to tensor x adds 5 to each element, resulting in [6, 7, 8].
  2. Step 2: Check the print output format

    PyTorch prints tensors with the 'tensor()' wrapper, so output is tensor([6, 7, 8]).
  3. Final Answer:

    tensor([6, 7, 8]) -> Option D
  4. Quick Check:

    Tensor + scalar adds to each element [OK]
Hint: Adding scalar to tensor adds to each element [OK]
Common Mistakes:
  • Expecting a Python list output
  • Thinking addition concatenates elements
  • Assuming error when adding int to tensor
4. Identify the error in this PyTorch code snippet:
import torch
x = torch.tensor([1, 2, 3])
y = x + '5'
print(y)
medium
A. Cannot add a string to a tensor
B. Tensor must be created with floats
C. Missing import statement
D. Tensor size mismatch error

Solution

  1. Step 1: Analyze the addition operation

    The code tries to add a string '5' to a tensor, which is not allowed.
  2. Step 2: Understand PyTorch type rules

    PyTorch tensors support addition with numbers, not strings, causing a TypeError.
  3. Final Answer:

    Cannot add a string to a tensor -> Option A
  4. Quick Check:

    Tensor + string causes error [OK]
Hint: Tensors add only numbers, not strings [OK]
Common Mistakes:
  • Thinking tensor needs floats only
  • Ignoring type mismatch in addition
  • Assuming missing import causes error
5. You want to speed up your machine learning model training by using GPU. Why is using tensors important in PyTorch for this?
hard
A. Because tensors can be moved to GPU memory for fast math operations
B. Because tensors automatically convert code to GPU instructions without user action
C. Because tensors store data as strings which GPUs process faster
D. Because tensors replace the need for GPUs entirely

Solution

  1. Step 1: Understand tensor compatibility with hardware

    Tensors can be moved to GPU memory, allowing fast parallel math operations.
  2. Step 2: Clarify user control over device placement

    Users must explicitly move tensors to GPU; tensors do not auto-convert code.
  3. Final Answer:

    Because tensors can be moved to GPU memory for fast math operations -> Option A
  4. Quick Check:

    Tensors + GPU = faster ML math [OK]
Hint: Move tensors to GPU for speed [OK]
Common Mistakes:
  • Thinking tensors auto-use GPU without code
  • Believing tensors store strings for speed
  • Assuming tensors replace GPUs
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard