1   ...   5   6   7   8   9   10   11   12   ...   23
Ім'я файлу: Богайчук Нейронні мережі.docx
Розширення: docx
Розмір: 1578кб.
Дата: 14.03.2021
скачати
Пов'язані файли:
strategichniy_menedzhment_.doc

Оцінка продуктивності нейронної мережі



Продуктивність алгоритмів машинного навчання, як правило, оцінюють за допомогою матриці неточностей (confusion matrix), як показано на рисунку

    1. Стовпці відповідають за передбачений клас, а рядки за фактичний клас. У матриці неточностей, TN це число правильно класифікованих негативних прикладів (True Negative), FP (False Positive) є число негативних прикладів неправильно класифікованих як позитивні (помилкових спрацьовувань), FN є число позитивних прикладів неправильно класифікованих як негативні (False Negative) і ТР число позитивних прикладів, які правильно класифіковані (True Positive).


Рис. 2.3 Матриця неточностей (Confusion Matrix)

Прогностична точність є мірою продуктивності якою, як правило, оцінюють алгоритми машинного навчання і визначається як точність:

Accuracy = (ТР + TN) / (ТP + FP + TN + FN)

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

    1. Згорткові нейроннні мережі (CNN)



При застосуванні для розпізнавання зображень, згорткові нейронні мережі складаються з декількох шарів невеликих збірок нейронів, які

обробляють частини вхідного зображення, що називаються рецептивними полями. Виходи цих збірок потім укладаються таким чином, щоби їхні вхідні області перекривалися, для отримання кращого представлення первинного зображення; це повторюється для кожного такого шару. Укладання з перекриттям дозволяє ЗНМ бути терпимими до паралельних перенесень вхідного зображення [1].

Вони також складаються з різних комбінацій згорткових та повноз'єднаних шарів, із застосуванням шару поточкової нелінійності в кінці кожного шару [8]. Для зниження числа вільних параметрів та покращення узагальнення вводиться операція згортки на малих областях входу. Однією з головних переваг згорткових мереж є використання спільної ваги у згорткових шарах, що означає, що для кожного пікселя шару використовується один і той же фільтр (банк ваги); це як зменшує обсяг необхідної пам'яті, так і поліпшує продуктивність.

Архітектура CNN формується стосом різних шарів, що перетворюють вхідний об'єм на вихідний об'єм (що, наприклад, зберігає рівні відношення до класів) за допомогою диференційовної функції. Зазвичай застосовується декілька різних типів шарів.

      1. Вибір фреймворка



Розробка програмного рішення для класифікації об'єктів за допомогою штучних нейронних мереж типу CNN потребує здійснити вибір фреймворку. У міру того як популярність CNN збільшилася, виникли різні реалізації. Найбільш важливими факторами фреймворків для глибокого навчання є їх продуктивність, зручність і простота використання, яка включає наявність інтерфейсів API для різних мов програмування, якість документації та діяльність спільноти користувачів та розробників фреймворку. Продуктивність є критично важливою вимогою, оскільки CNN є складними моделями з

багатьма значущими параметрами. Популярними фреймворками для глибокого навчання є Torch, Theano, Caffe і TensorFlow.

Torch є фреймворком для наукових обчислень, який реалізує CNN, а також інші алгоритми машинного навчання з використанням мов програмування C і Lua, де Lua використовується в якості мови сценаріїв. Він розроблений і використовується для Facebook AI, Google Search і Twitter DeepMind.

Caffe є фреймворком спеціалізованим для глибокого навчання з використанням C ++ для реалізації і протоколу Google Protobuf для визначення мережевих архітектур і контролю навчання. Крім того, Caffe надає інтерфейси API для Python і Matlab. Обидва фреймворка забезпечують реалізацію для навчання CNN на CPU і GPU.

Theano значно відрізняється від Torch і Caffe. Це в основному бібліотека Python і таким чином, також реалізована на Python. Theano не є безпосередньо бібліотекою для реалізацією тільки CNN, а більш загальної бібліотекою, яка може бути легко використана для реалізації моделі CNN.

TensorFlow це відкрита програмна бібліотека для машинного навчання цілій низці задач, розроблена компанією Google для задоволення її потреб у системах, здатних будувати та тренувати нейронні мережі для виявлення та розшифровування образів та кореляцій, аналогічно до навчання й розуміння, які застосовують люди. Її наразі застосовують як для досліджень, так і для розробки продуктів Google. TensorFlow було початково розроблено командою Google Brain для внутрішнього використання в Google, поки її не було випущено під відкритою ліцензією Apache 2.0, 9 листопада 2015 року.


Рис. 2.4 Графічне зображення класичної архітектури згорткової нейронної мережі


      1. 1   ...   5   6   7   8   9   10   11   12   ...   23

        скачати

© Усі права захищені
написати до нас