/usr/local/lib64/python3.6/site-packages/torch/optim/__pycache__
NameSizeModeActions
adadelta.cpython-36.pyc48290644editdlrm
adagrad.cpython-36.pyc47670644editdlrm
adam.cpython-36.pyc62500644editdlrm
adamax.cpython-36.pyc48690644editdlrm
adamw.cpython-36.pyc62580644editdlrm
asgd.cpython-36.pyc28480644editdlrm
lbfgs.cpython-36.pyc88020644editdlrm
lr_scheduler.cpython-36.pyc637920644editdlrm
nadam.cpython-36.pyc57270644editdlrm
optimizer.cpython-36.pyc118270644editdlrm
radam.cpython-36.pyc57120644editdlrm
rmsprop.cpython-36.pyc65430644editdlrm
rprop.cpython-36.pyc51820644editdlrm
sgd.cpython-36.pyc62670644editdlrm
sparse_adam.cpython-36.pyc33290644editdlrm
swa_utils.cpython-36.pyc113700644editdlrm
_functional.cpython-36.pyc104070644editdlrm
__init__.cpython-36.pyc10490644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/torch/optim/__pycache__/adamax.cpython-36.pyc (4869B)
3 Eg @s4ddlZddlmZddlmZGdddeZdS)N) _functional) Optimizercs4eZdZdZd fdd Zejdd d ZZS)Adamaxa! Implements Adamax algorithm (a variant of Adam based on infinity norm). .. math:: \begin{aligned} &\rule{110mm}{0.4pt} \\ &\textbf{input} : \gamma \text{ (lr)}, \beta_1, \beta_2 \text{ (betas)},\theta_0 \text{ (params)},f(\theta) \text{ (objective)}, \: \lambda \text{ (weight decay)}, \\ &\hspace{13mm} \epsilon \text{ (epsilon)} \\ &\textbf{initialize} : m_0 \leftarrow 0 \text{ ( first moment)}, u_0 \leftarrow 0 \text{ ( infinity norm)} \\[-1.ex] &\rule{110mm}{0.4pt} \\ &\textbf{for} \: t=1 \: \textbf{to} \: \ldots \: \textbf{do} \\ &\hspace{5mm}g_t \leftarrow \nabla_{\theta} f_t (\theta_{t-1}) \\ &\hspace{5mm}if \: \lambda \neq 0 \\ &\hspace{10mm} g_t \leftarrow g_t + \lambda \theta_{t-1} \\ &\hspace{5mm}m_t \leftarrow \beta_1 m_{t-1} + (1 - \beta_1) g_t \\ &\hspace{5mm}u_t \leftarrow \mathrm{max}(\beta_2 u_{t-1}, |g_{t}|+\epsilon) \\ &\hspace{5mm}\theta_t \leftarrow \theta_{t-1} - \frac{\gamma m_t}{(1-\beta^t_1) u_t} \\ &\rule{110mm}{0.4pt} \\[-1.ex] &\bf{return} \: \theta_t \\[-1.ex] &\rule{110mm}{0.4pt} \\[-1.ex] \end{aligned} For further details regarding the algorithm we refer to `Adam: A Method for Stochastic Optimization`_. Args: params (iterable): iterable of parameters to optimize or dicts defining parameter groups lr (float, optional): learning rate (default: 2e-3) betas (Tuple[float, float], optional): coefficients used for computing running averages of gradient and its square eps (float, optional): term added to the denominator to improve numerical stability (default: 1e-8) weight_decay (float, optional): weight decay (L2 penalty) (default: 0) .. _Adam\: A Method for Stochastic Optimization: https://arxiv.org/abs/1412.6980 Mb`??+?:0yE>rcsd|kstdj|d|ks,tdj|d|dkoBdknsZtdj|dd|dkopdknstdj|dd|kstd j|t||||d }tt|j||dS) NgzInvalid learning rate: {}zInvalid epsilon value: {}rg?z%Invalid beta parameter at index 0: {}rz%Invalid beta parameter at index 1: {}zInvalid weight_decay value: {})lrbetaseps weight_decay) ValueErrorformatdictsuperr__init__)selfparamsr r r r defaults) __class__>/usr/local/lib64/python3.6/site-packages/torch/optim/adamax.pyr/szAdamax.__init__NcCsXd}|dk r&tj |}WdQRXx*|jD]}g}g}g}g}g}|d\} } |d} |d} |d} x|dD]}|jdkrqx|j||jjrtd|j|j|j|}t|dkrd|d <tj |tj d |d <tj |tj d |d <|j|d |j|d |d d 7<|j|d qxWt j |||||| | | | | d q0W|S)zPerforms a single optimization step. Args: closure (callable, optional): A closure that reevaluates the model and returns the loss. Nr r r r rz(Adamax does not support sparse gradientsrstep)Z memory_formatZexp_avgZexp_infr)r beta1beta2r r ) torchZ enable_gradZ param_groupsZgradappendZ is_sparse RuntimeErrorstatelenZ zeros_likeZpreserve_formatFZadamax)rZclosureZlossgroupZparams_with_gradZgradsZexp_avgsZexp_infsZ state_stepsrrr r r prrrrr?sR        z Adamax.steprr)rr$r r)N) __name__ __module__ __qualname____doc__rrZno_gradr __classcell__rr)rrrs 'r)rrr!Z optimizerrrrrrrs