質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

PyTorch

PyTorchは、オープンソースのPython向けの機械学習ライブラリ。Facebookの人工知能研究グループが開発を主導しています。強力なGPUサポートを備えたテンソル計算、テープベースの自動微分による柔軟なニューラルネットワークの記述が可能です。

Q&A

解決済

1回答

2646閲覧

Google Colabでtorch.save結果がアーカイブになる(pytorch)

quiqui59911225_

総合スコア2

Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

PyTorch

PyTorchは、オープンソースのPython向けの機械学習ライブラリ。Facebookの人工知能研究グループが開発を主導しています。強力なGPUサポートを備えたテンソル計算、テープベースの自動微分による柔軟なニューラルネットワークの記述が可能です。

0グッド

0クリップ

投稿2020/08/13 06:34

やりたいこと

Google Colaboratoryでpytorchを使用した深層学習のモデルを学習し、
学習後の重みをtorch.saveで保存したファイルをローカルにダウンロードしたいです。

環境

Google Colaboratory
Mac
PyTorch

発生しているエラー

Colabで保存した重みファイル(weights.pth)をローカルにダウンロードする時にzip archiveファイルになってしまいます。

試したこと

Googleドライブがそういう仕様なのかと思い、

  1. Google Colaboratoryでpytorchを使用した深層学習のモデルを学習し、重みをweights.pthで保存
  2. ローカルにダウンロードせず、そのままColabでweights.pthの重みを読み込む

ことをしたところエラーなく重みを読み込むことができました。

python

1net_loaded = Net() #モデルのクラス 2net_loaded.load_state_dict(torch.load("./weights.pth", map_location=torch.device("cpu")))

しかし、ローカルにweights.pthをダウンロードし、同じようにすると、以下のエラーが出ます。

raise RuntimeError("{} is a zip archive (did you mean to use torch.jit.load()?)".format(f.name)) RuntimeError: weights.pth is a zip archive (did you mean to use torch.jit.load()?)

Macを使っているのですが、ダウンロードした.pthファイルの情報を見ると、「書類」というファイルになっています。

圧縮フォルダなどであれば展開すればいいということがわかるのですが、
アーカイブファイルというものはどう処理・展開すれば良いでしょうか?

宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

quiqui59911225_

2020/08/13 08:13

googleドライブから、アーカイブファイルを選択し、「アプリで開く」→「Zip, Unzip」というもので解凍はできましたが、以下のような結果になりました。 Filename Filesize archive/data.pkl 1,011 archive/version 2 archive/data/2460613184 9,600 archive/data/2460613264 24 archive/data/2460613344 409,600 archive/data/2460613424 64 archive/data/2460613504 40 archive/data/2460613584 10,240 archive/data/2460613664 1,024 archive/data/2460613824 1,800 どのファイルも中身が文字化けで見えません(バイナリだからでしょうか)。 そもそもtorch.saveで単一のファイルになるはずが、なぜかアーカイブファイルになり、それを回答すると複数のファイルが出てきています....。 何かわかりますでしょうか?
guest

回答1

0

ベストアンサー

Hi, today, I take the same problem, now, I handle it.

It's very easy!

You should update your torch to new stable version (1.6.0) in your local (mac) and add a parameter in your code (let model run on your 'cpu') like this:

torch.load('/Users/***/****/model.pt',map_location=torch.device('cpu'))

then, it works!

投稿2020/08/13 15:32

編集2020/08/13 15:58
bwnjnOEI

総合スコア9

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

quiqui59911225_

2020/08/14 05:48

Thanks! My code changed as you said, and it worked. Please complement for Japanese. 日本語で回答を要約します。 ローカルのPC(自分の場合はMac)にインストールしているPyTorchのバージョンを1.6.0(安定バージョン)にすることで解決できました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問