Машинное обучение в трейдинге: теория, модели, практика и алготорговля - страница 394
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Будете что-то на месяц запускать - используйте бесперебойнк для питания компа, у меня как то недели через 2 расчетов свет вырубили))
А ГПУ вариант особо не ждите, переписывать код мн кажется дольше и если автор не сделал, то вряд ли кто другой дотянет эту задачу до конца.
Дык автор всё распаралелил, теперь нужно просто запустить. А так, я максимально запускал на 3 дня и тогда получил модель с 9 входами, что для меня сейчас рекорд если честно. Особо то и не рвусь оптимизировать так долго. Но как говорится. Рынок требует. Поэтому изыскивая мощностя, если у кого есть возможность с оптимизировать датасет на оптимизаторе да ещё на ядрах так 20-30 то буду очень признателен.
Mihail Marchukajtes:
учится дни, недели
Судя по всему алгоритм у Вас мягко говоря не оптимальный, на таких маленьких датасетах, можно пользоваться смело брутфорсными алгоритмами такими как Knn, которые квази-оптимальны, если алгоритм работает медленней Knn вероятно это плохой алгоритм ML или плохо сконфигурированный. На таком датасете весь цикл обучение и прогон всего сета не должен занимать больше секунды.
Яж объяснял выше. 100 разделений каждое разделение обучается 1000 эпох и т.д. Вы просто зациклились на однократном обучении нейрона, а суть оптимизатора просчитать датасет так, чтобы вопросов о его при годности не возникало. Тоесть он этот файл крутит и вдоль и поперёк образно выражаясь, а вы всё сравниваете его с единократным обучением одного нейрона. ИМХО. Это по сути система ИИ, в которой по мимо обучения нейрона, происходят всевозможные оптимизации и предобработки и само обучение запускается сотни раз. Еслив что....
Яж объяснял выше. 100 разделений каждое разделение обучается 1000 эпох и т.д. Вы просто зациклились на однократном обучении нейрона, а суть оптимизатора просчитать датасет так, чтобы вопросов о его при годности не возникало. Тоесть он этот файл крутит и вдоль и поперёк образно выражаясь, а вы всё сравниваете его с единократным обучением одного нейрона. ИМХО. Это по сути система ИИ, в которой по мимо обучения нейрона, происходят всевозможные оптимизации и предобработки и само обучение запускается сотни раз. Еслив что....
MLP получается в 95% случаев угадывает... мне кажется вы не правильный велосипед делаете) Без обид.
У вас ошибка.
Самая первая колонка в таблице - это номер строки, и эту колонку использовать в предсказании нельзя, но она зачем-то обязательна нужна только для jPrediction.
Цель распределена так что первая половина строк это класс 0, а вторая половина строк - класс 1. Так что нейронка просто запомнит что если номер строки меньше 228 то это класс 0, иначе это класс 1.
У вас ошибка.
Самая первая колонка в таблице - это номер строки, и эту колонку использовать в предсказании нельзя, но она зачем-то обязательна нужна только для jPrediction.
Цель распределена так что первая половина строк это класс 0, а вторая половина строк - класс 1. Так что нейронка просто запомнит что если номер строки меньше 228 то это класс 0, иначе это класс 1.
А кстати, да. Не обратил внимание, что это просто номер.
Без нее Inputs to keep: 4,50,53,59,61,64,92,98,101,104,
Средняя ошибка на обучающем (60.0%) участке =0.269 (26.9%) nLearns=2 NGrad=7376 NHess=0 NCholesky=0 codResp=2
Средняя ошибка на валидационном (20.0%) участке =0.864 (86.4%) nLearns=2 NGrad=7376 NHess=0 NCholesky=0 codResp=2
Средняя ошибка на тестовом (20.0%) участке =0.885 (88.5%) nLearns=2 NGrad=7376 NHess=0 NCholesky=0 codResp=2
Явно переобучение. Так что надо какой то другой отсев входов делать.
Может отсеять по весу входов? Как вы это сделали для задачи из первого поста темы...
Вот пытаюсь переписать скрипт R который вы приложили, так,чтобы он сам определял имена и кол-во столбцов... но знания R не хватает.
Вот пытаюсь переписать скрипт R который вы приложили, так,чтобы он сам определял имена и кол-во столбцов... но знания R не хватает.
Я ещё начинал изучать R тогда, скрипт почти полностью сгенерирован в rattle (визуальная среда для датамайнинга в R), поэтому такой сложный и настроенный на все случаи жизни.
Вот это
нужно заменить на
И вроде должно быть норм.
Вообще там плохой подход, не нужно так определять важность входов. Почему-то это прокатило в тот раз, но больше мне это ни разу не помогло.
Лучше важность предикторов определять так
Результаты оценки важности получились такие. Чем выше в табличке предиктор, тем лучше. Тест прошли только VVolum6, VDel1, VVolum9, VQST10.
В rattle можно построить сразу 6 моделей на этих 4 предикторах, и SVM показывает точность около 55% на валидационных и тестовых данных. Неплохо.
MLP получается в 95% случаев угадывает... мне кажется вы не правильный велосипед делаете) Без обид.
Я тоже свой велосипед делаю, но основываясь на десятилетиями проверенном MLP (который, как говорят - устарел, и надо на чем-то более крутом работать).
А попробуйте деревья решений из алглиба еще, они считаются быстрее а очность лучше чем у млп. Диплернинг тоже быстрее считает, но в алглибе уже нет
Главное же это соотношение скорость/качество, какой смысл ждать неделю когда посчитает или даже день и даже час.. так оптимальную комбинацию не подобрать никогда ) Обучаться модель должна несколько секунд, тогда можно использовать генетику ля автоподбора параметров или предикторов, тогда это тру АИ, иначе шлак )