Как определить, что нейронка действительно предсказывает, есть ли генератор именно случайных, а не псевдослучайных чисел?
Есть нейронка, которая была обучена на временном ряду цены закрытия (1М 1,4 млн. строк), потом на ее предикт подаем датасет с 15М (93К ) ниже 500 последних цен. Получаем достойный предикт. Затем генерируем случайный датасет на то же количество строк и получаем следующий ряд. И его отправляем на предикт. Ожидалось, что будет точность в районе 0,5, но она чуть больше. Не означает ли это, что сетка пытается вытащить закономерность генератора, так как последний все таки генерирует псевдослучайные числа? И если генератор полностью случайных чисел, что бы на нем свои 0,5 получить?
В принципе и так видны повторяющиеся фрагменты в псевдослучайной генерации:
В операционках часто есть случайные функции для целей безопасности. Например, в Линуксе это /dev/random. Он основан не на алгоритме, а на пуле событий с драйверов устройств. В случае с десктопом, он зависит в том числе от действий пользователя. Однако он ждёт, если энтропийный пул пуст, поэтому в реальных приложениях из соображений производительности, даже для генерации ключей, обычно используют /dev/urandom — ГПСЧ, который периодически берёт состояние из /dev/random. В общем, это достаточно случайно для генерации ключей, и возможно это подойдёт для ваших экспериментов.
Во многих языках есть кроссплатформенные обёртки над такими почти случайными случайными генераторами. Называются примерно как SecureRandom. Конкретно в Python, это secrets в стандартной библиотеке.
военный инженер-математик на пенсии,
интересы: гномоника, воспитание детей, Van-life. · 25 сент 2022 · analemma.ru
В своё время я занимался спец. аппаратурой для шифрования и для генерации "серьёзных" ключей датчик псевдослучайных чисел не годится. Обычно для этого используются аппаратные датчики случайных чисел асинхронно подключаемые к компьютеру, где выполняются алгоритмы шифрования. Проблема верификации случайности - это неразрешимая задача, поэтому обычно проверяется сам... Читать далее
Скорее всего, это эффект недостаточной длины генерированного случайного датасета для прогноза.
Как я понял, здесь решается задача бинарной классификации направления изменения цены. К сожалению, ничего не сказано про то, какая устойчивость точности 0.68 и 0.62 при генерировании других случайных датасетов с другими начальными условиями, на сколько эти числа прыгают, или... Читать далее
Нейронки - предмет темный, теория распространяется не дальше, чем на 3-слойные перцептроны, а глубже копать - уже почти чистое искусство.
Но генераторы "именно случайных, а не псевдослучайных чисел" существуют. Причем относительно давно. Только не программные, а аппаратные. Например, генератор белого шума. Достаточно его шум усилить и оцифровать через АЦП - и profit!
Обр... Читать далее
Давно занимался прогнозирования. Потом бизнесом, но стал просто пенсионером. По... · 13 янв 2023
Все генераторы используемые в вычислениях псевдослучайны. Ну даже по логике прикиньте. Вычисления "случайного" числа проводится по определённому алгоритму, в принципе значит последовательность предсказуема.