Кот

Рейтинг
74
Регистрация
03.02.2005
wolf:
Вот и думаю - пассаж разработчики поисковиков всяк по-своему интерпертируют или же есть таки какой-то "корпоративный стандарт"?

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

Кстати, процитированное высказывание не исключает возможности пересечения пассажей.

oiL-k:
Дайте определение, что есть пассаж и пляжите от этого.

Дык, вот... Никак не народится :)

Так что у Вас есть шанс на белого коня :)

wolf:
Очередная надстройка, от которых Вы намеревались уйти. Шило на мыло.

Ну, в моих терминах это и не надстройка вовсе. Если, все же считать это надстройкой, то, имхо, она на порядки проще того, о чем шла речь выше.

wolf:
- Капитан, почему батарея не ведет огонь?
- На это есть восемнадцать причин. Во-первых, нет снарядов...

Не совсем согласен :) случаи немного различаются :)

euhenio:
не нравится мне сумма...

Тут я с Вольфом солидарен - из-за "собираются", имхо, уши суммы торчат :)

euhenio:
А с суммой не выйдет...

Ну почему же не выйдет? Еще как выйдет... если пассажи пересекаются :)

wolf:
Это про пересекающиеся пассажи? Да хотя бы потому что учет одного термина несколько раз противоречит идее алгоритма tf*idf

По остальному возражений нет? :)

С одной стороны, Сегалович и так, имхо, несколько отошел от классического алгоритма tf*idf.

С другой стороны, для согласования алгоритма пересекающихся пассажей с "идеей алгоритма tf*idf" достаточно разделить вес "общих" терминов между пассажами (это выше уже обсуждали). ИМХО, это не сложно сделать корректно.

wolf:
Во-первых, цитата Сегаловича относится к конкретному примеру.

Не согласен. На конкретном примере показываются преимущества яндексовского алгоритма расчета веса словопозиции:

Сегалович:
Яндекс предпочтет тот {пассаж}, в котором окружение более тяжелого слова больше похоже на его окружение в запросе.......
wolf:
Во-вторых, с чего Вы взяли, что в Вашем примере более релевантным будет признан второй пассаж?

Если это не очевидно, можно во второй пассаж добавить еще одну (или несколько) конструкций типа

_ _ _ AA _ cc _ _ _

wolf:
Из-за наличия нескольких более тяжелых слов?

Да, арифметика.

wolf:
Но, кто поручится, что значительный проигрыш в расстояниях между терминами bb cc и dd не сведет это преимущество на нет?

При существенной разнице в весах терминов, недобор веса пассажем из-за большого растояния между терминами bb cc и dd будет незначителен.

wolf:
Да и учет количества одинаковых терминов в пассаже запросто может быть ограничен каким-нибудь антиспамовым модулем.

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

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

Ведь все эти надстройки и модули необходимо еще грамотно настроить изначально, а в дальнейшем постоянно перенастраивать.

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

Мне все не кажется таким простым. В частности, имея запрос [aa bb cc dd] и следуя Вашим простым алгоритмам без поднабора, из двух пассажей

[AA bb cc dd] и [AA bb _ _ _ _ _ _ AA _ cc _ _ _ _ _ _ _ AA _ _ dd] более релевантным запросу будет признан второй. Что не очень согласуется с цитатой Сегаловича из моего предыдущего поста.

wolf, я немного другое в виду имел.

Если мы имеем пассаж без повторов терминов, то все относительно просто - производим "вычисление веса каждой словопозиции с учетом расстояния до всех остальных слов из запроса, попавших в пассаж". При этом используется табулированный набор коэффициентов и обеспечивается вот это:

Пусть задан запрос [aa BB cc dd], где BB - самое «тяжелое» слово. Из двух пассажей:

• [aa __ BB __ cc dd ee]

• [aa BB cc dd __ __ ee]

Яндекс предпочтет тот, в котором окружение более тяжелого слова [BB] больше похоже на его окружение в запросе, то есть второй.

