書籍 直感 Deep Learning を TensorFlow2 対応コードに変換
は TF1 の Keras なので、TF2 の Keras 対応にしたい。 まずは tf_upgrade_v2 --inplace --intree . で tf2 コードに変換する。
続いて keras などの import 文を置き換える。適当な Ruby コードで置換した。
code:ruby
require 'pathname'
def replace(source)
source.gsub('from keras.utils import np_utils', 'from tensorflow.keras.utils import to_categorical')
.gsub('np_utils.to_categorical', 'to_categorical')
.gsub(/from\skeras\.layers\.\w+/, "from keras.layers")
.gsub('from keras.', 'from tensorflow.keras.')
.gsub('from keras import', 'from tensorflow.keras import')
.gsub('import keras.', 'import tensorflow.keras.')
.gsub("import keras\n", "from tensorflow import keras\nimport tensorflow as tf\n")
end
Pathname.glob('**/*.py').each do |path|
source = path.read
new_source = replace(source)
path.open('w') {|f|
f.puts new_source
}
end
ちょっと触った感じほぼTF2環境でも動いている、気がする。
4章のGANは動かず。使ってるライブラリも2017ぐらいで更新が止まってる。