Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 1956

 
Mihail Marchukajtes:

Кстати кто был на вебинаре УИИ???? Я скидывал ссылку на него ранее???

Прикольно, они хотят к декабрю разработать устройство и софт для набора текста мыслью. В целом мне понравилось о чём они говорили и было интерессно!!!!! Кто был???

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

тем более набор текстов мыслью и чипование это сатанизм и вообще против церкви, за такое сжечь могут

 
Aleksey Vyazmikin:

Хотел подметить, что не данные будут отличаться, а исход, но сейчас вот подумал, а что если действительно добавлять информацию об окружающих данных в выборки, которые неучаствовали при построении модели? Если просто на примере дерева, то перед последним сплитом смотрим статистику по другим предикторам, выявляем те, что показывают статистически положительный вариант классификации и смотрим, что б на общей выборке эти предикторы не коррелировали с предиктором в последнем сплите, тогда у нас есть дополнительная информация о состоянии рынка, которая не учитывается при выборе последнего сплита. Деревья же строются по принципу жадности и на последнем сплите конкурс среди предикторов уж точно  обычно проводиться.

Тогда у нас сплит будет не просто A>X, а  A>X1 &&  B>X2 &&  C>X3 - т.е. учтем информацию об окружении.

На каждом сплите, а не только на последнем, выбирается лучший сплит из всех предикторов. Просто в цикле перебираются предикторы, во вложенном цикле их по разному делят и запоминают насколько чище стали данные при таком сплите. Потом берут лучший.

По статье: ключевая фраза там " «Аналоговые» технологии позволяют получить практически тот же результат при перемножении векторных матриц с допущением меньшей точности, чем при использовании данных в виде цифровых 0 и 1. "
Точность будет плавать в зависимости от окружающей температуры тундра/пустыня, от нагрева самого чипа после включения, со временем параметры некоторых элементов тоже плывут. Плюс шумы будут изменять значения, в поле их мало, под ЛЭП одни, в городе другие, около радиопередатчиков третьи и т.д.
Для грубых вычислений +-20% может и пойдет.

 
Aleksey Vyazmikin:
Что за аналоговые вычисления в статье - кто понял?

это не вычисления, а измерения прям на плате аналоговых сигналов, они и складываются сами, и вычитаются, а дальше и умножать и делить можно потом, и это конечно быстрее, чем считать, так как это одна операция) и потом оцифровка. Думаю по структуре аналоговые входы, далее сумматор или делитель аналогового сигнала и в конце измеритель в определенной ячейке и ячеек много и к ним доступ. Типа приборов с зарядовой связью, это матрицы в фотоаппаратах, лазерных дальномерах. Они на вход аналоговый сигнал получают от фотоэлемента, меряют сигнал, если так можно сказать и отдают цифру.

Поправил, в конце ячейки АЦП, в начале ЦАП. У ПЗС с ячейки выдается 0 или 1. Поэтому не совсем верно что они что то меряют.

 
elibrarius:

На каждом сплите, а не только на последнем, выбирается лучший сплит из всех предикторов. Просто в цикле перебираются предикторы, во вложенном цикле их по разному делят и запоминают насколько чище стали данные при таком сплите. Потом берут лучший.

Всё же интересно, как тяжело бывает донести идею :) Конечно, то что Вы написали все тут знают, это не новость. Я говорю именно о сохранении измерений параллельных значений предикторов на последнем сплите, но не всех, а тех, чьи результаты близки к отобранному, но при этом они между собой на общей выборке не коррелируют. В этом случае решение будет принято в подобласти не на основании одного сплита, а с учетом подкрепляющих его других сплитов. Нечто похожее я делаю и сейчас, когда листья группирую, но у меня претенденты неконтролируемо попадают, а тут предполагается принудительно это делать для всех листьев.


elibrarius:

По статье: ключевая фраза там " «Аналоговые» технологии позволяют получить практически тот же результат при перемножении векторных матриц с допущением меньшей точности, чем при использовании данных в виде цифровых 0 и 1. "

Точность будет плавать в зависимости от окружающей температуры тундра/пустыня, от нагрева самого чипа после включения, со временем параметры некоторых элементов тоже плывут. Плюс шумы будут изменять значения, в поле их мало, под ЛЭП одни, в городе другие, около радиопередатчиков третьи и т.д.
Для грубых вычислений +-20% может и пойдет.

Температуру можно стабилизировать, можно зная зависимость от изменения температуры делать поправки при промежуточных цифровых результатах, да и на выходе.

 
Andrey Dik:

