Zacznij terazZacznij za darmo

Trenowanie modelu liniowego

W tym ćwiczeniu kontynuujemy pracę rozpoczętą w poprzednim kroku. Wyrazy wolny i współczynnik kierunkowy, intercept i slope, zostały już zdefiniowane i zainicjalizowane. Zdefiniowana została również funkcja loss_function(intercept, slope), która oblicza stratę na podstawie danych i zmiennych modelu.

Teraz zdefiniujesz operację optymalizacji jako opt, a następnie wytrenujemy jednowymiarowy model liniowy, minimalizując stratę w celu znalezienia optymalnych wartości intercept i slope. Zwróć uwagę, że operacja opt z każdym krokiem zbliża się do optimum, ale potrzebuje wielu kroków, żeby je osiągnąć. Dlatego musisz wykonywać tę operację wielokrotnie.

To ćwiczenie jest częścią kursu

Wprowadzenie do TensorFlow w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zainicjalizuj optymalizator Adam jako opt ze współczynnikiem uczenia równym 0,5.
  • Zastosuj metodę .minimize() do optymalizatora.
  • Przekaż loss_function() z odpowiednimi argumentami jako funkcję lambda do .minimize().
  • Podaj listę zmiennych do zaktualizowania w argumencie var_list.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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)
Edytuj i uruchom kod