Lustrzany Tang | Salus
Yixin Ren | Stolica Hongshan
Lingzhi Shi | Salus
Jiangyue Wang | Salus
W zeszłym roku, gdy generatywna sztuczna inteligencja wielokrotnie przekraczała oczekiwania opinii publicznej, fala rewolucji w zakresie produktywności sztucznej inteligencji przetoczyła się przez krąg kryptowalut. Widzieliśmy, że wiele projektów koncepcyjnych AI wywołało falę mitów o tworzeniu bogactwa na rynku wtórnym.Jednocześnie coraz więcej programistów zaczęło opracowywać własne projekty „AI + Crypto”.
Jednak bliższe przyjrzenie się ujawnia, że jednorodność tych projektów jest bardzo poważna, a większość projektów koncentruje się jedynie na poprawie „stosunków produkcyjnych”, takich jak organizacja mocy obliczeniowej poprzez zdecentralizowane sieci lub utworzenie „zdecentralizowanej przytulającej twarzy” itp. Bardzo niewiele projektów podejmuje próbę prawdziwej integracji i innowacji w oparciu o technologię bazową. Uważamy, że przyczyną tego zjawiska jest „stronniczość domenowa” pomiędzy obszarami sztucznej inteligencji i blockchain. Pomimo ich rozległego przecięcia, niewiele osób ma głęboką wiedzę na temat obu dziedzin. Na przykład twórcom sztucznej inteligencji trudno jest zrozumieć techniczną implementację i historyczny stan infrastruktury Ethereum, a jeszcze trudniej jest zaproponować dogłębne rozwiązania optymalizacyjne.
Weźmy na przykład uczenie maszynowe (ML), najbardziej podstawową gałąź sztucznej inteligencji, czyli technologię, która pozwala maszynom podejmować decyzje na podstawie danych bez wyraźnych instrukcji programistycznych. Uczenie maszynowe wykazało ogromny potencjał w analizie danych i rozpoznawaniu wzorców i stało się powszechne w web2. Jednak ze względu na ograniczenia czasów, w których się narodził, nawet będąc w czołówce innowacji w technologii blockchain, takich jak Ethereum, jego architektura, sieć i mechanizmy zarządzania nie wykorzystywały jeszcze uczenia maszynowego jako skutecznego narzędzia do rozwiązywania złożonych problemów.
„Wielkie innowacje często rodzą się w przekrojowych dziedzinach.” Naszą pierwotną intencją przy pisaniu tego artykułu było umożliwienie programistom AI lepszego zrozumienia świata blockchain, a także dostarczenie nowych pomysłów programistom w społeczności Ethereum. W artykule najpierw przedstawiliśmy techniczną implementację Ethereum, a następnie zaproponowaliśmy rozwiązanie polegające na zastosowaniu uczenia maszynowego, podstawowego algorytmu AI, do sieci Ethereum w celu poprawy jej bezpieczeństwa, wydajności i skalowalności. Mamy nadzieję wykorzystać ten przypadek jako punkt wyjścia do przedstawienia perspektyw różniących się od tych dostępnych na rynku i zainspirować do bardziej innowacyjnych kombinacji „AI + Blockchain” w ekosystemie deweloperskim.
Techniczne wdrożenie Ethereum
Podstawowa struktura danych
Istotą blockchaina jest łańcuch łączący bloki.Kluczem do rozróżnienia łańcuchów jest konfiguracja łańcucha, która jest jednocześnie nieodzowną częścią tworzenia blockchainu. W przypadku Ethereum konfiguracja łańcucha służy do rozróżnienia różnych łańcuchów w Ethereum oraz identyfikacji niektórych ważnych protokołów aktualizacji i zdarzeń flagowych. Na przykład DAOForkBlock oznacza wysokość hard forku, przy którym Ethereum doświadczył ataku DAO, a ConstantinopleBlock oznacza wysokość bloku, przy którym Constantinople został zmodernizowany. W przypadku większych aktualizacji, które zawierają wiele propozycji ulepszeń, zostaną ustawione specjalne pola w celu zidentyfikowania odpowiedniej wysokości bloku.Ponadto Ethereum obejmuje różne sieci testowe i sieci główne, a odpowiednia ekologia sieci jest jednoznacznie identyfikowana za pomocą ChainID.
Blok genesis jest blokiem zerowym całego łańcucha bloków, a inne bloki bezpośrednio lub pośrednio odnoszą się do bloku genesis. Dlatego przy uruchomieniu węzła muszą zostać załadowane prawidłowe informacje o bloku genezy i nie można ich dowolnie modyfikować. Informacje konfiguracyjne bloku genesis obejmują wyżej wymienioną konfigurację łańcucha, a także dodają pola, takie jak odpowiednie nagrody za wydobycie, znaczniki czasu, trudność i limity gazu. Należy zauważyć, że mechanizm konsensusu Ethereum ewoluował od wydobywania typu proof-of-work Mechanizm jest konwertowany na dowód stawki.
Konta Ethereum dzielą się na konta zewnętrzne i konta kontraktowe.Konto zewnętrzne jest jednoznacznie kontrolowane przez klucz prywatny, natomiast konto kontraktowe nie ma kontroli klucza prywatnego i można nim sterować jedynie poprzez wywołanie kontraktu z konta zewnętrznego w celu wykonania kodu kontraktu. Wszystkie zawierają unikalny adres. Stan świata Ethereum to drzewo kont Ethereum. Każde konto odpowiada węzłowi liścia, który przechowuje status konta (różne informacje o koncie i informacje o kodzie).
Transakcja: Jako zdecentralizowana platforma, istotą Ethereum są transakcje i kontrakty. Bloki Ethereum to pakowane transakcje wraz z dodatkowymi informacjami z nimi związanymi. Konkretne bloki są podzielone na dwie części, mianowicie nagłówek bloku i obszar. Blok, w którym dane nagłówka bloku zawierają dowody łączące wszystkie bloki w łańcuch.Możemy to rozumieć jako skrót poprzedniego bloku, a także korzeń stanu, korzeń transakcji, korzeń paragonu i dowód stanu całego świata Ethereum.Kilka innych wskaźników wskaż trudność, policz nonce i inne dodatkowe dane. Treść bloku przechowuje listę transakcji i listę nagłówków bloków wujków (ponieważ Ethereum zostało przekonwertowane na dowód stawki, odniesienie do bloku wujków już nie istnieje).
Potwierdzenia transakcji dostarczają wyników i dodatkowych informacji po przeprowadzeniu transakcji, których nie można uzyskać bezpośrednio, po prostu patrząc na samą transakcję. W szczególności informacje w nim zawarte można podzielić na: treść konsensusu, informacje o transakcjach oraz informacje o blokach, w tym informacje o powodzeniu realizacji transakcji oraz dziennikach transakcji i zużyciu gazu. Debuguj inteligentny kod kontraktu i optymalizuj zużycie gazu, analizując informacje na paragonie. i zapewnia formę potwierdzenia, że transakcja została przetworzona przez sieć oraz można zobaczyć wyniki i wpływ transakcji.
W Ethereum opłaty za gaz można rozumieć najprościej jako opłaty manipulacyjne. Kiedy wysyłasz Token, realizujesz umowę, przesyłasz Ethereum lub wykonujesz różne operacje na tym bloku, operacje w tych transakcjach wymagają opłat za gaz. Ether Kiedy komputer przetwarza tę transakcję, musi wykonywać obliczenia i zużywać zasoby sieciowe, więc aby komputer mógł pracować za Ciebie, musisz płacić opłaty za gaz. Ostateczna opłata paliwowa jest płacona górnikom jako opłata manipulacyjna.Wzór wyliczenia konkretnej opłaty można rozumieć jako Opłata = Zużyty Gaz * Cena Gazu, czyli faktyczne zużycie pomnożone przez cenę jednostkową zużycia.Cena jednostkowa ustalany jest przez inicjatora transakcji, często ustalana jest także jej kwota.Decyduje o szybkości transakcji w łańcuchu. W przypadku ustawienia zbyt niskiego transakcja może nie zostać zrealizowana.Jednocześnie należy ustalić limit gazu dla opłaty, aby uniknąć nieprzewidywalnego zużycia gazu spowodowanego błędami w umowie.
basen handlowy
W Ethereum występuje duża liczba transakcji.W porównaniu z systemem scentralizowanym liczba transakcji na sekundę przetwarzanych przez system zdecentralizowany jest oczywiście ponura. Ze względu na dużą liczbę transakcji wpływających do węzła, węzeł musi utrzymywać pulę transakcji, aby właściwie zarządzać tymi transakcjami. Rozgłaszanie transakcji odbywa się poprzez protokół p2p. W szczególności węzeł rozgłasza wykonywalną transakcję do swoich sąsiadujących węzłów, a następnie sąsiednie węzły rozgłaszają transakcję do sąsiadujących węzłów węzła. W ten sposób transakcja może rozprzestrzenić się na całą sieć Ethereum w ciągu 6 sekund.
Transakcje w puli transakcji dzielą się na transakcje wykonywalne i transakcje niewykonalne. Transakcje wykonywalne mają wyższy priorytet i zostaną wykonane oraz spakowane w bloku, natomiast wszystkie transakcje, które właśnie weszły do puli transakcji, są transakcjami niewykonalnymi. następnie stać się wykonywalnym. Transakcje wykonywalne i transakcje niewykonalne są rejestrowane odpowiednio w kontenerze oczekującym i kontenerze kolejki.
Dodatkowo w puli transakcji będzie również utrzymywana lokalna lista transakcji. Transakcje lokalne mają wiele zalet. Mają wyższy priorytet, nie podlegają ograniczeniom wolumenu transakcji i można je ponownie załadować do puli transakcji natychmiast po ponownym uruchomieniu węzła. Lokalne trwałe przechowywanie transakcji lokalnych realizowane jest poprzez dziennik (przeładowywanie przy ponownym uruchomieniu węzła), którego celem jest zapobieganie utracie niezakończonych transakcji lokalnych i będzie regularnie aktualizowane.
Przed wejściem do kolejki sprawdzana będzie legalność transakcji, obejmująca różnego rodzaju kontrole, takie jak: zapobieganie atakom DOS, zapobieganie negatywnym transakcjom, limit gazu transakcyjnego itp. Prostą kompozycję puli transakcji można podzielić na: kolejka+oczekująca (dwa składniki wszystkich transakcji) Po zakończeniu testu legalności zostaną przeprowadzone kolejne kontrole, obejmujące sprawdzenie, czy kolejka transakcji osiągnęła górny limit, a następnie ocenianie transakcji zdalnych (transakcje zdalne są transakcjami nielokalnymi)) jest najniższą w puli handlowej, zastępuje transakcję o najniższej cenie w puli handlowej. W przypadku zamiany transakcji wykonywalnych domyślnie tylko transakcje zwiększające opłatę manipulacyjną o 10% mogą zastąpić transakcje, które już oczekują na realizację, a po zamianie będą przechowywane jako transakcje niewykonalne. Dodatkowo w trakcie konserwacji puli transakcji transakcje nieważne i przekroczone limitem zostaną usunięte, a transakcje spełniające warunki zostaną zastąpione.
mechanizm konsensusu
Wczesna teoria konsensusu dotycząca Ethereum nadal opierała się na metodzie obliczania skrótu wartości trudności, co oznacza, że wartość skrótu bloku musi zostać obliczona tak, aby spełnić warunki docelowej wartości trudności, zanim blok będzie legalny. Ponieważ obecny algorytm konsensusu Ethereum został zmieniony z POW na POS, teorie związane z wydobyciem nie będą szczegółowo omawiane. Oto krótki opis algorytmu POS. Ethereum zakończyło fuzję łańcucha beaconów we wrześniu 2022 r. i wdrożyło algorytm POS.W szczególności czas blokowania każdego bloku Ethereum opartego na POS jest stabilny i wynosi 12 s, a użytkownicy zobowiązują się do posiadania własnych monet Ether w celu uzyskania prawa do zostania weryfikatora, a następnie losowo wybierze grupę weryfikatorów spośród użytkowników, którzy wzięli udział w akcji. W każdej rundzie z każdego z 32 slotów zostanie wybrany weryfikator, a jeden z nich zostanie wybrany. Walidator pełni rolę wnioskodawcy, a wnioskodawca realizuje generację bloku, a pozostałe walidatory odpowiadające slotowi służą jako komisja weryfikująca legalność bloku wnioskodawcy i jednocześnie wydająca opinię o legalności bloku w poprzednim cyklu. Algorytm POS znacząco stabilizuje i poprawia szybkość generowania bloków, jednocześnie w znacznym stopniu zapobiegając marnowaniu zasobów obliczeniowych.
Algorytm podpisu
Ethereum podąża za standardem algorytmu podpisu Bitcoina, a także wykorzystuje krzywą secp 256 k 1. Jego specyficzny algorytm podpisu wykorzystuje ECDSA, co oznacza, że obliczony podpis jest obliczany na podstawie skrótu oryginalnej wiadomości. Cały podpis składa się z: Mówiąc najprościej, to jest R+S+V. Liczby losowe zostaną odpowiednio wprowadzone do każdego obliczenia, gdzie R+S jest pierwotnym wynikiem ECDSA. Ostatnie pole V nazywane jest polem odzyskiwania i wskazuje liczbę wyszukiwań wymaganych do pomyślnego odzyskania klucza publicznego z treści i podpisu, ponieważ na krzywej eliptycznej może znajdować się wiele punktów współrzędnych spełniających wymagania oparte na wartości R.
Cały proces można po prostu podsumować w następujący sposób: dane transakcji i informacje dotyczące podpisującego są po zakodowaniu RLP szyfrowane i podpisywane kluczem prywatnym za pośrednictwem ECDSA w celu uzyskania podpisu końcowego, a krzywa używana w ECDSA to secp 256 k 1 krzywa eliptyczna. Wreszcie, łącząc dane podpisu z danymi transakcji, można uzyskać podpisane dane transakcji i je rozpowszechnić.
Struktura danych Ethereum nie opiera się tylko na tradycyjnej technologii blockchain, ale wprowadza także drzewa Merkle Patricia, znane również jako drzewa skompresowanych prefiksów Merkle, w celu wydajnego przechowywania i weryfikacji dużych ilości danych. MPT łączy kryptograficzną funkcję mieszającą drzew Merkle i właściwości kompresji ścieżek kluczowych drzew Patricia, aby zapewnić rozwiązanie, które zarówno gwarantuje integralność danych, jak i obsługuje szybkie wyszukiwanie.
MPT
W Ethereum MPT służy do przechowywania wszystkich danych o stanie i transakcjach, zapewniając, że wszelkie zmiany danych zostaną odzwierciedlone w głównym hashu drzewa. Oznacza to, że weryfikując skrót główny, możesz udowodnić integralność i dokładność danych bez konieczności sprawdzania całej bazy danych. MPT składa się z czterech typów węzłów: węzłów liściowych, węzłów przedłużających, węzłów rozgałęzionych i węzłów pustych.Węzły te razem tworzą drzewo, które może dostosowywać się do dynamicznych zmian danych. Za każdym razem, gdy dane są aktualizowane, MPT odzwierciedla te zmiany, dodając, usuwając lub modyfikując węzły, jednocześnie aktualizując skrót główny drzewa. Ponieważ każdy węzeł jest szyfrowany za pomocą funkcji skrótu, wszelkie drobne zmiany w danych doprowadzą do ogromnych zmian w haszu głównym, zapewniając w ten sposób bezpieczeństwo i spójność danych. Ponadto MPT zaprojektowano tak, aby obsługiwał weryfikację „lekkiego klienta”, umożliwiając węzłom weryfikację istnienia lub statusu określonych informacji po prostu poprzez przechowywanie głównego skrótu drzewa i niezbędnych węzłów ścieżek, co znacznie zmniejsza potrzebę przechowywania i przetwarzania danych.
Dzięki MPT Ethereum nie tylko osiąga efektywne zarządzanie i szybki dostęp do danych, ale także zapewnia bezpieczeństwo i decentralizację sieci, wspierając działanie i rozwój całej sieci Ethereum.
maszyna stanu
Podstawowa architektura Ethereum obejmuje koncepcję maszyn stanowych.Wirtualna maszyna Ethereum (EVM) jest środowiskiem wykonawczym do wykonywania wszystkich inteligentnych kodów kontraktów, a samo Ethereum można uznać za ogólnodostępny system zmiany stanu. Wykonanie każdego bloku można postrzegać jako proces zmiany stanu, przechodzenie z jednego globalnie współdzielonego stanu do drugiego. Taka konstrukcja nie tylko zapewnia spójność i decentralizację sieci Ethereum, ale także sprawia, że wyniki realizacji inteligentnych kontraktów są przewidywalne i niemożliwe do manipulacji.
W Ethereum status odnosi się do aktualnych informacji o wszystkich kontach, w tym salda każdego konta, danych o przechowywaniu i kodu inteligentnego kontraktu. Ilekroć ma miejsce transakcja, EVM oblicza i konwertuje stan na podstawie treści transakcji.Proces ten jest skutecznie i bezpiecznie rejestrowany przez MPT. Każda zmiana stanu nie tylko zmienia dane konta, ale także powoduje aktualizację MPT, co znajduje odzwierciedlenie w zmianie skrótu głównego drzewa.
Relacja między EVM i MPT jest kluczowa, ponieważ MPT zapewnia gwarancje integralności danych dla zmian stanu Ethereum. Gdy EVM wykonuje transakcje zmieniające status konta, powiązane węzły MPT są aktualizowane w celu odzwierciedlenia tych zmian. Ponieważ każdy węzeł MPT jest połączony hashem, każda modyfikacja stanu spowoduje zmianę hasha głównego.Ten nowy hash root jest następnie włączany do nowego bloku, zapewniając stabilność całego stanu Ethereum.Spójność i bezpieczeństwo. Następnie przedstawiamy maszynę wirtualną EVM.
EVM
Wirtualna maszyna EVM jest podstawą całego Ethereum do konstruowania inteligentnych przejść stanu realizacji kontraktu.To dzięki EVM można sobie wyobrazić Ethereum jako komputer światowy w prawdziwym tego słowa znaczeniu. Maszyna wirtualna EVM jest kompletna w technologii Turing, co oznacza, że inteligentne kontrakty na Ethereum mogą wykonywać dowolne złożone obliczenia logiczne, a wprowadzenie mechanizmu gazowego skutecznie zapobiega nieskończonym pętlom w kontrakcie oraz zapewnia stabilność i bezpieczeństwo sieci. Z bardziej szczegółowego poziomu technicznego EVM jest maszyną wirtualną opartą na stosie, która wykorzystuje kod bajtowy specyficzny dla Ethereum do wykonywania inteligentnych kontraktów. Programiści zwykle używają języków wysokiego poziomu, takich jak Solidity, do pisania inteligentnych kontraktów, a następnie kompilują je do kodu bajtowego zrozumiałego dla EVM, aby EVM mógł wykonywać wywołania. EVM to klucz do innowacyjnych możliwości blockchaina Ethereum, który nie tylko wspiera działanie inteligentnych kontraktów, ale także zapewnia solidny fundament pod rozwój zdecentralizowanych aplikacji. Dzięki EVM Ethereum kształtuje zdecentralizowaną, bezpieczną i otwartą cyfrową przyszłość.
Podsumuj historię
Rysunek 1 Historyczny przegląd Ethereum
Wyzwania stojące przed Ethereum
bezpieczeństwo
Inteligentne kontrakty to programy komputerowe działające na blockchainie Ethereum. Umożliwiają programistom tworzenie i publikowanie różnorodnych aplikacji, w tym między innymi aplikacji pożyczkowych, zdecentralizowanych giełd, ubezpieczeń, finansowania wtórnego, sieci społecznościowych i NFT. Bezpieczeństwo inteligentnych kontraktów jest kluczowe dla tych zastosowań. Aplikacje te bezpośrednio odpowiadają za przetwarzanie i kontrolę kryptowalut, a wszelkie luki w inteligentnych kontraktach lub złośliwe ataki na nie będą stanowić bezpośrednie zagrożenie dla bezpieczeństwa środków, a nawet doprowadzą do ogromnych strat ekonomicznych. Na przykład 26 lutego 2024 r. protokół pożyczkowy DeFi Blueberry Protocol został zaatakowany z powodu błędu logicznego w inteligentnym kontrakcie, co spowodowało stratę w wysokości około 1 400 000 USD.
Luki w inteligentnych kontraktach są wieloaspektowe i obejmują nieuzasadnioną logikę biznesową (Business Logic), niewłaściwą kontrolę dostępu, niewystarczającą weryfikację danych, ataki ponownego wejścia i ataki DOS (Denial of Service). Podatności te mogą powodować problemy w realizacji kontraktu i wpływać na efektywne działanie smart kontraktu. Weźmy na przykład atak DOS. Ta metoda ataku wykorzystuje atakującego do wysłania dużej liczby transakcji w celu zużycia zasobów sieciowych. W takim przypadku transakcje inicjowane przez zwykłych użytkowników nie mogą zostać przetworzone w odpowiednim czasie, co doprowadzi do pogorszenia komfortu użytkowania . Co więcej, spowoduje to również wzrost opłat transakcyjnych za gaz. Ponieważ gdy zasoby sieciowe są ograniczone, użytkownicy mogą być zmuszeni do uiszczenia wyższych opłat, aby zapewnić priorytet swoim transakcjom.
Ponadto użytkownicy Ethereum również narażeni są na ryzyko inwestycyjne, a bezpieczeństwo funduszy będzie zagrożone. Na przykład spamcoiny są używane do opisywania kryptowalut, które uważa się za mające niewielką wartość lub pozbawione potencjału długoterminowego wzrostu. Monety spamowe są często wykorzystywane jako narzędzie do oszustw lub manipulacji cenami w strategiach pompowania i wyrzucania. Inwestycja w monety śmieciowe jest bardzo ryzykowna i może skutkować znacznymi stratami finansowymi. Ze względu na niską cenę i niską kapitalizację rynkową są one bardzo podatne na manipulację i zmienność. Moneta jest często wykorzystywana w programach typu „pompuj i zrzuć” oraz oszustwach typu Honeypot, w których fałszywe projekty są wykorzystywane w celu zwabienia inwestorów i kradzieży ich funduszy. Innym częstym ryzykiem związanym ze spamem jest „ciągnięcie dywanu”, w wyniku którego twórca nagle pozbawia projekt całej płynności, powodując gwałtowny spadek wartości tokena. Oszustwa te są często sprzedawane z fałszywymi partnerstwami i rekomendacjami, a gdy cena tokena wzrasta, oszuści sprzedają swoje tokeny, osiągają zysk i znikają, pozostawiając inwestorów z bezwartościowymi tokenami. Jednocześnie inwestowanie w shitcoiny odwraca uwagę i zasoby od legalnych kryptowalut, które mają realne zastosowania i potencjał wzrostu.
Oprócz monet śmieciowych, monety powietrzne i monety MLM to także sposoby na szybkie zyski. Odróżnienie ich od legalnych kryptowalut jest szczególnie trudne dla użytkowników, którym brakuje wiedzy i doświadczenia.
efektywność
Dwa bardzo bezpośrednie wskaźniki oceny efektywności Ethereum to szybkość transakcji i opłaty za gaz. Szybkość transakcji odnosi się do liczby transakcji, które sieć Ethereum może przetworzyć w jednostce czasu. Wskaźnik ten bezpośrednio odzwierciedla moc obliczeniową sieci Ethereum, przy czym większe prędkości oznaczają wyższą wydajność. Każda transakcja w Ethereum wymaga określonej opłaty gazowej, aby zrekompensować górnikom weryfikację transakcji. Im niższy koszt gazu, tym wyższa wydajność Ethereum.
Zmniejszona prędkość transakcji będzie skutkować wyższymi opłatami za gaz. Ogólnie rzecz biorąc, gdy prędkość przetwarzania transakcji spada, może wystąpić wzrost liczby transakcji konkurujących o wejście do następnego bloku ze względu na ograniczoną przestrzeń w bloku. Aby wyróżnić się na tle konkurencji, handlowcy często podnoszą opłaty za gaz, ponieważ górnicy podczas zatwierdzania transakcji traktują priorytetowo transakcje z wyższymi opłatami za gaz. W takim przypadku wyższe opłaty za gaz zmniejszą komfort użytkownika.
Transakcje to tylko podstawowa czynność w Ethereum. W tym ekosystemie użytkownicy mogą również wykonywać różne czynności, takie jak udzielanie pożyczek, zastawianie, inwestycje i ubezpieczenia. Wszystko to można osiągnąć za pomocą określonych DApps. Jednak biorąc pod uwagę szeroką gamę DApps i brak spersonalizowanych usług rekomendacyjnych podobnych do tradycyjnych branż, użytkownicy będą czuli się zdezorientowani przy wyborze aplikacji i produktów, które im odpowiadają. Sytuacja ta doprowadzi do spadku satysfakcji użytkowników, co wpłynie na efektywność całego ekosystemu Ethereum.
Weźmy na przykład pożyczkę. Aby zachować bezpieczeństwo i stabilność własnych platform, niektóre platformy pożyczkowe DeFi będą stosować mechanizm nadzabezpieczenia. Oznacza to, że pożyczkobiorca musi ustanowić więcej aktywów jako zabezpieczenia, a aktywa te nie mogą zostać wykorzystane przez pożyczkobiorcę do innej działalności w okresie zaciągania pożyczki. Doprowadzi to do zmniejszenia wykorzystania kapitału przez kredytobiorców, a tym samym do zmniejszenia płynności rynku.
Zastosowanie uczenia maszynowego w Ethereum
Modele uczenia maszynowego, takie jak model RFM, generatywna sieć kontradyktoryjna (GAN), model drzewa decyzyjnego, algorytm K najbliższego sąsiada (KNN), algorytm klastrowania DBSCAN itp., odgrywają ważną rolę w Ethereum. Zastosowanie tych modeli uczenia maszynowego w Ethereum może pomóc zoptymalizować wydajność przetwarzania transakcji, poprawić bezpieczeństwo inteligentnych kontraktów, zrealizować stratyfikację użytkowników w celu zapewnienia bardziej spersonalizowanych usług i pomóc w utrzymaniu stabilnego działania sieci.
Wprowadzenie do algorytmu
Algorytm uczenia maszynowego to zestaw instrukcji lub reguł służących do analizowania danych, wzorców uczenia się w danych oraz dokonywania przewidywań lub podejmowania decyzji na podstawie tych wniosków. Uczą się i doskonalą automatycznie na podstawie dostarczonych im danych, bez potrzeby otrzymywania wyraźnych instrukcji programowania od ludzi. Modele uczenia maszynowego, takie jak model RFM, generatywna sieć kontradyktoryjna (GAN), model drzewa decyzyjnego, algorytm K najbliższego sąsiada (KNN), algorytm klastrowania DBSCAN itp., odgrywają ważną rolę w Ethereum. Zastosowanie tych modeli uczenia maszynowego w Ethereum może pomóc zoptymalizować wydajność przetwarzania transakcji, poprawić bezpieczeństwo inteligentnych kontraktów, zrealizować stratyfikację użytkowników w celu zapewnienia bardziej spersonalizowanych usług i pomóc w utrzymaniu stabilnego działania sieci.
Klasyfikator bayesowski
Klasyfikator Bayesa to skuteczny klasyfikator, którego celem jest minimalizacja prawdopodobieństwa błędu klasyfikacji lub minimalizacja średniego ryzyka w ramach określonych kosztów wśród różnych metod klasyfikacji statystycznej. Filozofia projektowania jest głęboko zakorzeniona w twierdzeniu Bayesa, które pozwala na podejmowanie decyzji poprzez obliczenie prawdopodobieństwa późniejszego obiektu, biorąc pod uwagę prawdopodobieństwo, że obiekt należy do określonej klasy i przy określonych cechach. W szczególności klasyfikator Bayesa najpierw uwzględnia wcześniejsze prawdopodobieństwo obiektu, a następnie stosuje wzór Bayesa, aby kompleksowo uwzględnić dane obserwacyjne i zaktualizować przekonanie na temat klasyfikacji obiektu. Spośród wszystkich możliwych klasyfikacji klasyfikator bayesowski wybiera tę, która ma największe późniejsze prawdopodobieństwo zaklasyfikowania obiektu do tej kategorii. Podstawową zaletą tego podejścia jest jego zdolność do naturalnego radzenia sobie z niepewnością i niekompletnymi informacjami, co czyni go potężnym i elastycznym narzędziem odpowiednim dla szerokiego zakresu scenariuszy zastosowań.
Jak pokazano na rysunku 2, w nadzorowanym uczeniu maszynowym do podejmowania decyzji klasyfikacyjnych wykorzystuje się dane i model prawdopodobieństwa oparty na twierdzeniu Bayesa. Korzystając z prawdopodobieństwa i prawdopodobieństw wcześniejszych kategorii i cech, klasyfikator bayesowski oblicza prawdopodobieństwo późniejsze, że punkty danych należą do każdej kategorii i przypisuje punkty danych do kategorii o największym prawdopodobieństwie późniejszym. Na wykresie rozrzutu po prawej stronie klasyfikator będzie próbował znaleźć krzywą, która najlepiej oddziela punkty o różnych kolorach, minimalizując w ten sposób błąd klasyfikacji.
Rysunek 2 Klasyfikator bayesowski
drzewo decyzyjne
Algorytm drzewa decyzyjnego jest często stosowany w zadaniach klasyfikacji i regresji. Przyjmuje ideę osądu hierarchicznego. Na podstawie znanych danych uczy się drzewa decyzyjnego poprzez wybieranie cech o dużym współczynniku przyrostu informacji, a następnie dzielenie ich na drzewa. Mówiąc najprościej, cały algorytm może samodzielnie nauczyć się reguły decyzyjnej na podstawie danych, aby ocenić wartość zmiennej.Wdrożeniowo może rozłożyć złożony proces decyzyjny na kilka prostych procesów poddecyzyjnych Dzięki takiej metodzie pochodnej każdy prostszy wyrok decyzyjny wyprowadzany jest z nadrzędnego kryterium decyzyjnego, tworząc strukturę drzewiastą.
Jak widać na rysunku 3, każdy węzeł reprezentuje decyzję i określa kryteria oceny określonego atrybutu, a gałęzie reprezentują wyniki decyzji. Każdy węzeł liścia reprezentuje ostateczny przewidywany wynik i kategorię. Z punktu widzenia kompozycji algorytmu model drzewa decyzyjnego jest stosunkowo intuicyjny, łatwy do zrozumienia i ma dużą możliwość interpretacji.
Rysunek 3 Model drzewa decyzyjnego
Algorytm DBSCAN
DBSCAN (ang. Density-Based Spatial Clustering of Applications with Noise) to oparty na gęstości algorytm klastrowania przestrzennego z szumem, który wydaje się szczególnie dobrze sprawdzać w przypadku niepołączonych zbiorów danych. Algorytm ten może odkrywać skupienia o dowolnych kształtach bez wcześniejszego określania liczby skupień i ma dobrą odporność na wartości odstające w zbiorze danych. Algorytm może również skutecznie identyfikować wartości odstające w zaszumionych zbiorach danych. Szum lub wartości odstające są definiowane jako punkty w obszarach o niskiej gęstości, jak pokazano na rysunku 4.
Rysunek 4 Algorytm DBSCAN identyfikuje szum
Algorytm KNN
Algorytm KNN (K-Nearest Neighbors) może być stosowany zarówno do klasyfikacji, jak i regresji. W przypadku problemu klasyfikacyjnego mechanizm głosowania służy do określenia kategorii elementu, który ma zostać sklasyfikowany; w przypadku problemu regresyjnego w celu przewidywania obliczana jest średnia lub średnia ważona k próbek najbliższych sąsiadów.
Jak pokazano na rysunku 5, zasada działania algorytmu KNN w klasyfikacji polega na znalezieniu K najbliższych sąsiadów nowego punktu danych, a następnie przewidzeniu kategorii nowego punktu danych na podstawie kategorii tych sąsiadów. Jeśli K=1, nowy punkt danych jest po prostu przypisywany do klasy najbliższego sąsiada. Jeśli K>1, wówczas do określenia kategorii nowego punktu danych zwykle stosuje się metodę głosowania, co oznacza, że nowy punkt danych zostanie przypisany do kategorii, do której należy najwięcej sąsiadów. Kiedy algorytm KNN jest używany do problemów regresyjnych, podstawowa idea jest taka sama, a wynikiem jest średnia wartości wyjściowych próbek K najbliższych sąsiadów.
Rysunek 5 Algorytm KNN zastosowany do klasyfikacji
generatywną sztuczną inteligencję
Generatywna sztuczna inteligencja to technologia sztucznej inteligencji, która może generować nowe treści (takie jak tekst, obrazy, muzyka itp.) w oparciu o zapotrzebowanie. Jego podstawy opierają się na postępach w uczeniu maszynowym i głębokim uczeniu się, szczególnie w zastosowaniach w takich obszarach, jak przetwarzanie języka naturalnego i rozpoznawanie obrazów. Generatywna sztuczna inteligencja działa poprzez uczenie się wzorców i powiązań z dużych ilości danych, a następnie generowanie nowej treści wyjściowej na podstawie zdobytych informacji. Kluczem do generatywnej sztucznej inteligencji jest szkolenie modeli, które wymaga doskonałych danych do uczenia się i szkolenia.W tym procesie model stopniowo poprawia swoją zdolność do generowania nowych treści poprzez analizę i zrozumienie struktury, wzorców i relacji w zbiorze danych.
Transformator
Jako kamień węgielny generatywnej sztucznej inteligencji, Transformer był pionierem we wprowadzeniu mechanizmu uwagi, który umożliwia przetwarzanie informacji skupienie się na kluczowych punktach, a jednocześnie posiadanie ogólnego przeglądu. Ta wyjątkowa zdolność sprawia, że Transformer wyróżnia się w dziedzinie generowania tekstu. Wykorzystanie najnowszych modeli języka przetwarzania języka naturalnego, takich jak GPT (Generative Pre-trained Transformer), do zrozumienia wymagań aplikacji użytkowników wyrażonych w języku naturalnym i automatycznej konwersji ich na kod wykonywalny, może zmniejszyć trudność programowania i znacznie poprawić wydajność.
Jak pokazano na rysunku 6, poprzez wprowadzenie mechanizmu uwagi wielogłowej i mechanizmu samouwagi, w połączeniu z połączeniem resztkowym i w pełni połączoną siecią neuronową oraz przy pomocy wcześniejszej technologii osadzania słów, wydajność modeli generatywnych związanych z językiem naturalnym przetwarzanie zostało znacznie ulepszone.Ziemia się unosi.
Rysunek 6 Model transformatora
Model RFM
Model RFM to model analityczny oparty na zachowaniach zakupowych użytkowników, który analizując zachowania transakcyjne użytkowników pozwala na identyfikację grup użytkowników o różnych wartościach. Model ten dzieli użytkowników na podstawie czasu ich ostatniego spożycia (R), częstotliwości spożycia (F) i wielkości spożycia (M).
Jak pokazano na rysunku 7. Te trzy wskaźniki razem tworzą rdzeń modelu RFM. Model ocenia użytkowników na podstawie tych trzech wymiarów i sortuje ich według uzyskanych wyników, aby zidentyfikować najbardziej wartościowe grupy użytkowników. Co więcej, model ten może skutecznie dzielić klientów na różne grupy, aby zrealizować funkcję stratyfikacji użytkowników.
Rysunek 7 Model warstwowy RFM
możliwe zastosowania
Stosując technologię uczenia maszynowego w celu sprostania wyzwaniom związanym z bezpieczeństwem Ethereum, przeprowadziliśmy badania dotyczące czterech głównych aspektów:
Identyfikuj i filtruj złośliwe transakcje w oparciu o klasyfikator Bayesa
Budując klasyfikator Bayesa, identyfikowane i filtrowane są możliwe transakcje spamowe, w tym między innymi duże, częste i małe transakcje prowadzące do ataków DOS. Metoda ta skutecznie utrzymuje kondycję sieci i zapewnia stabilne działanie sieci Ethereum poprzez analizę cech transakcji, takich jak cena gazu, częstotliwość transakcji itp.
Wygeneruj inteligentny kod kontraktu, który jest bezpieczny i spełnia określone wymagania
Zarówno generatywne sieci przeciwstawne (GAN), jak i sieci generatywne oparte na transformatorach mogą być wykorzystywane do generowania inteligentnego kodu kontraktowego, który spełnia określone wymagania i zapewnia maksymalne bezpieczeństwo kodu. Istnieją jednak różnice między nimi pod względem rodzaju danych, na których opierają się przy szkoleniu swoich modeli. Proces uczenia w pierwszym przypadku opiera się głównie na niebezpiecznych próbkach kodu, podczas gdy w przypadku drugiego jest odwrotnie.
Szkoląc GAN, uczymy się istniejących modeli kontraktów bezpieczeństwa, budujemy model autokonfrontacji w celu generowania potencjalnie niebezpiecznych kodów, a następnie uczymy się identyfikować te niepewności poprzez uczenie się modeli, ostatecznie osiągając zdolność do automatycznego generowania wysokiej jakości, bezpieczniejszych inteligentnych kodów kontraktów . . Wykorzystanie generatywnego modelu sieci opartego na Transformerze i poznanie dużej liczby przykładów kontraktów bezpieczeństwa w celu wygenerowania kodu kontraktu spełniającego określone potrzeby i optymalizującego zużycie gazu niewątpliwie jeszcze bardziej poprawi efektywność i bezpieczeństwo opracowywania inteligentnych kontraktów.
Inteligentna analiza ryzyka kontraktu w oparciu o drzewo decyzyjne
Wykorzystanie drzew decyzyjnych do analizy cech inteligentnych kontraktów, takich jak częstotliwość wywołań funkcji, wartość transakcji, złożoność kodu źródłowego itp., może skutecznie zidentyfikować potencjalny poziom ryzyka kontraktu. Analizując tryb działania umowy i strukturę kodu, można przewidzieć możliwe podatności i punkty ryzyka, zapewniając w ten sposób programistom i użytkownikom ocenę bezpieczeństwa. Oczekuje się, że takie podejście znacząco poprawi bezpieczeństwo inteligentnych kontraktów w ekosystemie Ethereum, ograniczając tym samym straty spowodowane lukami w zabezpieczeniach lub złośliwym kodem.
Zbuduj model oceny kryptowaluty, aby zmniejszyć ryzyko inwestycyjne
Użyj algorytmów uczenia maszynowego do analizowania wielowymiarowych informacji, takich jak dane dotyczące transakcji kryptowalut, aktywności w mediach społecznościowych i wyników rynku, aby zbudować model oceny, który może przewidzieć możliwość spamu monetami. Model ten może zapewnić inwestorom cenne odniesienie, które pomoże im uniknąć ryzyka inwestycyjnego, promując w ten sposób zdrowy rozwój rynku kryptowalut.
Ponadto wykorzystanie uczenia maszynowego ma również potencjał do dalszej poprawy wydajności Ethereum. Możemy zagłębić się w następujące trzy kluczowe wymiary:
Aplikacja drzewa decyzyjnego do optymalizacji modelu kolejkowania puli transakcji
W oparciu o drzewa decyzyjne można skutecznie zoptymalizować mechanizm kolejkowania puli transakcyjnej Ethereum. Analizując cechy transakcji, takie jak cena gazu i wielkość transakcji, drzewa decyzyjne mogą zoptymalizować wybór i kolejność transakcji w kolejce. Metoda ta może znacznie poprawić efektywność przetwarzania transakcji, skutecznie zmniejszyć przeciążenie sieci i skrócić czas oczekiwania użytkowników na transakcję.
Stratyfikuj użytkowników i zapewniaj spersonalizowane usługi
Model RFM (Recency, Monetary value, Frequency) jest narzędziem analitycznym szeroko stosowanym w zarządzaniu relacjami z klientami. Potrafi ocenić czas ostatniej transakcji użytkownika (Recency), częstotliwość transakcji (Frequency) i kwotę transakcji (Wartość pieniężna). stratyfikacja. Zastosowanie modelu RFM na platformie Ethereum może pomóc w identyfikacji grup użytkowników o dużej wartości, zoptymalizować alokację zasobów i zapewnić bardziej spersonalizowane usługi, poprawiając w ten sposób satysfakcję użytkowników i ogólną wydajność platformy.
Algorytm DBSCAN może również analizować zachowania handlowe użytkowników, pomagać w identyfikacji różnych grup użytkowników w Ethereum i dodatkowo zapewniać bardziej dostosowane usługi finansowe dla różnych użytkowników. Ta strategia stratyfikacji użytkowników może zoptymalizować strategie marketingowe oraz poprawić satysfakcję klientów i efektywność usług.
Scoring kredytowy oparty na KNN
Algorytm K najbliższego sąsiada (KNN) może oceniać zdolność użytkowników poprzez analizę historii transakcji i wzorców zachowań użytkowników Ethereum, co odgrywa niezwykle ważną rolę w działalności finansowej, takiej jak udzielanie pożyczek. Oceny kredytowe mogą pomóc instytucjom finansowym i platformom pożyczkowym ocenić zdolność kredytobiorców do spłaty i ryzyko kredytowe, co pozwala na podejmowanie trafniejszych decyzji kredytowych. Pozwala to uniknąć nadmiernego zaciągania kredytów i poprawia płynność rynku.
przyszły kierunek
Z punktu widzenia alokacji funduszy makro Ethereum, jako największy na świecie rozproszony komputer, nie może inwestować zbyt wiele w infrastrukturę i musi przyciągnąć programistów z większej liczby środowisk do udziału we współbudowie. W tym artykule, uporządkowawszy techniczną implementację i problemy stojące przed Ethereum, wyobraziliśmy sobie serię stosunkowo intuicyjnych możliwych zastosowań uczenia maszynowego. Z niecierpliwością czekamy również na twórców sztucznej inteligencji w społeczności, którzy będą w stanie przełożyć te wizje na rzeczywistą wartość. Wylądował.
W miarę stopniowego wzrostu mocy obliczeniowej łańcucha możemy przewidzieć, że opracowane zostaną bardziej złożone modele zarządzania siecią, monitorowania transakcji, audytu bezpieczeństwa i innych aspektów mających na celu poprawę wydajności i bezpieczeństwa sieci Ethereum.
Idąc dalej, mechanizmy zarządzania oparte na sztucznej inteligencji/agentach mogą również stać się głównym punktem innowacji w ekosystemie Ethereum. Bardziej wydajny, bardziej przejrzysty i bardziej zautomatyzowany proces decyzyjny wynikający z tego mechanizmu zapewnia bardziej elastyczną i niezawodną strukturę zarządzania na platformie Ethereum. Te przyszłe kierunki rozwoju nie tylko będą promować innowacyjność technologii Ethereum, ale także zapewnią użytkownikom lepsze doświadczenia w łańcuchu.
Jeśli jesteś ekspertem w dziedzinie AI lub technologii Ethereum i jesteś zainteresowany dalszą dyskusją lub wspólną pracą w tym temacie, skontaktuj się z nami.
Lustrzany Tang | Salus
Yixin Ren – stolica Hongkongu