Реферат
Введение 4
1. Рекомендательные системы и алгоритмы подбора 5
1.1. Фильтрация содержимого 6
1.2. Коллаборативная фильтрация 9
1.3. Гибридные методы фильтрации 13
1.3.1. Построение единой рекомендательной модели 13
1.3.2. Внедрение item-based характеристик в user-based системы 14
1.3.3. Внедрение user-based характеристик в item-based системы 14
1.3.4. Раздельное внедрение рекомендательных систем 15
2. Понятие музыкального аудио-стриминга и анализ существующих
решений 16
2.1. Понятие музыкального аудио-стриминга 16
2.2. Pandora Internet Radio 17
2.3. Spotify 19
2.4. Яндекс.Радио 21
3. Определение параметров оценивания музыки 24
4. Определение требований к системе 27
5. Анализ требований 30
5.1. Слушать музыку 30
5.2. Отобразить текст песни 30
5.3. Сменить композицию 31
5.4. Управлять проигрывателем 31
5.5. Добавить композицию 32
6. Проектирование архитектуры приложения 33
7. Реализация 37
Заключение 40
Литература
С развитием способов передачи информации и, в частности, сети Интернет искать любимые композиции и слушать хорошую музыку не вызывает особых проблем. В Интернете активно распространяются сервисы, помогающие пользователям найти композиции по названию, исполнителю, жанру, а также, предлагающие подобрать композицию в зависимости от Ваших предпочтений в музыке, Ваших личностных качеств, настроения, погодных условий и тому подобных характеристик.
Целью данной работы была поставлена разработка веб-приложения музыкального аудио-стриминга, помогающего не только в поиске запрошенных композиций, но и предлагающего похожую на искомую музыку, которую пользователь не запрашивал напрямую ранее. Для достижения этой цели необходимо изучить алгоритмы подбора рекомендаций, а также, определить список необходимых параметров для сравнения музыкальных композиций при подборе рекомендаций. Далее, нужно точно определить понятие музыкального аудио-стриминга и изучить, в рамках этой задачи, существующие аналогичные решения. Далее, составить набор требований к разрабатываемой системе, проанализировать их и после этого переходить, непосредственно, к проектированию и реализации.
Таким образом, в соответствии с унифицированным процессом [1] требуется решить задачи:
1. Изучение рекомендательных систем и алгоритмов подбора.
2. Выявление требований к системе и определение параметров оценивания музыки для использования в алгоритме подбора.
3. Анализ вариантов использования.
4. Проектирование архитектуры приложения.
5. Реализация приложения.
Таким образом, в рамках выпускной квалификационной работы были выполнены задачи определения требований, анализа и проектирования, был реализован скрипт для добавления композиций в коллекцию, который будет полезен для администратора приложения. Было реализовано веб-приложение музыкального аудио-стриминга с рекомендательной системой, и поставленная цель была достигнута.
На данный момент приложение не размещено для общего доступа во избежание нарушения авторских прав, но в достаточной мере функционирует и может быть использовано по прямому назначению для поиска и прослушивания музыки.
В дальнейшем планируется дополнить основной функционал приложения, а также провести ряд улучшений. Также планируется работа над архитектурой и реализацией проекта для оптимизации кода, улучшения производительности, внешнего вида и удобства использования приложения.
1. Якобсон А. Унифицированный процесс разработки программного обеспечения : пер. с англ. В. Горбунков / А. Якобсон, Г. Буч, Дж. Рамбо - Спб.: Питер, 2002. - 496 с.
2. Adomavicius G. Toward the Next Generation of Recommender Systems: A Survey of the State-of-the-Art and Possible Extensions / G. Adomavicius, A. Tuzhilin // IEEE Transactions on Knowledge and Data Engineering. - 2005. - Vol. 17, №6. - P. 734-749.
3. G. Salton Automatic Text Processing // Addison-Wesley. - 1989.
4. M. Pazzani Learning and Revising User Profiles: The Identification of Interesting Web Sites. / M. Pazzani, D. Billsus // Machine Learning. - 1997. - Vol.
27. - P. 313-331.
5. Е. Rich User Modeling via Stereotypes // Cognitive Science. - 1979. - Vol.
3. - P. 329-354.
6. D. Goldberg Using Collaborative Filtering to Weave an Information Tapestry / D. Goldberg, D. Nichols, B.M. Oki, D. Terry // Comm. ACM. - 1992. - Vol. 35, №12. - P. 61-70.
7. J.S. Breese Empirical Analysis of Predictive Algorithms for Collaborative Filtering / J.S. Breese, D. Heckerman, C. Kadie // Proc. 14th Conf. Uncertainty in Artificial Intelligence. - 1998.
8. C.C. Aggarwal Horting Hatches an Egg: A New Graph-Theoretic Approach to Collaborative Filtering / C.C. Aggarwal, J.L. Wolf, K-L. Wu, P.S. Yu // Proc. Fifth ACM SIGKDD Int’l Conf. Knowledge Discovery and Data Mining. - 1999.
9. P. Resnick GroupLens: An Open Architecture for Collaborative Filtering of Netnews / P. Resnick, N. Iakovou, M. Sushak, P. Bergstrom, J. Riedl // Proc. 1994 Computer Supported Cooperative Work Conf. - 1994.
10. U. Shardanand Social Information Filtering: Algorithms for Automating “Word of Mouth” / U. Shardanand, P. Maes // Proc. Conf. Human Factors in Computing Systems. - 1995.
11. B. Sarwar Item-Based Collaborative Filtering Recommendation Algorithms / B. Sarwar, G. Karypis, J. Konstan, J. Riedl // Proc. 10th Int’l WWW Conf. - 2001.
12. J. Delgado Memory-Based Weighted-Majority Prediction for Recommender Systems / J. Delgado, N. Ishii // Proc. ACM SIGIR ’99 Workshop Recommender Systems: Algorithms and Evaluation. - 1999.
13. A. Nakamura Collaborative Filtering Using Weighted Majority Prediction Algorithms / A. Nakamura, N. Abe //Proc. 15th Int’l Conf. Machine Learning. - 1998.
14. A.I. Schein Methods and Metrics for Cold-Start Recommendations / A.I. Schein, A. Popescul, L.H. Ungar, D.M. Pennock // Proc. 25th Ann. Int’l ACM SIGIR Conf. - 2002.
15. А. В. Заболеева-Зотова Латентный семантический анализ: новые решения в Internet / А. В. Заболеева-Зотова, А. Ю. Пастухов, П. В. Сердюков, Н. А. Козлова, С. А. Чернов // Информационные технологии. - 2001. - №6.
... всего 31 источников