की टेन्सर आरंभ तो मैं एक टेन्सरTensorFlow लोगों
X = tf.placeholder("float", [None, 5])
तो मैं स्तंभों की संख्या लेकिन पंक्तियों की संख्या नहीं पता है कि मान लीजिए। मैं, आयाम के लोगों nrows x 1
अब कोड का यह ब्लॉक काम नहीं करता है का एक वेक्टर प्रारंभ करने में
o = tf.ones(shape=(tf.shape(X)[0], 1))
==> TypeError: List of Tensors when single Tensor expected
ना ही,
o = tf.ones(shape=(X.get_shape()[0].value, 1))
==> TypeError: Input 'dims' of 'Fill' Op has type
string that does not match expected type of int32.
अब जरूरत है, मैं ने पाया है एक ही रास्ता है कि इसके आसपास पाने के लिए वास्तव में मेरे वेक्टर को प्लेसहोल्डर बनाना है,
o = tf.placeholder(dtype=tf.float32, shape=[None, 1])
और मेरे feed_dict
में उचित आकार वाले लोगों की एक संख्यात्मक सरणी में गुजरने के लिए। लेकिन यह समाधान मुझे सुरुचिपूर्ण और प्लेसहोल्डर के इच्छित उपयोग के रूप में नहीं मारता है। मैं यहां गलत हो सकता हूं, लेकिन निश्चित रूप से एक बेहतर तरीका है।
o = tf.ones(shape=tf.pack([tf.shape(X)[0], 1]))
कारण आप में त्रुटियां थीं कि TensorFlow आकार पूर्णांक या एक टेन्सर link की एक सूची होने की उम्मीद है है:
ग्रेट धन्यवाद! आपके समाधान ने – user1936768
काम किया है tf.pack अब 'tensorflow> = 1.00' –
द्वारा समर्थित नहीं है, हालांकि मुझे लगता है कि आप 'स्टैक' का उपयोग कर सकते हैं? –