QR 코드를 스캔하여 다운로드하세요.
BTC $70,740.69 -2.62%
ETH $2,076.78 -2.43%
BNB $645.12 -1.41%
XRP $1.42 -4.56%
SOL $81.67 -4.53%
TRX $0.2795 -0.47%
DOGE $0.0974 -3.83%
ADA $0.2735 -4.22%
BCH $457.98 -0.19%
LINK $8.64 -2.97%
HYPE $28.98 -1.81%
AAVE $122.61 -3.42%
SUI $0.9138 -6.63%
XLM $0.1605 -4.62%
ZEC $260.31 -8.86%
BTC $70,740.69 -2.62%
ETH $2,076.78 -2.43%
BNB $645.12 -1.41%
XRP $1.42 -4.56%
SOL $81.67 -4.53%
TRX $0.2795 -0.47%
DOGE $0.0974 -3.83%
ADA $0.2735 -4.22%
BCH $457.98 -0.19%
LINK $8.64 -2.97%
HYPE $28.98 -1.81%
AAVE $122.61 -3.42%
SUI $0.9138 -6.63%
XLM $0.1605 -4.62%
ZEC $260.31 -8.86%

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 컴퓨팅 레이어를 어떻게 구축할 것인가?

Summary: Eigentrust 알고리즘은 PageRank와 유사하며, 그래프 네트워크에서 노드를 순위 매깁니다. 다른 점은 신뢰의 분포로서 복잡한 점대점 관계를 포착하는 데 중점을 둡니다.
블록비츠
2024-06-24 12:43:42
수집
Eigentrust 알고리즘은 PageRank와 유사하며, 그래프 네트워크에서 노드를 순위 매깁니다. 다른 점은 신뢰의 분포로서 복잡한 점대점 관계를 포착하는 데 중점을 둡니다.

원제목:《OpenRank: Powering Apps with Contextual and Personalized Graph Feeds》

저자:Andrew Hong

편집:Ladyfinger,BlockBeats

편집자의 말:

이 글에서 저자는 OpenRank의 Eigentrust 알고리즘에 대해 깊이 탐구합니다. 이는 현재 Metamask Snaps, Degen tips 및 Supercast에서 사용되고 있는 새로운 기술입니다. OpenRank는 다양한 평판 그래프 알고리즘을 실행할 수 있는 계산 레이어로, 처음 소개되는 것은 eigentrust 알고리즘입니다. 저자는 커뮤니티가 구축한 그래프의 필요성, 알고리즘의 핵심 개념, 작동 방식 및 자신의 그래프를 만드는 방법을 공유합니다. 또한, 저자는 곧 열릴 Bytexplorers 미션을 예고하며 독자들에게 최신 소식을 구독할 것을 권장합니다.

오늘날의 암호화폐 프론트엔드는 대부분 거래량, 유동성, 발행, 포인트, 투표 등에 따라 정렬된 간단한 순위표를 포함하고 있습니다. 우리가 현재 Web2 거대 기업을 초월하는 소비자 암호화폐 경험에 진입하고자 한다면, 우리의 애플리케이션에는 단순한 순위표 이상의 것이 필요합니다.

OpenRank는 우리가 이 목표를 달성하는 데 도움을 주는 기반 중 하나로, 이미 Metamask Snaps, Degen Tips 및 Supercast에서 사용되고 있습니다. OpenRank는 여러 평판 그래프 알고리즘을 실행할 수 있는 계산 레이어로, 그 중 첫 번째는 eigentrust 알고리즘입니다.

이 글에서는 OpenRank의 eigentrust 알고리즘을 소개하고 다음 내용을 논의하겠습니다:

커뮤니티 구축 그래프의 중요성과 그 필요성

알고리즘의 핵심 개념 및 작동 원리

자신의 그래프를 만드는 방법, 제가 Python 노트북에서 만든 그래프를 참고하여

시작해봅시다!

왜 커뮤니티와 함께 추천 그래프를 구축해야 할까요? 단순히 자신의 머신러닝 팀에 의존하지 말고요.

암호화폐에서 알고리즘과 추천 흐름을 구축할 때, 당신은 곧 몇 가지 데이터 문제에 직면하게 됩니다:

· 거래는 여러 계층의 작업을 포함합니다.

· 주소 간의 관계는 여러 거래를 통해 무한히 복잡해질 수 있습니다.

