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

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

新規登録して質問してみよう
ただいま回答率
85.50%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

1回答

3377閲覧

doc2vecの事前学習データを読み込もうとするとpickle data was truncatedというエラーが出てきてしまう

gamdam

総合スコア10

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2022/05/18 03:42

Googleコラボラトリーでdoc2vecの事前学習データを読み込もうとするとpickle data was truncatedというエラーが出てきてしまいます。解決策を教えていただきたいです。

from

1  model = Doc2Vec.load("model/jawiki.doc2vec.dbow300d.model")

UnpicklingError: pickle data was truncated

容量が大きかったため容量が大きかったため、modelというフォルダを作成しそこに事前学習データを取り込みました

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

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

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

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

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

AbeTakashi

2022/05/18 04:28

"UnpicklingError: pickle data was truncated"で検索すると色んな情報が出てきますが、この辺は確認して試されたのでしょうか? この辺を試してもダメだったのなら、試したことはすべて質問文に書くようにした方がいいです(質問文は追記が可能です)。回答者がアドバイスしたところで「それはやりました」となると、ただの無駄になりますので。 参考) https://teratail.com/help/question-tips これまでの質問もそうですが、的確な回答をお望みであれば、上のリンクをすべて読んでいただき、必要な情報をしっかり記載することをオススメします。
jbpb0

2022/05/18 06:56

当方のMacで、 https://yag-ays.github.io/project/pretrained_doc2vec_wikipedia/ から「jawiki.doc2vec.dbow300d.tar.bz2」を落として展開し、含まれてた四つのファイルを質問者さんと同じ「model」というディレクトリに置いて、質問のコードを実行しても、エラー出ませんでした 質問者さんがファイルを落とす時か展開する時に不完全で、ファイルが壊れてるのではないですかね 当方の環境 Python 3.7.7 gensim 3.8.3
gamdam

2022/05/18 08:38

ありがとうございます。同じディレクトリに入れようとしたのですが、Google colabだと、四つのファイルのうち2つしか同じディレクトリに表示されず、それ以外は同じディレクトリに表示されません。
jbpb0

2022/05/18 09:00 編集

> 四つのファイルのうち2つしか同じディレクトリに表示されず googleコラボで下記を実行したら、どうなりますか? 二つしかありませんか? !ls -l model
jbpb0

2022/05/18 08:59

「model」に「jawiki.doc2vec.dbow300d.model」しか無い場合は、 No such file or directory: 'model/jawiki.doc2vec.dbow300d.model.trainables.syn1neg.npy' というエラーが出ました そこで、「model」に「jawiki.doc2vec.dbow300d.model.trainables.syn1neg.npy」だけ追加したら、 No such file or directory: 'model/jawiki.doc2vec.dbow300d.model.wv.vectors.npy' というエラーが出ました そこで、「model」に「jawiki.doc2vec.dbow300d.model.wv.vectors.npy」も追加したら、 No such file or directory: 'model/jawiki.doc2vec.dbow300d.model.docvecs.vectors_docs.npy' というエラーが出ました そこで、「model」に「jawiki.doc2vec.dbow300d.model.docvecs.vectors_docs.npy」も追加したら、すなわち、「model」に四つのファイルがある状態に戻したら、エラーが出なくなりました ファイルが不足してる場合のエラーは、上記の通りで「pickle data was truncated」ではありませんでしたので、やはり質問者さんが実行してる環境ではファイルが壊れてるのではないですかね
gamdam

2022/05/18 09:03

自分はGoogleコラボ内に、modelというフォルダを作って、その中に四つのファイルをドラックアンドドロップで入れようとしたのですが二つしか入れることができませんでした。使っているのはWindowsです。よろしかったら、どのように一つのディレクトリにしたか教えていただいてもよろしいでしょうか?また、どの場所にそのコードも入れるのかも教えていただきたいです。 お手数かけますがよろしくお願いします。
jbpb0

2022/05/18 09:43 編集

私は、最初のコメントに書いたようにMacで実行して確認してます Mac内に「jawiki.doc2vec.dbow300d.tar.bz2」を落として、ダブルクリックしたら展開されて「jawiki.doc2vec.dbow300d」というディレクトリができて、その中に四つのファイルがありましたので、ディレクトリ名を「jawiki.doc2vec.dbow300d」から「model」に変えました こちらでも、それらの四つのファイルをgoogleコラボにアップロードして、どうなるか確認してみます
jbpb0

2022/05/18 09:15

