Neural network application to pseudorandom sequence generation simulation
The article discusses the methodology of using neural networks to simulate pseudorandom sequences, which allows finding the hidden structure and sequence algorithms to reduce the observed processes to deterministic ones. To improve the quality of simulation of sequences of generated numbers, models...
Збережено в:
| Дата: | 2024 |
|---|---|
| Автори: | , |
| Формат: | Стаття |
| Мова: | Ukrainian |
| Опубліковано: |
PROBLEMS IN PROGRAMMING
2024
|
| Теми: | |
| Онлайн доступ: | https://pp.isofts.kiev.ua/index.php/ojs1/article/view/647 |
| Теги: |
Додати тег
Немає тегів, Будьте першим, хто поставить тег для цього запису!
|
| Назва журналу: | Problems in programming |
| Завантажити файл: | |
Репозитарії
Problems in programming| id |
pp_isofts_kiev_ua-article-647 |
|---|---|
| record_format |
ojs |
| resource_txt_mv |
ppisoftskievua/0a/3e030d94b0c783c323933336c4c5b00a.pdf |
| spelling |
pp_isofts_kiev_ua-article-6472025-02-15T13:51:45Z Neural network application to pseudorandom sequence generation simulation Використання нейронних мереж для імітації генерації випадкових послідовностей Lesyk, V.O. Doroshenko, A.Yu. recursive neural networks; pseudorandom number generator; number sequence generation imitation; TensorFlow UDC 004.421.5 рекурсивні нейронні мережі; генератор псевдовипадкових чисел; імітація генерації послідовностей чисел; TensorFlow УДК 004.421.5 The article discusses the methodology of using neural networks to simulate pseudorandom sequences, which allows finding the hidden structure and sequence algorithms to reduce the observed processes to deterministic ones. To improve the quality of simulation of sequences of generated numbers, models of recurrent neural networks are used, taking into account their ability to adapt to the generated continuous sequences. The paper proposes a method for using and tuning recurrent neural networks and the influence of selected hyperparameters that determine the internal structure, size of the input sequence, and length of the resulting generated sequence, which ultimately affects the quality and accuracy of the matching neural pseudorandom generator sequences and the real program equivalent. The obtained results show a possibility of using neural methods in the processes of hashing, predicting sequences of statistically random data, cryptographic algorithms and data compression algorithms, or finding the original process of generating the sequence under study.Prombles in programming 2024; 2-3: 280-287 У статті розглядається методологія використання нейронних мереж для імітації псевдовипадкових послідовностей, що дозволяє знаходити приховану структуру та алгоритми послідовності для зведення спостережуваних процесів до детермінованих. Для підвищення якості імітації послідовностей згенерованих чисел використано моделі рекурсивних нейронних мереж із урахуванням їхніх можливостей адаптації до згенерованих неперервних послідовностей. У роботі запропонований метод використання та налаштування рекурсивних нейронних мереж та впливу обраних гіперпараметрів, що визначають внутрішню структуру, розмір вхідної послідовності, довжину результуючої згенерованої послідовності, що в результаті впливає на якість та точність співпадіння нейронного псевдовипадкового генератора та реального програмного еквіваленту. Отримані результати показують можливість використання нейронних методів у процесах хешування, передбачення послідовностей статистично випадкових даних, у криптографічних алгоритмах та алгоритмах стиснення даних або знаходження оригінального процесу генерації досліджуваної послідовності.Prombles in programming 2024; 2-3: 280-287 PROBLEMS IN PROGRAMMING ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ ПРОБЛЕМИ ПРОГРАМУВАННЯ 2024-12-17 Article Article application/pdf https://pp.isofts.kiev.ua/index.php/ojs1/article/view/647 10.15407/pp2024.02-03.280 PROBLEMS IN PROGRAMMING; No 2-3 (2024); 280-287 ПРОБЛЕМЫ ПРОГРАММИРОВАНИЯ; No 2-3 (2024); 280-287 ПРОБЛЕМИ ПРОГРАМУВАННЯ; No 2-3 (2024); 280-287 1727-4907 10.15407/pp2024.02-03 uk https://pp.isofts.kiev.ua/index.php/ojs1/article/view/647/699 Copyright (c) 2024 PROBLEMS IN PROGRAMMING |
| institution |
Problems in programming |
| baseUrl_str |
https://pp.isofts.kiev.ua/index.php/ojs1/oai |
| datestamp_date |
2025-02-15T13:51:45Z |
| collection |
OJS |
| language |
Ukrainian |
| topic |
recursive neural networks pseudorandom number generator number sequence generation imitation TensorFlow UDC 004.421.5 |
| spellingShingle |
recursive neural networks pseudorandom number generator number sequence generation imitation TensorFlow UDC 004.421.5 Lesyk, V.O. Doroshenko, A.Yu. Neural network application to pseudorandom sequence generation simulation |
| topic_facet |
recursive neural networks pseudorandom number generator number sequence generation imitation TensorFlow UDC 004.421.5 рекурсивні нейронні мережі генератор псевдовипадкових чисел імітація генерації послідовностей чисел TensorFlow УДК 004.421.5 |
| format |
Article |
| author |
Lesyk, V.O. Doroshenko, A.Yu. |
| author_facet |
Lesyk, V.O. Doroshenko, A.Yu. |
| author_sort |
Lesyk, V.O. |
| title |
Neural network application to pseudorandom sequence generation simulation |
| title_short |
Neural network application to pseudorandom sequence generation simulation |
| title_full |
Neural network application to pseudorandom sequence generation simulation |
| title_fullStr |
Neural network application to pseudorandom sequence generation simulation |
| title_full_unstemmed |
Neural network application to pseudorandom sequence generation simulation |
| title_sort |
neural network application to pseudorandom sequence generation simulation |
| title_alt |
Використання нейронних мереж для імітації генерації випадкових послідовностей |
| description |
The article discusses the methodology of using neural networks to simulate pseudorandom sequences, which allows finding the hidden structure and sequence algorithms to reduce the observed processes to deterministic ones. To improve the quality of simulation of sequences of generated numbers, models of recurrent neural networks are used, taking into account their ability to adapt to the generated continuous sequences. The paper proposes a method for using and tuning recurrent neural networks and the influence of selected hyperparameters that determine the internal structure, size of the input sequence, and length of the resulting generated sequence, which ultimately affects the quality and accuracy of the matching neural pseudorandom generator sequences and the real program equivalent. The obtained results show a possibility of using neural methods in the processes of hashing, predicting sequences of statistically random data, cryptographic algorithms and data compression algorithms, or finding the original process of generating the sequence under study.Prombles in programming 2024; 2-3: 280-287 |
| publisher |
PROBLEMS IN PROGRAMMING |
| publishDate |
2024 |
| url |
https://pp.isofts.kiev.ua/index.php/ojs1/article/view/647 |
| work_keys_str_mv |
AT lesykvo neuralnetworkapplicationtopseudorandomsequencegenerationsimulation AT doroshenkoayu neuralnetworkapplicationtopseudorandomsequencegenerationsimulation AT lesykvo vikoristannânejronnihmereždlâímítacíígeneracíívipadkovihposlídovnostej AT doroshenkoayu vikoristannânejronnihmereždlâímítacíígeneracíívipadkovihposlídovnostej |
| first_indexed |
2025-07-17T09:42:12Z |
| last_indexed |
2025-07-17T09:42:12Z |
| _version_ |
1850413135011250176 |
| fulltext |
280
Машинне навчання та нейронні мережі
УДК 004.421.5 http://doi.org/10.15407/pp2024.02-03.280
В.О. Лесик, А.Ю. Дорошенко
ВИКОРИСТАННЯ НЕЙРОННИХ МЕРЕЖ ДЛЯ
ГЕНЕРАЦІЇ ВИПАДКОВИХ ПОСЛІДОВНОСТЕЙ
У статті розглядається методологія використання нейронних мереж для імітації псевдовипадкових по-
слідовностей, що дозволяє знаходити приховану структуру та алгоритми послідовності для зведення
спостережуваних процесів до детермінованих. Для підвищення якості імітації послідовностей згене-
рованих чисел використано моделі рекурсивних нейронних мереж із урахуванням їхніх можливостей
адаптації до згенерованих неперервних послідовностей. У роботі запропонований метод використання
та налаштування рекурсивних нейронних мереж та впливу обраних гіперпараметрів, що визначають
внутрішню структуру, розмір вхідної послідовності, довжину результуючої згенерованої послідовно-
сті, що в результаті впливає на якість та точність співпадіння нейронного псевдовипадкового генера-
тора та реального програмного еквіваленту. Отримані результати показують можливість використання
нейронних методів у процесах хешування, передбачення послідовностей статистично випадкових да-
них, у криптографічних алгоритмах та алгоритмах стиснення даних або знаходження оригінального
процесу генерації досліджуваної послідовності.
Ключові слова: рекурсивні нейронні мережі, генератор псевдовипадкових чисел, імітація генерації по-
слідовностей чисел, TensorFlow.
V.O. Lesyk, A.Y. Doroshenko
NEURAL NETWORK APPLICATION TO
PSEUDORANDOM SEQUENCE GENERATION SIMULATION
The article discusses the methodology of using neural networks to simulate pseudorandom sequences, which
allows finding the hidden structure and sequence algorithms to reduce the observed processes to deterministic
ones. To improve the quality of simulation of sequences of generated numbers, models of recurrent neural
networks are used, taking into account their ability to adapt to the generated continuous sequences. The paper
proposes a method for using and tuning recurrent neural networks and the influence of selected hyperparam-
eters that determine the internal structure, size of the input sequence, and length of the resulting generated
sequence, which ultimately affects the quality and accuracy of the matching neural pseudorandom generator
sequences and the real program equivalent. The obtained results show a possibility of using neural methods
in the processes of hashing, predicting sequences of statistically random data, cryptographic algorithms and
data compression algorithms, or finding the original process of generating the sequence under study.
Key words: recursive neural networks, pseudorandom number generator, number sequence generation
imitation, TensorFlow.
Вступ
Генерація випадкових чисел відіграє
важливу роль у сферах криптографії, акаде-
мічних досліджень та використовується у
процесах отримання послідовностей номе-
рів у мережевих протоколах, одноразових
номерів у криптографічних протоколах, ге-
нерації паролів для захисту даних та бага-
тьох інших процесах. За відсутності елеме-
нта випадковості, всі криптографічні опера-
ції можна вважати передбачуваними, що в
свою чергу означає появу вразливостей, мо-
жливості перехоплення повідомлень, отри-
мання ключів захисту та шифрування,
отримання доступу до захищених процесів,
сеансів, каналів зв’язку.
У даному контексті гостро постає
проблема створення методів реверсивної
інженерії даних методів, бо достеменне
знання випадкового процесу повністю ніве-
лює елемент криптографії та надає можли-
вість відновити вихідний процес. Наразі ге-
нератори псевдовипадкових чисел (ПВЧ)
© В.О.Лесик, А.Ю.Дорошенко, 2024
ISSN 1727-4907. Проблеми програмування. 2024. №2-3
281
Машинне навчання та нейронні мережі
мають детерміновану структуру та повто-
рюють генеровану послідовність через де-
який період. Але за рахунок того, що даний
період є занадто великим, визначення вико-
ристаного алгоритму потребує отримання
дуже великої частини послідовності із пов-
ного періоду, що унеможливлює його від-
новлення.
Потенційною альтернативою стає
використання нейронних мереж, що мають
здатність нечітко визначати процеси, які
стоять за генерацією ПВЧ послідовностей.
Це дає змогу знизити кількість чисел для
перебору та відновлення оригінального ал-
горитму. Дослідження застосування ней-
ронних мереж для імітації конкретних псе-
вдовипадкових процесів може стати доста-
тнім елементом, що наближає процес авто-
матизованого визначення оригінальної не-
оборотної функції.
Використання мереж у контексті
проблеми випадкових послідовностей
може висвітлити наявні випадкові процеси
реального світу із елементами випадково-
сті. Майбутнім потенційним застосуванням
нейромереж до випадковості є отримання
методів формалізації функцій та процесів,
які слугують підгрунтям генераторів ПВЧ
та істинно випадкових послідовностей, вра-
ховуючи, що випадкові послідовності чи-
сел є однорідними, та не існує канонічного
способу однозначно довести, що набір чи-
сел справді випадковий [1].
Метою роботи є проведення аналізу
застосування нових підходів, що базуються
на принципах штучних інтелектуальних си-
стем. Вони можуть не традиційно опису-
вати та висвітлювати випадкові процеси,
що має потенціал надання нової парадигми
аналізу послідовностей та наявності випад-
кових процесів у детерміністичних
комп’ютерних процесах.
Актуальність. Наразі генератори
ПВЧ широко застосовуються у криптогра-
фічних алгоритмах, шифруванні та захисті
даних. Отже дослідження із використанням
штучного інтелекту є потенційним елемен-
том створення систем реверсивної інжене-
рії криптографічних методів як для виді-
лення вразливостей та недоліків, так і для
створення більш надійних методів. Даний
тип нейронних мереж має додатковий
потенціал розширення методів формаліза-
ції процесів та навчання за наборами даних
із наближено випадковим розподілом.
Використання нейронних мереж у
якості генераторів є відносно новим напря-
мком досліджень. Отже аналіз застосу-
вання даної технології до випадкових про-
цесів має потенціал до знаходження нових
статистичних методів перевірки наявності
випадковості у послідовностях та процесах.
Ключовим елементом дослідження
випадкового процесу та отримання уяв-
лення про його алгоритмічну структуру є
використання статистичних методів або но-
вітніх елементів – нейронних мереж – для
аналізу середовищ, великих даних або пос-
лідовностей. Основним використанням
нейронних методів є забезпечення безпосе-
реднього процесу імітації послідовності,
результат якого можна проаналізувати на
наявність відповідних математичних зв’яз-
ків та наборів функцій, що є достатніми для
опису досліджуваного процесу.
За визначеннями з [2] випадкові чи-
сла неможливо обчислити, оскільки цифрові
комп’ютери є детермінованими та в даному
контексті обмеженими із очевидною альтер-
нативою використання генераторів істинно
випадкових чисел. Основні дослідження у
напрямку створення випадкових послідов-
ностей зосереджені на наближенні штучних
методів генерації послідовностей до отри-
мання істинної випадковості. Дана робота
має на меті зміщення уваги від істинної ви-
падковості знаходження та висвітлення мо-
жливостей штучних нейронних мереж до
виявлення закономірностей у попередньо
оцінених послідовностях як випадкових. Ін-
шим важливим аспектом є оцінка даних ней-
ронних систем з огляду на розширення ін-
струментарію статистичних методів отри-
мання прихованих зв’язків та алгоритмів по-
будови послідовностей чисел чи даних, а та-
кож - аналіз даних послідовностей щодо на-
явності детермінованої випадковості.
Оцінка існуючих підходів до
аналізу, генерації та імітації
випадковості
Розвиток та розробка псевдовипад-
кових алгоритмів починається із середини
282
Машинне навчання та нейронні мережі
двадцятого століття, найперший з яких був
розроблений Джоном фон Нейманом, який
використовував квадрат числа для отри-
мання певної середньої частини цифр да-
ного числа, що можна вважати близьким до
випадкового. Але даний алгоритм є досить
неефективним, адже псевдовипадкові чи-
сла входять у періодичне кільце досить
швидко. Власне наявність недоліків алго-
ритмів та наближення генерування послідо-
вностей до випадковості стимулювало по-
дальші розробки та модифікації алгорит-
мів, прикладом якого може
слугувати [3].
З часу появи першого алгоритму
було розроблено понад 30 псевдовипадко-
вих алгоритмів[4], кожен із яких вводив до-
даткові покращення із наближення генеро-
ваних послідовностей до нормального або
випадкового розподілу, пришвидшення,
криптографічної стійкості, адаптивності та
використання більшого набору знаків і па-
раметрів та інших складових. Найбільш ві-
домі та часто використовувані – це Ліній-
ний конгруентний метод [5], що входить в
стандартні бібліотеки компіляторів, який
можна вважати тривіальним прикладом та
який може бути параметризований відпо-
відно до задачі, алгоритм Блум–Блум–
Шуба або Blum Blum Shub [6, 7], що має до-
статню криптографічну стійкість, алгоритм
Вихор Мерсенна або Mersane Twister[8],
який можна вважати найбільш дослідже-
ним та розповсюдженим алгоритмом.
Альтернативним варіантом генера-
ції псевдовипадкових послідовностей та-
кож можна вважати обчислення ірраціона-
льних чисел та продовження обчислення
часток або цифри після відповідної кілько-
сті прорахованого порядку точності, так як
результат даного обрахунку буде наближа-
тися до випадкового. Підтвердженням да-
ного процесу слугують роботи із розши-
рення обчислення ірраціональних чисел [9]
або із використання числа Пі для отри-
мання випадкових чисел [10].
У результаті попереднього аналізу
підходів до реалізації випадковості можна
зробити припущення про постійну наяв-
ність алгоритмічної та визначеної струк-
тури, яка прямолінійно або опосередковано
впливає на сам принцип генерації тих чи ін-
ших послідовностей. Схоже припущення
розглядається в роботі [11], де автори нама-
гаються описати питання, що звучить як
«Чи грає Бог в псевдо кості?». Результатом
оглянутої роботи є підкреслення потенцій-
ної можливості нейронних мереж передба-
чити продовження ірраціональних послідо-
вностей, що можуть інтерпретуватися як
випадкові. Автори припускають, що у разі
порядку прогнозованості ірраціональних
чисел, такі випадкові процеси як квантові
генератори випадкових чисел також по-
винні мати таку властивість. Також автори
мотивують проведення розширених дослі-
джень випадкових процесів із використан-
ням більш спеціалізованих методів машин-
ного навчання.
Дана робота є логічним продовжен-
ням розглянутої публікації із продовжен-
ням відповідних експериментів, що наці-
лені на явне виділення залежностей та пате-
рнів у псевдовипадкових послідовностях.
Але для даного експерименту потрібно змі-
стити увагу на більш тривіальні алгоритмі-
чні методи генерації та виділення основних
нейромережевих підходів , методів налаш-
тування та підбору обраних підходів для
отримання системи, що здатна імітувати
такі послідовності із певною граничною то-
чністю.
Наразі застосування нейронних ме-
реж для імітації випадкових процесів ще не
є повноцінно дослідженою та повністю ро-
зглянутою тематикою. Доцільно першим
кроком використання нейромереж у поста-
вленій задачі вважати сам аналіз вже вико-
ристовуваних підходів на практиці. В пуб-
лікації [11] розглядається базова структура
нейронної мережі, тобто нейронні мережі
прямого поширення. В роботі [12] викорис-
товується Шарова рекурентна нейронна ме-
режа для розробки окремого нейронного
методу генерації псевдовипадкових чисел.
Автори здійснюють широке дослідження
ефективності впливу гіперпараметрів на як-
ість генерації випадковості. Саму модель
навчають за попередньо згенерованими ви-
падковими даними. Та основне навчання
було сконцентроване на впровадженні ви-
падковості, ніж імітації конкретного випад-
кового модулю. В роботі [13] увага приді-
ляється застосуванню навчання з підкріп-
283
Машинне навчання та нейронні мережі
ленням та рекурсивні нейронні моделі. Ідея
застосування даних підходів полягає в на-
данні «заохочення» для моделей, що справ-
ляються із процесом генерації псевдовипа-
дкових чисел краще, згідно з відповідними
метриками. Результатом описаного дослі-
дження є система, яку можна вважати най-
більше наближеною до істинно випадко-
вого генератора чисел. Схожий результат
отримано з роботи [14], де генератор псев-
довипадкових чисел реалізовано на ПКВМ
(Програмована Користувачем Вентильна
Матриця) із додатковим використанням
нейронної мережі Хопфілда та під впливом
електромагнітного випромінювання. В да-
ній роботі нейронну мережу можна розгля-
дати як елемент, що розширює коло випад-
ковості даної апаратної реалізації випадко-
вого генератора, та має потенціал на наслі-
дування вивченого процесу продукування
випадковості без наявності додаткового
впливу джерела ентропії.
Нейронні мережі можна вважати
розповсюдженим методом, що використо-
вується в розробці новітньої архітектури та
методології формування випадковості. Але
розглянуті роботи лише підкреслюють ефе-
ктивність застосування даних мереж тільки
як відокремленого генератора. Питання на-
слідування та імітації конкретного алгори-
тму чи методу випадковості залишається ві-
дкритим.
Проведення експерименту
Основною задачею експерименту є
підкреслення можливостей застосування
рекурсивних моделей для передбачення
впорядкованих наборів даних, так як струк-
тура даного типу нейронних мереж орієнто-
вана саме на цей тип задачі[15]. Для прове-
дення експерименту обрано програмну
мову Python із відповідними розширеннями
для роботи з даними: Matplotlib, Tensor-
Flow, Keras, NumPy.
Для дослідження обрано наступні
алгоритми: Лінійний Конгруентний Гене-
ратор(LCG) та Регістр Зсуву з Лінійним
Зворотним (LFSR) зв’язком та Xorshift16,
які базуються на кусково-лінійних функ-
ціях та побітових операціях відповідно. На-
ведені алгоритми реалізують процеси гене-
рації послідовностей даних, що статисти-
чно відповідають випадковим. Вони реалі-
зують базові принципи генерації випадко-
вих послідовностей, які є основою для су-
часних ускладнених алгоритмів, Успішне
навчання мережі на послідовностях базо-
вих методів підкреслює можливості нав-
чання та імітації моделі і на подальших ал-
горитмах.
У якості конкретних параметрів об-
рано коефіцієнти для LCG, що отримано з
моделі ZX81, де 𝑚𝑚 = 65537, 𝑚𝑚 = 75, 𝑐𝑐 = 74;
у якості LFSR обрано 16-бітний Фібоначчі
LFSR із відповідними відводами: [16, 14,
13, 11]. Дані генеруються в проміжку від 0
до 65535, тобто генеруються числа формату
uint16. Генерація чисел за допомогою LFSR
відбувається за рахунок проходження 16
кроків. Xorshift16 розроблено на основі
Xorshift32, але оперує із значеннями int16
та має коефіцієнти здвигів (9, 7 13)
Задача сформульована таким чином,
що відомо лише перші 80% послідовності,
а наступні 20% необхідно передбачити
шляхом імітації системи. Тобто вибірка ро-
збита на приблизно 50000 послідовних зна-
чень навчання та 15000 значень для переві-
рки. Окреслена задача класифікується як
навчання із учителем. Результуючий набір
нормалізовано до меж [0 : 1]. Модель реалі-
зовано за допомогою структурних блоків
програмного пакету TensorFlow: Sim-
pleRNN та Dence, що реалізують поведінку
рекурсивного шару та шару прямого розпо-
всюдження відповідно. Обрана довжина
блоку послідовності становить 16 чисел;
виходом моделі є одне значення, що відпо-
відає конкретному числу. Модель, що зада-
ється функціональним інтерфейсом, наве-
дено далі:
𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖 = 𝐼𝐼𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖(𝑖𝑖ℎ𝑎𝑎𝑖𝑖𝑎𝑎 = (1, 16))
𝑥𝑥 = 𝑆𝑆𝑖𝑖𝑚𝑚𝑖𝑖𝑆𝑆𝑎𝑎𝑆𝑆𝑆𝑆𝑆𝑆(64)(𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖𝑖)
𝑥𝑥 = 𝐷𝐷𝑎𝑎𝑖𝑖𝑖𝑖𝑎𝑎(64, 𝑎𝑎𝑐𝑐𝑖𝑖𝑖𝑖𝑎𝑎𝑎𝑎𝑖𝑖𝑖𝑖𝑎𝑎𝑖𝑖 = ′𝑟𝑟𝑎𝑎𝑆𝑆𝑖𝑖′)(𝑥𝑥)
𝑥𝑥 = 𝐷𝐷𝑎𝑎𝑖𝑖𝑖𝑖𝑎𝑎(32, 𝑎𝑎𝑐𝑐𝑖𝑖𝑖𝑖𝑎𝑎𝑎𝑎𝑖𝑖𝑖𝑖𝑎𝑎𝑖𝑖 = ′𝑟𝑟𝑎𝑎𝑆𝑆𝑖𝑖′)(𝑥𝑥)
𝑥𝑥 = 𝐷𝐷𝑎𝑎𝑖𝑖𝑖𝑖𝑎𝑎(1, 𝑎𝑎𝑐𝑐𝑖𝑖𝑖𝑖𝑎𝑎𝑎𝑎𝑖𝑖𝑖𝑖𝑎𝑎𝑖𝑖 = ′𝑟𝑟𝑎𝑎𝑆𝑆𝑖𝑖′)(𝑥𝑥)
Обрана функція помилки – лога-
рифм гіперболізованого косинусу, бо необ-
хідно мінімізувати різницю між згенерова-
ним числом та дійсним числом послідовно-
284
Машинне навчання та нейронні мережі
сті. Оптимізація здійснюється за допомо-
гою відповідного оптимізатора «Adam»,
швидкість навчання – 0,001 та наявним кро-
ком зменшення в 2 рази кожні 50 епох. Ос-
новна спостережувана метрика – абсолю-
тне відхилення. Навчання моделей прово-
диться за 300 епох. Результати навчання
моделей висвітлено на рисунках 1-3:
Рис. 1-3. Графіки втрат
Моделі навчаються успішно та дося-
гають лімітованого значення похибки за
встановленим набором гіперпараметрів.
Помилка на графіку рис. 1 спадає стрім-
кіше, що свідчить про більшу генералізацію
даних. Для повноцінного опису моделі до-
цільно навести абсолютну похибку всіх мо-
жливих значень передбачення. Дані меж
похибок зображено у таблиці 1. Таблиця
показує відсоток результатів передбачення,
що потрапляють у наведений окіл похибки.
Похибка вказана у якості цілого числа.
Таблиця 1
Межі абсолютної похибки
Модель
Межі похибки
< 200 < 2000 < 10000 < 20000
LCG 21% 87.7% 98.6% 99.4%
Xorshift16 1.3% 13.0% 59.3% 92.2%
Fibonacci
LFSR 1.6% 16.7% 72.2% 96.2%
За результатами встановлено, що
модель найкраще імітує поведінку ліній-
ного конгруентного генератора та у 88% пе-
редбачає наступне число послідовності із
похибкою менше 2000. Це свідчить про те,
що модель проявляє більшу ефективність
імітації алгоритмів на основі кусково-ліній-
них функцій та математичних операцій.
Моделі, які навчені на генераторах із вико-
ристанням бітового зсуву, мають резуль-
тати із більшою похибкою, але проявляють
достатні здатності до генералізації моделі.
Отже використання даних моделей у
точних операціях не є ефективним через на-
явність наближених значень, але у загаль-
ному випадку застосування рекурсивних
моделей надає задовільний результат для
отримання припущень або нечітких знань
про процес генерації випадковості, що до-
цільно використовувати у подальших дос-
лідженнях.
Завершальним методом перевірки
результатів є візуальний метод. Відтворимо
згенеровані передбачення та дійсні числа
на одному графіку для отримання загальної
картини. Достатньо представити перші 200
передбачень.
285
Машинне навчання та нейронні мережі
Отримані візуалізації зображено на
рисунках 4-6:
Рис. 4-6. Візуалізація результатів
Примітка: «коло» - дійсне значення,
«хрестик» - передбачення.
Але в реальності дані методи генера-
ції чисел доцільно вважати циклічними, по-
слідовними. Такі дані не можна чітко опи-
сати класичною парадигмою. Тому для по-
кращення результатів та отримання точних
значень доцільно використовувати відпові-
дну структуру у самій моделі, тобто необхі-
дно розробити відповідну функцію поми-
лки, що враховує циклічність, достатньо
гнучкі та відповідні функції активації.
Треба інтегрувати елементи побітових опе-
рацій, часткову або повноцінну логіку ви-
падкових процесів у саму структуру ней-
ронної мережі. Варто використовувати по-
кращені рекурсивні моделі, такі як моделі з
короткою та довготривалою пам’яттю або
трансформери.
Висновки
У статті розглянуто загальні методи
використання моделі рекурсивної нейрон-
ної мережі для відтворення псевдовипадко-
вої послідовності та передбачення наступ-
ного значення послідовності. Проста реалі-
зація нейронної мережі, що наслідує пове-
дінку базового випадкового генератора чи-
сел, є прикладом можливості методів ма-
шинного навчання отримувати знання про
середовище та процеси, що попередньо оці-
нюються як випадкові. Проведені експери-
менти з імплементації процесу формаліза-
ції внутрішніх зв’язків свідчать про потен-
ційну можливість визначення структури зо-
внішніх та внутрішніх (програмних) дже-
рел ентропії. Експериментальна модель
вказує також на можливість майбутніх реа-
лізацій, що можуть виявляти закономірно-
сті в складних випадкових криптографічно
стійких алгоритмах, слугувати елементами
формалізації послідовностей у якості обо-
ротних функцій чи генераторів із відповід-
ними ідентифікаторами.
Дана робота є потенційним елемен-
том, що може нівелювати проблеми базо-
вих структур автокодувальників[16] і стати
елементом квантифікації даних у нейрон-
них мережах. Розглянута модель передба-
чає подальше розширення та може бути по-
кращена за допомогою інтеграції архітек-
тури, що використовує підходи довгої та
короткої пам’яті рекурсивних мереж, мож-
ливості нейроеволюційного методу, біто-
вих “flip-flop” елементів та побітових ней-
ронних мереж.
286
Машинне навчання та нейронні мережі
References
1. CHAITIN, Gregory J. Randomness
and mathematical proof. Scientific
American, 1975, 232.5: 47-53. Ac-
cessed: 10.04.2024.
https://behdad.org/download/Presenta-
tions/chaitin75/sciamer.html
2. STIPČEVIĆ, Mario; KOÇ, Çetin
Kaya. True random number generators.
In: Open Problems in Mathematics and
Computational Science. Cham:
Springer International Publishing,
2014. p. 275-315. DOI 10.1007/978-3-
319-10683-0_12
3. WIDYNSKI, Bernard. Middle-Square
weyl sequence RNG. arXiv preprint
arXiv:1704.00358, 2017. Accessed:
10.04.2024.
https://arxiv.org/pdf/1704.00358.pdf
4. List of random number generators. Ac-
cessed: 10.04.2024. https://en.wikipe-
dia.org/wiki/List_of_random_num-
ber_generators
5. TEZUKA, Shu. Linear congruential
generators. In: Uniform Random Num-
bers: Theory and Practice. Boston,
MA: Springer US, 1995. p. 57-82.
6. BLUM, Lenore; BLUM, Manuel;
SHUB, Mike. A simple unpredictable
pseudo-random number generator.
SIAM Journal on computing, 1986,
15.2: 364-383. Accessed: 10.04.2024.
https://www.academia.edu/down-
load/89296292/91cdc1da67c52e606cd
4752472ce0db83131.pdf
7. JUNOD, Pascal. Cryptographic secure
pseudo-random bits generation: The
Blum-Blum-Shub generator. Un-
published, 1999. Accessed:
10.04.2024. https://www.aca-
demia.edu/down-
load/30436611/bbs.pdf
8. MATSUMOTO, Makoto; NISHI-
MURA, Takuji. Mersenne twister: a
623-dimensionally equidistributed uni-
form pseudo-random number genera-
tor. ACM Transactions on Modeling
and Computer Simulation (TOMACS),
1998, 8.1: 3-30.
Accessed: 10.04.2024.
https://dl.acm.org/doi/pdf/10.1145/272
991.272995
9. GHODOSI, Hossein, et al. Pseudoran-
dom sequences obtained from expan-
sions of irrational numbers. Depart-
ment of Computer Science Center for
Computer Security Research, Univer-
sity of Wollongong Australia, 1995.
Accessed: 10.04.2024. https://citese-
erx.ist.psu.edu/docu-
ment?repid=rep1&type=pdf&doi=b3f
b3b8824fa60d785dc0633df6ec0323db
b02a7
10. ROGERS, Ilya; HARRELL, Greg;
WANG, Jin. Using [pi] digits to
Generate Random Numbers: A Visual
and Statistical Analysis.
In: Proceedings of the International
Conference on Scientific Computing
(CSC). The Steering Committee of The
World Congress in Computer Science,
Computer Engineering and Applied
Computing (WorldComp), 2015. p.
251.
11. FAN, Fenglei; WANG, Ge. Learning
from pseudo-randomness with an arti-
ficial neural network–does god play
pseudo-dice?. IEEE Access, 2018, 6:
22987-22992. Accessed: 10.04.2024.
https://ieeex-
plore.ieee.org/iel7/6287639/6514899/
08350369.pdf
12. DESAI, Veena; PATIL, Ravindra;
RAO, Dandina. Using layer recurrent
neural network to generate pseudo ran-
dom number sequences. International
Journal of Computer Science Issues,
2012, 9.2: 324-334. Accessed:
10.04.2024.
https://citeseerx.ist.psu.edu/document?
repid=rep1&type=pdf&doi=9302db89
e8e94e3d93608c2c4498af09e5446144
13. PASQUALINI, Luca; PARTON, Mau-
rizio. Pseudo random number genera-
tion through reinforcement learning
and recurrent neural networks. Algo-
rithms, 2020, 13.11: 307. Accessed:
10.04.2024.
https://www.mdpi.com/1999-
4893/13/11/307/pdf
14. YU, Fei, et al. Design and FPGA im-
plementation of a pseudo-random num-
287
Машинне навчання та нейронні мережі
ber generator based on a Hopfield neu-
ral network under electromagnetic ra-
diation. Frontiers in Physics, 2021, 9:
690651. Accessed: 10.04.2024.
https://www.frontiersin.org/arti-
cles/10.3389/fphy.2021.690651/pdf
15. BLOG, Andrej Karpathy. The unrea-
sonable effectiveness of recurrent neu-
ral networks. May, 2015, 21: 31. Ac-
cessed: 10.04.2024. URL: https://kar-
pathy.github.io/2015/05/21/rnn-effec-
tiveness/
16. LESYK, V. O.; DOROSHENKO, А.
Yu. Image compression module based
neural network autoencoders. PROB-
LEMS IN PROGRAMMING, 2023, 1:
48-57.
Одержано: 20.04.2024
Внутрішня рецензія отримана: 30.04.2024
Зовнішня рецензія отримана: 04.05.2024
Про авторів:
Лесик Валентин Олександрович,
аспірант
http://orcid.org/0000-0002-8307-5707.
Дорошенко Анатолій Юхимович,
доктор фізико-математичних наук,
професор, завідувач відділу
http://orcid.org/0000-0002-8435-1451.
Місце роботи авторів:
Національний технічний універси-
тет України
«Київський політехнічний інститут
імені Ігоря Сікорського»,
Берестейський проспект, 37, м. Київ,
Україна, індекс 03056
E-mail: lesykvalentine@gmail.com
|