Но если у нас появляются повторы терминов, то при использовании того же самого табулированного набора коэффициентов(ТНК) возникает опасность что пассаж, обладающий меньшим контекстуальным сходством получит больший вес. Что бы этого не произошло, в ТНК необходимо предусмотреть отдельный "поднабор" коэффициентов для повторяющихся терминов. С учетом разнообразия вариантов "повторяемости" терминов, объем этого "поднабора", имхо, будет на порядки больше, чем изначальный ТНК. При этом, как минимум, данный "поднабор" требует тщательной настройки и "обкатки", а, как максимум, создать подобный "поднабор" невозможно (т.е. ни при каких коэффициентах выполняться (во всем диапазоне возможных "значений") процитированное выше не будет).

При всем при этом, мы условно знаем, что ТНК применяется.

Учитывая чрезвычайно высокую сложность создания и "обслуживания" описанного выше "поднабора" (не говоря уже о том, что сама возможность его существования под вопросом), можно предположить, что ТНК существует без этого "поднабора".

Если ТНК существует без "поднабора", то механизм учета контекстуального сходства пассажа и запроса все же может корректно работать. Например, при использовании метода "пересекающихся пассажей", в которых повторяемость терминов отсутствует как класс.

euhenio:
с одной стороны, кажется, что желательно, и я об этом написал (с ) С другой стороны, простота рулит. И должна использоваться.

Так какая сторона перевешивает?

euhenio:
я же 2 раза написал: это я предположил. Давайте встречные предположения!

Сумма :)

euhenio:
Я не думаю, что есть пересекающиеся пассажи, тупо по причине:
1. Если есть переколдовка по документу - будет КУЧА вариантов пассажей

А вот это уже зависит от Правила формирования пассажей. Может куча, а может и меньше. Даже если и куча, что с того? Зато в точности выигрыш получаем.

euhenio:
и при этом каждому слову надо учитывать, в какие пасссажи он входит, и что-то как-то уменьшать. Это и по расчетам геморройно.

имхо, не сложнее всего остального, о чем мы уже знаем.

wolf:
А вот на этапе ранжирования должно учитываться всё, т.к. расстояния различные. И "табулированный набор коэффициентов" должен быть пусть не резиновый, но весьма обширный. Впрочем, не вижу тут никакой технической сложности.
euhenio:
в смысле, какие сложности? Не вижу сложностей.

Я правильно понимаю, что вы (в смысле, группа лиц :) ) предлагаете использовать простейший из возможных в данном случае алгоритмов расчета контекстуального сходства - раздельный расчет веса каждой (в том числе, повторяющейся) словопозиции? В этом случае, действительно, усложнять этот самый "табулированный набор" не потребуется.

Но как тогда быть с основным козырем яндексовского алгоритма расчета контекстуального сходства:

Предположим, ранжирование пассажей рассчитывается без взвешивания каждой позиции. Пусть задан запрос [aa BB cc dd], где BB - самое «тяжелое» слово. Из двух пассажей:

• [aa __ BB __ cc dd ee]

• [aa BB cc dd __ __ ee]

Яндекс предпочтет тот, в котором окружение более тяжелого слова [BB] больше похоже на его окружение в запросе, то есть второй. Тогда как остальные, известные мне алгоритмы взвешивания пассажей [14], [15], будут считать веса обоих пассажей одинаковыми.

Если взвешивать каждую (в том числе, повторяющуюся) позицию отдельно, то пассаж, обладающий меньшим контекстуальным сходством может получить больший вес.

wolf:
И все-таки идея пересекающихся пассажей мне кажется неверной.

Нам со стороны сложно судить, что именно прижилось в поиске и по каким причинам.

wolf:
1) только на этапе прохождения кворума
2) как на этапе прохождения кворума, так и на этапе ранжирования

Первое, имхо, логичнее т.к. получится учесть веса повторяющихся терминов при вычислении веса пассажа. Но возникнут сложности с "табулированным набором коэффициентов" - он же не резиновый, на все варианты "повторяемости терминов" коэффициентов, имхо, не напасешься :) В случае использования пересекающихся пассажей такая проблема не стоит.

Всего: 174