message: Added support for zero accumulators in FTRL optimizer implementation for TPU embeddings, behind an optimization parameter setting because it hurts performance.
diff: @@ -96,13 +96,18 @@ message StochasticGradientDescentParameters {}
  // for a dynamic learning rate, it is nearly the same as long as the learning
  // rate does not change quickly. The benefit of setting multiply_linear_by_lr to
  // true is that the modified formula handles zero and near-zero learning rates
  -// without producing NaNs, improving flexibility for learning rate ramp-up.
  +// without producing NaNs, improving flexibility for learning rate ramp-up. The
  +// allow_zero_accumulator parameter changes some internal formulas to allow zero
  +// and near-zero accumulator values at the cost of some performance; this only
  +// needs to be set if you are using an initial accumulator value of zero, which
  +// is uncommon.
  message FtrlParameters {
  float l1 = 1;
  float l2 = 2;
  float lr_power = 3;
  float beta = 7;
  bool multiply_linear_by_lr = 6;
  + bool allow_zero_accumulator = 8;
  // Old initial accumulator parameters.
  reserved "initial_accum", "initial_linear";
  