class_docstr: Adaptive Moment Estimation (Adam) optimizer.
  
  Adam is an algorithm for first-order gradient-based optimization of stochastic
  objective functions, based on adaptive estimates of lower-order moments. See
  :cite:`kingma2014adam` for more details.
  
  Note: default parameter values have been taken from the paper.
  
  Attributes:
    learning_rate: Step size (``alpha`` in the paper).
    beta1: Exponential decay rate for first moment estimate.
    beta2: Exponential decay rate for second moment estimate.
    epsilon: Small value to avoid zero denominator.
    step: Step count.
    m: Biased first moment estimate (a list with one value per parameter).
    v: Biased second raw moment estimate (a list with one value per parameter).
class_docstr_tok: ["Adaptive","Moment","Estimation","(","Adam",")","optimizer",".","Adam","is","an","algorithm","for","first-order","gradient-based","optimization","of","stochastic","objective","functions",",","based","on","adaptive","estimates","of","lower-order","moments",".","See",":","cite",":","`","kingma2014adam","`","for","more","details",".","Note",":","default","parameter","values","have","been","taken","from","the","paper",".","Attributes",":","learning_rate",":","Step","size","(","``","alpha","``","in","the","paper",")",".","beta1",":","Exponential","decay","rate","for","first","moment","estimate",".","beta2",":","Exponential","decay","rate","for","second","moment","estimate",".","epsilon",":","Small","value","to","avoid","zero","denominator",".","step",":","Step","count",".","m",":","Biased","first","moment","estimate","(","a","list","with","one","value","per","parameter",")",".","v",":","Biased","second","raw","moment","estimate","(","a","list","with","one","value","per","parameter",")","."]
docstr: First and second order moments are initialized to zero.
docstr_tok: ["First","and","second","order","moments","are","initialized","to","zero","."]
code: def _initialize(self, parameters: Sequence[tf.Variable]):
      """First and second order moments are initialized to zero."""
      zero_var = lambda p: utils.variable_like(p, trainable=False)
      with tf.name_scope("m"):
          self.m.extend(zero_var(p) for p in parameters)
      with tf.name_scope("v"):
          self.v.extend(zero_var(p) for p in parameters)
  
file_path: sonnet/sonnet/src/optimizers/adam.py
imports: from typing import Optional, Sequence, Union
  from sonnet.src import base
  from sonnet.src import once
  from sonnet.src import types
  from sonnet.src import utils
  from sonnet.src.optimizers import optimizer_utils
  import tensorflow
label_desc: Use image node_id 2 for calling the Adam obj's underlying member method code with example usage: obj._initialize(parameters) without return types