लोकल मिनिमा से बचना
पिछले प्रश्न ने दिखाया कि लोकल मिनिमा में फँसना कितना आसान है। हमारे पास एक वैरिएबल वाला साधारण ऑप्टिमाइज़ेशन प्रॉब्लम था, फिर भी जब पहले लोकल मिनिमा से होकर जाना पड़ा, तो ग्रेडिएंट डिसेंट ग्लोबल मिनिमम तक नहीं पहुँच सका। इस समस्या से बचने का एक तरीका है momentum का उपयोग, जो ऑप्टिमाइज़र को लोकल मिनिमा को पार करने में मदद करता है। हम फिर से पिछले प्रश्न वाले loss फंक्शन का उपयोग करेंगे, जो आपके लिए loss_function() के रूप में परिभाषित है और उपलब्ध है।

tensorflow में कई optimizers में momentum पैरामीटर होता है, जैसे SGD और RMSprop। आप इस अभ्यास में RMSprop का उपयोग करेंगे। ध्यान दें कि इस बार x_1 और x_2 को एक ही मान से initialize किया गया है। साथ ही, keras.optimizers.RMSprop() भी tensorflow से आपके लिए import किया जा चुका है।
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में TensorFlow परिचय
अभ्यास निर्देश
opt_1ऑपरेशन को learning rate 0.01 और momentum 0.99 पर सेट करें।opt_2को root mean square propagation (RMS) optimizer के रूप में learning rate 0.01 और momentum 0.00 के साथ सेट करें।opt_2के लिए minimization ऑपरेशन परिभाषित करें।x_1औरx_2कोnumpyarrays के रूप में प्रिंट करें।
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Initialize x_1 and x_2
x_1 = Variable(0.05,float32)
x_2 = Variable(0.05,float32)
# Define the optimization operation for opt_1 and opt_2
opt_1 = keras.optimizers.RMSprop(learning_rate=____, momentum=____)
opt_2 = ____
for j in range(100):
opt_1.minimize(lambda: loss_function(x_1), var_list=[x_1])
# Define the minimization operation for opt_2
____
# Print x_1 and x_2 as numpy arrays
print(____, ____)