Ваша функция потерь не будет работать, потому что она стимулирует установку любого конечного значения и в .θ1θ0−∞
Назовем остаточного для ,r(x,y)=1m∑mi=1hθ(x(i))−yhh
Ваша цель - сделать как можно ближе к нулю, а не просто минимизировать его . Высокое отрицательное значение так же плохо, как и высокое положительное значение.r
РЕДАКТИРОВАТЬ: Вы можете противостоять этому путем искусственного ограничения пространства параметров (например, вы хотите ). В этом случае оптимальные параметры будут лежать в определенных точках на границе пространства параметров. См. Https://math.stackexchange.com/q/896388/12467 . Это не то, что вы хотите.Θ|θ0|<10
Почему мы используем квадратную потерю
Квадратная ошибка к совпадению и . Он минимизируется при , если это возможно, и всегда равен , потому что это квадрат действительного числа .h(x)yu=v≥0u−v
|u−v|будет также работать для вышеуказанной цели, как , с некоторое положительное целое число. Первый из них фактически используется (он называется потерей ; вы также можете столкнуться с потерей , которая является еще одним названием квадратичной ошибки).(u−v)2nnℓ1ℓ2
Итак, почему потеря в квадрате лучше, чем эти? Это глубокий вопрос, связанный со связью между частыми и байесовскими выводами. Короче говоря, квадратичная ошибка относится к гауссовскому шуму .
Если ваши данные не соответствуют точно всем точкам, т. не равен нулю для какой-либо точки, независимо от того, какую вы выбираете (как это всегда будет происходить на практике), это может быть вызвано шумом . В любой сложной системе будет много небольших независимых причин для разницы между вашей моделью и реальностью : ошибка измерения, факторы окружающей среды и т. Д. Согласно центральной предельной теореме (CLT), общий шум будет распределяться нормально , то есть в соответствии с Гауссово распределение . Мы хотим выбрать наиболее подходящуюh(x)−yθ h yθпринимая во внимание это распределение шума. Предположим, что , часть которую ваша модель не может объяснить, следует распределению Гаусса . Мы используем заглавные буквы, потому что сейчас мы говорим о случайных переменных.R=h(X)−YyN(μ,σ)
Распределение Гаусса имеет два параметра: среднее и дисперсия . Смотрите здесь, чтобы лучше понять эти термины.μ=E[R]=1m∑ihθ(X(i))−Y(i))σ2=E[R2]=1m∑i(hθ(X(i))−Y(i)))2
Рассмотрим , это систематическая ошибка наших измерений. Используйте чтобы исправить систематическую ошибку, чтобы (упражнение для читателя). Больше здесь делать нечего.μh′(x)=h(x)−μμ′=E[R′]=0
σ представляет случайную ошибку , также называемую шумом . После того, как мы позаботились о компоненте систематического шума, как и в предыдущем пункте, лучший предиктор получается, когда сведено к минимуму. Иными словами, лучшим предиктором является тот, который имеет наименьшее распределение (наименьшее отклонение) вокруг прогнозируемого значения, то есть наименьшее отклонение. Минимизация наименьшего квадрата потерь - это то же самое, что минимизация дисперсии! Это объясняет, почему наименьший квадрат потерь работает для широкого спектра проблем. Основной шум очень часто гауссовский, из-за CLT, и минимизация квадрата ошибки оказывается правильнойσ2=1m∑i(hθ(X(i))−Y(i)))2 вещь которую нужно сделать!
Чтобы одновременно принять во внимание как среднее значение, так и дисперсию, мы включаем в наш классификатор термин смещения (для обработки систематической ошибки ), а затем минимизируем квадратные потери.μ
Последующие вопросы:
Потеря наименьших квадратов = ошибка Гаусса. Соответствует ли любая другая функция потерь некоторому распределению шума? Да. Например, потеря (минимизация абсолютного значения вместо квадратичной ошибки) соответствует распределению Лапласа (посмотрите на формулу для PDF в информационном блоке - это просто гауссов с вместо ). Популярной потерей для вероятностных распределений является KL-дивергенция . -Гауссово распределение очень хорошо мотивировано из-за центральной предельной теоремыℓ1|x−μ|(x−μ)2, о котором мы говорили ранее. Когда распределение Лапласа является правильной моделью шума? Есть некоторые обстоятельства, когда это происходит естественным образом, но чаще всего это регуляризатор для обеспечения разреженности : потеря является наименее выпуклой среди всех выпуклых потерь.ℓ1
- Как упоминает Ян в комментариях, минимизатор квадратов отклонений является средним значением, а минимизатор суммы абсолютных отклонений - медианой . Почему мы хотим найти медиану остатков вместо среднего? В отличие от среднего, медиана не отбрасывается одним очень большим выбросом. Таким образом, потеря используется для повышения надежности. Иногда используется комбинация двух.ℓ1
Существуют ли ситуации, когда мы минимизируем среднее значение и дисперсию? Да. Посмотрите на компромисс Bias-Variance . Здесь мы рассмотрим набор классификаторов и спросим, какой из них является лучшим. Если мы спросим, какой набор классификаторов является лучшим для проблемы, минимизация смещения и дисперсии становится важной. Оказывается, между ними всегда есть компромисс, и мы используем регуляризацию для достижения компромисса.hθ∈H
Относительно термина12
1/2 не имеет значения, и фактически, также как и - они оба постоянны. Оптимальное значение останется неизменным в обоих случаях.mθ
Выражение для градиента становится симпатичнее с помощью , потому что 2 из квадратного члена аннулируется.12
- При написании кода или алгоритмов мы обычно больше заботимся о градиенте, поэтому он помогает сохранить его краткость. Вы можете проверить прогресс, просто проверив норму градиента. Сама функция потерь иногда исключается из кода, потому что она используется только для проверки окончательного ответа.
полезен , если вы решить эту проблему с помощью градиентного спуска. Тогда ваш градиент становится средним из слагаемых, а не суммы, поэтому его масштаб не изменяется при добавлении дополнительных точек данных.mm
- Я сталкивался с этой проблемой раньше: я тестирую код с небольшим количеством точек, и он работает нормально, но когда вы тестируете его со всем набором данных, происходит потеря точности, а иногда и чрезмерных / недостаточных потоков, то есть ваш градиент становится
nan
или inf
, Чтобы избежать этого, просто нормализуйте по количеству точек данных.
Эти эстетические решения используются здесь для поддержания согласованности с будущими уравнениями, в которые вы добавите термины регуляризации . Если вы включите , параметр регуляризации не будет зависеть от размера набора данных и будет более интерпретируемым при решении проблем.mλm