THE RECURRENT NEURAL TANGENT KERNEL
Year: 2021

Abstract:
The study of deep neural networks (DNNs) in the infinite-width limit, via the so-called neural tangent kernel (NTK) approach, has provided new insights into the dynamics of learning, generalization, and the impact of initialization. One key DNN architecture remains to be kernelized, namely, the recurrent neural network (RNN). In this paper we introduce and study the Recurrent Neural Tangent Kernel (RNTK), which provides new insights into the behavior of overparametrized RNNs. A key property of the RNTK should greatly benefit practitioners is its ability to compare inputs of different length. To this end, we characterize how the RNTK weights different time steps to form its output under different initialization parameters and nonlinearity choices. A synthetic and 56 real-world data experiments demonstrate that the RNTK offers significant performance gains over other kernels, including standard NTKs, across a wide array of data sets.

heading: 1 INTRODUCTION
text: The overparameterization of modern deep neural networks (DNNs) has resulted in not only remarkably good generalization performance on unseen data (Novak et al., 2018; Neyshabur et al., 2019; Belkin et al., 2019) but also guarantees that gradient descent learning can find the global minimum of their highly nonconvex loss functions (Du et al., 2019b; Allen-Zhu et al., 2019b;a; Zou et al., 2018; Arora et al., 2019b). From these successes, a natural question arises: What happens when we take overparameterization to the limit by allowing the width of a DNN’s hidden layers to go to infinity? Surprisingly, the analysis of such an (impractical) DNN becomes analytically tractable. Indeed, recent work has shown that the training dynamics of (infinite-width) DNNs under gradient flow is captured by a constant kernel called the Neural Tangent Kernel (NTK) that evolves according to a linear ordinary differential equation (ODE) (Jacot et al., 2018; Lee et al., 2019; Arora et al., 2019a).
Every DNN architecture and parameter initialization produces a distinct NTK. The original NTK was derived from the Multilayer Perceptron (MLP)(Jacot et al., 2018) and was soon followed by kernels derived from Convolutional Neural Networks (CNTK) (Arora et al., 2019a; Yang, 2019a), Residual DNNs (Huang et al., 2020), and Graph Convolutional Neural Networks (GNTK) (Du et al., 2019a). In (Yang, 2020a), a general strategy to obtain the NTK of any architecture is provided.
In this paper, we extend the NTK concept to the important class of overparametrized Recurrent Neural Networks (RNNs), a fundamental DNN architecture for processing sequential data. We show that RNN in its infinite-width limit converges to a kernel that we dub the Recurrent Neural Tangent Kernel (RNTK). The RNTK provides high performance for various machine learning tasks, and an analysis of the properties of the kernel provides useful insights into the behavior of RNNs in the following overparametrized regime. In particular, we derive and study the RNTK to answer the following theoretical questions:
Q: Can the RNTK extract long-term dependencies between two data sequences? RNNs are known to underperform at learning long-term dependencies due to the gradient vanishing or exploding (Bengio et al., 1994). Attempted ameliorations have included orthogonal weights (Arjovsky et al., 2016; Jing et al., 2017; Henaff et al., 2016) and gating such as in Long Short-Term Memory (LSTM) (Hochreiter & Schmidhuber, 1997) and Gated Recurrent Unit (GRU) (Cho et al., 2014) RNNs. We demonstrate that the RNTK can detect long-term dependencies with proper initialization of the hyperparameters, and moreover, we show how the dependencies are extracted through time via different hyperparameter choices.
Q: Do the recurrent weights of the RNTK reduce its representation power compared to other NTKs? An attractive property of an RNN that is shared by the RNTK is that it can deal with sequences of different lengths via weight sharing through time. This enables the reduction of the number of learnable parameters and thus more stable training at the cost of reduced representation power. We prove the surprising fact that employing tied vs. untied weights in an RNN does not impact the analytical form of the RNTK.
Q: Does the RNTK generalize well? A recent study has revealed that the use of an SVM classifier with the NTK, CNTK, and GNTK kernels outperforms other classical kernel-based classifiers and trained finite DNNs on small data sets (typically fewer than 5000 training samples) (Lee et al., 2020; Arora et al., 2019a; 2020; Du et al., 2019a). We extend these results to RNTKs to demonstrate that the RNTK outperforms a variety of classic kernels, NTKs and finite RNNs for time series data sets in both classification and regression tasks. Carefully designed experiments with data of varying lengths demonstrate that the RNTK’s performance accelerates beyond other techniques as the difference in lengths increases. Those results extend the empirical observations from (Arora et al., 2019a; 2020; Du et al., 2019a; Lee et al., 2020) into finite DNNs, NTK, CNTK, and GNTK comparisons by observing that their performance-wise ranking depends on the employed DNN architecture.
We summarize our contributions as follows:
[C1] We derive the analytical form for the RNTK of an overparametrized RNN at initialization using rectified linear unit (ReLU) and error function (erf) nonlinearities for arbitrary data lengths and number of layers (Section 3.1).
[C2] We prove that the RNTK remains constant during (overparametrized) RNN training and that the dynamics of training are simplified to a set of ordinary differential equations (ODEs) (Section 3.2).
[C3] When the input data sequences are of equal length, we show that the RNTKs of weight-tied and weight-untied RNNs converge to the same RNTK (Section 3.3).
[C4] Leveraging our analytical formulation of the RNTK, we empirically demonstrate how correlations between data at different times are weighted by the function learned by an RNN for different sets of hyperparameters. We also offer practical suggestions for choosing the RNN hyperparameters for deep information propagation through time (Section 3.4).
[C5] We demonstrate that the RNTK is eminently practical by showing its superiority over classical kernels, NTKs, and finite RNNs in exhaustive experiments on time-series classification and regression with both synthetic and 56 real-world data sets (Section 4).

