Неудача в перфекционизме.Почему в машинном обучении не добиться успеха без готовности к неудаче

Примечание автора: нажмите на подчеркнутые ссылки для получения дополнительной информации

Давайте поговорим об алгоритмах. А именно, как мы можем взять 220-летнюю концепцию регрессии и применить ее к машинному обучению. Берите блендер, надевайте кепку мышления и отправляйтесь вместе со мной в это иногда не очень вкусное путешествие в мир регрессии.

Перво-наперво, вот некоторые термины, к которым мы вернемся на протяжении всего блога:

MSE (среднеквадратическая ошибка) определяется как одна из многих показателей, которые вы можете использовать для измерения производительности вашей модели.

RMSE (среднеквадратичная ошибка) — еще один показатель эффективности модели.

Имейте в виду, что это всего лишь две из суперключевых формул (или рецептов, которые мы рассмотрим позже на нашем примере) для простой линейной регрессии.

Термин «регрессия» впервые был использован в 1805 г. Лежандром, а затем в 1807 г. Гауссом. Это более 200 лет назад! Это существует уже очень давно и до сих пор остается очень популярным стандартным подходом к машинному обучению. Итак, давайте посмотрим:

Регрессионный анализ определяется как статистические методы, включающие подгонку линейных моделей к данным. Обычно целью является предсказание или проверка гипотез о корреляциях/отношениях.

В нашем примере мы будем делать смузи. В каждом смузи будет:

  • 1 чашка простого йогурта
  • 1 секретный ингредиент
  • и куча случайных пищевых красителей, чтобы вы не могли сказать, что там.

Я смешиваю его, подаю вам, и теперь ваша цель — прокричать мне, сколько калорий в этом смузи. Идти! Что я слышу? 100…100 один раз, два раза, 300, 500. Я провожу здесь небольшой тест, чтобы посмотреть, у кого в аудитории самые сильные способности к машинному обучению. Почему? Потому что отношение к машинному обучению не является отношением к перфекционизму.Это не означает тщательного обдумывания и получения правильного ответа с первого раза или даже попытки не пытаться, если он не будет идеальным. На самом деле все наоборот. Отношение состоит в том, чтобы пойти на это, посмотреть, что произойдет, и ошибиться. Потому что вам придется делать это снова и снова. Подобно ребенку, который учится кататься на велосипеде, вы будете терпеть неудачи, падать — снова и снова — подниматься, пытаться снова и, в конце концов, у вас все получится. Таково отношение машинного обучения. Попробуйте еще раз, пока это, наконец, не сработает. Вы должны попробовать что-то, чтобы знать, что делать дальше, и если вы слишком боитесь начать, вы, как правило, не преуспеваете в прикладном машинном обучении. Для тех из вас, кто был достаточно смел, чтобы угадать количество калорий в нашем смузи, даже если вы не знали правильного ответа, мы можем перейти к следующему слайду, и я дам вам больше информации. Вместе мы сможем найти правильное решение.

Итак, вы открыли следующий слайд. Оказывается, это был секретный ингредиент: 58 г сардин с 265 калориями. Звучит вкусно, правда? Хорошо, я сделаю тебе другой. Угадайте, сколько калорий сейчас: 80, 400 или 180? Позвольте мне сказать вам, что здесь было: 50 г вафель. Нет, сырой материал, смесь для вафель. На самом деле это дань уважения стандартному опыту дедовщины, который происходит на пятом этаже офиса Google здесь, в Нью-Йорке. Большинство новых гуглеров (включая меня) поступили так: вы подходите и видите этот вкусный смузи, пробуете его, и это не смузи. Итак, стандартный опыт дедовщины для новичков. Хорошо, значит, ты не хочешь пить это.

Хорошо, я сделаю вам третий, но прежде чем я заставлю вас догадываться, я собираюсь дать вам немного больше информации. Это 16-й смузи, который я приготовил, и вот 15 предыдущих калорий. Вашей первой реакцией на это должно быть не пытаться прочитать это, а вместо этого топнуть ногой и сказать: «Я человек, я ничего не просчитываю». Пффф. Для этого и нужны машины». Хороший. Машина выручит нас и подведет их итоги. Мы узнаем, что среднее значение равно 237, а медиана — 240. Угадайте теперь, сколько калорий в этом блюде. Я слышу 238 или 240. Обратите внимание, как ваш диапазон сузился намного, когда я даю вам больше информации. Хорошо, я возьму 237. А, оказывается, это 88 г лотарингового пирога с заварным кремом, что составляет колоссальные 445 калорий и доказывает нам, что любая жидкая диета преодолима. Итак, как мы поступили? У нас была недооценка 208 калорий с этой стратегией. Можем ли мы сделать лучше? Может быть, это помогло бы узнать вес секретного ингредиента.

