Machine learning w klasyfikacji stron internetowych w systemie eAuditor V7 WEB
Klasyfikacja stron internetowych może być przydatna w każdym podmiocie, gdzie nadzór i kontrola aktywności użytkowników może mieć realny wpływ na bezpieczeństwo. Zaimplementowanie algorytmu uczenia maszynowego pozwala na sprawne i szybkie klasyfikowanie każdej strony internetowej pod kątem jej zawartości i przypisania (sklasyfikowania) do odpowiedniej kategorii. Moduł klasyfikacji stron www w systemie eAuditor V7 WEB przygotowany jest na występowanie różnych zdarzeń losowych w taki sposób, aby mimo błędu po stronie serwera lub wygaśnięcia strony internetowej nie przerywał działania i poprawnie wykonywał swoje zadanie, przypisując strony www do odpowiednich kategorii.
Klasyfikator stron internetowych w systemie eAuditor V7 WEB
Klasyfikator bayesowski, który bazuje na twierdzeniu Bayesa, nadaje się w szczególności do rozwiązywania problemów o bardzo wielu wymiarach na wejściu. Mimo prostoty metody, często działa ona lepiej od innych, bardzo skomplikowanych metod klasyfikujących. Wspomniany klasyfikator można uczyć w trybie uczenia z nadzorem. Oznacza to, że do poprawnego i jeszcze lepszego działania algorytmu konieczny jest nadzór człowieka, który na bieżąco będzie analizował i poprawiał ewentualne błędy algorytmu. Klasyfikacja jest tak długo poprawna, jak długo poprawna kategoria jest bardziej prawdopodobna od innych.
W praktyce zdarza się, że algorytm wskaże inną kategorię, niż się tego spodziewamy. Dzieje się to zwłaszcza na stronach informacyjnych, które składają się z wielu artykułów o wielu tematykach i branżach. Wtedy algorytm może wskazać chybioną kategorię.
Czas klasyfikacji strony internetowej w systemie eAuditor V7 WEB
Klasyfikacja pojedynczego URL trwa od 1 do 2 sekund. W praktyce osiąga się wysoką wydajność z uwagi na wielowątkową obsługę procesów klasyfikacji (jednoczesne klasyfikowanie kilkudziesięciu lub kilkuset stron).
Poprawność klasyfikacji stron internetowych w systemie eAuditor V7 WEB
W ramach testu machine learningu w eAuditor V7 WEB skategoryzowano 1000 losowych i mało popularnych stron internetowych. Poprawność przypisania kategorii dla tych stron wynosi około 90%. Problem z osiągnięciem lepszych rezultatów nie stoi po stronie algorytmu, gdyż ten stwierdza największe prawdopodobieństwo wystąpienia danej kategorii. Problematyczny jest fakt, że jedna strona internetowa może zawierać się w kilku kategoriach na raz i każda z kategorii może być poprawna.
Przykładowo www.onet.pl może być skategoryzowany zarówno jako wiadomości i media, jak również jako rozrywka czy prawo i polityka.
Jak działa machine learning w klasyfikacji stron www w systemie eAuditor V7 WEB?
Etapy klasyfikacji stron www:
- pobranie listy adresów, które należy skategoryzować,
- pobranie zawartości konkretnej strony www (tekst),
- oczyszczenie pobranej strony ze zbędnych informacji takich jak:
- powtarzające się słowa,
- analiza tekstu pod kątem występowania wyrażeń w liczbie mnogiej,
- analiza tekstu pod kątem słów, które nie mają żadnego znaczenia w kategoryzacji stron www (przykładowo: yes, that, where, when oraz gdy, dokąd, kiedy),
- oczyszczenie tekstu.
Obsługa większej ilości języków. Wyszczególnia się klasyfikacje dla 52 języków.
Dzięki API Google translator przetłumaczono polskie bazy, które zawierają około 3500 unikalnych słów dla każdej z kategorii i na tej podstawie wygenerowano słowniki dla innych, niżej wyszczególnionych języków.
Zaimplementowano obsługę przechodzenia przez podstrony w sytuacji, gdy na stronie głównej nie znajduje się wystarczająca ilość słów potrzebnych do klasyfikacji. Kolejną z zaimplementowanych funkcjonalności jest obsługa przekierowań do innych stron.
Klasyfikator stron internetowych, dzięki integracji z bazami rządowymi potrafi wskazywać strony zgłoszone jako wyłudzające dane, a także strony hazardowe, które zostały zablokowane.
Klasyfikator stron internetowych z powodzeniem sklasyfikował już ponad dwa miliony unikalnych adresów internetowych dla ponad 50 języków. Aż 93% stron zostało sklasyfikowanych. 7% odnosi się do stron pustych, nieaktywnych lub takich, gdzie zawartość jest doładowywana z zewnątrz.
Ocena witryn internetowych pod kątem bezpieczeństwa według zdefiniowanych kryteriów
Podczas klasyfikacji stron internetowych równolegle ocenia się bezpieczeństwo badanej strony pod kątem pięciu kryteriów:
- Czy strona internetowa oznaczona jest jako wyłudzająca dane,
- Czy strona internetowa jest zablokowana przez rząd,
- Czy język strony internetowej jest rozpoznawalny,
- Czy strona internetowa zawiera protokół SSL,
- Czy kategoria zawrócona przez klasyfikator jest bezpieczna (nie jest to Pornografia ani Hazard).
Dzięki połączeniu się z API strony CERTU oraz Ministerstwem Finansów raz dziennie aktualizowana jest lista stron niebezpiecznych.
Kolejnymi etapami rozwoju klasyfikatora będzie:
- Obsługa tekstu doładowywanego z zewnątrz,
- Dołączenie i rozwijanie klasyfikatora obrazów.
Dlaczego wprowadziliśmy machine learning do systemu eAuditor V7 WEB?
Oto kilka powodów, dla których zastosowaliśmy w systemie eAuditor V7 WEB machine learning, zamiast bazy danych klasyfikacji stron www:
- baza danych stron www z przypisanymi kategoriami jest ogromna oraz zajmuje mnóstwo miejsca (pow. 1 TB). Ilość stron www to nie kilka tysięcy czy nawet milionów. Obecnie jest to ilość trudna do oszacowania,
- zastosowanie gotowej bazy danych nie obejmuje nawet 75% stron przeglądanych przez naszych klientów – jest to fizycznie niemożliwe,
- strony www mogą zmieniać swoją kategorię szybciej niż gotowe bazy danych kategorii stron,
- bazy danych wymagają stałej aktualizacji, co jest kosztowne oraz pochłania mnóstwo czasu,
- machine learning kategoryzuje strony www indywidualnie pod potrzeby każdego użytkownika.
Korzyści z machine learningu dla użytkowników systemu eAuditor:
- automatyczne przypisanie kategorii do każdej odwiedzanej strony www,
- wysoka skuteczność klasyfikacji,
- autodostosowanie do każdego użytkownika systemu eAuditor,
- brak bazy danych kategorii stron www i konieczności jej aktualizacji,
- automatyczna reklasyfikacja w przypadku modyfikacji algorytmu lub modyfikacji strony www,
- niezależność od zewnętrznych dostawców takiej bazy,
- redukcja kosztów eksploatacji systemu,
- możliwość integracji z systemem Hyprovision DLP pod kątem blokowania wybranych typów stron.