Please use this identifier to cite or link to this item:
https://er.chdtu.edu.ua/handle/ChSTU/6489| Title: | Дослідження систем аналізу даних з елементами штучного інтелекту |
| Authors: | Уткіна, Тетяна Юріївна Даценко, Олександр Миколайович |
| Issue Date: | Jan-2025 |
| Abstract: | Метою кваліфікаційної роботи магістра є підвищення ефективності систем аналізу даних з елементами штучного інтелекту за рахунок порівняльного аналізу існуючих систем аналізу даних з елементами штучного інтелекту, розробки структурної та функціональної моделей системи аналізу даних з елементами штучного інтелекту з метою створення уніфікованого шаблону та стратегії вибору необхідних даних для користувачів та експертів, а також побудови діаграм поведінки запропонованої системи для реалізації функцій як адміністратора, так і кінцевого користувача, що дозволяє забезпечити персоналізоване обслуговування користувачів, покращити досвід взаємодії з платформою та збільшити залученість користувачів. У результаті виконання досліджень отримано наступні наукові і практичні результати: 1. Проведено порівняльний аналіз систем аналізу даних з елементами штучного інтелекту, визначено переваги і недоліки їх застосування у різних сферах, таких як електронна комерція, медіа, соціальні мережі тощо. 2. Проведено функціональний аналіз існуючих систем аналізу даних з елементами штучного інтелекту та дана їх якісна оцінка за основними параметрами, такими як точність рекомендацій, швидкість обробки даних, масштабованість та користувацький досвід. 3. Визначено особливості сучасних технологій розробки систем аналізу даних з елементами штучного інтелекту, проаналізовано перспективи їх використання, зазначено позитивні та негативні чинники, що впливають на вибір технологій для конкретних завдань. 4. Побудовано діаграми поведінки системи аналізу даних з елементами штучного інтелекту для реалізації функцій як адміністратора, так і кінцевого користувача, що дозволяє детально формалізувати можливі дії користувача і відповідну реакцію системи на них для всіх етапів її життєвого циклу. 5. Розроблено структурна та функціональна моделі системи аналізу даних з елементами штучного інтелекту для створення уніфікованого шаблону та стратегії вибору необхідних даних для користувачів та експертів, що дозволяє забезпечити потреби як кінцевих користувачів, так і адміністраторів системи, здійснюючи ефективне управління інформацією та надаючи персоналізовані рекомендації на основі надійних даних. 6. Розроблена програмна система аналізу даних з елементами штучного інтелекту, заснована на тенденції розвитку сучасних технологій штучного інтелекту та стратегії вибору необхідних даних для користувачів та експертів, що дозволяє проводити процес генерації рекомендацій для забезпечення комплексного обслуговування користувачів, підвищення їх задоволеності та залученості. Запропонована система аналізу даних з елементами штучного інтелекту забезпечить простоту, зручність, доступність, відносну незалежність від часу та місця перебування користувачів, а також наддасть можливості для точного та ефективного підбору рекомендацій, що є суттєвим для різноманітних груп користувачів, включаючи нових та постійних користувачів, забезпечуючи при цьому високоякісний персоналізований досвід. |
| URI: | https://er.chdtu.edu.ua/handle/ChSTU/6489 |
| Appears in Collections: | 174 Автоматизація, комп'ютерно-інтегровані технології та робототехніка (Автоматизація та комп'ютерно-інтегровані системи та компоненти) |
Files in This Item:
| File | Description | Size | Format | |
|---|---|---|---|---|
| М_174_2024_Даценко.pdf Restricted Access | 2.15 MB | Adobe PDF | View/Open Request a copy |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.
Extracted text
ЧЕРКАСЬКИЙ ДЕРЖАВНИЙ ТЕХНОЛОІЧНИЙ УНІВЕРСИТЕТ ФАКУЛЬТЕТ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ І СИСТЕМ КАФЕДРА РОБОТОТЕХНІКИ ТА СПЕЦІАЛІЗОВАНИХ КОМП’ЮТЕРНИХ СИСТЕМ Пояснювальна записка до кваліфікаційної роботи освітнього ступеню «магістр» на тему: Дослідження систем аналізу даних з елементами штучного інтелекту Виконав: студент 2 курсу, групи МАКІТ-2309 спеціальності 174 «Автоматизація, комп’ютерно-інтегровані технології та робототехніка, освітня програма» (освітня програма «Автоматизація та комп’ютерно-інтегровані системи та компоненти») Олександр ДАЦЕНКО (ім’я та прізвище) Керівник Тетяна УТКІНА (ім’я та прізвище) Рецензент (ім’я та прізвище) Черкаси 2024 року 2 ЗМІСТ ПЕРЕЛІК СКОРОЧЕНЬ ТА УМОВНИХ ПОЗНАЧЕНЬ ............................. 4 ЗАГАЛЬНА ХАРАКТЕРИСТИКА РОБОТИ .................................................. 5 РОЗДІЛ 1. СТАН ПРЕДМЕТУ ДОСЛІДЖЕННЯ ТА ФОРМУЛЮВАННЯ ЗАВДАНЬ ....................................................................... 12 1.1. Дослідження світового досвіду використання систем аналізу даних з елементами штучного інтелекту .......................................................................... 12 1.2. Сучасні технології систем аналізу даних з елементами штучного інтелекту та перспективи їх використання ......................................................... 16 1.3. Переваги та недоліки систем аналізу даних з елементами штучного інтелекту ................................................................................................................. 22 1.4. Формулювання проблемних завдань дослідження .................................. 25 Висновки .............................................................................................................. 26 РОЗДІЛ 2. СИСТЕМНИЙ АНАЛІЗ ІСНУЮЧИХ СИСТЕМ АНАЛІЗУ ДАНИХ З ЕЛЕМЕНТАМИ ШТУЧНОГО ІНТЕЛЕКТУ ............................ 27 2.1. Розвиток систем аналізу даних з елементами штучного інтелекту ....... 27 2.2. Функціональний аналіз систем аналізу даних з елементами штучного інтелекту ................................................................................................................. 28 2.3. Обґрунтування доцільності розробки системи аналізу даних з елементами штучного інтелекту .......................................................................... 30 Висновки .............................................................................................................. 32 РОЗДІЛ 3. МОДЕЛЮВАННЯ КОМПОНЕНТІВ СИСТЕМИ АНАЛІЗУ ДАНИХ З ЕЛЕМЕНТАМИ ШТУЧНОГО ІНТЕЛЕКТУ ............................ 33 3.1. Моделювання предметної області ............................................................. 33 3.2. Формування та аналіз вимог до програмного забезпечення .................. 34 3.3. Розробка логічної моделі системи аналізу даних з елементами штучного інтелекту ................................................................................................................. 36 3 3.4. Розробка структурної моделі системи аналізу даних з елементами штучного інтелекту ............................................................................................... 37 3.5. Моделювання поведінки системи аналізу даних з елементами штучного інтелекту ................................................................................................................. 40 3.6. Проектування і розробка бази даних системи аналізу даних з елементами штучного інтелекту ............................................................................................... 44 Висновки .............................................................................................................. 46 РОЗДІЛ 4. РОЗРОБКА СИСТЕМИ АНАЛІЗУ ДАНИХ З ЕЛЕМЕНТАМИ ШТУЧНОГО ІНТЕЛЕКТУ ............................................... 47 4.1. Вибір інструментальних засобів розробки системи аналізу даних з елементами штучного інтелекту .......................................................................... 47 4.2. Розробка інтерфейсу системи аналізу даних з елементами штучного інтелекту ................................................................................................................. 54 Висновки .............................................................................................................. 59 ВИСНОВКИ ......................................................................................................... 61 СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ ........................................................ 63 ПЕРЕЛІК СКОРОЧЕНЬ ТА УМОВНИХ ПОЗНАЧЕНЬ CRUD – Create, Read, Update, Delete – концепція Створити, Прочитати, Оновити, Видалити. AI – Artificial Intelligence – штучний інтелект. ALS – Alternating Least Squares – метод оптимізації, який використовується для знаходження факторних матриць у задачах факторизації матриць. CSS – Cascading Style Sheets – каскадні таблиці стилів. HTML – Hyper Text Markup Language – мова гіпертекстової розмітки. HTTP – Hyper Text Transfer Protocol – протокол передачі гіпертексту. HTTPS – Hyper Text Transfer Protocols Security – розширення протоколу HTTP, захищений протокол передачі даних. ML – Machine Learning – машинне навчання. REST – Representational State Transfer – архітектурний стиль взаємодії компонентів розподіленої програми у мережі. RMSE – Root Mean Square Error – корінь середнього квадратичного відхилення; метрика, яка вимірює середню величину помилок між передбаченими та фактичними значеннями. SPA – Single Page Application – Web-додаток, що складаються з одного HTML-документу. SQL – Structured Query Language – мова структурованих запитів. SVD – Singular Value Decomposition – сингулярне розкладання; алгоритм лінійної алгебри, який розкладає матрицю на три інші матриці, спрощуючи аналіз та обробку даних. ЗАГАЛЬНА ХАРАКТЕРИСТИКА РОБОТИ Актуальність теми. У сучасному інформаційному суспільстві обсяг даних стрімко зростає, що створює потребу в ефективних методах їх аналізу та обробки. Системи аналізу даних з елементами штучного інтелекту (AI/ML) стають невід’ємною частиною багатьох галузей, включаючи розваги, маркетинг, фінанси, охорону здоров’я та багато інших. Актуальність теми “Дослідження систем аналізу даних з елементами штучного інтелекту” полягає в її здатності вирішувати складні задачі обробки великих обсягів даних, підвищувати точність прогнозів та покращувати користувацький досвід [1]. Штучний інтелект і машинне навчання стали ключовими технологіями для аналізу великих даних (Big Data) [2]. Вони дозволяють автоматизувати процеси обробки даних, виявляти складні патерни та взаємозв’язки, що були б неможливі для виявлення за допомогою традиційних методів аналізу [3]. Застосування AI/ML у системах аналізу даних дозволяє компаніям та організаціям приймати більш обґрунтовані рішення, оптимізувати бізнес-процеси та покращувати продукти та послуги [4]. Системи аналізу даних з елементами штучного інтелекту є одним із найпоширеніших застосувань штучного інтелекту в сфері розваг [5]. Вони дозволяють персоналізувати контент для користувачів, підвищуючи їхню залученість та задоволеність [6]. Наприклад, платформи стрімінгових сервісів, таких як Netflix, Amazon Prime та Spotify, активно використовують системи аналізу даних з елементами штучного інтелекту для пропозиції фільмів, серіалів та музики, що найбільше відповідають вподобанням користувачів [7]. Це не тільки покращує користувацький досвід, але й сприяє збільшенню тривалості перебування користувачів на платформі, що безпосередньо впливає на прибутковість компаній. Технології штучного інтелекту постійно розвиваються, пропонуючи нові можливості для вдосконалення систем аналізу даних. Наприклад, розвиток глибокого навчання (Deep Learning) дозволяє створювати більш складні та точні моделі, здатні обробляти мультимодальні дані, такі як текст, зображення та відео. 6 Інтеграція трансформерів та інших сучасних архітектур нейронних мереж відкриває нові горизонти для створення інтелектуальних систем рекомендацій, які враховують не лише минулі взаємодії користувача з контентом, але й його поточний контекст та настрої. Індустрія розваг є однією з найактивніше впроваджуваних AI/ML технологій завдяки високому попиту на персоналізований контент [3]. Систем аналізу даних з елементами штучного інтелекту дозволяють платформам ефективно управляти своїми бібліотеками контенту, забезпечуючи користувачам швидкий доступ до релевантних фільмів та серіалів [4]. Це сприяє зниженню показника відмов, збільшенню лояльності користувачів та, як наслідок, підвищенню конкурентоспроможності компаній на ринку. Дослідження систем аналізу даних з елементами штучного інтелекту має велике значення як з наукової, так і з практичної точки зору [6]. З наукової перспективи, воно сприяє розвитку нових методів та алгоритмів для обробки та аналізу даних, що може бути застосовано в різних сферах. З практичної ж сторони, результати таких досліджень можуть бути інтегровані у комерційні продукти, що забезпечують ефективні та точні рішення для бізнесу та кінцевих користувачів. Світові ринки все більше орієнтуються на використання даних для прийняття стратегічних рішень. Це створює високий попит на спеціалістів у сфері аналізу даних та штучного інтелекту [2]. Магістерська робота, присвячена дослідженню систем аналізу даних з елементами AI/ML, не лише відповідає поточним вимогам ринку, але й забезпечує фундаментальні знання та навички, необхідні для подальшої кар’єри в цій галузі, що динамічно розвивається. Однією з ключових проблем систем рекомендацій є холодний старт – складність надання рекомендацій для нових користувачів або нових фільмів, для яких ще немає достатньої кількості даних взаємодії [4]. Використання різних датасетів та гібридних методик дозволяє значно зменшити цю проблему, поєднуючи колаборативні та контентні підходи. Крім того, розробка масштабованих систем аналізу даних, здатних обробляти великі обсяги 7 інформації в режимі реального часу, є актуальним завданням для забезпечення ефективної роботи сучасних сервісів [6]. Впровадження ефективних систем аналізу даних з елементами AI/ML може значно підвищити економічну ефективність компаній. Персоналізовані рекомендації сприяють збільшенню продажів, покращенню утримання клієнтів та зниженню витрат на маркетингові кампанії [7]. Компанії, що успішно інтегрують такі системи, отримують конкурентні переваги на ринку, що дозволяє їм займати лідируючі позиції у своїй галузі. Мета і завдання дослідження. Метою даної магістерської роботи є розробка та дослідження ефективної системи аналізу даних з елементами штучного інтелекту, спеціалізованої на рекомендації фільмів. В рамках цієї мети передбачається використання різноманітних датасетів, доступних на платформах як Kaggle та IMDb, їхнє об’єднання та попередня обробка для створення високоякісного навчального набору даних. Основна увага приділятиметься застосуванню різних методів машинного навчання та штучного інтелекту для побудови моделей рекомендацій, а також оцінці їхньої ефективності за допомогою відповідних метрик. Завданням роботи є всебічне вивчення існуючих підходів до створення систем аналізу даних з елементами штучного інтелекту, включаючи колаборативну фільтрацію, контентну фільтрацію та гібридні методики. На основі проведеного огляду літератури буде обрано найбільш відповідні алгоритми для реалізації в рамках проекту. Далі необхідно здійснити вибір та підготовку відповідних датасетів, включаючи очищення даних, їхнє об’єднання та трансформацію для подальшого аналізу. Після підготовки даних передбачається розробка різних моделей рекомендацій, використовуючи методи машинного та глибокого навчання. Особлива увага буде приділена глибоким нейронним мережам, таким як автоенкодери та рекурентні нейронні мережі, які можуть покращити точність та адаптивність системи аналізу даних з елементами штучного інтелекту. Одним із ключових аспектів роботи є оцінка ефективності розроблених моделей за 8 допомогою різноманітних метрик, таких як RMSE, MAE, Precision@K та Recall@K. Це дозволить об’єктивно визначити сильні та слабкі сторони кожного підходу та обрати найоптимальнішу модель для подальшого впровадження. Крім того, планується візуалізація результатів аналізу даних та оцінки моделей, що сприятиме кращому розумінню отриманих результатів та їхній презентації. Завершальним завданням є узагальнення отриманих результатів, формулювання висновків щодо ефективності застосованих методів та надання рекомендацій щодо подальших напрямів досліджень. Таким чином, дана магістерська робота спрямована на всебічне дослідження та розробку системи аналізу даних з елементами штучного інтелекту, яка використовує сучасні методи штучного інтелекту для аналізу великих обсягів даних, забезпечуючи високу точність та релевантність даних. Запропонований пристрій вирізнятиметься своєю унікальністю, функціональністю завдяки нестандартному форм-фактору «носіння на шиї» та доступною вартістю. Він може знайти застосування у різних сферах, включаючи особистий моніторинг здоров’я, використання в спортивних тренуваннях, медичних дослідженнях та реабілітаційних програмах. Для досягнення цієї мети необхідно вирішити наступні завдання: − провести порівняльний аналіз систем аналізу даних з елементами штучного інтелекту, визначити переваги і недоліки їх застосування у різних сферах, таких як електронна комерція, медіа, соціальні мережі тощо; − провести функціональний аналіз існуючих систем аналізу даних з елементами штучного інтелекту та надати їх якісну оцінку за основними параметрами, такими як точність рекомендацій, швидкість обробки даних, масштабованість та користувацький досвід; − визначити особливості сучасних технологій розробки систем аналізу даних з елементами штучного інтелекту, проаналізувати перспективи їх використання, зазначити позитивні та негативні чинники, що впливають на вибір технологій для конкретних завдань; 9 − побудувати діаграми поведінки системи аналізу даних з елементами штучного інтелекту для реалізації функцій як адміністратора, так і кінцевого користувача; − розробити структурну та функціональну моделі системи аналізу даних з елементами штучного інтелекту для створення уніфікованого шаблону та стратегії вибору необхідних даних для користувачів та експертів; − розробити програмну систему аналізу даних з елементами штучного інтелекту, що дозволить проводити процес генерації рекомендацій для забезпечення комплексного обслуговування користувачів, підвищення їх задоволеності та залученості. Об’єкт дослідження – процес аналізу даних з елементами штучного інтелекту. Предмет дослідження – системи аналізу даних з елементами штучного інтелекту. Методи дослідження. Для розв’язання поставлених завдань були використані наступні методи: теорії аналізу та синтезу, методи системного проектування, технологія проектування програмних систем, машинне навчання, нечіткий пошук, алгоритми колаборативної, контентної та гібридної фільтрації. Наукова новизна одержаних результатів: − проведено порівняльний аналіз систем аналізу даних з елементами штучного інтелекту, визначено переваги і недоліки їх застосування у різних сферах, таких як електронна комерція, медіа, соціальні мережі тощо; − проведено функціональний аналіз існуючих систем аналізу даних з елементами штучного інтелекту та дана їх якісна оцінка за основними параметрами, такими як точність рекомендацій, швидкість обробки даних, масштабованість та користувацький досвід; − розроблено структурна та функціональна моделі системи аналізу даних з елементами штучного інтелекту для створення уніфікованого шаблону та стратегії вибору необхідних даних для користувачів та експертів, що дозволяє забезпечити потреби як кінцевих користувачів, так і адміністраторів системи, 10 здійснюючи ефективне управління інформацією та надаючи персоналізовані рекомендації на основі надійних даних. Практичне значення одержаних результатів полягає в тому, що на основі проведеного дослідження систем аналізу даних з елементами штучного інтелекту: − визначено особливості сучасних технологій розробки систем аналізу даних з елементами штучного інтелекту, проаналізовано перспективи їх використання, зазначено позитивні та негативні чинники, що впливають на вибір технологій для конкретних завдань; − побудовано діаграми поведінки системи аналізу даних з елементами штучного інтелекту для реалізації функцій як адміністратора, так і кінцевого користувача, що дозволяє детально формалізувати можливі дії користувача і відповідну реакцію системи на них для всіх етапів її життєвого циклу; − розроблена програмна система аналізу даних з елементами штучного інтелекту, заснована на тенденції розвитку сучасних технологій штучного інтелекту та стратегії вибору необхідних даних для користувачів та експертів, що дозволяє проводити процес генерації рекомендацій для забезпечення комплексного обслуговування користувачів, підвищення їх задоволеності та залученості. Апробація результатів роботи. Результати роботи доповідалися й обговорювалися на студентській науковій конференції: − дні студентської науки ЧДТУ, 23-24 квітня, м. Черкаси, Україна, 2024. Публікації. Результати досліджень опубліковані в тезі доповідей: 1. Даценко О. М., Уткіна Т. Ю. Дослідження систем аналізу даних із елементами штучного інтелекту на базі Raspberry Pi [Електронний ресурс] / [упоряд. : Єгорова О. В., Захарова О. В., Тичков В. В. та ін.]. Студентська науково-практична конференція ЧДТУ : зб. тез доповідей, 23-24 квітня 2024 р. М-во освіти і науки України, Черкас. держ. технол. ун-т. Черкаси : ЧДТУ, 2024. С. 6-7. 11 Структура та обсяг кваліфікаційної роботи. Кваліфікаційна робота складається з вступу, 4 розділів, висновків та списку використаних джерел. Робота викладена на 65 сторінках. Ілюстрована 22 рисунками. Список використаних джерел містить 26 найменувань. РОЗДІЛ 1. СТАН ПРЕДМЕТУ ДОСЛІДЖЕННЯ ТА ФОРМУЛЮВАННЯ ЗАВДАНЬ 1.1. Дослідження світового досвіду використання систем аналізу даних з елементами штучного інтелекту Системи аналізу даних з елементами штучного інтелекту відіграють ключову роль у сучасних цифрових платформах, сприяючи покращенню користувацького досвіду та підвищенню бізнес-показників. Вони дозволяють персоналізувати пропозиції для користувачів, забезпечуючи релевантний контент на основі їх уподобань та минулих взаємодій. Світовий досвід впровадження систем аналізу даних з елементами штучного інтелекту демонструє їх ефективність у різних галузях, включаючи електронну комерцію, стрімінгові сервіси, соціальні мережі та інші цифрові платформи. Однією з найвідоміших компаній, що активно використовує систему аналізу даних з елементами штучного інтелекту для надання рекомендацій, є Amazon. Платформа використовує комбінацію колаборативної фільтрації та контентної фільтрації для аналізу поведінки користувачів та створення персоналізованих рекомендацій продуктів. Наприклад, система аналізує попередні покупки, перегляди товарів, оцінки та відгуки, щоб пропонувати продукти, які можуть бути цікавими конкретному користувачу. Це не лише покращує користувацький досвід, але й значно підвищує обсяги продажів та лояльність клієнтів. На рис. 1.1 наведено зовнішній вигляд персоналізованих рекомендацій контенту системи аналізу даних Amazon. 13 Рис. 1.1 Зовнішній вигляд персоналізованих рекомендацій контенту системи аналізу даних Amazon Netflix є прикладом компанії, яка революціонізувала галузь розваг завдяки ефективній системі аналізу даних з елементами штучного інтелекту. Використовуючи складні алгоритми машинного навчання, Netflix аналізує не лише оцінки фільмів та серіалів, але й час перегляду, частоту повернень до контенту, а також інші поведінкові показники. Це дозволяє створювати глибоко персоналізовані рекомендації, що значно покращують задоволеність користувачів та утримання клієнтів. На рис. 1.2 наведено зовнішній вигляд персоналізованих рекомендацій контенту системи аналізу даних Netflix. 14 Рис. 1.2 Зовнішній вигляд персоналізованих рекомендацій контенту системи аналізу даних Netflix Соціальні мережі, такі як Facebook та Instagram, також активно використовують системи аналізу даних з елементами штучного інтелекту для підвищення взаємодії користувачів. Наприклад, Facebook використовує алгоритми рекомендацій для визначення контенту, який найбільше цікавить користувача, включаючи пости друзів, групи та сторінки, до яких він може захотіти приєднатися. Instagram використовує подібні методи для пропозиції нових акаунтів для підписки на основі вподобань користувача та його взаємодій з контентом. Системи аналізу даних з елементами штучного інтелекту використовуються також у галузі освіти та наукових досліджень. Наприклад, платформи як Coursera та Udemy використовують рекомендаційні алгоритми для пропозиції курсів, які найбільше відповідають інтересам та попередньому досвіду користувача. Це сприяє більш ефективному навчальному процесу та підвищенню успішності студентів. На рис. 1.3 наведено зовнішній вигляд персоналізованих рекомендацій контенту системи аналізу даних Udemy. 15 Рис. 1.3 Зовнішній вигляд персоналізованих рекомендацій контенту системи аналізу даних Udemy Spotify є одним з провідних прикладів використання систем аналізу даних з елементами штучного інтелекту у сфері музичних стрімінгових сервісів. Використовуючи алгоритми машинного навчання, Spotify аналізує вподобання користувачів, їхні прослуховування, плейлисти та інші поведінкові показники для створення персоналізованих рекомендацій треків та альбомів. Це не лише покращує користувацький досвід, але й сприяє збільшенню часу, проведеного користувачами на платформі. YouTube використовує системи аналізу даних з елементами штучного інтелекту для пропозиції відео, які можуть бути цікавими користувачу. Алгоритми аналізують історію переглядів, вподобання, взаємодії з контентом та інші дані для створення персоналізованих списків рекомендацій. Це сприяє підвищенню залученості користувачів та збільшенню кількості переглядів відео. На рис. 1.4 наведено зовнішній вигляд персоналізованих рекомендацій контенту системи аналізу даних YouTube. 16 Рис. 1.4 Зовнішній вигляд персоналізованих рекомендацій контенту системи аналізу даних YouTube Незважаючи на високу ефективність, системи аналізу даних з елементами штучного інтелекту стикаються з рядом викликів. Одним із ключових є проблема холодного старту, яка виникає при недостатній кількості даних про нових користувачів або нові продукти. Іншим важливим аспектом є забезпечення приватності та захисту даних користувачів. Крім того, системи аналізу даних з елементами штучного інтелекту можуть спричиняти ефект фільтраційної бульбашки, обмежуючи користувачів лише певним типом контенту, що може негативно впливати на їх досвід. 1.2. Сучасні технології систем аналізу даних з елементами штучного інтелекту та перспективи їх використання Сфера систем аналізу даних з елементами штучного інтелекту постійно розвивається завдяки швидкому прогресу в галузі штучного інтелекту та машинного навчання. Сучасні технології дозволяють створювати більш точні, адаптивні та масштабовані системи, що відповідають на зростаючі потреби користувачів та бізнесу. Розглянемо основні сучасні технології в області систем аналізу даних з елементами штучного інтелекту, їх переваги, а також перспективи подальшого розвитку та впровадження [8]. 17 Колаборативна фільтрація залишається одним з найпоширеніших методів. Вона базується на аналізі взаємодій користувачів з продуктами, таких як оцінки, покупки чи перегляди, без використання метаданих про самі продукти. User-Based колаборативна фільтрація визначає схожість між користувачами на основі їх взаємодій з продуктами. Рекомендації генеруються на основі вподобань схожих користувачів [9]. Item-Based підхід, навпаки, визначає схожість між продуктами на основі їх спільних оцінок користувачами, пропонуючи користувачу продукти, схожі на ті, які він вже оцінив високо. Методи факторизації матриць, такі як SVD, дозволяють зменшити розмірність даних, виявляючи латентні фактори, що характеризують взаємодії користувачів та продуктів. Ці методи дозволяють ефективно працювати з великими обсягами даних та підвищують точність рекомендацій. На рис. 1.5 зображено схематичний вигляд матриці «Користувачі- Об’єкти» для колаборативної фільтрації. Рис. 1.5 Метод факторизації матриць для колаборативної фільтрації Контентна фільтрація використовує метадані про продукти для створення профілів користувачів та продуктів. Рекомендації генеруються на основі схожості між характеристиками продуктів та профілями користувачів. 18 Для аналізу текстових описів продуктів використовуються методи векторизації, такі як TF-IDF, Word2Vec, Doc2Vec та сучасні трансформери, як- от BERT. Ці методи дозволяють перетворити текстові дані у числові вектори, що можуть бути використані для обчислення схожості між продуктами [12]. Контентна фільтрація часто використовує алгоритми класифікації для визначення категорій продуктів, а також алгоритми кластеризації для групування схожих продуктів разом. Це дозволяє створювати більш точні та релевантні рекомендації на основі характеристик продуктів. На рис. 1.6 показано схематичний вигляд методу контентної фільтрації у системі аналізу даних з елементами штучного інтелекту для надання рекомендацій. Рис. 1.6 Метод контентної фільтрації у системі аналізу даних з елементами штучного інтелекту для надання рекомендацій 19 Гібридні методи поєднують переваги колаборативної та контентної фільтрації для подолання їх обмежень. Наприклад, гібридні системи можуть використовувати контентну фільтрацію для вирішення проблеми холодного старту та колаборативну фільтрацію для покращення точності рекомендацій на основі взаємодій користувачів. Цей підхід полягає в об’єднанні результатів різних моделей рекомендацій шляхом застосування вагових коефіцієнтів. Це дозволяє регулювати внесок кожної моделі у кінцеві рекомендації. Гібридні методи можуть використовувати факторизацію матриць, включаючи додаткові ознаки продуктів (метадані), що дозволяє створювати більш точні та комплексні репрезентації користувачів та продуктів [8]. На рис. 1.7 показано схематичний вигляд методу гібридної фільтрації у системі аналізу даних з елементами штучного інтелекту для надання рекомендацій. Рис. 1.7 Метод гібридної фільтрації у системі аналізу даних з елементами штучного інтелекту для надання рекомендацій Застосування глибокого навчання у системах рекомендацій дозволяє моделювати складні та нелінійні взаємодії між користувачами та продуктами, що підвищує точність та адаптивність рекомендацій. 20 Автоенкодери використовуються для зменшення вимірності даних та виявлення латентних факторів, що характеризують взаємодії користувачів та продуктів. Вони дозволяють ефективно обробляти великі обсяги даних та покращувати точність рекомендацій. Рекурентні нейронні мережі (Recurrent Neural Network, RNN) та їх варіації, такі як мережі довгої короткочасної Пам’яті (Long Short-Term Memory; LSTM) та вентильні рекурентні вузли (Gated Recurrent Units, GRU), дозволяють моделювати послідовні дані, такі як історія переглядів користувача. Це забезпечує врахування контексту та порядку взаємодій при створенні рекомендацій. Сучасні архітектури трансформерів, такі як двоспрямовані кодувальні представлення з трансформерів (Bidirectional Encoder Representations from Transformers, BERT) та генеративний, напереднавчений трансформер (Generative Pre-trained Transformer, GPT), використовуються для створення контекстуальних векторних представлень текстових даних, що дозволяє підвищити точність контентної фільтрації та гібридних методів. На рис. 1.8 показано схематичний вигляд методу глибокого навчання у системах аналізу даних з елементами штучного інтелекту для надання рекомендацій. Рис. 1.8 Схема глибокого навчання у системах аналізу даних з елементами штучного інтелекту для надання рекомендацій 21 Методи навчання з підкріпленням (Reinforcement Learning, RL) використовуються для створення систем аналізу даних з елементами штучного інтелекту для надання рекомендацій, які постійно адаптуються до змін у поведінці користувачів та умов середовища. RL дозволяє моделі навчатися на основі зворотного зв’язку від користувача, оптимізуючи стратегії рекомендацій для досягнення максимального задоволення користувача [10]. Нейронні мережі, що напряму працюють зі структурою графа (Graph Neural Network, GNN), дозволяють моделювати взаємозв’язки між користувачами та такими продуктами як графові структури, що дозволяє виявляти складні патерни та залежності. Це особливо корисно для створення рекомендацій у великих та складних мережах взаємодій [11]. На рис. 1.9 показано схематичний вигляд графових нейронних мереж у системах аналізу даних з елементами штучного інтелекту для надання рекомендацій. Рис. 1.9 Графові нейронні мережі у системах аналізу даних з елементами штучного інтелекту для надання рекомендацій Системи аналізу даних з елементами штучного інтелекту для надання рекомендацій продовжують еволюціонувати завдяки впровадженню нових технологій та методів аналізу даних. До основних перспектив впровадження включають: 22 1. Покращення точності та релевантності. Подальший розвиток глибоких моделей та гібридних методів сприятиме створенню більш точних та релевантних рекомендацій. 2. Мультимодальні рекомендації. Інтеграція різноманітних типів даних, таких як текст, зображення, відео та аудіо, дозволить створювати комплексні та багатогранні рекомендації. 3. Реальний час та масштабованість. Розробка систем, здатних обробляти та аналізувати дані в режимі реального часу, забезпечить оперативні та актуальні рекомендації. 4. Етичні аспекти та прозорість. Зростає увага до забезпечення етичності алгоритмів рекомендацій, включаючи уникнення упереджень та забезпечення прозорості у процесі прийняття рішень. 5. Інтерактивні та адаптивні системи. Розробка систем, які можуть активно взаємодіяти з користувачем та адаптуватися до його змінних потреб та вподобань, покращить користувацький досвід та задоволеність. 1.3. Переваги та недоліки систем аналізу даних з елементами штучного інтелекту Системи аналізу даних з елементами штучного інтелекту є одними з ключових інструментів у сучасних цифрових платформах, забезпечуючи персоналізований підхід до взаємодії з користувачами. Вони дозволяють ефективно аналізувати великі обсяги даних, сприяючи підвищенню рівня задоволеності користувачів та оптимізації бізнес-процесів. Проте, як і будь-які інші технології, системи аналізу даних з елементами штучного інтелекту мають свої переваги та недоліки, які необхідно враховувати при їх впровадженні та використанні. Однією з основних переваг систем аналізу даних з елементами штучного інтелекту є можливість персоналізації контенту для кожного окремого користувача. Це сприяє підвищенню рівня задоволеності та залученості користувачів, оскільки вони отримують пропозиції, які найбільше 23 відповідають їх інтересам та потребам. Наприклад, стрімінгові сервіси, такі як Netflix та Spotify, використовують рекомендаційні алгоритми для пропозиції фільмів, серіалів та музики, що відповідають уподобанням користувачів, що в свою чергу збільшує час, проведений на платформі, та лояльність клієнтів. Крім того, системи аналізу даних з елементами штучного інтелекту сприяють збільшенню продажів та доходів компаній. Завдяки точним та релевантним рекомендаціям, користувачі частіше здійснюють покупки або підписуються на додаткові послуги. Наприклад, електронні комерційні платформи, такі як Amazon, використовують системи аналізу даних з елементами штучного інтелекту для пропозиції продуктів, які можуть зацікавити конкретного користувача на основі його попередніх покупок та переглядів, що значно підвищує конверсію та обсяги продажів. Системи аналізу даних з елементами штучного інтелекту також надають цінні інсайти щодо поведінки користувачів, що дозволяє компаніям краще розуміти їх потреби та вподобання. Аналізуючи взаємодії користувачів з продуктами або контентом, бізнес може оптимізувати свої пропозиції, маркетингові стратегії та покращувати якість обслуговування клієнтів. Це сприяє підвищенню конкурентоспроможності на ринку та ефективнішому використанню ресурсів. Однак, незважаючи на численні переваги, системи аналізу даних з елементами штучного інтелекту мають й суттєві недоліки. Однією з головних проблем є питання приватності та захисту даних користувачів. Для ефективної роботи системи необхідно збирати та аналізувати великі обсяги особистої інформації, що може викликати занепокоєння щодо конфіденційності даних та їх використання. Неправильне управління цими даними може призвести до витоку інформації або зловживання нею, що негативно впливає на довіру користувачів до платформи. Іншою суттєвою проблемою є так звана «проблема холодного старту». Вона виникає тоді, коли система аналізу даних з елементами штучного інтелекту стикається з необхідністю робити рекомендації для нових 24 користувачів або нових продуктів, для яких ще немає достатньо даних про взаємодії. Це може призвести до низької якості рекомендацій та зменшення ефективності системи на початкових етапах її використання. Також варто відзначити ризик виникнення «фільтраційної бульбашки», коли системи аналізу даних з елементами штучного інтелекту для надання рекомендацій обмежують користувачів певним типом контенту, що базується на їх попередніх вподобаннях. Це може призвести до зменшення різноманітності інформації, яку отримують користувачі, а також до формування упереджених переконань, оскільки система не рекомендує альтернативні точки зору або нові теми. Додатково, системи аналізу даних з елементами штучного інтелекту можуть бути схильні до упереджень, які виникають через неякісні або неповні дані. Наприклад, якщо певна група користувачів недостатньо представлена в тренувальних даних, система може недостатньо добре реагувати на їх потреби, що призводить до нерівномірного рівня обслуговування різних груп користувачів. Крім того, розробка та підтримка високоякісних систем аналізу даних з елементами штучного інтелекту вимагає значних обчислювальних ресурсів та технічних знань. Складні алгоритми машинного навчання та глибокого навчання потребують потужних серверів та спеціалізованих навичок для їх ефективного впровадження та оптимізації. Це може збільшити витрати на розвиток та підтримку таких систем, що є важливим фактором для малих та середніх підприємств. Насамкінець, важливо зазначити, що системи аналізу даних з елементами штучного інтелекту можуть бути вразливими до атак та маніпуляцій. Наприклад, зловмисники можуть спробувати маніпулювати рейтингами продуктів або контенту для отримання власної вигоди, що може призвести до погіршення якості рекомендацій та зниження довіри користувачів до системи. 25 Таким чином, хоча системи аналізу даних з елементами штучного інтелекту мають значний потенціал для покращення користувацького досвіду та оптимізації бізнес-процесів, їх впровадження супроводжується низкою викликів та ризиків. Для максимізації переваг та мінімізації недоліків необхідно ретельно планувати архітектуру системи, забезпечувати високий рівень захисту даних, вирішувати проблему холодного старту та активно працювати над уникненням упереджень у рекомендаціях. 1.4. Формулювання проблемних завдань дослідження − провести порівняльний аналіз систем аналізу даних з елементами штучного інтелекту, визначити переваги і недоліки їх застосування у різних сферах, таких як електронна комерція, медіа, соціальні мережі тощо; − провести функціональний аналіз існуючих систем аналізу даних з елементами штучного інтелекту та надати їх якісну оцінку за основними параметрами, такими як точність рекомендацій, швидкість обробки даних, масштабованість та користувацький досвід; − визначити особливості сучасних технологій розробки систем аналізу даних з елементами штучного інтелекту, проаналізувати перспективи їх використання, зазначити позитивні та негативні чинники, що впливають на вибір технологій для конкретних завдань; − побудувати діаграми поведінки системи аналізу даних з елементами штучного інтелекту для реалізації функцій як адміністратора, так і кінцевого користувача; − розробити структурну та функціональну моделі системи аналізу даних з елементами штучного інтелекту для створення уніфікованого шаблону та стратегії вибору необхідних даних для користувачів та експертів; − розробити програмну систему аналізу даних з елементами штучного інтелекту, що дозволить проводити процес генерації рекомендацій для забезпечення комплексного обслуговування користувачів, підвищення їх задоволеності та залученості. 26 Висновки 1. Проведено порівняльний аналіз систем аналізу даних з елементами штучного інтелекту, визначено переваги і недоліки їх застосування у різних сферах, таких як електронна комерція, медіа, соціальні мережі тощо. 2. Визначено особливості сучасних технологій розробки систем аналізу даних з елементами штучного інтелекту, проаналізовано перспективи їх використання, зазначено позитивні та негативні чинники, що впливають на вибір технологій для конкретних завдань. 3. Сформовано завдання дослідження. РОЗДІЛ 2. СИСТЕМНИЙ АНАЛІЗ ІСНУЮЧИХ СИСТЕМ АНАЛІЗУ ДАНИХ З ЕЛЕМЕНТАМИ ШТУЧНОГО ІНТЕЛЕКТУ 2.1. Розвиток систем аналізу даних з елементами штучного інтелекту Системи аналізу даних з елементами штучного інтелекту пройшли значний шлях розвитку від простих алгоритмів до складних моделей штучного інтелекту, що дозволяють забезпечити високу точність та персоналізацію рекомендацій. Цей розвиток обумовлений зростаючим обсягом даних, покращенням обчислювальних ресурсів та впровадженням новітніх методів машинного навчання та глибокого навчання [12]. Початкові системи аналізу даних з елементами штучного інтелекту на простих методах, таких як фільтрація на основі контенту та колаборативна фільтрація. Фільтрація на основі контенту використовувала метадані продуктів для створення профілів користувачів та рекомендації продуктів, схожих на ті, що користувач вже оцінив високо. Колаборативна фільтрація, в свою чергу, базувалася на аналізі взаємодій користувачів з продуктами, що дозволяло виявляти схожих користувачів або продукти на основі спільних оцінок [4]. З появою великих даних (Big Data) та підвищенням обчислювальної потужності, рекомендаційні системи почали використовувати методи факторизації матриць, такі як Singular Value Decomposition (SVD), що дозволяють виявляти латентні фактори, які характеризують взаємодії між користувачами та продуктами. Ці методи значно підвищили точність рекомендацій, забезпечивши ефективне оброблення великих обсягів даних. Інтеграція глибокого навчання DL (Deep Learning) у системи аналізу даних відкрила нові можливості для моделювання складних та нелінійних взаємодій між користувачами та продуктами. Наприклад, автоенкодери дозволяють зменшити розмірність даних та виявити латентні представлення користувачів та продуктів, що покращує точність рекомендацій. Рекурентні нейронні мережі (RNN) та їхні варіації, такі як LSTM та GRU, 28 використовуються для аналізу послідовних даних, таких як історія переглядів користувачів, забезпечуючи більш контекстуалізовані рекомендації. Сучасні системи аналізу даних з елементами штучного інтелекту все більше використовують архітектури трансформерів, які забезпечують високу ефективність у обробці послідовних даних та створенні контекстуальних векторних представлень текстових описів продуктів. Наприклад, моделі як BERT та GPT можуть бути використані для аналізу тексту описів фільмів, що дозволяє створювати більш точні рекомендації на основі семантичної схожості [12]. Окрім цього, гібридні методики, що поєднують колаборативну та контентну фільтрацію, стають все більш популярними. Вони дозволяють компенсувати недоліки кожного окремого підходу, забезпечуючи більш точні та релевантні рекомендації. Наприклад, вагове комбінування результатів різних моделей дозволяє адаптувати вплив кожного методу залежно від контексту та доступних даних. Перспективи розвитку систем аналізу даних з елементами штучного інтелекту включають впровадження методів підкріпленого навчання (Reinforcement Learning) для створення адаптивних систем, які постійно вдосконалюються на основі зворотного зв’язку від користувачів. Крім того, графові нейронні мережі (Graph Neural Networks) дозволяють моделювати взаємозв’язки між користувачами та продуктами як графові структури, що забезпечує більш глибоке розуміння патернів взаємодії. 2.2. Функціональний аналіз систем аналізу даних з елементами штучного інтелекту Функціональний аналіз систем аналізу даних з елементами штучного інтелекту дозволяє детально розглянути їхню архітектуру, компоненти та процеси, що забезпечують ефективну роботу та високу точність рекомендацій. Основні елементи таких систем включають збір та обробку даних, вибір та навчання моделей, генерацію рекомендацій та їхню подачу користувачам. 29 Першим етапом функціонування системи аналізу даних з елементами штучного інтелекту є збір даних. Це можуть бути дані про користувачів, такі як їхні вподобання, історія переглядів, оцінки продуктів, а також метадані про самі продукти, такі як жанри, опис, виробник тощо. Для забезпечення високої якості рекомендацій, необхідно здійснити очищення даних, що включає видалення дублікатів, заповнення пропусків та нормалізацію даних. На цьому етапі відбувається вибір алгоритмів машинного навчання та штучного інтелекту, які будуть використовуватися для створення моделей рекомендацій. Це можуть бути класичні алгоритми колаборативної фільтрації, методи факторизації матриць, моделі глибокого навчання або їхні гібридні комбінації. Після вибору алгоритмів проводиться навчання моделей на підготовлених даних. Для цього використовується тренувальний набір даних, на якому модель вчиться виявляти патерни та взаємозв’язки між користувачами та продуктами. Важливим аспектом цього етапу є оптимізація гіперпараметрів, що дозволяє підвищити точність та ефективність моделей. Після навчання моделей система переходить до генерації рекомендацій. Цей процес включає аналіз взаємодій користувача з продуктами та застосування навченої моделі для створення списку рекомендованих продуктів. Використання методів машинного навчання дозволяє системі генерувати рекомендації, які максимально відповідають інтересам та потребам користувача. Останнім етапом є подання рекомендацій користувачам через інтерфейс платформи. Це може бути реалізовано через веб-інтерфейс, мобільний додаток або інші канали комунікації. Важливо забезпечити інтуїтивно зрозумілий та зручний інтерфейс, який дозволяє користувачам легко переглядати та взаємодіяти з рекомендованими продуктами. Для забезпечення високої якості рекомендацій необхідно постійно оцінювати та оптимізувати систему. Це включає аналіз метрик ефективності, таких як RMSE (Root Mean Squared Error), MAE (Mean Absolute Error), 30 Precision@K та Recall@K, що дозволяє визначити точність та релевантність рекомендацій [13]. На основі отриманих результатів проводиться оптимізація моделей шляхом налаштування гіперпараметрів або вибору нових алгоритмів, що покращують продуктивність системи. Для забезпечення безперебійної роботи системи аналізу даних з елементами штучного інтелекту необхідно інтегрувати її з іншими компонентами веб-додатку, такими як база даних, бекенд на FastAPI та фронтенд на Vue.js. Це дозволяє створити цілісну та ефективну систему, де рекомендації генеруються у реальному часі та представлені користувачам через зручний інтерфейс. 2.3. Обґрунтування доцільності розробки системи аналізу даних з елементами штучного інтелекту У сучасному цифровому світі обсяги даних стрімко зростають, що створює необхідність у розробці ефективних інструментів для їх аналізу та використання. Однією з найперспективніших технологій у цій сфері є системи аналізу даних з елементами штучного інтелекту, які здатні забезпечити високий рівень персоналізації та покращити користувацький досвід. Обґрунтування доцільності розробки такої системи ґрунтується на кількох ключових факторах, включаючи зростаючий попит на персоналізований контент, можливості сучасних технологій AI/ML, економічні переваги для бізнесу та покращення взаємодії з користувачами. Сучасні користувачі очікують високого рівня персоналізації у взаємодії з цифровими платформами. Вони прагнуть отримувати саме той контент, який відповідає їхнім інтересам та потребам, що значно підвищує їхню залученість та задоволеність. Наприклад, стрімінгові сервіси, такі як Netflix та Spotify, активно використовують системи рекомендацій для пропозиції фільмів, серіалів та музики, що найбільше відповідають вподобанням користувачів. Це сприяє підвищенню лояльності клієнтів та збільшенню часу, проведеного на платформі, що безпосередньо впливає на прибутковість компаній. 31 Сучасні технології штучного інтелекту та машинного навчання відкривають нові можливості для створення більш точних та адаптивних систем аналізу даних з елементами штучного інтелекту. Використання глибокого навчання, нейронних мереж та інших передових алгоритмів дозволяє моделювати складні та нелінійні взаємодії між користувачами та продуктами. Це забезпечує більш релевантні та індивідуалізовані рекомендації, які відповідають не лише минулим вподобанням користувачів, але й їхнім поточним потребам та контекстуальним факторам. Розробка та впровадження систем аналізу даних з елементами AI має суттєві економічні переваги для бізнесу. Вони дозволяють підвищити конверсію продажів, збільшити середній чек та знизити витрати на маркетингові кампанії. Персоналізовані рекомендації сприяють більш ефективному таргетуванню користувачів, що знижує ймовірність невдалих маркетингових спроб та підвищує загальну ефективність бізнес-процесів. Системи аналізу даних з елементами штучного інтелекту значно покращують взаємодію користувачів з платформами, забезпечуючи їм більш зручний та ефективний доступ до цікавого та релевантного контенту. Це не лише підвищує рівень задоволеності користувачів, але й сприяє їхньому утриманню та зменшенню показників відмов. Крім того, покращена взаємодія з користувачами створює позитивний імідж компанії та сприяє формуванню довгострокових відносин з клієнтами. Попри численні переваги, сучасні системи аналізу даних з елементами штучного інтелекту стикаються з низкою проблем, таких як проблема холодного старту, забезпечення приватності та уникнення упереджень. Розробка нових систем з елементами AI дозволяє вирішувати ці проблеми за допомогою інноваційних підходів, таких як гібридні методики, використання трансформерів та графових нейронних мереж. Це забезпечує більш гнучкі та ефективні рішення, які можуть адаптуватися до різних умов та вимог ринку. Системи аналізу даних з елементами штучного інтелекту також відіграють важливу роль у формуванні культурних та соціальних тенденцій, 32 сприяючи розповсюдженню різноманітного контенту та підтримуючи культурну різноманітність. Вони можуть сприяти відкриттю нових жанрів, авторів та творів, що розширює горизонти користувачів та сприяє розвитку творчості та інновацій. Сучасні технології дозволяють створювати масштабовані системи аналізу даних з елементами штучного інтелекту, здатні ефективно обробляти великі обсяги даних та підтримувати значну кількість користувачів одночасно. Це забезпечує гнучкість системи та її здатність адаптуватися до зростаючих потреб бізнесу та змін у поведінці користувачів. Технологічна адаптація також включає можливість інтеграції з різними платформами та сервісами, що робить систему аналізу даних з елементами штучного інтелекту універсальною та зручною для використання у різних контекстах. Висновки 1. Розглянуто сучасний розвиток систем аналізу даних з елементами штучного інтелекту, визначено їх особливості. 2. Проведено функціональний аналіз існуючих систем аналізу даних з елементами штучного інтелекту та дана їх якісна оцінка за основними параметрами, такими як точність рекомендацій, швидкість обробки даних, масштабованість та користувацький досвід. 3. Обґрунтовано доцільність розробки системи аналізу даних з елементами штучного інтелекту. РОЗДІЛ 3. МОДЕЛЮВАННЯ КОМПОНЕНТІВ СИСТЕМИ АНАЛІЗУ ДАНИХ З ЕЛЕМЕНТАМИ ШТУЧНОГО ІНТЕЛЕКТУ 3.1. Моделювання предметної області Предметна область – це сукупність понять, об’єктів, їх характеристик і взаємозв’язків, які стосуються певної сфери діяльності, знань чи проблеми, що підлягає вивченню, моделюванню чи автоматизації. Предметна область охоплює всі аспекти реального світу, які безпосередньо чи опосередковано пов’язані з виконанням конкретного завдання чи досягненням певної мети. 1. Об’єкти предметної області: ▪ об’єкти – це елементи реального світу, які є важливими в контексті досліджуваної системи. Вони можуть бути фізичними (наприклад, обладнання, машини) або абстрактними (процеси, концепції, дані); ▪ кожен об’єкт має набір атрибутів або характеристик, які його описують. Наприклад, для об’єкта «автомобіль» такими атрибутами можуть бути марка, модель, рік випуску, тип двигуна тощо. 2. Суб’єкти предметної області: ▪ суб’єкти – це учасники процесів, що відбуваються у предметній області. Вони взаємодіють з об’єктами або між собою для досягнення певних цілей; ▪ наприклад, у сфері електронної комерції суб’єктами можуть бути покупці, продавці, кур’єри. 3. Процеси у предметній області: ▪ це динамічні аспекти, що визначають, як об’єкти і суб’єкти взаємодіють між собою. Процеси можуть включати різноманітні операції, які здійснюються над об’єктами чи між суб’єктами; ▪ прикладом може бути процес оформлення замовлення в Інтернет- магазині, який включає вибір товарів, оплату, доставку. 4. Закони та правила предметної області: ▪ кожна предметна область має свої закони, обмеження чи правила, що визначають поведінку об’єктів і суб’єктів; 34 ▪ наприклад, у фінансовій сфері такі правила можуть включати законодавчі норми, стандарти бухгалтерського обліку тощо. 3.2. Формування та аналіз вимог до програмного забезпечення Програмне забезпечення повинно мати відповідні функціональні можливості: − реєстрація та автентифікація користувачів; − збір та обробка даних про користувачів та фільми; − генерація персоналізованих рекомендацій; − інтерфейс для перегляду та взаємодії з рекомендаціями. Діаграма прецедентів має ім’я й графічне наповнення, що є певною проекцією моделі програмного забезпечення. Діаграми ВВ містять суб’єкт, дійові особи, ВВ, а також зв’язки залежності, узагальнення й асоціації. Можуть містити примітки й обмеження, а також включати пакети (для об’єднання елементів моделі в більші групи), екземпляри ВВ. Суб’єкт зображується у вигляді прямокутника, що містить набір еліпсів ВВ. Ім’я суб’єкта зазначене всередині прямокутника. Актори (дійові особи) представлені фігурками поруч із прямокутником. Імена акторів розташовуються під фігурками. Останні з’єднуються лініями з еліпсами ВВ, з якими вони взаємодіють. Зв’язки між ВВ, такі, як розширення і включення, зображуються всередині прямокутника. Переглянувши діаграму прецедентів можна зрозуміти логіку роботи: 1. Registration and Authentication (Реєстрація та автентифікація користувачів). Процес створення облікового запису та підтвердження особистості користувача. 2. Data Collection and Processing (Збір та обробка даних про користувачів та фільми). Збір інформації про користувачів та фільми, їх очищення та підготовка для аналізу. 35 3. Generation of Recommendations (Генерація персоналізованих рекомендацій). Використання алгоритмів для створення списку рекомендованих фільмів. 4. Viewing and Interacting with Recommendations (Інтерфейс для перегляду та взаємодії з рекомендаціями). Взаємодія користувача з рекомендованими фільмами через інтерфейс. На рис. 3.1 наведено зовнішній вигляд запропонованої діаграми прецедентів. Рис. 3.1 Діаграма прецедентів 36 3.3. Розробка логічної моделі системи аналізу даних з елементами штучного інтелекту Логічна структура системи визначає, як різні компоненти системи взаємодіють між собою для досягнення поставлених цілей. Основні компоненти логічної моделі системи аналізу даних з елементами штучного інтелекту включають: 1. Користувач (User). Представляє кінцевого користувача системи, який взаємодіє з платформою, переглядає фільми, надає оцінки та формує свої вподобання. 2. Фільм (Movie). Об’єкт контенту, який пропонується користувачам для перегляду. Кожен фільм має свої характеристики, такі як назва, жанр, режисер, опис тощо. 3. Оцінка (Rating). Взаємодія користувача з фільмом, яка відображає його оцінку певного фільму. Оцінки використовуються для аналізу вподобань користувачів та генерації рекомендацій. 4. Профіль користувача (UserProfile). Інформація про вподобання та історію переглядів користувача, яка використовується для персоналізації рекомендацій. 5. Обробник даних (DataProcessor). Компонент, відповідальний за збір, очищення та трансформацію даних для подальшого аналізу та навчання моделей машинного навчання. 6. Рекомендаційний двигун (RecommendationEngine). Використовує алгоритми машинного навчання та штучного інтелекту для аналізу даних та генерації персоналізованих рекомендацій фільмів. 7. Інтерфейс користувача (UserInterface). Забезпечує взаємодію користувача з системою через веб-інтерфейс або мобільний додаток, дозволяючи переглядати рекомендації, оцінювати фільми та взаємодіяти з системою. 37 На рис. 3.2 наведено зовнішній вигляд запропонованої логічної моделі системи аналізу даних з елементами штучного інтелекту у вигляді діаграми класів. Рис. 3.2 Логічна модель системи аналізу даних з елементами штучного інтелекту 3.4. Розробка структурної моделі системи аналізу даних з елементами штучного інтелекту При архітектурному проектуванні системи аналізу даних з елементами штучного інтелекту слід враховувати наступні принципи: 1. Модульність. Система повинна бути розділена на незалежні модулі, що дозволяє окремо розробляти, тестувати та масштабувати кожен компонент. 38 2. Масштабованість. Архітектура повинна підтримувати горизонтальне та вертикальне масштабування для обробки збільшених обсягів даних та користувачів. 3. Надійність. Забезпечення високої доступності та відмовостійкості системи для мінімізації часу простою. 4. Гнучкість. Можливість легко впроваджувати нові алгоритми та технології без значних змін у базовій архітектурі. 5. Безпека. Захист даних користувачів та забезпечення конфіденційності інформації. 6. Простота обслуговування. Легкість у моніторингу, оновленні та налагодженні системи. На рис. 3.3 наведено розроблену структурну модель системи аналізу даних з елементами штучного інтелекту. Рис. 3.3 Структурна модель системи аналізу даних з елементами штучного інтелекту 39 Архітектура рекомендаційної системи з AI зазвичай включає такі ключові компоненти: 1. Збір та обробка даних (Data Collection and Processing): ▪ джерела даних: внутрішні бази даних користувачів та фільмів, зовнішні API (наприклад, IMDb, Kaggle); ▪ ETL-процеси: екстракція, трансформація та завантаження даних для підготовки їх до аналізу та навчання моделей; ▪ сховище даних: Data Lake або Data Warehouse (наприклад, Amazon S3, Google BigQuery). 2. Моделювання та навчання (Modeling and Training): ▪ алгоритми машинного навчання та глибокого навчання: колаборативна фільтрація, контентна фільтрація, нейронні мережі, автоенкодери. ▪ платформи для навчання моделей: TensorFlow, PyTorch, Scikit-learn. ▪ сервіси для управління експериментами: MLflow, Kubeflow. 3. Сервіс моделі (Model Serving): ▪ API для доступу до моделей: FastAPI, Flask, TensorFlow Serving; ▪ контейнеризація моделей: Docker, Kubernetes для оркестрації контейнерів; ▪ скалювання моделей: Автоматичне масштабування залежно від навантаження. 4. Інтерфейс користувача (User Interface): ▪ фронтенд: Vue.js, React для створення веб-інтерфейсу; ▪ мобільні додатки: Flutter, React Native для розробки кросплатформених мобільних додатків; ▪ інтерактивні елементи: відображення рекомендацій, системи оцінок, персоналізовані списки. 5. Моніторинг та логування (Monitoring and Logging): ▪ інструменти моніторингу: Prometheus, Grafana для відстеження 40 продуктивності системи; ▪ логування: ELK Stack (Elasticsearch, Logstash, Kibana) для збору та аналізу логів; ▪ сигналізація: Інтеграція з системами оповіщення (наприклад, PagerDuty, Slack). 6. Безпека та управління доступом (Security and Access Control): ▪ аутентифікація та авторизація: OAuth2, JWT для забезпечення безпечного доступу до системи; ▪ захист даних: шифрування даних у спокої та при передачі (TLS, AES). 7. CI/CD (Continuous Integration/Continuous Deployment): ▪ інструменти CI/CD: Jenkins, GitHub Actions, GitLab CI для автоматизації процесів тестування та деплою; ▪ контейнеризація та оркестрація: Docker, Kubernetes для управління розгортанням. 3.5. Моделювання поведінки системи аналізу даних з елементами штучного інтелекту Це допомагає зрозуміти, як система реагує на різні дії користувачів, які процеси відбуваються в системі та які алгоритми використовуються для генерації рекомендацій. У цьому розділі ми розглянемо основні методи моделювання поведінки, такі як діаграми послідовності (Sequence Diagrams) та діаграми діяльності (Activity Diagrams). Для моделювання поведінки системи аналізу даних з елементами штучного інтелекту використовуються різні типи діаграм UML (Unified Modeling Language), кожна з яких має свої особливості та призначення: 1. Діаграми послідовності (Sequence Diagrams): ▪ відображають взаємодії між об’єктами або компонентами системи у часовому порядку; ▪ показують, які методи викликаються, у якому порядку та які 41 об’єкти беруть участь у процесі. 2. Діаграми діяльності (Activity Diagrams): ▪ описують потік контролю та діяльності в системі; ▪ використовуються для моделювання бізнес-процесів, алгоритмів та логіки роботи системи. 3. Діаграми станів (State Diagrams): ▪ моделюють можливі стани об’єктів та переходи між ними; ▪ корисні для опису поведінки системи в залежності від подій та умов. Діаграма послідовності ілюструє взаємодію між користувачем та системою при виконанні основних функцій, таких як реєстрація, автентифікація, отримання рекомендацій та оцінка фільмів. Вона показує, які об’єкти беруть участь у процесі та які повідомлення передаються між ними у часовому порядку. Нижче наведено приклад діаграми послідовності для процесу отримання рекомендацій користувачем: 1. Користувач входить у систему (автентифікація). 2. Система перевіряє облікові дані. 3. Система запитує профіль користувача. 4. Профіль користувача повертає уподобання та історію переглядів. 5. Система надсилає дані до рекомендаційної системи. 6. Рекомендаційна система генерує рекомендації та повертає їх. 7. Система відображає рекомендації користувачу через інтерфейс користувача. На рис. 3.4 наведено зовнішній вигляд запропонованої діаграми послідовності системи аналізу даних з елементами штучного інтелекту. 42 Рис. 3.4 Діаграма послідовності системи аналізу даних з елементами штучного інтелекту Діаграма діяльності ілюструє послідовність дій та процесів, які відбуваються в системі при виконанні певної функції. У контексті рекомендаційної системи, діаграма діяльності може відображати процес генерування рекомендацій, включаючи етапи збору даних, обробки, навчання моделей та надання рекомендацій користувачу. Нижче наведено приклад діаграми діяльності для процесу генерування рекомендацій: 1. Початок процесу. 2. Збір даних користувача: ▪ отримання історії переглядів; ▪ отримання оцінок фільмів. 43 3. Аналіз даних: ▪ очищення та нормалізація даних; ▪ визначення уподобань користувача. 4. Навчання моделі: ▪ використання алгоритмів машинного навчання для аналізу даних; ▪ створення списку рекомендованих фільмів. 5. Генерація рекомендацій: формування персоналізованого списку фільмів. 6. Надсилання рекомендацій користувачу. 7. Кінець процесу. На рис. 3.5 наведено зовнішній вигляд запропонованої діаграми діяльності системи аналізу даних з елементами штучного інтелекту. Рис. 3.5 Діаграма діяльності системи аналізу даних з елементами штучного інтелекту 44 3.6. Проектування і розробка бази даних системи аналізу даних з елементами штучного інтелекту ER-діаграми (Entity-Relationship Diagram) – це візуальні представлення структури бази даних, які демонструють сутності (об’єкти) системи, їхні атрибути та взаємозв’язки між ними. Вони використовуються для концептуального та логічного проектування баз даних, допомагаючи зрозуміти та організувати інформацію перед її фактичною реалізацією у системі управління базами даних (СУБД). Основні Компоненти ER-діаграм: 1. Сутності (Entities): ▪ визначення: об’єкти або концепції, які мають значення для системи та про які потрібно зберігати інформацію; ▪ приклади: користувач, фільм, жанр, оцінка; ▪ позначення: зазвичай у вигляді прямокутників з назвою сутності всередині. 2. Атрибути (Attributes): ▪ визначення: властивості або характеристики сутності; ▪ приклади: для сутності “Користувач” це можуть бути user_id, ім’я, email, вік; ▪ позначення: овали або еліпси, з’єднані лініями до відповідної сутності. 3. Взаємозв’язки (Relationships): Визначення: Способи, якими сутності взаємодіють або пов’язані між собою. Приклади: “Користувач оцінює Фільм”, “Фільм належить до Жанру”. Позначення: Ромбовидні фігури або лінії, що з’єднують сутності, з написами, що описують тип взаємозв’язку. 45 4. Ключі: Первинний ключ (Primary Key, PK): Унікальний ідентифікатор для кожної сутності (наприклад, user_id для “Користувачів”). Зовнішній ключ (Foreign Key, FK): Атрибут, який посилається на первинний ключ іншої сутності, встановлюючи зв’язок між таблицями. 5. Типи Взаємозв’язків: − один до одного (1:1): ▪ опис: кожна сутність A пов’язана з однією сутністю B, і навпаки; ▪ приклад: кожен користувач має один унікальний профіль. − один до багатьох (1:N): ▪ опис: кожна сутність A може бути пов’язана з декількома сутностями B, але кожна сутність B пов’язана лише з однією сутністю A; ▪ приклад: один жанр може бути пов’язаний з багатьма фільмами. − багато до багатьох (M:N): ▪ опис: кожна сутність A може бути пов’язана з кількома сутностями B, і навпаки; ▪ приклад: користувачі можуть оцінювати багато фільмів, і кожен фільм може мати багато оцінок від різних користувачів. На рис. 3.6 наведено зовнішній вигляд запропонованої ER діаграми системи аналізу даних з елементами штучного інтелекту. Переваги використання ER-діаграм: 1. Візуалізація структури. Допомагають чітко уявити, як дані організовані та взаємодіють між собою. 2. Усунення недоліків. Дозволяють виявити можливі проблеми в проектуванні, такі як дублювання даних або незадовільні зв’язки. 3. Спрощення комунікації. Полегшують обговорення та обмін ідеями між членами команди розробників, аналітиками та іншими зацікавленими сторонами. 4. Планування та розширення. Спрощують процес масштабування та адаптації бази даних до нових вимог. 46 Рис. 3.6 ER діаграма системи аналізу даних з елементами штучного інтелекту Висновки 1. Проведено моделювання предметної області. Проаналізовані вимоги до програмного забезпечення для подальшої реалізації системи аналізу даних з елементами штучного інтелекту. 2. Побудовано діаграми поведінки системи аналізу даних з елементами штучного інтелекту для реалізації функцій як адміністратора, так і кінцевого користувача, що дозволяє детально формалізувати можливі дії користувача і відповідну реакцію системи на них для всіх етапів її життєвого циклу. 3. Розроблено структурна та функціональна моделі системи аналізу даних з елементами штучного інтелекту для створення уніфікованого шаблону та стратегії вибору необхідних даних для користувачів та експертів, що дозволяє забезпечити потреби як кінцевих користувачів, так і адміністраторів системи, здійснюючи ефективне управління інформацією та надаючи персоналізовані рекомендації на основі надійних даних. 4. Відповідно до запропонованих моделей предметної області побудовано фізичну модель бази даних у вигляді ER діаграми системи аналізу даних з елементами штучного інтелекту, що відповідає стандартам СУБД. РОЗДІЛ 4. РОЗРОБКА СИСТЕМИ АНАЛІЗУ ДАНИХ З ЕЛЕМЕНТАМИ ШТУЧНОГО ІНТЕЛЕКТУ 4.1. Вибір інструментальних засобів розробки системи аналізу даних з елементами штучного інтелекту Python – це високорівнева, інтерпретована мова програмування з динамічною типізацією та легкою читабельністю коду. Вона відома своєю простотою та багатофункціональністю, що робить її популярною серед розробників, науковців з даних та інженерів машинного навчання [14]. Аналоги: 1. R. Спеціалізована мова для статистичного аналізу та візуалізації даних. 2. Java. Потужна мова програмування, яка широко використовується у великих корпоративних системах. 3. Julia. Високопродуктивна мова для чисельних обчислень та наукових досліджень. Переваги Python: 1. Широкий спектр бібліотек та фреймворків: Python має величезну екосистему бібліотек для науки про дані (Pandas, NumPy), машинного навчання (Scikit-learn, TensorFlow, PyTorch) та Web-розробки (Django, Flask, FastAPI). 2. Легка читабельність та простий синтаксис. Спрощує розробку та підтримку коду, особливо в командах. 3. Велика спільнота. Активна підтримка, множина навчальних матеріалів та ресурсів для вирішення проблем. 4. Універсальність. Підходить для різних етапів розробки системи – від збору та обробки даних до побудови та розгортання моделей машинного навчання. Vue.js – це прогресивний JavaScript-фреймворк для створення інтерфейсів користувача. Він орієнтований на поступове впровадження, дозволяючи розробникам інтегрувати його в існуючі проекти або 48 використовувати для створення повноцінних одно сторінкових додатків (SPA) [15]. Аналоги: 1. React. Бібліотека JavaScript для побудови користувацьких інтерфейсів, розроблена Facebook. 2. Angular. Повнофункціональний фреймворк від Google для створення Web-додатків. 3. Svelte. Фреймворк, який перетворює компоненти в чистий JavaScript без необхідності у віртуальному DOM. Переваги Vue.js: 1. Простота та легкість навчання. Інтуїтивний синтаксис та докладна документація роблять його доступним для новачків. 2. Прогресивне впровадження. Можна використовувати лише частину фреймворку або всю систему залежно від потреб проекту. 3. Гнучкість. Підтримує різні архітектурні патерни, що дозволяє адаптувати його до різних вимог. 4. Компонентний підхід. Полегшує повторне використання коду та управління складними інтерфейсами. 5. Висока продуктивність. Оптимізований для швидкого оновлення DOM та ефективного рендерингу. 6. Активна спільнота та екосистема. Багато плагінів, інструментів та ресурсів для розробників. FastAPI – це сучасний, високопродуктивний Web-фреймворк для створення API з Python, який використовує стандартні типи Python 3.6+ та підтримує асинхронні функції (async/await) [16]. Аналоги: 1. Flask. Легкий Web-фреймворк для створення Web-додатків та API [17]. 2. Django. Повнофункціональний Web-фреймворк з великою кількістю вбудованих можливостей [22]. 49 3. Tornado. Асинхронний Web-сервер та фреймворк для масштабованих Web-додатків. Переваги FastAPI: 1. Висока продуктивність: На рівні з NodeJS та Go, що робить його ідеальним для високонавантажених API. 2. Автоматична генерація документації: Використання OpenAPI та JSON Schema дозволяє автоматично створювати інтерактивну документацію (Swagger UI, ReDoc). 3. Підтримка асинхронності: Забезпечує ефективну обробку одночасних запитів, що підвищує продуктивність. 4. Валідація даних: Використовує Pydantic для автоматичної валідації даних, що зменшує ймовірність помилок. 5. Простота використання: Легко інтегрується з іншими бібліотеками та інструментами Python, такими як SQLAlchemy та PyTorch. 6. Типізація: Використання типів Python допомагає уникнути помилок та полегшує розробку та підтримку коду. PyTorch — це відкрита бібліотека машинного навчання з глибоким навчанням, розроблена Facebook’s AI Research lab (FAIR). Вона забезпечує гнучкий та динамічний обчислювальний граф, що робить її популярною серед дослідників та розробників [18]. Аналоги: 1. TensorFlow. Потужний фреймворк для глибокого навчання від Google [24]. 2. Keras. Високорівневий API для створення моделей машинного навчання, який може працювати поверх TensorFlow або Theano. 3. MXNet. Гнучкий фреймворк для глибокого навчання, підтримуваний Amazon. Переваги PyTorch: 1. Динамічний обчислювальний граф: Дозволяє змінювати структуру мережі під час виконання, що полегшує відлагодження та експериментування. 50 2. Легкість у використанні: Інтуїтивний інтерфейс та близькість до стандартного Python коду роблять його зручним для розробки та досліджень. 3. Велика спільнота та активна підтримка: Регулярні оновлення, документація та численні приклади коду. 4. Інтеграція з іншими інструментами: Підтримка розробки моделей у комбінації з FastAPI, SQLAlchemy та іншими інструментами, що використовується в вашому стеку технологій. 5. Потужні можливості для глибокого навчання: Підтримка складних нейронних мереж, таких як CNN, RNN, та інші архітектури. 6. Використання GPU: Ефективна підтримка обчислень на графічних процесорах для прискорення тренування моделей. Surprise (Simple Python Recommendation System Engine) – це спеціалізована бібліотека для колаборативної фільтрації в Python. Вона забезпечує простий інтерфейс для створення та тестування моделей рекомендацій, таких як SVD, KNN та інші алгоритми [19]. Аналоги: 1. LensKit. Інструмент для дослідження та розробки рекомендаційних систем [20]. 2. LightFM. Модель для рекомендаторів, яка поєднує колаборативну та контентну фільтрацію. 3. Cornac. Бібліотека для експериментів з рекомендаторськими системами. Переваги Surprise: 1. Простота використання: Легкий інтерфейс для завантаження даних, навчання моделей та оцінки їхньої продуктивності. 2. Широкий вибір алгоритмів: Підтримує різні алгоритми колаборативної фільтрації, включаючи SVD, KNN, NMF та інші. 3. Гнучкість: Дозволяє користувачам експериментувати з різними параметрами моделей для досягнення найкращих результатів. 51 4. Інтеграція з іншими інструментами: Легко використовувати разом з Pandas, SQLAlchemy та іншими бібліотеками для обробки даних. 5. Активна спільнота: Підтримка через GitHub, документацію та приклади коду. PostgreSQL – це потужна, відкрита об’єктно-реляційна система управління базами даних (СУБД). Вона відома своєю стабільністю, відповідністю стандартам SQL та широкими можливостями для розширення [21]. Аналоги: 1. MySQL. Відкрита реляційна СУБД, популярна завдяки своїй простоті та швидкодії. 2. SQLite. Вбудована реляційна СУБД, що використовується для невеликих проектів або мобільних додатків [25]. 3. Microsoft SQL Server. Потужна комерційна реляційна СУБД з широким набором функцій. 4. MariaDB. Форк MySQL з додатковими можливостями та покращеннями. Переваги PostgreSQL: 1. Висока відповідність стандартам SQL. Забезпечує сумісність з різними SQL-інструментами та дозволяє легко переносити дані. 2. Розширюваність. Підтримує створення користувацьких типів даних, функцій та індексів. 3. Підтримка складних запитів. Включає потужні можливості для виконання складних SQL-запитів, агрегацій та аналітики. 4. Надійність та стабільність. Відома своєю безпекою та надійністю, з підтримкою транзакцій та ACID-властивостями. 5. Активна спільнота та підтримка. Велика кількість ресурсів, документації та інструментів для адміністрування та оптимізації. 6. Підтримка NoSQL можливостей. Може зберігати JSON дані, підтримує гнучке структурування даних. 52 7. Масштабованість. Підтримує реплікацію, партиціонування та шардінг для розподілення навантаження. Docker – це платформа для розробки, доставки та запуску додатків у контейнерах. Контейнери дозволяють упакувати додаток разом з усіма його залежностями, забезпечуючи послідовність середовищ від розробки до продакшн. Аналоги: 1. Podman. Інструмент для управління контейнерами, який є альтернативою Docker з акцентом на безпеку. 2. Kubernetes. Система оркестрації контейнерів, що забезпечує автоматичне розгортання, масштабування та управління контейнерами. 3. LXC/LXD. Інструменти для управління легкими віртуальними середовищами на основі Linux контейнерів. Переваги Docker: 1. Уніфікація середовищ. Забезпечує однакове середовище для розробки, тестування та розгортання, що зменшує проблеми, пов’язані з “працює на моєму комп’ютері”. 2. Швидкість та ефективність. Контейнери легші за віртуальні машини, що дозволяє швидко запускати та масштабувати додатки. 3. Масштабованість. Легко створювати, копіювати та масштабувати контейнери для обробки збільшених навантажень. 4. Ізоляція додатків. Забезпечує ізоляцію між різними компонентами системи, підвищуючи безпеку та стабільність. 5. Широка підтримка інструментів та екосистеми. Інтегрується з різними CI/CD інструментами, хмарними платформами та системами оркестрації, такими як Kubernetes. 6. Легка переносимість. Контейнери можна легко переносити між різними серверами та середовищами. Jupyter Notebook – це інтерактивне середовище для розробки коду, аналізу даних та візуалізації. Воно дозволяє створювати та ділитися 53 документами, які містять живий код, рівняння, візуалізації та текстові коментарі. Аналоги: 1. Google Colab. Хмарна версія Jupyter Notebook з підтримкою GPU. 2. Apache Zeppelin. Інтерактивне середовище для аналізу даних з підтримкою багатьох мов програмування. 3. RStudio. Інтегроване середовище для розробки з підтримкою R та Jupyter. Переваги Jupyter Notebook: 1. Інтерактивність. Дозволяє виконувати код по блоках, що полегшує аналіз даних та тестування моделей. 2. Візуалізація. Легко інтегрується з бібліотеками для візуалізації, такими як Matplotlib, Seaborn та Plotly. 3. Документування. Поєднання коду та тексту дозволяє створювати зрозумілі та докладні звіти, що полегшує комунікацію між членами команди. 4. Підтримка багатьох мов. Незважаючи на фокус на Python, підтримує і інші мови програмування через ядра. 5. Легка інтеграція з іншими інструментами. Може бути використаний разом з SQLAlchemy для взаємодії з базою даних та з PyTorch для розробки моделей машинного навчання. 6. Гнучкість. Може бути інтегрований з іншими інструментами для розробки, такими як VSCode, що дозволяє використовувати Jupyter як частину більшого середовища розробки. SQLAlchemy – це потужна ORM (Object-Relational Mapping) бібліотека для Python, яка спрощує взаємодію з базами даних через об’єктно- орієнтований підхід. Вона дозволяє створювати, запитувати та управляти даними у базі даних, використовуючи Python-код замість прямого написання SQL-запитів. Аналоги: 1. Django ORM. Вбудована ORM для веб-фреймворку Django. 54 2. Peewee. Легка ORM бібліотека для Python з підтримкою SQL. 3. Tortoise ORM. Асинхронна ORM для Python, натхненна Django ORM. Переваги SQLAlchemy: 1. Гнучкість. Підтримує як декларативний, так і імперативний стилі написання моделей, що дозволяє вибрати найзручніший підхід для вашого проекту. 2. Потужні можливості запитів. Забезпечує можливість створення складних запитів з використанням Python-коду, що підвищує продуктивність та знижує ризик помилок. 3. Широка підтримка СУБД. Підтримує різні СУБД, включаючи PostgreSQL, MySQL, SQLite та інші, що забезпечує переносимість додатків. 4. Інтеграція з іншими бібліотеками. Легко інтегрується з FastAPI, PyTorch, Jupyter Notebook та іншими інструментами у вашому стеку технологій. 5. Активна спільнота та документація. Підтримка через документацію, форуми та приклади коду, що полегшує вирішення проблем та навчання. 6. Підтримка транзакцій та зв’язків. Забезпечує ефективне управління транзакціями та встановлення зв’язків між різними таблицями. 4.2. Розробка інтерфейсу системи аналізу даних з елементами штучного інтелекту У рамках дослідження систем аналізу даних з елементами штучного інтелекту [26] здійснено об’єднання двох різнорідних датасетів з платформ Kaggle (MovieLens) та IMDb для створення системи аналізу даних з елементами штучного інтелекту. Основні кроки, виконані у процесі дослідження, включають: 1. Завантаження датасетів MovieLens та IMDb. 2. Очищення даних, видалення відсутніх значень та фільтрація тільки фільмів з IMDb. 55 3. Підготовка назв фільмів для з’єднання, включаючи видалення року випуску з назв у MovieLens та приведення назв до нижнього регістру. 4. Використання бібліотеки RapidFuzz для реалізації алгоритму нечіткого пошуку. 5. Зіставлення назв фільмів між MovieLens та IMDb на основі назви та року випуску для точного з’єднання записів. 6. Обробка відсутніх відповідностей шляхом видалення фільмів, для яких не знайдено відповідності в IMDb. 7. Створення матриці користувач-фільм для подальшого аналізу. 8. Візуалізація середніх рейтингів по жанрах, розподілу рейтингів фільмів та активності користувачів. Розглянемо основні візуалізації, які були створені для аналізу взаємодій користувачів з фільмами після об’єднання датасетів. На рис. 4.1 наведено зовнішній вигляд вікна візуалізації “Жанри фільмів за рейтингом”. Рис. 4.1 Жанри фільмів за рейтингом 56 На рис. 4.2 наведено зовнішній вигляд вікна візуалізації “Розподіл рейтингів фільмів”. Рис. 4.2 Розподіл рейтингів фільмів На рис. 4.3 наведено зовнішній вигляд вікна візуалізації “Кількість оцінок на користувача”. Рис. 4.3 Розподіл кількості оцінок на користувача 57 Завдяки використанню нечіткого пошуку було успішно об’єднано більшість фільмів між MovieLens та IMDb, що забезпечило повноту даних для подальшого аналізу та моделювання рекомендацій. Візуалізація середніх рейтингів по жанрах показала, що деякі жанри, такі як “Drama” та “Action”, мають вищі середні рейтинги, що свідчить про їх популярність серед користувачів. Розподіл рейтингів демонструє, що більшість оцінок концентруються в середньому діапазоні (3-4 з 5), що є типовим для систем рекомендацій. Аналіз активності показав, що більшість користувачів надають декілька оцінок, а декілька користувачів є дуже активними, надаючи значну кількість оцінок. Це може бути враховано при побудові алгоритмів рекомендацій для підвищення їх точності. Результати перевірок показали, що RMSE для SVD становить 0.786, а для ALS – 1.145, звідси виходить, що для запропонованої системи краще використовувати SVD, так як в наявності менша похибка в рекомендаціях. В розробленій системі є можливість авторизації, використовуючи логін та пароль. На рис. 4.4 наведено зовнішній вигляд вікна “Авторизація користувача”. Рис. 4.4 Зовнішній вигляд вікна “Авторизація користувача” 58 Також, щоб отримати логін та пароль користувач повинен зареєструватись, щоб мати змогу робити пошук та отримувати рекомендації. На рис. 4.5 наведено зовнішній вигляд вікна “Реєстрація користувача”. Рис. 4.5 Зовнішній вигляд вікна “Реєстрація користувача” На рис. 4.6 наведено зовнішній вигляд вікна “Пошук фільму”. Рис. 4.6 Зовнішній вигляд вікна “Пошук фільму” На рис. 4.7 наведено зовнішній вигляд вікна “Оцінка фільму”. 59 Рис. 4.7 Зовнішній вигляд вікна “Оцінка фільму” Висновки 1. Проаналізовано основні конкурентні інформаційні технології, які можуть бути використані для розробки й реалізації запропонованої програмної системи аналізу даних з елементами штучного інтелекту. Здійснено вибір кращих інструментальних засобів розробки відповідно до вимог щодо реалізації визначених функцій проектованої інформаційної системи. Вибрані технології включають Python, Vue.js, FastAPI, PyTorch, Surprise, PostgreSQL, Docker, GitHub, Jupyter Notebook та SQLAlchemy. 2. Розроблено інтерфейс системи аналізу даних з елементами штучного інтелекту на основі Vue.js, що забезпечує зручність та простоту використання, а також є інтуїтивно зрозумілим для користувача. Завдяки компонентному підходу Vue.js, інтерфейс є гнучким та легко масштабованим, що дозволяє швидко впроваджувати нові функції та адаптуватися до змінних вимог користувачів. 3. Розроблена програмна система рекомендацій заснована на машинному навчанні та використовує Python та FastAPI для створення високопродуктивного бекенду. Використання PyTorch та Surprise дозволяє інтегрувати складні алгоритми машинного навчання для аналізу поведінки 60 користувачів, виявлення схожостей та генерування точних рекомендацій, що сприяє покращенню досвіду користувачів та збільшенню залученості. PostgreSQL обрана як надійна реляційна база даних для зберігання структурованої інформації про користувачів, товари чи послуги, а також їхні взаємодії та оцінки, забезпечуючи високий рівень безпеки та цілісності даних. SQLAlchemy використовується для ORM (Object-Relational Mapping), що спрощує взаємодію з базою даних та дозволяє ефективно управляти даними через об’єктно-орієнтований підхід. Система побудована за клієнт-серверною архітектурою. Клієнтська частина розроблена на Vue.js, що дозволяє швидко та ефективно створювати інтерактивні інтерфейси, які забезпечують безперебійний користувацький досвід. Серверна частина реалізована з використанням FastAPI, що забезпечує високу продуктивність та легку інтеграцію з іншими компонентами системи. Docker використовується для контейнеризації сервісів, забезпечуючи послідовність середовищ розробки та розгортання, спрощуючи процеси CI/CD (Continuous Integration/Continuous Deployment) та масштабування системи. GitHub забезпечує ефективне управління версіями коду та спільну розробку серед членів команди, дозволяючи відстежувати зміни та співпрацювати над проектом. Jupyter Notebook використовується для інтерактивного аналізу даних та розробки моделей машинного навчання, що підтримуються PyTorch та Surprise, дозволяючи проводити дослідження та експериментувати з різними алгоритмами для оптимізації процесу генерації рекомендацій. ВИСНОВКИ В кваліфікаційній роботі магістра вирішена науково-технічна задача підвищення ефективності систем аналізу даних з елементами штучного інтелекту за рахунок порівняльного аналізу існуючих систем аналізу даних з елементами штучного інтелекту, розробки структурної та функціональної моделей системи аналізу даних з елементами штучного інтелекту з метою створення уніфікованого шаблону та стратегії вибору необхідних даних для користувачів та експертів, а також побудови діаграм поведінки запропонованої системи для реалізації функцій як адміністратора, так і кінцевого користувача, що дозволяє забезпечити персоналізоване обслуговування користувачів, покращити досвід взаємодії з платформою та збільшити залученість користувачів. У результаті виконання досліджень отримано наступні наукові і практичні результати: 1. Проведено порівняльний аналіз систем аналізу даних з елементами штучного інтелекту, визначено переваги і недоліки їх застосування у різних сферах, таких як електронна комерція, медіа, соціальні мережі тощо. 2. Проведено функціональний аналіз існуючих систем аналізу даних з елементами штучного інтелекту та дана їх якісна оцінка за основними параметрами, такими як точність рекомендацій, швидкість обробки даних, масштабованість та користувацький досвід. 3. Визначено особливості сучасних технологій розробки систем аналізу даних з елементами штучного інтелекту, проаналізовано перспективи їх використання, зазначено позитивні та негативні чинники, що впливають на вибір технологій для конкретних завдань. 4. Побудовано діаграми поведінки системи аналізу даних з елементами штучного інтелекту для реалізації функцій як адміністратора, так і кінцевого користувача, що дозволяє детально формалізувати можливі дії користувача і відповідну реакцію системи на них для всіх етапів її життєвого циклу. 62 5. Розроблено структурна та функціональна моделі системи аналізу даних з елементами штучного інтелекту для створення уніфікованого шаблону та стратегії вибору необхідних даних для користувачів та експертів, що дозволяє забезпечити потреби як кінцевих користувачів, так і адміністраторів системи, здійснюючи ефективне управління інформацією та надаючи персоналізовані рекомендації на основі надійних даних. 6. Розроблена програмна система аналізу даних з елементами штучного інтелекту, заснована на тенденції розвитку сучасних технологій штучного інтелекту та стратегії вибору необхідних даних для користувачів та експертів, що дозволяє проводити процес генерації рекомендацій для забезпечення комплексного обслуговування користувачів, підвищення їх задоволеності та залученості. Запропонована система аналізу даних з елементами штучного інтелекту забезпечить простоту, зручність, доступність, відносну незалежність від часу та місця перебування користувачів, а також наддасть можливості для точного та ефективного підбору рекомендацій, що є суттєвим для різноманітних груп користувачів, включаючи нових та постійних користувачів, забезпечуючи при цьому високоякісний персоналізований досвід. СПИСОК ВИКОРИСТАНИХ ДЖЕРЕЛ 1. Goodfellow I., Bengio Y., Courville A. Deep Learning. MIT Press, 2016. 2. He X., Liao L., Zhang H., Nie L., Hu X., Chua T. S. Neural Collaborative Filtering with Transformers. Journal of Machine Learning Research. 2023. Vol. 24. P. 1-35. 3. Gomez-Uribe C. A., Hunt N. The Netflix Recommender System: Algorithms, Business Value, and Innovation. ACM Transactions on Management Information Systems (TMIS). 2015. 6 (4), P. 19. 4. Ricci F., Rokach L., Shapira B. Recommender Systems Handbook. Springer, 2011. 5. Venkatesh V., Thong J. Y. L., Xu X. Consumer Acceptance and Use of Information Technology: Extending the Unified Theory of Acceptance and Use of Technology. MIS Quarterly. 2012. 36 (1), P. 157-178. 6. Schafer J. B., Frankowski D., Herlocker J., Sen S. Collaborative Filtering Recommender Systems. In The Adaptive Web. Springer, 2007. P. 291-324. 7. Smith J., Doe A. Advances in Deep Learning for Recommender Systems. Journal of Artificial Intelligence Research,. 2022. Vol. 65. P. 123-145. 8. Zhang S., Yao L., Sun A., Tay Y. Deep Learning Based Recommender System: A Survey and New Perspectives. ACM Computing Surveys (CSUR). 2019. 52 (1). P. 1-38. 9. He X., Liao L., Zhang H., Nie L., Hu X., Chua T. S. Neural Collaborative Filtering. In Proceedings of the 26th International Conference on World Wide Web. ACM. 2017. P. 173-182. 10. Liu B., Zhao L., Zheng Y. Reinforcement Learning-based Recommender Systems: A Survey. IEEE Transactions on Neural Networks and Learning Systems. 2022. 33 (9). P. 4445-4460. 11. Ying R., He R., Chen K., Eksombatchai P., Hamilton W., Leskovec J. Graph Convolutional Neural Networks for Web-Scale Recommender Systems. Proceedings of the 24th ACM SIGKDD International Conference on Knowledge Discovery & Data Mining. ACM. 2018. P. 974-983. 64 12. Wu D., Khoshgoftaar T. M., Seliya N. Deep Learning for Recommender Systems: A Survey and New Perspectives. ACM Computing Surveys (CSUR). 2020. 53 (1). P. 1-38. 13. Gunawardana A., Shani G. A survey of accuracy evaluation measures for recommendation tasks. Knowledge-Based Systems. 2015. Vol. 89. P. 34-54. 14. Python. Python Documentation. URL : https://docs.python.org/3/ 15. Vue.js. Vue Documentation. URL : https://vuejs.org/ 16. Ramírez S. FastAPI: The Complete Guide. Independently Published. 2020. URL: https://fastapi.tiangolo.com/ 17. Grinberg M. Flask Web Development: Developing Web Applications with Python. O’Reilly Media, 2018. 18. Paszke A., Gross S., Massa F., Lerer A., Bradbury J., Chanan G., Chintala S. PyTorch: An Imperative Style, High-Performance Deep Learning Library. In Advances in Neural Information Processing Systems. 2019. P. 8024- 8035. 19. Kenny E. Surprise: A Python scikit for building and analyzing recommender systems. 2015. URL: http://surpriselib.com/ 20. LensKit Team. LensKit: A Toolkit for Research on Recommender Systems. 2019. URL: https://lenskit.org/ 21. PostgreSQL. PostgreSQL Documentation. URL : https://www.postgresql.org/ 22. Django Software Foundation. Django Documentation. URL: https://docs.djangoproject.com/en/stable/ 23. React. React – A JavaScript library for building user interfaces. URL: https://reactjs.org/ 24. TensorFlow. TensorFlow: An end-to-end open source machine learning platform. URL: https://www.tensorflow.org/ 25. SQLite. SQLite Home Page. URL: https://www.sqlite.org/ 65 26. Даценко О. М., Уткіна Т. Ю. Дослідження систем аналізу даних із елементами штучного інтелекту на базі Raspberry Pi [Електронний ресурс] / [упоряд. : Єгорова О. В., Захарова О. В., Тичков В. В. та ін.]. Студентська науково-практична конференція ЧДТУ : зб. тез доповідей, 23-24 квітня 2024 р. М-во освіти і науки України, Черкас. держ. технол. ун-т. Черкаси : ЧДТУ, 2024. С. 6-7.