НачатьНачать бесплатно

Настройка линейной регрессии

Одномерная линейная регрессия позволяет выявить зависимость между одним признаком и целевым тензором. В этом упражнении мы будем работать с площадью участка и ценой недвижимости. Как обсуждалось в видео, мы применим натуральный логарифм к обоим тензорам — они доступны как 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())
Редактировать и запускать код