· 주소 자체는 일부 정체성을 포함하며, 각 정체성은 다른 맥락에서 관련이 있습니다.

위의 세 가지 사항은 기하급수적으로 발전하고 있으며, 우리는 이러한 증가하는 요소를 "context"라고 부르겠습니다.

당신의 소규모 ML 팀은 이러한 끝없는 창의력을 따라잡을 수 없습니다.

당신은 또한 당신의 백엔드나 데이터 엔지니어링 팀이 이러한 문제를 처리하기를 원하지 않을 것입니다. 결국 그들은 제품을 구축해야 하니까요. 애플리케이션이 사용자와 사용자 데이터 구조를 소유하는 시대는 끝났습니다. 이제 당신은 단순한 링크, 사용자 ID, 좋아요/답글/공유 및 게시물 ID만을 소유하는 것이 아니라, 교환, 분할, 드롭, 교환, 스테이킹, 위임, 투표, 발행 등을 가질 수 있습니다. 거의 매일 새로운 "작업"이 등장하고 있으며, 새로운 체인, 새로운 유형의 지갑, 새로운 유형의 정체성 등이 생겨나고 있습니다.

나는 앞으로 1년 동안 암호화폐 산업이 OpenRank 프로토콜과 제품을 기반으로 한 그래프 데이터 과학 커뮤니티를 발전시킬 것이라고 믿습니다.

나는 Dune의 wizard 커뮤니티에서 여러 해를 보냈으며, 소규모 팀의 능력을 초월하는 커뮤니티의 힘을 목격했습니다. 나는 거의 모든 소규모 암호화 팀이 "네, 우리는 하나의 노드와 RDS 데이터베이스로 이 일을 독립적으로 할 수 있습니다"에서 "우리는 The Graph와 Dune과 같은 커뮤니티 구축 데이터 도구를 활용해야 합니다"로 변화하는 것을 보았습니다. 나에게 특정 유형의 추천 흐름과 커뮤니티 조정 쿼리 및 차트를 만드는 것은 유사한 문제입니다. 우리는 Farcaster 클라이언트에서 블록 탐색기에 이르기까지 각 애플리케이션에서 추천 흐름을 제공할 수 있는 차트를 수집하고 테스트하기 시작해야 합니다.

추천 흐름의 개념은 모방적이며, 곧 사라질 것입니다. 사용자는 콘텐츠의 큐레이터가 됩니다.

암호화폐 분야에서 사용자는 자신의 소셜 그래프를 다양한 애플리케이션으로 가져가고 싶어 할 뿐만 아니라, 이러한 그래프에 숨겨진 맥락도 함께 가져가고 싶어 합니다. 만약 내가 Farcaster에서 /degen 커뮤니티를 적극적으로 팔로우하고 있다면, Zora, Roam.xyz 또는 OnceUpon에서 해당 커뮤니티의 활동을 추천받고 싶습니다. 그리고 나는 그 추천을 내가 참여하는 다른 커뮤니티의 맥락으로 전환할 수 있기를 바랍니다. 예를 들어 artblocks 수집가와 같은 맥락입니다. 미래는 사용자가 자신의 피드를 발견하고 선택하는 시대가 될 것이며, 단일 플랫폼의 특정 그룹이나 채널 기능에 국한되지 않을 것입니다.

OpenRank의 Eigentrust 알고리즘은 어떻게 작동하나요?

Eigentrust 알고리즘은 PageRank와 유사하며, 그래프 네트워크에서 노드를 순위 매깁니다. 다른 점은 신뢰의 분포로서 복잡한 점대점 관계를 포착하는 데 중점을 둡니다. 이는 처음에 파일 공유 네트워크에서 신뢰 점수를 할당하기 위해 구축되었습니다. 암호화폐 분야에서는 이를 사용하여 고품질의 거버넌스 위임자를 대리하거나 신뢰할 수 있는 스마트 계약을 식별하는 데 사용할 수 있습니다.

다음은 Eigentrust의 공식입니다:

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

위에는 두 가지 주요 입력이 있습니다: 사전 신뢰 노드와 지역 신뢰 그래프. "P"는 당신의 사전 신뢰이고, "S"는 당신의 지역 신뢰입니다.

