`tensorflow_graphics.shape.check_static(...)` throwing error in TF2
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 42/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Ferma
- Stack tecnologico
- python, tensorflow
- Ambito
- computer-graphics, machine-learning
Direzione di ricerca
Inizia riproducendo il failure di TensorFlow 2 in graph-mode con il layer RandomRot segnalato e l’utilizzo di Dataset. Leggi tensorflow_graphics/geometry/transformation/rotation_matrix_3d.py intorno a from_euler e tensorflow_graphics/util/shape.py intorno a check_static e _get_dim; il lavoro è completato quando lo stesso percorso di compilazione del grafo non solleva più l’AttributeError segnalato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
I was writing a data augmentation layer for a PointNet implementation and ran into what appears to be a bug in tensorflow_graphics.shape.check_static(...), as seen on this line.
Offending layer:
class RandomRot(Layer):
def __init__(self):
super(RandomRot, self).__init__()
def build(self, input_shape):
self.s = tf.constant([input_shape[-1],])
def call(self, inputs, training=None):
if not training: return inputs
r = tf.random.uniform(
shape=self.s,
minval=0,
maxval=6.28,
)
return tf.linalg.matmul(inputs,from_euler(r))
Error message:
AttributeError: in user code:
<ipython-input-135-d11754641da6>:81 call *
self.x = self.r(self.x,training)
<ipython-input-130-07bfe7ac5ab9>:25 call *
return tf.linalg.matmul(inputs,from_euler(r))
/usr/local/lib/python3.6/dist-packages/tensorflow_graphics/geometry/transformation/rotation_matrix_3d.py:201 from_euler *
shape.check_static(
/usr/local/lib/python3.6/dist-packages/tensorflow_graphics/util/shape.py:206 check_static *
if _get_dim(tensor, axis) != value:
/usr/local/lib/python3.6/dist-packages/tensorflow_graphics/util/shape.py:135 _get_dim *
return tensor.shape[axis].value
AttributeError: 'int' object has no attribute 'value'
It appears that check_static is expecting each element from .shape to be a tensor, but in TF2 they're just ints. If I comment out check_static from from_euler, the function works fine. Strangely enough, it seems to work fine for tensors in eager execution, and only seems to throw errors when using Dataset objects with graph compilation.
- Lingua principale
- Python
- Stelle
- 2.8k
- Fork
- 374
- Merge medio
- 5g 9h
- PR unite (30g)
- 1
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di tensorflow/graphics
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 62/100
tensorflow/graphics#468 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
tensorflow/graphics#5337 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 25/100
tensorflow/graphics#730 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
tensorflow/graphics#729 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 10/100
tensorflow/graphics#724 ·
Tutte le issue di tensorflow/graphics
Issue simili
-
bug drawing-tools
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
cofade/open-garden-planner#827 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
bug documentation good first issue help wanted testing
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 1-3 ore Idoneità per principianti 88/100
hololinked-dev/hololinked#213 ·
-
Show evidence time and supersede warnings in the memory inspectorForse già presa @Sinchanak-212 l’ha presa oggi. Apertaarea: ux good first issue priority: medium
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100