title: TypeError: minimize() missing 1 required positional argument: 'var_list'
body: <p>I am trying to minimize the loss using SGD, but its throwing error while I am using SGD, I am trying to do it in tensorflow 2.0, one additional parameter that is causing issue is var_list</p>
  
  <pre><code>import tensorflow as tf
  import numpy
  import matplotlib.pyplot as plt
  rng = numpy.random
  print(rng)
  
  # Parameters
  learning_rate = 0.01
  training_epochs = 1000
  display_step = 50
  
  # Training Data
  train_X = numpy.asarray([3.3,4.4,5.5,6.71,6.93,4.168,9.779,6.182,7.59,2.167,
                           7.042,10.791,5.313,7.997,5.654,9.27,3.1])
  train_Y = numpy.asarray([1.7,2.76,2.09,3.19,1.694,1.573,3.366,2.596,2.53,1.221,
                           2.827,3.465,1.65,2.904,2.42,2.94,1.3])
  n_samples = train_X.shape
  print(n_samples)
  
  X = tf.Variable(train_X, name = 'X' ,dtype = 'float32')
  Y = tf.Variable(train_Y, name = 'Y' ,dtype = 'float32')
  print(X)
  
  # Set model weights
  W = tf.Variable(rng.randn(), name="weight")
  b = tf.Variable(rng.randn(), name="bias")
  print(W)
  print(b)
  
  # Construct a linear model
  pred = tf.add(tf.multiply(X, W), b)
  
  
  # Mean squared error. reduce_sum just calculates the sum of the parameters given.
  cost = tf.reduce_sum(tf.pow(pred-Y, 2))/(2*n_samples)
  # Gradient descent
  # Note, minimize() knows to modify W and b because Variable objects are trainable=True by default
  #optimizer = tf.train.GradientDescentOptimizer(learning_rate).minimize(cost)
  optimizer = tf.optimizers.SGD(name='SGD').minimize(cost)
  #optimizer = tf.SGD(learning_rate).minimize(cost)
  # Initialize the variables (i.e. assign their default value)
  init = tf.global_variables_initializer()
  </code></pre>