· 지역 신뢰(localtrust): 이는 노드 "i"가 노드 "j"에게 어떤 가치를 전달할 때 두 노드 간의 상호작용을 측정한 것입니다. 이는 토큰 전송, 증명, 투표 응답/좋아요 등을 포함할 수 있습니다.

· 사전 신뢰(pretrust): 이는 당신이 선택한 네트워크에서 더 신뢰할 수 있는 노드의 "씨앗" 선택입니다.

· "c": 이 상수(0과 1 사이)는 전체 지역 신뢰 그래프와 사전 신뢰 씨앗 간의 신뢰 값의 가중치입니다. 상호작용 그래프는 일반적으로 멱법칙 분포를 가지므로, 높은 사전 신뢰 가중치는 최종 순위 값의 분포를 정규화하는 데 도움이 됩니다.

이러한 수학 공식을 이해하기 어렵다면, Twitter와 같은 소셜 그래프를 비유로 생각해볼 수 있습니다. 팔로워, 좋아요, 답글 등의 영향력은 일반적으로 소수의 사람에게 집중되어 멱법칙 동태를 초래합니다. 영향력 있는 개인 집합을 설정하고 상수 "c" 값을 0.5 이상으로 선택하면, 실제로 이 신뢰할 수 있는 개인이 상호작용하는 사람들은 그 영향력의 절반 가치를 상속받게 됩니다. 이것이 네트워크에서 신뢰 점수를 보다 고르게 균형 잡고 분포시키는 방법입니다.

이것이 어떤 맥락을 선택하고 어떤 추천 흐름을 생성하는 것과 무슨 관계가 있나요?

당신이 10000개의 자금 제안을 추천 흐름에서 정렬하고 싶다고 가정해봅시다. 상호작용(지역 신뢰) 집합과 당신이 선택한 신뢰할 수 있는 투표자 집합(사전 신뢰)을 기반으로, 모든 투표자와 제안자에 대한 가치 순위를 매길 수 있습니다. 여러 DAO에서 위임 투표를 하는 상위 10명의 투표자를 선택하여 사전 신뢰 투표자를 선택할 수 있습니다. Eigentrust는 이 두 입력을 기반으로 실행되며, 사전 신뢰 노드에서 상속된 신뢰에 따라 그래프에서 순위를 매깁니다.

이제 이 순위의 가치 목록을 사용하여 실시간 거버넌스 제안을 평가하여 보다 개인화된 추천 흐름을 얻을 수 있습니다!

이것이 여전히 너무 추상적일 수 있으므로, 다음 섹션에서는 구체적인 코드 예제를 통해 설명하겠습니다. OpenRank는 이러한 Eigentrust 그래프의 계산 및 저장을 처리하며, 출력된 추천 흐름을 사용할 수 있도록 추천합니다. 당신이 해야 할 일은 사전 신뢰 및 지역 신뢰 입력을 결정하는 것입니다.

OpenRank로 Eigentrust 그래프를 구축하는 방법은?

최종 목표

이 예제에서는 Farcaster/base 사용자 지갑을 기반으로 추천 계약의 구독 흐름을 제공하고자 합니다(Farcaster는 Twitter와 유사한 애플리케이션입니다). 출력은 id와 값이 포함된 목록일 뿐이며, 내 그래프에서 각 id는 Farcaster 사용자 id(fid)와 관련이 있습니다.

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

https://dune.com/ilemi/openrank

순위 그래프를 생성한 후, 우리는 그들이 지난주에 주요 계약 상호작용을 기반으로 이 추천 흐름을 생성했습니다:

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

https://dune.com/ilemi/openrank

당신은 대시보드를 확인할 수 있습니다, 해당 그래프에서 생성된 다른 추천 흐름, 예를 들어 NFT 발행, DEX 토큰 거래 및 Farcaster 채널 활동을 볼 수 있습니다.

코드 구현

이제 목표를 보았으니, 이 순위 그래프를 어떻게 생성했는지 이야기해봅시다.

이 예제의 모든 코드는 hex.tech 노트북에서 찾을 수 있으며, 로컬에서 실행하고 싶다면 jupyter notebook을 사용할 수 있습니다.

먼저, 우리는 각각의 사전 신뢰와 지역 신뢰를 위해 두 개의 쿼리를 생성했습니다:

