Wpis z mikrobloga

Stylometria – metoda analizy której celem jest ustalenie statystycznej charakterystyki stylu autora. Służy głównie rozstrzyganiu kwestii autorstwa dzieł anonimowych bądź chronologii przekazu.

O stylometrii jedni pewnie słyszeli inni nie, na bardzo prostym przykładzie pokażę wam o co chodzi oraz rozwinę trochę temat w teorii. Algorytmów i rodzajów analizy tekstu jest wiele, przedstawię jedne z prostszych aby sprawdzić czy komputer analizując wpisy z tego tagu jest w stanie potwierdzić że @e.....r to byłe konto @cyberpunkbtc . Dlaczego taki przykład z dwóch względów po pierwsze oba konta mają wystarczającą ilość wpisów i komentarzy a po drugie wiemy że to prawda bo sam cyber to potwierdził.

Analiza
Wpierw musimy ściągnąć wszystkie wpisy @e.....r oraz dla porównania wpisy dziesięciu najbardziej aktywnych osób na tagu. Następnie tekst oczyszczamy wycinając wołania, cytaty oraz wklejane linki i wpisy, tak oczyszczone teksty będą podstawą naszej analizy.

Pierwszym testem będzie algorytm Kilgariff’s Chi-Squared w bardzo dużym skrócie mierzy on dystans pomiędzy wykorzystywanym słownictwem badanych tekstów, im ten dystans mniejszy czyli wykorzystywane słownictwo bardziej podobne tym większe prawdopodobieństwo że oba teksty mają tego samego autora. Naszym wzorcem będzie słownictwo wykorzystywane przez @e.....r a porównywać będzie top aktywnych użytkowników tagu, im dystans wyrażony liczbą mniejszy tym większe prawdopodobieństwo autorstwa

The Chi-squared statistic for candidate pawlo74 is 8261.580846668856
The Chi-squared statistic for candidate cyberpunkbtc is 2613.6602589325666
The Chi-squared statistic for candidate W..............0 is 10216.359376825336
The Chi-squared statistic for candidate fervi is 8278.53623801774
The Chi-squared statistic for candidate dlazabawy is 8527.450655028173
The Chi-squared statistic for candidate theromanpolan is 11531.911692912405
The Chi-squared statistic for candidate Smule is 6593.316239532689
The Chi-squared statistic for candidate s....r is 17781.17193206402
The Chi-squared statistic for candidate m00n is 3328.27741282454
The Chi-squared statistic for candidate Amelcio is 5629.875437761005

Wyraźnie widać że analiza potwierdza że @cyberpunkbtc jest najbardziej prawdopodobnym autorem tekstów @e.....r

Drugim testem jaki możemy wykonać z tych prostszych to metoda John Burrows’ Delta , ta metoda jest podobna do poprzedniej ale znacznie bardziej skomplikowana i przy tym dokładniejsza. Tutaj wyznaczmy deltę a im ona mniejsza tym
większe prawdopodobieństwo autorstwa. W tej metodzie zwiększyłem też trochę dokładność tekstu chociażby przez usunięcie słów jak BTC, bitcoin etc.. oraz sprowadzenie do małej litery tak że UWAGA i uwaga to to samo słowo


Delta score for candidate pawlo74 is 0.8428984852746616
Delta score for candidate cyberpunkbtc is 0.6910450385478728
Delta score for candidate W..............0 is 1.2899927677173693
Delta score for candidate fervi is 1.0391988790210247
Delta score for candidate dla
zabawy is 1.1057046204956886
Delta score for candidate theromanpolan is 1.306490942046289
Delta score for candidate Smule is 0.8493666480072851
Delta score for candidate s....r is 1.507810294503233
Delta score for candidate m00n is 0.7664432680336003
Delta score for candidate Amelcio is 0.9102653600932908

Tutaj też wyraźnie widać że @cyberpunkbtc jest najbardziej prawdopodobnym autorem tekstów @e.....r

