शुरू करेंमुफ़्त में शुरू करें

अपनी predictions डिकोड करें

आपका LSTM model पहले ही ट्रेन किया जा चुका है (विवरण पिछले अभ्यास के success message में हैं), ताकि आपको इंतज़ार न करना पड़े. अब समय है कि आप इसकी predictions को डिकोड करने के लिए एक फंक्शन परिभाषित करें. यह प्रशिक्षित model इस फंक्शन को एक डिफॉल्ट पैरामीटर के रूप में दिया जाएगा.

क्योंकि आप ऐसे मॉडल पर prediction कर रहे हैं जो softmax फंक्शन का उपयोग करता है, इसलिए numpy का argmax() probabilities के आउटपुट वेक्टर में से सबसे संभावित अगले शब्द का प्रतिनिधित्व करने वाला इंडेक्स/पोज़िशन देने के लिए इस्तेमाल किया जा सकता है.

आपने जो tokenizer पहले बनाया और fit किया था, वह आपके लिए लोड है. आप इसके इंटरनल index_word डिक्शनरी का उपयोग करके model की next-word prediction (जो एक integer होती है) को उसके वास्तविक लिखित शब्द में बदलेंगे, जिसका वह प्रतिनिधित्व करता है.

आप अपने मॉडल के साथ प्रयोग करने के बहुत करीब हैं!

यह अभ्यास पाठ्यक्रम का हिस्सा है

Keras के साथ डीप लर्निंग परिचय

पाठ्यक्रम देखें

अभ्यास निर्देश

  • texts_to_sequences() का उपयोग करके test_text पैरामीटर को numbers की sequence में बदलें.
  • test_seq पास करके मॉडल की next-word prediction प्राप्त करें. prediction के numpy array पर .argmax(axis=1)[0] कॉल करके सबसे अधिक probability वाले शब्द का इंडेक्स/पोज़िशन लें.
  • tokenizer की index_word डिक्शनरी का उपयोग करके prediction से मैप होने वाला शब्द return करें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

def predict_text(test_text, model = model):
  if len(test_text.split()) != 3:
    print('Text input should be 3 words!')
    return False
  
  # Turn the test_text into a sequence of numbers
  test_seq = tokenizer.texts_to_sequences([____])
  test_seq = np.array(test_seq)
  
  # Use the model passed as a parameter to predict the next word
  pred = ____.predict(____).argmax(axis = 1)[0]
  
  # Return the word that maps to the prediction
  return tokenizer.____[____]
कोड संपादित करें और चलाएँ