LSTMで分類を行うために事前にトレーニングされた単語ベクトルを使用すると、テンソルフローで2GBより大きいルックアップテーブルを埋め込む方法を検討しました。これを行うにはtensorflowで大きな(> 2GB)埋め込みルックアップテーブルを扱うにはどうすればよいですか?
、私は以下のコードのようなルックアップテーブルを埋め込む作ってみました、
data = tf.nn.embedding_lookup(vector_array, input_data)
は、この値のエラーを得ました。コード上の
ValueError: Cannot create a tensor proto whose content is larger than 2GB
変数vector_arrayはnumpyのアレイであり、約14万のユニークトークンと各ワード100個の寸法単語ベクトルを含みます。
ありがとうございました
ご迷惑をおかけして申し訳ございません。試してみると、私はインタラクティブなセッションを使って個々の体重をチェックしましたが、それらはすべて0ではありませんでした。また、私は単にStackoverflowの回答をGoogleの従業員から与えられた93以上のアップボックスで引用していたので、何が間違っているのか分かりませんでした。おそらくコードやあなたのタイプミスがあります。あなたは確かにあなたが提案したことをすることができます変数を使用していないが、私はあなたがテンソルをそのように持続できるようになるとは思わない。私は変数を保存するので、将来このメモリ消費プロセスを実行する必要はありません。保存された変数を復元するだけです。 – ltt