Итак, что мы сделаем, как аналитики, так это построим небольшой график и будем иметь вес от 0 до 200 г по оси x и калории от 0 до 500 по оси y. Когда мы смотрим на это, мы спрашиваем себя, происходит ли что-нибудь, или вес здесь совершенно бесполезен? И поскольку в этом что-то есть, может быть, мы продолжим и попробуем это. А не ___ ли нам? Регрессия заключается в том, чтобы провести строки через что-то, так почему бы нам не протестировать несколько строк:

Для тех, кто забыл, как работают линии, вот полезная шпаргалка: рецепт модели: точка пересечения + наклон x вес = калории.

Итак, у нас будет два числа, выделенных красным цветом, которые мы должны найти или определить, куда идет линия, а затем мы вставляем туда вес и считываем с него калории. Вот с чем мы имеем дело — с простыми вещами. Позвольте мне напомнить вам кое-что очень быстро: вот ваша предыдущая модель — и теперь вы обижаетесь — но раньше вы были очень рады просто каждый раз угадывать 237. 237 + 0 x вес означает, что я игнорирую вес и каждый раз говорю 237, и вы так хорошо его использовали.

Проверьте свои права на разработку функций. Что такое разработка функций? Именно тогда мы создаем входные данные, которые мы можем использовать для обучения, чтобы помочь в разработке нашего решения.

И когда у нас есть функция, которую мы могли бы использовать, внезапно мы можем сделать лучше. Так что в этом и будет смысл, поскольку мы получим информацию, которая будет иметь отношение к решению этой проблемы. Мы рассчитываем добиться большего, и нам придется подумать о том, какую информацию стоит вводить в систему в первую очередь. Если мы сможем сделать лучше, мы найдем линию, максимально близкую к точкам, потому что вы, кажется, обиделись, когда я этого не сделал. Отлично. Итак, мы лучше определим понятие ошибки.

Что такое ошибка? Только точка минус линия, правда минус то, что мы говорили, что мы должны предсказать.

Поскольку у всех нас здесь есть личности типа А, мы ненавидим ошибки, поэтому мы собираемся минимизировать функцию этих ошибок, которая будет показателем того, как эта штука работает. Хороший результат означает меньше ошибок. И, чтобы быстро напомнить, прежде чем мы углубимся в среднеквадратичную ошибку (RMSE), здесь есть ссылка на мой пост в блоге, посвященный среднеквадратической ошибке (MSE).

Здесь мы будем использовать среднеквадратичную ошибку (RMSE). Эта вещь очень креативно названа. На самом деле это рецепт вычисления в обратном направлении: получить Eошибку, S возвести в квадрат ошибку, взять Mзначение или среднее значение и извлечь из него квадратный R корень.

Или вы могли бы просто думать о RMSE как о калориях, которые мы потеряли в среднем.

Не технически правильно, но достаточно хорошо для работы правительства. В среднем мы потеряли около 85 калорий, и этого достаточно. Это нормально для утра, так что теперь мы уложились в 85, и мы хотим упасть еще меньше. Итак, давайте посмотрим, можем ли мы просто поменять местами эти два параметра в рецепте, чтобы улучшить ситуацию. Просто поиграйте вручную с этими двумя числами, или мы могли бы использовать исчисление. Но кто еще занимается вычислениями? Это такая старая школа. Или мы могли бы просто использовать алгоритм оптимизации, чтобы немедленно получить ответ.

Итак, что делает алгоритм оптимизации? Он спрашивает, для этой настройки вы пытаетесь, какова ваша цель? Вы пытаетесь получить эту функцию как можно ниже. Позвольте мне выяснить для вас, какие настройки этих двух параметров, с которыми мне разрешено играть, дают мне здесь наилучшую возможную производительность. Затем он выводит вам этот ответ и берет на себя всю работу.

И это будет лежать в основе каждого алгоритма машинного обучения.

Давайте разберем рецепт того, что мы только что узнали:

  1. Нам нужно знать, что такое оценка (RMSE против MSE)
  2. Нам нужно знать, какова цель (определение веса загадочного ингредиента)
  3. Нам нужно выяснить, где установить свободные параметры в рецепте, исходя из этой цели (алгоритм оптимизации).

Хорошо, отлично. И мы прошли долгий путь! Мой аппетит утолен. Хороший. Э-э, давайте посмотрим на quiche lorraine, однако. Это насмехается над нами. Мы не очень хорошо предсказали киш лорейн. Можем ли мы сделать лучше?

Чтобы получить дополнительную информацию о RMSE или просмотреть любое другое видео Кэсси, посетите ее веб-сайт или посмотрите ее в Твиттере.