クラスインスタンスのリストが与えられたら、tf.tensorを使用してインデックスを作成する必要があります。例えば:TensorFlowテンソルを使用してクラスインスタンスのリストをインデックスする方法
Class Something():
def __init__(self):
self.a = 1
self.b = 2
list = [Something() for a in range(0, 10)]
index_queue = tf.train.range_input_producer(len(list))
index = index_queue.dequeue()
result = list[index]
tensor = function_that_returns_tensor(result)
with tf.Session() as sess:
sess.run(tensor)
上記のコードは、次のエラーを与える:TypeError: list indices must be integers, not Tensor
そしてtf.gather(list, index)
を使用すると、次のエラーを与える:
TypeError: Expected binary or unicode string, got <__main__.Something object at 0x7f4529fae2b0>
すべてのヘルプは高く評価されるだろう。ありがとう!
なぜtf.constant(..)を使用しますか? 'list [2]'は正常に動作します... –
私は質問を修正しました。したがって、インデックスはグラフの実行中にある値を持つtf.tensorです。 –