Считаем репутацию пользователей социальных сетей


    Зачем нужна репутация?


    Репутация может отражать множество связей в системе, связей между системами, их величину и актуальность. Репутация — это статус данного элемента в системе, будь-то это конкретный человек, книга, фильм, сайт или что-то другое. Она позволяет конечному пользователю ориентироваться среди большого объема информации, выбирать для себя лучшее, а так же, если он сам является элементом системы как, например, в социальных сетях, самому «показать себя».

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

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

    Более продвинутые репутационные технологии используют связи между объектами в системе. При этом репутация элемента системы зависит от репутаций других связанных с ним элементов — доноров, а также от всех других элементов, которые влияют на репутации его доноров. То есть прибавка к репутации объекта будет больше в случае, когда к нему поступит транзакция от более высокорепутационного объекта. Подводным камнем в таких системах является проблема циклических накруток, когда элементы системы связаны друг с другом не однонаправленной связью, и их репутации зависят от репутаций друг друга. Если не учитывать и не убирать эти накрутки то возможен неконтролируемый рост репутации.

    Коротко про известную рейтинговую систему


    Наиболее известной рейтинговой системой со связями является PageRank, разработанный Google. Со времени его первого релиза появилось много разных его модификаций и улучшений, связанных в основном с вопросами оптимизации основного алгоритма. Проблема циклических накруток при этом в нем решается путём уменьшения величины веса транзакции так, что транзитивные и циклические связи быстро затухают и не приводят к лавинообразному росту репутаций.

    NDX


    Команда Имхонета разработала альтернативную репутационную систему со связями, названную NDX. В настоящее время она применяется для расчета репутаций пользователей в рекомендательной системе «Имхонет». При этом API движка системы достаточно гибок и не ограничивает её применение рамками социальных сетей. Данная технология позволяет ввести неограниченное количество свойств связей так, что репутация объекта в системе может аккумулировать в себе транзакции по разным типам связей.

    Проблема циклических накруток решается не за счет уменьшения веса транзакций, а за счет применения сложных математических алгоритмов, убирающих из репутации донора ту часть, в которую вносит вклад связанный с ним объект. Это позволяет учесть вклады всех возможных доноров в репутацию объекта, не только близких по связям, но и далеко транзитивных и имеющих достаточно большую репутацию. Реализация движка NDX учитывает многопоточность и, в принципе, достаточно легко кластеризуется.

    Ссылки


    Информация в википедии о PageRank
    Дополнительно о репутационном движке Имхонета
    Техническое руководство

    Автор текста: Максим Шихалев
    Имхонет
    28.61
    Company
    Share post
    AdBlock has stolen the banner, but banners are not teeth — they will be back

    More
    Ads

    Comments 17

      +3
      появилась идея
        0
        Что-то мне это напоминает "Индекс цитирования веб-сайтов"
          +3
          Правильно!
          Именно поэтому привел информацию о PageRank Google. Ведь именно Google стал первым активно использовать индекс цитирования. И мы за основу взяли именно этот алгоритм. Доработали, докрутили и начали использовать для расчет репутаций пользователей.
          0
          Вспомнились почему-то нейрокомпьютеры
            +1
            Признаться, я так и не понял каким-же образом удалось исключить циклические накрутки. Ведь объект может вносить вклад в рейтинг донора не напрямую, а через цепочку из нескольких пользователей.
              0
              По существу, расчет учитывает все существенные цепочки передачи. То есть, если накрутка по некоторой цепочке оказалась значительная, она будет вычтена, если несущественна (в пределах точности) то проигноируется…
                0
                Я правильно понимаю: если рейтинг донора достаточно высок, то происхождение его рейтинга проверяется «глубже», чем в том случае, если бы он имел низкий рейтинг?
                  +1
                  По сути так и происходит.
                  Но расчет модели сделан на основе более общих соображений: приближенно решается некоторая система линейных уравнений…
              +3
              Вспоминаю множество разных ресурсов, где есть нечто по сути напоминающее репутацию (от обычных форумов, всякого рода fotosight`ов, хабра, до собственно поисковых машин, и т.п.). Мало где из этого выходило что-то хорошее — везде оптимизация контента на повышение репутации приводит к некачественному контенту с высокой репутацией.

              Rep hack овладевает умами и руками авторов контента. Только в одних случаях это называется гордым словом «SEO», а в других — «кармадрочинг».
                0
                Прикольно! Только в итоге разве в замкнутой системе не получается, что все 100% объектов должны «само-устраниться», т.к. их рейтинг так или иначе «накручен другими»? Либо получится, что будут учтены только те, за кого никто не голосовал, что тоже глупо.

                Мне кажется, степень передаваемой репутации должна расти при росте цепочки. Т.е. например, «кольцо» в 2 объекта — рост репутации +1% от передатчика. Цепочка из 5 объектов — уже 10%, к примеру. А если цепочка из 40 объектов — так все 100% передавать.
                  +1
                  Накрутка, это то что возвращается к тебе от тебя же.
                  Одна из задач репутационной системы – устранить именно эти накрутки.
                  По хорошему, другие не накручивают рейтинг, а честно поднимают его.

                  Зачем при росте цепочки увеличивать передачу не понимаю.
                  Чем длинее цепочка тем больше затухание, зачем иначе?
                  0
                  Простите, а вы не путаете «репутацию» с «популярностью»? Описанный вами метод это одна из методик используемая социологами при составление рейтинга популярности. Репутация это немного другая качественная единица.
                    0
                    «Репутация это немного другая качественная единица.» – а что это за единица?
                      0
                      Это оценка одного элемента другими. Не просто ссылка, а именно оценка. Она может быть положительной или отрицательной, может иметь величину и ряд других свойств. А так же в разных социальных системах имеются свои методы расчета репутации. Например у Билгейтса репутация среди пользователей Linux и Windows будет разной, хотя популярность примерно одинаковая :)
                        +1
                        В нашей системе репутация рассчитывается опираясь на положительные или отрицательные оценки различных типов транзакций между элементами. Каждая транзакция имеет свой вес. А оценка транзакции и реализует связи между пользователями. Поэтому, мы оперируем термином «Репутация».
                          +1
                          Так надо было поподробней этот аспект осветить. Это же самое важное и интересное! А то после прочтения мне лично показалось что это очередной рейтинг.
                    0
                    когда вы привяжете open id к обычному аккаунту?

                    Only users with full accounts can post comments. Log in, please.