في هذه المقالة، يستكشف الكاتب خوارزمية Eigentrust في OpenRank، وهي تقنية جديدة تستخدم حاليًا في Metamask Snaps و Degen tips و Supercast. يعمل OpenRank كطبقة حسابية قادرة على تشغيل عدة خوارزميات للسمعة الصوتية، ويتم تقديم خوارزمية Eigentrust أولاً. يشارك الكاتب في السبب في الحاجة إلى بناء الرسوم البيانية المجتمعية، والمفاهيم الرئيسية للخوارزمية، وكيفية عملها، وكيفية إنشاء الرسوم البيانية الخاصة بك. بالإضافة إلى ذلك، يتنبأ الكاتب بمهمة Bytexplorers القادمة ويشجع القراء على الاشتراك للحصول على آخر التحديثات.
تحتوي معظم واجهات البرمجة النصية للعملات الرقمية الحالية على قائمة ترتيب بسيطة ترتب الرموز العلوية حسب حجم التداول والسيولة والسك والنقاط والتصويت وما إلى ذلك. إذا أردنا دخول تجربة استهلاكية للعملات الرقمية يمكنها التفوق على عمالقة الويب 2.0 الحالية ، فإن ما نحتاجه في تطبيقنا ليس فقط قائمة ترتيب.
OpenRank هو أحد أسس تحقيق هذا الهدف وقد تم استخدامه بالفعل في Metamask Snaps و Degen Tips و Supercast. OpenRank هو طبقة حسابية يمكنها تشغيل العديد من خوارزميات السمعة ، والأولى منها هي خوارزمية eigentrust.
في هذه المقالة، سأقدم لك خوارزمية eigentrust في OpenRank وأنا أناقش ما يلي:
أهمية بناء رسومات المجتمع ولماذا تحتاج إليها
مفهوم وعملية هذا الخوارزمية الأساسية
كيفية إنشاء صورتك الخاصة ، استشر الرسم البياني الذي قمت بإنشائه في دفتر الملاحظات Python الخاص بي.
لنبدأ!
لماذا تعمل على بناء الرسوم البيانية الموصى بها بالتعاون مع المجتمع بدلاً من الاعتماد فقط على فريق التعلم الآلي الخاص بك؟
عند بناء الخوارزميات وتدفقات الاقتراح في مجال العملات الرقمية، ستواجه قريبًا بعض مشاكل البيانات:
· يحتوي التداول على العديد من مستويات العمليات
· يمكن أن تصبح علاقات العنوان معقدة للغاية من خلال عمليات التداول المتكررة
· العنوان نفسه يحتوي على جزء من الهوية، وكل هوية ذات صلة في سياق مختلف
كل هذه النقاط الثلاثة تتطور بسرعة هائلة، دعونا نسمي هذه العناصر المتزايدة باستمرار "السياق".
لا يمكن لفريق ML الصغير الخاص بك مواكبة هذه الأفكار اللانهائية
أنت أيضا لا ترغب في أن يتعامل فريق الخلفية أو البيانات الخاص بك مع هذه المشاكل، بعد كل شيء لديهم منتج يجب بناؤه. لقد انتهت حقبة التطبيقات التي تمتلك هياكل المستخدمين والبيانات الخاصة بهم، لم يعد لديك فقط رابط بسيط، وهوية مستخدم، وعمليات إعجاب/رد/مشاركة وهوية منشور، بل يمكن أن تكون هناك عمليات تبادل، وتقسيم، وإسقاط، وتبادل، والتكديس، والتفويض، والتصويت، والسك، وما إلى ذلك. يوجد تقريبا كل يوم "عملية" جديدة، بالإضافة إلى سلاسل جديدة، وأنواع جديدة من المحافظ، وأنواع جديدة من الهويات وما إلى ذلك.
أعتقد أن صناعة العملات الرقمية ستتطور خلال العام المقبل لتشكل مجتمعًا لعلوم البيانات الرسومية مستندًا إلى بروتوكول OpenRank ومنتجاته
لقد كنت جزءا من مجتمع السحرة في Dune لسنوات أطول ورأيت المجتمع يفوق قدرات الفرق الصغيرة. لقد رأيت أيضا كل فريق التشفير صغير تقريبا ينتقل من "نعم ، يمكننا القيام بذلك بشكل مستقل باستخدام قاعدة بيانات العقدة و RDS" إلى "نحن بحاجة إلى الاستفادة من أدوات البيانات التي أنشأها المجتمع مثل The Graph و Dune". بالنسبة لي ، يعد إنشاء شمعة طويلة الفتيل لنوع معين من تدفق التوصيات ومجموعات الاستعلام والمخططات المعدلة من قبل المجتمع مشكلة مماثلة. نحتاج إلى البدء في جمع واختبار الرسوم البيانية التي توفر تدفقات توصية في كل تطبيق ، من عميل Farcaster إلى مستكشف البلوكتشين.
مفهوم تدفق الإحالة وهمي وسيتم التخلص منه. يصبح المستخدم مقرر المحتوى
في مجال العملات الرقمية، لا يرغب المستخدمون فقط في جلب شبكتهم الاجتماعية إلى تطبيقات مختلفة، بل يرغبون أيضًا في جلب السياق الذي يختبئ وراء هذه الشبكات. إذا كنت مهتمًا بشكل نشط بمجتمع Farcaster/degen، فأود أن يتم توصيتي بفعاليات هذا المجتمع على Zora أو Roam.xyz أو OnceUpon، كما أود أيضًا أن يكون بإمكاني تبديل هذه الاقتراحات إلى سياق مشاركتي في مجتمع آخر، مثل مجموعة artblocks. سيكون المستقبل عصر اكتشاف المستخدمين واختيار تغذيتهم الخاصة، بدلاً من القيود على وظائف مجموعة أو قناة واحدة على منصة واحدة.
كيف يعمل خوارزمية Eigentrust في OpenRank؟
الخوارزمية Eigentrust مشابهة لـ PageRank، حيث تقوم بتصنيف العقدات في شبكة الرسوم البيانية. الاختلاف يكمن في تركيزها على التقاط العلاقات النقطية المعقدة كموزعة ثقة. تم تصميمها في الأصل لتخصيص درجات الثقة في شبكة مشاركة الملفات. في مجال العملات الرقمية، يمكنك تصور استخدامها لتمثيل المحافظ المثالية أو التعرف على العقود الذكية الموثوقة.
هذه هي صيغة Eigentrust:
يوجد اثنان من المدخلات الرئيسية أعلاه: العقدة المعتمدة مسبقًا والرسم البياني للثقة المحلي. "P" هو العقدة المعتمدة مسبقًا الخاصة بك ، و "S" هو الرسم البياني للثقة المحلي الخاص بك.
· الثقة المحلية (localtrust): هذا هو قياس تفاعلك مع القيمة بين عقدتين عندما يقوم عقدة "i" بنقل قيمة معينة إلى عقدة "j". يمكن أن يكون هذا نقل الرموز الرقمية، أو الإثبات، أو الرد على التصويت/الإعجاب وما إلى ذلك.
· الثقة المسبقة: هذا هو اختيارك لـ "البذور" من العقدة التي يجب أن تكون أكثر قيمة في الشبكة.
· 「c」: هذا الثابت (بين 0 و 1) هو الوزن لقيمة الثقة بين الرسم البياني المحلي الكلي وبذور الثقة المسبقة. الرسم البياني التفاعلي عادة ما يكون له توزيع قوة القوى ، لذلك فإن وزن الثقة المسبقة العالية يساعد في تنظيم توزيع قيم التصنيف النهائي.
إذا كانت هذه الصيغ الرياضية غير واضحة، يمكن تشبيهها بشبكات التواصل الاجتماعي مثل تويتر، حيث تكون القوة الإيجابية مثل المتابعة والإعجاب والردود عادة ما تتركز في عدد قليل من الأشخاص، مما يؤدي إلى ديناميات القوى العظمى. من خلال تعيين مجموعة من الأشخاص ذوي النفوذ واختيار قيمة ثابتة "c" تكون 0.5 أو أعلى، فإن الأشخاص الذين يتفاعلون مع هؤلاء الأشخاص الموثوق بهم سيحصلون بشكل فعلي على نصف قيمة هذا النفوذ. هذه هي الطريقة لتحقيق توازن أكثر تناسبا وتوزيعا لنقاط الثقة في الشبكة.
ما علاقة ذلك باختيار أي سياق وإنشاء أي تيار توصيات؟
فرضًا أنك ترغب في ترتيب 10000 اقتراح تمويل في تدفق توصيات معين. بناءً على مجموعة من التفاعلات الانتخابية (الثقة المحلية) ومجموعة من المصوتين الموثوق بهم التي اخترتها بنفسك (الثقة المسبقة)، يمكنك تصنيف جميع المصوتين ومقدمي الاقتراحات بحسب القيمة. يمكنك اختيار أول 10 مصوتين تفويضت لهم الإدلاء بالتصويت في عدة DAO لتكون مصوّتينك الموثوق بهم المسبقين. ستقوم Eigentrust بتشغيل استنادًا إلى هاتين الإدخالين وتزويدك بقائمة أكبر من المصوتين استنادًا إلى الترتيب في الرسم البياني بناءً على الثقة الموروثة من العقدة الموثوقة مسبقًا.
هكذا، يمكنك الآن استخدام قائمة القيمة هذه لتوازن مقترحات الحوكمة الفورية من أجل الحصول على تدفق توصيات أكثر تخصيصًا!
هذا قد يكون ما زال مجردًا للغاية، لذا سأقوم في القسم التالي بشرح أمثلة محددة من الشفرة. يرجى تذكر، يقوم OpenRank بمعالجة حسابات وتخزين الرسوم البيانية Eigentrust هذه ويوصيك باستخدام تدفق الاقتراحات الناتج. كل ما عليك فعله هو تقرير الثقة المسبقة والثقة المحلية المدخلة.
كيفية استخدام OpenRank في بناء الرسم البياني Eigentrust؟
الهدف النهائي
في هذا المثال، أرغب في توفير تدفق الاشتراك في العقد الموصى به وفقًا لمحفظة المستخدم الأساسية (Farcaster/base) (Farcaster هو تطبيق مشابه لتويتر). يكون الإخراج مجرد قائمة تحتوي على معرف وقيمة، حيث يتم ربط كل معرف في رسمي بمعرف مستخدم Farcaster (fid).
مصدر البيانات
بعد إنشاء الرسم البياني للترتيب ، قمنا بتوليد هذا التدفق التوصيفي تلقائيًا بناءً على العقود الرئيسية التي تمت في الأسبوع الماضي.
مصدر البيانات
يمكنك الاطلاع على لوحة القيادة للاطلاع على تيارات الإحالة الأخرى التي تم إنشاؤها من الرسم البياني ، مثل صك NFT ، وتداول الرموز DEX ، ونشاط قناة Farcaster.
تنفيذ الشفرة
الآن رأيت الهدف، دعونا نتحدث عن كيفية إنشائي لهذا الرسم البياني.
يمكن العثور على جميع رموز هذا المثال في دفتر hex.tech ، وإذا كنت تفضل تشغيلها محليًا ، فيمكنك أيضًا استخدام دفتر jupyter.
أولاً، قمت بإنشاء اثنين من الاستعلامات للثقة المسبقة والثقة المحلية لدينا:
الاستعلام الأول هو "العقدة المعتمدة مسبقا" الخاصة بنا. يستند هذا الاستعلام إلى التفاعلات المستلمة (الإعجاب، إعادة النشر، الرد) والتي تخرج من قناة /base الخاصة بالمستخدمين الرئيسيين. صيغتي هي (الإعجاب + 3 إعادات نشر + 10 ردود). سنقوم بأخذ أول 100 معرف من هذا الاستعلام كعقدنا المعتمد مسبقا.
مصدر البيانات
الاستعلام الثاني هو لتتبع التفاعل داخل السلسلة بين العقد، باستخدام عنوان الارتباط للمستخدم في القناة /base. بما أن تيار الاشتراك سيوصي بالعمليات داخل السلسلة، فإنني أرغب في التأكد من اختيار رسم بياني للتفاعل يعتمد على حجم التفاعل داخل السلسلة. تتبع القيمة الدولارية للتحويلات بين العقد هي وسيط عام جيد - أقوم بتتبع تحويلات الستيبلكوين و ETH على شبكات Optimism و Base و ETH.
مصدر البيانات
تحليل الرسم البياني المدخل واختبار رسم البيانات Eigentrust المخرج
لدينا الآن العقد الثقة المسبقة والرسم البياني الموثوق به محليًا، وسنلقي نظرة على بعض البيانات الإحصائية الملخصة. في قناة /base، قام 65,755 مستخدمًا بتحويل العملة المشفرة إلى الآخرين في هذه القناة، ويمكن الوصول إلى 19٪ من الرسم البياني من خلال عقد الثقة المسبقة لدينا (أي العقدات المتصلة). قد يختلف هذا النسبة اعتمادًا على مدى ثقة البيانات المحلية للرسم البياني بدرجة سايبيل. قد يكون تحويل العملة المشفرة إشارة قوية، ولكنه قد يكون أيضًا المسح الضار، لذلك ليس من المستغرب أن يكون معظم الرسم البياني غير متصل.
بعد التأكد من أن حجم البيانات المدخلة والاتصال معقول، يمكننا تشغيل وحفظ الرسم البياني Eigentrust الخاص بنا. قمت بحفظ رسمي البياني ك id«base_transfer_50» — يمكنك رؤية أنه يتطلب فقط 10 أسطر من الرمز لتدريب الرسم البياني. يمكن اعتبار OpenRank SDK نموذج الرسم البياني المشفر على أنها scikit-learn.
هل تذكرت الثابت "c" في الصيغة السابقة؟ دعنا نقوم ببحث الشبكة لقيم مختلفة من c (أنا أشير إليها بالألفا) وأحجام مختلفة من بذور الثقة لنرى أي منها يمكن أن يعطينا أعلى درجة ثقة لوغاريتمية وأعلى معدل تغطية:
هناك العديد من التوازنات ولا يوجد قيمة مثالية للاختيار. إذا أردت التوصية بشيء له تنوع كبير، فإن التنظيم العالي والتغطية العالية هو خيار جيد، ولكن للتصويت الحكمي عالي المخاطر، قد ترغب في الواقع في زيادة تركيز الثقة. يمكنك الاعتماد على حدسك هنا.
من هنا ، يمكننا إدراج القيم في استعلام الاشتراك الذي يرتبط بلوحة القيادة في Dune ، للحصول على تدفق تفاعل العقد للمستخدمين المعتمدين في قناة /base. يساعدنا هذا الإخراج التوصية الذي هو ذو طابع شخصي في ربط المؤشرات العامة السابقة بتوقعاتنا لجودة الإخراج الموصى به.
انتهى الأمر! يمكنك استخدام واجهة برمجة التطبيقات هذه (Dune API) على الفور لتوفير الطاقة لأي تطبيق.
تعلم بناء الرسم البياني لثقة إيجنتروست الخاصة بك OpenRank
هل أنت مستعد للبدء بالعمل بنفسك؟ يمكنك فورك حاسوبي المحمول وتجربته بنفسك، وجميع الروابط المطلوبة مذكورة فيما يلي:
·OpenRank الوثائق
·مستودع Python SDK
·دفتر بيثون
·الشاشة الرئيسية للتغذية دون
سأقوم بتنفيذ مهمة Bytexplorers في الشهر القادم، حيث سنتنافس في إنشاء أفضل رسوم بيانية للاشتراكات المناسبة لتطبيقات التشفير الرائدة.
قد تحتوي هذه الصفحة على محتوى من جهات خارجية، يتم تقديمه لأغراض إعلامية فقط (وليس كإقرارات/ضمانات)، ولا ينبغي اعتباره موافقة على آرائه من قبل Gate، ولا بمثابة نصيحة مالية أو مهنية. انظر إلى إخلاء المسؤولية للحصول على التفاصيل.
نقاش مفصل حول خوارزمية Eigentrust في OpenRank: كيفية بناء طبقة الحساب الاجتماعي؟
المؤلف: أندرو هونغ
تجميع: ليدي فينجر ، بلوكبيتس
محرر:
في هذه المقالة، يستكشف الكاتب خوارزمية Eigentrust في OpenRank، وهي تقنية جديدة تستخدم حاليًا في Metamask Snaps و Degen tips و Supercast. يعمل OpenRank كطبقة حسابية قادرة على تشغيل عدة خوارزميات للسمعة الصوتية، ويتم تقديم خوارزمية Eigentrust أولاً. يشارك الكاتب في السبب في الحاجة إلى بناء الرسوم البيانية المجتمعية، والمفاهيم الرئيسية للخوارزمية، وكيفية عملها، وكيفية إنشاء الرسوم البيانية الخاصة بك. بالإضافة إلى ذلك، يتنبأ الكاتب بمهمة Bytexplorers القادمة ويشجع القراء على الاشتراك للحصول على آخر التحديثات.
تحتوي معظم واجهات البرمجة النصية للعملات الرقمية الحالية على قائمة ترتيب بسيطة ترتب الرموز العلوية حسب حجم التداول والسيولة والسك والنقاط والتصويت وما إلى ذلك. إذا أردنا دخول تجربة استهلاكية للعملات الرقمية يمكنها التفوق على عمالقة الويب 2.0 الحالية ، فإن ما نحتاجه في تطبيقنا ليس فقط قائمة ترتيب.
OpenRank هو أحد أسس تحقيق هذا الهدف وقد تم استخدامه بالفعل في Metamask Snaps و Degen Tips و Supercast. OpenRank هو طبقة حسابية يمكنها تشغيل العديد من خوارزميات السمعة ، والأولى منها هي خوارزمية eigentrust.
في هذه المقالة، سأقدم لك خوارزمية eigentrust في OpenRank وأنا أناقش ما يلي:
أهمية بناء رسومات المجتمع ولماذا تحتاج إليها
مفهوم وعملية هذا الخوارزمية الأساسية
كيفية إنشاء صورتك الخاصة ، استشر الرسم البياني الذي قمت بإنشائه في دفتر الملاحظات Python الخاص بي.
لنبدأ!
لماذا تعمل على بناء الرسوم البيانية الموصى بها بالتعاون مع المجتمع بدلاً من الاعتماد فقط على فريق التعلم الآلي الخاص بك؟
عند بناء الخوارزميات وتدفقات الاقتراح في مجال العملات الرقمية، ستواجه قريبًا بعض مشاكل البيانات:
· يحتوي التداول على العديد من مستويات العمليات
· يمكن أن تصبح علاقات العنوان معقدة للغاية من خلال عمليات التداول المتكررة
· العنوان نفسه يحتوي على جزء من الهوية، وكل هوية ذات صلة في سياق مختلف
كل هذه النقاط الثلاثة تتطور بسرعة هائلة، دعونا نسمي هذه العناصر المتزايدة باستمرار "السياق".
لا يمكن لفريق ML الصغير الخاص بك مواكبة هذه الأفكار اللانهائية
أنت أيضا لا ترغب في أن يتعامل فريق الخلفية أو البيانات الخاص بك مع هذه المشاكل، بعد كل شيء لديهم منتج يجب بناؤه. لقد انتهت حقبة التطبيقات التي تمتلك هياكل المستخدمين والبيانات الخاصة بهم، لم يعد لديك فقط رابط بسيط، وهوية مستخدم، وعمليات إعجاب/رد/مشاركة وهوية منشور، بل يمكن أن تكون هناك عمليات تبادل، وتقسيم، وإسقاط، وتبادل، والتكديس، والتفويض، والتصويت، والسك، وما إلى ذلك. يوجد تقريبا كل يوم "عملية" جديدة، بالإضافة إلى سلاسل جديدة، وأنواع جديدة من المحافظ، وأنواع جديدة من الهويات وما إلى ذلك.
أعتقد أن صناعة العملات الرقمية ستتطور خلال العام المقبل لتشكل مجتمعًا لعلوم البيانات الرسومية مستندًا إلى بروتوكول OpenRank ومنتجاته
لقد كنت جزءا من مجتمع السحرة في Dune لسنوات أطول ورأيت المجتمع يفوق قدرات الفرق الصغيرة. لقد رأيت أيضا كل فريق التشفير صغير تقريبا ينتقل من "نعم ، يمكننا القيام بذلك بشكل مستقل باستخدام قاعدة بيانات العقدة و RDS" إلى "نحن بحاجة إلى الاستفادة من أدوات البيانات التي أنشأها المجتمع مثل The Graph و Dune". بالنسبة لي ، يعد إنشاء شمعة طويلة الفتيل لنوع معين من تدفق التوصيات ومجموعات الاستعلام والمخططات المعدلة من قبل المجتمع مشكلة مماثلة. نحتاج إلى البدء في جمع واختبار الرسوم البيانية التي توفر تدفقات توصية في كل تطبيق ، من عميل Farcaster إلى مستكشف البلوكتشين.
مفهوم تدفق الإحالة وهمي وسيتم التخلص منه. يصبح المستخدم مقرر المحتوى
في مجال العملات الرقمية، لا يرغب المستخدمون فقط في جلب شبكتهم الاجتماعية إلى تطبيقات مختلفة، بل يرغبون أيضًا في جلب السياق الذي يختبئ وراء هذه الشبكات. إذا كنت مهتمًا بشكل نشط بمجتمع Farcaster/degen، فأود أن يتم توصيتي بفعاليات هذا المجتمع على Zora أو Roam.xyz أو OnceUpon، كما أود أيضًا أن يكون بإمكاني تبديل هذه الاقتراحات إلى سياق مشاركتي في مجتمع آخر، مثل مجموعة artblocks. سيكون المستقبل عصر اكتشاف المستخدمين واختيار تغذيتهم الخاصة، بدلاً من القيود على وظائف مجموعة أو قناة واحدة على منصة واحدة.
كيف يعمل خوارزمية Eigentrust في OpenRank؟
الخوارزمية Eigentrust مشابهة لـ PageRank، حيث تقوم بتصنيف العقدات في شبكة الرسوم البيانية. الاختلاف يكمن في تركيزها على التقاط العلاقات النقطية المعقدة كموزعة ثقة. تم تصميمها في الأصل لتخصيص درجات الثقة في شبكة مشاركة الملفات. في مجال العملات الرقمية، يمكنك تصور استخدامها لتمثيل المحافظ المثالية أو التعرف على العقود الذكية الموثوقة.
هذه هي صيغة Eigentrust:
يوجد اثنان من المدخلات الرئيسية أعلاه: العقدة المعتمدة مسبقًا والرسم البياني للثقة المحلي. "P" هو العقدة المعتمدة مسبقًا الخاصة بك ، و "S" هو الرسم البياني للثقة المحلي الخاص بك.
· الثقة المحلية (localtrust): هذا هو قياس تفاعلك مع القيمة بين عقدتين عندما يقوم عقدة "i" بنقل قيمة معينة إلى عقدة "j". يمكن أن يكون هذا نقل الرموز الرقمية، أو الإثبات، أو الرد على التصويت/الإعجاب وما إلى ذلك.
· الثقة المسبقة: هذا هو اختيارك لـ "البذور" من العقدة التي يجب أن تكون أكثر قيمة في الشبكة.
· 「c」: هذا الثابت (بين 0 و 1) هو الوزن لقيمة الثقة بين الرسم البياني المحلي الكلي وبذور الثقة المسبقة. الرسم البياني التفاعلي عادة ما يكون له توزيع قوة القوى ، لذلك فإن وزن الثقة المسبقة العالية يساعد في تنظيم توزيع قيم التصنيف النهائي.
إذا كانت هذه الصيغ الرياضية غير واضحة، يمكن تشبيهها بشبكات التواصل الاجتماعي مثل تويتر، حيث تكون القوة الإيجابية مثل المتابعة والإعجاب والردود عادة ما تتركز في عدد قليل من الأشخاص، مما يؤدي إلى ديناميات القوى العظمى. من خلال تعيين مجموعة من الأشخاص ذوي النفوذ واختيار قيمة ثابتة "c" تكون 0.5 أو أعلى، فإن الأشخاص الذين يتفاعلون مع هؤلاء الأشخاص الموثوق بهم سيحصلون بشكل فعلي على نصف قيمة هذا النفوذ. هذه هي الطريقة لتحقيق توازن أكثر تناسبا وتوزيعا لنقاط الثقة في الشبكة.
ما علاقة ذلك باختيار أي سياق وإنشاء أي تيار توصيات؟
فرضًا أنك ترغب في ترتيب 10000 اقتراح تمويل في تدفق توصيات معين. بناءً على مجموعة من التفاعلات الانتخابية (الثقة المحلية) ومجموعة من المصوتين الموثوق بهم التي اخترتها بنفسك (الثقة المسبقة)، يمكنك تصنيف جميع المصوتين ومقدمي الاقتراحات بحسب القيمة. يمكنك اختيار أول 10 مصوتين تفويضت لهم الإدلاء بالتصويت في عدة DAO لتكون مصوّتينك الموثوق بهم المسبقين. ستقوم Eigentrust بتشغيل استنادًا إلى هاتين الإدخالين وتزويدك بقائمة أكبر من المصوتين استنادًا إلى الترتيب في الرسم البياني بناءً على الثقة الموروثة من العقدة الموثوقة مسبقًا.
هكذا، يمكنك الآن استخدام قائمة القيمة هذه لتوازن مقترحات الحوكمة الفورية من أجل الحصول على تدفق توصيات أكثر تخصيصًا!
هذا قد يكون ما زال مجردًا للغاية، لذا سأقوم في القسم التالي بشرح أمثلة محددة من الشفرة. يرجى تذكر، يقوم OpenRank بمعالجة حسابات وتخزين الرسوم البيانية Eigentrust هذه ويوصيك باستخدام تدفق الاقتراحات الناتج. كل ما عليك فعله هو تقرير الثقة المسبقة والثقة المحلية المدخلة.
كيفية استخدام OpenRank في بناء الرسم البياني Eigentrust؟
الهدف النهائي
في هذا المثال، أرغب في توفير تدفق الاشتراك في العقد الموصى به وفقًا لمحفظة المستخدم الأساسية (Farcaster/base) (Farcaster هو تطبيق مشابه لتويتر). يكون الإخراج مجرد قائمة تحتوي على معرف وقيمة، حيث يتم ربط كل معرف في رسمي بمعرف مستخدم Farcaster (fid).
مصدر البيانات
بعد إنشاء الرسم البياني للترتيب ، قمنا بتوليد هذا التدفق التوصيفي تلقائيًا بناءً على العقود الرئيسية التي تمت في الأسبوع الماضي.
مصدر البيانات
يمكنك الاطلاع على لوحة القيادة للاطلاع على تيارات الإحالة الأخرى التي تم إنشاؤها من الرسم البياني ، مثل صك NFT ، وتداول الرموز DEX ، ونشاط قناة Farcaster.
تنفيذ الشفرة
الآن رأيت الهدف، دعونا نتحدث عن كيفية إنشائي لهذا الرسم البياني.
يمكن العثور على جميع رموز هذا المثال في دفتر hex.tech ، وإذا كنت تفضل تشغيلها محليًا ، فيمكنك أيضًا استخدام دفتر jupyter.
أولاً، قمت بإنشاء اثنين من الاستعلامات للثقة المسبقة والثقة المحلية لدينا:
الاستعلام الأول هو "العقدة المعتمدة مسبقا" الخاصة بنا. يستند هذا الاستعلام إلى التفاعلات المستلمة (الإعجاب، إعادة النشر، الرد) والتي تخرج من قناة /base الخاصة بالمستخدمين الرئيسيين. صيغتي هي (الإعجاب + 3 إعادات نشر + 10 ردود). سنقوم بأخذ أول 100 معرف من هذا الاستعلام كعقدنا المعتمد مسبقا.
مصدر البيانات
الاستعلام الثاني هو لتتبع التفاعل داخل السلسلة بين العقد، باستخدام عنوان الارتباط للمستخدم في القناة /base. بما أن تيار الاشتراك سيوصي بالعمليات داخل السلسلة، فإنني أرغب في التأكد من اختيار رسم بياني للتفاعل يعتمد على حجم التفاعل داخل السلسلة. تتبع القيمة الدولارية للتحويلات بين العقد هي وسيط عام جيد - أقوم بتتبع تحويلات الستيبلكوين و ETH على شبكات Optimism و Base و ETH.
مصدر البيانات
تحليل الرسم البياني المدخل واختبار رسم البيانات Eigentrust المخرج
لدينا الآن العقد الثقة المسبقة والرسم البياني الموثوق به محليًا، وسنلقي نظرة على بعض البيانات الإحصائية الملخصة. في قناة /base، قام 65,755 مستخدمًا بتحويل العملة المشفرة إلى الآخرين في هذه القناة، ويمكن الوصول إلى 19٪ من الرسم البياني من خلال عقد الثقة المسبقة لدينا (أي العقدات المتصلة). قد يختلف هذا النسبة اعتمادًا على مدى ثقة البيانات المحلية للرسم البياني بدرجة سايبيل. قد يكون تحويل العملة المشفرة إشارة قوية، ولكنه قد يكون أيضًا المسح الضار، لذلك ليس من المستغرب أن يكون معظم الرسم البياني غير متصل.
بعد التأكد من أن حجم البيانات المدخلة والاتصال معقول، يمكننا تشغيل وحفظ الرسم البياني Eigentrust الخاص بنا. قمت بحفظ رسمي البياني ك id«base_transfer_50» — يمكنك رؤية أنه يتطلب فقط 10 أسطر من الرمز لتدريب الرسم البياني. يمكن اعتبار OpenRank SDK نموذج الرسم البياني المشفر على أنها scikit-learn.
هل تذكرت الثابت "c" في الصيغة السابقة؟ دعنا نقوم ببحث الشبكة لقيم مختلفة من c (أنا أشير إليها بالألفا) وأحجام مختلفة من بذور الثقة لنرى أي منها يمكن أن يعطينا أعلى درجة ثقة لوغاريتمية وأعلى معدل تغطية:
هناك العديد من التوازنات ولا يوجد قيمة مثالية للاختيار. إذا أردت التوصية بشيء له تنوع كبير، فإن التنظيم العالي والتغطية العالية هو خيار جيد، ولكن للتصويت الحكمي عالي المخاطر، قد ترغب في الواقع في زيادة تركيز الثقة. يمكنك الاعتماد على حدسك هنا.
من هنا ، يمكننا إدراج القيم في استعلام الاشتراك الذي يرتبط بلوحة القيادة في Dune ، للحصول على تدفق تفاعل العقد للمستخدمين المعتمدين في قناة /base. يساعدنا هذا الإخراج التوصية الذي هو ذو طابع شخصي في ربط المؤشرات العامة السابقة بتوقعاتنا لجودة الإخراج الموصى به.
انتهى الأمر! يمكنك استخدام واجهة برمجة التطبيقات هذه (Dune API) على الفور لتوفير الطاقة لأي تطبيق.
تعلم بناء الرسم البياني لثقة إيجنتروست الخاصة بك OpenRank
هل أنت مستعد للبدء بالعمل بنفسك؟ يمكنك فورك حاسوبي المحمول وتجربته بنفسك، وجميع الروابط المطلوبة مذكورة فيما يلي:
·OpenRank الوثائق
·مستودع Python SDK
·دفتر بيثون
·الشاشة الرئيسية للتغذية دون
سأقوم بتنفيذ مهمة Bytexplorers في الشهر القادم، حيث سنتنافس في إنشاء أفضل رسوم بيانية للاشتراكات المناسبة لتطبيقات التشفير الرائدة.