Google Colaboratoryを使用して、出力画像をGoogleドライブまたはSSD、HHDに保存したいが、そのディレクトリは「/ content」
import os
print(os.getcwd())
# "/content"
パス(HDD、SSD、googledrive)を変更することは可能ですか?
重量を節約するために、トレーニング後に次を実行できます。
saver = tf.train.Saver()
save_path = saver.save(session, "data/dm.ckpt")
print('done saving at',save_path)
Ckptファイルが保存された場所を確認してください。
import os
print( os.getcwd() )
print( os.listdir('data') )
最後にファイルをダウンロードしてください!
from google.colab import files
files.download( "data/dm.ckpt.meta" )
ColabセッションにGoogleドライブをマウントする必要があります。
from google.colab import drive
drive.mount('/content/gdrive')
次に、次のようにローカルファイルシステムに書き込むのと同じように、Googleドライブに書き込むことができます。
with open('/content/gdrive/My Drive/file.txt', 'w') as f:
f.write('content')
外部ファイルとのインターフェースの例 を見てください。一般的なワークフローは、ファイルをクラウド環境に出力してからダウンロードすることです。
"Hello、Colaboratory" example のプロットをファイルに出力しましょう。 Googleドライブにノートブックのコピーを作成し、次のコマンドを実行しました。
_import matplotlib.pyplot as plt
import numpy as np
x = np.arange(20)
y = [x_i + np.random.randn(1) for x_i in x]
a, b = np.polyfit(x, y, 1)
f = plt.figure()
_ = plt.plot(x, y, 'o', np.arange(20), a*np.arange(20)+b, '-')
f.savefig( "test.png")
_
Google Collaboratory環境のファイルをリストすると、それらの中に_test.png
_が表示されます。
_import os
print( os.getcwd() )
print( os.listdir() )
# /content
# ['datalab', '.local', '.config', '.forever', '.cache', '.rnd', 'test.png', '.ipython']
_
あとは、この回答の冒頭でリンクした例を使用して、ローカルマシンにダウンロードするだけです。
_from google.colab import files
files.download( "test.png" )
_
最後に、ローカルマシンではなくGoogleドライブ上のファイルが本当に必要な場合は、 Google Drive API を使用してファイルを適宜移動できます。
追伸ファイルを_/content
_に書きたくない場合は、いつでも サブディレクトリを作成 とos.chdir()
にできますが、このサブディレクトリはまだローカルにあることに注意してくださいクラウド環境で、上記のファイルをダウンロードする必要があります。