Путь к собеседованиям инженера по пакетному алгоритму заранее

алгоритм

  • Добавить Автора
  • Корректура и отделка: Люцифер

vivo (принял предложение)

Технический (30 мин)

  • Самостоятельное введение
  • Кстати о стажировках
  • говорить об игре
  • Задал несколько вопросов о больших данных
  • Разница между искровым преобразованием и действием
  • Разорвать сортировку слиянием

час сторона (30мин, только одна сторона технологии)

  • Самостоятельное введение
  • семейная ситуация
  • Расскажите об основных моментах стажировки
  • иметь девушку
  • Твои родители разрешают тебе поехать в Шэньчжэнь?
  • Расскажите о преимуществах и недостатках
  • общие вопросы и т.д.

Куньлунь Ванвэй (получил предложение)

Одна сторона (1ч):

  • Представьтесь
  • Расскажите об идее оценки палиндромного связанного списка, нескольких методах
  • Напишите на бумаге обратно связанный список
  • Поговорите о том, как реализовано перемешивание python, время O (N), пространство O (1)
  • В зависимости от вашего компьютера, вы знаете дерево Хаффмана, w2v полезно, можете ли вы мне сказать (я помню многоуровневый softmax, но на самом деле это не так)
  • Что вы знаете о традиционном машинном обучении? Нажмите LR, расскажите о принципе
  • Знайте kmeans, давайте поговорим об итеративном процессе, центр кластера не хорош случайно, как он может быть более стабильным (класс kmeans++)
  • Какие модели глубокого обучения вы знаете? Я сказал LSTM RNN, я не стал ждать, чтобы сказать рекомендуемую модель. . .
  • Давайте поговорим о LSTM, как повторяются ворота
  • Преимущества и недостатки каждой функции активации, сигмовидной относительной нелинейной относительной тангенции и упомянутого градиента исчезает.
  • Что такое сигмовидное отведение?
  • Вы понимаете рекомендацию? Вы знаете, что сказать, и вы сказали CF.
  • Поговорим о Item-CF, как вычислить сходство (используя пересечение, то есть расстояние Жаккара, которое быстрее, чем cos), и как его оптимизировать (инвертированный индекс)
  • Как бороться с искажением данных? (используйте ключ + случайный префикс и суффикс)
  • Можете ли вы рассказать о LDA в вашем проекте? Я прямо сказал, что использовал это и не изучал внимательно (он тоже соглашается, говоря, что математический принцип очень сложен)
  • Давайте поговорим о статистических особенностях заголовка запроса вашего проекта, пообщайтесь с ним, он рассказал мне о своем понимании бизнеса.
  • риторический вопрос
  • Чем вы занимаетесь (делаете все, бизнес очень широкий...)
  • Какие технологии используются (используются все, стек технологий очень широк...)

Куньлунь Ванвэй двуликий (то есть время подтверждения не считается интервью)

  • Как разговаривать с интервьюером
  • Вы знаете, чем занимается их отдел?
  • Далее назначьте встречу с боссом, чтобы подтвердить время
  • Заканчивать

Kunlun Wanwei Three Sides (менее двадцати минут, сторона давления):

  • Когда подошел,спросил про игру.Спросил обе игры.Где отрыв от первой?
  • Следующие вопросы быстро задают и быстро отвечают, не являются подробными, и вопросы могут не запомниться полностью:
  • Расскажите о своей стажировке, не в двух словах. .
  • Как вы решаете дисбаланс выборки
  • Какая польза от kmeans
  • Как использовать диктофон питона
  • Почему возникают хеш-коллизии
  • python установить список диктов, какой сценарий используется
  • Каковы решения проблемы переобучения?
  • Метод Ньютона и метод квазиньютона.
  • 200w неповторяющихся слов помещаются в память за один раз, как поставить максимально экономящее память (нет)
  • Какими проектами вы занимаетесь помимо учебы?
  • Вы обычно чистите зубы на вопросы алгоритма, сколько вы чистите?
  • Другой вопрос интервьюера не является стресс-тестом
  • Какую работу вы хотите выполнять (предположительно, это и означает)
  • Нет вопросов

Цзиндон

Одна сторона (40мин)

