Pregătire pentru antrenamentul pe loturi
Înainte de a antrena un model liniar pe loturi, trebuie să definim mai întâi variabilele, o funcție de pierdere și o operație de optimizare. În acest exercițiu, te vei pregăti să antrenezi un model care va prezice price_batch, un lot de prețuri de locuințe, folosind size_batch, un lot de suprafețe de teren în picioare pătrate. Spre deosebire de lecția anterioară, vei face acest lucru încărcând loturi de date cu pandas, convertindu-le în array-uri numpy, apoi folosindu-le pentru a minimiza funcția de pierdere pas cu pas.
Variable(), keras() și float32 au fost deja importate pentru tine. Reține că nu trebuie să setezi valori implicite pentru argumentele modelului sau ale funcției de pierdere, deoarece vom genera datele în loturi în timpul procesului de antrenament.
Acest exercițiu face parte din cursul
Introducere în TensorFlow în Python
Instrucțiuni pentru exercițiu
- Definește
interceptcu o valoare inițială de 10.0 și tipul de date float pe 32 de biți. - Definește modelul astfel încât să returneze valorile prezise folosind
intercept,slopeșifeatures. - Definește o funcție numită
loss_function()care primește ca argumenteintercept,slope,targetsșifeatures, în această ordine. Nu seta valori implicite pentru argumente. - Definește funcția de pierdere bazată pe eroarea medie pătratică folosind
targetsșipredictions.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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.____(____, ____)