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

बैचों में एक linear मॉडल को ट्रेन करना

इस अभ्यास में, आप पिछले अभ्यास से आगे बढ़ते हुए एक linear regression मॉडल को बैचों में ट्रेन करेंगे. हम डेटासेट को बैचों में स्टेप करते हुए, हर स्टेप के बाद मॉडल के वैरिएबल्स intercept और slope को अपडेट करेंगे. इस तरीके से हम ऐसे डेटासेट्स पर ट्रेन कर पाएँगे जो मेमोरी में एक साथ लोड करने के लिए बहुत बड़े होते हैं.

ध्यान दें कि loss फंक्शन loss_function(intercept, slope, targets, features) आपके लिए पहले से परिभाषित है. इसके अलावा, keras इम्पोर्ट किया जा चुका है और numpy np नाम से उपलब्ध है. Trainable वैरिएबल्स को var_list में उसी क्रम में डालें जिस क्रम में वे loss फंक्शन के आर्ग्युमेंट्स के रूप में आते हैं.

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

Python में TensorFlow परिचय

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

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

  • .Adam() ऑप्टिमाइज़र का उपयोग करें.
  • 'kc_house_data.csv' से डेटा को बैचों में chunksize 100 के साथ लोड करें.
  • batch से price कॉलम निकालें, उसे 32-bit float टाइप के numpy array में कन्वर्ट करें, और price_batch को असाइन करें.
  • loss फंक्शन को पूरा करें, trainable वैरिएबल्स की लिस्ट भरें, और minimization चलाएँ.

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

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

# Initialize Adam optimizer
opt = keras.optimizers.____

# Load data in batches
for batch in pd.read_csv('____', ____=____):
	size_batch = np.array(batch['sqft_lot'], np.float32)

	# Extract the price values for the current batch
	price_batch = np.array(batch['____'], np.____)

	# Complete the loss, fill in the variable list, and minimize
	opt.minimize(lambda: loss_function(____, slope, price_batch, size_batch), var_list=[intercept, ____])

# Print trained parameters
print(intercept.numpy(), slope.numpy())
कोड संपादित करें और चलाएँ