← all repositories
yongyehuang/Tensorflow-Tutorial

TensorFlow 1.x tutorials: a time capsule from the API wars

A Chinese-language notebook collection that teaches TF basics through MNIST, then graduates to GANs, seq2seq, and the eternal struggle of keeping up with Google's breaking changes.

894 stars Jupyter Notebook LearningML Frameworks
Tensorflow-Tutorial
Velocity · 7d
+0.3
★ / day
Trend
steady
star history

What it does

A curated set of Jupyter notebooks and standalone Python scripts walking through TensorFlow 1.x fundamentals: variables, scopes, CNNs, RNNs, TensorBoard, model saving, and data pipelines with tfrecord and tf.data.Dataset. The “practical” section adds BN, DCGAN, WGAN, pix2pix, and sequence labeling. Everything is in Chinese, with Python 3.5 and TensorFlow “master (gpu version)” as the stated environment.

The interesting bit

The README itself is a small archaeological find. The author updated the repo in April 2018 to chase TensorFlow from 1.0 to 1.8, grumbling that “每次更新很多 API 都改了” (every update breaks APIs). There’s even a performance shootout between tf.data.Dataset iterator modes — one-shot takes 125s for 100 batches, initializable takes 0.7s — which is the kind of gotcha you only learn by stepping on the rake.

Key highlights

  • 12 beginner tutorials covering graph basics through tf.layers high-level API
  • Three CNN construction styles side-by-side: raw API, custom functions, and tf.layers
  • LSTM/GRU/Bi-GRU notebooks with MNIST, plus kernel visualizations
  • Practical models: DCGAN and WGAN for anime face generation, pix2pix, batch normalization, seq2seq
  • Explicit performance comparisons for tfrecord vs. queue vs. one-shot data loading
  • Older code preserved in a 1.2.1 branch for historical reference

Caveats

  • Targets TensorFlow 1.x (specifically “master” circa 2018); many patterns are obsolete in TF 2.x
  • Several practical model sections are truncated in the README (pix2pix, seq2seq details are cut off)
  • Anime face dataset lives on Baidu Pan with an extraction code; no direct download link

Verdict

Worth a look if you’re maintaining legacy TF 1.x code or want to understand why tf.data iterator choices matter. Skip if you’re starting fresh — the TF 2.x/Keras path is less combative. Chinese readers get the most value; others may need translation help.

heatdrop uses Google Analytics to see which pages get read — nothing else. Your call. How we handle data.