Podręcznik

1. Semantyczne modele informacji

1.10. Opis schematu znakowania i wyszukania treści

Dla każdego rozważanego atrybutu a możemy mówić o indeksie danej kolekcji obiektów \mathcal{O} . Indeks zawiera listę kolejnych cech reprezentatywnych c^{\tau} , przy czym każdej z nich przypisana jest lista \iota_1,\iota_2,\ldots (w uproszczonej postaci) identyfikatorów \iota(o) wszystkich obiektów   o\in \mathcal{O} o atrybucie reprezentowanych przez \tau_a(a(o))=c^{\tau} . Lista l_{c^{\tau}} obiektów podobnych (skrótowo: lista obiektowa) w sensie właściwości a i przyjętej \rho_a wygląda następująco: \mathcal{L}_{c^{\tau}}=\{l_{c^{\tau}};\iota_1,\iota_2,\ldots,\iota_{l_{c^{\tau}}}\} .

Liczba obiektów   l_{c^{\tau}} na liście zależy od przyjętego kryterium podobieństwa, przy czym zwykle przyjmowana jest progowa definicja zbioru obiektów podobnych jako \mathcal{O}_{c^{\tau}}=\{o\in \mathcal{O}\colon \rho(a(o),c^{\tau})\geq \rho_{min}\} , z minimalnym progiem podobieństwa t=\rho_{min} \in [0,1] . Wtedy l_{c^{\tau}}=|\mathcal{O}_{c^{\tau}}| . Dodatkowo, liczba obiektów podobnych identyfikowanych na liście ograniczana jest za pomocą zadanych granic jej liczności, tj. L_{min} \leq l_{c^{\tau}} \leq L_{max} . Przy większej liczbie obiektów podobnych względem \rho_{min} wskazywanych jest jedynie L_{max} najbardziej podobnych. Natomiast przy braku wystarczającej liczby obiektów podobnych względem \rho_{min} , dopisywane są kolejne najbardziej podobne obiekty kosztem obniżenia minimalnego progu podobieństwa. Założona liczność list obiektowych może wynikać z przewidywanego mechanizmu wyszukiwania, kiedy to sztywna liczba zwracanych obiektów podobnych wynosi L_{max} , natomiast nie może być ona mniejsza niż L_{min} . Często jednak realizowane procedury wyszukiwania wykorzystują bardziej różnorodne, adaptacyjne formy odpowiedzi na zapytania. 

Wyszukiwanie bazuje na odpowiednio przygotowanym indeksie. Typowy, możliwie ogólny scenariusz wyszukiwania jest następujący: 

  •  założenia wstępne: wyszukiwanie bazuje na indeksie atrybutu a kolekcji multimediów \mathcal{O} i polega na sformułowaniu odpowiedzi na zapytanie przy ustalonych uwarunkowaniach -- np. zwracając co najmniej K_{min} i co najwyżej K_{max} obiektów najbardziej podobnych, tj. posortowanych według wartości funkcji podobieństwa do cechy zapytania c_{query} , przekraczających próg \rho_{min} ; kolejne działania procedury wyszukiwania bazują na przygotowanej strukturze indeksu, odwołując się do listy cech, list obiektowych z identyfikatorami obiektów przypisanych danej cesze reprezentatywnej czy też do algorytmów liczących cechy obiektów i porównujących je;
  • sformułowanie zapytania w postaci cechy c_{query}\in C_{a} , określonej przez użytkownika za pomocą odpowiednio przygotowanego interfejsu lub poprzez algorytm ekstrakcji cech atrybutu a z obiektu   \)o_{query} \) stanowiącego zapytanie przez przykład;
  • wyszukanie najbardziej podobnych obiektów poprzez znalezienie w zbiorze cech reprezentatywnych atrybutu a cech reprezentatywnych c^{\tau} spełniających warunek podobieństwa w stosunku do c_{query} ; w przypadku definicji progowej mamy
\rho(c_{query},c^{\tau})\geq \rho_{min} 

(3.4) 

uzyskując ciąg c_1^{\tau}, \cdots, c_L^{\tau} cech podobnych ze wspólną listą obiektową 

\mathcal{L}_{c_{query}}= \mathcal{L}_{c_1^{\tau}} \cup \mathcal{L}_{c_2^{\tau}} \cup \cdots \cup \mathcal{L}_{c_L^{\tau}}

