Настройка линейной регрессии
Одномерная линейная регрессия позволяет выявить зависимость между одним признаком и целевым тензором. В этом упражнении мы будем работать с площадью участка и ценой недвижимости. Как обсуждалось в видео, мы применим натуральный логарифм к обоим тензорам — они доступны как price_log и size_log.
В этом упражнении вы определите модель и функцию потерь, а затем вычислите значение функции потерь для двух разных значений intercept и slope. Напомним, что предсказанные значения задаются выражением intercept + features*slope. Обратите внимание, что функция keras.losses.mse() уже доступна для использования, а переменные slope и intercept определены заранее.
Это упражнение является частью курса
Введение в TensorFlow на Python
Инструкции к упражнению
- Определите функцию, которая возвращает предсказанные значения линейной регрессии на основе
intercept,featuresиslope, не используяadd()илиmultiply(). - Дополните
loss_function(), добавив переменные модели —interceptиslope— в качестве аргументов. - Вычислите среднеквадратичную ошибку, используя
targetsиpredictions.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Define a linear regression model
def linear_regression(intercept, slope, features = size_log):
return ____
# Set loss_function() to take the variables as arguments
def loss_function(____, ____, features = size_log, targets = price_log):
# Set the predicted values
predictions = linear_regression(intercept, slope, features)
# Return the mean squared error loss
return keras.losses.____
# Compute the loss for different slope and intercept values
print(loss_function(0.1, 0.1).numpy())
print(loss_function(0.1, 0.5).numpy())