что то типа ламповых транзисторов, похоже, только очень маленьких.

Некие действия с волнами по сути? Входящие данные преобразуют в полином, а потом полином в волну и волны как то "сталкивают/сливают"?

 
Valeriy Yastremskiy:

это не вычисления, а измерения прям на плате аналоговых сигналов, они и складываются сами, и вычитаются, а дальше и умножать и делить можно потом, и это конечно быстрее, чем считать, так как это одна операция) и потом оцифровка. Думаю по структуре аналоговые входы, далее сумматор или делитель аналогового сигнала и в конце измеритель в определенной ячейке и ячеек много и к ним доступ. Типа приборов с зарядовой связью, это матрицы в фотоаппаратах, лазерных дальномерах. Они на вход аналоговый сигнал получают от фотоэлемента, меряют сигнал, если так можно сказать и отдают цифру.

Поправил, в конце ячейки АЦП, в начале ЦАП. У ПЗС с ячейки выдается 0 или 1. Поэтому не совсем верно что они что то меряют.

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

Но как аналоговые вычисления проводить, там возведение в степень - не совсем понятно при помощи АЦП...

 
Aleksey Vyazmikin:

Всё же интересно, как тяжело бывает донести идею :) Конечно, то что Вы написали все тут знают, это не новость. Я говорю именно о сохранении измерений параллельных значений предикторов на последнем сплите, но не всех, а тех, чьи результаты близки к отобранному, но при этом они между собой на общей выборке не коррелируют. В этом случае решение будет принято в подобласти не на основании одного сплита, а с учетом подкрепляющих его других сплитов. Нечто похожее я делаю и сейчас, когда листья группирую, но у меня претенденты неконтролируемо попадают, а тут предполагается принудительно это делать для всех листьев.

Это да. Хорошо бы сразу последовательность действий описывать...
Еще раз подумал над вашим описанием, предполагаю такую последовательность:

1. Вычисляем корелляцию всех предикторов на train
2. Строим дерево
3. На последнем сплите, запоминаем например последние 100 лучших сплитов. Запас до 100, чтобы было из чего выбрать.
4. Из этих 100 выбираем 5 некореллированных с предиктором лучшего сплита и не кореллированных между собой.

Дальше непонятно, какой из этих 5 разных сплитов выбрать?
Если случайный - то будет аналог случайного леса, который каждому дереву дает случайные предикторы и на них строит дерево.
Если среднее - то опять аналог случ. леса, лес потом из прогнозов случайных деревьев находит средне-арифметическое значение итогового прогноза.

 
Aleksey Vyazmikin:

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

Но как аналоговые вычисления проводить, там возведение в степень - не совсем понятно при помощи АЦП...

Не, аналоговые действия это сумма, вычитание, умножение, деление и возможно более сложные логарифмические зависимости, степенные. И это не вычисления, а аналоговые приборчики в каждой ячейке. А ЦАП и АЦП это вход выход, они не участвуют в вычислениях, а цифру обеспечивают. 

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

 
elibrarius:

Это да. Хорошо бы сразу последовательность действий описывать...
Еще раз подумал над вашим описанием, предполагаю такую последовательность:

1. Вычисляем корелляцию всех предикторов на train
2. Строим дерево
3. На последнем сплите, запоминаем например последние 100 лучших сплитов. Запас до 100, чтобы было из чего выбрать.
4. Из этих 100 выбираем 5 некореллированных с предиктором лучшего сплита и не кореллированных между собой.

Дальше непонятно, какой из этих 5 разных сплитов выбрать?
Если случайный - то будет аналог случайного леса, который каждому дереву дает случайные предикторы и на них строит дерево.
Если среднее - то опять аналог случ. леса, лес потом из случайных деревьев находит средне-арифметическое значение.

Вот теперь всё правильно поняли!

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

Веса каждого сплита в листе взвесим конечно, а может и дадим одинаковые коэффициенты, на той же истории можно и коэффициенты подобрать. Сейчас я так и делаю в общем при сборе модели из листьев.

 
Valeriy Yastremskiy:

Не, аналоговые действия это сумма, вычитание, умножение, деление и возможно более сложные логарифмические зависимости, степенные. И это не вычисления, а аналоговые приборчики в каждой ячейке. А ЦАП и АЦП это вход выход, они не участвуют в вычислениях, а цифру обеспечивают. 

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

Вот про данные я как раз не понимаю, это условно говоря, каждая инструкция имеет напрямую доступ к памяти и результатам вычисления без конвеера?

Причина обращения: