algorithm2e fehlt $ eingefügt.$ \Beschriftung

algorithm2e fehlt $ eingefügt.$ \Beschriftung

Ich habe Probleme bei der Verwendung des Pakets algorithm2e. Folgendes ist mein Latex-Code:

\begin{algorithm}[H]
\SetAlgoLined
\Comment{Input: Training data S, regularization parameters λ, learning rate η, initialization σ }

\Comment{Output: $\Theta = (w_{0},\textbf{w},\textbf{V})$}
initialization\; 
\While{stopping criterion is not met}{
    \For{\ (x,y) \in S}
    {
        w_{0}\leftarrow w_{0}-$η$(\frac{\partial}{\partialw_{0}}l(y(x|\Theta),y)                                +2\lambda^{0}w_{0});
    }
    \For{\ i \in \{1,...p\}  \wedge x_{i} \neq 0 }
    {
    w_{i}\leftarrow w_{i} - $η$(\frac{\partial}{\partialw_{i}}l(y(x|\Theta),y)+2\lambda_{\pi}^{w}w_{i});
    }
    For{ f \in \{1,...k\} }     
    {
    v_{i,f}\leftarrow v_{i,f}-$η$(\frac{\partial}{\partialv_{i,f}l(y(x|\Theta),y)+2\lambda_{f,\pi(i)}^{v}v_{i,f});
    }
    }
}
 \caption{Stochastic gradient descent}
\end{algorithm}

Ich habe einen solchen Fehler im Titel gefunden. Das Ergebnis sollte folgendes sein, danke.

Bildbeschreibung hier eingeben

Antwort1

Das Folgende repliziert die erwartete Ausgabe:

Bildbeschreibung hier eingeben

\documentclass{article}

\usepackage{amsmath}

\usepackage[noline,ruled]{algorithm2e}
\setlength{\algomargin}{7.5pt}

\begin{document}

\begin{algorithm}[H]
 \caption{Stochastic Gradient Descent (SGD)}
  \KwIn{Training data $S$, regularization parameters $\lambda$, learning rate $\eta$, initialization $\sigma$}
  \KwOut{Model parameters $\Theta = (w_0,\mathbf{w},\mathbf{V})$}
  $w_0 \leftarrow 0$; $\mathbf{w} \leftarrow (0,\dots,0)$; $\mathbf{V} \sim \mathcal{N}(0,\sigma)$\; 
  \Repeat{stopping criterion is not met}{
    \For{$(x,y) \in S$}
    {
      $w_0 \leftarrow w_0 - \eta(\frac{\partial}{\partial w_0} l( y(\mathbf{x} \mid \Theta), y) + 2\lambda^0 w_0)$\;
      \For{$i \in \{1,\dots,p\} \wedge x_i \neq 0$}
      {
        $w_i \leftarrow w_i - \eta(\frac{\partial}{\partial w_i} l( y(x \mid \Theta), y) + 2\lambda_{\pi}^w w_i)$\;
        \For{$f \in \{1,\dots,k\}$}     
        {
          $v_{i,f} \leftarrow v_{i,f} - \eta(\frac{\partial}{\partial v_{i,f}} l( y(x \mid \Theta), y) + 2\lambda_{f,\pi(i)}^v v_{i,f})$\;
        }
      }
    }
  }
\end{algorithm}

\end{document}

Einige Überlegungen:

  1. Eingabe und Ausgabe können mit \KwInbzw. angegeben werden \KwOut.

  2. Mathematisches Objekt, das sein solltedeutlich(wie Vektoren) werden normalerweise mit \mathbf(oder \bm, muss \usepackage{bm}nach \usepackage{amsmath}) festgelegt.

  3. Verwenden Sie \repeat„stattdessen“, \whiledamit die Schleifenbedingung am Ende angegeben werden kann.

  4. Der Mathematikmodus ist für mathematikbezogene Inhalte erforderlich. Dies gilt häufig für Unicode-Eingaben wie λ, η und σ.

  5. Verwenden Sie \midanstelle von , |um bedingte Funktionalität bereitzustellen.

  6. Verschachteln Sie \Fors, um ihre Strukturebene in der Ausgabe zu haben.

  7. Verwenden Sie in der Mathematik \dotsstattdessen Ellipsen ....

verwandte Informationen