Структурное пространство произведений
Автор: Дмитрий Малыхин (i@dmalyhin.ru).
Пространство произведения
Для произведения w используются координаты:
concept:<value>
descriptor:<value>
classification:<axis>:<value>
profile:<axis>:<value>
author:<value>
Префиксы разделяют одинаковые строки из разных доменов.
Полевые веса
| Домен | Вес |
|---|---|
| концепт | 3.00 |
| дескриптор | 1.20 |
| классификация | 0.55 |
| профиль | 0.35 |
| авторство | 0.80 |
TF-IDF
TF-IDF применяется только к концептам и дескрипторам:
idf(f) = ln((1 + N) / (1 + df(f))) + 1
s(w,f) = field_weight(f) · idf(f)
Классификация, профиль и авторство используют фиксированный вес.
Вектор произведения
book_raw(w) = tfidf(concepts, descriptors)
⊕ classification(w)
⊕ profile(w)
⊕ authorship(w)
book(w) = L2Normalize(book_raw(w))
sim_struct_work(u,v) = book(u) · book(v)
Кандидатный шлюз
Пара произведений допускается только при наличии хотя бы одного прямого содержательного основания:
общий концепт
или общий дескриптор
или общий автор
Совпадение только классификации или профиля кандидата не создаёт. Произведения одной непустой серии исключаются из рекомендательного блока.
Объяснение оценки
Для общей координаты:
contribution_f(u,v) = book(u,f) · book(v,f)
Пользователю показываются фактические группы признаков, которые внесли наибольший вклад.
Авторская структурная модель
Из содержательного вектора произведения удаляется авторство. Для автора строится средний центроид его произведений и нормализация по L2-норме. Размер корпуса сам по себе не создаёт бонус.
Структурная модель серии
Для признака учитывается доля произведений серии, в которых он встречается, и обратная частота признака по сериям. Вес персонализированного автора внутри серии — 0.20. Пара серий допускается только при общем концепте или дескрипторе.