Любая социальная сеть это не только просмотр страничек людей и новостной ленты, но и в первую очередь общение. В ходе общения некоторые комментарии оказываются более популярными, чем другие. И как следствие нахотятся выше в ленте. Необходимо выяснить, а что же влияет на то что комментарий будет популярен или нет? Необходимо проинализировать данные и возможно найдутся инсайды, которые ответят на данный вопрос. В дальнейшем эти рекоммендации могут быть выданы пользователям, как писать комментарий, чтобы он был более был популярен. Качественное, интересное, а главное аттрактивное общение может увеличить количество пользоватей в социальной сети, а так же время нахожнения в ней
Предложить механизм сортировки комментариев к постам по их популярности на основе методов машинного обучения, чтобы модель могла как можно лучше ранжировать пользовательские комментарии. Для этого:
- Провеcти проверку и разведочный анализ данных (EDA) и подумать, какие готовые решения можно использовать для представления текста.
- Используя тренировочную и тестовую выборки датасета, обучить модель ранжировать текстовые комментарии в порядке их популярности (от популярных к менее популярным).
- Проанализировать полученные результаты и сформулировать полезные инсайты о том, что обычно содержит популярный комментарий, чтобы команда VK могла использовать эту информацию для улучшения комментариев своих пользователей.
- Предложите методы взаимодействия с комментаторами, а также механизмы поддержки для разных групп пользователей, включая тех, чьи комментарии непопулярны.
В формате json представлены данные о постах, комметариях, рейтинге. После пребразования json в pandas.DataFrame мы имеем следующие колонки:
post_idx - индекс поста
text - текст поста
comments - комментарий к посту (на каждый пост имеется 5 комментариев с разным рейтингом)
score - рейтинг популярности комментария (от 0 до 4, где 0 - самый популярный)
NDCG
https://scikit-learn.org/stable/modules/generated/sklearn.metrics.ndcg_score.html
ML модель: CatBoostRegressor
EDA: python, pandas, numpy, mathplotlib, seaborn, scikit-learn
Feature engeneering: pytorch, transformers
vk_challenge.ipynb - ноутбук с ходом исследования и обучениtv модели
Changellenge__Cup IT 2023_Диплом_1.pdf - диплом участника
При необходимости можно запросить дополнительно доступ к исходным данным чемпионата:
CL_Cup IT 2023_Секция DS_Кейс VK.pdf - описание кейса чемпионата от организаторов
ranking_test.jsonl , ranking_train.jsonl - исходные данные
final_j.jsonl - предсказанные значения
data_5000_first_view_right.csv, emo_features.csv, part_data_2_emd - сохраненные промежуточные данные, вычисление которых затратно. Можно загрузить готовыми
-
Более длинный комментарий в среднем популярнее других. Пользователям лучше писать полный коментарий, в котором раскрывется мысль, что он хотел донести. Возможно использовать какую то аргументацию своей позиции. Пользователю это можно интерактивно подсказывать
-
В наших данных имеются комментарии с использованием подряд спецсимволов (№"%&$...). Это можно интерпретировать как наличие ненормативной лексики. Согласно исследованию, это отрицательно сказывается на популярность комментария. Следовательно пользователю лучше воздержаться от использования нецензурных слов в своих сообщениях. При попытке написать такие слова, пользователю это можно подсвечивать с комментариями
-
Комментарий должен коррелирровать с темой поста, раскрывать и дополнять его тему. В таком случае комментарий будет более популярен
-
Есть зависимость от эмоциональной окраски комментария. В нашем случае получились неутешительные выводы, но соответвущие действительности: негативные комментарии имеют больше внимания (как и рейтинг передач на телевидинии, как Андрей Малахов и др.). С точки срения бизнеса нам невыгодно, чтобы общение сходилось на негатив. Возможно нужно выделить другие эмоциональные составляющие комментариев и проанализивать их в дальнейшем. Эту информацию можно опять использовать и подсвечивать пользователю эмоцианальный окрас сообщения
-
И конечно все рекоммендации должны даваться пользователем ненавязчиво. Иначе это может быть воспринято как посягательство на его свободу. Конечно он в праве писать что угодно и выражать свои мысли как он считает правильным
По итогам валидации тестовой выборки и оценки экспертов работа попала в десятку лучших, что позволило пройти в финал чемпионата