Как вам такой эксперимент?

1 234
C
На сайте с 17.08.2002
Offline
82
#21
alut:
Эксперимент займет не меньше месяца (даже более простые столько длились), а скорее всего 2-3 месяца - пока проиндексируются и учтутся все сылки. А это согласитесь, совсем не налету.

alut, я кажется понял, как мне нужно объяснить свою позицию :)

Представьте, что мы подождали 4-6 мес. При этом ссылки на страницу (где нарисована 5) постоянно изменялись: ставились новые; убирались; на тех страницах, которые ссылаются на 5 много раз изменялся PR и т.д. Но на страницы всего дерева никто, кроме пятерки, не ссылается (как показано на рисунке). Кстати, пятерка - это условное название. На самом деле это может быть шестерка или даже семерка - не важно.

В один прекрасный день Гугл решил пересчитать PR. Поисковые системы - это инертные механизмы, поэтому какие-то ссылки Гугл еще не нашел, а какие-то ссылки уже убрали, но Гугл об этом не знает. Но посчитать PR ему нужно, поэтому он работает с тем, что ему известно. Он делает пересчет PR для всех страниц в интернете. Результаты отображаются в баре до следующего пересчета. И до следующего пересчета уже ничего не меняется.

С точки зрения эксперимента это выглядит так, как будто в систему через одну страницу "влили" достаточно большое кол-во PR. Сколько его, со скольких страниц он собрался - не важно, т.к. используется тот факт, что на следующем уровне PR будет одинаковым.

alut:
Мы говорим не о математике - а о методике постановки эксперимента.

Хочу заметить, что Миха, на которого Вы периодически ссылаетесь, в своей статье использует термины математической статистики :)

Т
На сайте с 16.01.2005
Offline
53
#22
Cage:
Все, теперь я все понял в Вашем эксперименте. Вы хотите вычислить коэффициент d (damping factor) в формуле расчета PR. Вы исходите из того, что Вам удастся выделить чистую двойку (PR=2) и чистую единицу (PR=1), на которую эта двойка ссылается.

Теперь я предлагаю записать правильную формулу PR :), подставив в нее Вашу двойку, единицу и 50 ссылок.

1 = (1-d) + d*(2/50)

Как нетрудно заметить, d=0 для любого количества ссылок. Почему?
А все потому, что Вы не обратили внимание на мои слова

Первое (1 - d) это статическая величина - начальный ПР страницы. В баре эта величина будет совсем не 1-d. Поэтому использовать данную формулу нельзя.

Второе коэффициент потерь это совсем не d и к этой формуле он никакого отношения не имеет. Обсуждать его я не хочу потому, что в рамках одного эксперимента это абсолютно бессмысленная величина, о чем я писал выше.

Что я действительно хочу узнать, так это сколько нужно ссылок с двойки, чтобы по одной из них передать единичку.

Cage:

Представьте, что PR на каком-то вымышленном нами баре отображается как
B = 100*корень(x),
где B - PR в баре, x - реальный PR.

Теперь представьте, что у нас есть две страницы:
стр.1 - x=0,01
стр.2 - x=0,04

Заметьте, что реальный PR второй страницы в 4 раза (больше), чем первой. Пересчитаем PR для нашего бара. Получим:
стр.1 - B=10
стр.2 - B=20

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

Обозначим функцию получения значения Вашего бара - СR (CageRank)

CR(x1 * x2) = CR(x1) * CR(x2)

CR(x1 / x2) = CR(x1) / CR(x2)

Две арифметические операции остались. Жаль только, что ссылки складываются и делятся, а сложение у Вас не работает. ;)

C
На сайте с 17.08.2002
Offline
82
#23
Теркин:
Первое (1 - d) это статическая величина - начальный ПР страницы. В баре эта величина будет совсем не 1-d. Поэтому использовать данную формулу нельзя.

Ну это же не повод придумать новую, неправильную формулу :)

Теркин:
Что я действительно хочу узнать, так это сколько нужно ссылок с двойки, чтобы по одной из них передать единичку.

Эта информация сомнительной полезности :)

Ведь ее не получится интерпретировать для страниц с бОльшим PR...

Теркин:
Обозначим функцию получения значения Вашего бара - СR (CageRank)
CR(x1 * x2) = CR(x1) * CR(x2)
CR(x1 / x2) = CR(x1) / CR(x2)
Две арифметические операции остались. Жаль только, что ссылки складываются и делятся, а сложение у Вас не работает. ;)

