Ниже приведен список нескольких вопросов для интервью по машинному обучению. Следите за нами, чтобы оставаться в курсе новых вопросов:

Как проверить, соответствует ли переменная нормальному распределению?

  • Постройте гистограмму из выборочных данных. Если вы можете подогнать колоколообразную «нормальную» кривую к гистограмме, тогда гипотеза о том, что лежащая в основе случайная величина следует нормальному распределению.
  • Проверьте асимметрию и эксцесс выборочных данных. Нулевая асимметрия и нулевой эксцесс типичны для нормального распределения, поэтому чем дальше от 0, тем более ненормальным является распределение.
  • Используйте критерии Колмогорова-Смирнова и/или Шапиро-Уилка для нормальности. Они учитывают как асимметрию, так и эксцесс одновременно.
  • Проверьте график Quantile-Quantile. Это диаграмма рассеяния, созданная путем сопоставления двух наборов квантилей друг с другом. Нормальный график Q-Q размещает точки данных примерно по прямой линии.

Что, если мы хотим построить модель для прогнозирования цен? Цены распределяются нормально? Нужно ли нам делать какую-либо предварительную обработку цен? ‍

Данные не в норме. В частности, наборы данных реального мира или неочищенные наборы данных всегда имеют определенную асимметрию. То же самое касается прогноза цены. Цена дома или любой другой рассматриваемой вещи зависит от ряда факторов. Таким образом, существует большая вероятность наличия некоторых искаженных значений, то есть выбросов, если мы говорим с точки зрения науки о данных.

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

Как мы выбираем K для перекрестной проверки K-кратности? Какая ваша любимая буква К?

При выборе K необходимо учитывать две вещи: количество экземпляров, которые мы получаем, и размер проверочного набора. Мы не хотим, чтобы количество кратностей было слишком меньше, например, 2 или 3. Как минимум 4 модели дают менее предвзятое решение по метрикам. С другой стороны, мы бы хотели, чтобы набор данных составлял не менее 20–25% всех данных. Таким образом, сохраняется как минимум соотношение 3–4: 1 между обучающим и проверочным набором.

Рекомендуется использовать K как 4 для небольших наборов данных и 5 для больших наборов данных. Это означает, что 20% данных используются для тестирования, обычно это довольно точно. Однако, если размер вашего набора данных резко увеличивается, например, если у вас более 100 000 экземпляров, можно увидеть, что 10-кратная перекрестная проверка приведет к увеличению числа экземпляров до 10 000. Этого должно быть достаточно для надежного тестирования вашей модели.

Что такое классификация? Какие модели вы бы использовали для решения задачи классификации?

Задачи классификации — это задачи, в которых пространство предсказаний дискретно, т. е. существует конечное число значений, которые может иметь выходная переменная. Некоторые модели, которые можно использовать для решения задач классификации, включают, среди прочего, логистическую регрессию, дерево решений, случайные леса, многоуровневый персептрон, KNN, SVM, наивный байесовский классификатор, один против всех.

Можете ли вы привести несколько примеров, когда ложноотрицательный результат важнее ложноположительного?

Предположим, что существует аэропорт «А», которому угрожает высокая безопасность, и на основе определенных характеристик они определяют, может ли конкретный пассажир представлять угрозу или нет. Из-за нехватки персонала они решили сканировать пассажиров, которых их прогностическая модель предсказывает как положительный риск.

Пример 1) Что произойдет, если клиент, представляющий угрозу, будет помечен моделью аэропорта как не представляющий угрозы?

Пример 2) Другим примером может быть судебная система. Что, если присяжные или судья решат освободить преступника?

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

Можете ли вы привести несколько примеров, когда одинаково важны как ложноположительные, так и ложноотрицательные результаты?

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

Банки не хотят терять хороших клиентов и в то же время не хотят приобретать плохих клиентов. В этом сценарии как ложные положительные, так и ложные отрицательные значения становятся очень важными для измерения.

В наши дни мы слышим много случаев, когда игроки используют стероиды во время спортивных соревнований. Каждый игрок должен пройти тест на стероиды перед началом игры. Ложное срабатывание может разрушить карьеру Великого спортсмена, а ложноотрицательное — сделать игру нечестной.

Что такое компромисс между точностью и отзывом?

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

В идеальном сценарии, когда есть идеально разделяемые данные, и точность, и полнота могут получить максимальное значение 1,0. Но в большинстве практических ситуаций в наборе данных есть шум, и набор данных не является полностью разделимым. Могут быть некоторые точки положительного класса ближе к отрицательному классу и наоборот. В таких случаях смещение границы решения может либо повысить точность, либо полноту, но не то и другое одновременно. Увеличение одного параметра приводит к уменьшению другого.

В каких случаях AU PR лучше, чем AU ROC?

AU ROC рассматривает истинно положительный показатель TPR и ложноположительный показатель FPR, в то время как AU PR рассматривает положительную прогностическую ценность PPV и истинно положительный показатель TPR.

