Apply gradients with distributed_shampoo fails
まだ誰も着手していません。
評価
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 初心者へのやさしさ
- 35/100
- issue の種類
- バグ
- 明瞭さ
- おおむね明確
- 活発さ
- 停滞
- 技術スタック
- python, tensorflow
調査の方向性
The traceback points to lingvo/core/distributed_shampoo.py, in _create_slots around line 336, where a TensorFlow variable is used as a dictionary key. Start by reading that method and the TensorFlow 2.7 variable hashing behavior described by the error. Confirm the failure with the reported apply_gradients() call; done means distributed shampoo applies gradients successfully with TensorFlow 2.7.1.
索引モデルが issue の本文から書いたものです。
説明
Hello,
I am trying to run distributed shampoo implemented in lingvo. I have the compatible tensorflow version with lignvo.
Python 3.8.12 | packaged by conda-forge | (default, Oct 12 2021, 21:59:51)
[GCC 9.4.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> tf.__version__
'2.7.1'
>>>
But when I do opt.apply_gradients(), it throws an error about tf.variable being unhashable. apply_gradients() works fine with other optimizers.
File "program.py", line 177, in train_step
optimizer.apply_gradients(
File "/home/ubuntu/anaconda3/envs/tensorflow2_p38/lib/python3.8/site-packages/tensorflow/python/training/optimizer.py", line 605, in apply_gradients
self._create_slots(var_list)
File "/home/ubuntu/anaconda3/envs/tensorflow2_p38/lib/python3.8/site-packages/lingvo/core/distributed_shampoo.py", line 336, in _create_slots
self._partitioner_metadata[v] = TensorPartitioner.partition_metadata(
File "/home/ubuntu/anaconda3/envs/tensorflow2_p38/lib/python3.8/site-packages/tensorflow/python/ops/variables.py", line 1085, in __hash__
raise TypeError(
TypeError: Variable is unhashable. Instead, use variable.ref() as the key. (Variable: <tf.Variable 'conv2d_23/kernel:0' shape=(7, 7, 8, 32) dtype=float32, numpy=
array([[[[-6.29460454e-01, -4.73986834e-01, -3.37867022e-01, ...,
5.98385096e-01, -1.81423143e-01, 4.59209830e-02],
[ 1.96352646e-01, -1.11289904e-01, 3.36863637e-01, ...,
Appreciate any help to fix the issue.
- 主要言語
- Python
- スター
- 2.9k
- フォーク
- 452
- PR マージ指標
- 30日以内にマージされた PR はありません
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートなし
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
tensorflow/lingvo のほかの issue
-
About inverseAugオープン
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
tensorflow/lingvo#370 · コメント 1 件 ·
-
難易度 4/5 1〜2日 初心者へのやさしさ 35/100
tensorflow/lingvo#359 · コメント 1 件 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 15/100
tensorflow/lingvo#356 · リアクション 5 件 ·
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
tensorflow/lingvo#333 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 35/100
tensorflow/lingvo#332 · コメント 1 件 ·
tensorflow/lingvo の issue をすべて見る
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
メンテナーはふだん 1 日以内に返信
-
With emit_ontology_keys, one ontology key change is reported as two errors (keys and keys_digest)対応中かも @rvandewater が今日担当しました。 オープンbug priority:low
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
-
難易度 1/5 1〜3時間 初心者へのやさしさ 84/100
iausathub/satchecker#286 ·
メンテナーはふだん 1 日以内に返信
-
bug test
難易度 2/5 1〜3時間 初心者へのやさしさ 82/100
OpenAssetIO/OpenAssetIO#1527 ·
-
automated endpoint-dead needs-curation
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
almanac-data/climate-almanac#128 ·
メンテナーはふだん 1 日以内に返信