Пересчитайте еще раз CageRank :)

2!=200

50!=0.5

Т
На сайте с 16.01.2005
Offline
53
#24
Cage:

1. Ну это же не повод придумать новую, неправильную формулу :)
2. Эта информация сомнительной полезности :)
Ведь ее не получится интерпретировать для страниц с бОльшим PR...
3. Пересчитайте еще раз CageRank :)
2!=200
50!=0.5

1. Новую не нужно придумывать. У вас ошибка. Формула для истинного ПР, а вы подставляете баровский. Обозначим функцию для получения точного, не округленного ПР через PR(). Откуда

1=PR(x1), 2=PR(x2), где x1, x2 истинный ПР.

Вашу формулу можно записать в другом виде произведя преобразования над левой и правой частью согласно функции PR().

PR(x1) = PR((1-d) + d*(x2/50))

надеюсь с этим никто спорить не будет? ;)

и только тогда PR(x1) можно заменить на 1

1 = PR((1-d) + d*(x2/50))

Но PR(x2) у нас нет.

2. Вот тут и появляется необходимость в этой информации "сомнительной полезности". А именно чтобы выделить величину PR(x2). А точнее нужно провести не один эксперимент чтобы это сделать. Есть основание думать, что операции умножения в баре заменены на сложение, а деления на разность. Соответственно функция для пересчета истинного ПР в баровский логарифмическая. Это и хочу определить, но объяснять это мне совсем не охота, так как это еще доказать нужно. И к эксперименту это мало относится, а стоится все на информации "сомнительной полезности".

3. С CR я действительно ошибся. Мешает 100, но зависимость все равно остается.

CR(x1 * x2) = CR(x1) * CR(x2)/100

CR(x1 / x2) = CR(x1) / CR(x2)*100

Как вам такой вариант использования данных с двух экспериментов прямого и обратного. Мы знаем, что из 2-ки по одной из 50-ти ссылок передается 1, но нам нужно 60 единичек, чтобы собрать 2-ку. Откуда мы потеряли 10 ссылок потери в обоих случаях были равны. Следовательно, без потерь нам бы понадобилось 55 ссылок в обоих случаях.

x1 = (1-d) + d*(x2/50) с потерями

x1 = (1-d) + x2/55 без потерь

откуда

(1-d) + d*(x2/50) = (1-d) + x2/55

d*(x2/50) = x2/55

d/50 = 1/55

d = 50/55

Т
На сайте с 16.01.2005
Offline
53
#25

В расчете d где-то ошибка, а где понять не могу.

C
На сайте с 17.08.2002
Offline
82
#26
Теркин:
1. Новую не нужно придумывать. У вас ошибка. Формула для истинного ПР, а вы подставляете баровский.

Вообще-то весь мой 21 пост в этой теме посвящен тому, что так делать нельзя. Подставлял для наглядности :)

Теркин:
Обозначим функцию для получения точного, не округленного ПР через PR().
...
и только тогда PR(x1) можно заменить на 1

Давайте для начала уточним, что Вы имеете в виду под функцией PR(). Что в ней аргумент, а что - зависимая переменная?

это "функция для получения точного, не округленного ПР" (реального), зависящая от PR на баре

x1 = PR(B)

или это функция получения округленного PR на баре, зависящая от реального PR

B = PR(x1)

?

Т
На сайте с 16.01.2005
Offline
53
#27
Cage:
Вообще-то весь мой 21 пост в этой теме посвящен тому, что так делать нельзя. Подставлял для наглядности :)

Ну я то точно так не делал. :)

Cage:

Давайте для начала уточним, что Вы имеете в виду под функцией PR(). Что в ней аргумент, а что - зависимая переменная?

это "функция для получения точного, не округленного ПР" (реального), зависящая от PR на баре
x1 = PR(B)

или это функция получения округленного PR на баре, зависящая от реального PR
B = PR(x1)

?

Не то и не другое.

B = PR(x1)

Но В - это не округленный ПР на баре.

Дело в том что округленный ПР на баре не позволяет вернуться к истинному ПР. Это из дискретной математики. Теорию я не помню это давно было. Попробую объяснить своими словами.

Представьте три множества.

Первое Истинный ПР.

Второе не округленный ПР на баре. Одному элементу из первого множества соответствует один элемент из второго, полученный путем преобразования по функции B = PR(x1). Мы можем как перейти во второе множество, так и вернуться из него.

Третье множество это округленный ПР на баре. Нескольким элементам из первого множества соответствует один элемент из третьего. И назад вернуться уже нельзя.

