"Новый нейронный" - проект Open Source движка нейронной сети для платформы MetaTrader 5. - страница 69
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Спасибо :) окончательный тычок.
Я лучше одной реализацией займусь и постараюсь довести до совершенства.
По масштабности я с генетикой может и не потягаюсь (те классы задач, которые не имеют явно заданной целевой функции), но по эффективности использования и обучения...
Очень правильное решение, пока тут появиться какой то проект, ты уже сделаешь массу наработок, а если проект и не появится то дашь результат.
Те при таком подходе больше шансов что проект не заглохнет.
Только не пропадай, выкладывай наработки, задавай вопросы, глядишь ещё кто пристегнётся.
Только не пропадай, выкладывай наработки, задавай вопросы, глядишь ещё кто пристегнётся.
Да чего наработки. Выложу сразу готовое, как будет.
У меня есть С++ реализация. Все что надо -- переложить и проапгрейдить пару вещей.
Блин хоть бы плюнули , а так полное игнорирование даже обидно . Вас совета спросили ДА или НЕТ .
if (ДА) пойду книжки вумные читать ;
else иди юзай другое и пинок в заданном направлении ;
Доброго дня не совсем в тему .Нужна консультация .
Сам перед мну поставил задачу . Необходимо выбрать адаптивное временное окно текущего момента , а не задавать его в параметрах например в 10 бар . Далее пробежать по истории в глубь чтобы определить к какому кластеру относится выбранное окно . Смогут ли с этим справиться нейросетки или проще что то другое . Если не жалко , киньте плз книгой по сеткам только на уровне колбасы .
Не знаю как на уровне колбасы, чем как говорится богаты.
Как раз кластеризация и классификация это задачи которые лучше всего решают сети.
Аппроксимация похуже но тоже нормально, а вот с экстраполяцией вообще туго. Хотя всё зависит от реализации.
Не знаю как на уровне колбасы, чем как говорится богаты.
Как раз кластеризация и классификация это задачи которые лучше всего решают сети.
Аппроксимация похуже но тоже нормально, а вот с экстраполяцией вообще туго. Хотя всё зависит от реализации.
...
Обучение - это внешний по отношению к самой сети процесс
...
Тогда для полноты дополню, обучение не только внешний процесс но и инсайдерский по своей сути, так как часто имеет доступ не только к весам но и промежуточным данным расчёта, равно как и к свойствам топологии.
И именно благодаря этому свойству процесса обучения его часто приписывают к внутренним процессам сети.
Те пришли к тому что сеть должна раскрыть свою внутреннюю информацию для процесса обучения при этом скрыв его от окружения вообще.
Логичный ход в такой ситуации завернуть при необходимости саму сеть в оболочку обучения,
таким образом имеем внешний объект сеть который имеет методы :
Методу рабочий ход поставляется сеть как есть, методу обучение поставляется сеть завёрнутая в оболочку обучения, логичным продолжением капсулирования будет вместо двух методов рабочий ход и обучение дать один метод net с флагом выбора.
таким образом имеем внешний объект сеть который имеет методы :
Методу рабочий ход поставляется сеть как есть, методу обучение поставляется сеть завёрнутая в оболочку обучения, логичным продолжением капсулирования будет вместо двух методов рабочий ход и обучение дать один метод net с флагом выбора.
В самом общем случае сеть должна иметь один метод run() - рабочий ход
Он выполняет вычисление выходных нейронов и подразумевает, что входы уже проинициализированы
"Учитель" - это отдельный объект, который инициализируется параметрами обучения и получает в управление обучаемый объект
По-хорошему, нужен еще и валидатор, который проверит можно ли этот объект обучить этим методом
Но все это трудноформализуемо в общем случае
Поэтому для конечного пользователя можно составлять стандартные жесткие конструкции вида Сеть+ФитнесФункция+Учитель и позволять настроить лишь некоторые параметры, например, кол-во нейронов в слое
сеть должна раскрыть свою внутреннюю информацию для процесса обучения при этом скрыв его от окружения
Согласен. Для некоторых, но не всех, методов обучения нужен практически полный доступ к внутренностям сети
yu-sha:
...
Для некоторых, но не всех, методов обучения нужен практически полный доступ к внутренностям сети
Вот в том то и загвоздка, некоторые методы требуют чтоб сеть была не только раскрыта им но и правильно под метод структурирована.
Другими словами сам метод писался именно под определённую сеть. Ну и какой смысл реализовывать эти методы в рамках универсального движка.
Лучше пусть Андрей это всё кодит. Я для универсального движка вижу один универсальный метод обучения это ГА.
В остатке имеем: идея универсального движка под любую топологию, идея универсального метода инициализации под любую топологию, и ГА как универсальная обучалка этого всего.
В плюсах лёгкость реализации новых типов нейронов, те стандартных но ещё не описанных либо нестандартных.
В минусах только один метод обучения.
Если кто нить допрёт как в это всё впихнуть другие методы обучения, будет отлично, а пока будет так.
В остатке имеем: идея универсального движка под любую топологию, идея универсального метода инициализации под любую топологию, и ГА как универсальная обучалка этого всего.
В плюсах лёгкость реализации новых типов нейронов, те стандартных но ещё не описанных либо нестандартных.
В минусах только один метод обучения.
Размышляя таким же образом я пришел примерно к такому же выводу ))
А поскольку ГА становится основным алгоритмом обучения, то возникает острая необходимость параллельных вычислений
Вот здесь и всплывают GPU
Размышляя таким же образом я пришел примерно к такому же выводу ))
А поскольку ГА становится основным алгоритмом обучения, то возникает острая необходимость параллельных вычислений
Вот здесь и всплывают GPU
Ну вообще то GPU в моей модели всплыл ещё на стадии обсчёта НС, если внимательно читал что я писал раньше, то заметил что в моей модели универсальной сети, сам процессинг разбит на слои, при этом нейроны объединяются в слои не формально (по принадлежности), а фактически (слой обладает памятью, а нейрон нет, нейрону остаётся быть лишь информационной сущностью поставляющей слою информацию откуда куда зачем). Так что параллельность определена самой структурой движка (сама информация внутри слоя обрабатывается параллельно). Я уже делал НС обучаемую ГА, и самый большой урон производительности был именно на расчёте НС (особенно на больших сетях). Ну и в качестве рекламы, могу сказать что для UGA предложенного joo обучение НС плёвое дело.
Но если получится ещё и запараллелить расчёты ФФ (а НС для ГА есть частью ФФ) то я только за. Хотя не думаю что это будет простая задача, в слоях производятся простые действия, а расчёт ФФ может предполагать довольно сложную последовательность.