Хороший молодой женский интервьюер

  • Самостоятельное введение
  • Я поболтал со мной, а потом я сказал, что вы очень прямолинейны, поэтому скажу прямо, вы ищете рекомендации, мы машинное обучение + комбинаторная оптимизация, и мы с уклоном в сторону исследования операций, вы думаете об этом, (Я сказал, пока это не cvnlp, я хочу все это)
  • Подумайте об этом и начните задавать вопросы:
  • Вы рассказали о своей стажировке, самом важном моменте и проанализировали для него волну моей стратегии выборки.
  • Вы знаете gbdt и xgboost, расскажите мне об этом (безумная сила выдувания xgboost)
  • Знаете ли вы оценку максимального правдоподобия и оценку максимальной апостериорной вероятности или выберите ту, с которой вы знакомы (нажимая LR с закрытыми глазами, что такое распределение Бернулли, функция правдоподобия, безумие)
  • Давайте сделаем вопрос, 1000w число, диапазон чисел [-1000, 1000], напишите сортировку (закройте глаза и ведро ряд)
  • Можно ли приехать на стажировку раньше?
  • Риторический вопрос (от отдела розничной торговли Jingdong, балабала стека технологий)
  • Повторное тестирование будет запланировано

Две стороны (30мин)

  • Самостоятельное введение
  • Найдите конкурс, чтобы рассказать об инновациях, какие инновации вы сделали и почему в модели использовалась система CNN вместо системы RNN?
  • Поскольку выше я сказал, что в своей работе тренировал векторы слов, позвольте мне рассказать об архитектуре word2vec и некоторых деталях.
  • Почему векторы w2v обладают хорошими математическими свойствами в семантическом пространстве, такими как сложение и вычитание
  • Математическая задача: M выборок были заменены и отобраны N раз, спросите вероятность того, что выборка не будет отобрана один раз.
  • Дайте вам среднюю дисперсию, позвольте вам случайным образом сгенерировать 1000 точек, используя нормальное распределение (не могу использовать библиотеку, это не очень хорошо)
  • Риторический вопрос: Какой отдел и какая группа (торгово-технический средний этап)
  • Почему выбирают JD.com, и какая основная конкурентоспособность у JD.com (сумасшедший, я сказал, что не очень оптимистично отношусь к тем, которые невозможно реализовать, потому что JD — это бизнес электронной коммерции, и систематическая разработка всего алгоритма процесс должен быть очень продуманным, а еще он имеет реальное воплощение, приносящее практическую пользу. , очень согласен интервьюер)
  • Какое у вас предложение в конце?
  • Ушел

ч лапша (20мин)

  • Дама очень милая Я опаздываю на четыре минуты Подойди и извинись.
  • Самостоятельное введение
  • Что вы делаете, когда испытываете сильное давление, например, когда не можете решить проблему со стажировкой?
  • Что делать, если у вас возникли разногласия с наставником
  • Если вы присоединитесь к JD.com в будущем, каковы требования к руководителям?
  • Есть ли у вас обычно какие-либо привычки к учебе?
  • Вы обычно делаете резюме на регулярной основе?
  • риторический вопрос
    • В то время, когда я спрашивал первокурсников, какие изменения им нужно внести, чтобы поступить на работу, я был сбит с толку, когда спросил барышню, и добавил, например, мне нужно изменить свое мышление? пять-шесть минут, и сказала это очень прямо, без всякого официального акцента., скажи, как там в школе, как будет, когда ты придешь в компанию
    • Когда будет результат: Она не знает, то, что она получила, это неупорядоченный список интервью, возможно, позже будет организовано единое уведомление.

мало информации

Одна сторона (менее 40 минут)

  • Самостоятельное введение
  • Говоря о своей диссертации, вы давно спрашивали на эту тему и просили особых подробностей, считается, что интервьюер лучше знает эту вещь.
  • Расскажите о практике, как это делать, с какими проблемами вы сталкиваетесь и как их решить.
  • Разговор о FM, сериях DeepFM (я сказал это из LR, POLY2, FM, FFM, Wide&Deep, DeepFm)
  • Я решил задачу по алгоритму и получил пятерку.
  • Риторически:
  • Департамент: информационный поток отдела алгоритмов похож на мою стажировку в Weibo.
  • Технология: рекомендуйте Java и Scala, чтобы использовать больше
  • Лично мне он кажется непривлекательным. . .

