Notes taken while working through the 'Deep MNIST for Experts' tutorial.
- 'Placeholders' in TensorFlow feel like a nicer abstraction than 'symbols' in Theano.
- Automatic tensor shape checking is a great idea. In fact, any kind of optional static analysis of your computation graph is a great idea.
cross_entropy = -tf.reduce_sum(y_*tf.log(y)): sweet
train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy): sweet
- What does it mean for a tensor to have -1 for a shape dimension?
- Dropout seems easier to apply than in Lasagne - no 'deterministic' flag equivalent needed when predicting.
- Running the conv net example on my Macbook (where only the CPU version of TensorFlow is available) is wicked slow (dude). Not unexpected I guess.
All in all, Tensorflow feels lot like Theano + Lasagne, but with a much cleaner API. I'll need to try it out on the lab's GPU machine before I can say anything about speed, but if it's quick enough, I'd consider switching over.