Zacznij terazZacznij za darmo

Przygotowanie do trenowania wsadowego

Zanim będziemy mogli trenować model liniowy wsadowo, musimy najpierw zdefiniować zmienne, funkcję straty oraz operację optymalizacji. W tym ćwiczeniu przygotujesz model, który będzie przewidywał price_batch – wsad cen nieruchomości – na podstawie size_batch, czyli wsadu powierzchni działek w stopach kwadratowych. W odróżnieniu od poprzedniej lekcji, dane będziemy ładować wsadowo za pomocą pandas, konwertować na tablice numpy, a następnie minimalizować funkcję straty krokowo.

Variable(), keras() oraz float32 zostały już zaimportowane. Pamiętaj, aby nie ustawiać domyślnych wartości argumentów ani dla modelu, ani dla funkcji straty – dane będą generowane wsadowo podczas procesu trenowania.

To ćwiczenie jest częścią kursu

Wprowadzenie do TensorFlow w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zdefiniuj intercept z wartością początkową 10.0 i typem danych 32-bitowy float.
  • Zdefiniuj model tak, aby zwracał wartości przewidywane na podstawie intercept, slope i features.
  • Zdefiniuj funkcję loss_function(), która przyjmuje argumenty intercept, slope, targets i features – dokładnie w tej kolejności. Nie ustawiaj domyślnych wartości argumentów.
  • Zdefiniuj funkcję straty w postaci błędu średniokwadratowego, korzystając z targets i predictions.

Interaktywne ćwiczenie praktyczne

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

# Define the intercept and slope
intercept = ___
slope = Variable(0.5, float32)

# Define the model
def linear_regression(intercept, slope, features):
	# Define the predicted values
	return ____

# Define the loss function
def ____:
	# Define the predicted values
	predictions = linear_regression(____, ____, features)
    
 	# Define the MSE loss
	return keras.losses.____(____, ____)
Edytuj i uruchom kod