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

लोकल मिनिमा से बचना

पिछले प्रश्न ने दिखाया कि लोकल मिनिमा में फँसना कितना आसान है। हमारे पास एक वैरिएबल वाला साधारण ऑप्टिमाइज़ेशन प्रॉब्लम था, फिर भी जब पहले लोकल मिनिमा से होकर जाना पड़ा, तो ग्रेडिएंट डिसेंट ग्लोबल मिनिमम तक नहीं पहुँच सका। इस समस्या से बचने का एक तरीका है 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 को numpy arrays के रूप में प्रिंट करें।

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

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

# 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(____, ____)
कोड संपादित करें और चलाएँ