SlowGuess/NeurIPS_2023_OCR huggingface dataset:
Zacharia Issa*1
Blanka Horvath2,3,4
Maud Lemercier2,4
Christopher Salvi4,5
Neural SDEs are continuous-time generative models for sequential data. State-of-the-art performance for irregular time series generation has been previously obtained by training these models adversarially as GANs. However, as typical for GAN architectures, training is notoriously unstable, often suffers from mode collapse, and requires specialised techniques such as weight clipping and gradient penalty to mitigate these issues. In this paper, we introduce a novel class of scoring rules on pathspace based on signature kernels and use them as objective for training Neural SDEs non-adversarially. By showing strict properness of such kernel scores and consistency of the corresponding estimators, we provide existence and uniqueness guarantees for the minimiser. With this formulation, evaluating the generator-discriminator pair amounts to solving a system of linear path-dependent PDEs which allows for memory-efficient adjoint-based backpropagation. Moreover, because the proposed kernel scores are well-defined for paths with values in infinite dimensional spaces of functions, our framework can be easily extended to generate spatiotemporal data. Our procedure permits conditioning on a rich variety of market conditions and significantly outperforms alternative ways of training Neural SDEs on a variety of tasks including the simulation of rough volatility models, the conditional probabilistic forecasts of real-world forex pairs where the conditioning variable is an observed past trajectory, and the mesh-free generation of limit order book dynamics.
Stochastic differential equations (SDEs) are a dominant modelling framework in many areas of science and engineering. They naturally extend ordinary differential equations (ODEs) for modelling dynamical systems that evolve under the influence of randomness.
A neural stochastic differential equation (Neural SDE) is a continuous-time generative model for irregular time series where the drift and diffusion functions of an SDE are parametrised by neural networks [TR19, JB19, HvdHRM20, LWCD20, KFL $^{+}$ 21, MSKF21]. These models have become increasingly popular among financial practitioners for pricing and hedging of derivatives and overall risk management [ASS20, GSVS $^{+}$ 20, CJB23, HFH $^{+}$ 23]. Training a Neural SDE amounts to minimising over model parameters an appropriate notion of distance between the law on pathspace generated by the SDE and the empirical law supported on observed data sample paths.
*Corresponding author: zacharia.issa@kcl.ac.uk
$^{1}$ Department of Mathematics, King's College London, London, United Kingdom.
$^{2}$ Department of Mathematics, Oxford University, Oxford, United Kingdom.
<sup>3</sup>The Oxford Man Institute, Oxford, United Kingdom.
4The Alan Turing Institute, London, United Kingdom.
$^{5}$ Department of Mathematics, Imperial College London, London, United Kingdom.
Various choices of training mechanisms have been proposed in the literature; state-of-the-art performance has been achieved by training Neural SDEs adversarially as Wasserstein-GANs [KFL+21]. However, as typical for GAN architectures, training is notoriously unstable, often suffers from mode collapse, and requires specialised techniques such as weight clipping and gradient penalty.
In this paper we introduce a novel class of scoring rules based on signature kernels, a class of characteristic kernels on paths  $\mathrm{[LSD^{+}21}$ $\mathrm{CFC^{+}21}$ $\mathrm{SLL^{+}21}$ $\mathrm{LSC^{+}21}$  CLS23,  $\mathrm{HLL^{+}23]}$ , and use them as objective for training Neural SDEs non-adversarily. We provide existence and uniqueness guarantees for the minimiser by showing strict properness of the signature kernel scores and consistency of the corresponding estimators.
With this training formulation, the generator-discriminator pair becomes entirely mesh-free and can be evaluated by solving a system of linear path-dependent PDEs which allows for memory-efficient adjoint-based backpropagation. In addition, because the proposed kernel scores are well-defined for classes of paths with values in infinite dimensional spaces of functions, our framework can be easily extended to the generation of spatiotemporal signals.
We demonstrate how our procedure is more stable and outperforms alternative ways of training Neural SDEs on a variety of tasks from quantitative finance including the simulation of rough volatility models, the conditional probabilistic forecasts of real-world forex pairs where the conditioning variable is an observed past trajectory, and the mesh-free generation of limit order book dynamics.
Prior to our work, two main approaches have been proposed to fit a Neural SDE as a time series generative model, differing in their choice of divergence to compare laws on pathspace.
The SDE-GAN model introduced in  $\mathrm{[KFL^{+}21]}$  uses the 1-Wasserstein distance to train a Neural SDE as a Wasserstein-GAN [ACB17]. Namely, the "witness functions" of the 1-Wasserstein distance are parameterised by neural controlled differential equations [KMFL20,  $\mathrm{MSK^{+}20}$ ] and the generator-discriminator pair is trained adversarially. SDE-GANs are relatively unstable to train mainly because they require a Lipschitz discriminator. Several techniques such as weight clipping and gradient penalty have been introduced to enforce the Lipschitz constraint and partially mitigate the instability issue [Kid22]. SDE-GANs are also sensitive to other hyperparameters, such as the choice of optimisers, their learning rate and momentum, where small changes can yield erratic behavior.
The latent SDE model [LWCD20] trains a Neural SDE with respect to the KL divergence using the principles of variational inference for SDEs [Opp19]. This approach consists in maximising an objective that includes the KL divergence between the laws produced by the original SDE (the prior) and an auxiliary SDE (the approximate posterior). The two SDEs have the same diffusion term but different initial conditions and drifts, and a standard formula for their KL divergence exists. After training, the learned prior can be used to generate new sample paths. Latent SDEs can be interpreted as variational autoencoders, and generally yield worse performance than SDE-GANs, which are more challenging to train, but offer greater model capacity.
Besides Neural SDEs, other time series generative models have been proposed, including discrete-time models such as [YJVdS19] and  $\left[\mathrm{NSW}^{+}20\right]^{2}$  which are trained adversarially, continuous-time flow processes  $\left[\mathrm{DCB}^{+}20\right]$  and score-based diffusion models for audio generation  $\left[\mathrm{CZZ}^{+}20,\mathrm{KPH}^{+}20\right]$ .
The class of score-based generative models (SGMs) seeks to map a data distribution into a known prior distribution via an SDE  $\left[\mathrm{SSDK}^{+}20, \mathrm{VKK21}\right]$ . During training, the (Stein) score [LLJ16] of the SDE marginals is estimated and then used to construct a reverse-time SDE. By sampling data from the prior and solving the reverse-time SDE, one can generate samples that follow the original data distribution. We note that our techniques for generative modelling via scoring rules, although similar in terminology, are fundamentally different, as we train Neural SDEs with respect to a loss function that directly consumes the law on pathspace generated by the SDE.
Scoring rules [GR07] have been used to define training objectives for generative networks [BMN16, GSvdB  $^{+}20$ ] which have been shown to be easier to optimize compared to GANs [PADD21, PD22]. Closer to our work is [PADD21] which constructs statistical scores for discrete (spatio-)temporal
$^{2}$ In  $\left[\mathrm{NSW}^{+}20\right]$  the discriminator is formulated in continuous-time based on a different parametrisation to approximate the 1-Wasserstein distance, also later used in  $\left[\mathrm{NSSV}^{+}21\right]$ .
signals. However, their strict properness is ensured under Markov-type assumptions and their continuous-(space-)time limit has not been studied. A key aspect of our work is to develop consistent and effective scoring rules for generative modelling in the continuous-time setting. While [BO21] has also introduced scoring rules for continuous-time processes, our emphasis lies in constructing so-called kernel scores specifically for training Neural SDE and Neural SPDE generative models.
The Neural SPDE model introduced in [SLG22] parametrises the solution operator of stochastic partial differential equations (SPDEs), which extend SDEs for modelling signals that vary both in space and in time. So far, Neural SPDEs have been trained in a supervised fashion by minimizing the pathwise  $L^2$  norm between pairs of spatiotemporal signals. While this approach has proven effective in learning fast surrogate SPDE solvers, it is not well-suited for generative modeling where the goal is to approximate probability measures supported on spatiotemporal functions. In this work, we propose a new training objective for Neural SPDEs to improve their generative modeling capabilities.
3 Training Neural SDEs with signature kernel scores
We take  $(\Omega, \mathcal{F}, \mathbb{P})$  as the underlying probability space. Let  $T > 0$  and  $d_x \in \mathbb{N}$ . Denote by  $\mathcal{X}$  be the space of continuous paths of bounded variation from  $[0, T]$  to  $\mathbb{R}^{d_x}$  with one monotone coordinate<sup>3</sup>. For any random variable  $X$  with values on  $\mathcal{X}$ , we denote by  $\mathbb{P}_X := \mathbb{P} \circ X^{-1}$  its law.
The signature map  $S: \mathcal{X} \to \mathcal{T}$  is defined for any path  $x \in \mathcal{X}$  as the infinite collection  $S(x) = (1, S^1(x), S^2(x), \ldots)$  of iterated Riemann-Stieltjes integrals
$$
S ^ {k} (x) := \int_ {0 <   t _ {1} <   \ldots <   t _ {k} <   T} d x _ {t _ {1}} \otimes d x _ {t _ {2}} \otimes \ldots \otimes d x _ {t _ {k}}, \quad k \in \mathbb {N},
$$
where  $\otimes$  is the standard tensor product of vector spaces and  $\mathcal{T} \coloneqq \mathbb{R} \oplus \mathbb{R}^{d_x} \oplus (\mathbb{R}^{d_x})^{\otimes 2} \oplus \ldots$
Any inner product  $\langle \cdot, \cdot \rangle_1$  on  $\mathbb{R}^{d_x}$  yields a canonical Hilbert-Schmidt inner product  $\langle \cdot, \cdot \rangle_k$  on  $(\mathbb{R}^{d_x})^{\otimes k}$  for any  $k \in \mathbb{N}$ , which in turn yields, by linearity, a family of inner products  $\langle \cdot, \cdot \rangle_{\mathcal{T}}$  on  $\mathcal{T}$ . We refer the reader to [CLX21] for an in-depth analysis of different choices. By a slight abuse of notation, we use the same symbol to denote the Hilbert space obtained by completing  $\mathcal{T}$  with respect to  $\langle \cdot, \cdot \rangle_{\mathcal{T}}$ .
3.2 Neural SDEs
Let  $W:[0,T]\to \mathbb{R}^{d_w}$  be a  $d_w$ -dimensional Brownian motion and  $a\sim \mathcal{N}(0,I_{d_a})$  be sampled from  $d_a$ -dimensional standard normal. The values  $d_w, d_a\in \mathbb{N}$  are hyperparameters describing the size of the noise. A Neural SDE is a model of the form
$$
Y _ {0} = \xi_ {\theta} (a), \quad d Y _ {t} = \mu_ {\theta} (t, Y _ {t}) d t + \sigma_ {\theta} (t, Y _ {t}) \circ d W _ {t}, \quad X _ {t} ^ {\theta} = A _ {\theta} Y _ {t} + b _ {\theta} \tag {1}
$$
for  $t\in [0,T]$ , with  $Y:[0,T]\to \mathbb{R}^{d_y}$  the strong solution, if it exists, to the Stratonovich SDE, where
$$
\xi_ {\theta}: \mathbb {R} ^ {d _ {a}} \rightarrow \mathbb {R} ^ {d _ {y}}, \quad \mu_ {\theta}: [ 0, T ] \times \mathbb {R} ^ {d _ {y}} \rightarrow \mathbb {R} ^ {d _ {y}}, \quad \sigma_ {\theta}: [ 0, T ] \times \mathbb {R} ^ {d _ {y}} \rightarrow \mathbb {R} ^ {d _ {y} \times d _ {w}}
$$
are suitably regular neural networks, and  $A_{\theta} \in \mathbb{R}^{d_x \times d_y}$ ,  $b_{\theta} \in \mathbb{R}^{d_x}$ . The dimension  $d_y \in \mathbb{N}$  is a hyperparameter describing the size of the hidden state. If  $\mu_{\theta}, \sigma_{\theta}$  are Lipschitz and  $\mathbb{E}_a[\xi_\theta(a)^2] < \infty$  then the solution  $Y$  exists and is unique.
Given a target  $\mathcal{X}$ -valued random variable  $X^{\mathrm{true}}$  with law  $\mathbb{P}_{X^{\mathrm{true}}}$ , the goal is to train a Neural SDE so that the generated law  $\mathbb{P}_{X^{\theta}}$  is as close as possible to  $\mathbb{P}_{X^{\mathrm{true}}}$ , for some appropriate notion of closeness.
3.3 Signature kernels scores
Scoring rules are a well-established class of functionals to represent the penalty assigned to a distribution given an observed outcome, thereby providing a way to assess the quality of a probabilistic forecast. Scoring rules have been applied to a wide range of areas including econometrics [MS13],
3This is a technical assumption needed to ensure characteristicness of the signature kernel. See Proposition (3.1). The monotone coordinate is usually taken to be time.
weather forecasting [GR05], and generative modelling [PADD21]. How to effectively select a scoring rule is a challenging and somewhat task-dependent problem, particularly when the data is sequential. Scoring rules based on kernels offer the advantages of working on unstructured and infinite dimensional data without some of the concomitant drawbacks, such as the absence of densities. Next, we introduce a class of scoring rules on paths based on signature kernels to measure closeness between path-valued random variables. These will be used in the next section to train Neural SDEs.
The signature kernel  $k_{\mathrm{sig}}: \mathcal{X} \times \mathcal{X} \to \mathbb{R}$  is a symmetric positive semidefinite function defined for any pair of paths  $x, y \in \mathcal{X}$  as  $k_{\mathrm{sig}}(x,y) \coloneqq \langle S(x), S(y) \rangle_{\mathcal{T}}$ . In [SCF+21] the authors provided a kernel trick proving that the signature kernel satisfies
$$
k _ {\mathrm {s i g}} (x, y) = f (T, T) \quad \text {w h e r e} \quad f (s, t) = 1 + \int_ {0} ^ {s} \int_ {0} ^ {t} f (u, v) \langle d x _ {u}, d y _ {v} \rangle_ {1}, \tag {2}
$$
which reduces to a linear hyperbolic PDE in the when the paths  $x, y$  are almost-everywhere differentiable. Several finite difference schemes are available for numerically evaluating solutions to Equation (2), see  $\left[\mathrm{SCF}^{+}21\right.$  Section 3.1] for details.
We denote by  $\mathcal{H}$  the unique reproducing kernel Hilbert space (RKHS) of  $k_{\mathrm{sig}}$ . From now on we endow  $\mathcal{X}$  with a topology with the respect to which the signature is continuous; see [CT22] for various choices of such topologies. Denote by  $\mathcal{P}(\mathcal{X})$  the set of Borel probability measures on  $\mathcal{X}$ .
Proposition 3.1. The signature kernel is characteristic for every compact set  $\mathcal{K} \subset \mathcal{X}$ , i.e. the map  $\mathbb{P} \mapsto \int k_{sig}(x, \cdot) \mathbb{P}(dx)$  from  $\mathcal{P}(\mathcal{K})$  to  $\mathcal{H}$  is injective.
Remark 3.2. The proof of this statement is classical and is a simple consequence of the universal approximation property of the signature  $\left[\mathrm{KBPA}^{+}19\right.$ , Proposition A.6] and the equivalence between universality of the feature map and characteristicness of the corresponding kernel [SGS18, Theorem 6]. In particular, Proposition (3.1) implies that the signature kernel is cc-universal, i.e. for every compact subset  $\mathcal{K}\subset \mathcal{X}$ , the linear span of the set of path functionals  $\{k_{\mathrm{sig}}(x,\cdot):x\in \mathcal{K}\}$  is dense in  $C(\mathcal{K})$  in the topology of uniform convergence.
We define the signature kernel score  $\phi_{\mathrm{sig}}: \mathcal{P}(\mathcal{X}) \times \mathcal{X} \to \mathbb{R}$  for any  $\mathbb{P} \in \mathcal{P}(\mathcal{X})$  and  $y \in \mathcal{X}$  as
$$
\phi_ {\operatorname {s i g}} (\mathbb {P}, y) := \mathbb {E} _ {x, x ^ {\prime} \sim \mathbb {P}} \left[ k _ {\operatorname {s i g}} \left(x, x ^ {\prime}\right) \right] - 2 \mathbb {E} _ {x \sim \mathbb {P}} \left[ k _ {\operatorname {s i g}} (x, y) \right].
$$
A highly desirable property to require from a score is its strict properness, consisting in assigning the lowest expected score when the proposed prediction is realised by the true probability distribution.
Proposition 3.3. For any compact  $\mathcal{K} \subset \mathcal{X}$ ,  $\phi_{sig}$  is a strictly proper kernel score relative to  $\mathcal{P}(\mathcal{K})$ , i.e.  $\mathbb{E}_{y \sim \mathbb{Q}}[\phi_{sig}(\mathbb{Q}, y)] \leq \mathbb{E}_{y \sim \mathbb{Q}}[\phi_{sig}(\mathbb{P}, y)]$  for all  $\mathbb{P}, \mathbb{Q} \in \mathcal{P}(\mathcal{K})$ , with equality if and only if  $\mathbb{P} = \mathbb{Q}$ .
The proof of this statement can be found in the appendix and follows from [GR07, Theorem 4] and Proposition 3.1. We note that the signature kernel score induces a divergence on  $\mathcal{P}(\mathcal{X})$  known as the signature kernel maximum mean discrepancy (MMD), defined for any  $\mathbb{P}$ ,  $\mathbb{Q} \in \mathcal{P}(\mathcal{X})$  as
$$
\mathcal {D} _ {k _ {\mathrm {s i g}}} (\mathbb {P}, \mathbb {Q}) ^ {2} = \mathbb {E} _ {y \sim \mathbb {Q}} [ \phi_ {\mathrm {s i g}} (\mathbb {P}, y) ] + \mathbb {E} _ {y, y ^ {\prime} \sim \mathbb {Q}} [ k _ {\mathrm {s i g}} (y, y ^ {\prime}) ]. \tag {3}
$$
The following result provides a consistent and unbiased estimator for evaluating the signature kernel score from observed sample paths. The proof can be found in the appendix and follows from standard results for the associated MMD [GBR $^{+}$  12, Lemma 6].
Proposition 3.4. Let  $\mathbb{P} \in \mathcal{P}(\mathcal{X})$  and  $y \in \mathcal{X}$ . Given  $m$  sample paths  $\{x^i\}_{i=1}^m \sim \mathbb{P}$ , the following is a consistent and unbiased estimator of  $\phi_{sig}$
$$
\widehat {\phi} _ {\mathrm {s i g}} (\mathbb {P}, y) = \frac {1}{m (m - 1)} \sum_ {j \neq i} k _ {\mathrm {s i g}} \left(x ^ {i}, x ^ {j}\right) - \frac {2}{m} \sum_ {i} k _ {\mathrm {s i g}} \left(x ^ {i}, y\right). \tag {4}
$$
3.4 Non-adversarial training of Neural SDEs via signature kernel scores
We now have all the elements to outline the procedure we propose to train the Neural SDE model (1) non-adversarially using signature kernel scores introduced in the previous section.
Unconditional setting We are given a target  $\mathcal{X}$ -valued random variable  $X^{\mathrm{true}}$  with law  $\mathbb{P}_{X^{\mathrm{true}}}$ . Recall the notation  $\mathbb{P}_{X^{\theta}}$  for the law generated by the SDE (1). The training objective is given by
$$
\min  _ {\theta} \mathcal {L} (\theta) \quad \text {w h e r e} \quad \mathcal {L} (\theta) = \mathbb {E} _ {y \sim \mathbb {P} _ {X ^ {\text {t r u e}}}} \left[ \phi_ {\text {s i g}} \left(\mathbb {P} _ {X ^ {\theta}}, y\right) \right]. \tag {5}
$$
Note that training with respect to  $\mathcal{D}_{k_{\mathrm{sig}}}$  is an equivalent optimisation as the second expectation in equation (3) is constant with respect to  $\theta$ . This means that in the unconditional setting our model corresponds to a continuous time generative network of [LSZ15].
Combining equations (1), (2), (4) and (5) the generator-discriminator pair can be evaluated by solving a system of linear PDEs depending on sample paths from the Neural SDE; in summary:
$$
\text {G e n e r a t o r :} X ^ {\theta} \sim \operatorname {S D E S o l v e} (\theta) \quad \text {D i s c r i m i n a t o r :} \mathcal {L} (\theta) \approx \operatorname {P D E S o l v e} \left(X ^ {\theta}, X ^ {\text {t r u e}}\right). \tag {6}
$$
Remark 3.5. The generation of sample paths from  $X^{\theta}$  from the SDE solver and the evaluation of the objective  $\mathcal{L}$  via the PDE solver can in principle be performed concurrently, although, in our implementation we evaluate the full model (6) in a sequential manner.
Conditional setting It is straightforward to extend our framework to the conditional setting where  $\mathbb{Q}$  is some distribution we wish to condition on, and  $\mathbb{P}_{X^{\mathrm{true}}}(\cdot |x)$  is a target conditional distribution with  $x\sim \mathbb{Q}$ . By feeding the observed sample  $x$  as an additional variable to all neural networks of the Neural SDE (1), the generated strong solution provides a parametric conditional law  $\mathbb{P}_{X^{\theta}}(\cdot |x)$ , and the model can be trained according to the modified objective
$$
\min  _ {\theta} \mathcal {L} ^ {\prime} (\theta) \quad \text {w h e r e} \quad \mathcal {L} ^ {\prime} (\theta) = \min  _ {\theta} \mathbb {E} _ {x \sim \mathbb {Q}} \mathbb {E} _ {y \sim \mathbb {P} _ {X ^ {\text {t r u e}}} (\cdot | x)} [ \phi_ {\text {s i g}} (\mathbb {P} _ {X ^ {\theta}} (\cdot | x), y) ]. \tag {7}
$$
Because  $\phi_{\mathrm{sig}}$  is strictly proper, the solution to (7) is  $\mathbb{P}_{X^{\theta}}(\cdot |x) = \mathbb{P}_{X^{\mathrm{true}}}(\cdot |x)$ $\mathbb{Q}$ -almost everywhere. With data sampled as  $\{(x^{i},y^{i})\}_{i = 1}^{n}$  where  $x^{i}\sim \mathbb{Q}$  and  $y^{i}\sim \mathbb{P}_{X^{\mathrm{true}}}(\cdot |x^{i})$  we can replace eq. (7) by
$$
\min  _ {\theta} \frac {1}{n} \sum_ {i = 1} ^ {n} \phi_ {\operatorname {s i g}} \left(\mathbb {P} _ {X ^ {\theta}} \left(\cdot | x ^ {i}\right), y ^ {i}\right), \tag {8}
$$
We note that in our experiments we focus on the specific case where the conditioning variable  $x$  is a path in  $\mathcal{X}$  corresponding to the observed past trajectory of some financial assets (see Figure 2).
3.5 Additional details
Interpolation Samples from  $X^{\text{true}}$  are observed on a discrete, possibly irregular, time grid while samples from  $X^{\theta}$  are generated from (1) by means of an SDE solver of choice (see [Kid22, Section 5.1] for details). Interpolating in time between observations produces a discrete measure on path space, the ones desired to be modelled. The interpolation choice is usually unimportant and simple linear interpolation is often sufficient. See [MKYL22] for other choices of interpolation.
Backpropagation Training a Neural SDE usually means backpropagating through the SDE solver. Three main ways of differentiating through an SDE have been studied in the literature: 1) Discretise-then-optimise backpropagates through the internal operations of the SDE solver. This option is memory inefficient, but will produce accurate and fast gradient estimates. 2) Optimise-then-discretise derives a backwards-in-time SDE, which is then solved numerically. This option is memory efficient, but gradient estimates are prone to numerical errors and generally slow to compute. We note that unlike the case of Neural ODEs, giving a precise meaning to the backward SDE falls outside the usual framework of diffusions. However, rough path theory [Lyo98, FLMS23] provides an elegant remedy by allowing solutions to forward and backward SDEs to be defined pathwise, similarly to the case of ODEs; see [Kid22, Appendix C.3.3] for a precise statement. 3) Reversible solvers are memory efficient and accurate, but generally slow. Here we do not advocate for any particular choice as all of the above backpropagation options are compatible with our pipeline.
Similarly, because the signature kernel score can be evaluated by solving a system of PDEs, backpropagation can be carried out by differentiating through the PDE solver analogously to the discretise-then-optimise option for SDEs. We note that  $\left[\mathrm{LSC}^{+}21\right]$  showed that directional derivatives of signature kernels solve a system of adjoint-PDEs, which can be leveraged to backpropagate through the discriminator using an optimise-then-discretise approach. We used this approach in our experiments.
Itô vs Stratonovich Stratonovich SDEs are slightly more efficient to backpropagate through using an optimise-then-discretise approach. In the case of Itô SDEs, the backward equation is derived by applying the Itô-Stratonovich correction term to convert it into a Stratonovich SDE, deriving the corresponding backward equation through rough path theoretical arguments, and then converting it back to an Itô SDE by applying a second Stratonovich-Itô correction.