Saturday, October 25, 2025
HomeLanguagesJavascriptTensorflow.js tf.layers.simpleRNNCell() Function

Tensorflow.js tf.layers.simpleRNNCell() Function

Tensorflow.js is an open-source library that is being developed by Google for running machine learning models as well as deep learning neural networks in the browser or node environment.

The .layers.simpleRNNCell( ) function  is used to find a cell class for simpleRNN.

Syntax:

tf.layers.simpleRNNCell (args)

Parameters:

  • units: It is a tensor input that  has positive integer unit which is a  dimensionality of the output space.
  • activation: It is a tensor input that is  an activation function to use and defaults to hyperbolic tangent. If you pass null, linear activation will be applied.
  • useBias: It is a tensor input  where a bias vector use for the layer.
  • kernelInitializer: It is a tensor input  that is an initializer for the kernel weights matrix which is used for the linear transformation of the inputs.
  • recurrentInitializer: It is a tensor input that is an initializer for the recurrentKernel weights matrix which is used for the linear transformation of the recurrent state.
  • biasInitializer: It is a tensor input that is an initializer for the bias vector.
  • kernelRegularizer: It is a tensor input where regularizer function applied to the kernel weights matrix.
  • recurrentRegularizer: It is a tensor input where regularizer function applied to the recurrent_kernel weights matrix.
  • biasRegularizer: It is a tensor input where regularizer function applied to the bias vector.
  • kernelConstraint: It is a tensor input where constraint function applied to the kernel weights matrix.
  • recurrentConstraint: It is a tensor input where constraint function  applied to the recurrentkernel weights matrix.
  • biasConstraint: It is a tensor input where constraint function applied to the bias vector.
  • dropout: It is a tensor input where fraction of the units to drop for the linear transformation of the inputs and float number between 0  and 1.
  • recurrentDropout: It is a tensor input where fraction of the units to drop for the linear transformation of the recurrent state and float number between 0 and 1.
  • inputShape: It is a tensor input that will be used to create a input layer to insert before this layer, if defined. It is only applicable to input layers.
  • batchInputShape: It is a tensor input that will be used to create a input layer to insert before this layer, if defined. It is only applicable to input layers.
  • batchSize: It is a tensor input where batchSize is used to construct the batchInputShape, if inputShape is specified and batchInputShape is not specified.
  • dType: It is a tensor input that is the data-type for this layer and defaults to ‘float32’.
  • name: It is a tensor input that is name for this layer.
  • trainable: It is a tensor input that defaults to true whether the weights of this layer are updatable by fit.
  • weights: It is a tensor input that can be of initial weight values of the layer.
  • inputDType: It is a tensor input that has legacy support and do not use for new code.

 

Return Value: It returns SimpleRNNCell.

Example 1: In this example, SimpleRNNCell is distinct from the RNN subclass. In SimpleRNN, its apply method takes the input data of only a single time step and returns the cell’s output at the time step, while SimpleRNN takes the input data over a number of time steps.

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Defining input elements
const cell = tf.layers.simpleRNNCell({units: 3});
const input = tf.input({shape: [11]});
const output = cell.apply(input);
  
console.log(JSON.stringify(output.shape));


Output:

[null, 11]

Example 2: In this example, Instance(s) of SimpleRNNCell can be used to construct RNN layers. The most typical use of this workflow is to combine a number of cells into a stacked RNN cell (i.e. StackedRNNCell internally) and use it to create an RNN.

Javascript




// Importing the tensorflow.js library
import * as tf from "@tensorflow/tfjs"
  
// Defining input elements
const cells = [
   tf.layers.simpleRNNCell({units: 8}),
   tf.layers.simpleRNNCell({units: 16}),
];
const rnn = tf.layers.rnn({cell: cells, returnSequences: true});
  
// Create an input with 20 time steps and
// a length-30 vector at each step
const input = tf.input({shape: [20, 30]});
const output = rnn.apply(input);
  
console.log(JSON.stringify(output.shape));


Output:

​[null, 20, 16]

Reference:https://js.tensorflow.org/api/latest/#layers.simpleRNNCell

Whether you’re preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape, neveropen Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we’ve already empowered, and we’re here to do the same for you. Don’t miss out – check it out now!
RELATED ARTICLES

Most Popular

Dominic
32361 POSTS0 COMMENTS
Milvus
88 POSTS0 COMMENTS
Nango Kala
6728 POSTS0 COMMENTS
Nicole Veronica
11892 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11954 POSTS0 COMMENTS
Shaida Kate Naidoo
6852 POSTS0 COMMENTS
Ted Musemwa
7113 POSTS0 COMMENTS
Thapelo Manthata
6805 POSTS0 COMMENTS
Umr Jansen
6801 POSTS0 COMMENTS