НачатьНачать бесплатно

Обучение линейной модели

В этом упражнении вы продолжите работу с предыдущего шага. Свободный член и коэффициент наклона — intercept и slope — уже определены и инициализированы. Кроме того, определена функция loss_function(intercept, slope), которая вычисляет потери на основе данных и переменных модели.

Вам нужно определить операцию оптимизации как opt, а затем обучить одномерную линейную модель, минимизируя потери, чтобы найти оптимальные значения intercept и slope. Обратите внимание, что операция opt приближается к оптимуму с каждым шагом, однако для его достижения требуется много итераций. Поэтому операцию необходимо выполнять многократно.

Это упражнение является частью курса

Введение в TensorFlow на Python

Посмотреть курс

Инструкции к упражнению

  • Инициализируйте оптимизатор Adam как opt со скоростью обучения 0.5.
  • Примените метод .minimize() к оптимизатору.
  • Передайте loss_function() с необходимыми аргументами в виде лямбда-функции в .minimize().
  • Укажите список переменных, которые необходимо обновить, в параметре var_list.

Интерактивное практическое упражнение

Попробуйте выполнить это упражнение, дополнив этот пример кода.

# Initialize an Adam optimizer
opt = keras.optimizers.____(0.5)

for j in range(100):
	# Apply minimize, pass the loss function, and supply the variables
	opt.____(lambda: ____(____, ____), var_list=[____, ____])

	# Print every 10th value of the loss
	if j % 10 == 0:
		print(loss_function(intercept, slope).numpy())

# Plot data and regression line
plot_results(intercept, slope)
Редактировать и запускать код