title: ValueError: malformed node or string with ast.literal_eval() when adding a Keras layer
body: <p>I want to build a Keras Model evaluating strings. If I do the following:</p>
  
  <pre><code>from keras.models import Sequential
  from keras.layers import Dense
  
  model = Sequential()
  model.add(Dense(units=10, input_shape=(10,), activation='softmax'))
  </code></pre>
  
  <p>It works fine. And I can see the <code>model.summary()</code>.</p>
  
  <p>But, when I add the layer with <code>ast.literal_eval()</code></p>
  
  <pre><code>from keras.models import Sequential
  from keras.layers import Dense
  import ast
  
  model = Sequential()
  code = "model.add( Dense( input_shape=(10,), units=10, activation='softmax' ) )"
  ast.literal_eval(code)
  </code></pre>
  
  <p>It throws me the next <code>ValueError</code>:</p>
  
  <pre><code>Traceback (most recent call last):
    File "&lt;stdin&gt;", line 1, in &lt;module&gt;
    File "/usr/lib/python3.5/ast.py", line 84, in literal_eval
      return _convert(node_or_string)
    File "/usr/lib/python3.5/ast.py", line 83, in _convert
      raise ValueError('malformed node or string: ' + repr(node))
  ValueError: malformed node or string: &lt;_ast.Call object at 0x7efc40c90e10&gt;
  </code></pre>
  
  <p>If I use <code>eval</code> instead of <code>ast.literal_eval</code> it works too.</p>
  
  <p>I'm using python3.5.</p>