Вопросы по азам нейронок
Вчера я наконец попробовал сделать свою первую нейронку, что описана в книге Ф. Уоссермен «Нейрокомпьютерная техника» на странице 25. Самую простую - по определению четности числа. И у меня получилось. Даже замахнулся на загадку от Vinina. Но если с определением четности числа у меня справилась сеть всего из 1 нейрона с 4 входами, то задачу от Vinina она не потянула.
К сожалению, о попытках написания сеток в MQL можно пока забыть. Слишком неудобно в контроле состояния переменных (дебага нет, просмотра тоже). Пришлось делать все на родимом vc++
Но я столкнулся сразу с такими проблемами как задание представления числа и задание начальных весов.
Можете ли вы посоветовать, как лучше всего задавать начальные веса – случайной генерацией или по какой-то возрастающей прогрессии (ведь все ровно при обучении веса подкорректируются).
И вопрос №2. Какое представление числам лучше всего давать при подаче их в сеть. В случае с четностью числа мне пришлось делать двоичное представление числа. Но если я захочу классифицировать модели рынка по некоторым индикаторам, которые будут иметь вещественные значения, то, как тогда задавать их представления для сети?
Спасибо.
Тренироваться с сетями имхо все-таки лучше начинать со специализированных
(но дружественных) программ типа Нейрошелл 2.
По моему опыту инициализировать начальные веса лучше случайными величинами (зависит от сжимающей функции), для гипер тангенса - от [ -1 до 1]
Это справедливо для итеррационных методов обучения. Если использовать ГА, то начальная инициализация особой роли не играет.
Входы нужно обязательно маштабировать в диапазон (зависит от сжимающей функции), для гипер тангенса - от [ -1 до 1]
...
И вопрос №2. Какое представление числам лучше всего давать при подаче их в сеть. В случае с четностью числа мне пришлось делать двоичное представление числа. Но если я захочу классифицировать модели рынка по некоторым индикаторам, которые будут иметь вещественные значения, то, как тогда задавать их представления для сети?
Спасибо.
К сожалению, о попытках написания сеток в MQL можно пока забыть. Слишком неудобно в контроле состояния переменных (дебага нет, просмотра тоже). Пришлось делать все на родимом vc++
Но я столкнулся сразу с такими проблемами как задание представления числа и задание начальных весов.
Можете ли вы посоветовать, как лучше всего задавать начальные веса – случайной генерацией или по какой-то возрастающей прогрессии (ведь все ровно при обучении веса подкорректируются).
И вопрос №2. Какое представление числам лучше всего давать при подаче их в сеть. В случае с четностью числа мне пришлось делать двоичное представление числа. Но если я захочу классифицировать модели рынка по некоторым индикаторам, которые будут иметь вещественные значения, то, как тогда задавать их представления для сети?
Спасибо.