Вступление
О чем эта статья?
В этой статье я поделюсь эклектичной коллекцией вопросов для собеседований, которые помогут вам в подготовке к собеседованию по машинному обучению. Это полезно для тех, кто заинтересован в одной или нескольких из следующих должностей в группе машинного обучения ведущей компании (Google, Facebook, IBM, Amazon, Microsoft и т. Д.):
- Инженер-исследователь
- Инженер-программист
- Постдокторант-исследователь
- Научный сотрудник
- Специалист по данным
Со временем я буду добавлять новые вопросы в этот список. Первоначально этот проект начинался как репозиторий GitHub, который можно найти здесь. Я постоянно пополняю репозиторий новыми вопросами.
Зачем это нужно?
Это будет полезно тем, кто:
- Заинтересованы в подготовке к собеседованию по машинному обучению
- Однако подготовка к собеседованию по машинному обучению теряется среди множества ресурсов и хочет расставить приоритеты, чему учиться.
- Хотите отточить свои навыки, задав несколько возможных вопросов на собеседовании.
Чему я должен научиться?
Ожидается, что кто-то, подающий заявку на любую из указанных выше должностей, будет знать основы следующих общих тем:
- Информатика
- Линейная алгебра
- Статистика и вероятность
- Машинное обучение
Все это довольно широкие темы, и в разделах, посвященных им в этой статье, перечислены конкретные вопросы, связанные с некоторыми из этих тем. Обратите внимание, что от вас можно ожидать более глубоких знаний по одной или нескольким из вышеперечисленных тем в зависимости от конкретной должности, на которую вы проходите собеседование. Это поднимает наш следующий вопрос.
Что от меня ждут на собеседовании?
Инженер-исследователь или инженер-программист: если вы подаете заявку на любую из этих должностей в группе машинного обучения, вы должны знать основы четырех вышеуказанных тем с упором на информатику и машинное обучение. Кроме того, некоторые проекты по машинному обучению в GitHub будут полезны для демонстрации как ваших знаний, так и навыков программирования.
Постдокторант и научный сотрудник: помимо основ, вы должны очень хорошо знать хотя бы одну область машинного обучения. Вы должны были опубликовать несколько статей в этой области. Это продемонстрирует ваш авторитет в данной теме. Поскольку вы подаете заявку на эту должность, вы уже знаете, что это будет в вашем случае.
Специалист по данным: если вас интересует должность специалиста по данным, то после изучения основ, пожалуйста, уделите больше внимания статистике и вероятности.
Список вопросов
Теперь, когда у вас есть общее представление о собеседовании по машинному обучению, давайте не будем тратить время на то, чтобы поделиться списком вопросов, организованных по темам (в произвольном порядке).
Линейная алгебра
- Что такое вещание в связи с линейной алгеброй?
- Что такое скаляры, векторы, матрицы и тензоры?
- Что такое произведение Адамара двух матриц?
- Что такое обратная матрица?
- Если существует обратная матрица, как ее вычислить?
- Что такое определитель квадратной матрицы? Как рассчитывается? Какая связь определителя с собственными значениями?
- Обсудите диапазон и линейную зависимость.
- Что такое Ax = b? Когда Ax = b имеет уникальное решение?
- В Ax = b, что происходит, когда A толстый или высокий?
- Когда существует инверсия A?
- Что есть норма? Что такое бесконечная норма L1, L2 и L?
- Каким условиям должна удовлетворять норма?
- Почему квадрат нормы L2 предпочтительнее в ML, чем просто норма L2?
- Когда норма L1 предпочтительнее нормы L2?
- Можно ли определить количество ненулевых элементов в векторе как норму L0? Если нет, то почему?
- Что такое норма Фробениуса?
- Что такое диагональная матрица?
- Почему умножение на диагональную матрицу является дешевым в вычислительном отношении? Чем отличается умножение для квадратной и неквадратной диагональной матрицы?
- При каких условиях существует обратная диагональной матрице?
- Что такое симметричная матрица?
- Что такое единичный вектор?
- Когда два вектора x и y ортогональны?
- При R ^ n каково максимально возможное количество ортогональных векторов с ненулевой нормой?
- Когда два вектора x и y ортонормированы?
- Что такое ортогональная матрица? Почему предпочтительнее с вычислительной точки зрения?
- Что такое собственное разложение, собственные векторы и собственные значения?
- Как найти собственные значения матрицы?
- Напишите формулу собственного разложения матрицы. Если матрица действительно симметрична, как это изменится?
- Гарантируется ли уникальность собственного разложения? Если нет, то как это представить?
- Что такое положительно определенные, отрицательно определенные, положительно полуопределенные и отрицательные полуопределенные матрицы?
- Что такое декомпозиция по сингулярным значениям? Почему мы это используем? Почему бы просто не использовать ЭД?
- Учитывая матрицу A, как вы рассчитаете ее разложение по сингулярным значениям?
- Что такое особые значения, левые и правые особые числа?
- Какая связь разложения по сингулярным числам A с функциями от A?
- Почему сингулярные числа всегда неотрицательны?
- Что такое псевдообратное уравнение Мура-Пенроуза и как его вычислить?
- Если мы сделаем псевдообратное преобразование Мура-Пенроуза на Ax = b, какое решение предоставим, если A является жиром? Более того, какое решение предоставляется, если A высокий?
- Какие матрицы можно разложить с помощью ЭД?
- Какие матрицы можно разложить с помощью СВД?
- Что такое след матрицы?
- Как записать норму Фробениуса матрицы A в терминах следа?
- Почему след умножения матриц инвариантен к циклическим перестановкам?
- Что такое след скаляра?
- Записать норму Фробениуса матрицы в терминах следа?
Численная оптимизация
- Что такое переполнение и переполнение?
- Как решить проблему потери значимости или переполнения для функции softmax или функции log softmax?
- Что такое плохая физическая подготовка?
- Что такое номер условия?
- Что такое grad, div и curl?
- Что такое критические или стационарные точки в многомерном пространстве?
- Зачем делать градиентный спуск, если вы хотите минимизировать функцию?
- Что такое линейный поиск?
- Что такое восхождение на холм?
- Что такое матрица Якоби?
- Что такое кривизна?
- Что такое матрица Гессе?
Основы теории вероятностей и информации
- Сравните «вероятностную вероятность» с «байесовской вероятностью»?
- Что такое случайная величина?
- Что такое вероятностное распределение?
- Что такое функция массы вероятности?
- Что такое функция плотности вероятности?
- Что такое совместное распределение вероятностей?
- Каковы условия того, чтобы функция была функцией массы вероятности?
- Каковы условия того, чтобы функция была функцией плотности вероятности?
- Что такое предельная вероятность? Учитывая совместную функцию вероятности, как вы ее рассчитаете?
- Что такое условная вероятность? Учитывая совместную функцию вероятности, как вы ее рассчитаете?
- Сформулируйте цепное правило условных вероятностей.
- Каковы условия независимости и условной независимости двух случайных величин?
- Что такое ожидание, дисперсия и ковариация?
- Сравните ковариацию и независимость.
- Какова ковариация вектора случайных величин?
- Что такое распределение Бернулли? Вычислить математическое ожидание и дисперсию случайной величины, которая соответствует распределению Бернулли?
- Что такое мультинуллиевое распределение?
- Что такое нормальное распределение?
- Почему нормальное распределение является выбором по умолчанию для априорного над набором действительных чисел?
- Что такое центральная предельная теорема?
- Что такое экспоненциальное распределение и распределение Лапласа?
- Что такое распределение Дирака и эмпирическое распределение?
- Что такое смесь дистрибутивов?
- Назовите два распространенных примера смешения дистрибутивов? (Эмпирическая и гауссовская смесь)
- Является ли модель гауссовой смеси универсальным аппроксиматором плотностей?
- Напишите формулы для функции логистики и softplus.
- Напишите формулы правила Байеса.
- Что вы подразумеваете под нулевой мерой и почти везде?
- Если две случайные величины связаны детерминированным образом, как связаны PDF-файлы?
- Определите самоинформацию. Какие у него единицы?
- Что такое энтропия Шеннона и дифференциальная энтропия?
- Что такое дивергенция Кульбака-Лейблера (КЛ)?
- Можно ли использовать расхождение KL в качестве меры расстояния?
- Определите кросс-энтропию.
- Что такое структурированные вероятностные модели или графические модели?
- Что такое направленные и неориентированные модели в контексте структурированных вероятностных моделей? Как они представлены? Что такое клики в неориентированных структурированных вероятностных моделях?
Доверительный интервал
- Что такое среднее значение генеральной совокупности и среднее значение выборки?
- Что такое стандартное отклонение генеральной совокупности и стандартное отклонение выборки?
- Почему население с.д. имеет N степеней свободы, в то время как образец s.d. имеет N-1 степеней свободы? Другими словами, почему 1 / N внутри root для pop. s.d. и 1 / (N-1) внутри корня для образца s.d.?
- По какой формуле рассчитывается s.d. выборочного среднего?
- Что такое доверительный интервал?
- Что такое стандартная ошибка?
Теория обучения
- Опишите предвзятость и расхождение с примерами.
- Что такое минимизация эмпирического риска?
- Что такое Unionbound и неравенство Хёффдинга?
- Напишите формулы для ошибки обучения и ошибки обобщения. Укажите на различия.
- Сформулируйте теорему о равномерной сходимости и выведите ее.
- Какова оценка выборочной сложности теоремы о равномерной сходимости?
- Какова оценка погрешности теоремы о равномерной сходимости?
- Что такое теорема о компромиссе смещения и дисперсии?
- Можете ли вы получить оценку размера обучающей выборки на основе компромисса смещения и дисперсии?
- Что такое размер VC?
- От чего зависит размер обучающей выборки для конечного и бесконечного набора гипотез? Сравнивать и противопоставлять.
- Каков размер VC для n-мерного линейного классификатора?
- Каким образом размер VC SVM ограничен, хотя он проецируется в бесконечное измерение?
- Учитывая, что минимизация эмпирического риска является NP-сложной проблемой, как работает логистическая регрессия и потери SVM?
Выбор модели и функций
- Зачем нужны методы выбора модели?
- Как найти компромисс между смещением и дисперсией?
- Какие различные атрибуты можно выбрать методами выбора модели?
- Почему требуется перекрестная проверка?
- Опишите различные методы перекрестной проверки.
- Что такое перекрестная проверка удержания? В чем его достоинства и недостатки?
- Что такое k-кратная перекрестная проверка? В чем его достоинства и недостатки?
- Что такое перекрестная проверка с исключением по одному? В чем его достоинства и недостатки?
- Почему требуется выбор функции?
- Опишите некоторые методы выбора функций.
- Что такое метод прямого выбора функции? В чем его достоинства и недостатки?
- Что такое метод обратного выбора функции? В чем его достоинства и недостатки?
- Что такое метод выбора функции фильтра и опишите два из них?
- Что такое взаимная информация и расхождение KL?
- Опишите дивергенцию KL интуитивно.
Проклятие размерности
- Опишите проклятие размерности на примерах.
- Что такое локальное постоянство или плавность априори или регуляризации?
Универсальное приближение нейронных сетей
- Сформулируйте универсальную аппроксимационную теорему? Какой метод используется, чтобы доказать это?
- Что такое функция, измеримая по Борелю?
- Учитывая универсальную аппроксимационную теорему, почему многослойный персептрон (MLP) не может по-прежнему достигать сколь угодно малой положительной ошибки?
Мотивация к глубокому обучению
- В чем математическая мотивация глубокого обучения по сравнению со стандартными методами машинного обучения?
- В стандартном машинном обучении и глубоком обучении, как порядок количества выборок связан с порядком регионов, которые могут быть распознаны в функциональном пространстве?
- Каковы причины выбора глубокой модели вместо мелкой?
- Как Deep Learning борется с проклятием размерности?
Машина опорных векторов
- Как можно получить функцию оптимизации SVM из функции оптимизации логистической регрессии?
- Что такое классификатор большой маржи?
- Почему SVM является примером классификатора большой маржи?
- SVM является крупным классификатором маржи, влияют ли на него выбросы?
- Какова роль C в SVM?
- Каков угол между границей решения и тета в SVM?
- Какова математическая интуиция классификатора большой маржи?
- Что такое ядро в SVM? Почему мы используем ядра в SVM?
- Что такое функция подобия в SVM? Почему он так назван?
- Как ориентиры изначально выбираются в SVM? Сколько и где?
- Можем ли мы применить трюк с ядром к логистической регрессии? Почему тогда это не используется на практике?
- В чем разница между логистической регрессией и SVM без ядра?
- Как параметр SVM C влияет на компромисс смещения / дисперсии?
- Как параметр ядра SVM sigma² влияет на компромисс смещения / дисперсии?
- Можно ли использовать какую-либо функцию подобия для SVM?
- Логистическая регрессия против SVM: когда использовать какой?
Байесовское машинное обучение
- В чем разница между «байесовским» и «частотным» подходом к машинному обучению?
- Сравните и сопоставьте максимальное правдоподобие и максимальную апостериорную оценку.
- Как байесовские методы делают автоматический выбор признаков?
- Что вы имеете в виду под байесовской регуляризацией?
- Когда вы будете использовать байесовские методы вместо частотных методов?
Регуляризация
- Что такое регуляризация L1?
- Что такое регуляризация L2?
- Сравните регуляризацию L1 и L2.
- Почему регуляризация L1 приводит к разреженным моделям?
- Что такое отсев?
- Как вы реализуете отсев во время прямого и обратного прохода?
Оценка систем машинного обучения
- Что такое точность, чувствительность, специфичность, ROC?
- Что такое точность и отзыв?
- Опишите t-тест в контексте машинного обучения.
Кластеризация
- Опишите алгоритм k-средних.
- Что такое функция искажения? Выпуклый он или невыпуклый?
- Подскажите про сходимость функции искажения.
- Тема: EM алгоритм
- Что такое модель гауссовой смеси?
- Опишите алгоритм EM интуитивно.
- Каковы два шага алгоритма EM
- Сравните модель гауссовой смеси и гауссовский дискриминантный анализ.
Уменьшение размерности
- Зачем нужны техники уменьшения размерности?
- Что нам нужно PCA и для чего он нужен?
- В чем разница между логистической регрессией и PCA?
- Какие два этапа предварительной обработки необходимо выполнить перед выполнением PCA?
Основы обработки естественного языка
- Что такое WORD2VEC?
- Что такое t-SNE? Почему мы используем PCA вместо t-SNE?
- Что такое сэмплированный softmax?
- Почему сложно обучить RNN с помощью SGD?
- Как вы решаете проблему взрывных градиентов?
- В чем проблема исчезающих градиентов?
- Как решить проблему исчезающих градиентов?
- Объясните ячейку памяти LSTM.
- Какой тип регуляризации используется в LSTM?
- Что такое поиск луча?
- Как автоматически подписать изображение?
Некоторые основные вопросы
- Можете ли вы сформулировать определение обучения, данное Томом Митчеллом, и обсудить Т, П и Э?
- С какими типами задач можно встретиться в машинном обучении?
- Что такое контролируемое, неконтролируемое, частично контролируемое, самостоятельное, многоэкземплярное обучение и обучение с подкреплением?
- Примерно как можно преобразовать обучение с учителем в обучение без учителя и наоборот?
- Рассмотрим линейную регрессию. Что такое T, P и E?
- Выведите нормальное уравнение для линейной регрессии.
- Что вы подразумеваете под аффинным преобразованием? Обсудите аффинное и линейное преобразование.
- Обсудите ошибку обучения, ошибку теста, ошибку обобщения, переоснащение и недообучение.
- Сравните репрезентативную и эффективную вместимость модели.
- Обсудите размер VC.
- Что такое непараметрические модели? Что такое непараметрическое обучение?
- Какая идеальная модель? Что такое байесовская ошибка? Каковы источники байесовской ошибки?
- Что такое теорема об отсутствии бесплатного обеда в связи с машинным обучением?
- Что такое регуляризация? Интуитивно, что делает регуляризация во время процедуры оптимизации?
- Что такое снижение веса? Что это добавлено?
- Что такое гиперпараметр? Как выбрать, какие настройки будут гиперпараметрами, а какие будут изучены?
- Зачем нужен набор для проверки?
- Какие существуют типы перекрестной проверки? Когда вы используете какой?
- Что такое оценка в баллах и оценка функций в контексте машинного обучения? Какая между ними связь?
- Какова максимальная вероятность вектора параметров $ theta $? Откуда бревно?
- Докажите, что для линейной регрессии MSE может быть получена из максимального правдоподобия при правильных предположениях.
- Почему оценка максимального правдоподобия является предпочтительной в машинном обучении?
- При каких условиях оценка максимального правдоподобия гарантирует согласованность?
- Что такое кросс-энтропия потерь?
- В чем разница между функцией потерь, функцией стоимости и целевой функцией?
Оптимизационные процедуры
- В чем разница между проблемой оптимизации и проблемой машинного обучения?
- Как проблему обучения можно превратить в проблему оптимизации?
- Что такое минимизация эмпирического риска? Почему термин эмпирический? Почему мы редко используем его в контексте глубокого обучения?
- Назовите несколько типичных функций потерь, используемых для регрессии. Сравнивать и противопоставлять.
- Что такое функция потерь 0–1? Почему нельзя использовать функцию потерь 0–1 или ошибку классификации в качестве функции потерь для оптимизации глубокой нейронной сети?
Последовательное моделирование
- Напишите уравнение, описывающее динамическую систему. Вы можете его развернуть? Теперь, можете ли вы использовать это для описания RNN?
- От чего зависит размер развернутого графа?
- В чем преимущества развернутого графа?
- Что представляет собой вывод скрытого слоя RNN в любой произвольный момент t?
- Является ли вывод скрытых слоев RNN без потерь? Если нет, то почему?
- RNN используются для различных задач. Какие задачи сложнее других с точки зрения RNN?
- Обсудите несколько примеров важных шаблонов проектирования классических RNN.
- Напишите уравнения для классической RNN, в которой скрытый слой имеет повторение. Как бы вы в этом случае определили убыток? С какими проблемами вы можете столкнуться во время тренировки?
- Что такое обратное распространение во времени?
- Рассмотрим RNN, у которого есть только выход для повторения скрытого слоя. Каковы его преимущества или недостатки по сравнению с RNN, у которого есть только скрытые до скрытого повторения?
- Что заставляет Учитель? Сравните и сравните с BPTT.
- В чем недостаток строгой техники форсирования учителем? Как это решить?
- Объясните феномен исчезающего / увеличивающегося градиента для рекуррентных нейронных сетей.
- Почему мы не видим феномена исчезающего / увеличивающегося градиента в сетях с прямой связью?
- В чем ключевое отличие архитектуры LSTM / GRU от традиционных RNN?
- В чем разница между LSTM и GRU?
- Объясните отсечение градиента.
- Adam и RMSProp регулируют размер градиентов на основе ранее замеченных градиентов. Выполняют ли они обрезку градиента по своей сути? Если нет, то почему?
- Обсудите RNN в контексте байесовского машинного обучения.
- Можем ли мы выполнить пакетную нормализацию в RNN? Если нет, то какая альтернатива?
Автоэнкодеры
- Что такое автоэнкодер? Что это «автоматическое кодирование»?
- Для чего традиционно использовались автоэнкодеры? Почему произошло возрождение автоэнкодеров для генеративного моделирования?
- Что такое рециркуляция?
- Какие функции потерь используются в автоэнкодерах?
- Что такое линейный автоэнкодер? Может ли это быть оптимальным (самая низкая ошибка восстановления обучения)? Если да, то на каких условиях?
- В чем разница между автоэнкодерами и PCA?
- Как влияет размер скрытого слоя в автоэнкодерах?
- Что такое неполный автоэнкодер? Почему это обычно используется?
- Что такое линейный автоэнкодер? Обсудите его эквивалентность с PCA. Какой лучше в реконструкции?
- С какими проблемами может столкнуться нелинейный неполный автоэнкодер?
- Что такое автокодеры с избыточным кодом? С какими проблемами они могут столкнуться? Изменится ли сценарий для линейных автокодировщиков с избыточным кодом?
- Обсудите важность регуляризации в контексте автоэнкодеров.
- Почему генеративные автоэнкодеры не требуют регуляризации?
- Что такое редкие автоэнкодеры?
- Что такое автоэнкодер с шумоподавлением? В чем его преимущества? Как это решает проблему с переизбытком?
- Что такое подбор очков? Обсудите его связь с DAE.
- Есть ли связь между автоэнкодерами и RBM?
- Что такое многообразное обучение? Как шумоподавляющие и сужающие автокодеры оснащены для разнообразного обучения?
- Что такое сжимающий автокодировщик? Обсудите его преимущества. Как это решает проблему с переизбытком?
- Почему так назван сужающийся автоэнкодер?
- Каковы практические проблемы с CAE? Как с ними бороться?
- Что такое составной автоэнкодер? Что такое глубокий автоэнкодер? Сравнивать и противопоставлять.
- Сравните качество восстановления глубокого автоэнкодера и PCA.
- Что такое прогнозирующая разреженная декомпозиция?
- Обсудите некоторые применения автоэнкодеров.
Репрезентативное обучение
- Что такое репрезентативное обучение? Почему это полезно?
- Какая связь между репрезентативным обучением и глубоким обучением?
- Что такое однократное и нулевое обучение (NMT от Google)? Приведите примеры.
- Какие компромиссы необходимо учитывать при обучении репрезентации?
- Что такое жадный послойный неконтролируемый предварительный тренинг (GLUP)? Почему жадный? Почему послойно? Почему без присмотра? Почему предварительная подготовка?
- Каковы были цели вышеупомянутой техники? (проблема глубокого обучения и инициализация)
- Почему работает предварительная подготовка без учителя?
- Когда работает обучение без присмотра? При каких обстоятельствах?
- Почему неконтролируемое предварительное обучение может действовать как регуляризатор?
- В чем недостатки предварительного обучения без учителя по сравнению с другими формами обучения без учителя?
- Как вы контролируете регуляризирующий эффект предварительной тренировки без учителя?
- Как выбрать гиперпараметры каждого этапа GLUP?
Методы Монте-Карло
- Что такое детерминированные алгоритмы?
- Что такое алгоритмы Лас-Вегаса?
- Что такое детерминированные приближенные алгоритмы?
- Что такое алгоритмы Монте-Карло?
Я буду продолжать добавлять вопросы как в этот список, так и в мой репозиторий GitHub. Более того, я планирую добавить ответы и на эти вопросы.
Заявление об ограничении ответственности: мнения, выраженные в этом сообщении, являются моими личными, индивидуальными и уникальными взглядами, а не точкой зрения моего работодателя.