heading: 2 BACKGROUND AND RELATED WORK
text: Notation. We denote [n] = {1, . . . , n}, and Id the identity matrix of size d. [A]i,j represents the (i, j)-th entry of a matrix, and similarly [a]i represents the i-th entry of a vector. We use φ(·) : R → R to represent the activation function that acts coordinate wise on a vector and φ′ to denote its derivative. We will often use the rectified linear unit (ReLU) φ(x) = max(0, x) and error function (erf) φ(x) = 2√
π ∫ x 0 e−z 2
dz activation functions. N (µ,Σ) represents the multidimensional Gaussian distribution with the mean vector µ and the covariance matrix Σ.
Recurrent Neural Networks (RNNs). Given an input sequence data x = {xt}Tt=1 of length T with data at time t, xt ∈ Rm, a simple RNN (Elman, 1990) performs the following recursive computation at each layer ` and each time step t
g(`,t)(x) = W (`)h(`,t−1)(x) +U (`)h(`−1,t)(x) + b(`), h(`,t)(x) = φ ( g(`,t)(x) ) ,
where W (`) ∈ Rn×n, b(`) ∈ Rn for ` ∈ [L], U (1) ∈ Rn×m and U (`) ∈ Rn×n for ` ≥ 2 are the RNN parameters. g(`,t)(x) is the pre-activation vector at layer ` and time step t, and h(`,t)(x) is the after-activation (hidden state). For the input layer ` = 0, we define h(0,t)(x) := xt. h(`,0)(x) as the initial hidden state at layer ` that must be initialized to start the RNN recursive computation.
The output of an L-hidden layer RNN with linear read out layer is achieved via
fθ(x) = V h (L,T )(x),
where V ∈ Rd×n. Figure 1 visualizes an RNN unrolled through time.
h(2,2)h (2,1)(x) h(2,3)(x)
h(1,2)(x)h(1,1)(x) h(1,3)(x)
W (2) W (2)
W (1) W (1) U (2) U (2) U (2)
h(2,0)(x)
h(1,0)(x)
W (2)
W (1)
x1 x2 x3
U (1) U (1) U (1)
Neural Tangent Kernel (NTK). Let fθ(x) ∈ Rd be the output of a DNN with parameters θ. For two input data sequences x and x′, the NTK is defined as (Jacot et al., 2018)
Θ̂s(x,x ′) = 〈∇θsfθs(x),∇θsfθs(x′)〉,
where fθs and θs are the network output and parameters during training at time s. 1 Let X and Y be the set of training inputs and targets, `(ŷ, y) : Rd × Rd → R+ be the loss function, and L = 1|X | ∑ (x,y)∈X×Y `(fθs(x),y) be the the empirical loss. The evolution of the parameters θs and output of the network fθs on a test input using gradient descent with infinitesimal step size (a.k.a gradient flow) with learning rate η is given by
∂θs ∂s = −η∇θsfθs(X )T∇fθs (X )L (1)
∂fθs(x)
∂s = −η∇θsfθs(x)∇θsfθs(X )T∇fθs (X )L = −ηΘ̂s(x,X )∇fθs (X )L. (2)
Generally, Θ̂s(x,x′), hereafter referred to as the empirical NTK, changes over time during training, making the analysis of the training dynamics difficult. When fθs corresponds to an infinite-width MLP, (Jacot et al., 2018) showed that Θ̂s(x,x′) converges to a limiting kernel at initialization and stays constant during training, i.e.,
lim n→∞
Θ̂s(x,x ′) = lim
n→∞ Θ̂0(x,x
′) := Θ(x,x′) ∀s ,
which is equivalent to replacing the outputs of the DNN by their first-order Taylor expansion in the parameter space (Lee et al., 2019). With a mean-square error (MSE) loss function, the training dynamics in (1) and (2) simplify to a set of linear ODEs, which coincides with the training dynamics of kernel ridge regression with respect to the NTK when the ridge term goes to zero. A nonzero ridge regularization can be conjured up by adding a regularization term λ 2
2 ‖θs − θ0‖ 2 2 to the empirical loss
(Hu et al., 2020).

heading: 3 THE RECURRENT NEURAL TANGENT KERNEL
text: We are now ready to derive the RNTK. We first prove the convergence of an RNN at initialization to the RNTK in the infinite-width limit and discuss various insights it provides. We then derive the convergence of an RNN after training to the RNTK. Finally, we analyze the effects of various hyperparameter choices on the RNTK. Proofs of all of our results are provided in the Appendices.

heading: 3.1 RNTK FOR AN INFINITE-WIDTH RNN AT INITIALIZATION
text: First we specify the following parameter initialization scheme that follows previous work on NTKs (Jacot et al., 2018), which is crucial to our convergence results:
W (`) = σ`w√ n W(`), U (1) = σ1u√ m U(1), U (`) = σ`u√ n U(`)(`≥2), V = σv√ n V, b(`) =σbb (`) , (3)
where
[W`]i,j , [U (`)]i,j , [V]i,j , [b (`)]i ∼ N (0, 1) . (4)
We will refer to (3) and (4) as the NTK initialization. The choices of the hyperparameters σw, σu, σv and σb can significantly impact RNN performance, and we discuss them in detail in Section
1We use s to denote time here, since t is used to index the time steps of the RNN inputs.
3.4. For the initial (at time t = 0) hidden state at each layer `, we set h(`,0)(x) to an i.i.d. copy of N (0, σh) (Wang et al., 2018) . For convenience, we collect all of the learnable parameters of the RNN into θ = vect [ {{W(`),U(`),b(`)}L`=1,V} ] .
The derivation of the RNTK at initialization is based on the correspondence between Gaussian initialized, infinite-width DNNs and Gaussian Processes (GPs), known as the DNN-GP. In this setting every coordinate of the DNN output tends to a GP as the number of units/neurons in the hidden layer (its width) goes to infinity. The corresponding DNN-GP kernel is computed as
K(x,x′) = E θ∼N
[ [fθ(x)]i · [fθ(x′)]i ] , ∀i ∈ [d]. (5)
First introduced for a single-layer, fully-connected neural network by (Neal, 1995), recent works on NTKs have extended the results for various DNN architectures (Lee et al., 2018; Duvenaud et al., 2014; Novak et al., 2019; Garriga-Alonso et al., 2019; Yang, 2019b), where in addition to the output, all pre-activation layers of the DNN tends to a GPs in the infinite-width limit. In the case of RNNs, each coordinate of the RNN pre-activation g(`,t)(x) converges to a centered GP depending on the inputs with kernel
Σ(`,t,t ′)(x,x′) = E
θ∼N
[ [g(`,t)(x)]i · [g(`,t ′)(x′)]i ] ∀i ∈ [n]. (6)
As per (Yang, 2019a), the gradients of random infinite-width DNNs computed during backpropagation are also Gaussian distributed. In the case of RNNs, every coordinate of the vector δ(`,t)(x) :=√ n ( ∇g(`,t)(x)fθ(x) ) converges to a GP with kernel
Π(`,t,t ′)(x,x′) = E
θ∼N
[ [δ(`,t)(x)]i · [δ(`,t ′)(x′)]i ] ∀i ∈ [n]. (7)
Both convergences occur independently of the coordinate index i and for inputs of possibly different lengths, i.e., T 6= T ′. With (6) and (7), we now prove that an infinite-width RNN at initialization converges to the limiting RNTK.
Theorem 1 Let x and x′ be two data sequences of potentially different lengths T and T ′, respectively. Without loss of generality, assume that T ≤ T ′, and let τ := T ′ − T . Let n be the number of units in the hidden layers, the empirical RNTK for an L-layer RNN with NTK initialization converges to the following limiting kernel as n→∞
lim n→∞
Θ̂0(x,x ′) = Θ(x,x′) = Θ(L,T,T ′)(x,x′)⊗ Id , (8)
where
Θ(L,T,T ′)(x,x′) = ( L∑ `=1 T∑ t=1 ( Π(`,t,t+τ)(x,x′) · Σ(`,t,t+τ)(x,x′) )) +K(x,x′) , (9)
with K(x,x′), Σ(`,t,t+τ)(x,x′), and Π(`,t,t+τ)(x,x′) defined in (5)–(7).
Remarks. Theorem 1 holds generally for any two data sequences, including different lengths ones. This highlights the RNTK’s ability to produce a similarity measure Θ(x,x′) even if the inputs are of different lengths, without resorting to heuristics such as zero padding the inputs to the to the max length of both sequences. Dealing with data of different length is in sharp contrast to common kernels such as the classical radial basis functions, polynomial kernels, and current NTKs. We showcase this capability below in Section 4.
To visualize Theorem 1, we plot in the left plot in Figure 2 the convergence of a single layer, sufficiently wide RNN to its RNTK with the two simple inputs x = {1,−1, 1} of length 3 and x′ = {cos(α), sin(α)} of length 2, where α = [0, 2π]. For an RNN with a sufficiently large hidden state (n = 1000), we see clearly that it converges to the RNTK (n =∞). RNTK Example for a Single-Layer RNN. We present a concrete example of Theorem 1 by showing how to recursively compute the RNTK for a single-layer RNN; thus we drop the layer index for notational simplicity. We compute and display the RNTK for the general case of a multilayer RNN in Appendix B.3. To compute the RNTK Θ(T,T ′)(x,x′), we need to compute the GP
kernels Σ(t,t+τ)(x,x′) and Π(t,t+τ)(x,x′). We first define the operator Vφ [ K ]
that depends on the nonlinearity φ(·) and a positive semi-definite matrixK ∈ R2×2
Vφ [ K ]
= E[φ(z1) · φ(z2)], (z1, z2) ∼ N (0,K) . (10) Following (Yang, 2019a), we obtain the analytical recursive formula for the GP kernel Σ(t,t+τ)(x,x′) for a single layer RNN as
Σ(1,1)(x,x′) = σ2wσ 2 h1(x=x′) + σ2u m 〈x1,x′1〉+ σ2b (11) Σ(t,1)(x,x′) = σ2u m 〈xt,x′1〉+ σ2b t > 1 (12)
Σ(1,t ′)(x,x′) = σ2u m 〈x1,x′t′〉+ σ2b t′ > 1 (13)
Σ(t,t ′)(x,x′) = σ2wVφ [ K(t,t ′)(x,x′) ]
+ σ2u m 〈xt,x′t′〉+ σ2b t, t′ > 1 (14)
K(x,x′) = σ2vVφ [ K(T+1,T ′+1)(x,x′) ] , (15)
where
K(t,t ′)(x,x′) =
[ Σ(t−1,t−1)(x,x) Σ(t−1,t ′−1)(x,x′)
Σ(t−1,t ′−1)(x,x′) Σ(t ′−1,t′−1)(x′,x′)
] . (16)
Similarly, we obtain the analytical recursive formula for the GP kernel Π(t,t+τ)(x,x′) as
Π(T,T ′)(x,x′) = σ2vVφ′ [ K(T+1,T+τ+1)(x,x′) ] (17)
Π(t,t+τ)(x,x′) = σ2wVφ′ [ K(t+1,t+τ+1)(x,x′) ] Π(t+1,t+1+τ)(x,x′) t ∈ [T − 1] (18)
Π(t,t ′)(x,x′) = 0 t′ − t 6= τ. (19) For φ = ReLU and φ = erf , we provide analytical expressions for Vφ [ K ] and Vφ′ [ K ]
in Appendix B.5. These yield an explicit formula for the RNTK that enables fast and point-wise kernel evaluations. For other activation functions, one can apply the Monte Carlo approximation to obtain Vφ [ K ]
and Vφ′ [ K ] (Novak et al., 2019).

heading: 3.2 RNTK FOR AN INFINITE-WIDTH RNN DURING TRAINING
text: We prove that an infinitely-wide RNN, not only at initialization but also during gradient descent training, converges to the limiting RNTK at initialization.
Theorem 2 Let n be the number of units of each RNN’s layer. Assume that Θ(X ,X ) is positive definite on X such that λmin(Θ(X ,X )) > 0. Let η∗ := 2 ( λmin(Θ(X ,X )) + λmax(Θ(X ,X ) ))−1 . For an L-layer RNN with NTK initialization as in (3), (4) trained under gradient flow (recall (1) and (2)) with η < η∗, we have with high probability
sup s ‖θs − θ0‖2√ n , sup s ‖Θ̂s(X ,X )− Θ̂0(X ,X )‖2 = O ( 1√ n ) .
Remarks. Theorem 2 states that the training dynamics of an RNN in the infinite-width limit as in (1), (2) are governed by the RNTK derived from the RNN at its initialization. Intuitively, this is due to the NTK initialization (3), (4) which positions the parameters near a local minima, thus minimizing the amount of update that needs to be applied to the weights to obtain the final parameters.

heading: 3.3 RNTK FOR AN INFINITE-WIDTH RNN WITHOUT WEIGHT SHARING
text: We prove that, in the infinite-width limit, an RNN without weight sharing (untied weights), i.e., using independent new weights W(`,t), U(`,t) and b(`,t) at each time step t, converges to the same RNTK as an RNN with weight sharing (tied weights). First, recall that it is a common practice to use weight-tied RNNs, i.e., in layer `, the weights W(`), U(`) and b(`) are the same across all time steps t. This practice conserves memory and reduces the number of learnable parameters. We demonstrate that, when using untied-weights, the RNTK formula remains unchanged.
Theorem 3 For inputs of the same length, an RNN with untied weights converges to the same RNTK as an RNN with tied weights in the infinite-width (n→∞) regime.
Remarks. Theorem 3 implies that weight-tied and weight-untied RNNs have similar behaviors in the infinite-width limit. It also suggests that existing results on the simpler, weight-untied RNN setting may be applicable for the more general, weight-tied RNN. The plot on the right side of Figure 2 empirically demonstrates the convergence of both the weight-tied and weight-untied RNNs to the RNTK with increasing hidden layer size n; moreover, the convergence rates are similar.

heading: 3.4 INSIGHTS INTO THE ROLES OF THE RNTK’S HYPERPARAMETERS
text: Our analytical form for the RNTK is fully determined by a small number of hyperparameters, which contains the various weight variances collected into S = {σw, σu, σb, σh} and the activation function.2 In standard supervised-learning settings, one often performs cross-validation to select the hyperparameters. However, since kernel methods become computationally intractable for large datasets, we seek a more computationally friendly alternative to cross-validation. Here we conduct a novel exploratory analysis that provides new insights into the impact of the RNTK hyperparameters on the RNTK output and suggests a simple method to select them a priori in a deliberate manner.
To visualize the role of the RNTK hyperparameters, we introduce the sensitivity s(t) of the RNTK of two input sequences x and x′ with respect to the input xt at time t
s(t) = ‖∇xtΘ(x,x′)‖2 . (20)
2From (11) to (18) we emphasize that σv merely scales the RNTK and does not change its overall behavior.
Here, s(t) indicates how sensitive the RNTK is to the data at time t, i.e., xt, in presence of another data sequence x′. Intuitively, large/small s(t) indicates that the RNTK is relatively sensitive/insensitive to the input xt at time t.
The sensitivity is crucial to understanding to which extent the RNTK prediction is impacted by the input at each time step. In the case where some time indices have a small sensitivity, then any input variation in those corresponding times will not alter the RNTK output and thus will produce a metric that is invariant to those changes. This situation can be beneficial or detrimental based on the task at hand. Ideally, and in the absence of prior knowledge on the data, one should aim to have a roughly constant sensitivity across time in order to treat all time steps equally in the RNTK input comparison.
Figure 3 plots the normalized sensitivity s(t)/maxt(s(t)) for two data sequences of the same length T = 100, with s(t) computed numerically for xt,x′t ∼ N (0, 1). We repeated the experiments 10000 times; the mean of the sensitivity is shown in Figure 3. Each of the plots shows the changes of parameters SReLU = { √ 2, 1, 0, 0} for φ = ReLU and Serf = {1, 0.01, 0.05, 0} for φ = erf .
From Figure 3 we first observe that both ReLU and erf show similar per time step sensitivity measure s(t) behavior around the hyperparameters SReLU and Serf . If one varies any of the weight variance parameters, the sensitivity exhibits a wide range of behavior, and in particular with erf . We observe that σw has a major influence on s(t). For ReLU, a small decrease/increase in σw can lead to over-sensitivity of the RNTK to data at the last/first times steps, whereas for erf , any changes in σw leads to over-sensitivity to the last time steps.
Another notable observation is the importance of σh, which is usually set to zero for RNNs. (Wang et al., 2018) showed that a non-zero σh acts as a regularization that improves the performance of RNNs with the ReLU nonlinearity. From the sensitivity perspective, a non-zero σh results in reducing the importance of the first time steps of the input. We also see the same behavior in erf , but with stronger changes as σh increases. Hence whenever one aims at reinforcing the input pairwise comparisons, such parameters should be favored.
This sensitivity analysis provides a practical tool for RNTK hyperparameter tuning. In the absence of knowledge about the data, hyperparameters should be chosen to produce the least time varying sensitivity. If given a priori knowledge, hyperparameters can be selected that direct the RNTK to the desired time-steps.

heading: 4 EXPERIMENTS
text: We now empirically validate the performance of the RNTK compared to classic kernels, NTKs, and trained RNNs on both classification and regression tasks using a large number of time series data sets. Of particular interest is the capability of the RNTK to offer high performance even on inputs of different lengths.
Time Series Classification. The first set of experiments considers time series inputs of the same lengths from 56 datasets in the UCR time-series classification data repository (Dau et al., 2019). We restrict ourselves to selected data sets with fewer than 1000 training samples and fewer than 1000 time steps (T ) as kernel methods become rapidly intractable for larger datasets. We compare the RNTK with a variety of other kernels, including the Radial Basis Kernel (RBF), polynomial kernel, and NTK (Jacot et al., 2018), as well as finite RNNs with Gaussian, identity (Le et al., 2015) initialization, and GRU (Cho et al., 2014). We use φ = ReLU for both the RNTKs and NTKs. For each kernel, we train a C-SVM (Chang & Lin, 2011) classifier, and for each finite RNN we use gradient descent training. For model hyperparameter tuning, we use 10-fold cross-validation. Details on the data sets and experimental setup are available in Appendix A.1.
We summarize the classification results over all 56 datasets in Table 1; detailed results on each data set is available in Appendix A.2. We see that the RNTK outperforms not only the classical kernels but also the NTK and trained RNNs in all metrics. The results demonstrate the ability of RNTK to provide increased performances compare to various other methods (kernels and RNNs). The superior performance of RNTK compared to other kernels, including NTK, can be explained by the internal recurrent mechanism present in RNTK, allowing time-series adapted sample comparison. In addition, RNTK also outperforms RNN and GRU. As the datasets we consider are relative small in size, finite RNNs and GRUs that typically require large amount of data to succeed do not perform well in our setting. An interesting future direction would be to compare RNTK to RNN/GRU on larger datasets.
Time Series Regression. We now validate the performance of the RNTK on time series inputs of different lengths on both synthetic data and real data. For both scenarios, the target is to predict the next time-step observation of the randomly extracted windows of different length using kernel ridge regression.
We compare the RNTK to other kernels, the RBF and polynomial kernels and the NTK. We also compare our results with a data independent predictor that requires no training, that is simply to predict the next time step with previous time step (PTS).
For the synthetic data experiment, we simulate 1000 samples of one period of a sinusoid and add white Gaussian noise with default σn = 0.05. From this fixed data, we extract training set size Ntrain = 20 segments of uniform random lengths in the range of [Tfixed, Tfixed + Tvar] with Tfixed = 10. We use standard kernel ridge regression for this task. The test set is comprised of Ntest = 5000 obtained from other randomly extracted segments, again of varying lengths. For the real data, we use 975 days of the Google stock value in the years 2014–2018. As in the simulated signal setup above, we extract Ntrain segments of different lengths from the first 700 days and test on the Ntest segments from days 701 to 975. Details of the experiment are available in Appendix A.2.
We report the predicted signal-to-noise ratio (SNR) for both datasets in Figures 4a and 4c for various values of Tvar. We vary the noise level and training set size for fixed Tvar = 10 in Figures 4b and 4d. As we see from Figures 4a and 4c, the RNTK offers substantial performance gains compared to the other kernels, due to its ability to naturally deal with variable length inputs. Moreover, the performance gap increases with the amount of length variation of the inputs Tvar. Figure 4d demonstrates that, unlike the other methods, the RNTK maintains its performance even when the training set is small. Finally, Figure 4c demonstrates that the impact of noise in the data on the regression performance is roughly the same for all models but becomes more important for RNTK with a large σn; this might be attributed to the recurrent structure of the model allowing for a time propagation and amplification of the noise for very low SNR. These experiments demonstrate the distinctive advantages of the RNTK over classical kernels, and NTKs for input data sequences of varying lengths.
In the case of PTS, we expect the predictor to outperform kernel methods when learning from the training samples is hard, due to noise in the data or small training size which can lead to over fitting. In Figure 4a RNTK and Polynomial kernels outperforms PTS for all values of Tvar, but for larger Tvar, NTK and RBF under perform PTS due to the increasing detrimental effect of zero padding.
For the Google stock value, we see a superior performance of PTS with respect to all other kernel methods due to the nature of those data heavily relying on close past data. However, RNTK is able to reduce the effect of over-fitting, and provide the closest results to PTS among all kernel methods we employed, with increasing performance as the number of training samples increase.

heading: 5 CONCLUSIONS
text: In this paper, we have derived the RNTK based on the architecture of a simple RNN. We have proved that, at initialization, after training, and without weight sharing, any simple RNN converges to the same RNTK. This convergence provides new insights into the behavior of infinite-width RNNs, including how they process different-length inputs, their training dynamics, and the sensitivity of their output at every time step to different nonlinearities and initializations. We have highlighted the RNTK’s practical utility by demonstrating its superior performance on time series classification and regression compared to a range of classical kernels, the NTK, and trained RNNs. There are many avenues for future research, including developing RNTKs for gated RNNs such as the LSTM (Hochreiter & Schmidhuber, 1997) and investigating which of our theoretical insights extend to finite RNNs.

heading: ACKNOWLEDGMENTS
text: This work was supported by NSF grants CCF-1911094, IIS-1838177, and IIS-1730574; ONR grants N00014-18-12571, N00014-20-1-2787, and N00014-20-1-2534; AFOSR grant FA9550-18-1-0478; and a Vannevar Bush Faculty Fellowship, ONR grant N00014-18-1-2047.

heading: A EXPERIMENT DETAILS

heading: A.1 TIME SERIES CLASSIFICATION
text: Kernel methods settings. We used RNTK, RBF, polynomial and NTK (Jacot et al., 2018). For data pre-processing, we normalized the norm of each x to 1. For training we used C-SVM in LIBSVM library (Chang & Lin, 2011) and for hyperparameter selection we performed 10-fold validation for splitting the training data into 90% training set and 10% validation test. We then choose the best performing set of hyperparameters on all the validation sets, retrain the models with the best set of hyperparameters on the entire training data and finally report the performance on the unseen test data. The performance of all kernels on each data set is shown in table 2.
For C-SVM we chose the cost function value
C ∈ {0.01, 0.1, 1, 10, 100}
and for each kernel we used the following hyperparameter sets
• RNTK: We only used single layer RNTK, we φ = ReLU and the following hyperparameter sets for the variances:
σw ∈ {1.34, 1.35, 1.36, 1.37, 1.38, 1.39, 1.40, 1.41, 1.42, √
2, 1.43, 1.44, 1.45, 1.46, 1.47} σu = 1
σb ∈ {0, 0.01, 0.05, 0.1, 0.2, 0.3, 0.4, 0.5, 0.7, 0.9, 1, 2} σh ∈ {0, 0.01, 0.1, 0.5, 1}
• NTK: The formula for NTK of L-layer MLP (Jacot et al., 2018) for x,x′ ∈ Rm is:
Σ(1) = σ2w m 〈x,x′〉+ σ2b
Σ(`)(x,x′) = σ2wVφ[K (`)(x,x′)] + σ2b ` ∈ [L] Σ̇(`)(x,x′) = σ2wVφ′ [K (`+1)(x,x′)] ` ∈ [L]
K(`)(x,x′) = [ Σ(`−1)(x,x) Σ(`−1)(x,x′) Σ(`−1)(x,x′) Σ(`−1)(x′,x′) ] K(x,x′) = σ2vVφ[K(L+1)(x,x′)]
kNTK = L∑ `=1
( Σ(`)(x,x′)
L∏ `′=` Σ̇(`)(x,x′)
) +K(x,x′)
and we used the following hyperparamters
L ∈ [10] σw ∈ {0.5, 1, √ 2, 2, 2.5, 3}
σb ∈ {0, 0.01, 0.1, 0.2, 0.5, 0.8, 1, 2, 5}
• RBF:
kRBF(x,x ′) = e(−α‖x−x ′‖22)
α ∈ {0.01, 0.05, 0.1, 0.2, 0.5, 0.6, 0.7, 0.8, 1, 2, 3, 4, 5, 10, 20, 30, 40, 100}
• Polynomial:
kPolynomial(x,x ′) = (r + 〈x,x′〉)d
d ∈ [5] r ∈ {0, 0.1, 0.2, 0.5, 1, 2}
Finite-width RNN settings. We used 3 different RNNs. The first is a ReLU RNN with Gaussian initialization with the same NTK initialization scheme, where parameter variances are σw = σv = √ 2,
σu = 1 and σb = 0. The second is a ReLU RNN with identity initialization following (Le et al., 2015). The third is a GRU (Cho et al., 2014) with uniform initialization. All models are trained with RMSProp algorithm for 200 epochs. Early stopping is implemented when the validation set accuracy does not improve for 5 consecutive epochs.
We perform standard 5-fold cross validation. For each RNN architecture we used hyperparamters of number of layer, number of hidden units and learning rate as
L ∈ {1, 2} n ∈ {50, 100, 200, 500}
η ∈ {0.01, 0.001, 0.0001, 0.00001}
Metrics descriptions First, only in this paragraph, let i ∈ {1, 2, ..., N} index a total of N datasets and j ∈ {1, 2, ...,M} index a total of M classifiers. Let yij be the accuracy of the j-th classifer on the i-th dataset. We reported results on 4 metrics: average accuracy (Acc. mean), P90, P95, PMA and Friedman Rank. P90 and P95 is the fraction of datasets that the classifier achieves at least 90% and 95% of the maximum achievable accuracy for each dataset, i.e.,
P90j = 1
N ∑ i 1(yij ≥ 0.9(max j yij)) . (21)
PMA is the accuracy of the classifier on a dataset divided by the maximum achievable accuracy on that dataset, averaged over all datasets:
PMAj = 1
N ∑ i yij max j yij . (22)
Friedman Rank (Fernández-Delgado et al., 2019) first ranks the accuracy of each classifier on each dataset and then takes the average of the ranks for each classifier over all datasets, i.e.,
FRj = 1
N ∑ i rij , (23)
where rij is the ranking of the j-th classifier on the i-th dataset.
Note that a better classifier achieves a lower Friedman Rank, Higher P/90 and PMA.
Remark. In order to provide insight into the performance of RNTK in long time steps setting, we picked two datasets with more that 1000 times steps: SemgHandSubjectCh2 (T = 1024) and StarLightCurves (T = 1024).

heading: A.2 TIME SERIES REGRESSION
text: For time series regression, we used the 5-fold validation of training set and same hyperparamter sets for all kernels. For training we kernel ridge regression with ridge term chosen form
λ ∈ {0, 0.01, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.8, 1, 2, 3, 4, 5, 6, 7, 8, 10, 100}

heading: B PROOFS FOR THEOREMS 1 AND 3: RNTK CONVERGENCE AT INITIALIZATION

heading: B.1 PRELIMINARY: NETSOR PROGRAMS
text: Calculation of NTK in any architecture relies on finding the GP kernels that correspond to each pre-activation and gradient layers at initialization. For feedforward neural networks with n1, . . . , nL number of neurons (channels in CNNs) at each layer the form of this GP kernels can be calculated via taking the limit of n1, . . . , nL sequentially one by one. The proof is given by induction, where by conditioning on the previous layers, each entry of the current layer is sum of infinite i.i.d Gaussian random variables, and based on Central Limit Theorem (CLT), it becomes a Gaussian process with
kernel calculated based on the previous layers. Since the first layer is an affine transformation of input with Gaussian weights, it is a Gaussian process and the proof is completed. See (Lee et al., 2018; Duvenaud et al., 2014; Novak et al., 2019; Garriga-Alonso et al., 2019) for a formal treatment. However, due to weight-sharing, sequential limit is not possible and condoning on previous layers does not result in i.i.d. weights. Hence the aforementioned arguments break. To deal with it, in (Yang, 2019a) a proof using Gaussian conditioning trick (Bolthausen, 2014) is presented which allows use of recurrent weights in a network. More precisely, it has been demonstrated than neural networks (without batch normalization) can be expressed and a series of matrix multiplication and (piece wise) nonlinearity application, generally referred as Netsor programs. It has been shown that any architecture that can be expressed as Netsor programs that converge to GPs as width goes to infinity in the same rate, which a general rule to obtain the GP kernels. For completeness of this paper, we briefly restate the results from (Yang, 2019a) which we will use later for calculation derivation of RNTK.
There are 3 types of variables in Netsor programs; A-vars, G-vars and H-vars. A-vars are matrices and vectors with i.i.d Gaussian entries, G-vars are vectors introduced by multiplication of a vector by an A-var and H-vars are vectors after coordinate wise nonlinearities is applied to G-vars. Generally, G-vars can be thought of as pre-activation layers which are asymptotically treated as a Gaussian distributed vectors, H-vars as after-activation layers and A-vars are the weights. Since in neural networks inputs are immediately multiplied by a weight matrix, it can be thought of as an G-var, namely gin. Generally Netsor programs supports G-vars with different dimension, however the asymptotic behavior of a neural networks described by Netsor programs does not change under this degree of freedom, as long as they go to infinity at the same rate. For simplicity, let the G-vars and H-vars have the same dimension n since the network of interest is RNN and all pre-activation layers have the same dimension. We introduce the Netsor programs under this simplification. To produce the output of a neural network, Netsor programs receive a set of G-vars and A-vars as input, and new variables are produced sequentially using the three following operators:
• Matmul : multiplication of an A-var: A with an H-var: h, which produce a new G-var, g. g = Ah (24)
• Lincomp: Linear combination of G-vars, gi, 1 ≤ i ≤ k , with coefficients ai ∈ R 1 ≤ i ≤ k which produce of new G-var:
g = k∑ i=1 aigi (25)
• Nonlin: creating a new H-var, h, by using a nonlinear function φ : Rk → R that act coordinate wise on a set of G-vars, gi, 1 ≤ i ≤ k :
h = ϕ(g1, . . . , gk) (26)
Any output of the neural network y ∈ R should be expressed as inner product of a new A-var which has not been used anywhere else in previous computations and an H-var:
y = v>h
Any other output can be produced by another v′ and h′ (possibility the same h or v).
It is assumed that each entry of any A-var : A ∈ Rn×n in the netsor programs computations is drawn from N (0, σ 2 a
n ) and the input G-vars are Gaussian distributed. The collection of a specific entry of all G-vars of in the netsor program converges in probability to a Gaussian vector {[g1]i, . . . , [gk]i} ∼ N (µ,Σ) for all i ∈ [n] as n goes to infinity. Let µ(g) := E [ [g]i ] be the mean of aG-var and Σ(g, g′) := E [ [g]i · [g′]i ] be the covariance between any two G-vars. The general rule for µ(g) is given by the following equations:
µ(g) =  µin(g) if g is input k∑ i=1 aiµ(gi) if g = k∑ i=1 aigi
0 otherwise
(27)
For g and g′, let G = {g1, . . . , gr} be the set of G-vars that has been introduced before g and g′ with distribution N (µG ,ΣG), where ΣG ∈ R|G|×|G| containing the pairwise covariances between the G-vars. Σ(g, g′) is calculated via the following rules:
Σ(g, g′) =  Σin(g, g′) if g and g′ are inputs k∑ i=1 aiΣ(gi, g′) if g = k∑ i=1 aigi k∑ i=1 aiΣ(g, gi) if g′ = k∑ i=1 aigi σ2A E z∼N (µ,ΣG) [ϕ(z)ϕ̄(z)] if g = Ah and g′ = Ah′
0 otherwise
(28)
Where h = ϕ(g1, . . . , gr) and h′ = ϕ̄(g1, . . . , gr) are functions of G-vars in G from possibly different nonlinearities. This set of rules presents a recursive method for calculating the GP kernels in a network where the recursive formula starts from data dependent quantities Σin and µin which are given.
All the above results holds when the nonlinearities are bounded uniformly by e(cx 2−α) for some α > 0 and when their derivatives exist.
Standard vs. NTK initialization. The common practice (which netsor programs uses) is to initialize DNNs weights [A]i,j with N (0, σa√n ) (known as standard initialization) where generally n is the number of units in the previous layer. In this paper we have used a different parameterization scheme as used in (Jacot et al., 2018) and we factor the standard deviation as shown in 3 and initialize weights with standard standard Gaussian. This approach does not change the the forward computation of DNN, but normalizes the backward computation (when computing the gradients) by factor 1n , otherwise RNTK will be scales by n. However this problem can be solved by scaling the step size by 1 n and there is no difference between NTK and standard initialization (Lee et al., 2019).

heading: B.2 PROOF FOR THEOREM 1: SINGLE LAYER CASE
text: We first derive the RNTK in a simpler setting, i.e., a single layer and single output RNN. We then generalize the results to multi-layer and multi-output RNNs. We drop the layer index ` to simplify notation. From 3 and 4, the forward pass for computing the output under NTK initialization for each input x = {xt}Tt=1 is given by:
g(t)(x) = σw√ m Wh(t−1)(x) + σu√ n Uxt + σbb (29)
h(t)(x) = φ ( g(t)(x) ) (30)
fθ(x) = σv√ n v>h(T )(x) (31)
Note that (29), (30) and (31) use all the introduced operators introduced in 24, 25 and 26 given input variables W, {Uxt}Tt=1,b,v and h(0)(x).
First, we compute the kernels of forward pass Σ(t,t ′)(x,x′) and backward pass Π(t,t ′)(x,x′) introduced in (6) and (7) for two input x and x′. Note that based on (27) the mean of all variables is zero since the inputs are all zero mean. In the forward pass for the intermediate layers we have:
Σ(t,t ′)(x,x′) = Σ(g(t)(x), g(t ′)(x′))
= Σ ( σw√ n Wh(t−1)(x) + σu√ m Uxt + σbb, σw√ n Wh(t ′−1)(x′) + σu√ m Ux′t′ + σbb ) = Σ ( σw√ n Wh(t−1)(x), σw√ n Wh(t ′−1)(x′) ) + Σin ( σu√ m Uxt, σu√ m Ux′t′ ) + Σin (σbb, σbb) .
We have used the second and third rule in (28) to expand the formula, We have also used the first and fifth rule to set the cross term to zero, i.e.,
Σ ( σw√ n Wh(t−1)(x), σu√ n Ux′t′ ) = 0
Σ ( σw√ n Wh(t−1)(x), σbb ) = 0
Σ ( σu√ m Uxt, σw√ n Wh(t ′−1)(x′) ) = 0
Σ ( σbb,
σw√ n Wh(t ′−1)(x′)
) = 0
Σin ( σu√ m Uxt, σbb ) = 0
Σin ( σbb,
σu√ m Ux′t′
) = 0.
For the non-zero terms we have
Σin (σbb, σbb) = σ 2 b Σin ( σu√ m Uxt, σu√ m Ux′t′ ) = σ2u m 〈xt,x′t′〉,
which can be achieved by straight forward computation. If t 6= 1 and t′ 6= 1, by using the forth rule in (28) we have
Σ ( σw√ n Wh(t−1)(x), σw√ n Wh(t ′−1)(x′) ) = σ2w E z∼N (0,K(t,t′)(x,x′)) [φ(z1)φ(z2)] = Vφ [ K(t,t ′)(x,x′) ] .
WithK(t,t ′)(x,x′) defined in (16). Otherwise, it will be zero by the fifth rule (if t or t = 1) . Here the set of previously introduced G-vars is G ={ {g(α)(x)},Uxα}t−1α=1, {g(α ′)(x′),Ux′α′} t′−1 α′=1,h (0)(x),h(0)(x′) }
, but the dependency is only on the last layer G-vars, ϕ({g : g ∈ G}) = φ(g(t−1)(x)), ϕ̄(({g : g ∈ G})) = φ(g(t′−1)(x′)), leading the calculation to the operator defined in (10). As a result
Σ(t,t ′)(x,x′) = σ2wVφ [ K(t,t ′)(x,x′) ]
+ σ2u m 〈xt,x′t′〉+ σ2b .
To complete the recursive formula, using the same procedure for the first layers we have
Σ(1,1)(x,x′) = σ2wσ 2 h1(x=x′) + σ2u m 〈x1,x′1〉+ σ2b ,
Σ(1,t ′)(x,x′) = σ2u m 〈x1,x′t′〉+ σ2b ,
Σ(t,1)(x,x′) = σ2u m 〈xt,x′1〉+ σ2b .
The output GP kernel is calculated via K(x,x′) = σ2vVφ [ K(T+1,T ′+1)(x,x′) ] The calculation of the gradient vectors δ(t)(x) = √ n ( ∇g(t)(x)fθ(x) ) in the backward pass is given by
δ(T )(x) = σvv φ′(g(T )(x))
δ(t)(x) = σw√ n
W> ( φ′(g(t)(x)) δ(t+1)(x) ) t ∈ [T − 1]
To calculate the backward pass kernels, we rely on the following Corollary from (Yang, 2020b)
Corollary 1 In infinitely wide neural networks weights used in calculation of back propagation gradients (W>) is an i.i.d copy of weights used in forward propagation (W) as long as the last layer weight (v) is sampled independently from other parameters and has mean 0.
The immediate result of Corollary 1 is that g(t)(x) and δ(t)(x) are two independent Gaussian vector as their covariance is zero based on the fifth rule in (28). Using this result, we have:
Π(t,t ′)(x,x′) = Σ ( δ(t)(x), δ(t ′)(x) )
= E [ [δ(t)(x)]i · [δ(t ′)(x′)]i ] = σ2wE [ [φ′(g(t)(x))]i · [δ(t+1)(x)]i · [φ′(g(t ′)(x′))]i · [δ(t ′+1)(x′)]i
] = σ2w E
z∼N (0,K(t+1,t+1′)(x,x′)) [φ′(z1) · φ′(z2)] · E
[ [δ(t+1)(x)]i · [δ(t ′+1)(x′)]i ] = σ2wVφ′ [ K(t+1,t ′+1)(x,x′) ] Π(t+1,t ′+1)(x,x′).
If T ′ − t′ = T − t, then the the formula will lead to
Π(T,T ′)(x,x′) = E [ [δ(T )(x)]i, [δ (T ′)(x′)]i ] = σ2vE [ [v]i · [φ′(g(T )(x))]i · [v]i · [φ′(g(T ′)(x′))]i
] = E [ [φ′(g(T )(x))]i · [φ′(g(T ′)(x′))]i ] · E [[v]i [v]i]
= σ2vVφ′ [ K(T+1,T+τ+1)(x,x′) ] .
Otherwise it will end to either of two cases for some t′′ < T or T ′ and by the fifth rule in (28) we have:
Σ ( δ(t ′′)(x), δ(T ′)(x) ) = Σ ( σw√ n W> ( φ′(g(t ′′)(x)) δ(t ′′+1)(x′) ) ,v φ′(g(T ′)(x)) ) = 0
Σ ( δ(T )(x), δ(t ′′)(x) ) = Σ ( v φ′(g(T )(x)), σw√
n W>
( φ′(g(t ′′)(x′)) δ(t ′′+1)(x′) )) = 0.
Without loss of generality, from now on assume T ′ < T and T ′ − T = τ , the final formula for computing the backward gradients becomes:
Π(T,T+τ)(x,x′) = σ2vVφ′ [ K(T+1,T+τ+1)(x,x′) ] Π(t,t+τ)(x,x′) = σ2wVφ′ [ K(t+1,t+τ+1)(x,x′) ] Π(t+1,t+1+τ)(x,x′) t ∈ [T − 1]
Π(t,t ′)(x,x′) = 0 t′ − t 6= τ
Now we have derived the single layer RNTK. Recall that θ = Vect [ {W,U,b,v} ] contains all of the network’s learnable parameters. As a result, we have:
∇θfθ(x) = Vect [ {∂fθ(x) ∂W , ∂fθ(x) ∂U , ∂fθ(x) ∂b , ∂fθ(x) ∂v } ] .
As a result 〈∇θfθ(x),∇θfθ(x′)〉 = 〈 ∂fθ(x)
∂W , ∂fθ(x
′)
∂W
〉 + 〈 ∂fθ(x)
∂U , ∂fθ(x
′)
∂U
〉 + 〈 ∂fθ(x)
∂b , ∂fθ(x
′)
∂b 〉 + 〈 ∂fθ(x)
∂v , ∂fθ(x
′)
∂v
〉
Where the gradients of output with respect to weights can be formulated as the following compact form:
∂fθ(x)
∂W = T∑ t=1 ( 1√ n δ(t)(x) ) · ( σw√ n h(t−1)(x) )> ∂fθ(x)
∂U = T∑ t=1 ( 1√ n δ(t)(x) ) · ( σu√ m xt )> ∂fθ(x)
∂b = T∑ t=1 ( σb√ n δ(t)(x) ) ∂fθ(x)
∂v = σv√ n h(T )(x).
As a result we have:〈 ∂fθ(x)
∂W , ∂fθ(x
′)
∂W
〉 = T ′∑ t′=1 T∑ t=1 ( 1 n 〈 δ(t)(x), δ(t ′)(x′) 〉) · ( σ2w n 〈 h(t−1)(x),h(t ′−1)(x′) 〉)
〈 ∂fθ(x)
∂U , ∂fθ(x
′)
∂U
〉 = T ′∑ t′=1 T∑ t=1 ( 1 n 〈 δ(t)(x), δ(t ′)(x′) 〉) · ( σ2u m 〈xt,x′t′〉 ) 〈 ∂fθ(x)
∂b , ∂fθ(x
′)
∂b
〉 = T ′∑ t′=1 T∑ t=1 ( 1 n 〈 δ(t)(x), δ(t ′)(x′) 〉)
· σ2b〈 ∂fθ(x)
∂v , ∂fθ(x
′)
∂v
〉 = ( σ2v n 〈 h(T )(x),h(T ′)(x′) 〉) .
Remember that for any two G-var E [[g]i[g′]i] is independent of index i. Therefore,
1
n
〈 h(t−1)(x),h(t ′−1)(x′) 〉 → Vφ [ K(t,t ′)(x,x′) ]
t > 1
1
n
〈 h(0)(x),h(0)(x′) 〉 → σ2h.
Hence, by summing the above terms in the infinite-width limit we get
〈∇θfθ(x),∇θfθ(x′)〉 →  T ′∑ t′=1 T∑ t=1 Π(t,t ′)(x,x′) · Σ(t,t ′)(x′,x′) +K(x,x′). (32) Since Π(t,t ′)(x,x′) = 0 for t′ − t 6= τ it is simplified to
〈∇θfθ(x),∇θfθ(x′)〉 = ( T∑ t=1 Π(t,t+τ)(x,x′) · Σ(t,t+τ)(x′,x′) ) +K(x,x′).
Multi-dimensional output. For fθ(x) ∈ Rd, the i-th output for i ∈ [d] is obtained via
[fθ(x)]i = σv√ n v>i h (T )(x),
where vi is independent of vj for i 6= j. As a result, for The RNTK Θ(x,x′) ∈ Rd×d for multidimensional output we have
[Θ(x,x′)]i,j = 〈 ∇θ [fθ(x)]i ,∇θ [fθ(x ′)]j 〉 For i = j, the kernel is the same as computed in (32) and we denote it as
〈∇θ [fθ(x)]i ,∇θ [fθ(x ′)]i〉 = Θ (T,T ′)(x,x′).
For i 6= j, since vi is independent of vj , Π(T,T ′)(x,x′) and all the backward pass gradients become zero, so 〈 ∇θ [fθ(x)]i ,∇θ [fθ(x ′)]j 〉 = 0 i 6= j
which gives us the following formula
Θ(x,x′) = Θ(T,T ′)(x,x′)⊗ Id.
This concludes the proof for Theorem 1 for single-layer case.

heading: B.3 PROOF FOR THEOREM 1: MULTI-LAYER CASE
text: Now we drive the RNTK for multi-layer RNTK. We will only study single output case and the generalization to multi-dimensional case is identical as the single layer case. The set of equations for calculation of the output of a L-layer RNN for x = {xt}Tt=1 are
g(`,t)(x) = σ`w√ n W(`)h(`,t−1)(x) + σ`u√ m U(`)xt + σ ` bb (`) ` = 1
g(`,t)(x) = σ`w√ n W(`)h(`,t−1)(x) + σ`u√ n U(`)h(`−1,t)(x) + σ`bb (`) ` > 1
h(`,t)(x) = φ ( g(`,t)(x) ) fθ(x) =
σv√ n v>h(L,T )(x)
The forward pass kernels for the first layer is the same as calculated in B.2. For ` ≥ 2 we have:
Σ(`,t,t ′)(x,x′) = Σ(g(`,t)(x), g(`,t ′)(x′))
= Σ ( σ`w√ n W(`)h(`,t−1)(x), σ`w√ n W(`)h(`,t ′−1)(x′) ) + Σ ( σ`u√ n U(`)h(`−1,t)(x), σ`u√ n U(`)h(`−1,t ′)(x′) ) + Σin ( σ`bb (`), σ`bb (`) )
= (σ`w) 2Vφ
[ K(`,t,t ′)(x,x′) ]
+ (σ`u) 2Vφ
[ K(`−1,t+1,t ′+1)(x,x′) ]
+ (σ`b) 2,
where
K(`,t,t ′)(x,x′) =
[ Σ(`,t−1,t−1)(x,x) Σ(`,t−1,t ′−1)(x,x′)
Σ(`,t−1,t ′−1)(x,x′) Σ(`,t ′−1,t′−1)(x′,x′)
] ,
and Σin is defined in (B.2). For the first first time step we have:
Σ(`,1,1)(x,x′) = (σ`w) 2σ2h1(x=x′) + (σ ` u) 2Vφ [ K(`,2,2)(x,x′) ] + (σ`b) 2 ,
Σ(`,t,1)(x,x′) = (σ`u) 2Vφ
[ K(`,t+1,2)(x,x′) ] + (σ`b) 2 ,
Σ(`,1,t ′)(x,x′) = (σ`u) 2Vφ [ K(`,2,t ′+1)(x,x′) ] + (σ`b) 2 .
And the output layer
K(x,x′) = σ2vVφ [ K(L,T+1,T ′+1)(x,x′) ] .
Note that because of using new weights at each layer we get
Σ(g(`,t)(x), g(` ′,t′))(x)) = 0 ` 6= `′
Now we calculate the backward pass kernels in multi-layer RNTK. The gradients at the last layer is calculated via
δ(L,T )(x) = σvv φ′(g(L,T )(x)). In the last hidden layer for different time steps we have
δ(L,t)(x) = σLw√ n
( W(L) )> ( φ′(g(L,t)(x)) δ(L,t+1)(x) ) t ∈ [T − 1]
In the last time step for different hidden layers we have
δ(`,T )(x) = σ`+1u√ n
( U(`+1) )> ( φ′(g(`,T )(x)) δ(`+1,T )(x) ) ` ∈ [L− 1]
At the end for the other layers we have
δ(`,t)(x) = σ`w√ n
( W(`) )> ( φ′(g(`,t)(x)) δ(`,t+1)(x) ) + σ`+1u√ n ( U(`+1) )> ( φ′(g(`,t)(x)) δ(`+1,t)(x) ) ` ∈ [L− 1], t ∈ [T − 1]
The recursive formula for the Π(L,t,t ′)(x,x′) is the same as the single layer, and it is non-zero for t′ − t = T ′ − T = τ . As a result we have Π(L,T,T+τ)(x,x′) = σ2vVφ′ [ K(L,T+1,T+τ+1) ] (x,x′)
Π(L,t,t+τ)(x,x′) = (σLw) 2Vφ′
[ K(L,t+1,t+τ+1) ] (x,x′) · Π(L,t+1,t+1+τ)(x,x′) t ∈ [T − 1]
Π(L,t,t ′)(x,x′) = 0 t′ − t 6= τ
(33) Similarly by using the same course of arguments used in the single layer setting, for the last time step we have Π(`,T,T+τ)(x,x′) = (σ`+1u ) 2Vφ′ [ K(`,T+1,T+τ+1) ] (x,x′) · Π(`+1,T+1,T+τ+1)(x,x′) ` ∈ [L− 1]
For the other layers we have
Π(`,t,t ′)(x,x′) = (σ`w) 2Vφ′ [ K(`,t+1,t+τ+1) ] (x,x′) · Π(`,t+1,t+1+τ)(x,x′)
+ (σ`+1u ) 2Vφ′
[ K(`,t+1,t+τ+1) ] (x,x′) · Π(`+1,t+1,t ′+1)(x,x′).
For t′ − t 6= τ the recursion continues until it reaches Π(L,T,t′′)(x,x′), t′′ < T ′ or Π(L,t ′′,T ′)(x,x′), t′′ < T and as a result based on (33) we get
Π(`,t,t ′)(x,x′) = 0 t′ − t 6= τ (34)
For t′ − t = τ it leads to Π(L,T,T ′)(x,x′) and has a non-zero value. Now we derive RNTK for multi-layer:
〈∇θfθ(x),∇θfθ(x′)〉 = L∑ `=1 〈 ∂fθ(x) ∂W(`) , ∂fθ(x ′) ∂W(`) 〉 + L∑ `=1 〈 ∂fθ(x) ∂U(`) , ∂fθ(x ′) ∂U(`) 〉
+ L∑ `=1 〈 ∂fθ(x) ∂b(`) , ∂fθ(x ′) ∂b(`) 〉 + 〈 ∂fθ(x) ∂v , ∂fθ(x ′) ∂v 〉 ,
where〈 ∂fθ(x)
∂W(`) , ∂fθ(x
′)
∂W(`)
〉 = T ′∑ t′=1 T∑ t=1 ( 1 n 〈 δ(`,t)(x), δ(`,t ′)(x′) 〉) · ( (σ`w) 2 n 〈 h(`,t−1)(x),h(`,t ′−1)(x′) 〉)
〈 ∂fθ(x)
∂U(`) , ∂fθ(x
′)
∂U(`)
〉 = T ′∑ t′=1 T∑ t=1 ( 1 n 〈 δ(`,t)(x), δ(`,t ′)(x′) 〉) · ( (σ`u) 2 m 〈xt,x′t′〉 ) ` = 1
〈 ∂fθ(x)
∂U(`) , ∂fθ(x
′)
∂U(`)
〉 = T ′∑ t′=1 T∑ t=1 [( 1 n 〈 δ(`,t)(x), δ(`,t ′)(x′) 〉)
· ( (σ`u) 2
n
〈 h(`−1,t)(x),h(`−1,t ′)(x′) 〉)]
` > 1
〈 ∂fθ(x)
∂b(`) , ∂fθ(x
′)
∂b(`)
〉 = T ′∑ t′=1 T∑ t=1 ( 1 n 〈 δ(`,t)(x), δ(`,t ′)(x′) 〉)
· (σ`b)2〈 ∂fθ(x)
∂v , ∂fθ(x
′)
∂v
〉 = ( σ2v n 〈 h(T )(x),h(T ′)(x′) 〉)
Summing up all the terms and replacing the inner product of vectors with their expectations we get
〈∇θfθ(x),∇θfθ(x′)〉 = Θ(L,T,T ′) =  L∑ `=1 T∑ t=1 T ′∑ t′=1 Π(`,t,t ′)(x,x′) · Σ(`,t,t ′)(x,x′) +K(x,x′). By (34), we can simplify to
Θ(L,T,T ′) = ( L∑ `=1 T∑ t=1 Π(`,t,t ′)(x,x′) · Σ(`,t,t+τ)(x,x′) ) +K(x,x′).
For multi-dimensional output it becomes
Θ(x,x′) = Θ(L,T,T ′)(x,x′)⊗ Id.
This concludes the proof for Theorem 1 for the multi-layer case.

heading: B.4 PROOF FOR THEOREM 3: WEIGHT-UNTIED RNTK
text: The architecture of a weight-untied single layer RNN is
g(t)(x) = σw√ m W(t)h(t−1)(x) + σu√ n U(t)xt + σbb (t)
h(t)(x) = φ ( g(t)(x) ) fθ(x) =
σv√ n v>h(T )(x)
Where we use new weights at each time step and we index it by time. Like previous sections, we first derive the forward pass kernels for two same length data x = {xt}Tt=1,x = {x′t′}Tt′=1
Σ(t,t)(x,x′) = σ2wVφ [ K(t,t)(x,x′) ] + σ2u m 〈xt,x′t〉+ σ2b .
Σ(t,t ′)(x,x′) = 0 t 6= t′
Since we are using same weight at the same time step, Σ(t,t)(x,x′) can be written as a function of the previous kernel, which is exactly as the weight-tied RNN. However for different length, it becomes zero as a consequence of using different weights, unlike weight-tied which has non-zero value. The kernel of the first time step and output is also the same as weight-tied RNN. For the gradients we have:
δ(T )(x) = σvv φ′(g(T )(x))
δ(t)(x) = σw√ n
(W(t+1))> ( φ′(g(t)(x)) δ(t+1)(x) ) t ∈ [T − 1]
For t′ = t we have: Π(t,t)(x,x′) = σ2wVφ′ [ K(t+1,t+1)(x,x′) ] Π(t+1,t+1)(x,x′)
Π(t,t)(x,x′) = σ2vVφ′ [ K(T+1,T+τ+1)(x,x′) ] .
Due to using different weights for t 6= t′, we can immediately conclude that Π(t,t′)(x,x′) = 0. This set of calculation is exactly the same as the weight-tied case when τ = T − T = 0. Finally, with θ = Vect [ {{W(t),U(t),b(t)}Tt=1,v} ] we have
〈∇θfθ(x),∇θfθ(x′)〉 = T∑ t=1 〈 ∂fθ(x) ∂W(t) , ∂fθ(x ′) ∂W(t) 〉 + T∑ t=1 〈 ∂fθ(x) ∂U(t) , ∂fθ(x ′) ∂U(t) 〉
+ T∑ t=1 〈 ∂fθ(x) ∂b(t) , ∂fθ(x ′) ∂b(t) 〉 + 〈 ∂fθ(x) ∂v , ∂fθ(x ′) ∂v , 〉
with 〈 ∂fθ(x)
∂W(t) , ∂fθ(x
′)
∂W(t)
〉 = ( 1
n
〈 δ(t)(x), δ(t)(x′) 〉) · ( σ2w n 〈 h(t−1)(x),h(t−1)(x′) 〉) 〈 ∂fθ(x)
∂U(t) , ∂fθ(x
′)
∂U(t)
〉 = ( 1
n
〈 δ(t)(x), δ(t)(x′) 〉) · ( σ2u m 〈xt,x′t〉 ) 〈 ∂fθ(x)
∂b(t) , ∂fθ(x
′)
∂b(t)
〉 = ( 1
n
〈 δ(t)(x), δ(t)(x′) 〉) · σ2b〈
∂fθ(x) ∂v , ∂fθ(x
′)
∂v
〉 = ( σ2v n 〈 h(T )(x),h(T ′)(x′) 〉) .
As a result we obtain
〈∇θfθ(x),∇θfθ(x′)〉 = ( T∑ t=1 Π(t,t)(x,x′) · Σ(t,t)(x′,x′) ) +K(x,x′),
same as the weight-tied RNN when τ = 0. This concludes the proof for Theorem 3.
B.5 ANALYTICAL FORMULA FOR Vφ[K] For any positive definite matrixK = [ K1 K3 K3 K2 ] we have:
• φ = ReLU (Cho & Saul, 2009)
Vφ[K] = 1
2π
( c(π − arccos(c)) + √ 1− c2) )√ K1K2,
Vφ′ [K] = 1
2π (π − arccos(c)).
where c = K3/ √ K1K2
• φ = erf (Neal, 1995)
Vφ[K] = 2
π arcsin
( 2K3√
(1 + 2K1)(1 + 2K3)
) ,
Vφ′ [K] = 4 π √ (1 + 2K1)(1 + 2K2)− 4K23 .

heading: C PROOF FOR THEOREM 2: RNTK CONVERGENCE AFTER TRAINING
text: To prove theorem 2, we use the strategy used in (Lee et al., 2019) which relies on the the local lipschitzness of the network Jacobian J(θ,X ) = ∇θfθ(x) ∈ R|X |d×|θ| at initialization.
Definition 1 The Jacobian of a neural network is local lipschitz at NTK initialization (θ0 ∼ N (0, 1)) if there is constant K > 0 for every C such that{
‖J(θ,X )‖F < K ‖J(θ,X )− J(θ̃,X )‖F < K‖θ − θ̃‖ , ∀ θ, θ̃ ∈ B(θ0, R)
where B(θ,R) := {θ : ‖θ0 − θ‖ < R}.
Theorem 4 Assume that the network Jacobian is local lipschitz with high probability and the empirical NTK of the network converges in probability at initialization and it is positive definite over the input set. For > 0, there exists N such that for n > N when applying gradient flow with η < 2 (λmin(Θ(X ,X )) + λmax(Θ(X ,X ))−1 with probability at least (1− ) we have:
sup s ‖θs − θ0‖2√ n , sup s ‖Θ̂s(X ,X )− Θ̂0(X ,X )‖ = O ( 1√ n ) .
Proof: See (Lee et al., 2019)
Theorem 4 holds for any network architecture and any cost function and it was used in (Lee et al., 2019) to show the stability of NTK for MLP during training.
Here we extend the results for RNTK by proving that the Jacobian of a multi-layer RNN under NTK initialization is local lipschitz with high probability.
To prove it, first, we prove that for any two points θ, θ̃ ∈ B(θ0, R) there exists constant K1 such that
‖g(`,t)(x)‖2, ‖δ(`,t)(x)‖2 ≤ K1 √ n (35)
‖g(`,t)(x)− g̃(`,t)(x)‖2, ‖δ(`,t)(x)− δ̃(`,t)(x)‖2 ≤ ‖θ̄ − θ̃‖ ≤ K1 √ n‖θ − θ̃‖. (36)
To prove (35) and (36) we use the following lemmas.3
Lemma 1 Let A ∈ Rn×m be a random matrix whose entries are independent standard normal random variables. Then for every t ≥ 0, with probability at least 1− e(−ct2) for some constant c we have:
‖A‖2 ≤ √ m+ √ n+ t.
Lemma 2 Let a ∈ Rn be a random vector whose entries are independent standard normal random variables. Then for every t ≥ 0, with probability at least 1− e(−ct2) for some constant c we have:
‖a‖2 ≤ √ n+ √ t.
Setting t = √ n for any θ ∈ R(θ0, R). With high probability, we get:
‖W(`)‖2, ‖U(`)‖2 ≤ 3 √ n, ‖b`‖2 ≤ 2 √ n, ‖h(`,0)(x)‖2 ≤ 2σh √ n.
We also assume that there exists some finite constant C such that
|φ(x)| < C|x|, |φ(x)− φ(x′)| < C|x− x′|, |φ′(x)| < C, , |φ′(x)− φ′(x′)| < C|x− x′|.
The proof is obtained by induction. From now on assume that all inequalities in (35) and (36) holds with some k for the previous layers. We have
‖g(`,t)(x)‖2 = ‖ σ`w√ n W(`)h(`,t−1)(x) + σ`u√ n U(`) h(`−1,t)(x) + σ`bb (`)‖2
≤ σ ` w√ n ‖W(`)‖2‖φ
( g(`,t−1)(x) ) ‖2 +
σ`u√ n ‖U(`)‖2‖φ
( g(`−1,t)(x) ) ‖2 + σ`b‖b(`)‖2
≤ ( 3σ`wCk + 3σ ` uCk + 2σb )√ n.
And the proof for (35) and (36) is completed by showing that the first layer is bounded
‖g(1,1)(x)‖2 = ‖ σ1w√ n W(`)h(1,0)(x) + σ1u√ m U(`) x1 + σ 1 bb (1)‖2
≤ (3σ1wσh + 3σu√ m ‖x1‖2 + 2σb) √ n.
For the gradient of first layer we have
‖δ(L,T )(x)‖2 = ‖σvv φ′(g(L,T )(x))‖2 ≤ σv‖v‖2‖φ′(g(L,T )(x))‖∞ = 2σvC √ n.
And similarly we have
‖δ(`,t)(x)‖ ≤ (3σwCk′ + 3σuCk′) √ n.
3See math.uci.edu/~rvershyn/papers/HDP-book/HDP-book.pdf for proofs
For θ, θ̃ ∈ B(θ0, R) we have
‖g(1,1)(x)− g̃(1,1)(x)‖2 = ‖ σ1w√ n (W(1) − W̃(1))h(1,0)(x) + σ 1 u√ m (U(1) − Ũ(1))h(1,0)(x)‖2
≤ (
3σ1wσh + 3σ1u m ‖x1‖2
) ‖θ − θ̃‖2 √ n.
‖g(`,t)(x)− g̃(`,t)(x)‖2 ≤ ‖φ(g(`,t−1)(x))‖2‖ σ`w√ n (W(`) − W̃(`))‖2
+ ‖ σ ` w√ n W̃(`)‖2‖φ(g(`,t−1)(x))− φ(g̃(`,t−1)(x))‖2
+ ‖φ(g(`−1,t)(x))‖2‖ σ`u√ n (U(`) − Ũ(`))‖2
+ ‖ σ ` u√ n Ũ(`)‖2‖φ(g(`−1,t)(x))− φ(g̃(`−1,t)(x))‖2 + σb‖b(`) − b̃(`)‖ ≤ (kσ`w + 3σ`wCk + kσ`u + 3σ`uCk + σb)‖θ − θ̃‖2 √ n.
For gradients we have
‖δ(L,T )(x)− δ̃(L,T )(x)‖2 ≤ σv‖φ′(g(L,T ))‖∞‖(v − ṽ)‖2 + σv‖v‖2‖φ′(g(L,T )(x))− φ′(g(L,T )(x))‖2 ≤ (σvC + 2σvCk)‖θ − θ̃‖2 √ n.
And similarly using same techniques we have
‖δ(`,t)(x)− δ̃(`,t)(x)‖2 ≤ (σwC + 3σwCk + σuC + 3σuCk)‖θ − θ̃‖2 √ n.
As a result, there exists K1 that is a function of σw, σu, σb, L, T and the norm of the inputs.
Now we prove the local Lipchitzness of the Jacobian
‖J(θ,x)‖F ≤ L∑ `=2 T∑ t=1 ( 1 n ∥∥∥∥δ(`,t)(x)(σ`wh(`,t−1)(x))>∥∥∥∥ F
+ 1
n ∥∥∥∥δ(`,t)(x)(σ`uh(`,t−1)(x))>∥∥∥∥ F + 1√ n ∥∥∥δ(`,t)(x) · σ`b∥∥∥ F ) +
T∑ t=1 ( 1 n ∥∥∥∥δ(1,t)(x)(σ1wh(1,t−1)(x))>∥∥∥∥ F
+ 1√ nm ∥∥∥δ(1,t−1)(x) (σ1uxt)>∥∥∥ F + 1√ n ∥∥∥δ(1,t)(x) · σ1b∥∥∥ F ) + σv√ n ‖h(L,T )(x)‖F
≤ ( L∑ `=2 T∑ t=1 (K21Cσ ` w +K 2 1Cσ ` u + σ ` bK1)
+ T∑ t=1 (K21Cσ 1 w + K1σ 1 u√ m ‖xt‖2 + σ1bK1) + σvCK1 ) .
And for θ, θ̃ ∈ B(θ0, R) we have ‖J(θ,x)− J̃(θ,x)‖F ≤ L∑ `=2 T∑ t=1 ( 1 n ∥∥∥∥δ(`,t)(x)(σ`wh(`,t−1)(x))> − δ̃(`,t)(x)(σ`wh̃(`,t−1)(x))>∥∥∥∥ F
+ 1
n ∥∥∥∥δ(`,t)(x)(σ`uh(`,t−1)(x))> − δ̃(`,t)(x)(σ`uh̃(`,t−1)(x))>∥∥∥∥ F
+ 1√ n ∥∥∥δ(`,t)(x) · σ`b − δ̃(`,t)(x) · σ`b∥∥∥ F
+ T∑ t=1 ( 1 n ∥∥∥∥δ(1,t)(x)(σ1wh(1,t−1)(x))> − δ̃(1,t)(x)(σ1w ˜h(1,t−1)(x))>∥∥∥∥ F
+ 1√ nm ∥∥∥δ(1,t−1)(x) (σ1uxt)> − δ̃(1,t−1)(x) (σ1uxt)>∥∥∥ F
+ 1√ n ∥∥∥δ(`,t)(x) · σ`b − δ̃(`,t)(x) · σ`b∥∥∥)+ σv√n‖h(L,T )(x)− ˜h(L,T )(x)‖F ≤ ( L∑ `=2 T∑ t=1 (4K21Cσ ` w + 4K 2 1Cσ ` u + σ ` bK1)
+ T∑ t=1 (4K21Cσ 1 w + K1σ 1 u√ m ‖xt‖2 + σ1bK1) + σvCK1 ) ‖θ − θ̃‖2.
The above proof can be generalized to the entire dataset by a straightforward application of the union bound. This concludes the proof for Theorem 2.

Review summaries:
This paper extends NTK to RNN to explain behavior of RNNs in overparametrized case. It’s a good extension study and interesting to see RNN with infinite-width limit converges to a kernel. The paper proves the same RNTK formula when the weights are shared and not shared. The proposed sensitivity for computationally friendly RNTK hyperparameter tuning is also insightful.