Съдържание[Крия][Покажи]
- 1. Какво точно е Deep Learning?
- 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 Optimizer
- 27. Дълбоки автоенкодери: какви са те?
- 28. Какво означава Tensor в Tensorflow?
- 29. Обяснение на изчислителна графика
- 30. Генеративни състезателни мрежи (GANs): какво представляват те?
- 31. Как ще изберете броя на невроните и скритите слоеве, които да включите в невронната мрежа, докато проектирате архитектурата?
- 32. Какви видове невронни мрежи се използват при обучение с дълбоко укрепване?
- Заключение
Дълбокото обучение не е съвсем нова идея. Изкуствените невронни мрежи служат като единствената основа на подмножеството на машинното обучение, известно като дълбоко обучение.
Дълбокото обучение е имитатор на човешкия мозък, подобно на невронните мрежи, тъй като те са създадени, за да имитират човешкия мозък.
Имаше това от известно време. Тези дни всички говорят за това, тъй като нямаме почти толкова много процесорна мощност или данни, колкото сега.
През последните 20 години дълбокото обучение и машинното обучение се появиха в резултат на драматичното нарастване на капацитета за обработка.
За да ви помогне да се подготвите за всякакви запитвания, с които бихте могли да се сблъскате, когато търсите мечтаната си работа, тази публикация ще ви преведе през редица въпроси за интервю за дълбоко обучение, вариращи от прости до сложни.
1. Какво точно е Deep Learning?
Ако посещавате а дълбоко учене интервю, несъмнено разбирате какво е задълбочено обучение. Интервюиращият обаче очаква да предоставите подробен отговор заедно с илюстрация в отговор на този въпрос.
За да тренирате невронни мрежи за задълбочено обучение трябва да се използват значителни количества организирани или неструктурирани данни. За да открие скрити модели и характеристики, той извършва сложни процедури (например разграничаване на изображението на котка от това на куче).
2. Какво отличава Deep Learning от Machine Learning?
Като клон на изкуствения интелект, известен като машинно обучение, ние обучаваме компютри, използвайки данни и статистически и алгоритмични техники, така че да се подобряват с течение на времето.
Като аспект на машинно обучение, дълбокото обучение имитира архитектурата на невронната мрежа, наблюдавана в човешкия мозък.
3. Какви са настоящите ви разбирания за невронните мрежи?
Изкуствените системи, известни като невронни мрежи, приличат много на органичните невронни мрежи, открити в човешкото тяло.
Използвайки техника, която наподобява как човешки мозък функции, невронната мрежа е колекция от алгоритми, която има за цел да идентифицира основните корелации в част от данните.
Тези системи придобиват специфични за задачите знания, като се излагат на редица набори от данни и примери, вместо да следват каквито и да било специфични за задачите правила.
Идеята е, че вместо да има предварително програмирано разбиране на тези набори от данни, системата научава отличителни характеристики от данните, които се подават.
Трите мрежови слоя, които най-често се използват в невронните мрежи, са както следва:
- Входен слой
- Скрит слой
- Изходен слой
4. Какво точно е персептрон?
Биологичният неврон, открит в човешкия мозък, е сравним с перцептрон. Множество входове се получават от перцептрона, който след това извършва множество трансформации и функции и произвежда изход.
Линеен модел, наречен перцептрон, се използва в двоичната класификация. Той симулира неврон с различни входове, всеки с различно тегло.
Невронът изчислява функция, използвайки тези претеглени входове и извежда резултатите.
5. Какво точно е дълбока невронна мрежа?
Дълбоката невронна мрежа е изкуствена невронна мрежа (ANN) с няколко слоя между входния и изходния слой (DNN).
Дълбоките невронни мрежи са невронни мрежи с дълбока архитектура. Думата „дълбоко“ се отнася до функции с много нива и единици в един слой. По-точни модели могат да бъдат създадени чрез добавяне на повече и по-големи слоеве за улавяне на по-големи нива на модели.
6. Какво точно е многослоен перцептрон (MLP)?
Входящите, скритите и изходните слоеве присъстват в MLP, подобно на невронните мрежи. Изграден е подобно на еднослоен перцептрон с един или повече скрити слоя.
Двоичният изход на еднослоен перцептрон може да категоризира само линейни разделими класове (0,1), докато MLP може да класифицира нелинейни класове.
7. Каква е целта на функциите за активиране в невронната мрежа?
Функцията за активиране определя дали даден неврон трябва да се активира на най-фундаменталното ниво. Всяка функция за активиране може да приеме претеглената сума на входовете плюс отклонението като вход. Функциите за активиране включват стъпковата функция, Sigmoid, ReLU, Tanh и Softmax.
8. Какво точно е градиентно спускане?
Най-добрият подход за минимизиране на функция на разходите или грешка е градиентно спускане. Намирането на локално-глобалните минимуми на функцията е целта. Това определя пътя, който моделът трябва да следва, за да минимизира грешката.
9. Какво точно е функцията на разходите?
Функцията на разходите е метрика за оценка на това колко добре се представя вашият модел; понякога е известно като „загуба“ или „грешка“. По време на обратното разпространение се използва за изчисляване на грешката на изходния слой.
Ние използваме тази неточност, за да подпомогнем процесите на обучение на невронната мрежа, като я тласкаме обратно през невронната мрежа.
10. Как дълбоките мрежи могат да превъзхождат плитките?
Скритите слоеве се добавят към невронните мрежи в допълнение към входните и изходните слоеве. Между входния и изходния слой, плитките невронни мрежи използват един скрит слой, докато дълбоките невронни мрежи използват множество нива.
Една плитка мрежа изисква няколко параметъра, за да може да се вмести във всяка функция. Дълбоките мрежи могат да отговарят на функциите по-добре дори с малък брой параметри, тъй като включват няколко слоя.
Дълбоките мрежи вече са предпочитани поради тяхната гъвкавост при работа с всякакъв тип моделиране на данни, независимо дали става дума за разпознаване на реч или картина.
11. Опишете разпространението напред.
Входящите данни се предават заедно с теглата към заровения слой в процес, известен като препращащо разпространение.
Резултатът от функцията за активиране се изчислява във всеки един скрит слой, преди обработката да може да премине към следващия слой.
Процесът започва от входния слой и напредва до крайния изходен слой, поради което се нарича разпространение напред.
12. Какво е обратно разпространение?
Когато теглата и отклоненията се коригират в невронната мрежа, обратното разпространение се използва за намаляване на функцията на разходите, като първо се наблюдава как се променя стойността.
Разбирането на градиента на всеки скрит слой прави изчисляването на тази промяна лесно.
Процесът, известен като обратно разпространение, започва от изходния слой и се движи назад към входните слоеве.
13. В контекста на дълбокото обучение, как разбирате градиентното изрязване?
Изрязването на градиента е метод за разрешаване на проблема с експлодиращи градиенти, които възникват по време на обратно разпространение (състояние, при което значителни неправилни градиенти се натрупват с течение на времето, което води до значителни корекции на теглата на модела на невронната мрежа по време на обучение).
Експлозивните градиенти са проблем, който възниква, когато градиентите станат твърде големи по време на обучение, което прави модела нестабилен. Ако градиентът е преминал очаквания диапазон, стойностите на градиента се избутват елемент по елемент до предварително определена минимална или максимална стойност.
Градиентното изрязване подобрява числената стабилност на невронна мрежа по време на обучение, но има минимално въздействие върху производителността на модела.
14. Какво представляват функциите Softmax и ReLU?
Функция за активиране, наречена Softmax, произвежда изход в диапазона между 0 и 1. Всеки изход е разделен така, че сумата от всички изходи е едно. За изходни слоеве често се използва Softmax.
Ректифицираната линейна единица, понякога известна като 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 Optimizer
Оптимизаторът на Адам, известен също като адаптивна инерция, е техника за оптимизация, разработена за справяне с шумни ситуации с оскъдни градиенти.
В допълнение към предоставянето на актуализации за всеки параметър за по-бърза конвергенция, оптимизаторът на Adam подобрява конвергенцията чрез инерция, като гарантира, че моделът няма да бъде хванат в седловата точка.
27. Дълбоки автоенкодери: какви са те?
Deep autoencoder е общото име за две симетрични мрежи с дълбоки вярвания, които обикновено включват четири или пет плитки слоя за кодиращата половина на мрежата и друг набор от четири или пет слоя за декодиращата половина.
Тези слоеве формират основата на дълбоки мрежи от вярвания и са ограничени от машините на Болцман. След всеки RBM дълбок автоенкодер прилага двоични промени към набора от данни MNIST.
Те могат да се използват и в други набори от данни, където коригираните трансформации на Гаус биха били предпочитани пред RBM.
28. Какво означава Tensor в Tensorflow?
Това е друг въпрос за интервю за дълбоко обучение, който редовно се задава. Тензорът е математическа концепция, която се визуализира като масиви с по-високо измерение.
Тензорите са тези масиви от данни, които се предоставят като вход към невронната мрежа и имат различни измерения и класиране.
29. Обяснение на изчислителна графика
Основата на TensorFlow е изграждането на изчислителна графика. Всеки възел функционира в мрежа от възли, където възлите означават математически операции, а ръбовете - тензори.
Понякога се нарича „Графика на потока от данни“, тъй като данните протичат във формата на графика.
30. Генеративни състезателни мрежи (GANs): какво представляват те?
В Deep Learning генеративното моделиране се осъществява с помощта на генеративни състезателни мрежи. Това е работа без надзор, при която резултатът се получава чрез идентифициране на модели във входните данни.
Дискриминаторът се използва за категоризиране на екземплярите, произведени от генератора, докато генераторът се използва за създаване на нови примери.
31. Как ще изберете броя на невроните и скритите слоеве, които да включите в невронната мрежа, докато проектирате архитектурата?
Като се има предвид бизнес предизвикателство, точният брой неврони и скрити слоеве, необходими за изграждане на архитектура на невронна мрежа, не може да бъде определен от никакви твърди и бързи правила.
В една невронна мрежа размерът на скрития слой трябва да е някъде по средата на размера на входния и изходния слой.
Въпреки това може да се постигне преднина в създаването на дизайн на невронна мрежа с няколко прости метода:
Започването с някои основни систематични тестове, за да се види какво би се представило най-добре за всеки конкретен набор от данни въз основа на предишен опит с невронни мрежи в подобни настройки в реалния свят, е най-добрият начин за справяне с всяко уникално предизвикателство за прогнозно моделиране в реалния свят.
Конфигурацията на мрежата може да бъде избрана въз основа на нечии познания за домейна на проблема и предишен опит с невронни мрежи. Когато оценявате настройката на невронна мрежа, броят на слоевете и невроните, използвани за свързани проблеми, е добро място за начало.
Сложността на невронната мрежа трябва постепенно да се увеличава въз основа на прогнозирания резултат и точност, като се започне с прост дизайн на невронна мрежа.
32. Какви видове невронни мрежи се използват при обучение с дълбоко укрепване?
- В парадигма за машинно обучение, наречена обучение с подсилване, моделът действа, за да увеличи максимално идеята за кумулативно възнаграждение, точно както правят живите неща.
- И игрите, и самоуправляващите се превозни средства се описват като проблеми, включващи укрепване.
- Екранът се използва като вход, ако проблемът, който трябва да бъде представен, е игра. За да произведе изход за следващите фази, алгоритъмът приема пикселите като вход и ги обработва чрез много слоеве от конволюционни невронни мрежи.
- Резултатите от действията на модела, благоприятни или лоши, действат като подкрепление.
Заключение
Популярността на Deep Learning нараства през годините с приложения в почти всяка индустрия.
Компаниите все повече търсят компетентни експерти, които могат да проектират модели, които възпроизвеждат човешкото поведение, използвайки подходи за дълбоко обучение и машинно обучение.
Кандидатите, които повишават набора от умения и поддържат знанията си за тези авангардни технологии, могат да намерят широка гама от възможности за работа с атрактивно възнаграждение.
Можете да започнете с интервютата сега, когато имате добра представа как да отговорите на някои от най-често задаваните въпроси за интервю за дълбоко обучение. Направете следващата стъпка въз основа на вашите цели.
Посетете Hashdork's Интервюта да се подготвят за интервюта.
Оставете коментар