What is a tensor and how is it used in machine learning?

In machine learning, there is much discussion around tensors being the cornerstone data structure. Tensor is a type of data structure used in linear algebra that can be used for arithmetic operations like matrices and vectors. In 2015, researchers at Google came up with TensorFlow, which is now being used in building Machine Learning Software. TensorFlow helps engineers to translate new approaches to artificial intelligence into practical code. Anyone new to TensorFlow has many doubts about tensors. They need to search and read a lot to develop an understanding. This article saves you much time and effort as it explains tensors’ role in machine learning for beginners.


Table of Contents


  • What is a Tensor?
  • Tensor in detail
  • Tensor in Machine Learning
  • Conclusion


If you are new to machine learning, it is advisable to take up a machine learning course to understand the basics before learning about tensors.


What is a Tensor?


A tensor can be understood as a multidimensional array and is a generalization of matrices and vectors. A vector is the first order or one-dimensional tensor, and the matrix is a second order one. The notation of a tensor is much like that of a matrix. A tensor is denoted with a capital letter, and lowercase integers with subscript integers represent scalars values within the tensor. Mathematically, a tensor is defined as simple arrays of functions or numbers that may transform according to specific rules as per the coordinates’ change. In other words, a tensor is a single point or collection of isolated points of space/ defined over a continuum of points. 


The tensor elements are functions of the position and tensor forms, also known as the tensor field. This means that the tensor is not defined only for a point or collection of isolated points but at every point within a region of space. Tensors have made a name for itself in the IT industry after Google’ s flagship Machine Learning library- TensorFlow. It has become a basic unit for calculation. However, the name is the same, but tensors in programming are not the same as in mathematics. They happen to have some common qualities and representation techniques. A tensor in machine learning is represented as lists or lists or arrays of arrays. There many ways these representations can be manipulated without following any strict coordination transformation laws. This is what makes tensors in machine learning different from those in mathematics. There is an attribute shape(x,y) to represent every tensor where y is the dimension of list/array/matrices inside the tensor, and x is the tensor’s length. For every array/list inside, the shape has to be the same. 


Tensor in detail


Machine learning training explores more aspects of tensors than already introduced. By rule, tensor may consist of a single number, usually referred to as a zero order tensor or simply scalar. Thus, a scalar may be thought of as an array of dimension zero, for example, the mass of an object or particle. The density of a fluid as a function of position can be considered as a scalar field. Another example is the value of the gravitational potential energy as a function of position. If single functions vary continuously from point to point, it defines a scalar field. The next complicated tensor is that of order one, also known as vector. It may vary continuously from point-to-point or defined as a point or point, thereby defining a vector field. 


A vector or the ordinary three-dimensional space has three components- numbers or functions of the position. Similarly, in four-dimensional space-time, a vector has four components. In general, a tensor of order one has n components in an n-dimensional space. A vector’s components can be visualized as being written along a line or in a column, which is one dimensional. Thus an array can be thought of as an array of dimension one. TensorFlow represents tensors as an n-dimensional array of base data types. For building machine learning models, it may be defined as a computational network. There are a variety of different toolkits for constructing models provided according to the preferred level of abstraction. Generally, lower-level APIs are used to build models by defining a series of mathematical operations. Alternatively, higher-level APIs like tf.estimator specify predefined architectures such as neural networks or linear regressors. 


Tensor in Machine Learning


What is a tensor in machine learning? This is a broad question that can be answered in many ways. First of all, let’s define TensorFlow in the machine learning context. TensorFlow is a Google framework for creating Deep Learning models. Deep learning is a category of machine learning models that uses multi-layer neural networks. Machine Learning lets us build complex applications with great precision to solve problems from a wide range of datasets, including videos, audio, text, or images. The main reason for its popularity is the ease that it offers to developers to deploy and build multiple applications. TensorFlow was built, keeping power limitations in mind. The library can run on all kinds of computers and even smartphones. 


Traditional neural networks were based on shallow nets, one input layer, one hidden layer, and one output layer. Unlike traditional neural networks, deep-learning networks can discover hidden structures with unstructured and unlabelled data that includes images, text, and even sound. TensorFlow is one of the best libraries to implement Deep Learning as of now. It can be explained as a software library that uses data flow graphs to calculate mathematical expression. The mathematical operations are represented by the graph nodes, while the edges represent the tensors or multidimensional data arrays that float between them. TensorFlow was tailored for Machine Learning in 2015 but is extensively used to develop applications with Deep Learning. 




This is all the necessary information about tensors. This would come handy while working with tensors. The article aimed to expand the reader’s vision regarding the arrangement and representation of tensors. If you want to learn more and work with tensors with TensorFlow and PyTorch, sign up for a machine learning certification