Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

TensorFlow का उपयोग हानि फ़ंक्शन, एक अनुकूलक को परिभाषित करने, मॉडल को प्रशिक्षित करने और पायथन में IMDB डेटासेट पर इसका मूल्यांकन करने के लिए कैसे किया जा सकता है?


Tensorflow एक मशीन लर्निंग फ्रेमवर्क है जो Google द्वारा प्रदान किया जाता है। यह एक ओपन-सोर्स फ्रेमवर्क है जिसका उपयोग पायथन के संयोजन में एल्गोरिदम, गहन शिक्षण अनुप्रयोगों और बहुत कुछ को लागू करने के लिए किया जाता है। इसका उपयोग अनुसंधान और उत्पादन उद्देश्यों के लिए किया जाता है।

कोड की निम्न पंक्ति का उपयोग करके विंडोज़ पर 'टेंसरफ़्लो' पैकेज स्थापित किया जा सकता है -

pip install tensorflow

'आईएमडीबी' डेटासेट में 50 हजार से अधिक फिल्मों की समीक्षाएं हैं। यह डेटासेट आमतौर पर प्राकृतिक भाषा प्रसंस्करण से जुड़े कार्यों के लिए उपयोग किया जाता है।

हम नीचे दिए गए कोड को चलाने के लिए Google सहयोग का उपयोग कर रहे हैं। Google Colab या Colaboratory ब्राउज़र पर पायथन कोड चलाने में मदद करता है और इसके लिए शून्य कॉन्फ़िगरेशन और GPU (ग्राफ़िकल प्रोसेसिंग यूनिट) तक मुफ्त पहुंच की आवश्यकता होती है। जुपिटर नोटबुक के ऊपर कोलैबोरेटरी बनाई गई है।

हानि फ़ंक्शन, एक अनुकूलक को परिभाषित करने, मॉडल को प्रशिक्षित करने और IMDB डेटासेट पर इसका मूल्यांकन करने के लिए कोड स्निपेट निम्नलिखित है -

model.compile(loss=losses.BinaryCrossentropy(from_logits=True),
              optimizer='adam',
              metrics=tf.metrics.BinaryAccuracy(threshold=0.0))
epochs = 10
history = model.fit(
    train_ds,
    validation_data=val_ds,
    epochs=epochs)
loss, accuracy = model.evaluate(test_ds)

print("Loss is : ", loss)
print("Accuracy is : ", accuracy)

कोड क्रेडिट - https://www.tensorflow.org/tutorials/keras/text_classification

आउटपुट

Epoch 1/10
625/625 [==============================] - 12s 19ms/step - loss: 0.6818 - binary_accuracy: 0.6130 - val_loss: 0.6135 - val_binary_accuracy: 0.7750
Epoch 2/10
625/625 [==============================] - 4s 7ms/step - loss: 0.5785 - binary_accuracy: 0.7853 - val_loss: 0.4971 - val_binary_accuracy: 0.8230
Epoch 3/10
625/625 [==============================] - 4s 7ms/step - loss: 0.4651 - binary_accuracy: 0.8372 - val_loss: 0.4193 - val_binary_accuracy: 0.8470
Epoch 4/10
625/625 [==============================] - 4s 7ms/step - loss: 0.3901 - binary_accuracy: 0.8635 - val_loss: 0.3732 - val_binary_accuracy: 0.8612
Epoch 5/10
625/625 [==============================] - 4s 7ms/step - loss: 0.3435 - binary_accuracy: 0.8771 - val_loss: 0.3444 - val_binary_accuracy: 0.8688
Epoch 6/10
625/625 [==============================] - 4s 7ms/step - loss: 0.3106 - binary_accuracy: 0.8877 - val_loss: 0.3255 - val_binary_accuracy: 0.8730
Epoch 7/10
625/625 [==============================] - 5s 7ms/step - loss: 0.2855 - binary_accuracy: 0.8970 - val_loss: 0.3119 - val_binary_accuracy: 0.8732
Epoch 8/10
625/625 [==============================] - 5s 7ms/step - loss: 0.2652 - binary_accuracy: 0.9048 - val_loss: 0.3027 - val_binary_accuracy: 0.8772
Epoch 9/10
625/625 [==============================] - 5s 7ms/step - loss: 0.2481 - binary_accuracy: 0.9125 - val_loss: 0.2959 - val_binary_accuracy: 0.8782
Epoch 10/10
625/625 [==============================] - 5s 7ms/step - loss: 0.2328 - binary_accuracy: 0.9161 - val_loss: 0.2913 - val_binary_accuracy: 0.8792
782/782 [==============================] - 10s 12ms/step - loss: 0.3099 - binary_accuracy: 0.8741
Loss is : 0.3099007308483124
Accuracy is : 0.8741199970245361

स्पष्टीकरण

  • एक बार मॉडल बन जाने के बाद, इसे 'संकलन' फ़ंक्शन का उपयोग करके संकलित किया जाता है।

  • मॉडल को प्रशिक्षित करने के लिए परिभाषित चरणों की संख्या यहां 10 है।

  • 'फिट' फ़ंक्शन का उपयोग डेटा को उस मॉडल में फ़िट करने के लिए किया जाता है जिसे बनाया गया था।

  • परीक्षण डेटासेट पर नुकसान और मॉडल की सटीकता की गणना करने के लिए 'मूल्यांकन' फ़ंक्शन का उपयोग किया जाता है।

  • हानि और सटीकता के मान कंसोल पर प्रदर्शित होते हैं।


  1. पायथन का उपयोग करके मॉडल को प्रशिक्षित करने के लिए Tensorflow का उपयोग कैसे किया जा सकता है?

    मॉडल को Tensorflow में ट्रेन पद्धति का उपयोग करके प्रशिक्षित किया जा सकता है, जहां युगों (मॉडल को फिट करने के लिए डेटा को प्रशिक्षित करने की संख्या) और प्रशिक्षण डेटा निर्दिष्ट किया जाता है। और पढ़ें: TensorFlow क्या है और Keras कैसे तंत्रिका नेटवर्क बनाने के लिए TensorFlow के साथ काम करता है? हम

  1. पाइथन का उपयोग करके पुनर्स्थापित मॉडल का मूल्यांकन करने के लिए केरस का उपयोग कैसे किया जा सकता है?

    Tensorflow एक मशीन लर्निंग फ्रेमवर्क है जो Google द्वारा प्रदान किया जाता है। यह एक ओपन-सोर्स फ्रेमवर्क है जिसका उपयोग एल्गोरिदम, गहन शिक्षण अनुप्रयोगों और बहुत कुछ को लागू करने के लिए पायथन के साथ संयोजन में किया जाता है। इसका उपयोग अनुसंधान और उत्पादन उद्देश्यों के लिए किया जाता है। इसमें अनुकूलन

  1. MNIST डेटासेट के लिए मॉडल को परिभाषित करने के लिए Tensorflow का उपयोग कैसे किया जा सकता है?

    Tensorflow एक मशीन लर्निंग फ्रेमवर्क है जो Google द्वारा प्रदान किया जाता है। यह एक ओपन-सोर्स फ्रेमवर्क है जिसका उपयोग एल्गोरिदम, गहन शिक्षण अनुप्रयोगों और बहुत कुछ को लागू करने के लिए पायथन के साथ संयोजन में किया जाता है। इसमें अनुकूलन तकनीकें हैं जो जटिल गणितीय कार्यों को शीघ्रता से करने में मदद क