TPUを使った場合は精度がかなり落ちていますが、これは精度向上に寄与していたLearningRateScheduler(keras.callbacks)がTPUでは機能していないためです。Callback内で学習率変化させても効果がなかったので、TensorFlowの低レベルAPIでどうにかするか、バグ直されるまで待つしかなかと思います。TPU(上)とGPU(下)のエラーの推移です。どちらもKerasの例です。 リアルなデータで学習率調整することはあまりないのですが、CIFARの場合は学習率調整が重要なのでここだけは注意が必要です。 ちなみに速度はむちゃくちゃ速いです。GPUでは層を深くすればするほど遅くなっている自然な結果となっているのに対し、TPUではほぼ定数時間で処理できています。おそらく層が浅い場合は、TPUでは何か別の要素がボトルネックとなっていて、本体の計算性能が出せていないと
![Google ColabのTPUでResNetのベンチマークを取ってみた](https://cdn-ak-scissors.b.st-hatena.com/image/square/dd466c9312b2c3ca4495bf1290d10647d425789b/height=288;version=1;width=512/https%3A%2F%2Fblog.shikoan.com%2Fwp-content%2Fuploads%2F2018%2F07%2Fogp_image.jpg)