Разработка рекомендательной системы для электронной коммерции
Работа посвящена проектированию и разработке рекомендательной системы на основе коллаборативной фильтрации, а также исследованию моделей и типов систем рекомендаций. Разрабатываемая система позволит увеличить продажи за счет повыщения лояльности покупателей через подходящие рекомендации. Используемые языки: PHP, Python.
ВВЕДЕНИЕ………………………………………………………………………………………………….14
1 РЕКОМЕНДАТЕЛЬНЫЕ СИСТЕМЫ……………………………………………………….17
1.1 Контентная фильтрация (content-based fiьзования результатов ВКР, lteriьзования результатов ВКР, ng))………………………………….19
1.2 Коллаборативная фильтрация…………………………………………………………….19
2 ГРАФОВЫЕ БАЗЫ ДАННЫХ…………………………………………………………………..23
Neo4j………………………………………………………………………………………………………..25
3 РЕАЛИЗАЦИЯ РЕКОМЕНДАТЕЛЬНОЙ СИСТЕМЫ……………………………….27
3.1 Технологии и инструментарий……………………………………………………………27
3.1.1 Язык программирования………………………………………………………………27
3.1.2 Фреймворки…………………………………………………………………………………28
3.1.3 Среда разработки…………………………………………………………………………28
3.2 Поиск, фильтрация и подготовка данных для рекомендаций……………….30
3.3 Импорт данных «Клиент-Заказ-Товар»……………………………………………….31
3.4 Реализация алгоритма коллаборативной фильтрации на основе схожести
пользователей……………………………………………………………………………………………33
4 РАЗРАБОТКА ИНТЕРНЕТ-МАГАЗИНА……………………………………………………37
4.1 Технологии и инструментарий…………………………………………………………..37
4.1.1 Язык программирования и фреймворки………………………………………..37
4.1.2 Фреймворки…………………………………………………………………………………37
4.1.3 База данных…………………………………………………………………………………38
4.1.4 Среда разработки…………………………………………………………………………39
4.2 Варианты использования……………………………………………………………………41
4.3 Описание разработанного веб-приложения…………………………………………42
5 ФИНАНСОВЫЙ МЕНЕДЖМЕНТ, РЕСУРСОЭФФЕКТИВНОСТЬ И
РЕСУРСОСБЕРЕЖЕНИЕ……………………………………………………………………………..46
Введение…………………………………………………………………………………………………..46
5.1 Оценка коммерческого потенциала и перспективности проведения
научных исследований с позиции ресурсоэффективности и
ресурсосбережения……………………………………………………………………………………46
5.1.1 Потенциальные потребители результатов исследования………………..46
5.1.2 Исследование целесообразности вложения денежных средств в
научно-исследовательский проект………………………………………………………….46
5.1.3 SWOT-анализ………………………………………………………………………………48
5.1.4 Определение возможных альтернатив проведения исследований…..49
5.2 Планирование научно-исследовательских работ…………………………………50
5.2.1 Структура работ в рамках научного исследования………………………..50
5.2.2 Определение трудоемкости выполнения работ……………………………..51
5.2.3 Составление календарного план-графика работ……………………………54
5.2.4 Бюджет научно-технического исследования………………………………….57
5.3 Определение ресурсной, финансовой и экономической эффективности
исследования……………………………………………………………………………………………61
Вывод………………………………………………………………………………………………………62
6 СОЦИАЛЬНАЯ ОТВЕТСТВЕННОСТЬ……………………………………………………63
Введение………………………………………………………………………………………………….63
6.1 Правовые и организационные вопросы обеспечения безопасности……..63
6.1.1 Правовые нормы охраны труда…………………………………………………….63
6.1.2 Правовые и организационные вопросы обеспечения безопасности. 65
6.2 Производственная безопасность…………………………………………………………67
6.2.1 Отклонение показателей микроклимата………………………………………..68
6.2.2 Недостаточная освещенность рабочей зоны………………………………….70
6.2.3 Повышенный уровень шума…………………………………………………………77
6.2.4 Повышенный уровень электромагнитных излучений……………………78
6.2.5 Электрический ток………………………………………………………………………80
6.3 Экологическая безопасность………………………………………………………………81
6.4 Безопасность в чрезвычайных ситуациях……………………………………………83
Вывод………………………………………………………………………………………………………84
ЗАКЛЮЧЕНИЕ…………………………………………………………………………………………….85
CONCLUSION……………………………………………………………………………………………..86
СПИСОК ИСТОЧНИКОВ…………………………………………………………………………….87
ПРИЛОЖЕНИЕ А………………………………………………………………………………………..91
Интернет-магазины являются одним из самых популярных онлайн-
видов деятельности во всем мире. По данным отчета Statiьзования результатов ВКР, sta.com в 2018 году
больше полутора миллиарда человек во всем мире совершали покупки через
Интернет. В течение того же года глобальные продажи через интернет-магазины
составили 2,8 триллиона долларов США, а прогнозы аналитических служб
показывают рост до 4,8 триллионов долларов США к 2021 году [1].
Одним из факторов такого роста является внедрение рекомендательных
систем среди крупных ритейлеров. Исходя их того, что 70% интерфейса
Amazon.com посвящены рекомендациям, можно сделать вывод, что
рекомендации играют жизненно важную роль в процессах расширения
покупательской корзины и стимулирования продаж. Инфографика от агентства
Monetate демонстрирует, что рекомендательные системы могут обеспечить рост
выручки на 300%, увеличить показатели конверсии на 150%, а размер среднего
чека – на 50%. Эти цифры существенно варьируются в зависимости от выбора
их первоначальных значений и от того, насколько широко используются на
сайте рекомендательные блоки, но факт роста ключевых показателей
эффективности магазинов с рекомендательными системами слишком очевиден,
чтобы его игнорировать[2].
Большинство таких систем реализованы на алгоритмах с
использованием матричной факторизации и машинного обучения, что требует
больших вложений в инфраструктуру, на покупку дорогих серверов для
обучения моделей, которое производится по мере обновления данных
пользователей и товаров. Так же сложности может вызвать отсутствие
достаточного объема обучающей выборки [3]. Модель для выдачи
рекомендаций нельзя обучить на сторонних датасетах, как в случае, например с
задачей распознавания определенных объектов на изображении.
Для решения вышеупомянутых проблем в данной работе предлагается
разработка рекомендательной системы с использованием графовой базы
данных. Это позволит использовать графы как в качестве средства хранения
данных, так и в качестве подхода к интеллектуальному анализу данных.
Применение данной технологии даст возможность предоставлять рекомендации
в режиме реальном времени, без необходимости в предварительном
вычислении в автономном режиме, тем самым устраняя задержку [4].
Использование графов позволяют реализовать как гибридный подход к
рекомендациям так и отдельно подходы на основе контентной фильтрации и
коллаборативного поиска. Графовые базы данных демонстрируют постоянную
производительность при увеличении размера данных, что позволит внедрить
систему рекомендаций как для интернет-магазина, который только недавно
запущен, так и для уже крупного магазина.
В ходе данной работы был проведен анализ моделей и типов систем
рекомендаций, изучены варианты построения рекомендательных систем. Для
реализации алгоритма коллаборативной фильтрации были выбраны
необходимые программные инструменты. Для выдачи непосредственно самих
рекомендации был написан REST API сервис на языке Python. Реализации
рекомендательного движка в виде отдельно сервиса даст возможность внедрить
в уже готовый интернет магазин.
Для проверки возможности взаимодействия рекомендательной системы
с системой электронной коммерции был написан прототип интернет-магазина
на языке PHP 7.4 c использованием фреймворков Yiьзования результатов ВКР, iьзования результатов ВКР, 2 и Bootstrap 3. Однако на
текущий момент эти системы не интегрированы. В дальнейшем планируется
реализовать взаимодействие между ними. Синхронизацию данных между
MySQL и Neo4j планируется обеспечить с использованием компонента Kafka
Connect брокера сообщений Apache Kafka.
Результаты этой работы показали, что механизм качественных
рекомендаций не обязательно нуждается в машинном обучении, как это часто
считается. Однако для оценки качества рекомендаций, разработанной системы,
необходимо провести комплексное тестирование с реальными пользователями.
Одним из вариантов такого тестирования может стать A/B тестирование.
CONCLUSION
In the course of thiьзования результатов ВКР, s work, an analysiьзования результатов ВКР, s of models and types of systems was
carriьзования результатов ВКР, ed out. To iьзования результатов ВКР, mplement the alg)oriьзования результатов ВКР, thm, the needed software tools were selected.
REST API serviьзования результатов ВКР, ce has been iьзования результатов ВКР, mplemented on Python to receiьзования результатов ВКР, ve the recommendatiьзования результатов ВКР, ons.
Implementatiьзования результатов ВКР, on of the recommendatiьзования результатов ВКР, on eng)iьзования результатов ВКР, ne iьзования результатов ВКР, n the form of a separate serviьзования результатов ВКР, ce wiьзования результатов ВКР, ll
make iьзования результатов ВКР, t possiьзования результатов ВКР, ble to iьзования результатов ВКР, nteg)rate iьзования результатов ВКР, t iьзования результатов ВКР, n a ready-made onliьзования результатов ВКР, ne store.
The prototype of an onliьзования результатов ВКР, ne store was wriьзования результатов ВКР, tten on PHP 7.4 usiьзования результатов ВКР, ng) the Yiьзования результатов ВКР, iьзования результатов ВКР, 2 and
Bootstrap 3 frameworks, to test the possiьзования результатов ВКР, biьзования результатов ВКР, liьзования результатов ВКР, ty of iьзования результатов ВКР, nteractiьзования результатов ВКР, on between the
recommendatiьзования результатов ВКР, on system and the e-commerce system. However, these systems are
currently not iьзования результатов ВКР, nteg)rated. In the future, iьзования результатов ВКР, t iьзования результатов ВКР, s planned to realiьзования результатов ВКР, ze the iьзования результатов ВКР, nteractiьзования результатов ВКР, on between
them. It iьзования результатов ВКР, s planned to proviьзования результатов ВКР, de data synchroniьзования результатов ВКР, zatiьзования результатов ВКР, on between MySQL and Neo4j usiьзования результатов ВКР, ng)
the Kafka Connect component of the Apache Kafka messag)e broker.
The results of thiьзования результатов ВКР, s work showed that the system of hiьзования результатов ВКР, g)h-qualiьзования результатов ВКР, tatiьзования результатов ВКР, ve
recommendatiьзования результатов ВКР, ons does not necessariьзования результатов ВКР, ly need machiьзования результатов ВКР, ne learniьзования результатов ВКР, ng). However, to assess the
qualiьзования результатов ВКР, ty of recommendatiьзования результатов ВКР, ons of the developed system, iьзования результатов ВКР, t iьзования результатов ВКР, s necessary to conduct
comprehensiьзования результатов ВКР, ve testiьзования результатов ВКР, ng) wiьзования результатов ВКР, th real users. One of the optiьзования результатов ВКР, ons for such testiьзования результатов ВКР, ng) may be A/B
testiьзования результатов ВКР, ng).
Последние выполненные заказы
Хочешь уникальную работу?
Больше 3 000 экспертов уже готовы начать работу над твоим проектом!