В условиях современности не составляет особенных проблем использовать готовую нейросеть для обучения ее на основе своих данных. В зависимости от типа модели, структуры и прочего можно получить различные прогнозные данные. Тут на первый план выходят задача обучения и тестирования модели.

Мы, коллектив из Московского Энергетического Института, написали эту заметку, для того чтобы сложный мир нейронных сетей стал для вас чуточку проще.

Рассмотрим основные методы обучения ИНС

Классификация методов обучения нейронных сетей
Классификация методов обучения нейронных сетей

На данный момент самыми используемыми являются метод обратного распространения ошибки и применение генетического алгоритма. Это объясняется их простотой и распространённостью:

Популярность использования методов обучения
Популярность использования методов обучения

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

Алгоритм обратного распространения ошибки является наиболее распространённым алгоритмом обучения нейросетевой модели. Его смысл заключается в попытке минимизации функции потерь, которая вводится для оценки того, насколько точны результаты прогноза нейронной сети. Используя градиент, алгоритм корректирует веса связей в слоях.

В качестве функции потерь используются различные оценки, например:

1) средняя абсолютная ошибка (MAE):

Функция
Функция

2) среднеквадратичная функция потерь (MSE):

Среднеквадратичная функция потерь
Среднеквадратичная функция потерь

 3) среднеквадратичное отклонение (RMSE):

Среднеквадратичное отклонение
Среднеквадратичное отклонение

Идея генетического алгоритма заключается в реализации механики селекции и принципа эволюции. Постоянно применяя генетические операции: селекцию, кроссинговер и мутацию, алгоритм изменяет самую оптимальную популяцию, отбрасывая неподходящие и генерируя новые:

Схема генетического алгоритма
Схема генетического алгоритма

В случае нейронной сети в роли популяции выступают веса, которые посредством генетического алгоритма корректируются, тем самым улучшая показатели модели:

Алгоритмы различных методов обучения
Алгоритмы различных методов обучения

роме генетического алгоритма также применяются другие эвристические методы оптимизации, такие как Crow Search Algorithm (CSA) и Particle Swarm Optimization Algorithm (PSO). Однако ни один метод не является универсальным.

Немного о тестировании модели, а точнее о методах оценки

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

Метрика "Правильность"
Метрика "Правильность"

где TP – количество истинно положительных случаев, то есть когда случай был верно классифицирован и он принадлежит выбранному целевому множеству, TN – количество истинно отрицательных случаев, то есть когда случай была верна классифицирована и он принадлежит нецелевому множеству, FP – ложно-положительный – число случаев классификации элемента нецелевого множества как целевого, FN – ложно-отрицательный – число случаев классификации элемента целевого множества как нецелевого. Таким образом, Accuracy показывает долю верных ответов.

Другими метриками являются:

Метрика "Полнота"
Метрика "Полнота"
Метрика " Доля ложно-положительных (False Positive Rate)"
Метрика " Доля ложно-положительных (False Positive Rate)"
Метрика "Точность"
Метрика "Точность"
Метрика "F-мера"
Метрика "F-мера"

где Recall – доля истинно положительных к общему числу элементов целевого множества, FPR – доля ложноположительных к общему числу элементов нецелевого множества, Precision – доля истинно положительных к общему числу элементов, классифицированных как целевые, F-мера служит мерой эффективности, показывающей среднее гармоническое Precision и Recall.

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

Авторы материала: Гужов С.В., Варшавский П.Р., Башлыков М.С., Тороп Д.В.

Комментарии (1)


  1. nikolay_n_komarov
    00.00.0000 00:00
    +1

    Начало интересное, но тема не достаточно раскрыта, чуть больше примеров, рекомендации или личный опыт.