Do czego jeszcze można jeszcze użyć stylometrii
Najczęściej używa się do przypisywania lub potwierdzenia autorstwa np czy wszystkie części Harry Pottera zostały napisane przez tę samą osobę. Nie jest też tajemnicą że jest to narzędzie wykorzystywane przez służby celem identyfikacji użytkowników internetu nie jedna osoba została zdemaskowana przy jej pomocy. Podobnie analizuje się kody malware, ekspolitów aby przypisać autorstwo którejś z grup przestępczych.
Tak naprawdę pokazałem tutaj dwa najprostsze algorytmy ale można znacznie więcej zaprzęgając do tego machine learning oraz wykorzystanie metedanych można określać IQ piszącego, płeć, region zamieszkania, wykształcenie oraz wiele innych. Dobrze wytrenowany algorytm jest w stanie po samym wpisie z dużą dokładnością określić autora.
Czy można się przed zabezpieczyć lub oszukać, można jak wszystko ale trzeba mieć o tym pojęcie w szczególności jak po drugiej stronie stoją służby

Stylometria a Satoshi Nakamoto
Tutaj jako ciekawostka bo badań jest wiele , sporo opierając się na tekstach wskazuję że kto inny napisał whitepaper bitcoina a kto inny pisał maile czy posty jako satoshi, wskazywało by to grupę osób niż jednego autora. Jedne z badań podają następujące wyniki że najbardziej prawdopodobnym autorami whitepaper oraz maili jest ktoś z grupy Nick Szabo, Ian Grigg, Wei Dai, lub Timothy C. May . Jest też plotka że samo NSA robiło wiele badań w tym temacie

Linki
https://programminghistorian.org/en/lessons/introduction-to-stylometry-with-python
https://towardsdatascience.com/stylometric-analysis-satoshi-nakamoto-294926cdf995
https://medium.com/cryptomuse/how-the-nsa-caught-satoshi-nakamoto-868affcef595

#bitcoin
d.....y - Stylometria – metoda analizy której celem jest ustalenie statystycznej char...

źródło: comment_IaTXTSAHuC8dTqBh8eKQ2N9gtROkRcd6.jpg

Pobierz
  • 11
tak jak już to kiedyś ktoś wspomniał, że @dla_zabawy

jeden z najmądrzejszych tutaj łbów jesteś, a nick masz taki niby śmichy hihy wygibachy


chętnie bym popaczył na narzędzia jak to wszystko zrobiłeś, jakieś pliki, kod, pobieranie danych, filtrowanie, mielenie, jakieś paski postępu ( ͡ ͜ʖ ͡) nie to żebym myślał że te cyferki to wzięte z dupy na potwierdzenie teorii, tylko żeby zobaczyć ile to trzeba kodu
@m00n: Do skuteczne ale dość proste algorytmy , gdyby badać więcej długość słów, znaki interpunkcyjne etc.. wyniki były by bardziej dokładne... zawsze na końcu jest człowiek.

Ale jesteś blisko ( ͡° ͜ʖ ͡°)
@ce029c47: Ogólnie to programowanie w pythonie a tego używam jest dość proste bo do wszystkiego są biblioteki, najwięcej bujania z pobraniem danych bo API wykopu słabe. Ale sprowadza się do

pobrania 200 stron tagu przez API
pobrania reszty tagu przez scrappowanie czyli udawanie że jesteś przeglądarką i robisz page down
zapisanie wszystkiego w bazie mongodb aby było szybciej

a potem do wszystkiego masz biblioteki takie jak ntlk gdzie już masz funkcje
pobrania reszty tagu przez scrappowanie czyli udawanie że jesteś przeglądarką i robisz page down


@dla_zabawy: o to to było kiedyś mi potrzebne do jakiś kombinacji, ale nie chciało działać z opisów które znalazłem, masz jakieś dobre lektury po ręką które znajdziesz w 24 sekundy? jak musisz szukać to olej temat, nie było pytania