Дахуа

Одна сторона - инженер по большим данным (интеллектуальный анализ данных) (менее 40 минут)

  • Интервьюер вежлив
  • Самостоятельное введение
  • Сосредоточьтесь на том, чтобы просить о длительной стажировке
  • Сосредоточьтесь на том, чтобы просить игру в течение длительного времени
  • Какие есть команды для проверки указанного префикса файла в linux
  • Разговор об отношениях между ульем и хаупом
  • процесс выполнения hadoop mapreduce
  • Связь класса и объекта Java

Байду

одна сторона (1ч)

  • Самостоятельное введение
  • Представьте стажировку, затем углубитесь в стажировку и задайте очень глубокие вопросы.
  • Спросите, как сделать выборку, если модель не может различить некоторые выборки? Каковы общие стратегии выборки в отрасли? Я так сбит с толку. .
  • Задал кучу fm, типа выражений, сложности, вывода повышенной сложности
  • Знаете ли вы о глубоком обучении? Начните с широкого и глубокого и спросите сумасшедшего, некоторые действительно не знают этого, вам нужно просмотреть его снова
  • Интервьюер сказал, что это DCN (глубокая кросс-сеть), и я подумал, что это глубокая сверточная нейронная сеть. . . , детали получившейся глубокой кросс-сети также забываются
  • Я выступил с инициативой представить DIN и DIEN Али.Он спросил, можно ли использовать эту модель в сценариях рекомендаций по новостям (ответ отрицательный, потому что характер новостей в реальном времени относительно силен, балабала... Я не знаю, можно ли это правильно)
  • Если вы хотите, чтобы вы добавили краткосрочный интерес пользователя, например, новость, которая только что была выпущена с низким баллом, как это изменить, (помню, было обсуждение этого на YouTube, я сказал добавить измерение времени функция или временной распад)
  • Расскажу о БН, почему я предложил БН (я давно не читал нн, я просто сказал внешний вид, легко сходится, интервьюер сказал, что для решения несогласованного входного распределения БН можно дернул обратно на раздачу, забыл об этом)
  • Начиная с LR, я спросил про сгд, как его улучшить, сказал импульс, а как его улучшить, я сказал, что знаю про FTRL
  • Поговорим о форсировании бэггинга, почему у lgb высокая эффективность распараллеливания (ответ на одностороннюю выборку градиента + расчет гистограммы + взаимоисключающее связывание функций)
  • Как анализировать и решать проблему переобучения
  • Алгоритм Вопрос: Сумма трех чисел
  • риторический вопрос
    • Департамент является рекомендуемым стратегическим отделом
    • Основные сцены — это прямая трансляция Baidu и рекомендации по пост-бару.
    • В Python и C++, а не в Java

TouchPal

