Tabela 1: Algorytm disambiguacji pojęć z wykorzystaniem relacji leksykalnych przechowywanych w sieci semantycznej
f oreach t e P /* dla każdego nierozstrzygniętego pojęcia */
{ bestSense := 0 maxValue := 0 foreach sense S of t { M(S) := 0;
foreach concept x where r(S , x) > 0 M (S±) := M(Si) + SSR(x, 1)
}
foreach sense S± of t
if (M(Si) > maxValue} { bestSense := Si maxValue := M(Si)
}
return bestSense
}
function SSR(concept x, level 8)
{ foreach concept y where relation r(x, y) > 0 { M(x) := M(x) + f(y) • w(r)
if (8 < cp ) M(x) = M(x) + SSR(y, 8 +1)
}
}
return M(x)
gdzie:
r(x,y) - relacja semantyczna pomiędzy konceptami x i y f(x) - ilość wystąpień konceptu x przechowywana w sieci w(r) - waga znaczenia relacji r (relacje hiperonimie, hiponimii, synonimii i inne mają różne wagi)
M(Sj) - wartość współczynnika wskazującego na i-te znaczenie konceptu S.
cp - jest parametrem głębokości przeszukiwania otoczenia konceptów w sieci semantycznej.
W ramach eksperymentu sprawdzono 114 dokumentów tekstowych pochodzących z 2006 roku. Dokumenty pochodzą z portalu dziennika „Rzeczpospolita” (www.rzeczpospolita.pD i zawierają 2316 słów wieloznacznych. Wyniki disambiguacji pojęć zawiera tabela 2. Dla analizy lokalnej przyjęto głębokość przeszukania sieci semantycznej cp = 4 oraz szerokość okienka wokół pojęć wieloznacznych wynoszącą 12