ПочатиПочніть безкоштовно

Навчання лінійної моделі пакетами

У цій вправі ви навчатимете модель лінійної регресії пакетами, продовживши з того місця, де зупинилися у попередній вправі. Ми крокуватимемо набором даних пакетами й після кожного кроку оновлюватимемо змінні моделі — intercept і slope. Такий підхід дає змогу навчати моделі на наборах даних, які інакше надто великі, щоб уміститися в пам'яті.

Зверніть увагу, що функцію втрат loss_function(intercept, slope, targets, features) уже визначено для вас. Крім того, keras уже імпортовано, а numpy доступний як np. Навчувані змінні слід передати до var_list у тому самому порядку, у якому вони з'являються серед аргументів функції втрат.

Ця вправа є частиною курсу

Вступ до TensorFlow на Python

Переглянути курс

Інструкції до вправи

  • Використайте оптимізатор .Adam().
  • Завантажте дані з 'kc_house_data.csv' пакетами з chunksize 100.
  • Витягніть стовпець price з batch, перетворіть його на масив numpy типу 32-бітний float і присвойте до price_batch.
  • Доповніть функцію втрат, заповніть список навчуваних змінних і виконайте мінімізацію.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

# 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())
Редагувати та запускати код