цифровая электроника
вычислительная техника
встраиваемые системы

 
» » Особенности процесса обучения нейронной сети

Особенности процесса обучения нейронной сети

Автор: Mike(admin) от 25-12-2019, 23:55

Целью обучения нейронной сети является предоставление данных, которые позволяют нейронной сети сходиться на надежных математических отношениях между входом и выходом. В предыдущей статье математическое соотношение было простым: если x-компонент точки в трехмерном пространстве меньше нуля, выходное значение равно нулю (что указывает, например, на то, что эта точка данных является «недействительной» и не требует дальнейшего анализа); если компонент x равен или больше нуля, вывод равен единице (что указывает на «действительную» точку данных).


Особенности процесса обучения нейронной сети

В таких случаях, когда известны математические отношения, вы можете создавать обучающие данные в программе для работы с электронными таблицами. Можно использовать, например, Excel.


Особенности процесса обучения нейронной сети

Компоненты x, y и z были созданы функцией RANDBETWEEN (). На скриншоте, показанном выше, все случайные значения представляют собой целые числа от –10 до +10. В другой части обучающего набора мы используем формулу RANDBETWEEN(–10, 10)/10, чтобы получить нецелые компоненты x, y и z в интервале от –1 до +1.


Особенности процесса обучения нейронной сети

Чтобы было ясно: генерирование обучающих данных в электронной таблице – отличный способ экспериментировать с нейронными сетями, а экспериментирование – очень важная часть становления опыта в проектировании и реализации нейронных сетей. Однако в реальных приложениях вы обычно не можете создавать обучающие данные таким образом, потому что весь смысл использования нейронной сети состоит в том, чтобы создать алгоритм, который вы еще не знаете и не можете легко определить или установить. Далее обсуждаются некоторые вещи, которые следует иметь в виду при создании обучающего набора.


Нейронная сеть не учится через понимание и критическое мышление. Это чисто математическая система, и она очень постепенно приближается к сложным отношениям ввода-вывода. Таким образом, большие объемы данных помогают сети продолжать уточнять свой вес и тем самым достичь большей общей эффективности.


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


Представьте, что вы никогда раньше не видели дерево и не представляете, как оно выглядит. Ваш друг пытается помочь вам, показывая вам тысячи фотографий деревьев. К сожалению, он живет в сосновом лесу и фотографирует только сосны. Изучив фотографии, вы можете легко посмотреть на сосну, а также, вероятно, на ель и сказать: «Это дерево». Однако, что бы вы сказали, если бы увидели дуб или платан, или вишню, или пальму? Возможно, это не лучшая аналогия, но она дает общее представление о том, что происходит с нейтральной сетью, когда вы обучаете ее данными, которые не отражают разнообразие реальной задачи обработки.


Обучающие данные должны представлять данные, которые сеть будет пытаться классифицировать. В конце концов, цель обучения состоит в том, чтобы дать возможность сети эффективно обрабатывать некоторую информацию из реальной жизни. Например, что касается простой системы классификации, которую мы изучали, мы могли бы знать, что наши реальные входные данные будут оставаться в пределах интервала (–5, +5), возможно, потому что три компонента входного вектора фактически аналоговые напряжения, передаваемые операционным усилителем с питанием ±5 В. Если бы это было так, мы бы подготовили обучающий набор, который включает в себя множество целых и нецелых значений в диапазоне от –5 до +5.


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


Нейронные сети могут реагировать на чрезвычайно сложные отношения между входом и выходом, и, следовательно, сеть может включать детали ввода-вывода, которые являются специфическими для обучающего набора и не имеют отношения к реальной задаче классификации. Это называется перетренировкой или переобучением. Следующая диаграмма эффективно иллюстрирует концепцию переобучения.


Особенности процесса обучения нейронной сети

Красные и синие точки представляют обучающие образцы, которые классифицирует нейронная сеть. Черная линия представляет собой хорошую стратегию классификации: она следует общей схеме, которая отделяет красный от синего паттерна, и, следовательно, она, вероятно, приведет к самой низкой ошибке в реальных данных. Зеленая линия – это стратегия переобученной классификации. Она следует за данными тренировки слишком хорошо; в своей попытке идеально классифицировать обучающие выборки она создала отношение ввода-вывода, которое является менее обобщенным и, следовательно, менее подходящим для реальных данных. Другой способ визуализации переобучения представлен на следующих графиках.


Особенности процесса обучения нейронной сети

Особенности процесса обучения нейронной сети

Особенности процесса обучения нейронной сети

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




© digitrode.ru


Теги: нейронная сеть, искусственный интеллект, машинное обучение



   Благодарим Вас за интерес к информационному проекту digitrode.ru.
   Если Вы хотите, чтобы интересные и полезные материалы выходили чаще, и было меньше рекламы,
   Вы можее поддержать наш проект, пожертвовав любую сумму на его развитие.


Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.

Комментарии:

Оставить комментарий