ДЪЛБОКО УЧЕНЕ

Здравейте приятели,

Започвам поредица от блогове, обясняващи концепцията за машинно обучение и задълбочено обучение или мога да кажа, че ще предоставя кратки бележки от следните книги. За тази цел бих следвал няколко книги, а именно:

1. Задълбочено обучение от – Иън Добър приятел и Йошуа Бенгио и Арън Курвил („Връзка“)

2. Вероятностна перспектива на машинното обучение: от — Кевин Мърфи

3. Елементите на статистическото обучение: от — Тревър Хасти, Робърт Тибширани и Джером Фрийд

ВЪВЕДЕНИЕ

Днес изкуственият интелект (AI) е процъфтяваща област с много практически приложения и активни изследователски теми. Истинското предизвикателство пред изкуствения интелект е да решава проблеми, които хората решават интуитивно и чрез наблюдение на неща като говорен акцент и лица в изображение.

Решението на горния проблем е да се позволи на компютрите да се учат от опита и да разбират света от гледна точка на йерархия от понятия, като всяка концепция се дефинира по отношение на нейната връзка с по-прости понятия. Чрез събиране на знания от опит, този подход избягва необходимостта човешките оператори официално да определят всички знания, от които компютърът се нуждае. Йерархията на концепциите позволява на компютъра да научава сложни концепции, като ги изгражда от по-прости. Ако начертаем графика, показваща как тези концепции са изградени една върху друга, графиката е дълбока, с много слоеве. Поради тази причина наричаме този подход към задълбочено обучение с ИИ.

Няколко проекта за изкуствен интелект се стремят да кодират знанията за света на официални езици. Компютърът може автоматично да разсъждава относно изявления на тези официални езици, използвайки правила за логически изводи. Това е известно като подхода на базата от знаниякъм изкуствения интелект. Нито един от тези проекти не е довел до голям успех. Един от най-известните подобни проекти е Cyc (Lenat and Guha, 1989).

Това не винаги е възможно да се направи твърда ядро ​​на всяка функция в нашата машина. Така че способността за придобиване на собствени знания е необходима, може да се придобие чрез извличане на модели от необработени данни. Тази възможност е известна като машинно обучение. Ефективността на простите алгоритми за машинно обучение зависи в голяма степен от представянето на данните, които им се дават. Всяка част от информацията, включена в представянето на желания от нас проблем, е известна като функция (Фигура 1).

Значението на характеристиките е много решаващо, например да вземем за пример човешки същества, можем лесно да извършваме аритметика с арабски числа, но правенето на аритметика с римски цифри отнема много повече време. Не е изненадващо, че изборът на представяне има огромен ефект върху производителността на алгоритмите за машинно обучение.

Сега, за да разрешим този проблем, можем да използваме машинно обучение не само за откриване на картографиране от представяне към изход, но и самото представяне. Това се нарича обучение на представяне. Обучение на представяне, т.е. изучаване на представяния на данните, които улесняват извличането на полезна информация при изграждане на класификатори или други предиктори. В случай на вероятностни модели доброто представяне често е това, което улавя задното разпределение на основните обяснителни фактори за наблюдавания вход (Ще разгледаме тази тема по-късно по-подробно). Говорейки за репрезентативно обучение, автоенкодерът е добър пример. Автокодиращо устройство е комбинация от функция за кодиране, която преобразува входните данни в различно представяне, и функция за декодер, която преобразува новото представяне обратно в оригиналния формат.

Разбира се, може да бъде много трудно да се извлекат такива абстрактни характеристики на високо ниво от необработени данни. Много от представянията, като например акцента на говорещия, могат да бъдат идентифицирани само чрез използване на усъвършенствано разбиране на данните, почти на човешко ниво. Почти толкова трудно е да се получи представяне, колкото и да се реши първоначалният проблем, обучението по представяне на пръв поглед не изглежда да ни помага.

Дълбокото обучение решава този централен проблем в обучението с представяне, като въвежда представяния, които са изразени чрез други, по-прости представяния. Дълбокото обучение позволява на компютъра да изгражда сложни концепции от по-прости концепции (Фигура 3). Има два основни начина за измерване на дълбочината на модел (Фигура 4).

  1. Брой последователни инструкции, които трябва да бъдат изпълнени, за да се оцени архитектурата.
  2. Дълбочина на графиката, описваща как концепциите са свързани помежду си.

Не винаги е ясно кой от тези два изгледа – дълбочината на изчислителната графика или дълбочината на графиката на вероятностното моделиране – е най-уместен и тъй като различните хора избират различни набори от най-малки елементи, от които да конструират своите графики, има няма единствена правилна стойност за дълбочината на една архитектура, точно както няма единствена правилна стойност за дължината на компютърна програма. Нито има консенсус относно това колко дълбочина изисква един модел, за да се квалифицира като „дълбок“.

Преминавайки към разделянето на различните видове обучение, Фигура 5 ще ви даде страхотна представа за разликата и приликата между тях.

Най-ранните предшественици на съвременното дълбоко обучение бяха прости линейни модели. Тези модели са проектирани да приемат набор от n входни стойности x1, . . . , xn и ги асоциирайте с изход y. Тези модели биха научили набор от тегла w1, . . . , wn и изчислява техния изходf(x, w) =x1*w1+···+xn*wn. Тази първа вълна от изследвания на невронни мрежи е известна като кибернетика. През 50-те години на миналия век перцептронът (Rosenblatt, 1958, 1962) стана първият модел, който можеше да научи теглата, определящи категориите, дадени примери за входове от всяка категория. Адаптивният линеен елемент (ADALINE), който датира от приблизително същото време, просто връща стойността на f(x), за да предскаже реално число (Widrow and Ho, 1960), и може също да се научи да предсказва тези числа от данни.

Моделите, базирани на f(x, w), използвани от перцептрона и ADALINE, се наричат ​​линейни модели. Линейните модели имат много ограничения. Най-известното е, че не могат да научат функцията XOR, където f([0,1], w) = 1 и f([1,0], w) = 1, но f([1,1], w) = 0 и f ([0,0], w) = 0 (Фигура 7).

Това ограничение на линейния модел доведе до по-сложни техники. Днес задълбоченото обучение процъфтява с много по-висока скорост от всякога преди поради следните възможни причини:

  1. Увеличаване на размерите на набора от данни
  2. Увеличаване на размерите на модела
  3. Повишаване на точността, сложността и въздействието върху реалния свят

Моля, предоставете отзивите си, за да мога да се подобря в следващите статии.

Благодаря на всички

Статии в последователност:

  1. ДЪЛБОКО ОБУЧЕНИЕ
  2. „Задълбочено обучение: Основна математика за задълбочено обучение“
  3. „Дълбоко обучение: Невронна мрежа с предварителна връзка“
  4. „Обратно разпространение“