Какво е невронна мрежа? Въведение в изкуствените невронни мрежи



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

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

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





как да инсталирам hadoop в ubuntu

Ето списък с теми, които ще бъдат разгледани в това Блог:

  1. Какво е невронна мрежа?
  2. Какво е дълбоко обучение?
  3. Разлика между AI, ML и, DL
  4. Нужда от задълбочено обучение
  5. Случай за дълбоко обучение
  6. Как работят невронните мрежи?
  7. Невронна мрежа, обяснена с пример

Проста дефиниция на невронна мрежа

Моделирано в съответствие с човешкия мозък, a Невронната мрежа е създадена, за да имитира функционалността на човешкия мозък . Човешкият мозък е невронна мрежа, изградена от множество неврони, по подобен начин изкуствената невронна мрежа (ANN) се състои от множество персептрони (обяснено по-късно).



Невронна мрежа - Какво е невронна мрежа - Edureka

Невронната мрежа се състои от три важни слоя:

  • Входен слой: Както подсказва името, този слой приема всички входове, предоставени от програмиста.
  • Скрит слой: Между входния и изходния слой е набор от слоеве, известни като скрити слоеве. В този слой се извършват изчисления, които водят до изхода.
  • Изходен слой: Входовете преминават през поредица от трансформации чрез скрития слой, което накрая води до изхода, който се доставя чрез това слой.

Преди да вникнем в дълбините на това как функционира невронната мрежа, нека разберем какво е Дълбоко обучение.



Какво представлява дълбокото обучение?

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

И така, какво всъщност е дълбокото обучение?

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

Разлика между AI, ML и DL (Изкуствен интелект срещу машинно обучение срещу дълбоко обучение)

Хората често са склонни да мислят така , , и Дълбоко обучение са еднакви, тъй като имат общи приложения. Например Siri е приложение на AI, машинно обучение и дълбоко обучение.

И така, как са свързани тези технологии?

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

В обобщение AI, машинното обучение и дълбокото обучение са взаимосвързани полета. Машинно обучение и дълбоко обучение помага на изкуствения интелект, като предоставя набор от алгоритми и невронни мрежи за решаване проблеми, управлявани от данни.

След като вече сте запознати с основите, нека разберем какво е довело до необходимостта от задълбочено обучение.

Необходимост от задълбочено обучение: Ограничения на традиционните алгоритми и техники за машинно обучение

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

Ето някои ограничения на машинното обучение:

  1. Не може да се обработят данни с големи размери: Машинното обучение може да обработва само малки измерения на данни, които съдържат малък набор от променливи. Ако искате да анализирате данни, съдържащи 100s променливи, тогава машинното обучение не може да се използва.
  2. Инженерингът на функции е ръчен: Помислете за случай на употреба, когато имате 100 променливи предиктора и трябва да стесните само значимите. За да направите това, трябва ръчно да проучите връзката между всяка от променливите и да разберете кои от тях са важни при прогнозирането на резултата. Тази задача е изключително досадна и отнема много време за разработчик.
  3. Не е идеален за извършване на откриване на обекти и обработка на изображения: Тъй като откриването на обекти изисква високоразмерни данни, машинното обучение не може да се използва за обработка на набори от данни с изображения, то е идеално само за набори от данни с ограничен брой функции.

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

Случай / приложения за дълбоко обучение

Знаете ли, че PayPal обработва над 235 милиарда долара плащания от четири милиарда транзакции от своите над 170 милиона клиенти? Той използва това огромно количество данни, за да идентифицира възможни измамни дейности, наред с други причини.

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

Компанията разчита на технологията за дълбоко обучение и машинно обучение от около 10 години. Първоначално екипът за наблюдение на измамите използва прости, линейни модели. Но с течение на годините компанията премина към по-усъвършенствана технология за машинно обучение, наречена Deep Learning.

Управител на риска от измами и изследовател на данни в PayPal, Ke Wang, цитиран:

