Здравствуйте, доктор, у меня проблемы с кармой

    «90-60-90», или проезд по городу мимо гаишника


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

    Гаец с радаром


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

    Проблема 1. Весовые множители


    Кармические показатели нельзя просто складывать и вычитать, как, например, это сделано на хабре. Это достаточно очевидно: сравним двух пользователей с одинаковой кармой (скажем, = 50) — Васю и Петю. При этом у Васи этот полтинник получился вычитанием одного минуса из пятидесяти одного плюса (соотношение понравилось­­­­­ ÷ не понравилось = 50 ÷ 1). А у аксакала Пети — пятьсот плюсов и 450 минусов (то есть апологеты и антагонисты поделились примерно поровну). Мне кажется весьма прозрачным, что карма Васи должна была бы быть больше Петиной, несмотря на молодость и недавнюю регистрацию.
    Но если просто тупо нормировать карму на общее число голосов, получится не совсем то, что мы ожидаем: Вася станет в 50 раз круче Пети, за которого проголовало в 20 раз больше людей, а он умудрился остаться в плюсе. Кроме того, может быть злобные тупые тролли в количестве трехсот человек, которые минусуют вообще всех, у Пети давно побывали, а к Васе еще не заходили?

    Проблема 2. Объективные и субъективные показатели


    Да, показатели бывают и чисто объективные (под кат прошли 98% увидевших анонс), и чисто субъективные (Вася зашел к Пете в профиль и наплевал ему в карму), но все же подавляющее большинство — представляют из себя нечто среднее. Например, количество добавивших в закладки — статистически более-менее объективный показатель, а количество ­± за статью — даже на большой выборке проголосовавших ближе к субъективному. Кроме того, при расчете субъективных параметров имеет смысл учитывать склонности голосующего (если кто-то тратит весь отпущенный ресурс на минусование — его минусы должны обесцениваться, а плюсы — наоборот — дорожать, и наоборот).

    Проблема 3. Очевидные и неочевидные показатели


    Очевидным показателем я считаю, например, количество добавивших заметку в закладки. Это важный параметр, но его нельзя использовать напрямую: кто-то добавляет в закладки каждую вторую заметку, кто-то — одну в год. Поэтому имеет смысл пользоваться параметром, нормированным по склонности добавляющих к «закладыванию». Что-то вроде нормированной обратной частоты добавления закладок. Тогда Вася, который на сервисе неделю и «закладывает» первый раз, и Петя, который на сервисе год и это его пятидесятая закладка — внесут в карму одинаковый вклад, а Коля (месяц на сервисе, 30 закладок, «Синдром „Total Recall“») — в 7 раз меньший.
    К неочевидным имеет смысл отнести, скажем, «атмосферу» в комментариях (общую сумму плюсов/минусов). Например, заметка, в комментариям к которой нет ни одного минуса (или число их пренебрежимо мало́) — наверное, скорее полезна, чем холиварна. Общее количество комментариев, при этом, как мне кажется, в качестве параметра выступать не может никаким образом.

    Проблема 4. Карма vs. Рейтинг


    Есть два ортогональных показателя: карма и рейтинг. Карма — это функция субъективных неочевидных показателей; рейтинг — наоборот — функция объективных очевидных. Мне представляется очевидным, что первое годно только для чемпионатов по измерению длины детозачаточного органа, тогда как для определения «полномочий» пользователя могут использоваться лишь объективные очевидные показатели.

    Сущности


    Я смог придумать следующие сущности, по которым можно оценивать:
    • запись
    • комментарий
    • действие (± и подобные)
    • общая активность

    Все субъективные оценки должны быть нормированы как на самого пользователя (ценность оценки обратно пропорциональна балансу таких оценок у данного пользователя), так и на их общее количество.
    Теперь попробуем все это свести воедино.

    Записи и комментарии


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

    Действия и прочая активность


    Эти два параметра могут быть только измерены.

    The Summing Up


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

    Карма = НОРМall ( ∑ НОРМthisв карму) )

    Рейтинг = НОРМall ( ∑ НОРМthisза топики) ) + ⅓ × НОРМall ( ∑ НОРМthisза комментарии) ) + F ( количество внешних ссылок ) + ⅓ × F ( количество внутренних ссылок ) + ∑ НОРМthis (в закладках)

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

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

    Комментарии 28

      +3
      Была ситуация, когда за один неудачный коммент, мне слили карму в минус, при этом я не мог писать заметки (несмотря на то что очень хотел, и у всех заметок положительный рейтинг). Так и гробят мотивацию…
        +1
        Мотивация не должна быть направлена на получение положительной кармы. Это бред.

        Если есть что сказать — пиши. А уж понравится это кому-то или нет, тут уже от контингента читателей зависит. Люди, не заинтересованные в фаллометрии, просто напишут вам в чем вы не правы, ну и может минус за комментарий. В профиль вам гадить никто не будет. Будете нести откровенную и не аргументированную чушь — готовтесь.
          +2
          Вы неправильно меня поняли, под мотивацией я имел ввиду желание что-то писать здесь статьи, т.к. на момент воодушевления у тебя может быть недостаточно кармы (несмотря на то, что твой рейтинг больше сотни и все твои статьи в хорошем плюсе), после того как карма нарастает (за счет знакомых, хочу сказать, т.к. за комментарии очень редко ставят плюсы), момент бывает явно упущен и сообщество лишается потенциально интересной статьи.
            –4
            Нет кармы — напиши в Песочницу. ;-) Если уж есть воодушевление…
              +5
              В песочницу тоже нужна карма.
            0
            Скажите, вот конкретно эта запись — подходит под определение «откровенная и не аргументированная чушь»?

            Я специально поставил этот социальный эксперимент. С момента появления записи карма моя уменьшилась на 8. Мой прогноз: еще где-то -20 мне точно светит.
              0
              Это уже «работа головного мозга по ключевым словам» — карма, ай-ай, рейтинг, ай-ай. ;-)
                0
                Это социальный эксперимент по тестированию головного мозга окружающих по ключевым словам ;-)
          0
          Ясно одно, карму и рейтинг нужно «допиливать»
            0
            Ну вот я попытался внести некоторый конструктив.
              0
              Предложений вносится много, а вот желания что-то делать у владельцев мало.
                +2
                Ну правильно, это же первый принцип настоящего хакера: если все работает — отойди, сынок, и ничего не трогай!
                  0
                  Здесь не в этом дело, карма работает давно и стабильно с технической точки зрения. Проблема в ее социальной нагрузке.
            0
            Лучшая и простейшая идея, которая когда-то прозвучала в одном из «очередных постов про карму», это такая себе «дзен-карма» и состоит из одного правила:
            «поставил минус где угодно — получи минус и себе в карму.»
            И только для минусов.
              +1
              На самом деле не согласен. Иногда минусы бывают нужны.

              Куда круче было бы: «ставишь минус — высвечивается твоё имя и обязан прокомментировать».
              И все видят, кто кому минус поставил. А если ты поставил минус за то, что тебе поставили минус — это пишется отдельно.
                –1
                Иногда минусы бывают нужны.

                Я 10 лет назад взял себе за правило никогда никому нигде не ставить минусов. Даже за комментарии. И знаете, мне с тех пор как-то даже лучше дышится. И энтропия без нужды не растет.
                  0
                  Угу. Читал в прошлом топике. Минусы и плюсы — это просто инструмент высказывания мнение. Не надо их воспринимать как кару/дар господний)
                    0
                    Да ну, разумеется, никто и не воспринимает, конечно же.

                    Я имел в виду «хочешь похвалить — похвали, хочешь поругать — промолчи». Негативное мнение, высказанное вслух, затемняет ауру и засоряет карбюратор :-)
                      0
                      Негативное мнение, высказанное вслух заставляет человека задуматься и, возможно, улучшить себя!
                        0
                        Знаете, я борюсь с мирозданием по мере сил.

                        Минусы ставят все, минусы за «глупость» — поставят и так, без меня. Всегда будет больше желающих «наминусить в подъезде», чем наоборот.

                        Я не судья недалеким людям. Зато я судья людям умным — и с удовольствием всегда разделю с ними карму.

                        ;-)

                  +1
                  «На самом деле никакого самого дела нет» (с)

                  Так вот, никто минусов не отменял, они будут, только они будут действительно обоснованы и мотивированы, никто не захочет себе минус в карму просто так, потому каждый минус будет действительно значимым минусом.
                  А второе — никто не будет писать никаких пояснений, большая часть населения просто жмёт мышкой плюсики и минусики, это уже обсуждалось и голосовалось сотни раз. Про деанонимизацию оценок тоже говорили, руководство обосновало свои причины и отказалось, если не ошибаюсь. В текущей системе деанонимизация даст больше негатива, чем пользы.
                    0
                    Не совсем так.

                    Я же предлагаю в основном нормализацию по склонностям. Если у имярека только минусы из-под пера выходят — то его плюс должен быть ВАЖЕН, а минусы — так себе, по сотне за штуку. И наоборот.
                  –1
                  Да, это правильная идея.
                  0
                  Далась всем эта карма. Циферки и циферки.
                  Кстати, от «деанонимизации» голосов за топики/комменты/карму, ничего принципиально не меняется.
                    0
                    Лично мне эти циферки не дались абсолютно. Я бы никогда не вспомнил вообще, что это такое, если бы мне вдруг в один солнечный день не запретили опубликовать заметку. Вскрытие показало, что кому-то числом чуть более двадцати что-то не понравилось в моем абрисе (почему, за что — осталось невыясненным).
                    Иными словами, я подготовил текст, нажал кнопку — и был вежливо приглашен пройти в жопу.
                    При том, что схватить минус за запись/комментарий для меня — явление редчайшее.
                    Вот я и распинаюсь.
                      0
                      Да, тут есть шероховатости. И даже не с подсчетом циферок, а с порогами кары и жесткостью этих кар. На мой вкус, не стоит рубить функции постинга, голосования, etc., стоит градуировано сокращать возможность реализации этих функций. Т.е. меньше карма — больше пауза между действиями. При нуле, например, один топик, в неделю, при -30 — в месяц и пауза между комментами (что, например, уже реализовано) и так далее. Это я так, фантазирую, циферки следует обдумать. Такой подход сгладит напряженность и даст возможность, при желании, реабилитироваться. Тролли и спамеры будут быстро загнаны в глубокий минус (также нужен порог, при котором происходит автоматический бан, -200, скажем), просто оступившиеся разок-другой смогут вернуться к положительным значениям.
                        0
                        Я не случайно так напираю на «объективное очевидное» и «субъективное неочевидное» в заметке. То, что вы говорите — безусловно, тоже разумно. Но я в основном стараюсь разделить пузомерство и объективную статистику.
                        И нормализация, предложенная мной, тоже нигде раньше в подобных обсуждениях не предлагалась, а ведь ценность твоего плюса просто обязана зависеть от того, как часто и много ты ставишь плюсов.
                        В общем, я на всякий случай записал все, что у меня в голове накопилось по поводу рейтингов. Вдруг кому да пригодится :-)
                    0
                    Кармо-проблема :-( Раз в месяц возникает желание и возможность написать интересный пост, но карма не позволяет. Что делать ума не приложу, может быть посоветуете?

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

                    Самое читаемое