Соответственно округленный ПР абсолютно бесполезная вещь. Эксперимент позволяет перейти во второе множество, откуда уже можно перейти в первое, зная функцию B = PR(x1). Ее мы не знаем, я предполагаю, что это логарифм с константами или нет. Думаю, что серия экспериментов поможет это выяснить.

C
На сайте с 17.08.2002
Offline
82
#28
Теркин:
Третье множество это округленный ПР на баре. Нескольким элементам из первого множества соответствует один элемент из третьего. И назад вернуться уже нельзя.

Как раз собирался Вам написать, что функции, обратной к операции округления не существует, но Вы и сами все это описали :)

Теркин:
x1 = (1-d) + d*(x2/50) с потерями
x1 = (1-d) + x2/55 без потерь
откуда
(1-d) + d*(x2/50) = (1-d) + x2/55
d*(x2/50) = x2/55
d/50 = 1/55
d = 50/55

С точки зрения математики, по-моему, здесь все верно. Как не трудно заметить, все Ваши иксы сократились. То есть Вам даже не важно, выделились ли целые PR на баре 1 и 2, а важно только то, чтобы x1 и x2 в первом исходном равенстве равнялись x1 и x2 во втором.

Но я считаю, что ошибка есть здесь

Следовательно, без потерь нам бы понадобилось 55 ссылок в обоих случаях.

Это очень сомнительное утверждение, которое, к тому же, ничем не доказано. Если Вам даже удастся получить цифры 50 и 60 с описанным Вами смыслом, гораздо более логично (на мой взгляд) было бы записать:

x1 = (1-d) + d*(x2/50)

x2 = (1-d) + d*60*x1

Здесь уже так просто все не сокращается. Это система из двух уравнений с тремя неизвестными.

Вернемся к Вашему равенству

PR(x1) = PR((1-d) + d*(x2/50))

PR(x1)=1

PR(x2)=2

Как из PR(x2)=2 Вы можете найти

PR((1-d) + d*(x2/50)) ?

Вы не могли бы записать это в виде равенства

PR((1-d) + d*(x2/50)) = ... ?

A
На сайте с 25.10.2005
Offline
219
#29

Cage, Теркин, ребята, а Вы не хотете сначала расписать эксперимент по пунктам. Если я где-то обсдался - поправьте.

/ru/forum/comment/1265937

А то за формулами можно потерять смысл.

Старый офлайн-экспериментатор.

Т
На сайте с 16.01.2005
Offline
53
#30
Cage:
Гораздо более логично (на мой взгляд) было бы записать:
x1 = (1-d) + d*(x2/50)
x2 = (1-d) + d*60*x1

Здесь уже так просто все не сокращается. Это система из двух уравнений с тремя неизвестными.

Вернемся к Вашему равенству
PR(x1) = PR((1-d) + d*(x2/50))

PR(x1)=1
PR(x2)=2

Как из PR(x2)=2 Вы можете найти
PR((1-d) + d*(x2/50)) ?

Вы не могли бы записать это в виде равенства
PR((1-d) + d*(x2/50)) = ... ?

Нет не могу. Так как вначале нужно доказать некоторые предположения, которые я выдвинул. Возможно эти предположения не верны.

Я лучше создам свой бар со своим PR. Назовем его ТR ;)

ТR = log(PR)

ТR1 = log(PR1)

ТR2 = log(PR2)

ТR1+ТR2 = log(PR1*PR2) (1)

ТR1-ТR2 = log(PR1/PR2) (2)

Мне даже не нужно знать формулу пересчета, нужно только доказать два последних равенства.

TR(x1) = TR((1-d) + d*(x2/50)) (3)

Операции сложения у нас нет, поэтому от нее нужно избавиться. (1-d) это маленькая величина по отношению к x1 думаю она будет соизмерима с погрешностью получения единички из эксперимента. Поэтому ею можно пренебречь. Если вас это смущает, то можно взять не единичку и двойку, а двойку и тройку. Тогда (1-d) будет меньше погрешности для получения двойки. Чего вполне достаточно.

Пренебрегая (1-d) переписываем формулу (3).

TR(x1) = TR(d*(x2/50))

Откуда согласно (1) и (2)

TR(x1) = TR(d)+TR(x2)-TR(50)

подставляем наши 1 и 2 можно 2 и 3, кому что больше нравится. :)

1 = TR(d) + 2 - TR(50)

TR(50) - TR(d) = 1

1 234

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий