"Новый нейронный" - проект Open Source движка нейронной сети для платформы MetaTrader 5. - страница 50

 
Urain:

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

1) Ньюанс же заключается в том что считать слоем. Если такую формулировку что давал я то будет затруднительно организовать расчёт в GPU.

2) Если же остановиться на формулировке TheXpert то будут проблемы с загруженностью GPU.

1) Почему?

2) Почему?

 
Urain:

Слой это объединение нейронов не зависимых на одной итерации и имеющих один тип.

Это как? Как ты собираешься выжимать соки из ГПУ без векторного представления? Я в том числе это и учитываю.
 
TheXpert:
Это как? Как ты собираешься выжимать соки из ГПУ без векторного представления? Я в том числе это и учитываю.

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

Те имеем данные о том какие нейроны в одном слое, и передаём на расчёт GPU вектора этого слоя. и так далее по слоям.

ЗЫ ах да в модели нейрона что я рисовал, нужно ввести понятие данные для хранения промежуточных расчётов (ну и для работы с GPU они должны быть тоже наружными).

 
joo:

1) Почему?

2) Почему?

1) потому что в моей формулировке в слое могут быть разнотипные нейроны, а это нетипичные задачи которые нельзя передать в GPU

2) потому что в формулировке Андрея один нейрон может быть слоем, а это грозить недогрузкой GPU

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

 

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

ЗЫ стоп, а нахрена нам агрегация, если мы можем вместо этого просто передать индекс вектора данных. будет тоже самое связывание с прямым доступом.

ЗЗЫ создать в нейроне вместо объекта данных, объект обращения к данным.

 
Urain:

2) потому что в формулировке Андрея один нейрон может быть слоем, а это грозить недогрузкой GPU

Если его можно объединить... То его нужно объединить.
 
TheXpert:
Если его можно объединить... То его нужно объединить.
в том то и проблема если можно, а это можно зависит от двух условий, независимость на одной итерации и однотипность с другими нейронами слоя (то есть как он внутри обрабатывает данные).
 

У меня есть обрывки мыслей как с таким движком организовать растущий нейронный газ, но они ещё не оформились в слова.

Одна только теза: нужна будет переинициализация сети. Те сама инициализация должна быть доступна алгоритму обучения.

Растущий нейронный газ - реализация на языке программирования MQL5
Растущий нейронный газ - реализация на языке программирования MQL5
  • 2010.09.24
  • Алексей
  • www.mql5.com
В статье приводится пример написания на языке MQL5 программы, реализующий адаптивный алгоритм кластеризации, называемый "Растущий нейронный газ" (Growing neural gas, GNG). Статья рассчитана на пользователей, изучивших документацию к языку, а также уже имеющих определенные навыки программирования и базовые знания в области нейроинформатики.
 
TheXpert:

Манагером проекта может быть gpwr. Частично могу я.

Спасибо за доверие, но мне кажется что я не подойду как руководитель данного проекта. Объясню почему.

  1. Программирование это не моя специализация. Занимаюсь этим как хобби. Многие нюансы координации работы группы программистов мне неизвестны.
  2. Последнии 15 лет я на работе руководил несколькими проектами. Обнаружил что проект под моим руководством успешно выполняется в атмосфере когда его участники обязаны выполнять мои команды (диктатура) по причине их боязни потери работы и зарплаты. В атмосфере демократии, как здесь, где участники проекта не оплачиваются и ничто их не удерживает в комманде проекта, метод диктатуры не подходит, а без них прогресс будет очень трудным.
  3. Руководитель сам должен быть заинтересован в проекте. Мой интерес пока как интерес наблюдателя. Как я уже говорил раньше что классические нейронные сети меня перестали интересовать, а тем более проблема их кодирования в MQL5. Мой интерес сейчас к методам преобразования входной информации. Когда окончю своё само-обучение этим методам и эксперементацию ими на рыночных котировках, мой интерес перейдёт на что-то другое.
  4. Руковождение этим проектом (как и любым другим проектом) требует времени и дедикации, которых у меня сейчас нет (уже руковожу проектом на работе).

Из всего выше-сказанного, моя рекоммендация такая.

  1. МК должны хорошо оплачивать участников проекта чтобы была материальная заинтересованность в участии в этом проекте и его успешном окончании. Так как я живу в США, мои стандарты оплачивания более высокие (наверно поэтому МК никогда не просили меня написать какую-либо статью даже когда сам предлагал свою кандидатуру). Например, я считаю что этот проект будет успешным если каждому участнику будет предложено по крайней мере $10000 по окончании проекта.
  2. Руководителем проекта должен быть представитель МК. Ему же и устанавливать требования, сроки их выполнения и их оплаты. Многие опен-сорс коды созданы в университетах, студентами, чьи руководители изпользовали получение диплома как мотивацию. Без неё никак.
 
gpwr:
ПМ не обязан быть программистом. Жаль что отказываешься.