одна сторона (1ч)

  • Самостоятельное введение

  • Основы структуры данных

    • Отличия массивов от связанных списков, сценарии применения
    • Сумасшедшие спрашивают про алгоритм сортировки, лучшую и худшую среднюю сложность, какие стабильные сортировки (давно не пересматривал, ответ относительно плохой)
    • Проблема обрезки, определяющая процесс алгоритма, анализ временной и пространственной сложности.
    • Расскажите о разнице между процессно-ориентированным, объектным и слайсовым программированием (я...)
  • Основы машинного обучения

    • Расскажите, какие модели классификации вы знаете
    • Разговор о СВМ
    • Разговор об id3 и c4.5
    • Разговор о xgboost и gbdt
    • Поговорите о том, как оценить k из kmeans, качество эффекта кластеризации.
      • k можно рассчитать с использованием правила локтя SSE (сумма квадратов ошибок) и коэффициента силуэта.
    • Расскажите об оценочных показателях классификации, регрессии, рекомендации и поиска.
    • Разговор о LR и FM, продолжение FM (FFM)
    • Расскажите о различных известных вам функциях потерь.
    • Расскажите о закономерности l1 l2, их соответствующих характеристиках.
  • Основы глубокого обучения

    • Расскажите о дипфм, расскажите о том, какие еще фм в нн (FNN, NFM, AFM)
    • Расскажите об аналогичной регуляризации l1, l2 для уменьшения переобучения модели, какие еще существуют методы?
    • Расскажите о процессе sgd→adam (далее простой отзыв после собеседования, а ответ общий)
      • sgd
      • Momentum использует историческую информацию, а это означает, что направление обновления параметра определяется не только текущим градиентом, но также связано с предыдущим накопленным направлением снижения. Это позволяет изменять размеры параметров, направления градиента которых не сильно меняются, чтобы ускорить обновление и уменьшить величину обновлений измерений, где направления градиента сильно меняются. Это приводит к ускорению сходимости и уменьшению колебаний.
      • rmsprop В Adagrad проблема заключается в том, что скорость обучения постепенно снижается до 0, что может привести к преждевременному завершению процесса обучения. Чтобы исправить этот недостаток, мы можем рассмотреть возможность не накапливать все исторические градиенты при расчете импульса второго порядка, а сосредоточиться только на нисходящих градиентах в недавнем временном окне. Согласно этой идее, существует RMSprop, который использует формулу экспоненциального скользящего среднего для расчета
      • adam можно рассматривать как комбинацию RMSprop и Momentum с коррекцией смещения, т.к. инициализация равна 0, происходит сдвиг к начальному значению (слишком большое смещение к 0). Следовательно, импульс первого и второго порядка может быть скорректирован с учетом смещения (коррекция смещения),
    • Представляем исчезающие градиенты и взрывающиеся градиенты
    • Каковы пути решения этих двух проблем
    • Знаете ли вы о многоцелевой оптимизации, трансферном обучении (не знаю)
  • проблема со сценой

    • Позвольте вам добавить функцию типа интереса, что вы делаете?
    • Как обращаться с особенностями возрастной группы
    • Умеете ли вы быстро вычислять похожие векторы (вспомните хэш-ведро, я этого не делал)
      • Для локального расчета хэша точки с одинаковыми большими размерами также похожи в низких размерах, но точки с большими размерами и далеко могут также быть похожими в малых размерах.Вложение должно быть установлено на 1 измерение.Если вы беспокоитесь о включении удаленных , можно настроить еще несколько хеш-функций и так далее.
    • Как оценить качество вашей модели онлайн
    • Дайте вам модель nn, как настроить параметры, как изменить архитектуру
    • Как решить проблему холодного запуска Сторона пользователя, сторона товара
    • Общая архитектура рекомендательной системы
    • Как реализовать эту часть онлайн-вывода
  • риторический вопрос

    • Рекомендации по содержимому TouchPal (художественная литература)
    • В основном использую питон
    • Дождитесь следующего уведомления отдела кадров

Две стороны (45мин)

Интервьюер очень милый и добрый

  • Самостоятельное введение
  • Рассказать о том, какие оптимизации были сделаны на стажировке, и задать несколько вопросов (я не стал рассказывать о стажировке, интервьюер прямо указал, чем я на самом деле занимаюсь)
  • После обсуждения выборки, как инженер-алгоритм может исправить изменения в распределении баллов, вызванные выборкой?
  • Поскольку практической моделью является FM, я подробно рассказал о FM и обсудил обобщение FM.
  • Какой алгоритм оптимизации используется?Кстати, я представлю последующую оптимизацию sgd, sgd→momentun→rmsprop→adam.Я спросил и рассмотрел его.
  • Вы пропустили стажировку и вызвали проблемы в Интернете (правда...)
  • Что делает Hadoop Shuffle, почему один и тот же ключ должен быть собран вместе?
  • Разница между глубокой копией и мелкой копией в python
  • linux замените все a в файле, я сказал awk или tr
  • Вопрос алгоритма: учитывая две строки S и T, подсчитайте количество вхождений T в подпоследовательности S (dfs A)
  • Риторический вопрос: это не тот же отдел, что и интервьюер. . . Второй интервьюер познакомил меня с применением алгоритма в их компании. . .
  • Короче говоря, должно быть мышление инженеров на высшем уровне, не ограничивающееся оптимизацией моделей.

Вы можете посетить мой репозиторий решений LeetCode: https://github.com/azl397985856/leetcode. Сейчас у него 35 тысяч звезд.

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