Eksploracja Zasobów Internetowych

Transkrypt

Eksploracja Zasobów Internetowych
Eksploracja Zasobów Internetowych
Pracownia specjalistyczna, studia niestacjonarne, rok 2010/2011
Tematy projektów do realizacji
1. Web crawler
Stwórz aplikację przeszukującą sieć WWW i prezentującą wynik przeszukiwania dla użytkownika.
Jako parametr początkowy procesu przeszukiwania podawany jest adres strony startowej.
Przechodzenie do kolejnych podstron związane jest z tagami <a></a> określającymi linki.
Aplikacja powinna mieć możliwość ustawienia długości czasu działania i głębokości analizy
struktury sieci licząc od strony startowej. Wynik powinien być przedstawiony w postaci drzewa.
Zastosuj algorytm przeszukiwania BFS (wszerz) lub DFS (w głąb).
Dodatkowe opcje do implementacji (za każdą pół oceny więcej):
•
implementacja dwóch metod przeszukiwania,
•
wielowątkowe przeszukiwanie sieci z konfiguracją ilości wątków,
•
wizualizacja tworzonego grafu analizowanej sieci,
•
możliwość zapisania bieżącego stanu pracy oraz bieżących ustawień.
2. Wyszukiwarka
Napisz aplikację dającą możliwość zwracania wyników wyszukiwania (adresów URL) z uprzednio
wczytanego zbioru danych. Zbiór danych stanowi adres URL strony WWW i jej zawartość
w postaci ciągu słów (pozbawiona tagów HTML). Format zbioru danych zgodny z *.arff.
Po wczytaniu danych powinna istnieć możliwość ich podglądania (postać boolowska, ilościowa
oraz pozycyjna). Wyszukiwanie zrealizuj z wykorzystaniem notacji boolowskiej (operatory AND,
OR oraz NOT).
Dodatkowe opcje do implementacji (za każdą pół oceny więcej):
•
implementacja możliwości wyszukiwania słów leżących obok siebie,
•
wyszukiwanie oparte normy euklidesową i kosinusową – sortowanie wyników
wyszukiwania (widoczne wartości wynikowe z obliczeń),
•
obliczenia współczynników IDF,
TF lub TFIDF (jedna wybrana metoda) wraz z
możliwością podglądu wartości obliczonych dla wszystkich termów/dokumentów,
-1-
•
wszystkie dostępne metody obliczeń dla IDF, TF oraz TFIDF wraz z możliwością podglądu
wartości obliczonych dla wszystkich termów/dokumentów.
-2-
Pomoc
Metody obliczania współczynników TF (Term Frequency):
•
suma termów:
TF t i , d j =
{
0
dla n ij =0
n ij
m
dla nij 0
∑ n kj
{
k=1
0
dla nij =0
•
maksimum: TF t i , d j =
•
0
dla nij =0
logarytm: TF t i , d j = 1log 1log n  dla n 0
ij
ij
nij
dla n ij 0
max k nkj
{
gdzie nij – ilość wystąpień termu ti w dokumencie dj
Metody obliczania współczynników IDF (Inverse Document Frequency):
•
∣D∣
ułamek: IDF t i =∣D ∣
•
logarytm:
ti
IDF t i =log
1∣D∣
∣Dt ∣
i
gdzie:
D – zbiór wszystkich dokumentów,
Dt ={d j∣nij 0} - zbiór dokumentów zawierających term ti.
i
Metody obliczania odległości wektorów:
•
euklidesowa: ∥q− d j∥=

m
∑  qi−d ji 2
i=1
m
•
q⋅d j =∑ q i d ji
kosinusowa: 
i=1
-3-
Przykładowe wartości współczynników IDF:
Jeśli zapytanie q określone będzie termami computer i program, to wektor wyszukiwania będzie
miał następujące wartości:
q =0 0 0 0,5 0,5

Po nałożeniu współczynników IDF:
q =0 0 0 0,718 0,28
Na rysunku nr 1 przedstawiony jest przykładowy wynik wyszukiwania:
Rys. 1: Tabela przedstawiająca przykładowy wynik wyszukiwania
-4-