Прогноз кармы поста на reddit (проект)
Ментор | Иван Савин |
Учебный семестр | Весна 2015 |
Учебный курс | 1-й курс |
Проект можно развивать на летней практике | |
Что это за проект?
Reddit.com - социальный новостной сайт похожий по принципам работы на habrahabr/dirty/leprasorium и тд. Инструмент для прогноза рейтинга поста позволит анализировать интерес аудитории и реакцию на разные особенности подачи материала: время суток, пунктуация, длина заголовка и прочее.
Чему вы научитесь?
- Работа с API веб-сервисов: авторизация, составление запросов, разбор результатов
- Анализ данных: классификация, логическая регрессия. Использование готовых инструментов аналитики
Какие начальные требования?
- Бызовые понятия веб-технологий: HTTP, OAuth, API, HTML
- Владение любым из популярных языков программирования: Python, Java, Perl
- Работа с базой (предпочтительнее MongoDB, SQLite)
Какие будут использоваться технологии?
Зависит от выбранного языка программирования. Нужно убедиться, что для него уже есть готовые модули для следующих операций:
- Отправка запросов POST/GET по HTTP
- Разбор JSON
- Реализация логической регрессии
- Могут потребоваться инструменты для работы обработки текстов на естественных языках (NLP)
Рекомендуется начать поиски модулей тут:
- https://github.com/bayandin/awesome-awesomeness
- https://github.com/josephmisiti/awesome-machine-learning
Темы вводных занятий
Направления развития
- Инструмент для анализа социальных новостых сайтов, ассистент, подсказывающий, как и когда делать популярные посты.
- Инструмент для определения накрутки рейтинга, выявление аномалий.
Критерии оценки
4-5: Написан скрипт для скачивания постов, которых сохраняет извлеченную информацию в БД. Написан скрипт для бинарного определения рейтинга поста (например, наберет 50 очков или нет) по алгоритму OneR.
6-7: Написан скрипт для скачивания постов и информации об авторах (link karma, comment karma, дата регистрации) и информацию о сабредите. Написан скрипт для регрессионного анализа постов по извлеченным параметрам, который выдает предполагаемый рейтинг в виде числа.
8-10: + первый скрипт извлекает информацию о комментариях к посту: глубина дискуссий, количество и длина ответов. В анализаторе используются особенности поста: длина заголовка, длина поста в символах, абзацах, среднее количество слов в абзаце, использование знаков препинания "!" и "?" и любых других особенностей, объяснимо влияющих на рейтинг.