Wykład z pojęć wstępnych - Zakład Systemów Informatycznych
Transkrypt
Wykład z pojęć wstępnych - Zakład Systemów Informatycznych
Uniwersytet Śląski Systemy Wyszukiwania Informacji Agnieszka Nowak – Brzezińska [email protected] Instytut Informatyki, Zakład Systemów Informatycznych Uniwersytet Śląski 1 Warunki zaliczenia przedmiotu • Obowiązkowa obecność na wykładach • Obowiązkowa obecność i sumienna praca na laboratorium • Egzamin pisemny i ustny Literatura http://zsi.tech.us.edu.pl/~nowak/swibio/index.html Baza danych a system informacyjny obiekt atrybut Wartość atrybutu X A Rok wydania Wydawnictwo Dziedzina X1 1987 PWN Informatyka X2 1990 WNT Informatyka X3 1987 PWN Elektronika X4 1990 WNT Informatyka Nazwa obiektu 4 Obiektami najczęściej są dokumenty w których chcemy wyszukiwać informacji 5 Budowa SWI Celem systemu wyszukiwania informacji jest dostarczenie użytkownikowi poszukiwanej przez niego informacji. Użytkownik, który ma szereg pytań, powinien na nie otrzymać odpowiedź w jak najkrótszym czasie. Dokument źródłowy (Opis, plan, rysunek, informacja słowna, słyszana) dokument wtórny, który ma tę samą wagę informacyjną, ale w znacznie skróconej, zakodowanej i skompresowanej formie jest najważniejszym modułem. Dba o to, aby wyszukać informacje w jak najkrótszym czasie, z jak największą dokładnością i jak najmniejszą ilością szumu informacyjnego. przekazuje użytkownikowi uzyskane informacje w dowolnym języku dogodnym dla użytkownika. Dokumenty - rodzaje • Dokument źródłowy - opis obiektu w postaci źródłowej (język naturalny); dokument na wejściu systemu (np. ankiety) • Dokument wtórny - dokument opracowany na podstawie dokumentu źródłowego przystosowany do konkretnego systemu informatycznego; dokument gdzie wszystkie informacje z dokumentu źródłowego są kodowane; są to informacje skrócone. • Dokument wyszukiwawczy - jest to dokument opracowany na podstawie dokumentu wtórnego; przystosowany do konkretnej metody wyszukiwania informacji. Definicja SI Dziedzina atrybutu • Z każdym atrybutem „a” należącym do zbioru A zwiążemy zbiór wartości tego atrybutu (Va). • Dziedzina atrybutu „a” jest co najmniej dwuelementowa, tzn. każdy atrybut może przyjmować co najmniej jedną z 2 możliwych wartości. • Dziedziną Va atrybutu „a” w systemie S będzie zbiór Va określony jako: Va = {v V: dla których istnieje x X, takie, że (x,a)=v} Funkcja informacji • • Będzie to funkcja dwuargumentowa, dla opisu własności obiektów. Każdemu obiektowi x X i atrybutowi a A przyporządkowuje wartość v należącą do dziedziny Va. Przykłady SI X A Rok wydania Wydawnictwo Dziedzina X1 1987 PWN Informatyka X2 1990 WNT Informatyka X3 1987 PWN Elektronika X4 1990 WNT Informatyka X = {x1,x2,x3,x4} A = {Rok wydania, Wydawnictwo, Dziedzina} Vrok wydania = {1987,1990} V Wydawnictwo = {PWN, WNT} V Dziedzina = {Informatyka, Elektronika} Deskryptor • Parę (a,v) gdzie a jest atrybutem ze zbioru A, v Va – jest wartością atrybutu a należącą do dziedziny - nazywamy deskryptorem. (Dziedzina, Elektronika) (Wydawnictwo, PWN) Informacja o obiekcie w systemie S • To funkcja x o argumentach w A i wartościach w V taka, że x (a) = (x,a) wprowadzona dla każdego x X. • Jest to po prostu zbiór wartości wszystkich atrybutów obiektu w danym systemie. • Np. Czyli jest to zbiór deskryptorów !!! Opis obiektu X w systemie S • To zbiór deskryptorów wyznaczony przez informację o obiekcie. • Różnica jest formalna: informacja o obiekcie to pewna funkcja, a opis obiektu to termin (twór językowy). Definicja informacji w systemie S • Informacją w systemie S będzie każda funkcja o argumentach w zbiorze atrybutów A oraz wartościach należących do V, taka, że (a) Va. • Wszystkich możliwych informacji w systemie będzie: card (Va ) aA Przykład Zakładając, że w naszym systemie S mamy następujący zbiór atrybutów: A = {a,b,c} oraz zbiory wartości dla poszczególnych atrybutów: Va = {p1,p2}, Vb = {q1,q2,q3} oraz Vc={r1,r2,r3} card (Va ) aA card (Va ) * card (Vb ) * card (Vc ) 2 * 3 * 3 18 (a,p1)(b,q1)(c,r1) (a,p1)(b,q1)(c,r2) (a,p1)(b,q1)(c,r3) (a,p1)(b,q2)(c,r1) (a,p1)(b,q2)(c,r2) (a,p1)(b,q2)(c,r3) (a,p1)(b,q3)(c,r1) (a,p1)(b,q3)(c,r2) (a,p1)(b,q3)(c,r3) (a,p2)(b,q1)(c,r1) (a,p2)(b,q1)(c,r2) (a,p2)(b,q1)(c,r3) (a,p2)(b,q2)(c,r1) (a,p2)(b,q2)(c,r2) (a,p2)(b,q2)(c,r3) (a,p2)(b,q3)(c,r1) (a,p2)(b,q3)(c,r2) (a,p2)(b,q3)(c,r3) Własności informacji w systemie • Każda informacja wyznacza pewien zbiór obiektów X takich, że X = {x X: x = } Czyli obiektów mających w systemie jednakową informację. • Informacja jest pusta gdy nie odpowiada jej żaden obiekt w systemie: X = {} System jest selektywny System jest selektywny wtedy i tylko wtedy gdy każdej informacji odpowiada co najwyżej jeden obiekt. System kompletny System jest kompletny wtedy i tylko wtedy gdy każdej informacji odpowiada co najmniej jeden obiekt. Inna definicja: System jest kompletny wtedy i tylko wtedy gdy każda informacja w systemie jest niepusta. Przykład – czy system jest selektywny ? X A b C X1 P1 Q2 R1 X2 P1 Q3 R2 X3 P1 Q2 R1 x4 p2 q1 r3 Jeśli: A = {a,b,c} Va = {p1,p2}, Vb = {q1,q2,q3} oraz Vc={r1,r2,r3} wówczas: Funkcja taka, że (a)=p1, (b)=q2, (c) = r1 lub opis: (a,p1)(b,q2)(c,r1) jest informacją w systemie S oraz X = {x1,x3} X = {x X: x = } = {x X: a A x(a) = (a)} = a A {x X: (x,a) = (a) }= {x X: (x,a) = p1 } {x X: (x,b) = q2 } {x X: (x,c) = r1 } = {x1,x2,x3} {x1,x3} {x1,x3} = {x1,x3} System nie jest selektywny Przykład – czy system jest kompletny ? X A b C X1 P1 Q2 R1 X2 P1 Q3 R2 X3 P1 Q2 R1 x4 p2 q1 r3 Jeśli: A = {a,b,c} Va = {p1,p2}, Vb = {q1,q2,q3} oraz Vc={r1,r2,r3} wówczas: Liczba możliwych informacji w systemie wynosi: 2 * 3 * 3 18 I istnieje przynajmniej jedna taka informacja, np.: (a,p1)(b,q1)(c,r1) Której nie odpowiada żaden z obiektów w systemie, inaczej powiemy, że jest ona informacją pustą. System nie jest kompletny Równoważność obiektów w systemie • Obiekty x,y X są nierozróżnialne w systemie S ze względu na atrybut a A: ~ ( x y ) x (a) y (a) a • Obiekty x,y X są nierozróżnialne w systemie S ze względu na KAŻDY atrybut a A: ~ ( x y) ( x (a) y (a)) aA S ~ • A więc: ( x y) x y S Równoważność obiektów w systemie • Obiekty x1 i x4 są nierozróżnialne w systemie S ze względu na atrybut „a” gdyż: ~ ( x1 x4 ) x1 (a) x4 (a) a • Obiekty x1 i x3 są nierozróżnialne w systemie S ze względu na KAŻDY atrybut a A: ~ ( x1 x3 ) ( x1 (a) x3 (a)) x1 x3 aA S X A b C X1 P1 Q2 R1 X2 P2 Q3 R2 X3 P1 Q2 R1 x4 P1 q1 r3 Relacja równoważności • Jest określona na zbiorze obiektów X. • Każda taka relacja dzieli zbiór, na którym jest określona, a więc zbiór obiektów, na rozłączne klasy, które będziemy nazywać blokami (klasami) elementarnymi. a B X1 P1 Q1 X2 P1 Q1 X3 P1 Q2 X4 P2 Q1 X5 P2 Q1 x6 p2 q2 a X1 P1 X2 P1 X3 P1 B1={x1,x2,x3} a X4 P2 X5 P2 x6 p2 B2={x4,x5,x6} Klasa równoważności • Klasą równoważności nazywamy najmniejszy zbiór obiektów opisywalny w systemie, taki, który da się opisać przez atrybuty sytemu. • Klasa równoważności - zbiór obiektów nierozróżnialnych w systemie. Klasę równoważności (dla zbioru atrybutów A) tworzą obiekty nierozróżnialne względem siebie biorąc pod uwagę atrybuty ze zbioru A (a więc obiekty mające identyczne wartości dla atrybutów ze zbioru A). Relacja równoważności B a B X1 Q1 X1 P1 Q1 X2 Q1 X2 P1 Q1 X4 Q1 X3 P1 Q2 X5 Q1 X4 P2 Q1 X5 P2 Q1 x6 p2 q2 B3={x1,x2,x4,x5} B X3 Q2 x6 q2 B4={x3,x6} Relacja równoważności B a B X1 P1 Q1 X1 P1 Q1 X2 P1 Q1 X2 P1 Q1 X3 P1 Q2 a B X4 P2 Q1 P1 Q2 X5 P2 Q1 x6 p2 q2 a B X4 P2 Q1 X5 P2 Q1 a B p2 q2 X3 x6 B5={x1,x2} B6={x3} B7={x4,x5} B8={x6} Zbiory elementarne a Równoważność dwóch systemów • Jeżeli systemy S i S’ mają ten sam zbiór obiektów to są równoważne (S ~ S’) wtedy i tylko wtedy gdy generują tę samą relację równoważności na zbiorze X, tj. ~ ~ S S' • Jeżeli systemy S i S’ mają ten sam zbiór obiektów to powiemy, że system S jest dokładniejszy niż S’ wtedy i tylko wtedy gdy ~ ~ S S' Zależność atrybutów Jeśli „a” i „b” są atrybutami w systemie informacyjnym to: ~ ~ ab a) „b” zależy od „a” (ab) gdy b) „a” i „b” są niezależne gdy nie zachodzi żadna z relacji: ~ ~ ab ~ ani ~ ba c) Atrybuty „a” i „b” są równoważne w S (a ~ b) gdy: ~ ~ a b Jeśli ab… • To istnieje funkcja o argumentach w zbiorze wartości atrybutu „a” oraz przyjmująca wartości ze zbioru „b”, która jednocześnie przyporządkowuje wartościom atrybutu „a” wartości „b”. • Często mówi się wtedy o zależnościach funkcjonalnych (funkcyjnych). • Jeżeli „b” zależy od „a” to istnieje funkcja: f : Va Vb b a x (b) f ( x (a)) X b, b a x (b ) X a, x ( a ) Przykład a b C X1 P1 Q1 R1 X2 P1 Q1 R2 X3 P2 Q1 R3 X4 P2 Q1 R4 X5 P1 Q2 R1 X6 P1 Q2 R2 X7 P2 Q2 R3 ab x8 p2 q2 R4 ba • • • • • ~ a {{x1, x2, x5, x6},{x3, x4, x7, x8}} ~ b {{x1, x2, x3, x4},{x5, x6, x7, x8}} ~ c {{x1, x5},{x2, x6},{x3, x7},{x4, x8}} X= {x1,x2,..,x8} A = {a,b,c} Va = {p1,p2} Vb={q1,q2} Vc={r1,r2,r3,r4} ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ bc ac cb ca ca Przykład a b C X1 P1 Q1 R1 X2 P1 Q1 R2 X3 P2 Q1 R3 X4 P2 Q1 R4 X5 P1 Q2 R1 X6 P1 Q2 R2 X7 P2 Q2 R3 x8 p2 q2 R4 ca Gdy (C=r1) wówczas (a=p1) Gdy (C=r2) wówczas (a=p1) Gdy (C=r3) wówczas (a=p2) Gdy (C=r4) wówczas (a=p2) • Na tym koniec 1 wykładu…. • Reszta w następny wtorek 33 Język deskryptorowy Ls = <A,G> Syntaktyka Semantyka Przykłady • Niech system S będzie systemem informacyjnym: Alfabetem będą: Stałe: 0 i 1 Symbole: +, *,~, , Atrybuty: {a, b, c} I ich wartości: {v1,v2,w1,w2,u1,u2,u3} To w naszym języku termami będą wyrażenia: a b C X1 V1 W1 U2 X2 V2 W1 U3 X3 V1 W2 U1 X4 V1 W2 U1 X5 V2 W2 U3 X6 v1 w1 u3 (a, v1 ) (b, w2 ) * (c, u2 ) ~ [(a, v2 ) * (a, v1 )] * (c, u3 ) (b, w1 ) (c, u1 ) (b, w1 ) (c, u3 ) (a, v2 ) (b, w2 ) Przykłady cd. • Wtedy znaczeniem tych termów będą zbiory: (a, v1 ) (b, w2 ) * (c, u2 ) a b C X1 V1 W1 U2 X2 V2 W1 U3 X3 V1 W2 U1 X4 V1 W2 U1 X5 V2 W2 U3 X6 v1 w1 u3 s ((a, v1 ) (b, w2 ) * (c, u2 )) {x1, x3, x 4, x6} ({x3, x 4, x5} {x1}) {x1, x3, x 4, x6} Przykłady cd. • Wtedy znaczeniem termu: ~ [(a, v2 ) * (a, v1 )] * (c, u3 ) a b C X1 V1 W1 U2 X2 V2 W1 U3 X3 V1 W2 U1 X4 V1 W2 U1 X5 V2 W2 U3 x6 v1 w1 u3 będzie zbiór: s (~ [(a, v2 ) * (a, v1 )] (c, u3 )) ~ {} {x 2, x5, x6} X Przykłady cd. • Wtedy znaczeniem termu: (b, w1 ) (c, u3 ) a b C X1 V1 W1 U2 X2 V2 W1 U3 X3 V1 W2 U1 X4 V1 W2 U1 X5 V2 W2 U3 X6 v1 w1 u3 będzie zbiór: s ((b, w1 ) (c, u3 )) ( X {x1, x 2, x6}) {x 2, x5, x6} {x 2, x3, x 4, x5, x6} Rodzaje termów Reguły przekształcania termów Przykład przekształcenia termów t1 ~ [(a, v1 ) * (b, w2 )] (c, u1 ) t2 ~ (a, v1 ) ~ (b, w2 ) (c, u1 ) t3 (a, v2 ) (b, w1 ) (c, u1 ) Konieczność normalizacji termu t4 sprawi, że będzie on miał postać: t 4 (a, v2 ) * [(b, w1 ) (b, w2 )] *[(c, u1 ) (c, u2 )] (b, w1 ) * [(a, v1 ) (a, v2 )] *[(c, u1 ) (c, u2 )] (c, u1 ) * [(b, w1 ) (b, w2 )] * [(a, v1 ) (a, v2 )] (a, v1 )(b, w1 )(c, u1 ) (a, v1 )(b, w1 )(c, u1 ) (a, v1 )(b, w1 )(c, u2 ) (a, v1 )(b, w2 )(c, u1 ) (a, v1 )(b, w2 )(c, u2 ) (a, v2 )(b, w1 )(c, u1 ) (a, v2 )(b, w1 )(c, u2 ) (a, v2 )(b, w2 )(c, u1 ) (a, v2 )(b, w2 )(c, u2 ) Wtedy znaczeniem termu t4 będzie: s ((a, v1 )(b, w1 )(c, u2 )) {x1} s ((a, v2 )(b, w1 )(c, u1 )) {x5, x6} s ((a, v1 )(b, w2 )(c, u1 )) {x3, x 4} Pozostałe termy są puste a więc: s (t1 ) {x1} {x5, x6} {x3, x4} {x1, x3, x4, x5, x6} a b C X1 V1 W1 U2 X2 V2 W1 U3 X3 V1 W2 U1 X4 V1 W2 U1 X5 V2 W1 U1 X6 V2 w1 U1 Równość i zawieranie się termów Termy t1 i t2 są równe: t1 (a, v1 )(b, w1 )(c, u2 ) t2 (a, v1 )(b, w1 ) (t1 ) ((a, v1 )(b, w1 )(c, u2 )) {x1} (t2 ) ((a, v1 )(b, w1 )) {x1} a b C X1 V1 W1 U2 X2 V2 W1 U3 X3 V1 W2 U1 X4 V1 W2 U1 X5 V2 W1 U1 X6 V2 w1 U1 Zawieranie się termów t1 i t2: t1 (a, v1 )(b, w1 )(c, u2 ) t2 (a, v1 ) (t1 ) ((a, v1 )(b, w1 )(c, u2 )) {x1} (t2 ) ((a, v1 )) {x1, x3, x4} a b C X1 V1 W1 U2 X2 V2 W1 U3 X3 V1 W2 U1 X4 V1 W2 U1 X5 V2 W1 U1 X6 V2 w1 U1 (t1 ) (t2 ) t2 t1 Parametry SWI 1. 2. • • 3. 4. Struktura bazy danych Redundancja i zajętość pamięci: Obiektowa (powielenie się opisu obiektów w BD) Atrybutowa (powielenie się adresów obiektów w BD) Aktualizacja bazy danych Czas wyszukiwania