% Generated by roxygen2: do not edit by hand % Please edit documentation in R/RcppExports.R \name{gradient} \alias{gradient} \alias{optStiefel_simple} \alias{optStiefel_linesearch} \title{Gradient computation of the loss `L_n(V)`.} \arguments{ \item{X}{data points} \item{Y}{response} \item{k}{assumed \eqn{rank(B)}} \item{nObs}{parameter for bandwidth estimation, typical value \code{nObs = nrow(X)^lambda} with \code{lambda} in the range [0.3, 0.8].} \item{tau}{Initial step size} \item{tol}{Tolerance for update error used for stopping criterion \eqn{|| V(j) V(j)' - V(j+1) V(j+1)' ||_2 < tol}{% \| V_j V_j' - V_{j+1} V_{j+1}' \|_2 < tol}.} \item{maxIter}{Upper bound of optimization iterations} } \value{ List containing the bandwidth \code{h}, optimization objective \code{V} and the matrix \code{B} estimated for the model as a orthogonal basis of the orthogonal space spaned by \code{V}. } \description{ The loss is defined as \deqn{L_n(V) := \frac{1}{n}\sum_{j=1}^n y_2(V, X_j) - y_1(V, X_j)^2}{L_n(V) := 1/n sum_j( (y_2(V, X_j) - y_1(V, X_j)^2 )} with \deqn{y_l(s_0) := \sum_{i=1}^n w_i(V, s_0)Y_i^l}{y_l(s_0) := sum_i(w_i(V, s_0) Y_i^l)} Stiefel Optimization for \code{V} given a dataset \code{X} and responces \code{Y} for the model \deqn{Y\sim g(B'X) + \epsilon}{Y ~ g(B'X) + epsilon} to compute the matrix `B` such that \eqn{span{B} = span(V)^{\bot}}{% span(B) = orth(span(B))}. } \keyword{internal}