• Nie Znaleziono Wyników

Filtrowanie  związane  z  zawartością  –  Content-­‐based  filtering  (CBF)

W dokumencie Index of /rozprawy2/10252 (Stron 51-56)

Metody opierają się na analizie zawartości obiektów w celu znalezienia podobnych obiektów. Stosowana rekomendacja polega na wskazywaniu użytkownikowi innych obiektów  podobnych  do  tych  które  interesowały  użytkownika  w  przeszłości.

Szerokie spektrum dotyczące systemów CBF opisano w [3, 70], zaś problemy związane  ze  stosowaniem  systemów  CF  i  CBF  przedstawiono  w  tabelce  [3]:

Tabela 9: Problemy  filtracji  w  systemach  CF  i  CBF

CollaboraMve  Filtering Content-­‐Based  Filtering

Nowy  użytkownik  -­‐  System  po  dodaniu  nowego  użytkownika  nie  zna  jego  zainteresowań.  

System  uczy  się  stopniowo  obserwując  zachowanie  użytkownika  (ocenianie  i  pobieranie).

Nowy  obiekt  -­‐  Obiekt  nie  będzie  rekomendowany

tak  długo  aż  nie  zostanie  pobrany/oceniony  przez   określoną  liczbę  użytkowników.

Wysoka  specjalizacja  (OverspecializaMon)  

-­‐  Nie  da  się  rekomendować  użytkownikowi   obiektów  różnych  w  stosunku  do  obiektów   którymi  wcześniej  się  interesował.

Ograniczona  liczba  ocen  (sparsity)  -­‐  Obiekty  

w  kolekcji  zazwyczaj  są  ocenione  przez  niewielką   liczbę  spośród  użytkowników  systemu  lub  liczba   użytkowników  jest  niewielka.

Ograniczona  liczba  metod  ekstrakcji  danych   (Limited  Content  Analysis)  -­‐  Analiza  zawartości  