dobór wielkości \rho_{min} powinien być podyktowany względami merytorycznymi, zależnie od rodzaju danych oraz celów wyszukiwania, przy czym możliwy jest interaktywny dobór tego parametru przez użytkownika; w przypadku  kryterium jedynie ilościowego realizowany jest schemat z pożądaną liczbą obiektów wskazywanych przez \mathcal{L}_{c_{query}} , przykładowo poprzez posortowanie cech reprezentatywnych względem ich malejącego podobieństwa do c_{query} , a następnie  dołączanie do tworzonej wspólnej listy obiektowej w pierwszej kolejności obiektów z list cech reprezentatywnych najbliższych c_{query} , aż do uzyskania założonej liczby   L^{c_{query}}_{max} obiektów;  

  • sformułowanie odpowiedzi na zapytanie w postaci zestawu obiektów najbardziej podobnych, tj.  obiektów identyfikowanych przez połączoną listę \mathcal{L}_{c_{query}} ; w przypadku ograniczenia odpowiedzi do K_{max} obiektów podobnych, możliwe jest dodatkowe posortowanie obiektów z \mathcal{L}_{c_{query}} według obliczonej dokładnie wartości podobieństwa \rho(c_{query},a(o)) ( c(o) mogą być przechowywane w słowniku); spełnienie warunku K_{min} dla trudnych zapytań można uzyskać poprzez obniżenie wartości progu \rho_{min} .

W praktyce realizowanych jest kilka typowych uwarunkowań wyszukiwania, dotyczących:

  • ustalonej liczby K obiektów najbardziej podobnych do zapytania, gdzie K_{min} = K_{max} = K > 0 , niezależnie od stopnia podobieństwa cech obiektów ( \rho_{min} = 0 );
  • wszystkich obiektów istotnie podobnych, tj. spełniających ustalone kryterium podobieństwa -- np. z progiem \rho_{min} >0 ; wtedy K_{min} = 0, K_{max} = \infty ;
  • ograniczonej liczby obiektów istotnie podobnych, co jest logicznym połączeniem dwóch powyższych kategorii; warunkiem koniecznym odpowiedzi jest spełnione kryterium podobieństwa (określone np. progiem \rho_{min} >0 ), przy ograniczeniu liczby obiektów stanowiących odpowiedź jedynie do K najistotniejszych, czyli K_{min} = 0, K_{max} = K ;
  • przynajmniej K obiektów podobnych, gdzie K_{min} = K > 0 , zaś K_{max}=\infty i   \rho_{min} > 0 ; zapewnienie minimalnej liczby obiektów podobnych odbywa się niekiedy kosztem złagodzenia kryterium podobieństwa. 

Możliwe są też inne kombinacje podstawowych parametrów definiujących warunki wyszukiwania, możliwa jest adaptacja reguł zapytania do potrzeb użytkownika, np. poprzez wprowadzenia mechanizmu doboru relacji pomiędzy K i \rho_{min} na podstawie liczności ustalonej \mathcal{L}_{c_{query}}

W realizacji powyższego scenariusza użyteczne są następujące struktury danych realizujące indeks: 

  • słownikowa DictionaryOfFeatures cech reprezentatywnych atrybutu, zwykle w pamięci operacyjnej; w kolejnych pozycjach słownika obok c^{\tau} umieszczane są adresy przypisanych im list obiektowych \iota_{\mathcal{L}_{c^{\tau}}} ;
  • tablicowa CollectionOfLists listy obiektowych, w pamięci operacyjnej lub dyskowej, zawierająca poszczególnych cech zapisane w reprezentacji wygodnej do szybkich odwołań, niekiedy kodowanej; każda lista wskazywana jest przez swój adres \iota_{\mathcal{L}_{c^{\tau}}} liczony względem początku tablicy; 
  • słownikowa DictionaryOfObjects identyfikatorów wszystkich obiektów przeszukiwanej kolekcji \mathcal{O} , w pamięci operacyjnej lub dyskowej; kolejne frazy słownika identyfikowane przez \iota(o) z list obiektowych zawierają referencje zapewniające dostęp do zawartości obiektu multimedialnego; opcjonalnie element słownika zawiera dodatkowo cechę obiektu c = a(o) lub referencję dającą do niej dostęp.