첫 번째 쿼리는 우리의 "사전 신뢰 노드"입니다. 이 쿼리는 받은 상호작용(좋아요, 리트윗, 답글)을 기반으로 /base 채널의 상위 사용자들을 출력하며, 내 공식은 (좋아요 + 3 리트윗 + 10 답글)입니다. 우리는 이 쿼리에서 상위 100개의 id를 우리의 신뢰 노드로 가져올 것입니다.

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

https://dune.com/queries/3756241

두 번째 쿼리는 노드 간의 온체인 상호작용을 추적하는 데 사용되며, /base 채널의 사용자의 링크 주소를 사용합니다. 추천 흐름이 온체인 작업을 추천할 것이므로, 나는 온체인 상호작용 양을 기반으로 하는 상호작용 그래프를 선택하고 싶었습니다. 노드 간의 달러 가치 이동을 사용하는 것은 좋은 일반적인 대리인입니다. ------ 나는 Optimism, Base 및 이더리움 메인넷에서의 스테이블코인 및 ETH 이동을 추적했습니다.

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

https://dune.com/queries/3756692

입력 그래프 분석 및 출력 Eigentrust 그래프 테스트

이제 우리는 사전 신뢰 노드와 지역 신뢰 그래프를 가지고 있으며, 몇 가지 요약 통계 데이터를 살펴보겠습니다. /base 채널에는 65,755명의 사용자가 해당 채널의 다른 사람에게 토큰을 전송했으며, 우리의 사전 신뢰 노드에서 19%의 그래프(즉, 연결된 노드)를 탐색할 수 있습니다. 이 백분율은 그래프의 지역 신뢰 데이터의 Sybil 정도에 따라 달라질 수 있습니다. 토큰 이동은 높은 신호일 수 있지만, 또한 조작일 수 있으므로 그래프의 대부분이 연결되지 않은 것도 놀랍지 않습니다.

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

입력 데이터의 크기와 연결이 합리적임을 확인한 후, 우리는 우리의 Eigentrust 그래프를 실행하고 저장할 수 있습니다. 나는 내 그래프를 id "basetransfer50"으로 저장했습니다. ------ 당신은 아래에서 단 10줄의 코드로 그래프를 훈련할 수 있습니다. OpenRank SDK는 암호 그래프 모델의 scikit-learn으로 볼 수 있습니다.

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

앞서 공식에서 언급한 상수 "c"를 기억하나요? 이제 우리는 다양한 c 값(내가 alpha라고 부르는)과 다양한 사전 신뢰 씨앗 크기에 대해 그리드 검색을 수행하여 어떤 것이 가장 로그 정규 신뢰 점수와 가장 높은 커버리지를 제공하는지 살펴보겠습니다:

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

여기에는 많은 트레이드오프가 있으며, 선택할 수 있는 최적의 값은 없습니다. 추천에 강한 다양성이 필요하다면, 높은 정규화와 커버리지는 좋은 선택이지만, 고위험 거버넌스 투표의 경우 신뢰 집중도가 더 높기를 원할 수 있습니다. 여기서는 당신의 직관을 사용할 수 있습니다.

여기서 우리는 Dune의 대시보드 시작 시 링크된 구독 쿼리에 값을 삽입하여 /base 채널에서 신뢰할 수 있는 사용자의 계약 상호작용 흐름을 얻을 수 있습니다. 이러한 주관적인 추천 출력은 이전의 일반 지표와 추천 출력 품질에 대한 우리의 기대 직관을 더 잘 연결하는 데 도움을 줍니다.

OpenRank의 Eigentrust 알고리즘 심층 탐구: 소셜 계산 레이어 구축 방법

완료되었습니다! 당신은 즉시 이 Dune API를 사용하여 당신의 모든 애플리케이션에 동력을 제공할 수 있습니다.

자신의 OpenRank Eigentrust 그래프를 구축하는 방법 배우기

직접 해볼 준비가 되셨나요? 내 노트북을 포크하여 직접 시도해볼 수 있으며, 필요한 모든 링크는 다음과 같습니다:

·OpenRank Docs

·Python SDK repo

·Python Notebook

·Dune feed dashboard

나는 다음 달에 Bytexplorers 미션을 진행할 예정이며, 우리는 최고의 암호화 애플리케이션에 적합한 추천 흐름 차트를 만들기 위해 경쟁할 것입니다.

warnning 위험 경고
app_icon
ChainCatcher Building the Web3 world with innovations.