Наконец-то завершена разработка одной идеи, которая обитала в моей голове на протяжении последних полутора месяцев. Исправлены последние критические ошибки, доработаны различные мелочи, и я рад представить вам TwiRate.ru — концептуально новый рейтинг для Твиттера!
Начну издалека. Мысль о том, что неплохо бы создать рейтингующий каталог для русскоязычного сегмента Твиттера посещала меня давно. Действительно, это было бы очень удобно — прийти в одно место, где можно зафолловить всех интересных людей твоей тематики, не перебирая при этом гору мусора и "лытдыбров".
Проблема была одна — каким образом осуществлять ранжирование.
Упорядочивать по числу фолловеров? Нет, это никуда не годится, поскольку в ТОПе будут исключительно массфолловеры. Это очевидно и проверки не требовало.
Брать соотношение фолловеров к друзьям (followers к following)? Это ближе к теме, но все равно не то, поскольку существует нехитрая технология "отжимки" твиттер-аккаунта. Под "отжимкой" я подразумеваю следующий процесс:
- Массфолловим всех и вся;
- Удаляем тех, кто не зафолловил нас в ответ;
- Переходим к пункту 1.
Такой подход позволяет получить неплохое ратио (отношение фолловеров к друзьям), а значит довольно просто может стать предметом накрутки. Более того, насколько я знаю, уже существуют сервисы, занимающиеся подобной деятельностью (правда пока с применением ручного труда).
Ну а про число написанных твитов даже говорить не буду. Если сделать это основным параметром, наличие аккаунтов-роботов в ТОПе нам обеспечено.
Решение пришло как всегда неожиданно. Дело в том, что не так давно создатели Твиттера ввели в систему такую характеристику как listed (я называю это "членства"), то есть число списков, в которые наш аккаунт кем-то был добавлен. Проанализировав корреляцию этого параметра с популярностью довольно большой выборки аккаунтов, я пришел к выводу, что это — то что нужно.
Да, согласен, что этот параметр опять-таки неидеален, поскольку существует возможность накрутить и его. Но во-первых, сделать это сложнее, чем массфолловить, во-вторых он исчисляется как правило десятками (реже — сотнями), поэтому результат накрутки будет сразу заметен и может быть успешно пресечен. В третьих, если грамотно анализировать наряду с ним, несколько дополнительных параметров, то можно вполне добиться удовлетворительного ранжирования. Ну и не будем упускать из виду тот факт, что если накрутка этого параметра примет массовый характер, всегда можно дополнительно анализировать аккаунты, фигурирующие в параметре listed, на предмет их естественности.
Итак, ранжирование в рейтинге осуществляется по следующим параметрам (в порядке убывания значимости):
- Число членств ("listed");
- Число фолловеров ("followers");
- Отношение фолловеров к друзьям (followers/followings);
- Число твитов.
Помимо этого в алгоритм введены некоторые санкции, фильтры и бонусы, которые со временем будут усложняться и дорабатываться. Но уже сейчас рейтинг показывает достаточно адекватную картинку на той выборке, что у него имеется. Причем алгоритм успешно обрабатывает и такую ситуацию, когда аккаунт, вроде бы, массфолловерский, но тем не менее качественный. Например к такому типу относится твиттер Ленара Амирханова.
Обновление рейтинга происходит раз в сутки — в промежуток с полуночи до трех часов ночи. На текущий момент реализован тот минимум, который необходим для нормального функционирования рейтинга. Дальше будет еще интереснее, задумок по этому проекту у меня море морское. В том числе и на тему улучшения алгоритма ранжирования.
В качестве бонуса, у аккаунтов, добавленных в рейтинг, сервис будет вести историю изменения основных параметров — фолловеров, друзей, членств и рейтинга. Так что, вы всегда сможете "отмотать" историю и посмотреть на динамику развития вашего аккаунта, а также проанализировать взаимосвязь изменения параметров с вашими действиями по раскрутке. В дальнейщем планируется значительно расширение функционала сбора и анализа статистики.
Да, забыл сказать — я уже добавил ряд аккаунтов, которые читаю, в рейтинг. Так что проверяйте, может быть вы там уже присутствуете. А если нет, то не стесняйтесь добавляться, места хватит всем :). Кстати, если у вашего аккаунта довольно большое число членств (например, свыше сотни), то, пожалуйста, проявите терпение при добавлении в рейтинг. Подсчет числа членств — дело относительно небыстрое, из-за несовершенства API Твиттера.
Мне очень важно сейчас получить как можно больше отзывов, замечаний и пожеланий, поскольку сервису, несмотря на относительную завершенность, требуется свежий взгляд. Поэтому буду очень вам благодарен, если вы пропиарите этот пост у себя на блоге или в Твиттере — даже небольшое упоминание здорово поможет.
Жду ваших комментариев, друзья!
Если если вам понравилась эта статья, вы можете подписаться на материалы моего блога через
RSS
email
Twitter
ВКонтакте














