Глубокое изучение алгоритма Eigentrust OpenRank: как построить социальный вычислительный уровень?

Автор: Эндрю Хонг

Компиляция: Ladyfinger, BlockBeats

Редактор примечания:

В этой статье автор подробно рассматривает алгоритм Eigentrust в рамках OpenRank, который является новой технологией, используемой в настоящее время Metamask Snaps, Degen tips и Supercast. OpenRank, как вычислительный уровень, может выполнять несколько алгоритмов графа репутации, сначала рассматривается алгоритм eigentrust. Автор делится, почему нужно построение графа сообщества, ключевые концепции алгоритма, как он работает и как создать свой собственный граф. Кроме того, автор анонсирует предстоящую задачу Bytexplorers и призывает читателей подписаться, чтобы быть в курсе последних событий.

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

В настоящее время большинство фронтендов криптовалют включают простые топ-листы токенов, отсортированные по объему торгов, ликвидности, майнингу, баллам, голосам и т. д. Только топ-листы недостаточно для нашего приложения, если мы хотим создать потребительский опыт криптовалют, способный превзойти существующих гигантов веб-2.

OpenRank - один из угловых камней, помогающий нам достичь этой цели, уже используется Metamask Snaps, Degen Tips и Supercast. OpenRank - это вычислительный слой, способный работать с множеством алгоритмов репутации, среди которых первым идет алгоритм eigentrust.

В этой статье я расскажу вам об алгоритме eigentrust OpenRank и обсудим следующее:

Важность построения графа сообщества и почему вам это нужно

Ключевые концепции и принцип работы этого алгоритма

Как создать свою собственную диаграмму, смотрите пример диаграммы, которую я сделал в своей записной книжке Python

Давайте начнем!

Почему вам следует строить рекомендательную сеть вместе с сообществом, а не только полагаться на свою собственную команду машинного обучения?

При построении алгоритмов и потоков рекомендаций в криптовалюте вы скоро столкнетесь с некоторыми проблемами данных:

· Торговля включает в себя множество уровней операций

Отношения между адресами могут стать бесконечно сложными через многократные транзакции.

· Адрес сам по себе содержит часть идентичности, каждая идентичность в разных контекстах связана.

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

Ваша небольшая команда ML не в состоянии следить за этой бесконечной фантазией

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

Я верю, что в следующем году в индустрии криптовалют разовьется сообщество графовых данных на основе протокола и продуктов OpenRank.

Я уже несколько лет участвую в сообществе wizard в Dune и видел мощь сообщества, превышающую возможности небольших команд. Я также видел, как практически каждая небольшая криптокоманда переходит от ‘да, мы можем справиться с этим самостоятельно с помощью узла и базы данных RDS’ к ‘нам нужно использовать инструменты данных, созданные сообществом, такие как The Graph и Dune’. Для меня создание комбинации запросов и графиков для рекомендаций и настройки сообщества для определенного типа потоков является аналогичной проблемой. Нам нужно начать сбор и тестирование графиков, способных предоставлять потоки рекомендаций в каждом приложении, от клиента Farcaster до проводника блоков.

Концепция рекомендательного потока устареет, а пользователи станут кураторами контента

В сфере криптовалют пользователи не только хотят взять свою социальную сеть с собой в различные приложения, но и хотят взять с собой контекст, скрытый в этих сетях. Если я активно следую сообществу /degen на Farcaster, я хотел бы видеть рекомендации этого сообщества на Zora, Roam.xyz или OnceUpon, и я хотел бы иметь возможность переключиться на контекст другого сообщества, в котором я участвую, например, коллекционирование на artblocks. Будущее наступит, когда пользователи смогут самостоятельно находить и выбирать свою ленту новостей, а не ограничиваться функциями отдельной платформы или канала.

Как работает алгоритм Eigentrust в OpenRank?

Алгоритм Eigentrust, подобно PageRank, ранжирует узлы в графовой сети. Отличие заключается в том, что он акцентирует внимание на сложных взаимосвязях между узлами в качестве распределения доверия. Изначально он был создан для назначения оценочных баллов доверия в сети обмена файлами. В области криптовалюты вы можете представить его использование в качестве посредника высококачественных управляющих лиц или для идентификации надежных смарт-контрактов.

Ниже приведена формула Eigentrust:

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

Наверху есть два ключевых ввода: предварительно доверенный узел и локальный доверенный граф. “P” - это ваш предварительный доверенный, “S” - ваш локальный доверенный.

· Локальное доверие (localtrust): это измерение взаимодействия между двумя узлами, когда узел “i” передает определенную ценность узлу “j”. Это может быть передача токенов, доказательства, ответы на голосование/лайки и т. д.

· Предварительное доверие (pretrust): это выбор ‘сидов’ в сети, которым вы должны больше доверять.

· “c”: Эта константа (от 0 до 1) представляет собой весовое значение доверия между общей локальной графикой доверия и предварительно доверенным семеном. Интерактивные графики обычно имеют степенное распределение, поэтому более высокий вес предварительного доверия помогает нормализовать распределение конечных значений рейтинга.

