Python Academy · पाठ

डीप Q-Learning

रीइन्फोर्समेंट लर्निंग के लिए न्यूरल नेटवर्क का उपयोग

पाठ 4, कुल 5 में से10 चरण

डीप Q-Learning, CoddyKit पर Python Academy का एक निःशुल्क पाठ है। यह 5 में से 4वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Python Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Python Academy पाठ्यक्रम में कुल 5 पाठ शामिल हैं।

डीप Q-लर्निंग क्या है?

डीप Q-लर्निंग

डीप Q-लर्निंग, Q-लर्निंग का एक विस्तार है, जिसमें Q-तालिका का अनुमान लगाने के लिए न्यूरल नेटवर्क का उपयोग किया जाता है। इससे सुदृढ़ीकरण अधिगम को बड़े या सतत अवस्था-क्रिया स्थान वाले परिवेशों तक विस्तारित किया जा सकता है।

डीप Q-Learning — चित्र 1

डीप Q-लर्निंग क्यों?

डीप Q-लर्निंग पारंपरिक Q-लर्निंग की सीमाओं को दूर करता है:

  • उच्च-आयामी अवस्था स्थानों, जैसे चित्रों, को संभालता है।
  • बड़ी Q-तालिकाओं को स्मृति में संग्रहीत करने की आवश्यकता से बचाता है।
  • न्यूरल नेटवर्क का उपयोग करके विभिन्न अवस्थाओं में सामान्यीकरण करता है।

DQN एल्गोरिदम

डीप Q-लर्निंग, Q-मानों का अनुमान लगाने के लिए Q-नेटवर्क नामक न्यूरल नेटवर्क का उपयोग करता है। मुख्य step ये हैं:

  1. Q-नेटवर्क को यादृच्छिक भारों के साथ आरंभ करें।
  2. अनुभव-टपल (state, action, reward, next_state) एकत्र करने के लिए परिवेश के साथ अंतःक्रिया करें।
  3. बेलमैन समीकरण का उपयोग करके Q-नेटवर्क को अद्यतन करें:

Q(s, a) ≈ r + γ max(Q(s', a'))

Q-नेटवर्क बनाना

Q-नेटवर्क एक सरल फीडफ़ॉरवर्ड न्यूरल नेटवर्क है, जो वर्तमान अवस्था को इनपुट के रूप में लेता है और सभी संभावित क्रियाओं के Q-मान आउटपुट के रूप में देता है:

import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import Dense

# Define the Q-Network
q_network = Sequential([
    Dense(24, activation='relu', input_shape=(state_space_size,)),
    Dense(24, activation='relu'),
    Dense(action_space_size, activation='linear')
])

q_network.compile(optimizer='adam', loss='mse')

अनुभव पुनरावृत्ति

अधिगम को बेहतर बनाने के लिए डीप Q-लर्निंग अनुभव पुनरावृत्ति नामक तकनीक का उपयोग करता है:

  • अनुभवों (state, action, reward, next_state) को एक स्मृति बफ़र में संग्रहीत करें।
  • Q-नेटवर्क को प्रशिक्षित करने के लिए अनुभवों के बैचों का यादृच्छिक रूप से sample करें।
from collections import deque

# Initialize replay memory
memory = deque(maxlen=2000)

# Add experience to memory
memory.append((state, action, reward, next_state, done))

Q-नेटवर्क को प्रशिक्षित करना

हम स्मृति बफ़र में मौजूद अनुभवों का उपयोग करके Q-नेटवर्क को प्रशिक्षित करते हैं:

import numpy as np

# Sample a batch of experiences
batch_size = 32
batch = random.sample(memory, batch_size)

# Train the Q-Network
for state, action, reward, next_state, done in batch:
    target = reward
    if not done:
        target += gamma * np.max(q_network.predict(next_state[np.newaxis, ...]))
    q_values = q_network.predict(state[np.newaxis, ...])
    q_values[0][action] = target
    q_network.fit(state[np.newaxis, ...], q_values, epochs=1, verbose=0)

लक्ष्य नेटवर्क

प्रशिक्षण को स्थिर करने के लिए DQN एक लक्ष्य नेटवर्क का उपयोग करता है:

  • लक्ष्य Q-मानों की गणना करने के लिए एक अलग नेटवर्क बनाए रखें।
  • समय-समय पर Q-नेटवर्क के भारों को लक्ष्य नेटवर्क में कॉपी करें।

डीप Q-लर्निंग के लाभ

डीप Q-लर्निंग कई लाभ प्रदान करता है:

  • उच्च-आयामी अवस्था स्थानों, जैसे चित्रों, को संभालता है।
  • न्यूरल नेटवर्क का उपयोग करके विभिन्न अवस्थाओं में सामान्यीकरण करता है।
  • अटारी खेलों और रोबोटिक नियंत्रण जैसे जटिल कार्यों को हल कर सकता है।

सारांश और अगले चरण

इस पाठ में हमने:

  • डीप Q-लर्निंग की मूल बातें समझीं।
  • Q-मानों का अनुमान लगाने के लिए एक Q-नेटवर्क बनाया।
  • स्थिर प्रशिक्षण के लिए अनुभव पुनरावृत्ति और लक्ष्य नेटवर्क पर चर्चा की।

अगले चरण में, हम OpenAI जिम का अध्ययन करेंगे और अनुकरण किए गए परिवेशों में सुदृढ़ीकरण अधिगम लागू करेंगे।

डीप Q-Learning — चित्र 10
शुरुआत निःशुल्क

एआई शिक्षक के साथ Python सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
76
पाठ
320

अक्सर पूछे जाने वाले प्रश्न

क्या “डीप Q-Learning” पाठ निःशुल्क है?

हाँ—“डीप Q-Learning” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Python Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Python Academy पाठ्यक्रम में कुल 5 पाठ शामिल हैं।

“डीप Q-Learning” में मैं क्या सीखूँगा?

रीइन्फोर्समेंट लर्निंग के लिए न्यूरल नेटवर्क का उपयोग आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Python Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Python Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Python Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 5 में से 4वाँ पाठ है।

“डीप Q-Learning” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Python Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Python Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. रीइन्फोर्समेंट लर्निंग की मूल अवधारणाएँ
  2. Q-Table की अवधारणा
  3. Python में Q-Table लागू करना
  4. डीप Q-Learning
  5. OpenAI Gym का अन्वेषण
← Python Academy पर वापस जाएँ