> どの場所にそのコードも入れるのか 「そのコード」とは、 !ls -l model のことですか? もしそうなら、質問に記載のコード(model = Doc2Vec.load(...)のすぐ上に追加してみてください
gamdam

2022/05/18 09:28

ありがとうございます。ファイルが以下のjawiki.doc2vec.dbow300d.model、jawiki.doc2vec.dbow300d.model.wv.vectors.npyの 2つしか入れれなかったため、他のファイルがありませんという上記のエラーが実際に出ました。他の2つも同じようにドラックアンドドロップしましたが、入れることができませんでした。
jbpb0

2022/05/18 09:34

> 他のファイルがありませんという上記のエラーが実際に出ました。 「pickle data was truncated」と、両方出たのですか? 当方でMacで確認した場合は、上に書いた通り「No such file or directory...」しか出ませんでしたが
gamdam

2022/05/18 09:35

pickle data was truncatedはもう出なくなりました! No such file or directory...のみでています
jbpb0

2022/05/18 09:40

どこにアップロードしました? googleコラボにですか? それとも、googleドライブにですか?
gamdam

2022/05/18 09:49

Googleコラボにアップロードしました ソースコードが書けるところの左側にファイルマークがあるので、そこでmodelのフォルダを作りました。そこにファイルをドラックアンドドロップで入れようとしました。
jbpb0

2022/05/18 09:52 編集

四つのファイルをgoogleコラボにアップロードし始めましたが、サイズが220MBくらいの「jawiki.doc2vec.dbow300d.model」をアップロードするのに20分くらいかかりました サイズが1.4GBくらいの「jawiki.doc2vec.dbow300d.model.docvecs.vectors_docs.npy」は、20分で1/6くらいしかアップロードできてないので、全部終わるのに2時間くらいかかりそう 他の二つはサイズが2.2GBくらいあるので、それぞれ3時間くらいかかりそう したがって、四つのファイルを全部アップロードすると、当方の条件では8時間以上かかりそうなので、止めました ネットワークの速度に依存する話なので、質問者さんの条件ではもっと早く終わるかもしれませんが
gamdam

2022/05/18 09:57

jawiki.doc2vec.dbow300d.modelとjawiki.doc2vec.dbow300d.model.docvecs.vectors_docs.npyはおなじディレクトリに入れれたのですが、私の場合は他のがアップロードできないのですが、同じディレクトリに入れれそうですか?
gamdam

2022/05/18 10:05

Googleコラボでは、解凍したディレクトリごとアップロードできますか?
jbpb0

2022/05/18 10:10 編集

ご存じだと思いますが、下記に書かれてるように、googleコラボはセッションが終了(ランタイムがリセット)したら、アップロードしたファイルは全部消えてしまいます https://kenko-keep.com/12hour-90minit/ もし質問者さんのネットワーク環境が良くて、ファイルのアップロードが当方よりも格段に早く終わって1時間くらいで終わるとしても、セッションが終了して再度実行したいとなったらまた1時間かけてアップロードすることになります もし当方と同じくらい時間がかかるなら、最アップロードに8時間以上かかります そんなの時間のムダなので、googleドライブにアップロードして、googleドライブをコラボにマウントして使う方がいいですよ googleドライブにアップロードしたデータは、コラボとは無関係なので消えません https://interface.cqpub.co.jp/ail01/ の、「2.ファイルをアップロードする」の「〇 Googleドライブへアップロード」と、「3.ファイルのパスを確認する」の「〇 マイドライブ・フォルダのパス」を見てください
gamdam

2022/05/18 10:15

一度ためしてみたいと思います。 協力していただいてありがとうございます!
jbpb0

2022/05/18 10:27

> Googleコラボでは、解凍したディレクトリごとアップロードできますか? googleコラボは、たぶんアップロード時にはファイルを指定しないとダメだったような googleドライブは、ディレクトリ丸ごとアップロードできます http://one-u.jp/gsuite/2019/08/12/google-drive-howto/#index_id2 の「Googleドライブの基本的な使い方をご紹介!」の「【使い方1】ファイルをアップロードする方法」を見てください 「フォルダのアップロード」がそれです
gamdam

2022/05/18 10:54

フォルダをアップロードしたら、model = Doc2Vec.load("model/jawiki.doc2vec.dbow300d.model")はパスを変えるだけで大丈夫ですか?
jbpb0

2022/05/18 12:06

> model = Doc2Vec.load("model/jawiki.doc2vec.dbow300d.model")はパスを変えるだけで大丈夫ですか? はい
guest

回答1

0

当方のMacで、
日本語WIKIPEDIAで学習したDOC2VECモデル
から「jawiki.doc2vec.dbow300d.tar.bz2」を落として展開し、含まれてた四つのファイルを質問者さんと同じ「model」というディレクトリに置いて、質問のコードを実行しても、エラー出ませんでした

Googleコラボラトリーでdoc2vecの事前学習データを読み込もうとすると

google colabにファイルがちゃんとアップロードできてないのかも

投稿2022/07/29 09:18

jbpb0

総合スコア7651

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問