Изменения

Перейти к: навигация, поиск

Практики реализации нейронных сетей

128 байт добавлено, 22:57, 4 марта 2020
Нет описания правки
==Аугментация данных==
При глубоком обучении иногда можно столкнуться с ситуацией, когда датасет набор данных имеет ограниченный размер. Но чтобы получить лучшее лучшие результаты обобщение модели, необходимо иметь больше данных, в том числе и различные их вариации. То есть необходимо увеличить размер датасета исходного набора искусственным образом, и это можно сделать с помощью аугментации данных.
{{Определение
|definition= '''Аугментация данных''' (англ. ''data augmentation'') {{---}} это методика создания дополнительных данных из имеющихся данных.}}
Чаще всего, проблема ограниченного датасета набора данных возникает при решении задач, связанных с обработкой изображений. Следующие способы аугментации изображений являются самыми популярными:
[[Файл:BasicAugmentation.png|500px|thumb|right|Рис 1. Пример аугментации изображения]]
*Отображение по вертикали или горизонтали (англ. ''flipping'').*Поворот изображения на определенный угол (англ. ''rotation'').*Создание отступа (англ. ''padding'').*Вырезание части изображения (англ. ''cropping'').*Добавление шума (англ. ''adding noise'').*Манипуляции с цветом (англ. ''color jittering'').
Также, можно применять различные комбинации, к примеру, вырезать часть изображения, повернуть его и изменить цвет фона.
Продвинутыми способами аугментации данных является семейство [[Generative Adversarial Nets (GAN) |GANsпорождающих состязательных сетей]].
==Дропаут==
Одной из проблем глубокого обучения нейронных сетей является [[Переобучение | переобучение]]. И метод дропаут значится как один из самых популярных способов устранения {{---}} популярный способ решения этой проблемы, благодаря своей простоте простому алгоритму и хорошим практическим результатам.
{{Определение
|definition= '''Дропаут''' (англ. ''dropout'') {{---}} метод регуляризации нейронной сети для предотвращения переобучения.}}
[[Файл:DropoutExample.jpeg|400px|thumb|right|Рис 2. Пример применения метода дропаут]]
===Как работает Алгоритм дропаут===
Рассмотрим слой нейронной сети состоящий из <tex>H</tex> нейронов. Метод дропаут выключает нейрон с вероятностью <tex>p</tex>, соответственно, оставляет включенным с вероятностью <tex>q = 1 - p</tex>, причем вероятность выключения любого нейрона сети одинакова.
{{Определение
|definition= '''Функция активации''' (англ. ''activation function'') <tex>a(x)</tex> определяет выходное значение нейрона в зависимости от результата взвешенной суммы входов и порогового значения.}}
Рассмотрим нейрон, у которого взвешенная сумма входов: <tex>z = \sum\limits_{i} w_{i}x_{i} + biasb</tex>, где <tex>w_{i}</tex> и <tex>x_{i}</tex> {{---}} вес и входное значение <tex>i</tex>-ого входа, а <tex>biasb</tex> {{---}} смещение. Полученный результат передается в функцию активации, которая решает рассматривать этот нейрон как активированный, или его можно игнорировать.
[[Файл:BinaryStepFunction.jpg|200px|thumb|right|Рис 3. Ступенчатая функция]]
113
правок

Навигация