Проєкт інформаційної системи для створення персоналізованих ігрових рекомендацій

dc.contributor.advisorЙонек-Ковальська, Ізабеля Йоанна
dc.contributor.affiliationНаціональний університет "Львівська політехніка"
dc.contributor.authorГловацький, Ростислав Васильович
dc.contributor.authorHlovatskyi, Rostyslav Vasylovych
dc.coverage.placenameЛьвів
dc.date.accessioned2025-03-05T13:00:30Z
dc.date.created2024
dc.date.issued2024
dc.description.abstractРобота присвячена розробці інноваційної системи персоналізованих рекомендацій ігор, яка використовує гібридний алгоритм, що поєднує колаборативну фільтрацію та змістовний аналіз. Особливістю системи є глибока інтеграція з платформою Steam та використання семантичного аналізу тегів для точного визначення ігрових вподобань користувачів. Алгоритм рекомендацій базується на гібридному підході, що поєднує колаборативну фільтрацію та змістовний аналіз. Для семантичного аналізу тегів використовувалася модель Word2Vec, яка дозволила представити теги у вигляді векторних представлень і обчислювати їхню семантичну схожість. Для подальшого покращення якості рекомендацій було введено механізм комбінування тегів. Це дозволило виявляти більш нюансовані вподобання користувачів та пропонувати їм ігри, які відповідають не лише окремим тегам, а й їхнім комбінаціям. Наприклад, якщо користувач любить ігри жанру RPG з елементами стелсу, система зможе запропонувати йому ігри, які поєднують в собі обидва ці елементи. Система тегів була побудована на основі тегів, наданих платформою Steam, та доповнена власними тегами, що дозволило детальніше описувати ігри. При великій кількості тегів у користувача система застосовує механізм вибірковості, аналізуючи, з якими тегами користувач має найбільше ігор або витрачає найбільше часу. Це дозволяє точніше визначити його ключові інтереси. Архітектура системи базується на мікросервісній архітектурі, що дозволяє масштабувати систему та легко додавати нові функціональні можливості. Для розробки було використано фреймворк Unity та мову програмування C#. База даних MongoDB використовувалась для зберігання інформації про користувачів, ігри, рейтинги та рекомендації. Для взаємодії з платформою Steam використовувався SDK SteamKit. Експерименти та результати. Для оцінки ефективності системи було проведене тестування на невеликій вибірці користувачів. Було розраховано такі метрики як Precision@k і Recall@k для оцінки точності рекомендацій. Результати показали, що запропонований підхід дозволяє досягти високої точності рекомендацій, особливо для користувачів з добре сформованими ігровими вподобаннями. Завдяки використанню комбінацій тегів вдалося значно покращити релевантність рекомендацій та задовольнити більш різноманітні запити користувачів. Порівняння з базовими моделями. Для оцінки ефективності запропонованого підходу було проведено порівняння з базовими моделями рекомендацій, такими як випадковий вибір та рекомендації на основі популярності. Для оцінки якості рекомендацій використовувалися метрики Precision@k та Recall@k. Результати показали, що запропонований гібридний алгоритм досяг значно вищих значень Precision@10 та Recall@10 порівняно з базовими моделями, що свідчить про вищу точність та повноту рекомендацій. Вплив розміру словника тегів. Збільшення розміру словника тегів дозволяє більш точно описувати ігри та вподобання користувачів. Однак, надмірна кількість тегів може призвести до розрідження матриці взаємодій і ускладнити процес навчання моделі. Тому важливо підбирати оптимальний розмір словника тегів. Майбутні напрямки дослідження: ? Персоналізація інтерфейсу: Планується розробити персоналізований інтерфейс системи рекомендацій, який буде адаптуватися до індивідуальних потреб кожного користувача. ? Інтеграція з іншими сервісами: Планується інтеграція системи з іншими ігровими платформами та соціальними мережами для розширення джерел даних та покращення якості рекомендацій. ? Використання гейміфікації: Планується впровадження елементів гейміфікації для підвищення залученості користувачів до системи. ? Розробка веб-інтерфейсу: Планується розробка інтуїтивного веб-інтерфейсу, який забезпечить зручний доступ до системи рекомендацій з будь-якого пристрою з доступом до Інтернету.
dc.description.abstractThis work is devoted to the development of an innovative personalized game recommendation system that utilizes a hybrid algorithm combining collaborative filtering and content-based analysis. A distinctive feature of the system is its deep integration with the Steam platform and the use of semantic tag analysis for precise determination of users' gaming preferences. The recommendation algorithm is based on a hybrid approach that combines collaborative filtering and content-based analysis. For semantic tag analysis, the Word2Vec model was used, which allowed representing tags as vector representations and calculating their semantic similarity. To further improve the quality of recommendations, a tag combination mechanism was introduced. This allowed for the identification of more nuanced user preferences and the suggestion of games that match not only individual tags but also their combinations. For example, if a user likes RPG games with stealth elements, the system can suggest games that combine both of these elements. The tag system was built based on tags provided by the Steam platform and supplemented with custom tags, allowing for a more detailed description of games. When a user has a large number of tags, the system employs a selection mechanism, analyzing which tags the user has the most games with or spends the most time on. This allows for a more accurate determination of their key interests. The system architecture is based on a microservices architecture, allowing for system scalability and easy addition of new features. For development, the Unity framework and C# programming language were used. The MongoDB database was used to store information about users, games, ratings, and recommendations. The SteamKit SDK was used to interact with the Steam platform. Experiments and results. To evaluate the system's effectiveness, testing was conducted on a small sample of users. Metrics such as Precision@k and Recall@k were calculated to assess the accuracy of recommendations. The results showed that the proposed approach achieves high recommendation accuracy, especially for users with well-formed gaming preferences. The use of tag combinations significantly improved the relevance of recommendations and satisfied a wider range of user requests. Comparison with baseline models. To evaluate the effectiveness of the proposed approach, a comparison was made with baseline recommendation models such as random selection and popularity-based recommendations. To assess the quality of recommendations, Precision@k and Recall@k metrics were used. The results showed that the proposed hybrid algorithm achieved significantly higher values of Precision@10 and Recall@10 compared to baseline models, indicating higher accuracy and completeness of recommendations. Impact of the size of the tag vocabulary. Increasing the size of the tag vocabulary allows for a more accurate description of games and user preferences. However, an excessive number of tags can lead to a sparse interaction matrix and complicate the model training process. Therefore, it is important to choose the optimal size of the tag vocabulary. Future research directions: ? Personalization of the interface: It is planned to develop a personalized recommendation system interface that will adapt to the individual needs of each user. ? Integration with other services: It is planned to integrate the system with other gaming platforms and social networks to expand data sources and improve the quality of recommendations. ? Gamification: It is planned to introduce gamification elements to increase user engagement with the system. ? Development of a web interface: It is planned to develop an intuitive web interface that will provide convenient access to the recommendation system from any device with Internet access. Key words: recommendation system, games, personalization, semantic analysis, tags, machine learning, MongoDB, Flask, Steam, integration, collaborative filtering, content-based analysis, Word2Vec, transformers, contextual recommendations, tag combinations.
dc.format.pages87
dc.identifier.citationГловацький Р. В. Проєкт інформаційної системи для створення персоналізованих ігрових рекомендацій : кваліфікаційна робота на здобуття освітнього ступеня магістр за спеціальністю „8.126.00.03 — Управління ІТ проектами“ / Ростислав Васильович Гловацький. — Львів, 2024. — 87 с.
dc.identifier.urihttps://ena.lpnu.ua/handle/ntb/63793
dc.language.isouk
dc.publisherНаціональний університет "Львівська політехніка"
dc.rights.holder© Національний університет "Львівська політехніка", 2024
dc.rights.holder© Гловацький, Ростислав Васильович, 2024
dc.subject8.126.00.03
dc.subjectсистема рекомендацій
dc.subjectігри
dc.subjectперсоналізація
dc.subjectсемантичний аналіз
dc.subjectтеги
dc.subjectмашинне навчання
dc.subjectMongoDB
dc.subjectFlask
dc.subjectSteam
dc.subjectінтеграція
dc.subjectколаборативна фільтрація
dc.subjectзмістовний аналіз
dc.subjectWord2Vec
dc.subjectтрансформери
dc.subjectконтекстуальні рекомендації
dc.subjectкомбінації тегів
dc.titleПроєкт інформаційної системи для створення персоналізованих ігрових рекомендацій
dc.title.alternativeProject of an Information System for Creating Personalized Game Recommendations
dc.typeStudents_diploma

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
2024_81260003_Hlovatskyi_Rostyslav_Vasylovych_262303.pdf
Size:
1.36 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
2.9 KB
Format:
Plain Text
Description: