Wykonuję różne techniki analizy sentymentu dla zestawu danych Twittera, które nabyłem. Są oparte na leksykonie (Vader Sentiment i SentiWordNet) i jako takie nie wymagają danych z etykietami.
Zastanawiałem się, czy istnieje metoda (jak F-Score, ROC / AUC) do obliczenia dokładności klasyfikatora. Większość znanych mi metod wymaga celu, aby porównać wynik z.
Odpowiedzi:
1 dla odpowiedzi № 1To, co zrobiłem dla moich badań, to mały przypadekpróbka tych tweetów i ręcznie oznacz je jako pozytywne lub negatywne. Następnie możesz obliczyć znormalizowane wyniki za pomocą VADER lub SentiWordNet i obliczyć macierz zamieszania dla każdego, co da Ci wynik F-score itp.
Chociaż może to nie być szczególnie dobretest, ponieważ zależy to od próbki użytych tweetów. Na przykład może się okazać, że SentiWordNet klasyfikuje więcej rzeczy jako negatywne niż VADER, a zatem wydaje się mieć większą dokładność, jeśli próbka losowa jest w większości negatywna.
0 dla odpowiedzi nr 2
Krótka odpowiedź brzmi: nie, nie sądzę. (Byłbym bardzo zainteresowany, gdyby ktoś inny opublikował metodę)
Z pewnym niekontrolowanym uczeniem maszynowymtechniki, które możesz uzyskać pomiar błędu. Na przykład. autoencoder daje MSE (reprezentujący jak dokładnie reprezentacja niższego wymiaru może zostać odtworzona z powrotem do oryginalnej formy wyższej).
Ale do analizy sentymentów mogę tylko myślećużywać wielu algorytmów i mierzyć zgodność między nimi na tych samych danych. Tam, gdzie wszyscy zgadzają się co do konkretnego uczucia, zaznaczasz je jako bardziej wiarygodne przewidywanie, w którym wszyscy nie zgadzają się, że oznaczasz to jako niepewne przewidywanie. (Polega to na tym, że żaden z algorytmów nie ma takich samych błędów, co jest prawdopodobnie mało prawdopodobne.)
Zwykłe podejście polega na oznaczeniu pewnego procentu danych i założeniu / nadziei, że jest reprezentatywny dla wszystkich danych.