|
|
|
|
Рейтинг 4.89/38:
|
|
427 / 316 / 115
Регистрация: 28.08.2013
Сообщений: 883
|
|
Выбор нейросети для прогнозирования (вычисления вероятности)20.01.2021, 19:25. Показов 13071. Ответов 73
Здравствуйте.
Хочу узнать у знающих форумчан. Какую (или какие) есть нейросети для прогнозирования (вычисления вероятности) следующего значения. Абстрактный пример. Есть набор чисел, к примеру: 1001, 1002, 1003, 1002, 1005, ..., какая (или какие) нейросеть может дать приемлемый ( >80%) результат вероятного следующего значения?
0
|
|
| 20.01.2021, 19:25 | |
|
Ответы с готовыми решениями:
73
Система принятия решений на базе нейросети, выбор перечня и очередности решения Написание ИИ для прогнозирования событий |
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
|
| 19.10.2024, 17:03 | |
|
Сразу не откликнулись, а потом меня у компа не было.
"Секундочку", файлы от лишнего мусора почищу и проверю.
0
|
|
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
|
| 20.10.2024, 03:38 | |
|
Обещанные блокноты:
https://colab.research.google.... XcNZKFdwzD https://colab.research.google.... VYv1f8Gs_k Добавлено через 1 час 8 минут Подумал со вчера ещё над такой вещью. Я про "пилу". Напомню у меня это некий апериодический график (функция), которая символизирует некое событие, например, открытие двери термошкафа или очередной отстоп на финансовом рынке (или выход новости, что вобщем-то не с НС и роботам, хотя . . .) Назовём этонекоторым входным параметром, на который система должна реагировать непосредственно (условно мгновенно). Т.е. получается, если у нас процесс изменения температуры в шкафу по синусоиде, то для лучшего регулирования (например) мы можем предсказать температуру в будущем. Но если оператор открывает дверь, такое предсказание "летит к чертям". Допустим, что мы знаем по какой экспоненте будет падать температура при открытой двери термошкафа. Но суть в том, что такое событие (момент открывания двери) в отличие синусоиды температуры при "вечно-закрытой" двери НЕПРЕДСКАЗУЕМО. На всякий случай попробую объяснить ещё по другому. Простейший пример с синусоидами. Их, напомню, две одинаковые разнесённые по фазе. Ключевая функция -- их разность. Как (надеюсь все) мы понимаем, НС "не понимает", что это разность, однако, способна практически в точности построить её. Эта синусоида будет иметь свою фазу. Самый простой пример -- прогноз через 10 точек единственной синусоиды. Для текущей входной последовательности соответствующее значение ключевой функции есть значение из той же самой синусоиды, сдвинутой влево на 10 шагов. А с точки зрения прогнозного значения ("наступившего будущего") сеть точно "знает", что этому предшествовало 10 шагов назад (в обоих примерах). Однако, со случайными (непериодическими) событиями такое невозможно. Глядя на "исторический" график можно кривую сдвинуть на любое количество шагов в любую сторону. Однако, это не означает, что можно за 10 шагов предсказать событие, которое на значение ключевой функции влияет мгновенно. Сеть/модель, разумеется, чего-то построит, однако, смешно "разочаровываться" в прогностических способностях LSTM при анализе спрогнозированной ключевой функции в таких знаковых моментах при наличии подобных входных параметров.
0
|
|
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
|||||||
| 20.10.2024, 12:19 | |||||||
|
А я о чем говорил?
Хорошо бы еще период (частота) были бы одинаковы или кратны, то можно было бы о чем-то говорить. А так это несвязанные мусорные данные. P.S. Колабу еще не смотрел, дела. Но обязательно гляну. Добавлено через 1 час 17 минут В training_step() и validation_step() строчка
Может надо вместо self использовать self.model? Добавлено через 37 минут Ладно, заберу свои слова обратно. Видимо self() - это псевдоним self.forward(). Должно работать. Такие характерные сглаживания пиков связаны с дискретностью данных. Вы не обучали модель на амплитудных значениях, обучали на околопиковых, вот модель и выдает чуть поменьше значения в быстроменяющихся местах графика.
0
|
|||||||
|
1 / 1 / 0
Регистрация: 21.08.2024
Сообщений: 7
|
|
| 20.10.2024, 17:23 | |
|
Любая даже без нейросети можно обойтись.
0
|
|
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
||||
| 21.10.2024, 02:30 | ||||
|
Добавлено через 20 минут
0
|
||||
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
|
| 21.10.2024, 07:42 | |
|
CF_pflx, если вы взяли синусоиду амплитудой 2.0 и с какой дискретностью ее оцифровали, то вы можете получить примерно такой ряд:
0, 0.9, 1.2, 1.7, 1.8, 1.1, -0.3, ... Нейросеть не увидит значения 2.0, соответственно не воспроизведёт это значение. А если вы ещё теорему Котельникова не знаете, то можете увидеть и такой ряд: 0, 0.5, 0.8, -0.1, -0.6, -0.5, ... Добавлено через 1 минуту Увеличьте ndiskr вдвое, в конце концов.
0
|
|
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
||
| 22.10.2024, 10:27 | ||
|
Пересобрал данные и модель прогнал. Вот картинки с числами точек на волну 60 и 56 (28 * 2) соответственно. 60, конечно на 4 тоже без остатка делится. Не сочтите за . . . необъективность, но картинка с числом 56 на волну мне нравится больше. . . ???
0
|
||
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
|
| 22.10.2024, 10:37 | |
|
У вас периоды синусоид разные вроде как, поэтому надо выбрать не 28, а НОК (наименьшее общее кратное).
В реальности же надо уменьшать шаг дискретности. Добавьте случайного шума в данные для красоты эксперимента.
0
|
|
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
|||
| 22.10.2024, 10:46 | |||
|
Кстати, в примере, о котором я однажды обмолвился (https://edunet.kea.su/repo/msu_ai/2.0/L09_RNN.html), как понимаю, 10 точек на радиан.
А с теоремой Котельникова знаком, примерно, 93-го года, и, как понимаю, частота дискретизации у меня в начальном примере выполнена на порядок выше, чем ограничение согласно теореме. Добавлено через 4 минуты А период в шагах обеих синусоид одинаков и совпадает с периодом дискретного сигнала, а "между" графиками, разумеется, -- разная (частота), как и пишу: 60 и 56 шагов (период) . . . Добавлено через 3 минуты
0
|
|||
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
|
| 22.10.2024, 10:49 | |
|
0
|
|
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
|||||||
| 22.10.2024, 12:29 | |||||||
|
Т.о., (только) у двух -- одинаковый. А то, что на графиках, там -- только разница 2-х и периодическая пила:
На приведённых графиках.
0
|
|||||||
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
|
| 22.10.2024, 12:33 | |
|
Шум можно простой равномерный или нормальный случайный с небольшой амплитудой. random.randn или random.rand
0
|
|
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
|
| 22.10.2024, 14:17 | |
|
Так с шумом: http://джокси.ru/MAjyw7GtZyaRl2
0
|
|
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
||
| 22.10.2024, 15:31 | ||
|
Добавлено через 1 час 9 минут CF_pflx, нормально ведь.
0
|
||
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
|||
| 22.10.2024, 15:47 | |||
|
Хотел спросить: Картинку-то видели? Или файлом прикрепить? Добавлено через 1 минуту
0
|
|||
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
|
| 22.10.2024, 17:49 | |
|
Картинку увидел, догадался заменить "джокси".
0
|
|
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
||||
| 23.10.2024, 05:55 | ||||
|
Полагаю, что задача в целом Вам ясна. Добавлено через 13 минут Правильно ли я Вас понял? Я его добавил не просто на вход, но и внедрил в значения ключевой функции???
0
|
||||
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
|
| 23.10.2024, 06:50 | |
|
0
|
|
|
2 / 2 / 0
Регистрация: 13.11.2017
Сообщений: 44
|
|
| 29.10.2024, 09:29 | |
|
Пытаюсь освоить/познакомиться с (ну и тп) трансформерами. Времени на фундаментальные исследования при чтении книжек с нуля по всем сетям и прочее, уже, к сожалению, позволить, пожалуй, не могу. Поэтому часто использую такой совместный метод исследования новых возможностей сетей с помощью поверхностного анализа их возможности из обзорного материала (1) и поиска каких-то наиболее близких к моим задачам примеров (2). Вот наткнулся на этот. Понимаю, что глубоко освоить питон это уже, видимо, в этой жизни – не моё. В равной степени, возможно, это касается и новых фреймворков, посвящённых нейросетям. Ну, тут, как говорится, что имеем.
Уважаемый Mikhaylo. Не могли бы вы мне разъяснить тут пару странных для меня вещей. Разумеется, я знакомился с описанием классов трансформера, собственно так же как и LSTM на сайте pitorch.org. Сравнил их, сделал некоторые аналогии, убедился в том, что ни тот, ни другой из мануалов не совершенны. Ну хотя бы input_size и future можно было бы где-то объединить или хотя бы после одного в другом другое указать в скобках. Понятно, что одно описание рождалось из другого, наследуя эти самые несовершенства. Однако. бороться с ветряными мельницами можно до бесконечно, и жизни бы не хватило. Ссылочку на пример я Вам дал. Вот блокнот с него сделанный. Работает. Во всяком случае, чего в примере – делает. Вопрос примерно выглядит так. Входные данные представляют собой тензоры 10х1. В описании класса модели первым стоит линейный слой из 1 (Input_dim) на 64 (d_model). Мне вообще не очень понятно, как может быть работать линейный слой при входе десяти значений разом с указанием при инициализации таких размерностей слоя? Второе, мне не очень понятен через слой параметр d_model равно 64 при длине входных данных 10. Также не очень понятен физический или какой-то информационный смысл параметров: d_model (применительно к данному примеру), nhead и dim_feedforward. Немного поэкспериментировал, распечатал размерности тензоров в forward класса TransformerModel (отражены в блокноте). Особой глубины понимания работы модели, разумеется, не возникло. Данный пример, с одной стороны, имеет всего лишь один вход (признак), с другой стороны, – весьма нетривиален, чем и заслужил моё внимание. Если можете это прокомментировать насущность введения такого собственного класса Input_transposition, наличие на входе линейного слоя. Я же ничего не перепутал, это полносвязнный, так называемый, – dense-слой? Насколько важно по Вашему применение слоя PositionalEncoding в данном примере и вообще в трансформерах (трансформерах в PyTorch)? Если Вы как-то можете это прокомментировать или расставить мои мозги по местам, будет весьма здорово.
0
|
|
|
821 / 580 / 75
Регистрация: 20.09.2014
Сообщений: 3,826
|
||
| 29.10.2024, 11:04 | ||
|
Но есть ещё функциональный подход, тут три основные функции map(), reduce(), filter(), которые позволяют уйти от всяких циклов. PyTorch исповедует map-styled функции. Функция map() заменяет простой такой цикл, когда к каждому значению массива по отдельности применяется какое-то преобразование, либо этих массивов может быть несколько - одинаковой длины n, либо ещё круче это может быть двумерный или многомерный массив и просто к каждому значению по отдельности применяется функция. Например, torch.sin() принимает на вход многомерный тензор, а на выходе получается другой тензор такого же размера, каждый элемент которого - синус значения из входного тензора. Очень просто! Учитывая, что все эти функции PyTorch написаны на C/C++, то такие циклы работают очень быстро. Вы должны освоить map-styled функции вместо циклов. Но чтобы разобраться со всем этим, вам нужно разобраться с многомерными тензорами. Если у вас есть некий тензор t, то вы можете узнать его размерность так: t.shape Допустим ответ такой (64, 3, 768). Это трехмерный тензор, у которого первая размерность t.shape[0] = 64 - это размерность батчей. t.shape[1] = 3 - количество каналов RGB (красный, зелёный, синий), t.shape[2] = 768 - размерность пикселей. 28 х 28 = 768. torch.Linear() работает особо: он может принимать на вход тензор X любой размерности, а тензор весов W двумерный, при этом последняя размерность X должна соответствовать первой размерности W. Если тензор X одномерный, то все понятно, как работает: один пример и нейросеть на нем обучается. Если же тензор X многомерный, то один и тот же слой обучается на множестве примеров, которые хранятся в многомерном тензоре. Выход такого линейного слоя - это такой же многомерный тензор "ответов", только последняя размерность соответствует последней размерности тензора весов W.
0
|
||
| 29.10.2024, 11:04 | |
|
Программа для прогнозирования данных ПО для моделей и прогнозирования в медицине Датасет для задачи прогнозирования Нейросети нейросети что это за?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|