MetaOptimize: A Framework for Optimizing Step Sizes and Other Meta-parameters â part 7/10
Cleaned-text code points [80289, 92232). Bibliography omitted here; source.md includes it.
By taking the derivative of ( 52 ) with respect to đ t \boldsymbol{h}_{t} , we obtain d â đ t + 1 d â đ t = Îł ⥠[ I â [ đ¶ t ] â â 2 f t â ( đ t ) 0 0 0 0 I â [ đ¶ t ] â â 2 f t â ( đ t ) 0 0 0 0 â± 0 0 0 0 I â [ đ¶ t ] â â 2 f t â ( đ t ) ] â â 1 â st â 2 â nd âź â m â th . \frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{h}_{t}}=\gamma\,\left[\begin{array}[]{c|c|c|c}\begin{array}[]{c}I-\left[\boldsymbol{\alpha}_{t}\right]\,\nabla^{2}f_{t}(\boldsymbol{w}_{t})\\ \\ \end{array}&0&0&0\\ \hline\cr 0&\begin{array}[]{c}\\ I-\left[\boldsymbol{\alpha}_{t}\right]\,\nabla^{2}f_{t}(\boldsymbol{w}_{t})\\ \\ \end{array}&0&0\\ \hline\cr 0&0&\begin{array}[]{c}\\ \ddots\\ \\ \end{array}&0\\ \hline\cr 0&0&0&\begin{array}[]{c}\\ I-\left[\boldsymbol{\alpha}_{t}\right]\,\nabla^{2}f_{t}(\boldsymbol{w}_{t})\end{array}\end{array}\right]\,\,\begin{array}[]{l}\begin{array}[]{c}{\color[rgb]{0.75,0.75,0.75}\leftarrow 1\textrm{st}}\\ \\ \end{array}\\ \begin{array}[]{c}\\ {\color[rgb]{0.75,0.75,0.75}\leftarrow 2\textrm{nd}}\\ \\ \end{array}\\ \begin{array}[]{c}\\ \,\,{\color[rgb]{0.75,0.75,0.75}\vdots}\\ \\ \end{array}\\ \begin{array}[]{c}\\ {\color[rgb]{0.75,0.75,0.75}\leftarrow m\textrm{th}}\end{array}\end{array}. (54) In the above equation, note that d â B t / d â đ t = 0 \mathrm{d}\,B_{t}/\mathrm{d}\,\boldsymbol{h}_{t}=0 due to ( 47 ). Let ÎČ t â [ i ] \beta_{t}[i] and w t â [ j ] w_{t}[j] denote the i i th and j j th entries of đ· t \boldsymbol{\beta}_{t} and đ t \boldsymbol{w}_{t} , for i = 1 , ⊠, m i=1,\ldots,m and j = 1 , ⊠, n j=1,\ldots,n , respectively. It then follows from ( 52 ) and ( 47 ) that d â đ t + 1 d â đ· t = â Îł ⥠[ [ d â đ¶ t d â ÎČ t â [ 1 ] ] â â 2 f t â â t [ 1 ] + [ â f t ] â â Ï âČ â ( đ· t ) â ÎČ t â [ 1 ] â B t [ 1 ] ⯠[ d â đ¶ t d â ÎČ t â [ m ] ] â â 2 f t â â t [ 1 ] + [ â f t ] â â Ï âČ â ( đ· t ) â ÎČ t â [ m ] â B t [ 1 ] âź â± âź [ d â đ¶ t d â ÎČ t â [ 1 ] ] â â 2 f t â â t [ m ] + [ â f t ] â â Ï âČ â ( đ· t ) â ÎČ t â [ 1 ] â B t [ m ] ⯠[ d â đ¶ t d â ÎČ t â [ m ] ] â â 2 f t â â t [ m ] + [ â f t ] â â Ï âČ â ( đ· t ) â ÎČ t â [ m ] â B t [ m ] ] , \frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{\beta}_{t}}=-\gamma\left[\begin{array}[]{c|c|c}\hskip-7.0pt\begin{array}[]{c}\\ {\Big[\frac{\mathrm{d}\,\boldsymbol{\alpha}_{t}}{\mathrm{d}\,\beta_{t}[1]}\Big]\nabla^{2}f_{t}\,\mathcal{H}_{t}^{[1]}\,+\,\left[\nabla f_{t}\right]\,\frac{\partial\,\sigma^{\prime}(\boldsymbol{\beta}_{t})}{\partial\,\beta_{t}[1]}\,B_{t}^{[1]}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\cdots}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\Big[\frac{\mathrm{d}\,\boldsymbol{\alpha}_{t}}{\mathrm{d}\,\beta_{t}[m]}\Big]\nabla^{2}f_{t}\,\mathcal{H}_{t}^{[1]}\,+\,\left[\nabla f_{t}\right]\,\frac{\partial\,\sigma^{\prime}(\boldsymbol{\beta}_{t})}{\partial\,\beta_{t}[{m}]}\,B_{t}^{[1]}}\\ \\ \end{array}\\ \hline\cr\hskip-7.0pt\begin{array}[]{c}\\ {\vdots}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\ddots}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\vdots}\\ \\ \end{array}\\ \hline\cr\hskip-7.0pt\begin{array}[]{c}\\ {\Big[\frac{\mathrm{d}\,\boldsymbol{\alpha}_{t}}{\mathrm{d}\,\beta_{t}[1]}\Big]\nabla^{2}f_{t}\,\mathcal{H}_{t}^{[m]}\,+\,\left[\nabla f_{t}\right]\,\frac{\partial\,\sigma^{\prime}(\boldsymbol{\beta}_{t})}{\partial\,\beta_{t}[1]}\,B_{t}^{[m]}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\cdots}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\Big[\frac{\mathrm{d}\,\boldsymbol{\alpha}_{t}}{\mathrm{d}\,\beta_{t}[m]}\Big]\nabla^{2}f_{t}\,\mathcal{H}_{t}^{[m]}\,+\,\left[\nabla f_{t}\right]\,\frac{\partial\,\sigma^{\prime}(\boldsymbol{\beta}_{t})}{\partial\,\beta_{t}[{m}]}\,B_{t}^{[m]}}\\ \\ \end{array}\end{array}\right], (55) where â â ÎČ \frac{\partial}{\partial\beta} stands for the entry-wise partial derivative of a matrix with respect to a scalar variable ÎČ \beta . In the same vein, ( 53 ) and ( 47 ) imply that d â đ t + 1 d â đ t = â Îł ⥠[ [ đ¶ t ] â d ⥠( â 2 f t â ( đ t ) â â t [ 1 ] ) d â đ t + [ Ï âČ â ( đ· t ) â B t [ 1 ] ] â â 2 f t â ( đ t ) âź [ đ¶ t ] â d ⥠( â 2 f t â ( đ t ) â â t [ m ] ) d â đ t + [ Ï âČ â ( đ· t ) â B t [ m ] ] â â 2 f t â ( đ t ) ] . \frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{w}_{t}}=-\gamma\left[\begin{array}[]{c}\hskip-7.0pt\begin{array}[]{c}\\ {\left[\boldsymbol{\alpha}_{t}\right]\frac{\mathrm{d}\,(\nabla^{2}f_{t}(\boldsymbol{w}_{t})\,\mathcal{H}_{t}^{[1]})}{\mathrm{d}\,\boldsymbol{w}_{t}}\,+\,\big[\sigma^{\prime}(\boldsymbol{\beta}_{t})\,B_{t}^{[1]}\big]\,\nabla^{2}f_{t}(\boldsymbol{w}_{t})}\\ \\ \end{array}\\ \hline\cr\hskip-7.0pt\begin{array}[]{c}\\ {\vdots}\\ \\ \end{array}\\ \hline\cr\hskip-7.0pt\begin{array}[]{c}\\ {\left[\boldsymbol{\alpha}_{t}\right]\frac{\mathrm{d}\,(\nabla^{2}f_{t}(\boldsymbol{w}_{t})\,\mathcal{H}_{t}^{[{m}]})}{\mathrm{d}\,\boldsymbol{w}_{t}}\,+\,\big[\sigma^{\prime}(\boldsymbol{\beta}_{t})\,B_{t}^{[m]}\big]\,\nabla^{2}f_{t}(\boldsymbol{w}_{t})}\\ \\ \end{array}\end{array}\right]. (56) Finally, G t base G^{\textrm{base}}_{t} is obtained by plugging ( 54 ), ( 55 ), and ( 56 ) into ( 50 ).
In the special case that ÎČ \boldsymbol{\beta} is a scalar (equivalently m = 1 m=1 ), and furthermore α = Ï âĄ ( ÎČ ) = e ÎČ \alpha=\sigma(\beta)=e^{\beta} , matrix G t base G^{\textrm{base}}_{t} would be simplified to G t base (scalar) = [ 1 â η â đ t T â â 2 f t â ( đ t ) â η â f t ( đ t ) T â α â f t ( đ t ) I â α â â 2 f t â ( đ t ) 0 â Îł α â 2 f t ( đ t ) đ t â B t α â f t ( đ t ) â Îł â α â d ⥠( â 2 f t â ( đ t ) â đ t ) d â đ t â B t â α â â 2 f t â ( đ t ) Îł ⥠( I â α â â 2 f t â ( đ t ) ) ] . G_{t}^{\textrm{base (scalar)}}=\left[\begin{array}[]{cccc}\vskip 6.0pt1&-\eta\,\boldsymbol{h}_{t}^{T}\nabla^{2}f_{t}(\boldsymbol{w}_{t})&-\eta\,\nabla f_{t}(\boldsymbol{w}_{t})^{T}\\ \vskip 6.0pt-\alpha\nabla f_{t}(\boldsymbol{w}_{t})&I-\alpha\nabla^{2}f_{t}(\boldsymbol{w}_{t})&0\\ -\gamma\alpha\nabla^{2}f_{t}(\boldsymbol{w}_{t})\boldsymbol{h}_{t}-B_{t}\,\alpha\nabla f_{t}(\boldsymbol{w}_{t})&\quad-\gamma\alpha\frac{\mathrm{d}\,\left(\nabla^{2}f_{t}(\boldsymbol{w}_{t})\boldsymbol{h}_{t}\right)}{d\boldsymbol{w}_{t}}-B_{t}\,\alpha\nabla^{2}f_{t}(\boldsymbol{w}_{t})&\gamma\big(I-\alpha\nabla^{2}f_{t}(\boldsymbol{w}_{t})\big)\end{array}\right].
#### A.3.1 Base AdamW
The base update according to the AdamW algorithm ( Loizou et al., 2021 ) is as follows, đ t + 1 = Ï â đ t + â f t â ( đ t ) , đ t + 1 = λ đ t + â f t ( đ t ) 2 , ÎŒ t = ( 1 â Ï 1 â Ï t ) / 1 â λ 1 â λ t , đ t + 1 = đ t â đ¶ t â ÎŒ t â đ t đ t â Îș â đ¶ t â đ t , \begin{split}\boldsymbol{m}_{t+1}&=\rho\,\boldsymbol{m}_{t}\,+\,\nabla f_{t}(\boldsymbol{w}_{t}),\\ \boldsymbol{v}_{t+1}&=\lambda\,\boldsymbol{v}_{t}\,+\,\nabla f_{t}(\boldsymbol{w}_{t})^{2},\\ \mu_{t}&=\left(\frac{1-\rho}{{\color[rgb]{0.75,0.75,0.75}1-\rho^{t}}}\right)\,/\,\sqrt{\frac{1-\lambda}{1-\lambda^{t}}},\\ \boldsymbol{w}_{t+1}&=\boldsymbol{w}_{t}\,-\,\boldsymbol{\alpha}_{t}\mu_{t}\frac{\boldsymbol{m}_{t}}{\sqrt{\boldsymbol{v}_{t}}}-\kappa\boldsymbol{\alpha}_{t}\boldsymbol{w}_{t},\end{split} (57) where đ t \boldsymbol{m}_{t} is the momentum vector, đ t \boldsymbol{v}_{t} is the trace of gradient square used for normalization, and Îș > 0 \kappa>0 is a weight-decay parameter. Therefore the base algorithm needs to keep track of đ t , đ t , đ t \boldsymbol{w}_{t},\boldsymbol{m}_{t},\boldsymbol{v}_{t} , i.e., đ t = [ đ t đ t đ t ] . \boldsymbol{x}_{t}=\left[\begin{array}[]{c}\boldsymbol{w}_{t}\\ \hfill\boldsymbol{m}_{t}\\ \boldsymbol{v}_{t}\end{array}\right]. (58) It then follows from ( 44 ) that G t base = [ d â đ t + 1 d â đ· t 0 d â đ t + 1 d â đ t 0 d â đ t + 1 d â đ· t 0 d â đ t + 1 d â đ t d â đ t + 1 d â đ t ] = [ d â đ t + 1 d â đ· t 0 d â đ t + 1 d â đ t d â đ t + 1 d â đ t d â đ t + 1 d â đ t 0 d â đ t + 1 d â đ· t 0 d â đ t + 1 d â đ t d â đ t + 1 d â đ t d â đ t + 1 d â đ t 0 d â đ t + 1 d â đ· t 0 d â đ t + 1 d â đ t d â đ t + 1 d â đ t d â đ t + 1 d â đ t 0 d â đ t + 1 d â đ· t 0 d â đ t + 1 d â đ t d â đ t + 1 d â đ t d â đ t + 1 d â đ t d â đ t + 1 d â đ t ] = [ â ÎŒ t â [ đ t đ t + Îș â đ t ] â Ï âČ â ( đ· t ) 0 I â Îș ⥠[ đ¶ t ] â ÎŒ t â [ đ¶ t đ t ] ÎŒ t 2 â [ đ¶ t â đ t đ t 1.5 ] 0 0 0 â 2 f t Ï â I 0 0 0 0 2 â [ â f t ] â â 2 f t 0 λ â I 0 d â đ t + 1 d â đ· t 0 d â đ t + 1 d â đ t d â đ t + 1 d â đ t d â đ t + 1 d â đ t d â đ t + 1 d â đ t ] \begin{split}G^{\textrm{base}}_{t}&=\left[\begin{array}[]{cccc}\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{x}_{t+1}}{\mathrm{d}\,\boldsymbol{\beta}_{t}}}\\ \\ \end{array}&0&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{x}_{t+1}}{\mathrm{d}\,\boldsymbol{x}_{t}}}\\ \\ \end{array}&0\\ \hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{\beta}_{t}}}\\ \\ \end{array}&0&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{x}_{t}}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{h}_{t}}}\\ \\ \end{array}\end{array}\right]\\ &=\left[\begin{array}[]{cc|ccc|c}\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{w}_{t+1}}{\mathrm{d}\,\boldsymbol{\beta}_{t}}}\\ \\ \end{array}&0&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{w}_{t+1}}{\mathrm{d}\,\boldsymbol{w}_{t}}}\\ \\ \end{array}&\frac{\mathrm{d}\,\boldsymbol{w}_{t+1}}{\mathrm{d}\,\boldsymbol{m}_{t}}&\frac{\mathrm{d}\,\boldsymbol{w}_{t+1}}{\mathrm{d}\,\boldsymbol{v}_{t}}&0\\ \frac{\mathrm{d}\,\boldsymbol{m}_{t+1}}{\mathrm{d}\,\boldsymbol{\beta}_{t}}&0&\frac{\mathrm{d}\,\boldsymbol{m}_{t+1}}{\mathrm{d}\,\boldsymbol{w}_{t}}&\frac{\mathrm{d}\,\boldsymbol{m}_{t+1}}{\mathrm{d}\,\boldsymbol{m}_{t}}&\frac{\mathrm{d}\,\boldsymbol{m}_{t+1}}{\mathrm{d}\,\boldsymbol{v}_{t}}&0\\ \frac{\mathrm{d}\,\boldsymbol{v}_{t+1}}{\mathrm{d}\,\boldsymbol{\beta}_{t}}&0&\frac{\mathrm{d}\,\boldsymbol{v}_{t+1}}{\mathrm{d}\,\boldsymbol{w}_{t}}&\frac{\mathrm{d}\,\boldsymbol{v}_{t+1}}{\mathrm{d}\,\boldsymbol{m}_{t}}&\frac{\mathrm{d}\,\boldsymbol{v}_{t+1}}{\mathrm{d}\,\boldsymbol{v}_{t}}&0\\ \hline\cr\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{\beta}_{t}}}\\ \\ \end{array}&0&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{w}_{t}}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{m}_{t}}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{v}_{t}}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{h}_{t}}}\\ \\ \end{array}\end{array}\right]\\ &=\left[\begin{array}[]{cc|ccc|c}-\mu_{t}\Big[\frac{\boldsymbol{m}_{t}}{\sqrt{\boldsymbol{v}_{t}}}+\kappa\boldsymbol{w}_{t}\Big]\sigma^{\prime}(\boldsymbol{\beta}_{t})&0&I-\kappa\left[\boldsymbol{\alpha}_{t}\right]&-\mu_{t}\Big[\frac{\boldsymbol{\alpha}_{t}}{\sqrt{\boldsymbol{v}_{t}}}\Big]&\frac{\mu_{t}}{2}\Big[\frac{\boldsymbol{\alpha}_{t}\boldsymbol{m}_{t}}{\boldsymbol{v}_{t}^{1.5}}\Big]&0\\ 0&0&\nabla^{2}f_{t}&\rho I&0&0\\ 0&0&2\left[\nabla f_{t}\right]\,\nabla^{2}f_{t}&0&\lambda I&0\\ \hline\cr\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{\beta}_{t}}}\\ \\ \end{array}&0&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{w}_{t}}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{m}_{t}}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{v}_{t}}}\\ \\ \end{array}&\hskip-7.0pt\begin{array}[]{c}\\ {\frac{\mathrm{d}\,\boldsymbol{h}_{t+1}}{\mathrm{d}\,\boldsymbol{h}_{t}}}\\ \\ \end{array}\end{array}\right]\end{split} (59) where the last equality follows from simple derivative computations in ( 57 ).