"Новый нейронный" - проект Open Source движка нейронной сети для платформы MetaTrader 5. - страница 36
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
ЕМНИП, когнитрон представляет из себя нечто похожее.
Ждем продолжения :)
Надо информация по
-Conjugate gradient descent
-BFGS
Попытаюсь теперь изложить свою идею построения нейронных сетей для анализа ценовых паттернов. Тех кто прочёл мои лекции 2 и 3 сразу поймёт. Суть состоит в классификации ценовых паттернов по типу Buy, Sell, or Hold. Цена на определённом промежутке времени (допустим 100 баров), фильтруется слоем простых нейронов S1. Входные веса этих нейронов описывают импульсные харакетристики фильтров. В примере зрительной коры, эти веса описывали прямые отрезки разного наклона и длины в двухмерном пространстве изображения. В котировках мы тоже имеем двумерное пространство: время и цена. Можно предположить что веса S1 фильтров в нашем случае тоже описывают прямые отрезки в пространстве время-цена двух возможных наклонов: верх и вниз. Угол наклона зависит от длины каждого фильтра. Эти длины можно заранее выбрать, например 4, 8, 16, 32 баров. Каждый фильтр представляет собой прямую линию, нормированную так чтобы сумма всех значений была равна нулю, а сумма квадратов равна 1 (или другая нормализация). В следующем слою, назовём его S2, формируются более сложные паттерны из отрезков слоя S1, и т.д. На выходе этого многослойного преобразования котировок, имеем цифровой код описывающий текущий паттерн, причём коды паттернов похожих друг на друга, но по-разному растянутых по времени и по цене, одинаковы. Эти коды подаются на входы Support Vector Machine (SVM), которая заранее обучена определять условия Buy, Sell, or Hold на исторических паттернах. Проблема здесь это определить форму фильтров в слоях S1, S2, и т.д. Я выбрал прямые отрезки и их комбинации для упрощения. Кстати, в моделе зрительной коры HMAX все формы пространственных фильтров выбраны заранее на основе биологических экспериментов. Нам нужно найти алгоритм автоматического определения этих фильтров. Такие алгоритмы уже были разработаны для зрительного слоя V1 (von der Malsburg, Linsker, Miller, LISSOM, Olshausen). Мы можем позаимствовать их для нашей задаче классификации ценовы паттернов.
В своё время подробно изучил почти все методы обучения сетей прямого рапсространения. Уверен что из градиетных спусков, метод Левенберга-Маркадта самый лучший (https://en.wikipedia.org/wiki/Levenberg%E2%80%93Marquardt_algorithm). Всегда находит более лучший минимум чем всякие BACKPROPы и RPROPы и даже быстрее. То что я выложил в BPNN (какой-то RPROP) это детская баловня по сравнению с LM. BFGS более трудоёмкий и результат не лучше чем у LM.
Согласен! Например в NeuroSolutions метод Левенберга-Маркадта сходится там, где другие методы встают на локальных минимумах,
однако LM требует значительных вычислительных ресурсов. Время на один проход больше
...
Каждый фильтр представляет собой прямую линию, нормированную так чтобы сумма всех значений была равна нулю, а сумма квадратов равна 1 (или другая нормализация).
...
Я сейчас не имею доказательств, но интуиция мне подсказывает что это двойное условие противоречиво,
сумма равна 0, а сумма квадратов равна 1
будет исполнятся для очень узкого числа вариантов. Если я не прав пните.
Я сейчас не имею доказательств, но интуиция мне подсказывает что это двойное условие противоречиво,
сумма равна 0, а сумма квадратов равна 1
будет исполнятся для очень узкого числа вариантов. Если я не прав пните.
Понятно. Но завязан именно на NN. Будет завязан вернее.
Я боюсь, чтобы не получилось что-нить типа "AWVREMGVTWNN" :) , главное суть передать, нюансы не так важны.
Meta Neuro Engine (MNE)
Meta EngiNeuro (MEN) (c)
ну и мы значит инженейры :)