МЕТОД ЗБЕРІГАННЯ ДАНИХ РЕКОМЕНДАЦІЙНОЇ СИСТЕМИ НА ОСНОВІ БІНАРНИХ ДІАГРАМ РІШЕНЬ
DOI:
https://doi.org/10.26906/SUNZ.2020.2.085Ключові слова:
рекомендаційні системи, бінарні діаграми рішень, зв’язані списки, хеш-таблиці, комп’ютерне моделюванняАнотація
Стаття присвячена дослідженню методів збереження даних рекомендаційних систем. Запропоновано та досліджено використання бінарних діаграм рішень для збереження таких даних. Внаслідок великого розміру рекомендаційних систем суттєвими є обмеження по оперативній пам'яті. Метою роботи є розробка методу зберігання даних рекомендаційної системи у формі бінарних діаграм рішень та порівняння з методами збереження на основі інших структур даних. Дані рекомендаційної системи зберігаються у вигляді графу із вершинами, які представляють користувачів системи та об'єкти системи, а ребра – дії користувачів системи, відношення подібності, зв'язки рекомендацій тощо. Для підвищення ефективності у випадку інтенсивного редагування графу запропоновано збереження даних на основі “гарячого” (хеш-таблиця) та “холодного” (бінарна діаграма рішень) сховищ.Проведено серію експериментів для перевірки ефективності розробленого способу зберігання даних, для чого розроблено програмну модель спрощеної рекомендаційної системи та описано алгоритм роботи такої системи. В чисельному експерименті пропонований спосіб зберігання даних на основі бінарних дерев рішень порівнюється із трьома іншими: на основі бітових масивів, зв'язних списків та хеш-таблиць. Розглянуто переваги та недоліки реалізації кожного із вказаних методів. В ході експерименту для різних значень кількості агентів, предметів, сесій та вподобань досліджено максимальні та мінімальні значення використаної оперативної пам'яті, а також час генерації лайків, сесій та рекомендацій. Встановлено, що у випадку застосування бінарних діаграм рішень обсяг використаної оперативної пам’яті є нижчим за інші способи при меншій швидкодії, що частково може бути компенсовано декількома застосованими оптимізаціями. Завдяки меншому використанню оперативної пам'яті можна зберігати інформацію про більшу кількість вподобань, що може виявитися корисним у випадку великих розмірів графу рекомендаційної системи. Можливість для бінарних діаграм рішень пошуку даних за частковими ключами додатково дозволяє зберігати дані більшої розмірностіЗавантаження
Посилання
“Recommender Systems Handbook” (2010) Editors F. Ricci, L. Rokach, B. Shapira, P. B. Kantor, New York, NY, USA: Springer-Verlag New York, Inc., 842 p.
Jones M. (2013) “Recommender systems, Part 1. Introduction to approaches and algorithms. Learn about the concepts that underlie web recommendation engines”, URL: https://www.ibm.com/developerworks/opensource/library/osrecommender1/index.html?s_tact=105agx99&s_cmp=cp
Фаулер М., Садаладж П. Дж. (2013) “NoSQL: новая методология разработки нереляционных баз данных”, Издательский дом «Вильямс», Москва, 192 с.
Meier A., Kaufmann M. (2019) “SQL & NoSQL Databases”, Springer Vieweg, Wiesbaden, P. 201-218. – URL: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.468.7089&rep=rep1&type=pdf
Cure O., Blin G. (2014) “RDF Database Systems: Triples Storage and SPARQL Query Processing”, Elsevier Science, 256 p.
Yi N., Li C., Feng X., Shi M. (2017) “Design and implementation of movie recommender system based on graph database”, 14th Web Information Systems and Applications Conference (WISA), IEEE, P. 132-135.
Angles R. (2012) “A comparison of current graph database models”, IEEE 28th International Conference on Data Engineering Workshops, IEEE, 2012, P. 171-177.
Засядко Г.Е., Карпов А.В. (2017) “Проблемы разработки графовых баз данных”, // ИВД. No1 (44), URL: https://cyberleninka.ru/article/n/problemy-razrabotki-grafovyh-baz-dannyh
Мелков С., Мусатов Д., Савватеев А. (2013), “Моделирование социальных сетей”, URL: https://kpfu.ru/docs/F117464271/MMS_socnet_cities.pdf
Берновски М.М., Кузюрин Н.Н. (2012) “Случайные графы, модели и генераторы безмасштабных графов” // Труды ИСП РАН. URL: https://cyberleninka.ru/article/n/ sluchaynye-grafy-modeli-i-generatory-bezmasshtabnyh-grafov
Райгородский А.М. (2012) “Математические модели Интернета”, “Квант” No4, С. 12-16, URL: https://elementy.ru/nauchno-populyarnaya_biblioteka/431792
Meleshko Ye. (2019) “Computer model of virtual social network with recommendation system”, Scientific journal Innovative Technologies and Scientific Solutions for Industries, Kharkiv: NURE, Issue. 2 (8), P. 80-84
Робинсон Я., Вебер Д., Эифрем Э. (2016) “Графовые базы данных: новые возможности для работы со связанными данными”, М.: ДМК Пресс, 256 с.
“Neo4j Documentation” (2020) URL: https://neo4j.com/docs
Храбров Д. (2006) “Способы хранения графов в памяти компьютера”, URL: https://dexp.in/russian/graph-storage/
Кнут Д.Э. (2013) “Искусство программирования, том 4А. Комбинаторные алгоритмы. Часть 1”, М.: "Вильямс", 960 с.
Minato S. (2001) “Zero-suppressed BDDs and their applications”, International Journal on Software Tools for Technology Transfer, No3.2 – pp. 156– 170.
Міхав В.В. (2019) “Програмне забезпечення для моделювання мереж репутації користувачів соціальних веб-ресурсів на основі бінарних діаграм рішень”, Системи управління, навігації та зв’язку, Т.5., No57, С. 78-83. – URL: http://journals.nupp.edu.ua/sunz/article/download/1720/140