Рекомендательная система (семинар)

Материал из Wiki - Факультет компьютерных наук
Перейти к: навигация, поиск

Общая информация

Семинар проходит в Яндексе (корпус ШАДа), по средам, с 17:00. Встречаемся у входа в БЦ Мамонтов. Опоздание минут на 10 приводит к тому, что проектом вы будете заниматься дома, так что лучше все-таки не опаздывать.

Ментор: Денис Симагин. Вопросы задавать можно и нужно, но не те, ответ на которые можно найти на первой странице поисковой выдачи.

Описание проекта: Рекомендательная система (проект).

Материалы

Python

Git

  • Code School - Try Git интерактивная почти игра, которая учит основным командам Git.
  • Git - Documentation официальная документация Git.
  • Git - Book перевод довольно обширной обучающей книги о Git от Скотта Шакона.

Книги

Туториалы

Семинары

S02.03

Первая встреча. Обсуждали организационные моменты. Оговорили, кто какие ресурсы собирается взять для своей рекомендательной системы, но этот выбор еще можно поменять в течение недели. Указания к ресурсу: должно быть достаточно много статей, более-менее одной тематики.

Для хранения кода будет использоваться git, по крайней мере на первых порах. Соответственно, главное задание на эту неделю — разобраться с git'ом.

Также необходимо изучить выбранный ресурс и подумать, каким именно образом выкачивать оттуда статьи (например, бежать по ссылкам или использовать ленту).

Кто уже знает git, по желанию может уже начать писать crawler. Что для этого нужно:

  1. Скачать всю статью в HTML.
  2. Распарсить эту статью. Почистить от всякого мусора: картинок, ссылок, прочего, оставить только текст. Если есть опыт работы с базами, то можно использовать их, в противном случае лучше не тратить время на их изучение, достаточно хранить все в обычной директории. Распарсенные статьи хранятся отдельно, у них должны быть свои индексы и нужно уметь сопоставлять этот индекс с url статьи.
  3. Выкачать таким образом весь ресурс (mining).
  4. Уметь определять свежесть статьи.
  5. Уметь получать новые статьи.

Потенциально полезные ссылки: