Friday, March 25, 2022
HomeArtificial IntelligenceTwo-Dimensional Tensors in Pytorch

Two-Dimensional Tensors in Pytorch


Final Up to date on January 14, 2022

Two-dimensional tensors are analogous to two-dimensional metrics. Like a two-dimensional metric, a two-dimensional tensor additionally has $n$ variety of rows and columns.

Let’s take a gray-scale picture for instance, which is a two-dimensional matrix of numeric values, generally often called pixels. Starting from ‘0’ to ‘255’, every quantity represents a pixel depth worth. Right here, the bottom depth quantity (which is ‘0’) represents black areas within the picture whereas the very best depth quantity (which is ‘255’) represents white areas within the picture. Utilizing the PyTorch framework, this two-dimensional picture or matrix may be transformed to a two-dimensional tensor.

Within the earlier put up, we realized about one-dimensional tensors in PyTorch and utilized some helpful tensor operations. On this tutorial, we’ll apply these operations to two-dimensional tensors utilizing the PyTorch library. Particularly, we’ll study:

  • The way to create two-dimensional tensors in PyTorch and discover their sorts and shapes.
  • About slicing and indexing operations on two-dimensional tensors intimately.
  • To use quite a few strategies to tensors similar to, tensor addition, multiplication, and extra.

Let’s get began.

Two-Dimensional Tensors in Pytorch
Image by dylan dolte. Some rights reserved.

Tutorial Overview

This tutorial is split into components; they’re:

  • Varieties and shapes of two-dimensional tensors
  • Changing two-dimensional tensors into NumPy arrays
  • Changing pandas sequence to two-dimensional tensors
  • Indexing and slicing operations on two-dimensional tensors
  • Operations on two-dimensional tensors

Varieties and Shapes of Two-Dimensional Tensors

Let’s first import a number of crucial libraries we’ll use on this tutorial.

To verify the categories and shapes of the two-dimensional tensors, we’ll use the identical strategies from PyTorch, launched beforehand for one-dimensional tensors. However, ought to it work the identical manner it did for the one-dimensional tensors?

Let’s show by changing a 2D checklist of integers to a 2D tensor object. For instance, we’ll create a 2D checklist and apply torch.tensor() for conversion.

As you’ll be able to see, the torch.tensor() technique additionally works effectively for the two-dimensional tensors. Now, let’s use form(), measurement(), and ndimension() strategies to return the form, measurement, and dimensions of a tensor object.

Changing Two-Dimensional Tensors to NumPy Arrays

PyTorch permits us to transform a two-dimensional tensor to a NumPy array after which again to a tensor. Let’s learn how.

Changing Pandas Sequence to Two-Dimensional Tensors

Equally, we will additionally convert a pandas DataFrame to a tensor. As with the one-dimensional tensors, we’ll use the identical steps for the conversion. Utilizing values attribute we’ll get the NumPy array after which use torch.from_numpy that lets you convert a pandas DataFrame to a tensor.

Right here is how we’ll do it.

Indexing and Slicing Operations on Two-Dimensional Tensors

For indexing operations, totally different components in a tensor object may be accessed utilizing sq. brackets. You possibly can merely put corresponding indices in sq. brackets to entry the specified components in a tensor.

Within the under instance, we’ll create a tensor and entry sure components utilizing two totally different strategies. Notice that the index worth ought to all the time be one lower than the place the ingredient is positioned in a two-dimensional tensor.

What if we have to entry two or extra components on the similar time? That’s the place tensor slicing comes into play. Let’s use the earlier instance to entry first two components of the second row and first three components of the third row.

Operations on Two-Dimensional Tensors

Whereas there are quite a lot of operations you’ll be able to apply on two-dimensional tensors utilizing the PyTorch framework, right here, we’ll introduce you to tensor addition, and scalar and matrix multiplication.

Including Two-Dimensional Tensors

Including two tensors is much like matrix addition. It’s fairly a straight ahead course of as you merely want an addition (+) operator to carry out the operation. Let’s add two tensors within the under instance.

Scalar and Matrix Multiplication of Two-Dimensional Tensors

Scalar multiplication in two-dimensional tensors can also be an identical to scalar multiplication in matrices. For example, by multiplying a tensor with a scalar, say a scalar 4, you’ll be multiplying each ingredient in a tensor by 4.

Coming to the multiplication of the two-dimensional tensors, torch.mm() in PyTorch makes issues simpler for us. Just like the matrix multiplication in linear algebra, variety of columns in tensor object A (i.e. 2×3) should be equal to the variety of rows in tensor object B (i.e. 3×2).

Additional Studying

Developed concurrently TensorFlow, PyTorch used to have an easier syntax till TensorFlow adopted Keras in its 2.x model. To study the fundamentals of PyTorch, chances are you’ll wish to learn the PyTorch tutorials:

Particularly the fundamentals of PyTorch tensor may be discovered within the Tensor tutorial web page:

There are additionally fairly a number of books on PyTorch which can be appropriate for newbies. A extra lately printed guide needs to be advisable because the instruments and syntax are actively evolving. One instance is

Abstract

On this tutorial, you realized about two-dimensional tensors in PyTorch.

Particularly, you realized:

  • The way to create two-dimensional tensors in PyTorch and discover their sorts and shapes.
  • About slicing and indexing operations on two-dimensional tensors intimately.
  • To use quite a few strategies to tensors similar to, tensor addition, multiplication, and extra.



RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Most Popular

Recent Comments