Ist es möglich, dies elegant zu tun?Schreiben und Lesen SparseTensor zu und von einer tfrecord Datei
Momentan kann ich nur daran denken, die Indizes (tf.int64), values (tf.float32) und shape (tf.int64) des SparseTensors in 3 separaten Features zu speichern (die ersten beiden sind VarLenFeature) und die letzte ist FixedLenFeature). Das scheint wirklich beschwerlich zu sein.
Jede Beratung ist willkommen!
Update 1
unter Meine Antwort für den Aufbau einer Berechnung Graph nicht geeignet ist (b/c den Inhalt des spärlichen Tensor über sess.run werden müssen extrahiert(), die viel Zeit kostet, wenn genannt mit tf.deserialize_many_sparse
wiederholt.)
Inspiriert von mrry's answer, ich denke, vielleicht können wir die Bytes von tf.serialize_sparse
erzeugt erhalten so später können wir die SparseTensor erholen. Aber tf.serialize_sparse
ist nicht in reinem Python implementiert (es ruft die externe Funktion SerializeSparse
), was bedeutet, dass wir immer noch sess.run()
verwenden müssen, um die Bytes zu erhalten. Wie kann ich eine reine Python-Version von SerializeSparse
bekommen? Vielen Dank.