obiektów  mul`medialnych  jest  trudna.   Obiekty  mogą  być  nie  do  rozróżnienia  jeśli   reprezentowane  są  przez  ten  sam  zestaw  cech. Ponadto  na  podstawie  treści  nie  da  się  ocenić   samej  jakości  obiektów.

W pracy [68] zaproponowano zastosowanie prognozowania opartego o algo-­‐ rytmy  Content-­‐Based  w  celu  likwidacji  brakujących  rekomendacji.

Opisane trzy kategorie systemów rekomendacyjnych dość często mogą być stoso-­‐ wane łącznie. Burke w swoim artykule dokonuje szerokiej analizy różnych podejść hybrydowych  stosowanych  w  obecnych  systemach  rekomendacyjnych  [14].

2.3.3.      Web  Mining

Celem procesu ekstrakcji danych (ang. Data Mining) jest uzyskanie użytecznych informa-­‐ cji na podstawie zbioru danych. Stosowane tradycyjnie metody są ukierunkowane na uporządkowane,  zwarte  grupy  danych  które  są  zawarte  w  bazach  danych.

Sieć Web ma luźną, nieuporządkowaną strukturę i cechuje ją brak centralnego punktu przechowywania informacji. Metody ekstrakcji danych zawartych w sieci określane jako Web  Mining  dzielą  się  w  zależności  od  postaci  danych  na:

• Web Content Mining – inteligentne szukanie wskazanych danych w zasobach siecio-­‐ wych  różnego  typu,  w  tym:  w  tekście  oraz  danych  multimedialnych.

• Web Structure Mining – szukanie zależności w struktura hiperłączy pomiędzy dokumentami

• Web Usage Mining – analiza informacji o korzystaniu z serwisu, np. logów serwera HTTP  

Autor w pracy nie koncentrował się na metodach analizy treści w sieci Web z  uwagi  na  założoną  specyWikę  systemu.

2.4.    Wyszukiwanie  informacji  w  systemach  e-­learningowych

2.4.1.      Zastosowanie  proWili  w  celu  inteligentnego  wyszukania

Problemem wszystkich systemów opartych o metody Wiltrowania kolaboratywnego, szczególnie w początkowej fazie eksploatacji, jest niewielka ilość danych rozumianych jako ilość pustych komórek macierzy ocen/zdarzeń dla użytkowników. W celu eliminacji tego problemu podejmowane są próby wstępnej klasyWikacji użytkowników (przed zebraniem rzeczywistych danych mówiących o ich preferencjach) np. z wykorzystaniem tzw. zbiorów wskaźnikowych. W tym podejściu, każdy nowy użytkownik otrzymuje do oceny jeden stały zbiór elementów, na podstawie którego wyznaczana jest wstępna klasyWikacja użytkownika. Podejście to posiada wadę polegającą na tym, że zbiór wskaź-­‐ nikowy  musi  być  stały  przez  cały  cykl  życia  systemu.

Proponowane rozwiązanie polega na grupowaniu użytkowników w klastry nie tylko ze względu na ich zachowanie ale na cechy proWilu, który jest obowiązkowo wypeł-­‐ niany przy rejestracji. Z uwagi na charakter systemu wyszukiwania jest możliwe wpro-­‐ wadzenie klasteryzacja na podstawie danych zawartych w proWilu tj. w szczególności: wieku,  płci,  kraju  (edukacji)  i  zainteresowań  [95].

Podobnie jak w przypadku klasycznego Wiltrowania kolaboratywnego, tworzona jest macierz, ale w tym przypadku zawiera one cechy proWili. Procedura postępowania jest zbliżona do procedury przy klasycznym Wiltrowaniu. Wyniki przykładowego procesu klasyWikacji  użytkowników  na  podstawie  proWili  przedstawiono  na  rysunku  26.

Rysunek  26.    Klasyfikacja  użytkowników  na  podstawie  profili  w  przestrzeni  2D

Widoczna segmentacja danych związana jest z niewielką rozdzielczością danych w zbio-­‐ rze używanym do wygenerowania przykładowej ilustracji. W rzeczywistości najczęściej otrzymywany jest dość równomierny rozkład użytkowników na płaszczyźnie, co narzuca stosowanie  metod  klasteryzacyjnych  opartych  na  równomiernym  podziale  przestrzeni.

Badania eksperymentalne obejmują dobór wag poszczególnych elementów proWilu, używanych do tworzenia macierzy. Wyniki pokazują, że wagi te powinny być dostosowywane do charakterystyki danego zbioru danych. Zaimplementowany podział na moduł okresowo przetwarzający dane i moduł pobierający przetworzone już dane w czasie rzeczywistym umożliwia łatwą modyWikację parametrów już w rzeczywistym systemie.

Dodatkowe badania teoretyczne w przyszłości powinny obejmować udoskonale-­‐ nia klasteryzacji na podstawie proWili poprzez wprowadzenie „rozmywania” danych i możliwości ręcznego deWiniowania podobieństw poszczególnych wartości cech proWili. Rozmywanie ma zapewnić relaksację wymagań podobieństwa cech liczbowych, takich jak wiek – na przykład, wiek 10-­‐latka jest w 100% podobny do wieku innego 10-­‐latka, natomiast  w  np.  60%  podobny  do  wieku  11-­‐latka.  

Podobieństwa cech wyliczeniowych (np. narodowość) nie da się określić w sposób automatyczny i wymaga ręcznego deWiniowanie podobieństw pomiędzy poszczególnymi wartościami (np. matematyka/Wizyka – 80%, matematyka/chemia –  25%).  

2.4.2.      Propozycja  systemu  wyszukiwania  spersonalizowanego

System spersonalizowany oparto o dwa niezależne podejścia do klasteryzacji. Pierwsza kategoria klastrów opisuje zachowanie użytkowników (w oparciu o collaborative Wilte-­‐ ring) podczas gdy druga uwzględnia informacje zdeWiniowane przez użytkownika w swoim proWilu. Każdy z klastrów nadrzędnych został dodatkowo podzielony na 3 podtypy opisujące zachowanie: nauczycieli, uczniów oraz łącznie wszystkich użytkow-­‐ ników  zarejestrowanych.  

Dodatkowo wprowadzono wyliczanie dopasowanie konkretnego obiektu do zadeklaro-­‐ wanych  zainteresowań  danego  użytkownika.  

Ostateczne dopasowane stanowi wypadkową powyżej przedstawionych modeli, a para-­‐ metry wpływające na wagę poszczególnych wartości mogą być modyWikowane przez użytkownika  [32].

Zaprojektowany system analizy zachowań użytkownika wykorzystuje następu-­‐ jące  podejścia:  

explicit obejmujących aktywne działanie użytkownika takie jak: rating (ocena) czy label-­‐ ling  (przypisanie  etykiety,  czy  dodanie  do  ulubionych);

implicit obejmuje analizę czynności podejmowanych przez użytkownika takich jak: selection (zaznaczenie wyników), viewinng (obejrzenie szczegółowej informacji o zaso-­‐ bie)  czy  downloading  (pobranie  zasobów)

Ponadto w odróżnieniu do wielu systemów CF bazujących tylko na analizie czyn-­‐ ności podejmowanych przez użytkowników zaprojektowany system wykorzystuje również analizę podobieństw pomiędzy użytkownikami na podstawie danych wpisanych w posiadany proWil użytkownika. Analiza podobieństw wykorzystuje następujące elementy proWilu: wiek, płeć, kraj edukacji and zdeWiniowane zainteresowania. System analizy danych w proWilu jest podobny do procedury używanej w „klasycznym” podejściu CF. Tworzona jest macierz m x n, w której kolumny reprezentują wszystkie możliwe wartości każdego z 4ch analizowanych elementów proWilu. Wprowadzono również metodę oceny wzajemnych relacji pomiędzy poszczególnymi składowymi poprzez uwzględnienie  wag.  [95]

2.4.3.      Propozycja  metody  tworzenia  spersonalizowanej  listy  wyników

Proces wyszukiwania spersonalizowanego w zaprojektowanym systemie przebiega kilkuetapowo  (Rys.  27).

Rysunek  27.    Graficzne  przedstawienie  procesu  tworzenia  spersonalizowanej  listy  wyników

1. W pierwszej fazie mają miejsce dwa zdarzenia: wyszukanie obiektów dydaktycznych spełniających zadane przez użytkownika kryteria w oparciu o zaimplementowane wyniki, a następnie ich scalanie w oparciu o pre-­‐deWiniowane przez użytkownika ustawienia.

Zaproponowano  dwa  następujące  podejścia  dla  scalenia  uzyskanych  wyników:

MAX – Przykładowo jeśli dany obiekt otrzymał wartość 50, 80 i 0 jako rezultat działania

trzech metod wyszukiwawczych, to po scaleniu w spójną listę przypisywana jest maksy-­‐ malna  wartość  dopasowania  tj.  80.

AVG – Wyliczamy średnią ważoną. Uż̇ytkownik ma możliwość wprowadzenia wag dla

poszczególnych metod. Przykładowo: Jeśli jest 3 dla 50, 5 dla 80 i 1 dla 0, to LO uzyska wagę:  61.  Domyślnie  wszystkie  wartości  mają  tę  samą  wagę.

Uzyskana w ten sposób spójna lista wyników jest następnie przekazywana w celu otrzy-­‐ mania  dopasowań  w  zależności  o  określony  algorytm  proWilujący.

2. Faza druga polega na przekazaniu wartości dopasowań poszczególnych obiektów których ciąg uzyskano w fazie pierwszej w zależności od wybranego algorytmu proWilującego.

Możemy  wyróżnić  tu  następujące  podejścia:

– wartość popularności obiektu w zależności od danej klasy użytkownika. Następuje zliczanie zdarzeń takich selection (zaznaczenie wyników), viewinng (obejrzenie szcze-­‐ gółowej  informacji  o  zasobie)  czy  downloading  (pobranie  zasobów).  

Z uwagi na przyjęty brak normalizacji dla wartości popularności w algorytm ten nie uwzględniano w dalszym scalaniu wyników. Normalizacja jednak jest możliwa i  zdeWiniowano  dwa  podejścia:

• ciągłe (wyrażoną w procentach wartość popularności danego obiektu w stosunku do wszystkich  innych  obiektów  w  repozytorium  lub  w  danej  kategorii);

• dyskretne (stworzenie klas mniej więcej równolicznych i przypisanie im obligatoryj-­‐ nych wartości od 0 do 100 na przykład co 5-­‐10 jednostek). Zmiany przynależności obiektu dla danej klasy dokonywane byłyby co pewien okres. Zmiana parametrów opisujących daną klasę dokonywano by przy osiągnięciu pewnych założonych maksymalnych  różnic  w  liczebności  poszczególnych  klas.

– wartość oceny obiektu w zależności od danej klasy użytkownika (Wartość jest norma-­‐ lizowana  0-­‐100,  gdzie  zero  oznacza  ocenę  najniższą,  a  100  ocenę  maksymalną).

– wartość dopasowania obiektu do proFilu konkretnego użytkownika (wstępnie przy-­‐ jęto zliczanie zgodności kategorii obiektu do opisu zainteresowań konkretnego użytkow-­‐ nika . Można jednak w przyszłości wykorzystać tu podejście wektorowe oraz probabili-­‐ styczne [140] wspomniane wcześniej w sekcji „Analiza zapytań użytkownika i odpowiedź

systemu  wyszukiwania”,  str.  40).

– wartość dopasowania obiektu do klastra w którym znajduje się dany użytkownik dla typu  klasteryzacji  opartej  o  zachowanie

– wartość dopasowania obiektu do klastra w którym znajduje się dany użytkownik dla typu  klasteryzacji  opartej  o  proFil

(Oba  powyższe  podejścia  zostały  zaprezentowane  w  poprzednich  dwóch  sekcjach.)

W przypadku fazy drugiej celowe jest również uzyskanie spójnej listy wartości uwzględniającej poszczególne wartości dopasowania. Przyjęto wykorzystanie średniej ważonej, a dzięki zebranym opiniom od użytkowników przyjęto wstępnie, że waga będzie  liczona  zgodnie  ze  wzorem:

(10) gdzie: w oznacza wagę danego algorytmu, a oznacza procentową liczbę głosów powyżej oceny 3, b oznacza liczbę ocen poniżej 3, zaś c oznacza procentowe zainte-­‐ resowanie danym algorytmem. Wartości a,b i c pochodzą z ankiet użytkowników oceniających  prototyp  systemu  (więcej  na  str.  110).

3. Faza trzecia jest opcjonalna i polega na (zgodnie z rysunkiem 27) połączeniu wartości dopasowań dla metod wyszukujących (uzyskanych jako wynik fazy 1) z wartościami dopasowań algorytmów proWilujących (uzyskanych jako wynik fazy 2). Z uwagi na różny charakter wartości przyjęto zastosowanie średniej geometrycznej, a w uproszczeniu wyliczanie  wartości  zgodnie  ze  wzorem:

(11) gdzie

v

i oznacza wynikową wartość dopasowania,

v

qi wartość dopasowania do  metod  wyszukiwawczych,    a    

v

pi    wartość  uzyskaną  z  podsystemu  proWilowania.

w

i

=

(a0 gdy ai−bi)⋅ ci<bi igdy ai>= bi

{

v

i

= v

qi

· v

pi

2.5.    Analiza  obciążenia  systemów  rozproszonych

Celem niniejszego podrozdziału jest przeprowadzenie analizy obciążenia systemu wielo-­‐ dostępowego, a zwłaszcza obciążenia obciążenia serwera centralnego do którego ma dostęp  wielu  użytkowników.

Analizę przeprowadzono z zastosowaniem wybranych rezultatów strumieni impulsowych  [31]  oraz  teorii  masowej  obsługi  [58].

Przyjęcie określonych założeń upraszczających pozwala na otrzymanie konstruk-­‐ tywnych wyników, które według wiedzy autora, nie były przedstawiane dotychczas w dostępnej literaturze w odniesieniu do analizowanych w pracy rozproszonych syste-­‐ mów  wyszukiwania  informacji.

Przedmiotem  analizy  jest  w  ogólnym  przypadku  system  przedstawiony  na  rysunku  28.

u1

un

!"#$"#%&"'(#)*'+ u2

Rysunek  28.    Schemat  jednoczesnych  połączeń  z  serwerem  przez  wielu  użytkowników.

Wprowadzimy obecnie pojęcie współczynnika obciążenia serwera przez i-­‐tego użytkownika. Jest on równy iloczynowi średniej liczby połączeń i-­‐tego użytkownika z  serwerem  przez  średni  czas  trwania  takiego  połączenia.

(12) gdzie:

W dokumencie Index of /rozprawy2/10252 (Stron 51-56)