„Това, което се радваме от по-модерното, усъвършенствано машинно обучение, е способността му да консумира много повече данни, да обработва слоеве и слоеве на абстракция и да може да„ вижда “неща, които една по-проста технология не би могла да види, дори и хората да не мога да виждам. '

Един прост линеен модел може да консумира около 20 променливи. Въпреки това, с технологията за дълбоко обучение човек може да управлява хиляди точки от данни. Следователно чрез прилагане Технология за дълбоко обучение, PayPal най-накрая може да анализира милиони транзакции, за да идентифицира всяка измама дейност.

Сега нека да отидем в дълбините на невронната мрежа и да разберем как работят.

С ++ алгоритъм сортиране

Как работи невронната мрежа?

За да разберем невронните мрежи, трябва да го разделим и да разберем най-основната единица на невронната мрежа, т.е. Perceptron.

Какво е перцептрон?

Perceptron е еднослойна невронна мрежа, която се използва за класифициране на линейни данни. Той има 4 важни компонента:

  1. Входове
  2. Тежести и пристрастия
  3. Функция за сумиране
  4. Функция за активиране или преобразуване

Основната логика на Perceptron е следната:

Входовете (x), получени от входния слой, се умножават по зададените им тегла w. След това умножените стойности се добавят, за да образуват претеглената сума. След това претеглената сума на входовете и съответните им тегла се прилагат към съответната функция за активиране. Функцията за активиране преобразува входа към съответния изход.

Тежести и пристрастия в дълбокото обучение

Защо трябва да присвояваме тежести на всеки вход?

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

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

Функция за сумиране

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

Функция за активиране

Основната цел на функциите за активиране е да съпоставят претеглената сума с изхода. Активиращи функции като tanh, ReLU, сигмоид и т.н. са примери за трансформационни функции.

За да научите повече за функциите на перцептроните, можете да преминете през това Блог.

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

Невронни мрежи, обяснени с пример

Помислете за сценарий, при който трябва да изградите изкуствена невронна мрежа (ANN), която класифицира изображенията в два класа:

  • Клас А: Съдържащи изображения на неболни листа
  • Клас B: Съдържащи изображения на болни листа

И така, как да създадете невронна мрежа, която класифицира листата в болни и неболни култури?

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

Например, ако изображението е съставено от 30 на 30 пиксела, тогава общият брой на пикселите ще бъде 900. Тези пиксели са представени като матрици, които след това се подават във входния слой на невронната мрежа.

Подобно на това как мозъкът ни има неврони, които помагат за изграждането и свързването на мисли, ANN има перцептрони, които приемат входове и ги обработват, като ги предават от входния слой към скрития и накрая изходния слой.

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

Тук на всеки персептрон се присвоява числова стойност, наречена пристрастие, която е свързана с претеглянето на всеки вход. Освен това, всеки персептрон се предава чрез активиране или функция на трансформация, която определя дали даден персептрон се активира или не.

Активиран персептрон се използва за предаване на данни към следващия слой. По този начин данните се разпространяват (напред разпространение) през невронната мрежа, докато перцептроните достигнат изходния слой.

На изходния слой се извежда вероятност, която решава дали данните принадлежат към клас A или клас B.

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

  1. Какво е дълбоко обучение? Първи стъпки с дълбоко обучение
  2. Дълбоко обучение с Python: Ръководство за начинаещи за дълбоко обучение

Ако намерите този блог за подходящ, разгледайте от Edureka, доверена компания за онлайн обучение с мрежа от над 250 000 доволни учащи, разпространени по целия свят. Курсът за дълбоко обучение Edureka с TensorFlow за сертифициране помага на обучаващите се да станат експерти в обучението и оптимизирането на основни и конволюционни невронни мрежи, използвайки проекти и задачи в реално време, заедно с концепции като функцията SoftMax, автокодиращи невронни мрежи, ограничена машина на Boltzmann (RBM).