Если эти математические формулы трудно понять, их можно сравнить с социальной графикой, такой как Twitter, где влияние, такое как подписчики, лайки, ответы и т. д., обычно сосредоточено на небольшом количестве людей, что приводит к степенному динамическому распределению. Путем назначения группы влиятельных личностей и выбора константы «с» со значением 0,5 или выше, на самом деле, люди, с которыми эти доверенные лица взаимодействуют, унаследуют половину этой ценности влияния. Это является способом более равномерного балансирования и распределения оценок доверия в сети.

Как это связано с выбором любого контекста и созданием любого рекомендуемого потока?

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

Таким образом, вы можете использовать этот список стоимости рейтинга для оценки предложений по реальному времени управления и получения более персонализированного потока рекомендаций!

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

Как использовать OpenRank для построения графа Eigentrust?

Конечная цель

В этом примере я хочу предложить ленту подписки на рекомендуемый контракт на основе кошелька пользователя Farcaster/base (Farcaster - приложение, подобное Twitter). Выход представляет собой список с идентификаторами и значениями, в моей схеме каждый идентификатор связан с идентификатором пользователя Farcaster (fid).

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

Источник данных

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

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

Источник данных

Вы можете просмотреть панель инструментов, чтобы увидеть другие рекомендуемые потоки, созданные из этой диаграммы, такие как майнтинг NFT, торговля токенами DEX и активности канала Farcaster.

Реализация кода

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

Весь код этого примера можно найти в блокноте hex.tech, если вы предпочитаете запускать его локально, также можно использовать блокнот jupyter.

Сначала я создал два запроса для нашего предварительного доверия и локального доверия:

Первый запрос - это наши «предварительно доверенные узлы». Этот запрос выводит топ-пользователей из / base-канала на основе взаимодействия (лайки, перепосты, ответы), и моя формула (лайки + 3 перепоста + 10 ответов). Мы возьмем первые 100 идентификаторов из этого запроса в качестве наших доверенных узлов.

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

Источник данных

Второй запрос предназначен для отслеживания взаимодействия в блокчейне между узлами с использованием адреса подключенного пользователя в канале /base. Поскольку подписка потока будет рекомендовать операции в блокчейне, я хочу убедиться, что выбранная взаимодействующая диаграмма основана на объеме взаимодействия в блокчейне. Использование долларовой стоимости, передаваемой между узлами, является хорошим универсальным показателем - я отслеживаю стабильные монеты и трансферы ETH на Optimism, Base и основной сети Ethereum.

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

Источник данных

Анализ входного графа и тестирование выходного графа Eigentrust

Теперь у нас есть предварительно доверенные узлы и локальные доверенные графы - давайте посмотрим на некоторые обобщающие статистические данные. В канале /base 65 755 пользователей передали токены другим пользователям в этом канале, а с помощью наших предварительно доверенных узлов можно пройти 19% графа (т. е. связанных узлов). Этот процент может отличаться в зависимости от степени симуляции графа локальными доверенными данными Sybil. Передача токенов может быть высокосигнальной, но также может быть и злонамеренной, поэтому неудивительно, что большая часть графа не связана.

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

После проверки размера входных данных и разумности соединения мы можем запустить и сохранить нашу собственную карту Eigentrust. Я сохраню свою карту как id «base_transfer_50» - вы можете видеть ниже, что обучение карты занимает всего 10 строк кода. OpenRank SDK можно рассматривать как scikit-learn для моделей шифрования графов.

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

Еще помните константу «c» из предыдущей формулы? Давайте проведем сеточный поиск для разных значений c (я называю их альфа) и разных размеров начального семени доверия, чтобы узнать, какие из них дают нам наибольшие оценки доверия в логарифмической шкале и наибольшее покрытие:

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

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

Из этого места мы можем вставить значение в подписанный запрос, связанный с панелью инструментов Dune, чтобы получить поток взаимодействий с контрактами, осуществляемый доверенными пользователями в канале /base. Этот субъективный рекомендуемый вывод помогает нам лучше связать предыдущие общие показатели с нашими ожиданиями качества рекомендуемого вывода.

深入探讨OpenRank的Eigentrust算法:如何构建社交计算层?

Готово! Вы можете сразу же использовать этот API Dune для вашего любого приложения.

Изучение построения собственного графа OpenRank Eigentrust

Вы готовы взяться за это сами? Вы можете форкнуть мой репозиторий и попробовать сами, все необходимые ссылки ниже:

·OpenRank документы

репозиторий Python SDK

· Записная книжка Python

·Панель управления кормовой основы Dune

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

DEGEN7,23%
Посмотреть Оригинал
На этой странице может содержаться сторонний контент, который предоставляется исключительно в информационных целях (не в качестве заявлений/гарантий) и не должен рассматриваться как поддержка взглядов компании Gate или как финансовый или профессиональный совет. Подробности смотрите в разделе «Отказ от ответственности» .
  • Награда
  • 1
  • Репост
  • Поделиться
комментарий
0/400
LookForwardTo~vip
· 2024-06-24 02:47
Монета 100x 📈
Посмотреть ОригиналОтветить0
  • Закрепить