NotaBene

Google Colaboratoryでモデルデータを永続化する方法 | NotaBene

Google Colaboratoryでモデルデータを永続化する方法

September 22, 2019

from google.colab import drive
import google.colab
import googleapiclient.discovery
import googleapiclient.http
google.colab.auth.authenticate_user()
drive.mount('/content/gdrive')
drive_service = googleapiclient.discovery.build('drive', 'v3')

def save_file(saving_filename):
    file_metadata = {
        'name': saving_filename,
        'mimeType': 'application/octet-stream'
    }
    media = googleapiclient.http.MediaFileUpload(saving_filename, 
                                                 mimetype='application/octet-stream',
                                                 resumable=True)
    created = drive_service.files().create(body=file_metadata,
                                           media_body=media,
                                           fields='id').execute()

こいつをJupyter Notebookのセルにはっつけて実行すると二回認証をもとめられるのでこたえてやる.

保存したいときは, localにファイルを書きだしたあとに save_fileをよべばよい.

例:

torch.save(model.state_dict(), "model.pth")
save_file("model.pth")

教師データを読みだしたいときは, google driveのrootが ./gdrive/'My Drive'/にマウントされているので

!unzip ./gdrive/'My Drive'/trains.zip
!unzip ./gdrive/'My Drive'/vals.zip

などとしてやればよい.


© 2017-2024 mtphl