Eksploracja danych w serwisach ogłoszeniowych
oparta na systemach informacyjnych nad grafami
ontologicznymi
Krzysztof Pancerz1,2, Olga Mich1
1Wyższa Szkoła Zarządzania i Administracji w Zamościu 2Wyższa Szkoła Informatyki i Zarządzania w Rzeszowie
Seminarium Zakładu Inteligentnych Systemów Wspomagania Decyzji w Instytucie Informatyki Politechniki Poznańskiej
Charakter danych w serwisach ogłoszeniowych
Podstawowe dane mają charakter symboliczny (charakter jakościowy).
Dane występują znacznie częściej w postaci luźnych pojęć niż w postaci pełnych (poprawnych) zdań gramatycznych.
Wyzwania eksploracji danych symbolicznych
Rozumienie semantyki danych.
Uwzględnianie relacji semantycznych pomiędzy danymi. Uwzględnianie wiedzy zewnętrznej w procesach klasyfikacji danych.
Kodowanie danych dla klasyfikatorów działających na danych numerycznych.
Relacje semantyczne pomiędzy słowami
Relacje paradygmatyczne- zachodzą pomiędzy słowami należącymi do tej samej kategorii gramatycznej.
Relacje syntagmatyczne- zachodzą pomiędzy słowami należącymi do różnych kategorii gramatycznych.
Paradygmatyczne relacje semantyczne
Paradygmatyczne relacje semantyczne pomiędzy słowami nazywane są często w literaturze relacjami leksykalnymi lub relacjami semantycznymi.
Słowa będące w relacji paradygmatycznej są w pewnym stopniu słowami gramatycznie zamiennymi.
Relacje semantyczne pomiędzy słowami
Podstawowa taksonomia relacji semantycznych (wzorowana na projekcie Wikisaurus):
relacje synonimiczne, relacje antonimiczne,
relacje hiponimiczne / hiperonimiczne (zawierania się klas), relacje meronimiczne / holonimiczne (część - całość).
Relacje semantyczne pomiędzy słowami
Oznaczenia:
isSyn - relacja synonimiczna, (u, v ) ∈ isSyn oznacza "u jest synonimem v ",
isAnt - relacja antonimiczna, (u, v ) ∈ isAnt oznacza "u jest antonimem v ",
isGen - relacja generalizacji (hiponimiczna), (u, v ) ∈ isGen oznacza "u jest generalizowane przez v "("u jest hiponimem v "),
isSpec - relacja specjalizacji (hiperonimiczna), (u, v ) ∈ isSpec oznacza "u jest specjalizowane przez v "("u jest hiperonimem v ").
Graf ontologiczny
Dla danej ontologii O możemy zdefiniować graf ontologiczny OG .
Graf ontologiczny
Grafem ontologicznym nazywamy uporządkowaną czwórkę
OG = (C, E , R, ρ)
gdzie
C jest niepustym skończonym zbiorem węzłów reprezentujących pojęcia ontologii O,
E ⊆ C × C jest skończonym zbiorem krawędzi reprezentujących relacje pomiędzy pojęciami ze zbioru C,
R jest rodziną semantycznych opisów (w języku naturalnym) typów relacji (reprezentowanych przez krawędzie) pomiędzy pojęciami,
ρ : E → R jest funkcją przyporządkowującą każdej krawędzi semantyczny opis reprezentowanej przez nią relacji.
Graf ontologiczny - przykład dla serwisów ogłoszeniowych
nieruchomości
Graf ontologiczny - przykład dla serwisów ogłoszeniowych
nieruchomości
Graf ontologiczny - przykład dla serwisów ogłoszeniowych
nieruchomości
Lokalny podgraf ontologiczny
Lokalny podgraf ontologiczny
Lokalnym podgrafem LOG grafu ontologicznego LOG = (C, E , R, ρ) nazywamy graf
LOG = (CL, EL, R, ρL)
CL⊆ C,
EL⊆ E ,
Systemy informacyjne/decyzyjne nad grafami ontologicznymi
Nad grafami ontologicznymi możemy zbudować system informacyjny/decyzyjny na wiele sposobów, np.:
1 Wartościami atrybutów systemu informacyjnego/decyzyjnego
są pojęcia ze zbiorów C - prosty system
informacyjny/decyzyjny nad grafami ontologicznymi.
2 Wartościami atrybutów systemu informacyjnego/decyzyjnego
są lokalne podgrafy ontologiczne LGO grafów ontologicznych GO - złożony system informacyjny/decyzyjny nad grafami ontologicznymi.
Proste systemy decyzyjne nad grafami ontologicznymi
Prosty system decyzyjny nad grafami ontologicznymi
SDSOG = (U, C , D, {OGa}a∈C, Vd, c, d ),
gdzie:
U jest niepustym, skończonym zbiorem obiektów,
A jest niepustym, skończonym zbiorem atrybutów warunkowych, Djest niepustym, skończonym zbiorem atrybutów decyzyjnych, {OGa}a∈C ∪D jest rodziną grafów ontologicznych skojarzonych z
atrybutami warunkowymi i decyzyjnymi ze zbioru C , c : C × U → C, gdzie C = S
a∈C
Ca, jest funkcją informacyjną taką, że
c(a, u) ∈ Ca dla każdego a ∈ C i u ∈ U, gdzie Cajest zbiorem pojęć z
grafu OGa,
d : D × U → Va jest funkcją decyzyjną taką, że d (a, u) ∈ Vadla każedgo
Złożone systemy informacyjne nad grafami ontologicznymi
Złożony system informacyjny nad grafami ontologicznymi
CDSOG = (U, C , D, {OGa}a∈C, Vd, c, d ),
gdzie:
U jest niepustym, skończonym zbiorem obiektów,
A jest niepustym, skończonym zbiorem atrybutów warunkowych, Djest niepustym, skończonym zbiorem atrybutów decyzyjnych, {OGa}a∈C ∪D jest rodziną grafów ontologicznych skojarzonych z
atrybutami warunkowymi i decyzyjnymi ze zbioru C ,
c : C × U → LOGa jest funkcją informacyjną taką, że c(a, u) ∈ LOGa
dla każdego a ∈ C i u ∈ U, gdzie LOGajest rodziną wszystkich
Strukturalizacja danych oparta na systemach informacyjnych
nad grafami ontologicznymi
Atrybutyzacja - przypisanie pojęć występujących w ogłoszeniach do odpowiednich atrybutów jako ich wartości (zgodnie ze zdefiniowanymi grafami ontologicznymi).
Deinstancjacja- zastąpienie instancji pojęć występujących w ogłoszeniach najbardziej szczegółowymi pojęciami (ze względu na relację generalizacji/specjalizacji), których instancjami one są.
Strukturalizacja danych oparta na systemach informacyjnych
nad grafami ontologicznymi
Strukturalizacja danych oparta na systemach informacyjnych
nad grafami ontologicznymi - przykład
Strukturalizacja danych oparta na systemach informacyjnych
nad grafami ontologicznymi - przykład
Wykorzystanie wiedzy zewnętrznej
Grafy ontologiczne skojarzone z atrybutami mogą zostać rozbudowane tak, aby reprezentować dodatkową wiedzę zewnętrzną wspomagającą procesy klasyfikacji danych z serwisów ogłoszeniowych.
W przypadku wykorzystywania takiej dodatkowej wiedzy, wygodnie jest używać złożonych systemów
informacyjnych/decyzyjnych nad grafami ontologicznymi (wartości atrybutów są podgrafami grafów ontologicznych).
Zasada ekonomii kognitywnej
Przy przedstawianiu grafów ontologicznych wykorzystywana jest zasada ekonomii kognitywnej [Conrad, C.: Cognitive economy in semantic memory. Journal of Experimental Psychology 92(2), 149-154, 1972 ] według której:
Relacje semantyczne pomiędzy pojęciami nie są reprezentowane na grafie za pomocą krawędzi pomiędzy węzłami reprezentującymi wszystkie pojęcia, do których te relacje mają zastosowanie, ale tylko pomiędzy węzłami reprezentującymi pojęcia najbardziej ogólne. Te relacje są "dziedziczoneźarówno przez bezpośrednie jak i pośrednie hiponimy tych pojęć oraz przez wszystkie instancje pojęć.
Wykorzystanie wiedzy zewnętrznej - relacje w grafach
ontologicznych
Grafy ontologiczne mogą być rozbudowywane poprzez
uwzględnienie różnych relacji pomiędzy pojęciami analogicznie do sieci semantycznych, np.:
posiadanie pewnych elementów jako własnych składowych, posiadanie pewnych obiektów jako przedmiotu własności, posiadanie pewnych cech,
pełnienie określonej roli względem innego obiektu, itp.
Eksploracja danych zawartych w systemach
informacyjnych/decyzyjnych nad grafami ontologicznymi
Zbiory przybliżone [K. Pancerz, Semantic relationships and approximations of sets: an ontological graph based approach, in: Proceedings of the HSI 2013, Sopot, Poland, 2013, pp.62–69 ].
Reguły [K. Pancerz, Decision rules in simple decision systems over ontological graphs, in: R. Burduk, K. Jackowski, M. Kurzynski, M. Wozniak, A. Zolnierek (Eds.), Proceedings of the CORES 2013: Advances in Intelligent Systems and Computing, vol. 226, Springer International Publishing, Switzerland, 2013,pp.111–120 ].
Eksploracja danych zawartych w systemach
informacyjnych/decyzyjnych nad grafami ontologicznymi
(cd.)
Reguły zgodne z podejściem DRSA [K. Pancerz,
Dominance-based rough set approach for decision systems over ontological graphs, in: M. Ganzha, L. Maciaszek, M. Paprzycki (Eds.), Proceedings of the FedCSIS 2012, Wroclaw, Poland, 2012, pp.323–330 ].
Sieci neuronowe [K. Pancerz, A. Lewicki, Encoding symbolic features in simple decision systems over ontological graphs for PSO and neural network based classifiers, Neurocomputing,
Relacje pomiędzy wartościami atrybutów
OGa = (Ca, Ea, R, ρa) - graf ontologiczny skojarzony z atrybutem a
w prostym systemie decyzyjnym nad grafami ontologicznymi, gdzie R = {isSyn, isGen, isSpec}.
Relacja znaczenia ogólnego pomiędzy c1, c2 ∈ Ca
EMR(a) = {(c1, c2) ∈ Ca× Ca: c1= c2}.
Relacja znaczenia synonimicznego pomiędzy c1, c2 ∈ Ca
SMR(a) = {(c1, c2) ∈ Ca× Ca : ∃ [c1,c2]∈P(OGa) ∀ e∈E([c1,c2]) ρa(e) = isSyn}.
Relacje pomiędzy wartościami atrybutów
OGa = (Ca, Ea, R, ρa) - graf ontologiczny skojarzony z atrybutem a
w prostym systemie decyzyjnym nad grafami ontologicznymi, gdzie R = {isSyn, isGen, isSpec}.
Relacja generalizacji pomiędzy c1, c2 ∈ Ca
GR(a) = {(c1, c2) ∈ Ca× Ca :
∃
[c1,c2]∈P(OGa)
∀
e∈E([c1,c2])
ρa(e) ∈ {isSyn, isGen}}.
Relacja specjalizacji pomiędzy c1, c2 ∈ Ca
SR(a) = {(c1, c2) ∈ Ca× Ca :
Relacje pomiędzy wartościami atrybutów
OGa = (Ca, Ea, R, ρa) - graf ontologiczny skojarzony z atrybutem a
w prostym systemie decyzyjnym nad grafami ontologicznymi, gdzie R = {isSyn, isGen, isSpec}.
Relacja znaczenia ogólnego pomiędzy c1, c2 ∈ Ca
GMR(a) = {(c1, c2) ∈ Ca× Ca : ∃ c3∈Ca×Ca ∃ [c1,c3]∈P(OGa) ∀ e∈E([c1,c3])
ρa(e) ∈ {isSyn, isGen}
oraz ∃
[c2,c3]∈P(OGa)
∀
e∈E([c2,c3])
Kodowanie wartości atrybutów
SDSOG = (U, C , D, {OGa}a∈C, Vd, c, d ) - prosty system decyzyjny
nad grafami ontologicznymi. Dla każdego atrybutu warunkowego a ∈ C oraz każdego obiektu u ∈ U definiujemy ostrą funkcję charakterystyczną χu
a : Ca→ {0, 1}, gdzie Ca jest zbiorem pojęć w
grafie OGa.
Ostra funkcja charakterystyczna
χua(v ) =
1 jeśli v = c(a, u) lub (v , c(a, u)) ∈ SMR(a) lub (v , c(a, u)) ∈ GR(a),
Kodowanie wartości atrybutów
W przypadku ostrej funkcji charakterystycznej bierzemy pod uwagę tylko relację generalizacji/specjalizacji.
Jeśli istnieje bardziej ogólne pojęcie od danego pojęcia lub dwa pojęcia posiadają wspólne pojęcie uogólniające je, to pojęcia takie mogą być traktowane jako podobne gdyż częściowo mają wspólne właściwości [zob. Y. Li, Z. Bandar, D. Mclean, An approach for measuring semantic similarity between words using multiple information sources, IEEE Trans. Knowl. Data Eng. 15(2003) 871–882 ].
Kodowanie wartości atrybutów
W literaturze zaproponowano różne miary podobieństwa pomiędzy pojęciami w sieciach semantycznych o strukturze hierarchicznej, np.:
Y. Li, Z. Bandar, D. Mclean, An approach for measuring semantic similarity between words using multiple information sources, IEEE Trans. Knowl. Data Eng. 15(2003) 871–882. R. Rada, H. Mili, E. Bicknell, M. Blettner, Development and application of a metric on semantic nets, IEEE Trans. Syst. Man Cybern. 19(1989) 17–30.
W przypadku relacji generalizacji/specjalizacji w grafie ontologicznym możemy założyć, że pojęcia na wyższych poziomach hierarchii posiadają bardziej ogólną semantykę i są mnie podobne, zaś pojęcia na niższych poziomach hierarchii
Kodowanie wartości atrybutów
Podobieństwo między dwoma pojęciami v1 i v2 jest definiowane
jako (por. Y. Li, Z. Bandar, D. Mclean, An approach for measuring semantic similarity between words using multiple information sources, IEEE Trans. Knowl. Data Eng. 15(2003) 871–882 ):
s(v1, v2) = f1(l )f2(h),
gdzie:
l jest najkrótszą ścieżką pomiędzy v1 i v2 w grafie
ontologicznym,
Kodowanie wartości atrybutów
W ogólności, funkcje f1 i f2 są nieliniowe. Funkcja f1 powinna
spełniać warunki:
jeśli długość ścieżki dąży do 0, to podobieństwo dąży monotonicznie do 1,
jeśli długość ścieżki dąży do ∞, to podobieństwo dąży monotonicznie do 0.
Głębokość jest mierzona przez zliczenie poziomów w hierarchii od pojęć szczegółowych do pojęcia najbardziej ogólnego (korzenia hierarchii).
Kodowanie wartości atrybutów
W pracy [Y. Li, Z. Bandar, D. Mclean, An approach for measuring semantic similarity between words using multiple information sources, IEEE Trans. Knowl. Data Eng. 15(2003) 871–882 ], zdefiniowano następujące funkcje f1 i f2:
f1(l ) = e−αl,
f2(h) = e
βh−e−βh
eβh+e−βh,
Kodowanie wartości atrybutów
SDSOG = (U, C , D, {OGa}a∈C, Vd, c, d ) - prosty system decyzyjny
nad grafami ontologicznymi. Dla każdego atrybutu warunkowego a ∈ C oraz każdego obiektu u ∈ U definiujemy rozmytą funkcję charakterystycznąχeua : Ca→ [0, 1], gdzie Ca jest zbiorem pojęć w
grafie OGa.
Rozmyta funkcja charakterystyczna
e χua(v ) =
1 jeśli v = c(a, u) lub (v , c(a, u)) ∈ SMR(a) lub (v , c(a, u)) ∈ GR(a),
s(v , c(a, u)) (v , c(a, u)) ∈ SR(a) lub (v , c(a, u)) ∈ GMR(a),
Kodowanie wartości atrybutów - eksperyment
Metoda / Kodowanie Ostra Rozmyta funkcja funkcja charakterystyczna charakterystyczna J48 0.89 0.90 CART 0.91 0.91 LEM2 0.90 0.86 NN 0.88 0.92
Dalsze prace
1 Wykorzystanie różnych miar podobieństwa semantycznego. 2 Wykorzystanie klasyfikatorów opartych o różne podejścia