Предсказание количества лайков. Сравнение несколько регрессионных алгоритмов.

В начале апреля я узнал о суперкрутом конкурсе SNA Hackaton. К сожалению, узнал я лишь за неделю, но и для того, чтобы принять в нём участие, надо было доделать более важные дела. Суть конкурса в том, что участникам выдавался небольшой (~500 МБ) набор данных, содержащий текст поста в Одноклассниках, его время, идентификатор и идентификатор группы, а также собранные им лайки.

Надо было построить такой алгоритм, который лучше всего предскажет количество лайков, которое наберёт какой-либо другой пост. Это вполне возможно сделать, обучив алгоритм на имеющихся данных, потому что вся необходимая информация уже есть в них. Как оказалось потом, на количество лайков влияет длина поста, его содержание, наличие фотографий и другие параметры.

Честно сказать, результатом пары бессонных ночей я доволен и не доволен одновременно. С одной стороны, хочется сказать спасибо организаторам за то, что дали такую прекрасную возможность проанализировать данные и построить и проверить все эти гипотезы. Благодаря этому конкурсу я немного больше узнал про SciKit-learn и NLP (Natural Language Processing, а не то, что вы подумали). Но с другой стороны, у меня появилось желание получить модель получше, которое я пока, к сожалению, не реализовал.

Поскольку блог сжимает оригинальный html файл, посмотреть результаты исследования можно и с нормальной версткой.

В общем, конкурс уже закончился, у участников, которые оказались в топе значение итоговой метрики R^2 оказалось порядка 0.3, что очень хорошо, потому что мне на обучающей выборке удалось получить только порядка 0.2 (а это только обучающая выборка).

Как обычно, я выложил отдельно ipynb файл для тех, кто захочет повторить мои вычисления и разобраться сам.

 

Kirill

 

Comments are closed.