में प्रत्येक वर्ण को पुनर्प्राप्त करें मैं चरित्र स्तर पूर्वानुमान के लिए स्ट्रिंग टेंसर में वर्णों को पुनर्प्राप्त करने का प्रयास कर रहा हूं। ग्राउंड सच्चाई वे शब्द हैं जहां प्रत्येक चरित्र में शब्दकोश में एक आईडी होती है। मेरे पास स्ट्रिंग की लंबाई के अनुरूप एक टेंसर है।टेन्सफोर्लो - एक स्ट्रिंग टेंसर
अब, मुझे स्ट्रिंग टेंसर में प्रत्येक वर्ण प्राप्त करना होगा। संबंधित पदों की जांच करने के बाद, एक सरल पुनर्प्राप्ति निम्नानुसार हो सकती है। उदाहरण स्ट्रिंग है "यह"
a= tf.constant("This",shape=[1])
b=tf.string_split(a,delimiter="").values #Sparse tensor has the values array which stores characters
अब मैं "यह" यानी "टी एच मैं एस" अक्षरों के बीच में रिक्त स्थान के साथ एक स्ट्रिंग बनाना चाहते हैं। मुझे शुरुआत और अंत में अंतर की भी आवश्यकता है। मैं यह कैसे कर सकता हूं?
मैं की तरह नीचे
for i in xrange(b.dense_shape[1]): # b.dense_shape[1] has the length of string
x=b.values[i]
पात्रों के माध्यम से पुनरावृति करने की कोशिश की लेकिन पाश एक टेन्सर बजाय एक पूर्णांक की उम्मीद है।
उपरोक्त कार्यों को कैसे करें इस पर कोई विचार है? मुझे इससे संबंधित कोई दस्तावेज नहीं मिला (tf.string_split फ़ंक्शन के अलावा)। किसी भी सुझाव का स्वागत है। धन्यवाद
वास्तव में मेरी समस्या टेन्सर से अधिक पुनरावृति करने के लिए है, न कि प्रत्येक चरित्र नहीं है। मैं eval() का उपयोग नहीं कर सकता क्योंकि मुझे टेंसर के रूप में वर्णों की आवश्यकता है। मेरा मुख्य कार्य मूल स्ट्रिंग के बीच सम्मिलित रिक्त स्थान के साथ एक स्ट्रिंग टेंसर प्राप्त करना है। मेरा विचार वांछित स्ट्रिंग टेंसर प्राप्त करने के लिए वैकल्पिक रूप से रिक्त स्थान के साथ प्रत्येक वर्ण टेंसर को जोड़ना है। लेकिन मुझे यकीन नहीं है कि यह कैसे करें। –
कार्य दूसरे दृष्टिकोण के साथ आसान है। आप इसे निम्नानुसार कर सकते हैं: 'tf.string_split (tf.map_fn (lambda i: i +" ", b), delimiter =" ")। मान 'का अर्थ है कि आप प्रत्येक वर्ण के अंत में एक स्थान जोड़ते हैं और फिर फिर से परिणामस्वरूप टेंसर को लागू करें। – garciparedes
एक आकर्षण की तरह काम करता है। धन्यवाद –