Как правило, если истинные негативы не имеют значения для проблемы или вас больше волнует положительный класс, AU PR обычно будет более полезным. Если вы в равной степени заботитесь о положительном и отрицательном классе или ваш набор данных достаточно сбалансирован, то переход на AU ROC — хорошая идея».

Какие методы выбора признаков вы знаете? ‍

Вот некоторые из методов выбора признаков:

  • Анализ главных компонентов
  • Анализ компонентов окрестности
  • Алгоритм помощи

Какие стратегии настройки гиперпараметров (в целом) вы знаете?

Существует несколько стратегий гипернастройки, но я бы сказал, что в настоящее время наиболее популярными являются следующие три:

  • Поиск по сетке – это исчерпывающий подход, при котором для каждого гиперпараметра пользователю необходимо вручную указать список значений, которые должен попробовать алгоритм. После того, как эти значения выбраны, поиск по сетке затем оценивает алгоритм, используя каждую комбинацию гиперпараметров, и возвращает комбинацию, которая дает оптимальный результат (т.е. самый низкий MAE). Поскольку поиск по сетке оценивает данный алгоритм с использованием всех комбинаций, легко увидеть, что это может быть довольно затратным в вычислительном отношении и может привести к неоптимальным результатам, особенно потому, что пользователю необходимо указать конкретные значения для этих гиперпараметров, что подвержено ошибкам. и требует знания предметной области.
  • Случайный поиск похож на поиск по сетке, но отличается тем, что вместо указания того, какие значения пробовать для каждого гиперпараметра, вместо этого задается верхняя и нижняя границы значений для каждого гиперпараметра. «С равномерной вероятностью затем выбираются случайные значения в этих пределах, и аналогичным образом пользователю возвращается наилучшая комбинация. Хотя это кажется менее интуитивным, знание предметной области не требуется, и теоретически можно исследовать гораздо больше пространства параметров.
  • В совершенно другом контексте Байесовская оптимизация считается более статистическим способом оптимизации и обычно используется при использовании нейронных сетей, особенно потому, что одна оценка нейронной сети может потребовать значительных вычислительных ресурсов. В многочисленных исследовательских работах этот метод значительно превосходит поиск по сетке и случайный поиск и в настоящее время используется на облачной платформе Google, а также в AWS. Поскольку подробное объяснение требует глубокого знания байесовской статистики и гауссовских процессов (и, возможно, даже некоторой теории игр), «простое» объяснение заключается в том, что гораздо более простая/быстрая функция сбора данных делает разумный выбор (используя суррогатную функцию, такую ​​как вероятность улучшение или GP-UCB), какие значения гиперпараметров использовать для дорогостоящего в вычислительном отношении исходного алгоритма. Используя результат начальной комбинации значений дорогой/оригинальной функции, функция приобретения принимает во внимание результат дорогого/оригинального алгоритма и использует его в качестве своего априорного знания, чтобы снова получить другой набор гиперпараметров для выбора. во время следующей итерации. Этот процесс продолжается либо в течение определенного количества итераций, либо в течение определенного периода времени, и аналогичным образом выбирается комбинация гиперпараметров, которая лучше всего работает в дорогом/оригинальном алгоритме.

Какова скорость обучения?

Скорость обучения — важный гиперпараметр, контролирующий, насколько быстро модель адаптируется к задаче во время обучения. Его можно рассматривать как «ширину шага» при обновлении параметров, т. е. насколько далеко веса перемещаются в направлении минимума нашей задачи оптимизации.

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

Большая скорость обучения может ускорить обучение. Однако возможно, что мы «стреляем» слишком далеко и пропускаем минимум функции, которую хотим оптимизировать, что не приведет к лучшему решению. С другой стороны, обучение с небольшой скоростью обучения занимает больше времени, но можно найти более точный минимум. Недостатком может быть то, что решение застревает в локальном минимуме, и веса не будут обновляться, даже если это не самое лучшее глобальное решение.

Спасибо за чтение

Надеюсь, вы найдете это полезным. Дайте мне знать ваши мысли в разделе комментариев и не забудьте похлопать, если вы нашли статью полезной. Каждую неделю мы будем публиковать новые вопросы и ответы на технические темы. Чтобы получать уведомления, подпишитесь на нас на Medium.

Чтобы получить доступ к более чем 100 вопросам и ответам по машинному обучению и получить ответы на следующие вопросы, перейдите по ссылке ниже:



Список вопросов

  1. Список допущений в линейной регрессии?
  2. Что такое нормальное распределение? Зачем нам это?
  3. Как мы можем проверить, соответствует ли функция нормальному распределению или нет?
  4. Что такое SGD (стохастический градиентный спуск? Чем он отличается от градиентного спуска?
  5. Какие показатели мы используем для оценки регрессионных моделей?
  6. Приведите несколько примеров, когда ложноположительный результат важнее ложноотрицательного?
  7. Что такое компромисс между точностью и отзывом?
  8. Можем ли мы использовать регуляризацию L1 для выбора признаков?
  9. Что происходит, когда в наших данных есть коррелирующие признаки?
  10. Как мы можем включить неявную обратную связь (клики и т. д.) в рекомендательные системы?