Навчіть лінійну модель
У цій вправі ми продовжимо з того місця, де зупинилися в попередній. Параметри перетину й нахилу, intercept і slope, визначено та ініціалізовано. Додатково визначено функцію loss_function(intercept, slope), яка обчислює втрати, використовуючи дані та змінні моделі.
Тепер ви визначите операцію оптимізації як opt. Далі ви навчите уніваріативну лінійну модель, мінімізуючи втрати, щоб знайти оптимальні значення intercept і slope. Зауважте, що операція opt на кожному кроці намагатиметься наблизитися до оптимуму, але для того, щоб його знайти, знадобиться багато кроків. Тому операцію потрібно виконувати повторно.
Ця вправа є частиною курсу
Вступ до TensorFlow на Python
Інструкції до вправи
- Ініціалізуйте оптимізатор Adam як
optзі швидкістю навчання 0.5. - Застосуйте метод
.minimize()до оптимізатора. - Передайте
loss_function()з відповідними аргументами як lambda-функцію до.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)