यूनिकोड स्ट्रिंग्स के एक सेट को 'एन्कोड' विधि का उपयोग करके UTF8-एन्कोडेड स्ट्रिंग के रूप में दर्शाया जा सकता है।
और पढ़ें:TensorFlow क्या है और Keras कैसे TensorFlow के साथ तंत्रिका नेटवर्क बनाने के लिए काम करता है?
मॉडल जो प्राकृतिक भाषा को संसाधित करते हैं वे विभिन्न भाषाओं को संभालते हैं जिनमें अलग-अलग वर्ण सेट होते हैं। यूनिकोड को मानक एन्कोडिंग प्रणाली के रूप में माना जाता है जिसका उपयोग लगभग सभी भाषाओं के चरित्र का प्रतिनिधित्व करने के लिए किया जाता है। प्रत्येक वर्ण को एक अद्वितीय पूर्णांक कोड बिंदु की सहायता से एन्कोड किया गया है जो 0 और 0x10FFFF के बीच है। यूनिकोड स्ट्रिंग शून्य या अधिक कोड मानों का एक क्रम है।
आइए समझते हैं कि पायथन का उपयोग करके यूनिकोड स्ट्रिंग्स का प्रतिनिधित्व कैसे करें, और यूनिकोड समकक्षों का उपयोग करने वालों में हेरफेर करें। सबसे पहले, हम यूनिकोड स्ट्रिंग्स को मानक स्ट्रिंग ऑप्स के यूनिकोड समकक्षों की सहायता से स्क्रिप्ट डिटेक्शन के आधार पर टोकन में अलग करते हैं।
हम नीचे दिए गए कोड को चलाने के लिए Google सहयोग का उपयोग कर रहे हैं। Google Colab या Colaboratory ब्राउज़र पर पायथन कोड चलाने में मदद करता है और इसके लिए शून्य कॉन्फ़िगरेशन और GPU (ग्राफ़िकल प्रोसेसिंग यूनिट) तक मुफ्त पहुंच की आवश्यकता होती है। जुपिटर नोटबुक के ऊपर कोलैबोरेटरी बनाई गई है।
print("A set of Unicode strings which is represented as a UTF8-encoded string") batch_utf8 = [s.encode('UTF-8') for s in[u'hÃllo', u'What is the weather tomorrow',u'Göödnight', u'😊']] batch_chars_ragged = tf.strings.unicode_decode(batch_utf8, input_encoding='UTF-8') for sentence_chars in batch_chars_ragged.to_list(): print(sentence_chars) print("Dense tensor with padding are printed") batch_chars_padded = batch_chars_ragged.to_tensor(default_value=-1) print(batch_chars_padded.numpy()) print("Converting to sparse matrix") batch_chars_sparse = batch_chars_ragged.to_sparse()
कोड क्रेडिट:https://www.tensorflow.org/tutorials/load_data/unicode
आउटपुट
A set of Unicode strings which is represented as a UTF8-encoded string [104, 195, 108, 108, 111] [87, 104, 97, 116, 32, 105, 115, 32, 116, 104, 101, 32, 119, 101, 97, 116, 104, 101, 114, 32, 116, 111, 109, 111, 114, 114, 111, 119] [71, 246, 246, 100, 110, 105, 103, 104, 116] [128522] Dense tensor with padding are printed [[ 104 195 108 108 111 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1] [87 104 97 116 32 105 115 32 116 104 101 32 119 101 97 116 104 101 114 32 116 111 109 111 114 114 111 119] [71 246 246 100 110 105 103 104 116 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1] [128522 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1]] Converting to sparse matrix
स्पष्टीकरण
- जब कई स्ट्रिंग्स को डिकोड किया जाता है, तो प्रत्येक स्ट्रिंग में वर्णों की संख्या समान नहीं हो सकती है।
- परिणाम एक tf.RaggedTensor होगा, जहां अंतरतम आयाम की लंबाई भिन्न होती है और यह भिन्नता प्रत्येक स्ट्रिंग में वर्णों की संख्या पर निर्भर करती है।
- इस tf.RaggedTensor का सीधे उपयोग किया जा सकता है, या इसे tf.RaggedTensor.to_tensor या tf.RaggedTensor.to_sparse का उपयोग करके tf.SparseTensor विधियों का उपयोग करके पैडिंग के साथ घने tf.Tensor में परिवर्तित किया जा सकता है।