Зміст:
- Запитання щодо інтерв’ю для машинного навчання
- Алгоритми
- Основи та мови
- Побудова нейронних мереж
- Оцінювальні моделі (продуктивність)
- Проекти
- Поведінкові запитання
Запитання щодо інтерв’ю для машинного навчання
Співбесіда для інженера машинного навчання буде дуже технічною, але це ваш шанс показати, що робить вас найкращим кандидатом.
Підготуйтеся до цих запитань щодо інтерв’ю щодо штучного інтелекту та машинного навчання та як на них відповісти.
Інтерв'юери також можуть використовувати цей список для побудови співбесіди, яка розкриває здатність кандидатів машинного навчання. Ви дізнаєтесь їх технічні навички та вміння критично мислити.
Питання, які слід очікувати на співбесіді з машинним навчанням.
Flickr
Алгоритми
Будьте готові продемонструвати свої знання про неглибокі алгоритми навчання. Якщо ви не претендуєте на сувору посаду вченого з питань даних, інтерв’юер не збирається заглиблюватися в занадто дріб’язкові запитання щодо алгоритму. Але ви повинні мати можливість поговорити про вхідні дані та про те, які алгоритми найкраще використовувати для якого додатка.
1. Коли б ви використовували KNN (k найближчих сусідів)?
KNN зазвичай використовується для класифікації. Це один з найпростіших і найбільш часто використовуваних алгоритмів машинного навчання.
Ваша відповідь може відрізнятися залежно від вашого досвіду, але я б врахував KNN у більшості випадків, коли класи та функції позначені
2. Опишіть, як працює SVM (Support Vector Machine). Як можна використовувати SVM з нелінійними даними?
SVM створює гіперплощину або межу рішення для класифікації вхідних даних на основі того, на якій стороні межі лежать нові дані. Вони оптимізовані шляхом максимального збільшення запасу між межею та точками даних.
Пам'ятайте, що ядра часто складаються з SVM. Ядра перетворюють нелінійні дані в лінійні, щоб можна було оптимізувати SVM.
Основи та мови
Інтерв'юер захоче знати, якими мовами та структурами ви користувались. Вони також використовуватимуть ці запитання, щоб отримати уявлення про те, як швидко ви підберете нову структуру та наскільки ви співзвучні з тим, які основи доступні для штучного інтелекту.
3. Чому ти любиш користуватися
Все у вашому резюме - це чесна гра. Особливо мови програмування, які ви перелічуєте у своїх навичках. Тож будьте готові поговорити про всі тонкощі.
Якщо правдива відповідь полягає в тому, що ви користувались цією мовою лише тому, що саме це використовували на вашій останній роботі, це добре. Просто будьте готові поговорити про переваги та недоліки мови з точки зору машинного навчання.
4. Розкажіть про свій досвід використання
Якщо ви знайомі з структурою, яку використовує компанія, це має бути для вас легко. Звичайно, якщо ви перелічили їх у своєму резюме, ви зможете розповісти про них все.
Якщо ви недостатньо використовували цей конкретний фреймворк, це не обов'язково порушує умови. Будь-який інженер-програміст, вартий його / її солі, повинен мати можливість адаптуватися до нових систем без величезної кривої навчання. В описі роботи, швидше за все, буде перелічено кілька основних платформ, якими користується компанія. Проведіть дослідження цих питань до початку співбесіди.
Деякі аспекти, на які слід зосередитися при дослідженні нової структури:
- З якими завданнями він найкраще справляється?
- Які сильні / слабкі сторони?
- Які мови добре взаємодіють з фреймворком?
Ви повинні вміти розумно говорити про те середовище.
Якщо фреймворк відкритий, спробуйте його на своєму персональному комп’ютері. Також є кілька доступних онлайн-курсів, які ви можете взяти, що дасть вам тимчасову ліцензію.
Побудова нейронних мереж
5. Що б ви зробили, якщо ваш алгоритм не збігається?
Це відкрите питання, яке повинно бути простим для всіх, хто працює в машинному навчанні.
Зменшення рівня навчання (альфа) є гарним першим кроком. Як інтерв’юер, я хотів би бачити, як кандидат описує більш логічний підхід до пошуку альфи. Спробуйте стратегічний діапазон альфа-графіків та побудуйте функцію витрат за кількістю ітерацій.
6. Коли б ви використовували градієнтний спуск проти нормального рівняння?
Ви можете запитати про плюси і мінуси різних методів оптимізації алгоритму.
Пам’ятайте, що нормальне рівняння не можна використовувати з класифікацією, тому це порівняння має значення лише для регресії. Нормальне рівняння вибирається, коли кількість ознак не дуже велика. Він має перевагу перед градієнтним спуском, оскільки вам не потрібно вибирати швидкість навчання або повторювати.
Якщо функцій багато, тоді нормальне рівняння дуже повільне, тому я б обрав градієнтний спуск.
Очікуйте запитань щодо побудови нейронних мереж під час співбесіди для машинного навчання або позиції штучного інтелекту.
WikimediaCommons
Оцінювальні моделі (продуктивність)
Однією з основних завдань інженера машинного навчання є оптимізація нейронної мережі та розуміння того, наскільки добре вона працює.
7. Чому переобладнання погане і як ви можете це виправити?
Надмірність - це коли алгоритм дуже добре підходить для навчальних даних, але точно передбачає нові ситуації. Очевидно, це погано, бо це не корисно для реальних ситуацій.
Опишіть кілька способів покращення переобладнання. Додавання терміну регуляризації та збільшення лямбда може мати хороші результати. Зменшення кількості ознак або зменшення порядку багаточленів є опціями, але це не правильний вибір у кожній ситуації.
8. Як дізнатися, чи хороша ваша модель?
Це схоже на вищезазначене питання, де кандидат повинен розуміти, як оцінювати моделі.
Ви можете пояснити, як доступні навчальні дані поділяються на навчальні дані, дані перевірки та дані тестування та для чого вони використовуються. Я хотів би почути розмову кандидата про зміну ступеня поліномів та лямбда-сигналу та порівняння помилок у даних перевірки.
Проекти
Приходьте на співбесіду, готові обговорити попередні проекти. Як і на будь-якому інтерв’ю, будь-що у вашому резюме - це чесна гра.
Підготуйте портфоліо проектів із роботи, школи чи особистого користування. Вам може бути обмежено те, що ви можете сказати в рамках Угоди про нерозголошення інформації або секретної роботи, тому чітко пояснюйте те, що ви можете обговорити.
Ось декілька запитань, на які ви можете розраховувати:
9. Яким був ваш улюблений проект машинного навчання, над яким ви працювали?
Для цього співбесіди ви можете вибрати проект, який найбільш відповідає роботі, як ваш улюблений. Це дасть вам можливість висвітлити свій відповідний досвід.
Якщо ви віддаєте перевагу поговорити про те, який з них був вашим фактичним фаворитом, щоб дати керівнику з найму уявлення про те, чи сподобається вам нова посада, це теж гарна ідея.
10. Розкажіть мені про складну проблему, яку ви вирішили.
Виберіть проблему, яку легко описати. Частина гарної відповіді на це питання показує, що ви можете описати складні проблеми машинного навчання нетехнічній аудиторії.
Коли ви описуєте своє рішення, не приймайте кредит, якщо це насправді не були вашими зусиллями. Відтворення внесків вашої команди покаже, що ви хороший командний гравець. Якщо застосовно, вкажіть на вплив цього питання на замовника, графік та бюджет. Покажіть, як ваші внески ви додаєте значення нижньому рядку, а не лише негайну проблему.
Поведінкові запитання
Не забувайте, що співбесіда, швидше за все, включатиме поведінкові запитання. І для багатьох інженерів та науковців даних це найскладніше! Ми витрачаємо стільки часу на підготовку до технічних питань, про які ми забуваємо, і це також буде оцінено за тим, як ми вписуємося в команду.
Нижче наведені найбільш важливі поведінкові запитання, щоб ви могли підготуватися заздалегідь. Для запитань, що вимагають опису конкретного часу, використовуйте модель STAR, щоб окреслити свої відповіді. Читайте