Autor: Andrew Hong
Zusammengestellt von: Ladyfinger, BlockBeats
Anmerkung der Redaktion:
In diesem Artikel befasst sich der Autor eingehend mit dem Eigentrust-Algorithmus von OpenRank, einer neuen Technologie, die derzeit von Metamask Snaps, Degen Tips und Supercast verwendet wird. OpenRank kann als Rechenschicht mehrere Reputationsgraphalgorithmen ausführen. Der erste eingeführte ist der Eigentrust-Algorithmus. Die Autoren erklären, warum Sie von der Community erstellte Diagramme benötigen, welche Schlüsselkonzepte der Algorithmus hat, wie er funktioniert und wie Sie Ihre eigenen Diagramme erstellen. Darüber hinaus gibt der Autor eine Vorschau auf kommende Bytexexplorers-Aufgaben und ermutigt die Leser, sich anzumelden, um die neuesten Updates zu erhalten.
Die meisten heutigen Kryptowährungs-Frontends bestehen aus einfachen Bestenlisten mit Top-Coins, sortiert nach Handelsvolumen, Liquidität, Prägung, Punkten, Stimmen usw. Wenn wir in ein Kryptowährungserlebnis der Verbraucherklasse einsteigen wollen, das die heutigen Web2-Giganten übertreffen kann, brauchen wir mehr als nur Bestenlisten in unseren Apps.
OpenRank ist einer der Eckpfeiler, der uns dabei hilft, und wird bereits von Metamask Snaps, Degen Tips und Supercast verwendet. OpenRank ist eine Rechenschicht, die eine Reihe von Reputationsgraph-Algorithmen ausführen kann, von denen der erste der Eigentrust-Algorithmus ist.
In diesem Artikel stelle ich Ihnen den Eigentrust-Algorithmus von OpenRank vor und bespreche Folgendes:
Die Bedeutung von Community-Building-Diagrammen und warum Sie sie brauchen
Schlüsselkonzepte des Algorithmus und seine Funktionsweise
Informationen zum Erstellen eines eigenen Diagramms finden Sie in einem Diagramm, das ich in einem Python-Notizbuch erstellt habe
Lasst uns beginnen!
Warum sollten Sie mit der Community ein Empfehlungsdiagramm erstellen, anstatt sich nur auf Ihr eigenes Team für maschinelles Lernen zu verlassen?
Beim Aufbau von Algorithmen und Empfehlungsflüssen in Kryptowährungen stößt man schnell auf einige Datenprobleme:
· Transaktionen enthalten viele Ebenen von Operationen
· Beziehungen zwischen Adressen können durch mehrere Transaktionen unendlich komplex werden
· Die Adresse selbst enthält Teilidentitäten, die jeweils in unterschiedlichen Kontexten relevant sind
Alle drei oben genannten entwickeln sich exponentiell. Nennen wir diese wachsenden Elemente „Kontext“.
Ihr kleines ML-Team kann mit dem nie endenden Ideenfluss nicht Schritt halten
Sie möchten auch nicht, dass sich Ihre Backend- oder Data-Engineering-Teams mit diesen Problemen befassen, schließlich müssen sie ein Produkt entwickeln. Die Zeiten, in denen Apps über Benutzer und Benutzerdatenstrukturen verfügten, sind vorbei. Sie haben nicht mehr nur einen einfachen Link, eine Benutzer-ID, eine Like-/Antwort-/Teilen-ID und eine Beitrags-ID, sondern Sie können auch Rücknahmen, Teilungen, Drops, Swaps, Einsätze, Delegation usw. durchführen. Abstimmung, Prägung und mehr. Fast täglich tauchen neue „Operationen“ auf, ebenso neue Ketten, neue Arten von Geldbörsen, neue Arten von Identitäten und so weiter.
Ich glaube, dass die Kryptowährungsbranche im Laufe des nächsten Jahres eine Graph-Data-Science-Community aufbauen wird, die auf dem OpenRank-Protokoll und den OpenRank-Produkten basiert
Ich bin seit vielen Jahren Teil der Zauberer-Community von Dune und habe gesehen, wie mächtig die Community sein kann, die über die Fähigkeiten eines kleinen Teams hinausgeht. Ich habe auch gesehen, wie fast jedes kleine Krypto-Team von „Ja, wir können das unabhängig mit einem Knoten und einer RDS-Datenbank machen“ zu „Wir müssen von der Community erstellte Datentools wie The Graph und Dune nutzen“ übergingen. Für mich ist das Erstellen einer Kombination aus Abfragen und Diagrammen, die auf eine bestimmte Art von Empfehlungsfluss und Community abgestimmt sind, ein ähnliches Problem. Wir müssen damit beginnen, Diagramme zu sammeln und zu testen, die einen Empfehlungsfluss für jede Anwendung bereitstellen können, von Farcaster-Clients bis hin zu Block-Explorern.
Das Konzept eines Empfehlungsflusses ist mimetisch und wird abgeschafft. Benutzer werden zu Kuratoren von Inhalten
Im Kryptowährungsbereich möchten Benutzer nicht nur ihre sozialen Diagramme in verschiedene Anwendungen einbringen, sondern auch den in diesen Diagrammen verborgenen Kontext. Wenn ich der /degen-Community auf Farcaster aktiv verfolge, würde ich gerne auf Zora, Roam.xyz oder OnceUpon für die Aktivitäten dieser Community empfohlen werden und diese Empfehlung gerne in den Kontext einer anderen umwandeln können Community, in der ich Mitglied bin, z. B. Artblocks-Sammler. Die Zukunft wird eine sein, in der Benutzer ihre eigenen Feeds entdecken und auswählen, anstatt auf eine bestimmte Gruppen- oder Kanalfunktion auf einer einzigen Plattform beschränkt zu sein.
Wie funktioniert der Eigentrust-Algorithmus von OpenRank?
Der Eigentrust-Algorithmus ähnelt PageRank darin, dass er Knoten in einem Graphennetzwerk in eine Rangfolge bringt. Der Unterschied besteht darin, dass der Schwerpunkt auf der Erfassung komplexer Peer-to-Peer-Beziehungen als Vertrauensverteilung liegt. Es wurde ursprünglich für die Zuweisung von Vertrauenswerten in Filesharing-Netzwerken entwickelt. In der Welt der Kryptowährungen könnte man sich vorstellen, damit hochwertige Governance-Prinzipien zu vertreten oder vertrauenswürdige Smart Contracts zu identifizieren.
Hier ist die Formel von Eigentrust:
Oben gibt es zwei wichtige Eingaben: vorab vertrauenswürdige Knoten und das lokale Vertrauensdiagramm. „P“ ist Ihr Pre-Trust und „S“ Ihr lokaler Trust.
· Lokales Vertrauen: Dies ist Ihr Maß für die Interaktion zwischen zwei Knoten, wenn Knoten „i“ einen Wert an Knoten „j“ übergibt. Dies können Token-Übertragungen, Bescheinigungen, Abstimmungsantworten/Likes usw. sein.
· Pretrust: Dies ist Ihre Wahl des „Seeds“ für Knoten im Netzwerk, die vertrauenswürdiger sein sollen.
· „c“: Diese Konstante (zwischen 0 und 1) ist das Gewicht des Vertrauenswerts zwischen dem gesamten lokalen Vertrauensdiagramm und dem Vor-Vertrauens-Seed. Interaktionsdiagramme weisen typischerweise eine Potenzgesetzverteilung auf, sodass höhere Gewichte vor der Vertrauensstellung dazu beitragen, die Verteilung der endgültigen Rangfolgewerte zu normalisieren.
Wenn die Mathematik nicht leicht zu verstehen ist, stellen Sie sie sich als Analogie zu einem sozialen Diagramm wie Twitter vor, wo Einfluss wie Follower, Likes, Antworten usw. oft auf eine kleine Anzahl von Personen konzentriert ist, was zu einem Machtgesetz führt dynamisch. Indem Sie eine Gruppe einflussreicher Personen zusammenstellen und einen konstanten „c“-Wert von 0,5 oder höher wählen, erben die Personen, mit denen diese vertrauenswürdigen Personen interagieren, tatsächlich die Hälfte des Wertes dieses Einflusses. Auf diese Weise können Sie die Vertrauenswerte gleichmäßiger im gesamten Netzwerk verteilen.
Wie hängt das mit der Auswahl eines Kontexts und der Erstellung eines Empfehlungsflusses zusammen?
Nehmen wir an, Sie möchten 10.000 Fördervorschläge in einem Empfehlungsstrom sortieren. Sie können alle Wähler und Antragsteller anhand einer Reihe von Abstimmungsinteraktionen (lokales Vertrauen) und einer Reihe vertrauenswürdiger Wähler Ihrer Wahl (Vorvertrauen) bewerten. Sie können Ihre Vor-Konfidenz-Wähler auswählen, indem Sie die Top-10-Wähler auswählen, an die Sie Stimmen über mehrere DAOs delegiert haben. Eigentrust wird auf der Grundlage dieser beiden Eingaben ausgeführt und stellt Ihnen eine größere Wählerliste zur Verfügung, die in der Grafik auf der Grundlage des von den vorab vertrauenswürdigen Knoten geerbten Vertrauens geordnet wird.
Auf diese Weise können Sie diese Rangliste jetzt verwenden, um Governance-Vorschläge in Echtzeit abzuwägen und so einen personalisierteren Empfehlungsfluss zu erzielen!
Das ist vielleicht noch zu abstrakt, daher erkläre ich es im nächsten Abschnitt anhand konkreter Codebeispiele. Beachten Sie, dass OpenRank die Berechnung und Speicherung dieser Eigentrust-Diagramme übernimmt und empfiehlt, dass Sie den Ausgabeempfehlungsstream verwenden können. Sie müssen sich lediglich für Pre-Trust- und Local-Trust-Eingaben entscheiden.
Wie erstellt man mit OpenRank ein Eigentrust-Diagramm?
ultimatives Ziel
In diesem Beispiel möchte ich einen Abonnement-Stream mit empfohlenen Verträgen basierend auf dem Benutzer-Wallet von Farcaster/base bereitstellen (Farcaster ist eine Twitter-ähnliche Anwendung). Die Ausgabe ist lediglich eine Liste von IDs und Werten. In meinem Diagramm ist jede ID einer Farcaster-Benutzer-ID (fid) zugeordnet.
Datenquellen
Nach der Erstellung des Ranking-Diagramms haben wir diesen Empfehlungsfluss basierend auf ihren wichtigsten Vertragsinteraktionen in der letzten Woche generiert:
Datenquellen
Sie können das Dashboard anzeigen, um andere Empfehlungsflüsse zu sehen, die aus diesem Diagramm erstellt wurden, z. B. NFT-Minting, DEX-Token-Handel und Farcaster-Kanalaktivität.
Code
Nachdem Sie nun die Ziele gesehen haben, sprechen wir darüber, wie ich diese Rangliste erstellt habe.
Den gesamten Code für dieses Beispiel finden Sie im hex.tech-Notebook. Wenn Sie es lieber lokal ausführen möchten, können Sie auch das Jupyter-Notebook verwenden.
Zuerst habe ich zwei Abfragen für unseren Pre-Trust und unseren Local Trust erstellt:
Die erste Abfrage ist unser „vorab vertrauenswürdiger Knoten“. Diese Abfrage gibt die Top-Benutzer im Kanal basierend auf den erhaltenen Interaktionen (Likes, Retweets, Antworten) aus. Meine Formel lautet (Likes + 3 Retweets + 10 Antworten). Wir werden die ersten 100 IDs dieser Abfrage als unsere Vertrauensknoten verwenden.
Datenquellen
Die zweite Abfrage wird verwendet, um On-Chain-Interaktionen zwischen Knoten zu verfolgen, indem die Linkadresse des Benutzers im /base-Kanal verwendet wird. Da der Abonnementablauf Aktionen in der Kette empfiehlt, möchte ich sicherstellen, dass ein Interaktionsdiagramm basierend auf der Anzahl der Interaktionen in der Kette ausgewählt wird. Die Verwendung des zwischen Knoten übertragenen USD-Werts ist ein guter allgemeiner Proxy – ich habe Stablecoin- und ETH-Transfers auf Optimism, Base und dem Ethereum-Mainnet verfolgt.
Datenquellen
Analysieren Sie das Eingabediagramm und testen Sie das Ausgabe-Eigentrust-Diagramm
Nachdem wir nun die vorab vertrauenswürdigen Knoten und das lokale Vertrauensdiagramm haben, schauen wir uns einige zusammenfassende Statistiken an. 65.755 Benutzer im /base-Kanal haben Token an andere im Kanal übertragen, und 19 % des Diagramms (d. h. verbundene Knoten) können von unseren vorab vertrauenswürdigen Knoten aus durchlaufen werden. Dieser Prozentsatz kann variieren, je nachdem, wie hoch die lokalen Vertrauensdaten des Diagramms sind. Token-Transfers können hohe Signale sein, sie können aber auch Brush-Trades sein, daher ist es nicht verwunderlich, dass der Großteil der Grafik unzusammenhängend ist.
Nachdem wir bestätigt haben, dass die Größe der Eingabedaten und Verbindungen angemessen ist, können wir unser Eigentrust-Diagramm ausführen und speichern. Ich habe mein Diagramm mit der ID „base_transfer_50“ gespeichert – Sie können unten sehen, dass zum Trainieren des Diagramms nur 10 Codezeilen erforderlich sind. Stellen Sie sich OpenRank SDK als das Scikit-Learn von Kryptografiemodellen vor.
Erinnern Sie sich an die Konstante „c“ in der vorherigen Formel? Lassen Sie uns eine Rastersuche nach verschiedenen Werten von c (ich nenne es Alpha) und unterschiedlichen Pre-Trust-Seed-Größen durchführen, um zu sehen, welches uns den logarithmisch normalsten Vertrauenswert und die höchste Abdeckung bietet:
Hier gibt es viele Kompromisse und es gibt nicht das beste Preis-Leistungs-Verhältnis, aus dem man wählen kann. Eine hohe Regularisierung und Abdeckung ist eine gute Wahl, wenn Sie eine starke Diversität bei den Empfehlungen wünschen, aber für Governance-Abstimmungen mit hohem Risiko wünschen Sie sich möglicherweise tatsächlich eine höhere Vertrauenskonzentration. Nutzen Sie hier Ihre Intuition.
Von hier aus können wir Werte in die Abonnementabfrage einfügen, die am Anfang des Dune-Dashboards verlinkt ist, um einen Fluss von Vertragsinteraktionen für vertrauenswürdige Benutzer im /base-Kanal zu erhalten. Diese subjektive Empfehlungsausgabe hilft uns, die vorherigen gemeinsamen Metriken besser mit unserer erwarteten Intuition über die Qualität der Empfehlungsausgabe zu verbinden.
geschafft! Sie können diese Dune-API verwenden, um jede Ihrer Apps sofort zu betreiben.
Erfahren Sie, wie Sie Ihr eigenes OpenRank-Eigentrust-Diagramm erstellen
Sind Sie bereit, die Sache selbst in die Hand zu nehmen? Sie können mein Notizbuch teilen und es selbst ausprobieren. Alle benötigten Links finden Sie unten:
·OpenRank-Dokumente
·Python SDK-Repository
·Python-Notizbuch
·Dashboard für Dünen-Feeds
Ich werde im Laufe des nächsten Monats eine Bytexexplorers-Mission durchführen, bei der wir gegeneinander antreten, um das beste Abonnementflussdiagramm für die besten Krypto-Apps zu erstellen.