Fashion-MNIST Zalando को लेख छविहरूको डेटासेट हो, जसमा 60,000 उदाहरणहरूको प्रशिक्षण सेट र 10,000 उदाहरणहरूको परीक्षण सेट समावेश छ। प्रत्येक उदाहरण 28×28 ग्रेस्केल छवि हो, जुन 10 कक्षाको लेबलसँग सम्बन्धित छ। डेटासेटले बेन्चमार्किङ मेसिन लर्निङ एल्गोरिदमहरूको लागि मूल MNIST डाटासेटको लागि प्रत्यक्ष ड्रप-इन प्रतिस्थापनको रूपमा कार्य गर्दछ, यसको जटिलता र फेसन-सम्बन्धित छविहरूमा परिवर्तनशीलताका कारण थप चुनौतीपूर्ण विकल्प प्रदान गर्दछ।
गुगल क्लाउडको एआई प्लेटफर्ममा फेसन-MNIST डाटासेटलाई व्यावहारिक रूपमा प्रयोग गर्न, डेटा तयारी, मोडेल प्रशिक्षण, परिनियोजन, र मूल्याङ्कन समावेश गर्ने धेरै संरचित चरणहरू पालना गर्नुपर्छ। यी प्रत्येक चरणहरूमा डेटासेट र गुगल क्लाउड वातावरण दुवैको विस्तृत बुझाइ आवश्यक हुन्छ।
चरण 1: गुगल क्लाउड वातावरण सेट अप गर्दै
डाटासेट प्रयोग गर्नु अघि, तपाईंसँग Google क्लाउड खाता छ भनी सुनिश्चित गर्नुहोस्। Google क्लाउड कन्सोलमा नयाँ परियोजना सेटअप गर्नुहोस्। आफ्नो परियोजनाको लागि बिलिङ सक्षम गर्नुहोस् र Cloud AI प्लेटफर्म API सक्रिय गर्नुहोस्। यो सेटअप महत्त्वपूर्ण छ किनकि यसले तपाईंलाई मेसिन लर्निङ कार्यहरूको लागि Google को बलियो पूर्वाधारको लाभ उठाउन अनुमति दिन्छ।
1. गुगल क्लाउड प्रोजेक्ट बनाउनुहोस्: गुगल क्लाउड कन्सोलमा नेभिगेट गर्नुहोस् र नयाँ परियोजना सिर्जना गर्नुहोस्। सजिलो पहिचानको लागि तपाइँको परियोजना को लागी एक अद्वितीय नाम असाइन गर्नुहोस्।
2. एपीआई सक्षम गर्नुहोस्: API र सेवाहरूको ड्यासबोर्डमा जानुहोस् र क्लाउड एआई प्लेटफर्म API सक्षम गर्नुहोस्। गुगल क्लाउडमा मेसिन लर्निङ मोडेलहरू प्रयोग गर्नका लागि यो API आवश्यक छ।
3. क्लाउड SDK स्थापना गर्नुहोस्: आफ्नो स्थानीय मेसिनमा Google Cloud SDK डाउनलोड र स्थापना गर्नुहोस्। यो SDK ले `gcloud` कमाण्ड-लाइन उपकरण प्रदान गर्दछ, जुन तपाईँको Google क्लाउड स्रोतहरूसँग अन्तरक्रिया गर्न आवश्यक छ।
चरण 2: फेसन-MNIST डाटासेट तयार गर्दै
Fashion-MNIST डाटासेट आधिकारिक GitHub भण्डार सहित विभिन्न स्रोतहरूबाट पहुँच गर्न सकिन्छ। यो Google क्लाउडमा प्रशिक्षण मोडेलहरूको लागि सही ढाँचामा छ भनी सुनिश्चित गर्न डेटासेटलाई पूर्व-प्रक्रिया गर्न आवश्यक छ।
1. डाटासेट डाउनलोड गर्नुहोस्: डेटासेट CSV र NumPy arrays सहित बहु ढाँचाहरूमा उपलब्ध छ। TensorFlow प्रयोगकर्ताहरूका लागि, यसलाई `tensorflow.keras.datasets` मोड्युल प्रयोग गरेर सीधै लोड गर्न सकिन्छ।
python from tensorflow.keras.datasets import fashion_mnist (train_images, train_labels), (test_images, test_labels) = fashion_mnist.load_data()
2. डाटा प्रिप्रोसेसिing: तस्विरहरूको पिक्सेल मानहरूलाई दायरा [0, 1] मा 255 ले भाग गरेर सामान्य बनाउनुहोस्। यो चरण प्रशिक्षणको क्रममा मोडेलले प्रभावकारी रूपमा रूपान्तरण भएको सुनिश्चित गर्नको लागि महत्त्वपूर्ण छ।
python train_images = train_images/255.0 test_images = test_images/255.0
3. पुन: आकार र डेटा वृद्धि: मोडेल वास्तुकलामा निर्भर गर्दै, तपाईंले डेटालाई पुन: आकार दिन आवश्यक पर्दछ। थप रूपमा, मोडेलको सुदृढता बढाउनको लागि रोटेशन, जुम, र तेर्सो फ्लिप जस्ता डेटा वृद्धि प्रविधिहरू विचार गर्नुहोस्।
चरण 3: मोडेल विकास
फेसन-MNIST डाटासेटको लागि उपयुक्त मेसिन लर्निङ मोडेल विकास गर्नुहोस्। कन्भोलुसनल न्यूरल नेटवर्कहरू (CNNs) छवि वर्गीकरण कार्यहरूमा तिनीहरूको प्रभावकारिताको कारण लोकप्रिय छनोट हो।
1. मोडेल वास्तुकला परिभाषित गर्नुहोस्: CNN मोडेल परिभाषित गर्न TensorFlow वा PyTorch प्रयोग गर्नुहोस्। एक सामान्य वास्तुकलाले अधिकतम-पुलिंग तहहरू, र पूर्ण रूपमा जडान गरिएको घना तहहरू पछि धेरै कन्भोलुसनल तहहरू समावेश गर्न सक्छ।
python model = tf.keras.Sequential([ tf.keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)), tf.keras.layers.MaxPooling2D((2, 2)), tf.keras.layers.Conv2D(64, (3, 3), activation='relu'), tf.keras.layers.MaxPooling2D((2, 2)), tf.keras.layers.Flatten(), tf.keras.layers.Dense(64, activation='relu'), tf.keras.layers.Dense(10, activation='softmax') ])
2. मोडेल कम्पाइल गर्नुहोस्: उपयुक्त अप्टिमाइजर, हानि प्रकार्य र मेट्रिक्स छान्नुहोस्। बहु-वर्ग वर्गीकरणको लागि, `sparse_categorical_crossentropy` सामान्यतया प्रयोग गरिन्छ।
python model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
3. मोडेललाई तालिम दिनुहोस्: प्रशिक्षण डेटामा मोडेल फिट गर्नुहोस्। मोडेलको कार्यसम्पादन निगरानी गर्न र ओभरफिटिंगबाट बच्न प्रमाणीकरण डेटा प्रयोग गर्नुहोस्।
python model.fit(train_images, train_labels, epochs=10, validation_data=(test_images, test_labels))
चरण 4: गुगल क्लाउड एआई प्लेटफर्ममा मोडेल तैनात गर्दै
एक पटक मोडेल प्रशिक्षित भएपछि, अर्को चरण स्केलेबल भविष्यवाणीहरूको लागि गुगल क्लाउड एआई प्लेटफर्ममा डिप्लोय गर्नु हो।
1. मोडेल बचत गर्नुहोस्: प्रशिक्षित मोडेललाई गुगल क्लाउडसँग मिल्दो ढाँचामा निर्यात गर्नुहोस्, जस्तै TensorFlow SavedModel।
python model.save('fashion_mnist_model')
2. गुगल क्लाउड भण्डारणमा मोडेल अपलोड गर्नुहोस्: गुगल क्लाउड भण्डारण बाल्टीमा मोडेल अपलोड गर्न `gsutil` कमाण्ड-लाइन उपकरण प्रयोग गर्नुहोस्।
bash gsutil cp -r fashion_mnist_model gs://your-bucket-name/
3. एआई प्लेटफर्ममा मोडेल सिर्जना गर्नुहोस्: गुगल क्लाउड कन्सोलमा, एआई प्लेटफर्म > मोडेलहरूमा नेभिगेट गर्नुहोस् र नयाँ मोडेल सिर्जना गर्नुहोस्। मोडेल नाम र क्षेत्र निर्दिष्ट गर्नुहोस्।
4. मोडेल संस्करण प्रयोग गर्नुहोस्: SavedModel को क्लाउड भण्डारण मार्ग निर्दिष्ट गरेर मोडेलको नयाँ संस्करण सिर्जना गर्नुहोस्। तपाईंको भविष्यवाणी आवश्यकताहरूमा आधारित मेसिन प्रकार र स्केलिंग विकल्पहरू कन्फिगर गर्नुहोस्।
5. परिनियोजन परीक्षण गर्नुहोस्: तैनाथ गरिएको मोडेल परीक्षण गर्न AI प्लेटफर्मको भविष्यवाणी सेवा प्रयोग गर्नुहोस्। तपाईंले मोडेलको अन्तिम बिन्दुमा छवि डेटाको साथ HTTP अनुरोधहरू पठाउन र भविष्यवाणीहरू प्राप्त गर्न सक्नुहुन्छ।
python from google.cloud import aiplatform project = 'your-project-id' endpoint_id = 'your-endpoint-id' location = 'us-central1' aiplatform.init(project=project, location=location) endpoint = aiplatform.Endpoint(endpoint_id=endpoint_id) # Example prediction response = endpoint.predict(instances=[test_images[0].tolist()]) print(response)
चरण 5: मोडेल मूल्याङ्कन र पुनरावृत्ति
परिनियोजन पछि, यो मोडेलको कार्यसम्पादन मूल्याङ्कन गर्न र सटीकता र दक्षता सुधार गर्न डिजाइनमा पुनरावृत्ति गर्न महत्त्वपूर्ण छ।
1. मोडेल प्रदर्शन निगरानी: विलम्बता, थ्रुपुट, र भविष्यवाणी शुद्धता जस्ता मोडेल प्रदर्शन मेट्रिक्स ट्र्याक गर्न Google क्लाउडको निगरानी उपकरणहरू प्रयोग गर्नुहोस्। यो डाटा बाधाहरू र सुधारका लागि क्षेत्रहरू पहिचान गर्न अमूल्य छ।
2. A/B परीक्षण: विभिन्न मोडेल संस्करणहरू तुलना गर्न A/B परीक्षण सञ्चालन गर्नुहोस्। यो दृष्टिकोणले परिवर्तनहरूको प्रभाव बुझ्न र उत्कृष्ट प्रदर्शन गर्ने मोडेल चयन गर्न मद्दत गर्दछ।
3. निरन्तर एकीकरण र तैनाती (CI/CD): नयाँ मोडेल संस्करणहरूको प्रयोगलाई स्वचालित गर्न CI/CD अभ्यासहरू लागू गर्नुहोस्। यो सेटअपले सुनिश्चित गर्दछ कि सुधारहरू उत्पादनमा द्रुत रूपमा डेलिभर हुन्छन्।
4. प्रतिक्रिया लुप: मोडेल भविष्यवाणीहरूमा अन्तर्दृष्टि सङ्कलन गर्न अन्तिम-प्रयोगकर्ताहरूसँग प्रतिक्रिया लुप स्थापना गर्नुहोस्। मोडेललाई फाइन-ट्यून गर्न र वास्तविक-विश्व अनुप्रयोगहरूमा यसको सान्दर्भिकता बढाउन यो प्रतिक्रिया प्रयोग गर्नुहोस्।
5. नयाँ डेटा संग पुन: प्रशिक्षण: समयसँगै यसको शुद्धता कायम राख्न नियमित रूपमा नयाँ डेटाको साथ मोडेल अपडेट गर्नुहोस्। यो अभ्यास फेसन उद्योगमा विशेष गरी महत्त्वपूर्ण छ, जहाँ प्रवृत्ति र शैलीहरू द्रुत रूपमा विकसित हुन्छन्।
फेसन-MNIST डेटासेटले Google क्लाउडको AI प्लेटफर्ममा छवि वर्गीकरण मोडेलहरू प्रयोग गर्नको लागि व्यावहारिक प्रयोग केस प्रदान गर्दछ। उल्लिखित चरणहरू पछ्याएर, कसैले प्रभावकारी रूपमा स्केलेबल मेसिन लर्निङ मोडेलहरू निर्माण, डिप्लोय, र कायम राख्न Google को पूर्वाधारको लाभ उठाउन सक्छ। यो प्रक्रियाले मोडेलको शुद्धता र कार्यसम्पादनलाई मात्र बृद्धि गर्दैन तर फेशन उद्योगमा वास्तविक-विश्व परिदृश्यहरूमा यसको लागू हुने सुनिश्चित गर्दछ।
गुगलले बारम्बार आफ्नो एआई प्लेटफर्म अपडेट गर्छ (२०२४ सम्म भर्टेक्स एआई प्लेटफर्ममा विकसित भयो)। यदि तपाइँ यी अद्यावधिकहरूसँग कुनै समस्याहरू सामना गर्नुहुन्छ भने, तपाइँ निम्न कोड पनि प्रयास गर्न सक्नुहुन्छ:
python import google.auth import google.auth.transport.requests import requests import json from tensorflow.keras.datasets import fashion_mnist import numpy as np # Load and preprocess Fashion MNIST data (train_images, train_labels), (test_images, test_labels) = fashion_mnist.load_data() test_images = test_images/255.0 # Add channel dimension to all test images test_images = test_images.reshape(-1, 28, 28, 1) # Prepare your model and project details project_id = 'project_id' model_name = 'modelname' model_version = 'V1' region = 'europe-west3' # AI Platform prediction endpoint URL url = f'https://{region}-ml.googleapis.com/v1/projects/{project_id}/models/{model_name}/versions/{model_version}:predict' # Authenticate and get the auth token credentials, _ = google.auth.default() auth_req = google.auth.transport.requests.Request() credentials.refresh(auth_req) auth_token = credentials.token # Set up headers for the request headers = { 'Authorization': f'Bearer {auth_token}', 'Content-Type': 'application/json' } class_labels = [ "T-shirt/top", "Trouser", "Pullover", "Dress", "Coat", "Sandal", "Shirt", "Sneaker", "Bag", "Ankle boot" ] # Loop through the first 6 test images for i in range(6): # Prepare the instance for prediction instance = test_images[i].tolist() # Make the request body data = json.dumps({"instances": [instance]}) # Send the request response = requests.post(url, headers=headers, data=data) response_json = response.json() # Extract the predictions predicted_probs = response_json['predictions'][0] # Get the index of the highest probability predicted_index = np.argmax(predicted_probs) predicted_label = class_labels[predicted_index] predicted_probability = predicted_probs[predicted_index] # Print the result in a more readable format print(response_json) print(f"Image {i + 1}: Predicted class: {predicted_label} ({predicted_index}) with probability {predicted_probability:.10f}")
अन्य भर्खरका प्रश्न र उत्तरहरू सम्बन्धमा EITC/AI/GCML गुगल क्लाउड मेशिन शिक्षा:
- दिइएको समस्याको लागि सही एल्गोरिथ्म छनौट गर्ने मापदण्ड के हो?
- यदि कसैले गुगल मोडेल प्रयोग गर्दैछ र आफ्नै उदाहरणमा तालिम दिइरहेको छ भने के गुगलले तालिम डेटाबाट गरिएका सुधारहरू कायम राख्छ?
- तालिम दिनुअघि कुन ML मोडेल प्रयोग गर्ने भनेर कसरी थाहा पाउने?
- रिग्रेसन कार्य भनेको के हो?
- Vertex AI र AutoML तालिकाहरू बीच कसरी संक्रमण गर्न सकिन्छ?
- के R-squared, ARIMA वा GARCH जस्ता अर्थमिति मोडेलहरू प्रयोग गरेर वित्तीय डेटा अपलोड गर्न र तथ्याङ्कीय विश्लेषण र पूर्वानुमान गर्न Kaggle प्रयोग गर्न सम्भव छ?
- के मेसिन लर्निङलाई कोरोनरी मुटु रोगको जोखिमको भविष्यवाणी गर्न प्रयोग गर्न सकिन्छ?
- गुगल क्लाउड मेसिन लर्निङलाई भर्टेक्स एआईको रूपमा पुन: ब्रान्डिङ गर्दा वास्तविक परिवर्तनहरू के के हुन्?
- मोडेलको कार्यसम्पादन मूल्याङ्कन मेट्रिक्स के हो?
- रेखीय प्रतिगमन भनेको के हो?
EITC/AI/GCML Google Cloud Machine Learning मा थप प्रश्न र उत्तरहरू हेर्नुहोस्