Зміст[Сховати][Показати]
- 1. Що саме таке глибоке навчання?
- 2. Що відрізняє Deep Learning від Machine Learning?
- 3. Яке ваше поточне розуміння нейронних мереж?
- 4. Що таке персептрон?
- 5. Що таке глибока нейронна мережа?
- 6. Що таке багатошаровий перцептрон (MLP)?
- 7. Яку мету виконують функції активації в нейронній мережі?
- 8. Що таке градієнтний спуск?
- 9. Що саме таке функція витрат?
- 10. Як глибокі мережі можуть перевершити дрібні?
- 11. Опишіть пряме поширення.
- 12. Що таке зворотне поширення?
- 13. Як ви розумієте градієнтне відсікання в контексті глибокого навчання?
- 14. Що таке функції Softmax і ReLU?
- 15. Чи можна навчити модель нейронної мережі з усіма вагами, встановленими на 0?
- 16. Що відрізняє епоху від партії та ітерації?
- 17. Що таке пакетна нормалізація та вилучення?
- 18. Що відрізняє стохастичний градієнтний спуск від пакетного градієнтного спуску?
- 19. Чому важливо включати нелінійності в нейронні мережі?
- 20. Що таке тензор у глибокому навчанні?
- 21. Як би ви вибрали функцію активації для моделі глибокого навчання?
- 22. Що ви маєте на увазі під CNN?
- 23. Що таке багато рівнів CNN?
- 24. Які наслідки надмірної та недостатньої фурнітури, і як їх можна уникнути?
- 25. Що таке RNN у глибокому навчанні?
- 26. Опишіть Оптимізатор Adam
- 27. Глибинні автокодери: що це?
- 28. Що означає Tensor у Tensorflow?
- 29. Пояснення до розрахункового графіка
- 30. Generative adversarial networks (GANs): що це таке?
- 31. Як ви виберете кількість нейронів і прихованих шарів для включення в нейронну мережу під час розробки архітектури?
- 32. Які типи нейронних мереж використовуються для глибокого навчання з підкріпленням?
- Висновок
Глибоке навчання – це не нова ідея. Штучні нейронні мережі служать єдиною основою підмножини машинного навчання, відомої як глибоке навчання.
Глибоке навчання імітує людський мозок, так само як і нейронні мережі, оскільки вони були створені для імітації людського мозку.
Це було деякий час. Сьогодні всі говорять про це, оскільки ми не маємо такої потужності чи даних, як зараз.
За останні 20 років глибоке та машинне навчання з’явилися в результаті різкого зростання потужності обробки.
Щоб допомогти вам підготуватися до будь-яких питань, з якими ви можете зіткнутися під час пошуку роботи своєї мрії, ця публікація проведе вас через низку запитань для глибокого навчання на співбесіді, від простих до складних.
1. Що саме таке глибоке навчання?
Якщо ви відвідуєте а глибоке навчання співбесіди, ви, безсумнівно, розумієте, що таке глибоке навчання. Однак інтерв'юер очікує, що ви надасте детальну відповідь разом із ілюстрацією у відповідь на це запитання.
Для того, щоб тренуватися нейронні мережі для глибокого навчання необхідно використовувати значні обсяги організованих або неструктурованих даних. Щоб знайти приховані закономірності та характеристики, він виконує складні процедури (наприклад, відрізняє зображення кота від зображення собаки).
2. Що відрізняє Deep Learning від Machine Learning?
Як галузь штучного інтелекту, відома як машинне навчання, ми навчаємо комп’ютери за допомогою даних, статистичних і алгоритмічних методів, щоб вони з часом ставали кращими.
Як аспект навчання за допомогою машини, глибоке навчання імітує архітектуру нейронної мережі, яку можна побачити в людському мозку.
3. Яке ваше поточне розуміння нейронних мереж?
Штучні системи, відомі як нейронні мережі, дуже схожі на органічні нейронні мережі, які є в людському тілі.
Використовуючи техніку, яка нагадує те, як людський мозок функцій, нейронна мережа — це набір алгоритмів, які спрямовані на виявлення базових кореляцій у частині даних.
Ці системи отримують знання, пов’язані з конкретними завданнями, піддаючи себе низці наборів даних і прикладів, а не дотримуючись будь-яких правил для конкретних завдань.
Ідея полягає в тому, що замість того, щоб мати заздалегідь запрограмоване розуміння цих наборів даних, система вивчає відмінні характеристики з даних, які вона подає.
Нижче наведено три мережеві рівні, які найчастіше використовуються в нейронних мережах:
- Вхідний шар
- Прихований шар
- Вихідний шар
4. Що таке персептрон?
Біологічний нейрон, який знаходиться в мозку людини, можна порівняти з перцептроном. Кілька вхідних даних отримує перцептрон, який потім виконує численні перетворення та функції та видає вихід.
У двійковій класифікації використовується лінійна модель, яка називається персептрон. Він моделює нейрон із різноманітними вхідними сигналами, кожен з яких має різну вагу.
Нейрон обчислює функцію, використовуючи ці зважені вхідні дані, і виводить результати.
5. Що таке глибока нейронна мережа?
Глибока нейронна мережа — це штучна нейронна мережа (ШНМ) з декількома шарами між вхідним і вихідним шарами (ДНМ).
Глибокі нейронні мережі — це нейронні мережі з глибокою архітектурою. Слово «глибокий» відноситься до функцій з багатьма рівнями та одиницями на одному рівні. Точніші моделі можна створити, додавши більше і більші шари, щоб охопити більше рівнів візерунків.
6. Що таке багатошаровий перцептрон (MLP)?
Вхідний, прихований і вихідний рівні присутні в MLP, подібно до нейронних мереж. Він побудований подібно до одношарового персептрона з одним або кількома прихованими шарами.
Двійковий вихід однорівневого персептрона може класифікувати лише лінійні роздільні класи (0,1), тоді як MLP може класифікувати нелінійні класи.
7. Яку мету виконують функції активації в нейронній мережі?
Функція активації визначає, чи повинен нейрон активуватися на найфундаментальнішому рівні. Будь-яка функція активації може прийняти зважену суму вхідних даних плюс зміщення як вхідні дані. Функції активації включають функцію кроку, Sigmoid, ReLU, Tanh і Softmax.
8. Що таке градієнтний спуск?
Найкращим підходом для мінімізації функції вартості або помилки є градієнтний спуск. Метою є знаходження локально-глобальних мінімумів функції. Це вказує шлях, яким має йти модель, щоб мінімізувати помилку.
9. Що саме таке функція витрат?
Функція вартості — це показник, який дає змогу оцінити, наскільки добре працює ваша модель; це іноді називають «втратою» або «помилкою». Під час зворотного поширення він використовується для обчислення похибки вихідного шару.
Ми використовуємо цю неточність для подальшого навчання нейронної мережі, проштовхуючи її назад через нейронну мережу.
10. Як глибокі мережі можуть перевершити дрібні?
Приховані шари додаються до нейронних мереж на додаток до вхідного та вихідного шарів. Між вхідним і вихідним рівнями дрібні нейронні мережі використовують один прихований шар, тоді як глибокі нейронні мережі використовують численні рівні.
Неглибока мережа потребує кількох параметрів, щоб мати можливість відповідати будь-якій функції. Глибокі мережі можуть краще відповідати функціям навіть з невеликою кількістю параметрів, оскільки вони включають кілька рівнів.
Зараз перевагу надають глибоким мережам через їх універсальність у роботі з будь-яким типом моделювання даних, будь то для розпізнавання мови чи зображення.
11. Опишіть пряме поширення.
Вхідні дані передаються разом із вагами до підземного шару в процесі, відомому як пересилання.
Вихідні дані функції активації обчислюються в кожному прихованому шарі перед тим, як обробка може перейти до наступного шару.
Процес починається на вхідному рівні та просувається до кінцевого вихідного рівня, що називається прямим поширенням.
12. Що таке зворотне поширення?
Коли вагові коефіцієнти та зміщення коригуються в нейронній мережі, зворотне поширення використовується для зменшення функції витрат шляхом попереднього спостереження за тим, як змінюється значення.
Розуміння градієнта на кожному прихованому шарі робить обчислення цієї зміни простим.
Процес, відомий як зворотне поширення, починається на вихідному рівні та рухається назад до вхідних шарів.
13. Як ви розумієте градієнтне відсікання в контексті глибокого навчання?
Відсікання градієнта — це метод вирішення проблеми вибухових градієнтів, які виникають під час зворотного поширення (стан, за якого з часом накопичуються значні неправильні градієнти, що призводить до значних коригувань вагових коефіцієнтів моделі нейронної мережі під час навчання).
Вибухові градієнти — це проблема, яка виникає, коли градієнти стають занадто великими під час навчання, що робить модель нестабільною. Якщо градієнт перетнув очікуваний діапазон, значення градієнта поелементно змінюються до попередньо визначеного мінімального або максимального значення.
Відсікання градієнта підвищує чисельну стабільність нейронної мережі під час навчання, але воно має мінімальний вплив на продуктивність моделі.
14. Що таке функції Softmax і ReLU?
Функція активації під назвою Softmax створює вихідні дані в діапазоні від 0 до 1. Кожен вихідний сигнал ділиться таким чином, що сума всіх вихідних даних дорівнює одиниці. Для вихідних шарів часто використовується Softmax.
Rectified Linear Unit, іноді відомий як ReLU, є найбільш використовуваною функцією активації. Якщо X позитивний, він виводить X, інакше він виводить нулі. ReLU регулярно наноситься на поховані шари.
15. Чи можна навчити модель нейронної мережі з усіма вагами, встановленими на 0?
Нейронна мережа ніколи не навчиться виконувати задану роботу, отже, неможливо навчити модель, ініціалізувавши всі вагові коефіцієнти до 0.
Похідні залишаться незмінними для кожної ваги в W [1], якщо всі ваги ініціалізовані нулем, що призведе до того, що нейрони вивчатимуть ті самі характеристики ітеративно.
Не просто ініціалізація ваг до 0, а до будь-якої форми константи, ймовірно, призведе до результату нижче номінального.
16. Що відрізняє епоху від партії та ітерації?
Різні форми обробки наборів даних і методи градієнтного спуску включають пакет, ітерацію та епоху. Epoch передбачає однократне проходження нейронної мережі з повним набором даних, як у прямому, так і в зворотному напрямку.
Щоб отримати надійні результати, набір даних часто передається кілька разів, оскільки він занадто великий, щоб передати його за одну спробу.
Така практика багаторазового запуску невеликої кількості даних через нейронну мережу називається ітерацією. Щоб гарантувати, що набір даних успішно проходить через нейронні мережі, його можна розділити на кілька пакетів або підмножин, що називається пакетуванням.
Залежно від розміру збору даних, усі три методи — епоха, ітерація та розмір пакету — по суті є способами використання алгоритм градієнтного спуску.
17. Що таке пакетна нормалізація та вилучення?
Вилучення запобігає переобладнанню даних шляхом випадкового видалення як видимих, так і прихованих мережевих блоків (зазвичай видаляється 20 відсотків вузлів). Це подвоює кількість ітерацій, необхідних для конвергенції мережі.
Завдяки нормалізації вхідних даних на кожному рівні, щоб мати середнє вихідне значення активації нуль і стандартне відхилення одиниці, пакетна нормалізація є стратегією підвищення продуктивності та стабільності нейронних мереж.
18. Що відрізняє стохастичний градієнтний спуск від пакетного градієнтного спуску?
Пакетний градієнтний спуск:
- Повний набір даних використовується для побудови градієнта для пакетного градієнта.
- Величезний обсяг даних і повільне оновлення ваги ускладнюють конвергенцію.
Стохастичний градієнтний спуск:
- Стохастичний градієнт використовує одну вибірку для обчислення градієнта.
- Завдяки частішим змінам ваги він збігається значно швидше, ніж пакетний градієнт.
19. Чому важливо включати нелінійності в нейронні мережі?
Незалежно від того, скільки там шарів, нейронна мережа поводитиметься як перцептрон за відсутності нелінійності, роблячи вихід лінійно залежним від входу.
Іншими словами, нейронна мережа з n шарів і m прихованих одиниць і функціями лінійної активації еквівалентна лінійній нейронній мережі без прихованих шарів і з можливістю виявляти лише лінійні кордони поділу.
Без нелінійності нейронна мережа не в змозі вирішувати складні проблеми та точно класифікувати вхідні дані.
20. Що таке тензор у глибокому навчанні?
Багатовимірний масив, відомий як тензор, служить узагальненням матриць і векторів. Це важлива структура даних для глибокого навчання. Для представлення тензорів використовуються N-вимірні масиви фундаментальних типів даних.
Кожен компонент тензора має однаковий тип даних, і цей тип даних завжди відомий. Цілком можливо, що відома лише частина форми, а саме, скільки є розмірів і розмір кожного з них.
У ситуаціях, коли вхідні дані також повністю відомі, більшість операцій створюють повністю відомі тензори; в інших випадках форму тензора можна встановити лише під час виконання графа.
21. Як би ви вибрали функцію активації для моделі глибокого навчання?
- Має сенс використовувати лінійну функцію активації, якщо результат, який слід очікувати, є фактичним.
- Сигмоїдну функцію слід використовувати, якщо результатом, який необхідно спрогнозувати, є ймовірність двійкового класу.
- Функцію Tanh можна використовувати, якщо прогнозований результат містить дві класифікації.
- Завдяки простоті обчислення функція ReLU застосовна в широкому діапазоні ситуацій.
22. Що ви маєте на увазі під CNN?
До глибоких нейронних мереж, які спеціалізуються на оцінюванні візуальних зображень, належать згорткові нейронні мережі (CNN або ConvNet). Тут, а не в нейронних мережах, де вектор представляє вхідні дані, вхідні дані є багатоканальним зображенням.
Багатошарові персептрони використовуються CNN особливим чином, що вимагає дуже невеликої попередньої обробки.
23. Що таке багато рівнів CNN?
Згортковий рівень: основним є згортковий рівень, який має різноманітні фільтри, які можна вивчати, і сприйнятливе поле. Цей початковий рівень приймає вхідні дані та витягує їх характеристики.
Рівень ReLU: роблячи мережі нелінійними, цей шар перетворює негативні пікселі на нульові.
Рівень об’єднання: шляхом мінімізації параметрів обробки та мережі, рівень об’єднання поступово мінімізує просторовий розмір представлення. Максимальне об’єднання є найбільш використовуваним методом об’єднання.
24. Які наслідки надмірної та недостатньої фурнітури, і як їх можна уникнути?
Це відоме як переобладнання, коли модель вивчає тонкощі та шум у навчальних даних до точки, де це негативно впливає на використання моделлю нових даних.
Більш імовірно, що це станеться з нелінійними моделями, які є більш адаптивними під час вивчення цільової функції. Модель можна навчити виявляти автомобілі та вантажівки, але вона може лише ідентифікувати транспортні засоби певної форми.
З огляду на те, що він був навчений працювати лише з одним типом вантажівки, він міг не виявити бортову вантажівку. На даних навчання модель працює добре, але не в реальному світі.
Недостатньо підібрана модель відноситься до моделі, яка недостатньо навчена на даних або не здатна узагальнювати нову інформацію. Це часто трапляється, коли модель навчається з недостатніми або неточними даними.
Точність і продуктивність скомпрометовані недостатньою комплектацією.
Повторна вибірка даних для оцінки точності моделі (K-кратна перехресна перевірка) і використання набору даних перевірки для оцінки моделі є двома способами уникнути надмірного та недостатнього налаштування.
25. Що таке RNN у глибокому навчанні?
Рекурентні нейронні мережі (RNN), загальний різновид штучних нейронних мереж, називаються абревіатурою RNN. Вони використовуються, серед іншого, для обробки геномів, рукописного тексту та послідовностей даних. Для необхідного навчання RNN використовують зворотне поширення.
26. Опишіть Оптимізатор Adam
Оптимізатор Адама, також відомий як адаптивний імпульс, є технікою оптимізації, розробленою для роботи з галасливими ситуаціями з рідкісними градієнтами.
На додаток до оновлення параметрів для швидшої конвергенції, оптимізатор Adam покращує конвергенцію за допомогою імпульсу, гарантуючи, що модель не опиниться в пастці в сідловій точці.
27. Глибинні автокодери: що це?
Глибокий автокодер — це загальна назва для двох симетричних мереж глибокого переконання, які зазвичай включають чотири або п’ять неглибоких рівнів для кодуючої половини мережі та інший набір із чотирьох або п’яти рівнів для декодуючої половини.
Ці шари утворюють основу мереж глибоких переконань і обмежені машинами Больцмана. Після кожного RBM глибокий автокодер застосовує двійкові зміни до набору даних MNIST.
Вони також можуть бути використані в інших наборах даних, де випрямлені перетворення Гауса будуть кращими перед RBM.
28. Що означає Tensor у Tensorflow?
Це ще одне питання для співбесіди з глибоким навчанням, яке регулярно задають. Тензор — це математична концепція, яка візуалізується як масиви вищих розмірів.
Тензори — це ці масиви даних, які надаються як вхідні дані для нейронної мережі та мають різні розміри та рейтинги.
29. Пояснення до розрахункового графіка
Основою TensorFlow є побудова обчислювального графіка. Кожен вузол функціонує в мережі вузлів, де вузли позначають математичні операції, а ребра — тензори.
Його іноді називають «Граф потоку даних», оскільки потоки даних мають форму графіка.
30. Generative adversarial networks (GANs): що це таке?
У Deep Learning генеративне моделювання здійснюється за допомогою генеративних змагальних мереж. Це неконтрольована робота, результат якої створюється шляхом виявлення шаблонів у вхідних даних.
Дискримінатор використовується для класифікації екземплярів, створених генератором, тоді як генератор використовується для створення нових прикладів.
31. Як ви виберете кількість нейронів і прихованих шарів для включення в нейронну мережу під час розробки архітектури?
Враховуючи бізнес-завдання, точну кількість нейронів і прихованих шарів, необхідних для побудови архітектури нейронної мережі, неможливо визначити за допомогою жорстких правил.
У нейронній мережі розмір прихованого шару повинен бути десь посередині розміру вхідного та вихідного шарів.
Початок роботи зі створення нейронної мережі може бути досягнутий кількома простими методами, однак:
Почати з деякого базового систематичного тестування, щоб побачити, що буде найкращим для будь-якого конкретного набору даних на основі попереднього досвіду роботи з нейронними мережами в подібних умовах реального світу, є найкращим способом вирішення кожної унікальної проблеми прогнозного моделювання в реальному світі.
Конфігурацію мережі можна вибрати на основі знання предметної області та попереднього досвіду роботи з нейронними мережами. Оцінюючи налаштування нейронної мережі, варто почати з кількості шарів і нейронів, які використовуються для пов’язаних проблем.
Складність нейронної мережі слід поступово збільшувати на основі прогнозованого результату та точності, починаючи з простого дизайну нейронної мережі.
32. Які типи нейронних мереж використовуються для глибокого навчання з підкріпленням?
- У парадигмі машинного навчання під назвою навчання з підкріпленням модель працює так, щоб максимізувати ідею сукупної винагороди, як це роблять живі речі.
- Ігри та безпілотні транспортні засоби описуються як проблеми, що включають навчання.
- Екран використовується як вхідні дані, якщо проблема, яку потрібно представити, є грою. Щоб створити вихідні дані для наступних етапів, алгоритм приймає пікселі як вхідні дані та обробляє їх за допомогою багатьох рівнів згорткових нейронних мереж.
- Результати дій моделі, сприятливі чи погані, діють як підкріплення.
Висновок
Глибинне навчання з роками набуло популярності, маючи застосування практично в усіх сферах промисловості.
Компанії все більше шукають компетентних експертів, які можуть розробляти моделі, які відтворюють людську поведінку, використовуючи підходи глибокого та машинного навчання.
Кандидати, які вдосконалюють свої навички та зберігають свої знання про ці передові технології, можуть знайти широкий спектр можливостей роботи з привабливою винагородою.
Ви можете почати з інтерв’ю тепер, коли ви добре розумієте, як відповідати на деякі з найбільш часто запитуваних питань інтерв’ю з глибоким навчанням. Зробіть наступний крок на основі ваших цілей.
Відвідайте Hashdork's Серія інтерв'ю підготуватися до співбесід.
залишити коментар