Google ने हाल ही में क्लोल्ड एमएल, https://cloud.google.com/ml/ की घोषणा की और यह बहुत उपयोगी है। हालांकि, एक सीमा यह है कि एक Tensorflow कार्यक्रम के इनपुट/आउट जीएस का समर्थन करना चाहिए: //।क्लाउड एमएल के लिए Google संग्रहण (जीएस) रैपर फ़ाइल इनपुट/आउट?
यदि हम फ़ाइलों को पढ़ने/लिखने के लिए सभी tensorflow एपीआईएस का उपयोग करते हैं, तो यह ठीक होना चाहिए, क्योंकि ये एपीआई gs://
का समर्थन करते हैं।
हालांकि, अगर हम मूल फ़ाइल का उपयोग इस तरह के open
के रूप में, यह काम आईओ एपीआई, यह नहीं है क्योंकि वे gs://
उदाहरण के लिए समझ में नहीं आता:
with open(vocab_file, 'wb') as f:
cPickle.dump(self.words, f)
इस कोड में काम नहीं करेगा Google क्लाउड एमएल।
हालांकि, सभी मूल फ़ाइल IO API को tensorflow API या Google संग्रहण पायथन API में संशोधित करना वास्तव में कठिन है। क्या ऐसा करने का कोई आसान तरीका है? मूल फ़ाइल IO के शीर्ष पर Google स्टोरेज सिस्टम, gs://
का समर्थन करने के लिए कोई रैपर?
जैसा कि यहां बताया गया है Pickled scipy sparse matrix as input data?, शायद हम file_io.read_file_to_string('gs://...')
का उपयोग कर सकते हैं, लेकिन फिर भी यह महत्वपूर्ण कोड संशोधन की आवश्यकता है।
धन्यवाद! यह बहुत अच्छा लग रहा है। मुझे लगता है कि Tensorflow file_io भी एक समाधान हो सकता है। 'file_io.FileIO (file_path, mode = "w") f' के रूप में। क्या आपको लगता है कि यह भी ठीक है? मैंने अभी तक पूरी तरह से परीक्षण नहीं किया है। –
मैंने आपके प्रश्न का अर्थ विशेष कार्यों के साथ सभी खुले() फ़ंक्शन कॉल को प्रतिस्थापित करने से बचने के लिए किया है। यदि ऐसा नहीं है, यानी, आप कॉल को खोलने के लिए प्रतिस्थापित करने के इच्छुक हैं(), तो gcsio.open_local_or_gcs और file_io.FileIO बहुत समान हैं, केवल आपके द्वारा लाई जाने वाली निर्भरताओं को प्रभावित करता है - file_io पहले ही टीएफ का हिस्सा है। लेकिन FileIO कुछ गैर-मानक मोड का उपयोग करता है, जिससे आपके निर्णय को भी प्रभावित हो सकता है। – rhaertel80