простая
11 января 2010 г. ·

На мой взгляд определенно нехватает 1) Поиска по рейтингу. Как мне определить, есть я в нем, или еще нет? 2) Рубрики «Программирование». Себя я бы отнес именно в нее. 3) Возможности добавлять свои рубрики. Чтобы не напрягать администрацию :) 4) Объединив 1-3 я прихожу к выводу, что вместо рубрик можно было бы использовать фолксономию (метки) — это решило бы все бросившиеся мне в глаза проблемы.
Безумный Программист,
1) Логично, можно добавить;
2) Есть «Разработка»;
3) Думаю, что напрягут всего несколько раз, все таки число тем ограничено;)
4) Думал об этом, но хочется строгости, чтобы раз — залез в категорию все.
Гораздо эффективнее было бы, с точки зрения адекватности вашего рейтинга, опираться на ретвиты и всякие via… если у человека 50 фоловеров и его сообщение отретвитили 45 из 50.. то этот человек популярнее чем массфоловер с 5000 которого отретвитили те же 45 человек… ну и чем большей глубине ретвит — тем больше его масса. Т.е. если это ретвит ретвита — то человек вместо одного виртуального балла получает 2… и чем больше степень ретвита тем больше баллов получает автор исходного сообщения.
Ну а число твитов учитывать в рейтинге (пусть даже в какой-то сложной формуле вместе с другими параметрами) — это тупой идиотский бред — разве что этому компоненту поставить самый низкий вес в формуле…. если число ретвитов например считать с весом 1 (ну и дальше по шкале) — то для количества твитов вес будет 0,01 — т.е. 1 ретвит равняется 100 твитам
По делу — возможно, рейтинг будет очитывать и число ретвитов, равно как и число mentions (упоминаний), но это в будущем, когда текущая модель не будет адекватно справляться с ранжированием.
И да, ты угадал — числу твитов, соответствует самый низкий коэффициент. Очень низкий. Но ведь если человек активно пользуется Твиттером, надо же это записать ему в плюс, верно?
Безумный Программист, надо подумать, скорее всего делать придется:)
CPU, да субкатегории видимо ввести придется. Займусь этим сегодня, когда буду анализировать добавленные аккаунты. Спасибо!
Вот внесла себя и сразу оказалась на первых местах — вчера был небольшой флешмоб, на самом деле такого не должно быть, хотя, всё верно — список мал.
Удачи :)
P.S.Нечаянно себя засунула в категорию СЕО (@Lassska), можно ли перенести в «общетематический»?
Соответствующий раздел для меня есть, в рейтинге я уже есть — все нравится :)
Ок, обязательно перенесу ближе к вечеру.
SEOinSoul, спасибо за отзыв! Такие фидбеки made my day:)
Что можно было бы добавить: можно отвести для всех корпоративных тви-аккаунтыов (например Google_ru) одну рубрику.
Так же было бы интересно добавить облако хеш тегов по интересам (их можно брать из bio пользователей). Затем можно (но думаю это уже из области фантастики) рейтинг на картах, то есть в каком регионе кого фоловят больше и так далее. В принципе информацию можно взять из geo api и из location, и прикрутить на mash-up google maps. Но думаю пока это не самая важная задача.
И н последок, думаю стоит пропиарить этот замечательный рейтинг на других тви посвященных ресурсах. У меня есть доступ к rutwitter.com (я там частенько публикуюсь и на хорошем счету). Могу попробовать кинуть о вас весть, если это конечно не убьет их собственный рейтинг :)
Удачи в продвижении!
Теперь по алгоритму… Я думаю, следует учитывать не ОБЩЕЕ количество твитов (твиты + ответы + ретвиты), а ТОЛЬКО «ЧИСТЫЕ» твиты, либо учитывать и то и другое, но чтобы из двух твиттерян в рейтинге выше был тот, у кого больше «чистых» твитов.
ShutteR77, для корпоративных аккаунтов уже существуе отдельная рубрика «Сообщества». А в остальном — огромное спасибо, ты натолкнул меня на кучу интересных идей:) Если получится пропиарить этот рейтинг на рутвиттере буду очень благодарен!
Алексей Труфанов, пожалуйста, рад, что понравилось!
Насчет учета чистых твитов — это довольно спорный вопрос. Получается, что твит «привет всем!» будет «стоить» выше ретвита качественного материала? Кроме того, подсчитать число чистых твитов для каждого участника — это крайне ресурсоёмкая задача — некоторые аккаунты имеют свыше 20000 твитов!
А то музыкальным твиттерянам некуда региться
число ответов на твиты пользователя + число ретвитов твитов пользователя — вот довольно сильный показатель.
Я б его поставил вторым в списке автора статьи
На вершине вашего топа — массфоловер.
Видать есть дыра в расчетах логики.
Но все-таки я придерживаюсь мнения, что Козлов мас фоловер.
«» Причем алгоритм успешно обрабатывает и такую ситуацию, когда аккаунт, вроде бы, массфолловерский, но тем не менее качественный. «»
Любой рейтинг вещь субъективная.
Идеальных рейтингов не существует, накрутить можно любой показатель и листы и ретвиты и ответы.
Повторял и буду повторять: Интернет это одна сплошная накрутка…
А также «Взаимоотношения» или «Он и она», для любителей sexymonday.
DiVolk, согласен по всем пунктам. Но это не повод опускать руки и пытаться хоть как-то упорядочить этот хаос, пусть и с какой-то долей погрешности.
Conceptmama, с категориями прямо беда какая-то:) Сегодня буду продумывать этот момент.
Вообще, как мне кажется можно еще сделать фильтр на количество зафоловленных в день. Если это число больше 30 (ни кто столько не фоловит), то понижать статус пользователя. Но это думы пока.
Как я написал выше, решать тебе.
Еще в защиту нашего с podarok мения приведу такую ссылку — http://www.searchengines.ru/blog/archives/010016.html
Насчет фильтра на количество зафоловленных в день — добавлю в планировщик. Этот метод пригодиться в борьбе с накрутчиками. Спасибо!
Поиск, конечно, было бы замечательно. Еще предлагаю добавить несколько фильтров в рейтинге, например, по региону.
А вообще, спасибо за ваш труд и удачи!
Если да — то как определяете? Или все вручную?
Еслибы, определялось «качество твитов», это был бы совершенно другой разговор. Например по кол-во ретвитов на каждый твит.
Пример:
В твиттере регистрируется Путин, и он написал 3 записи и его зафоловило 10 000 и массфоловер с 40 000 + 1000 записей. Как вы думаете кто в рейтинге должен быть выше? Пусть даже этот массфоловер в твиттере уже два года.
Пример 2:
1 — пишет редко и качественно имеет 1000 фоловеров и 10 друзей
2 — пишет как дышит, пятьсотсемьдесятпять твиттов в день имеет 1000 фолловеров и 500 друзей
Кто должен быть выше?
Вывод.
На мой взгляд, либо параметр кол-во твиттов вообще исключить, либо поставить ему ничтожно малый вес 0.00001, либо попытаться подсчитывать качество твиттов.
Я бы при расчете рейтинга из категории списков все конверсейшнлисты исключал, но учитывал их количество отдельной составляющей с каким-то небольшим весом.
Кстати, для рейтингования я бы использовал не количество твитов (это монотонно возрастающая величина и она будет тянуть рейтинг вверх вне зависимости от того, продолжает пользователь активно писать или нет), а, например, количество твитов, нормированное на отношение промежутка, в который написаны последние сто (к примеру) твитов к общему времени существования аккаунта.
Получилось сумбурно, но, если будут вопросы, пиши — в Твиттер или на почту. ;-)
prmen, либо РУ твиплы, либо твиплы пишущие на русском языке.
Андрей, согласен, с категориями нужно поработать как следует. Думаю, займусь этим сегодня.
Во-первых, ранжирование. Количество списков, в которые занесён микроблог — хороший критерий, но так же подвержен накрутке (хоть и в меньшей степени), как и число читателей, ратио (об этом вы говорите в посте), а число твитов и дата создания аккаунта (критерий, предложенный в комментариях), на мой взгляд, мало о чём могут сказать. По моему мнению, ранжирование необходимо устроить примерно следующий образом (критерии в порядке убывания значимости):
- количество ссылок на микроблог
- отношение количества ретвитнутых твитов микроблога к общему количеству твитов
- количество реплаев
- количество ретвитов твитов микроблога
- количество листов, в которые включен микроблог
- отношение количества твитов микроблога, внесённых в favorites к общему количеству твитов
- количество твитов, внесённых в favorites
- количество читателей
- суммарное количество читателей всех списков, в которые включён блог
- ратио читатели/друзья
Количество ссылок на микроблог извне, ретвитов, реплаев — на мой взгляд, очень важные и характерные показатели. Также показательно то, как часто твиты попадают в favorites. Подобные параметры с трудом поддаются накрутке.
Во-вторых, пару слов о фильтрации. По поводу поиска и фильтрации по географическому признаку уже говорили, поддерживаю эти мысли. Кроме того, я думаю, что очень трудно однозначно и объективно отнести какой-либо микроблог к одной из категорий, указанных сейчас на сайте. Многие люди посвящающие большинство своих твитов какой-то определённой теме, ещё очень часто твитят и лытдыбры. Наверное, лучше было бы организовать фильтрацию личные микроблоги / микроблоги компаний. А из категорий можно было сделать неплохой каталог микроблогов, но независимый от рейтинга.
Ещё раз спасибо за сервис! Удачи.
Artёm, спасибо за подробный комментарий! Есть над чем подумать. Занес твой коммент в GTD планировщик, буду разбирать:) Моменты спорные есть, но спорные в смысле ресурсоемкости — все таки рейтинг будет довольно большой.
IMHO соотношение вообще не должно иметь высокого веса — часто оно определяется просто позицией твипла. Просто по себе: я в неделю сам сейчас фолловлю 1-2 человек, остальные приходят. Я легко могу не фолловить их в ответ, но делаю это принципиально — я когда-то об этом писал. ;-)
2 Алексей: Еще одна мысль. Если получится, стоит вычленять твиты, которые идут в виде трансляции с блогов (например, через TwitterFeed) и учитывать их с пониженным коэффициентом.
Если возможно, добавить подрубрику фото и предусмотреть /например до 3-х/ возможность указывать несколько рубрик для аккаунта
Имхо, нужно фиксить это, причем сильно. Вообще не понимаю зачем это отношение нужно использовать? Из-за того, что я по доброте душевной фолловлю тех, кто зафолловил меня — я должен упасть в рейтинге? А дядя Вася набрал тыщщу фолловеров за пару дней, отфолловился от 90% из них и он — крутой перец?
Хотя может я туплю и причина не в этом. Хотя сомневаюсь — первая двадцатка говорит сама за себя. Если я ошибаюсь, то сорри.
Почему 1,1 — при количестве фолловеров больше 2000 — есть ограниченное Твиттером соотношение — 1,2 то есть, те, кто подходят к нему — практически гарантировано массфолловеры.
Первый же нюанс (с конкретным примером): маловато категорий.
Вот, скажем, у меня, в основном, тематика — туризм и путешествия.
И куда мне её отправлять? в Спорт? Как-то не катит. Про общее — вообще молчу.
Равно как и найти кого-нибудь для себя — точно так же. А жаль.
А в целом — спасибо, интересно получилось. Желаю успехов!
Однако считаю, что поскольку Твиттер русскоязычный — то учитывать надо только русскоязычные твиты и только русскоязычных фолловеров. Иностранных рейтингов предостаточно, а нам нужен русскоязычный.
Алексей, кстати, Favorites довольно легко учитывать в Вашем рейтинге — надо просто договориться с @Din и \«тянуть\» Favorites-рейтинг с его проекта, учитывая его с каким-то весом.
В качестве примера еще раз приведу в пример аккаунт Ленара Амирханова (@slaid89). Массфолловер? Еще какой! Но читать его приятно, ведь так?
С другой стороны прав и niq — нельзя повышать рейтинг тех кто зафолловил много народу, а потом от всех отписался.
Кстати, niq, отвечая на твой вопрос — «Из-за того, что я по доброте душевной фолловлю тех, кто зафолловил меня – я должен упасть в рейтинге?». Да должен — по формальным признакам этот аккаунт будет признан массфолловерским. Согласись, что читать такую ленту будет невозможно, а следовательно твой аккаунт будет работать в режиме read-only. Впрочем, опять таки спорный вопрос — ведь на качестве публикуемых тобой материалов это вряд ли отразится.
По поводу Favorities — это очень тяжелый параметр. Тяжелый потому что в фаворитихз добавляют довольно редко и не всегда за качество твита. Иногда фаворитиз играет роль временных закладок.
Все вышенаписанное под большим ИМХО.
В списке для чтелния в TweetDeck у меня около 300 человек — это я тоже никогда не скрывал. При этом, англоязычные аккаунты я взаимно не фолловлю; от акаунтов, «мертвых» более месяца — отписываюсь. Причем здесь массфолловинг?
То же самое по поводу Теммы. Я не читаю его в Твиттере (мне это неинтересно), но подписан на RSS блога. Однако, речь не об этом. У тебя в рейтинге громадная дыра (которой неосознано воспользовался Темма), позволяющая манипулировать позицией — как только массфолловер от всех отписывается (не только массфолловер — скажем, если я отпишусь почти от всех, я потеряю максимум сотни две фолловеров) — позиция в рейтинге сразу взлетит.
То есть несмотря на возражения в комментариях выше, я по-прежнему считаю что listed _пока что_ довольно объективно свидетельствует о качестве аккаунта. По крайней мере такую корреляцию я вижу «на глаз».
Сегодня еще поэкспериментирую с алгоритмом.
Посмотри еще такую идею — для примерного учета количества conversationlist считать среднее количество твитов в день (хотя, я здесь пролетаю, например — я около двух месяцев назад резко сократился). и при показателях, скажем, до 25 в день использовать коэффициент 1, а дальше линейно понижать, например, до 0,75. И при пасчетах использовать не прямое количество списков, а нормированное на понижающий коэффициент — так ты немного «завалишь» многоговорящих, которые попадают не в стационарные списки, а во временные.
А с соотношением Following/Followers я бы сделал просто: до 0,5 — коэффициент 1, 0,5-0,8: к 0,9, 0,8-1: к 0,75, 1-1,1 — к 0,5 1,1-1,2 — к 0,25, более 1,2 — 0 (это массфолловеры 100%). Можно сделать еще специальный повышающий коэффициент для тысячников: колличество фолловеров более 2000 и соотношение меньше 0,15 — 1,25
1) активные (качественные ничего не скажешь) боты с Username, явно на продажу, получили довольно высокие рейтинги (@NewsInternet,@SEO_Russia @TwitReklama — таких больше десятка могу назвать только на вскидку). Т.е количественные показатели не всегда говорят о качестве(далеко не всегда). Как пример: Ни в коем случае не хочу сравнивать авторов этих микроблогов @SEOinSoul и @slaid89, но тви-аккаунты у них явно не равнозначные по популярности
2) Каждому микроблогу, по отдельной теме! И, да будет, он первым!
3) Ты меня извини, но @Umputun, я перенес в «роботы». :-) У тебя, что каждый может хозяйничать?
Выбор рубрики по умолчанию лучше сделать пустым, почти все регистрируются в SEO.
Походу, серьезная проблема для твоего рейтинга, им твой рейтинг в самый раз.
1) Да, алгоритм требует обкатки и доработки. На сегодняшний день, его состояние можно оценить как «удовлетворительное». Причем, что характерно, всех все равно удовлетворить алгоритмом, каким бы он ни был не получиться:) Сейчас тестирую, еще одну его вариацию, которая, думаю, станет последней и далее развиваться будет она;
2) Давай глобальнее — по отдельному рейтингу :D
3) Ты застал период, когда я отрабатывал возможность редактирования категории для аккаунта. Сейчас эта функция заблокирована.
Б-г с ними с ботами и массфолловерами. На мой взгляд, рейтинг должен заниматься не фильтрацией массолловеров и роботов, а выявлением популярных и интересных аккаунтов. Если массфолловер и бот пользуются популярностью — зачем их фильтровать?
Не знаю, почему бы просто не убрать вообще отношение фолловеров к друзьям и учитывать только русских фолловеров? Это решило бы все проблемы.
CyrilSavitsky — Больше, чем 1,1 отношение не получится — Твиттер блокирует.
В ближайшее время введу алгоритм, который будет учитывать соотношение числа фолловеров к числу listed — ме кажется это будет наиболее адекватное из допустимых решений.
Соотношение числа фолловеров к листед — это тоже неправильно. Тогда @ekozlov, @pempu, я да и многие другие вообще внизу рейтинга будут. Если вы решили делать анти-массфоловерский рейтинг, то он будет необъективен. А то, что рейтинг очень категорично относится к массфоловерам — это видно невооруженным глазом. Откуда такая ненависть, не пойму? :)
А пока просто взгляните на выборку из категории «SEO и блоггинг», я считаю что она прекрасна:)
Еще можно ввести столбец сколько человек в Твиттере — просто для информации.
И ввести возможность изменить категорию, но скорее, через почту, чтобы другие не могли это сделать.
Однако, это верно только для аккаунтов 2000+ — меньше соотношение может быть любое.
Андрей — мысли правильные, но сложнореализуемые запросами к API твиттера.
Кстати, если Ваня чатится с Маней, то ленту они засоряют только друг другу и тем, кто фолловит обоих. Больше никому.
DiVolk — а @NewsInternet, кстати нормальный пацан и зря ты его в боты записал.
Действительно не хватает «маркетологов/рекламистов» (их полно в Тви), «корпоративных блогов» (куда без них — можно сразу добавить Яндекс)
Ну и, конечно, «разработку», где я вдруг лидирую, стоит переименовать в что-то более удобное и отражающее связанность с IT. Да и вообще бы этот раздел и дизайн разделить на сферы — «программисты», «юзабилисты» и т.п. Даже если верить нашей статистике http://iskariot.ru/portrait/stats/ с уровнем доверия в 20% (на тот момент), айтишников в Тви слишком много, чтобы их сбрасывать в одну категорию. Маркетологов и рекламистов я бы тоже разделил, чтобы не смешивать странное хобби с работой.
Спасибо за дополнения, все необходимые, на мой взгляд, изменения я внес.
Внес коррекцию в алгоритм.
У этого человека рейтинг в три раза больше моего. Сравни показатели.
Сравни:
http://twirate.ru/bniq/ — это я с рейтингом 17
http://twirate.ru/DogsRussia/ — это кто-то с рейтингом 43