Eksploracja danych w serwisach ogłoszeniowych oparta na systemach informacyjnych nad grafami ontologicznymi Krzysztof Pancerz 1,2, Olga Mich 1 1 Wyższa Szkoła Zarządzania i Administracji w Zamościu 2 Wyższa Szkoła Informatyki i Zarządzania w Rzeszowie Seminarium Zakładu Inteligentnych Systemów Wspomagania Decyzji w Instytucie Informatyki Politechniki Poznańskiej 17 czerwca 2014 r.
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").
Strukturalizacja danych z serwisów ogłoszeniowych
Graf ontologiczny Dla danej ontologii O możemy zdefiniować graf ontologiczny OG. Graf ontologiczny Grafem ontologicznym nazywamy uporządkowaną czwórkę gdzie OG = (C, E, R, ρ) 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 = (C L, E L, R, ρ L ) C L C, E L E, ρ L jest funkcją ρ zredukowaną do zbioru E L.
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 gdzie: SDS OG = (U, C, D, {OG a } a C, V d, c, d), 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, {OG a} a C D jest rodziną grafów ontologicznych skojarzonych z atrybutami warunkowymi i decyzyjnymi ze zbioru C, c : C U C, gdzie C = C a, jest funkcją informacyjną taką, że a C c(a, u) C a dla każdego a C i u U, gdzie C a jest zbiorem pojęć z grafu OG a, d : D U V a jest funkcją decyzyjną taką, że d(a, u) V a dla każedgo a D i u U.
Złożone systemy informacyjne nad grafami ontologicznymi Złożony system informacyjny nad grafami ontologicznymi gdzie: CDS OG = (U, C, D, {OG a } a C, V d, c, d), 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, {OG a} a C D jest rodziną grafów ontologicznych skojarzonych z atrybutami warunkowymi i decyzyjnymi ze zbioru C, c : C U LOG a jest funkcją informacyjną taką, że c(a, u) LOG a dla każdego a C i u U, gdzie LOG a jest rodziną wszystkich podgrafów grafu OG a, d : D U V a jest funkcją decyzyjną taką, że d(a, u) V a dla każedgo a D i u U.
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ęć. Powyższą zasadę stosujemy także do pojęć będących synonimami.
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.
Wykorzystanie wiedzy zewnętrznej - przykład
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, 2014 (in press)].
Relacje pomiędzy wartościami atrybutów OG a = (C a, E a, 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 c 1, c 2 C a EMR(a) = {(c 1, c 2 ) C a C a : c 1 = c 2 }. Relacja znaczenia synonimicznego pomiędzy c 1, c 2 C a SMR(a) = {(c 1, c 2 ) C a C a : ρ a (e) = issyn}. [c 1,c 2 ] P(OG a) e E([c 1,c 2 ])
Relacje pomiędzy wartościami atrybutów OG a = (C a, E a, R, ρ a ) - graf ontologiczny skojarzony z atrybutem a w prostym systemie decyzyjnym nad grafami ontologicznymi, gdzie R = {issyn, isgen, isspec}. Relacja generalizacji pomiędzy c 1, c 2 C a [c 1,c 2 ] P(OG a) GR(a) = {(c 1, c 2 ) C a C a : ρ a (e) {issyn, isgen}}. e E([c 1,c 2 ]) Relacja specjalizacji pomiędzy c 1, c 2 C a [c 1,c 2 ] P(OG a) SR(a) = {(c 1, c 2 ) C a C a : ρ a (e) {issyn, isgen}. e E([c 1,c 2 ])
Relacje pomiędzy wartościami atrybutów OG a = (C a, E a, 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 c 1, c 2 C a oraz GMR(a) = {(c 1, c 2 ) C a C a : [c 1,c 3 ] P(OG a) [c 2,c 3 ] P(OG a) e E([c 1,c 3 ]) e E([c 2,c 3 ]) c 3 C a C a ρ a (e) {issyn, isgen} ρ a (e) {issyn, isgen}}.
Kodowanie wartości atrybutów
Kodowanie wartości atrybutów
Kodowanie wartości atrybutów SDS OG = (U, C, D, {OG a } a C, V d, 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 : C a {0, 1}, gdzie C a jest zbiorem pojęć w grafie OG a. Ostra funkcja charakterystyczna 1 jeśli v = c(a, u) lub (v, c(a, u)) SMR(a) χ u a(v) = lub (v, c(a, u)) GR(a), 0 w przeciwnym razie, dla v C 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]. Funkcja charakterystyczna może zostać rozmyta.
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 posiadają bardziej konkretną semantykę i są bardziej podobne.
Kodowanie wartości atrybutów Podobieństwo między dwoma pojęciami v 1 i v 2 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): gdzie: s(v 1, v 2 ) = f 1 (l)f 2 (h), l jest najkrótszą ścieżką pomiędzy v 1 i v 2 w grafie ontologicznym, h jest głębokością pojęć szczegółowych w hierarchii.
Kodowanie wartości atrybutów W ogólności, funkcje f 1 i f 2 są nieliniowe. Funkcja f 1 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 f 1 i f 2 : f 1 (l) = e αl, f 2 (h) = eβh e βh e βh +e βh, gdzie α oraz β są stałymi.
Kodowanie wartości atrybutów SDS OG = (U, C, D, {OG a } a C, V d, 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ą χ u a : C a [0, 1], gdzie C a jest zbiorem pojęć w grafie OG a. Rozmyta funkcja charakterystyczna 1 jeśli v = c(a, u) lub (v, c(a, u)) SMR(a) χ u lub (v, c(a, u)) GR(a), a(v) = s(v, c(a, u)) (v, c(a, u)) SR(a) lub (v, c(a, u)) GMR(a), 0 w przeciwnym razie, dla v C a.
Kodowanie wartości atrybutów - przykład
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 uczenia maszynowego i eksploracji danych.