Тысячи чертей или почему яндексоиды не бреются?
Очень меня напряг "учет нескольких тысяч поисковых параметров для одного документа". Нет, вовсе не как оптимизатора. Как оптимизатору мне достаточно оказывать влияние на 3 параметра документа — относительную частоту запроса в документе, относительную частоту запроса в анкор-листе документа и вес документа, который определяется как сумма передаваемых донорами весов. Этого в принципе достаточно для успешного продвижения.
Меня беспокоят тысячи параметров как немножко программиста и слегка математика.
Начнём с того, что одним из основным принципов программирования (и математики, и философии) является принцип Бритвы Оккама:
entia non sunt multiplicanda praeter necessitatem
(не преумножай сущности без надобности)
Как мне видится, для успешного ранжирования любых документов необходимо и достаточно 4 параметра: к трём вышеупомянутым добавляется возраст документа, и применяется он в случае равенства этих трёх параметров (и для одних типов запросов возраст может идти в плюс, а для других — в минус). А дьявол порылся в точном взвешивании передаваемых ссылками весов: seo-ссылки, естественные ссылки, ссылки с трастовых и ссылки с экспертных документов — все они должны передавать вес по-разному. Ну и ещё разные типы запросов необходимо учится определять, чтобы искать немного по-разному — но это всё не имеет никакого отношения к параметрам самого документа…
Ладно, ладно, я ничерта не понимаю в поиске, а на самом деле, большинство ценных документов располагается на сайтах, сделанных криворукими вебмастерами (был тут недавно в немаленькой такой компании, головной офис которой расположен в Доме Зингера на Невском, так там сайтом рулили 6 вебмастеров, а на подтверждение прав для консоли вебмастера ушло полтора часа) и поэтому на годный документ ведёт единственная ссылка с текстом подробнее с такого же одиноко расположенного документа на богом и Гуглем (но не Яндексом) забытом сайте, а посему для качественного ранжирования столь бесценных для широких масс документов нужны цельных 245 признаков (кстати, кто-нибудь знает, почему 245, а не нормальные для любого программиста 256?). Лично я, как и Петька из анекдота, такое не только написать, но и представить не могу! А теперь заметьте, что всего-то за какие-то полгода количество необходимых для ранжирования параметров вдруг увеличились в 8 (!) раз (минимум в 8, потому что «тысячи» это как минимум две ). Да в ином документе столько букв не бывает сколько придумали параметров яндексоиды.
Хорошо-хорошо, у меня как не у гуманитария очень скудное воображение, поэтому попрошу вообразить вас такую ситуацию: господину Воложу звонит господин Медведев и с чуть меньшим чем у Путина металлом в голосе спрашивает, а почему это по запросу президент выдаётся википедия со статьей не про того президента? Вообразили? А теперь вообразите как яндексоиды будут вспешке определять какой из тысяч параметров подкрутить, чтобы правильный президент в топе был. Вот и у меня не получается. Нет, звонок Медведева Воложу — запросто, а быстрый поиск и исправление ошибки — ну никак.
Гугль, к слову, с задачей выбора правильного президента в вики справляется на раз. Наверное потому, что PageRank вычислять умеет 🙂
Ну и на загрузку опять немножечко математики. Если вам не хватило 1000 параметров, чтобы выбрать и отранжировать первую тысячу документов из всех документов, содержащих слова из запроса пользователя, то вы придумали ровным счётом ничего не значащую тысячу параметров — они совпадают у очень многих документов, а это значит, что «учёт нескольких тысяч поисковых параметров для одного документа» — это не более чем страшная сказка на ночь для ребёнка начинающего сеошника.
Disclaimer: данная заметка ни в коем разе не является попыткой учить кого-либо писать отличный поиск, но является просто выражением удивления, почему Володька не сбрил усы. Правильной бритвой 😀
Upd: комментарий от Ильи Сегаловича.
Это не те «параметры», которые «признаки» или «свойства» (features), а те параметры, из которых строится модель.
Если модель, например, полином второй степени (то есть в качестве параметров используется и признаки и все их произведения) то число параметров модели пропорционально квадрату числа признаков. Чем длиннее модель (чем в ней больше используется параметров) тем точнее можно построить ранжирование или угадать класс объекта или угадать оценку и тп. Однако сложные, длинные модели очень дорого «обсчитывать» по ресурсам.
В этом релизе мы впервые для себя применили очень длинную модель в ранжировании. Для этого пришлось многое переписать.
А признаков у нас, и правда, несколько сотен, и их число и рост их числа, вы совершенно правы, тщательно контролируется и идет конечно же не так быстро.