Скорость изменения весов, как важный параметр обучения нейросети
Каждая нейросеть способна обучаться, в этом её большое преимущество, если сравнивать с другими типами вычислительных систем. Однако обучение нейросети является сложным процессом, а подчас и очень затратным по времени.
В связи с этим разработчики таких сетей ищут способы для того, чтобы уменьшить время обучения.
Одним из самых распространённых методов обучения является метод обратного распространения ошибки. В том случае если сеть допустила ошибку (значительное отклонение значения от заранее заданного), сигнал идёт от нейрона, где обнаружена ошибка, обратно по тому же пути, по какому он до этого нейрона дошёл. В процессе изменяются значения веса для всех межнейронных связей.
Веса межнейронных связей – важнейший параметр нейросетей. Проходя через каждую такую связь, сигнал либо усиливается, либо ослабляется, а это значительно влияет и на результат. Поэтому корректировка таких весов – это и есть, по большей части, настройка нейросети.
Управление шагом изменения весов межнейронных связей
Когда система пытается настроить себя методом обратного распространения ошибки, веса межнейронных связей меняются, причём они меняются с определённым шагом в нужную сторону до тех пор, пока нужный результат не будет достигнут.
Здесь полезно всё уточнить.
- Увеличение или уменьшение значения веса для межнейронной связи зависит от того, больше или меньше значение результата по сравнению с заданным. Если на выходе должен быть ноль, а у нас единица, то значения уменьшаются, и наоборот.
- Нужным результатом считается результат в рамках допустимой погрешности. Чем больше устанавливается допустимая погрешность, тем проще и быстрее настроить нейросеть.
- Шаг изменения веса определяет, на какое значение прежний вес отличается от нового. Например, с шагом 2 вес будет изменяться по принципу 88%, 86%, 84%…
Влияние шага изменения весов на скорость обучения сети
Опыт показывает, что и большой шаг, и малый имеют неприятные риски.
- Большой шаг: нейросеть в своём обучении «пройдёт мимо» нужного результата, либо будет множество раз увеличивать и уменьшать веса, обходя оптимальное значение.
- Малый шаг: сеть будет обучаться очень долго.
Какой же выход? Обычно им становится динамическое управление размером шага. Это значит, что:
- В начале обучения шаг большой. Это даёт возможность быстро найти участок, на котором нужно работать. Например: значения от 70% до 90%. Большой шаг помог в том, чтобы потратить минимум времени на тестирование значений от 0 до 70%: эти значения система «проскочила» очень быстро.
- Затем шаг становится меньше, чтобы чётко настроить нейросеть и добиться минимальной ошибки. Например: сначала значение было 20, дойдя до 70, оно уменьшилось до 5.
- Наконец, значение уменьшается до минимума. Например, сеть определила, что оптимальный результат между 75% и 85%. В этом случае она сделает шаг равным 1 или 2, чтобы очень прицельно поработать с оставшимся диапазоном.
Опыт показывает, что динамическое управление значением шага помогает настроить нейросеть не только быстрее, но и качественнее. Поэтому данный метод сегодня широко используется.
Нейросети для трейдинга — прогрессивная вещь. Вот только как их реально применять на практике ? Есть ли уже специально разработанные для этого решения ? Сам я просто еще не изучал этот вопрос.
Я правильно понимаю, что нейросеть — это просто отражение обычной трейдерской торговой системы?
Ну да, так и есть. Моё мнение, что применительно к алготрейдингу, до таких сетей, которые полноценно способны обучаться сами, ещё далеко. Другое дело, что можно как-то использовать этот подход, чтобы сеть анализировала препарированную входящую информацию, тогда повышается вероятность получить устойчивую стратегию.