kompletní sborník

Transkript

kompletní sborník
Znalosti 2014
Exhibice, Edukace a nacházenı́ Expertů
Exhibition, Education and Expert finding
http://znalosti.eu/
13. ročnı́k konference, Jasná pod Chopkom, Nı́zké Tatry
26. - 27. zářı́ 2014
Sbornı́k přı́spěvků
13th Annual Conference, Jasná pod Chopkom, Nı́zké Tatry, Slovakia
26th - 27th September 2014
Proceedings
Konference je kolokovaná s konferencemi / Co-located with:
Datakon 2014
ITAT 2014
Vojtěch Svátek
Ondřej Zamazal (Eds.)
Znalosti 2014
1. vydánı́
Editoři sbornı́ku / Proceedings Editors
Vojtěch Svátek
Ondřej Zamazal
E-mail: {[email protected], [email protected]}
Vysoká škola ekonomická v Praze
nám. W. Churchilla 4
130 67 Praha 3
University of Economics, Prague
W. Churchill Sq. 4
130 67 Prague 3, Czech Republic
c
Autoři
přı́spěvků uvedenı́ v obsahu, 2014
Každý přı́spěvek byl recenzován, recenzenti jsou členy programového
výboru konference.
Výdává
Vysoká škola ekonomická v Praze,
Nakladatelstvı́ Oeconomica - Praha 2014
ISBN 978-80-245-2054-4
Předmluva
Konference Znalosti 2014 je už třináctou v řadě česko-slovenských konferencı́
zaměřených na znalostnı́ technologie, konaných pravidelně od r. 2001 (přehled
lze nalézt na webových stránkách http://znalosti.eu). Proběhne ve dnech
26.-27. zářı́ 2014 v Jasné pod Chopkom v Nı́zkých Tatrách.
Tento ročnı́k konference přinášı́ oproti předchozı́m několik významných odlišnostı́:
– Znalosti jsou poprvé v historii kolokovány se dvěma spřı́zněnými konferencemi, ITATem a Datakonem (předstupněm byla v poslednı́ch dvou letech
kolokace pouze s Datakonem).
– Časový harmonogram konference byl upraven směrem k vyššı́ interaktivitě:
prodlouženı́m sekcı́ posterů a demonstracı́, a naopak zkrácenı́m délky ústnı́ch
prezentacı́. Navı́c bylo nově umožněno vystavenı́ posteru ke všem typům
přijatých přı́spěvků.
– Poprvé byla zařazena kategorie referativnı́ch přı́spěvků upozorňujı́cı́ch na
významné mezinárodnı́ publikace, kterých jejich prezentujı́cı́ v poslednı́ch
letech dosáhli. Jako nástroj pro přiblı́ženı́ výsledků špičkového výzkumu tato
kategorie doplňuje již dřı́ve využı́vanou, a v tomto roce celkově nejpopulárnějšı́, kategorii prezentacı́ (ucelených, zpravidla mezinárodnı́ch) projektů.
Modifikované schéma konference se odrážı́ i v přidaném podtitulu: “Exhibice,
Edukace a nacházenı́ Expertů” (EEE). Hlavnı́ smysl lokálně zacı́lené vědecké
konference je totiž shledáván v poskytnutı́:
1. “výkladnı́ skřı́ně”, kde mohou špičkovı́ vědci vystavit (před akademickými
kolegy, ale i mı́stnı́mi zájemci z praxe) již dosažené a jinde publikované excelentnı́ výsledky,
2. přı́ležitost, zejména začı́najı́cı́m doktorandům a studentům, zı́skávat z kontaktů se špičkami z jiných pracovišť novou motivaci, povědomı́ o obecných
“vzorcı́ch vědecké práce” v oboru, ale i zpětnou vazbu ke svým vlastnı́m
nápadům a pokusům,
3. celkovou stimulaci neformálnı́ch kontaktů mezi pracovišti, které jsou potřebné
pro návrhy nových společných projektů, pro sdı́lenı́ vědeckých artefaktů
a výukových materiálů, i pro zajišťovánı́ “expertů” schopných zpracovat
oficiálnı́ oponentury projektů a kvalifikačnı́ch pracı́.
Na konferenci bylo celkem podáno 23 přı́spěvků. Výsledné zařazenı́ do kategoriı́ je (v uspořádánı́ podle četnosti):
–
–
–
–
–
–
–
8× prezentace vědeckého projektu
6× krátký přı́spěvek
3× demonstrace
2× dlouhý přı́spěvek
2× referativnı́ přı́spěvek
1× přı́padová studie
1 přı́spěvek byl zamı́tnut.
Jako jeden z ústřednı́ch bodů konference byla dále zařazena zvaná přednáška
Tomáše Vitvara “Semantic Web Services after 10 years and opportunities in
industry”.
Každý podaný přı́spěvek byl zhodnocen nejméně třemi (téměř vždy čtyřmi
až pěti) členy programového výboru, a u všech přijatých byl průměr tohoto hodnocenı́ kladný. Nı́zká “rejection rate” proto nenı́ výrazem extrémnı́ benevolence,
nýbrž skutečnosti, že přı́spěvky splňovaly alespoň minimálnı́ kritéria zajı́mavosti
a/nebo kvality adekvátnı́ pro prezentaci na setkánı́ lokálnı́ komunity.
Finálnı́ verze všech přı́spěvků (po zapracovánı́ připomı́nek recenzentů) byly
publikovány na webu konference (jako samostatné soubory i jako součást online
sbornı́ku). Oba dlouhé přı́spěvky byly navı́c zařazeny do svazku mezinárodnı́
řady sbornı́ků CEUR, jako doplněk k vybraným přı́spěvkům konference ITAT:
http://ceur-ws.org/Vol-1214/.
Velké poděkovánı́ za podı́l na úspěšné přı́pravě konference patřı́ jak autorům
a přednášejı́cı́m, tak i členům řı́dı́cı́ho i programového výboru – zde bychom
rádi vyzdvihli takřka 100% návratnost recenznı́ch formulářů. Zcela zásadnı́ byla
hladká spolupráce s mı́stnı́mi organizátory (Štefan Pero a Tomáš Horváth) a
předsedy kolokovaných konferencı́ (Věra Kůrková, Dušan Chlapek a Petr Šaloun).
Důležitým členem organizačnı́ho týmu byl také webmaster Znalostı́, Stanislav
Vojı́ř.
Věřı́me, že konference splnı́ svůj účel a stejně jako v minulosti bude mı́stem
užitečné výměny vědeckých informacı́ i společenského setkávánı́.
V Praze dne 19.zářı́ 2014
Vojtěch Svátek, Ondřej Zamazal
Preface
The 2014 edition of Znalosti, the Czecho-Slovak annual conference on Knowledge
Technology, held in Jasná pod Chopkom, Low Tatras, Slovakia, on September
26–27, 2014, is already the 13th in the series started in 2001 (an overview can
be found at http://znalosti.eu). This edition differs from the previous ones
in several important aspects:
– For the first time in history, Znalosti is collocated with two related conferences, ITAT and Datakon (as further advancement over collocation with the
latter only, in the past two years).
– The overall schedule of the conference has been modified towards higher
interactivity: the poster/demo sessions received larger slots, and the oral
talks were made shorter. Newly, authors of all accepted submissions were
offered the possibility to present a poster.
– A new submission category has been introduced: that of secondary papers referring to important international publications achieved by the presenters in
the last years. As a means of drawing closer the top-class research results, this
category complements the pre-existing, and this year most popular, category
of (comprehensive, usually international) research project presentations.
The novel scheme is framed by the newly added subtitle of the conference:
Exhibition, Education and Expert finding (EEE). Namely, as the main purposes
of a national/local conference have been identified
1. the possibility for top-class researchers to ‘exhibit’ (to their academic colleagues and local practitioners) the recently achieved and published excellent
results,
2. the opportunity for PhD and undergraduate students to gain, from the
above, moral incentives and ‘education’ in general research patterns, as well
as to receive feedback to their own ideas and endeavors,
3. and, finally, the stimulation of informal contacts between the research teams
in general, thus paving the way to preparation of joint projects, to sharing the
research artifacts, and to ‘finding experts’ for formal evaluation of projects
and theses.
The conference has attracted 23 submissions in total. The final assignment
to categories is (ordered by frequency):
–
–
–
–
–
–
–
8× research project presentation
6× short paper
3× demonstration
2× long paper
2× secondary paper
1× case study
1 submission has been rejected.
As one of the conference highlights, the invited talk by Tomáš Vitvar, “Semantic
Web Services after 10 years and opportunities in industry”, has been arranged
for.
Every submission has been evaluated by at least three (nearly always four
to five) program committee members, and the mean value of the overall score
is positive for all accepted ones. The low rejection rate thus does not express
extreme benevolence but the fact that the submissions satisfied the basic criteria
of interestingness and/or quality adequate for presentation at a meeting of a local
community.
The camera-ready versions of all papers (updated according to the review
feedback) have been published at the conference website (as separate files as
well as within the online proceedings). Additionally, both long papers have been
included in a CEUR volume, as complement to the selected papers from the
ITAT conference: http://ceur-ws.org/Vol-1214/.
Big thanks for successful preparation of the conference go to the authors and
presenters as well as to the members of the steering committee and program
committee – we would like to emphasize the response rate of the review forms,
which was very close to 100%. Essential was the smooth cooperation with the
local organizers (Štefan Pero and Tomáš Horváth) and with the Chairs of the
collocated conferences (Věra Kůrková, Dušan Chlapek and Petr Šaloun). An
important member of the organization team has been the Znalosti webmaster,
Stanislav Vojı́ř.
We are confident that the conference will meet its purpose and will, as previously in the history, become a means for fruitful exchange of research information
and social interactions.
Prague, September 19, 2014
Vojtěch Svátek and Ondřej Zamazal
Výbory konference / Conference Committees
Stálý řı́dı́cı́ výbor / Steering Committee
Předseda / Chair:
Jan Rauch, Vysoká škola ekonomická, Praha
Členové / Members:
Tomáš Horváth, Univerzita Pavla Jozefa Šafárika, Košice
Pavol Návrat, Slovenská technická univerzita, Bratislava
Ján Paralič, Technická univerzita, Košice
Jaroslav Pokorný, Univerzita Karlova, Praha
Lubomı́r Popelı́nský, Masarykova univerzita, Brno
Václav Snášel, Vysoká škola báňská - Technická univerzita, Ostrava
Vojtěch Svátek, Vysoká škola ekonomická, Praha
Olga Štěpánková, České vysoké učenı́ technické, Praha
Programový výbor / Program Committee
Spolupředsedové / Co-Chairs:
Vojtěch Svátek, Vysoká škola ekonomická, Praha
Ondřej Zamazal, Vysoká škola ekonomická, Praha
Členové / Members:
Roman Barták, Univerzita Karlova, Praha
Václav Belák, Insight, National University of Ireland, Galway, Irsko
Petr Berka, Vysoká škola ekonomická, Praha
Mária Bieliková, Slovenská technická univerzita, Bratislava
Radek Burget, Vysoké učenı́ technické, Brno
Peter Dolog, Aalborg University, Dánsko
Dalibor Fiala, Západočeská univerzita, Plzeň
Petr Hanáček, Vysoké učenı́ technické, Brno
Ladislav Hluchý, Ústav informatiky SAV, Bratislava
Martin Holeňa, Ústav informatiky AV ČR, Praha
Martin Holub, Univerzita Karlova, Praha
Irena Holubová, Univerzita Karlova, Praha
Martin Homola, Univerzita Komenského, Bratislava
Tomáš Horváth, Univerzita Pavla Jozefa Šafárika, Košice
Daniela Chudá, Slovenská technická univerzita, Bratislava
Jiřı́ Ivánek, Vysoká škola ekonomická, Praha
Karel Ježek, Západočeská univerzita, Plzeň
Jiřı́ Kléma, České vysoké učenı́ technické, Praha
Tomáš Kliegr, Vysoká škola ekonomická, Praha
Jakub Klı́mek, České vysoké učenı́ technické, Praha
Tomáš Knap, Univerzita Karlova, Praha
Jacek Kopecký, University of Portsmouth, Velká Británie
Pavel Kordı́k, České vysoké učenı́ technické, Praha
Stanislav Krajči, Univerzita Pavla Jozefa Šafárika, Košice
Michal Krátký, Vysoká škola báňská - Technická univerzita, Ostrava
Petr Křemen, České vysoké učenı́ technické, Praha
Miroslav Kubát, University of Miami, Spojené státy americké
Martin Labský, IBM TJW, Praha
Michal Laclavı́k, Ústav informatiky SAV, Bratislava
Lenka Lhotská, České vysoké učenı́ technické, Praha
Marián Mach, Technická univerzita, Košice
Kristı́na Machová, Technická univerzita, Košice
Peter Mikulecký, Univerzita Hradec Králové
Iveta Mrázová, Univerzita Karlova, Praha
Pavol Návrat, Slovenská technická univerzita, Bratislava
Martin Nečaský, Univerzita Karlova, Praha
Vı́t Nováček, Insight, National University of Ireland, Galway, Irsko
Marek Obitko, Rockwell Automation, Praha
Ján Paralič, Technická univerzita, Košice
Robert Pergl, České vysoké učenı́ technické, Praha
Tomáš Pitner, Masarykova univerzita, Brno
Jaroslav Pokorný, Univerzita Karlova, Praha
Lubomı́r Popelı́nský, Masarykova univerzita, Brno
Jan Rauch, Vysoká škola ekonomická, Praha
Hana Rudová, Masarykova univerzita, Brno
Pavel Rychlý, Masarykova univerzita, Brno
Václav Řepa, Vysoká škola ekonomická, Praha
Hana Řezanková, Vysoká škola ekonomická, Praha
Tomáš Skopal, Univerzita Karlova, Praha
Pavel Smrž, Vysoké učenı́ technické, Brno
Josef Steinberger, Západočeská univerzita, Plzeň
Petr Šaloun, Vysoká škola báňská - Technická univerzita, Ostrava
Josef Šlerka, Univerzita Karlova, Praha
Marián Šimko, Slovenská technická univerzita, Bratislava
Olga Štěpánková, České vysoké učenı́ technické, Praha
Július Štuller, Ústav informatiky AV ČR, Praha
Tomáš Vitvar, České vysoké učenı́ technické, Praha
Peter Vojtáš, Univerzita Karlova, Praha
František V. Zbořil, Vysoké učenı́ technické, Brno
Zdeněk Zdráhal, Open University, Milton Keynes, Velká Británie
Jaroslav Zendulka, Vysoké učenı́ technické, Brno
Zdeněk Žabokrtský, Univerzita Karlova, Praha
Filip Železný, České vysoké učenı́ technické, Praha
Jan Žižka, Mendelova univerzita, Brno
Obsah / Contents
Zvaná přednáška / Invited Talk
Semantic Web Services after 10 years and opportunities in industry . . . . .
Tomáš Vitvar
3
Dlouhé přı́spěvky / Long Papers
Semantic Heterogeneity Reduction for Big Data in Industrial Automation
Václav Jirkovský, Marek Obitko
6
Structure Composition Discovery using Alloy . . . . . . . . . . . . . . . . . . . . . . . . .
Radek Mařı́k
16
Referativnı́ přı́spěvky / Secondary Papers
Zovšeobecnený jednostranne fuzzy konceptový zväz a jeho ekvivalencia
s konceptuálnym škálovanı́m . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Peter Butka
Educational data mining for analysis of students’ solutions . . . . . . . . . . . . .
Karel Vaculı́k Leona Nezvalová, Lubomı́r Popelı́nský
28
32
Přı́padová studie z praxe / Case Study
Utilizing educational data in collaboration with industry . . . . . . . . . . . . . . .
Pavel Kordı́k, Stanislav Kuznětsov
38
Prezentace vědeckých projektů / Research Projects
Presentations
PerConIK: Aplikovanie znalostných technológiı́ v doméne tvorby softvéru
Mária Bieliková, Pavol Návrat, Michal Barla, Ivan Polášek, Daniela
Chudá, Peter Lacko
UX lab & UX class: Sledovanie pohľadu za účelom podpory
použı́vateľského zážitku a vzdelávania . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Mária Bieliková, Pavol Návrat, Jozef Tvarožek, Michal Barla, Jakub
Šimko
LAAOS: Logical Aspects of Adaptable Ontological Schemas . . . . . . . . . . . .
Michal Čertický, Martin Homola, Ján Kľuka, Simone Serra, Vojtěch
Svátek, Alexander Šimko, Miroslav Vacura, Ondřej Zamazal
50
54
58
Television Linked to the Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Tomáš Kliegr, Vojtěch Svátek
62
MONDIS: Using Ontologies for Monument Damage Descriptions . . . . . . . .
Petr Křemen, Miroslav Blaško, Marek Šmı́d, Zdeněk Kouba, Martin
Ledvinka, Bogdan Kostov
66
Znalostnı́ báze pro obor organizace znalostı́ . . . . . . . . . . . . . . . . . . . . . . . . . . .
Helena Kučerová, Eva Bratková
70
TraDiCe: Cestovanie v digitálnom priestore . . . . . . . . . . . . . . . . . . . . . . . . . .
Pavol Návrat, Marián Šimko, Jozef Tvarožek , Alena Kovárová
74
Informácia o riešenı́ témy Big Data v projekte “Medzinárodné
centrum excelentnosti pre výskum inteligentných a bezpečných
informačno-komunikačných technológii a systémov” . . . . . . . . . . . . . . . . . . .
Viera Rozinajová, Gabriela Kosková, Anna Bou Ezzeddine, Mária
Lucká, Mária Bieliková and Pavol Návrat
78
Demonstrace / Demonstrations
Doporučovánı́ multimediálnı́ho obsahu s využitı́m senzoru Microsoft
Kinect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Jaroslav Kuchař, Tomáš Kliegr
84
Annota: Pieskovisko pre výskum vyhľadávania, organizovania a
navigácie s využitı́m sémantiky v prostredı́ digitálnych knižnı́c . . . . . . . . . .
Róbert Móro, Michal Holub, Jakub Ševcech, Mária Bieliková
88
Askalot: odpovedanie otázok v komunite študentov a ich učiteľov . . . . . . . .
Ivan Srba, Mária Bieliková
92
Krátké přı́spěvky / Short Papers
Emission prediction of a thermal power plant . . . . . . . . . . . . . . . . . . . . . . . . .
Juraj Jurčo, Lubomı́r Popelı́nský, Karel Křehlı́k
98
Identifikácia osobnostných vlastnostı́ na základe údajov publikovaných
v rámci sociálnych médiı́ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Peter Koncz, Ján Paralič, Dominik Jakub
JOPA: Developing Ontology-Based Information Systems . . . . . . . . . . . . . . . 108
Martin Ledvinka, Petr Křemen
Zı́skávánı́ znalostı́ pomocı́ dvoukrokové klasifikace . . . . . . . . . . . . . . . . . . . . . 118
Marina Stecenková
Crowdsourcing posilnený sledovanı́m pohľadu . . . . . . . . . . . . . . . . . . . . . . . . . 122
Jakub Šimko
Concept of semantic knowledge base for data mining of business rules . . . 132
Stanislav Vojı́ř
Rejstřı́k autorů / Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Zvaná přednáška
Invited Talk
1
2
Semantic Web Services after 10 years and
opportunities in industry
Tomáš Vitvar
Czech Technical University in Prague, Prague, Czech Republic
[email protected]
Abstract. Semantic Web Services automate a process of service usage
with help of languages and methods of Semantic Web. When there is
a huge amount of services, Semantic Web Services help to automatically engage with service providers, compare their offers and chose services that best match users’ goals. Research community explored several ways how to best describe a service for such scenarios and how to
create a semantic layer on top of the existing service technology stack.
The most promising result of this work was a W3C recommendation
called Semantic Annotations for WSDL and XML Schema that builds a
bridge between non-semantic and semantic worlds. However, after over
7 years, industry still does not pick this standard up. Why? Industry
has a completely different view on a process of service usage while it is
not interested in the service usage automation. Instead, industry needs a
good governance solution for service environments to support their development, maintenance, performance and reliability. And Semantic Web,
Lined Data and BigData technologies can certainly play an important
role in this endeavor.
3
Dlouhé přı́spěvky
Long Papers
4
5
Semantic Heterogeneity Reduction for Big Data
in Industrial Automation
Václav Jirkovskýa,b and Marek Obitkob
a
Czech Technical University in Prague, Prague, Czech Republic
b
Rockwell Automation Research and Development Center,
Pekařská 695/10a Prague, Czech Republic
{vjirkovsky,mobitko}@ra.rockwell.com
Abstract. The large amounts of diverse data collected in industrial automation domain, such as sensor measurements together with information in MES/ERP1 systems need special handling that was not possible
in past. The Big Data technologies contribute a lot to the possibility of
analyzing such amounts of data. However, we need to handle not only
data volume, which is usually the major focus of Big Data research, but
we also need to focus on variety of data. In this paper, we primarily
focus on variety of industrial automation data and present and discuss
a possible approach of handling the semantic heterogeneity of them. We
show the process of heterogeneity reduction that exploits Semantic Web
technologies. The steps include construction of upper ontology describing all data sources, transformation of data according to this ontology
and finally the analysis with the help of Big Data paradigm. The proposed approach is demonstrated on data measured by sensors in a passive
house.
Keywords: Big Data, Semantic heterogeneity, Data integration, Industrial automation
1
Introduction
The large amounts of diverse data can be collected in virtually any domain today,
including industrial automation domain. A typical example is an assembly line
— at the lowest level, there are sensors reading values important for low level
control such as moving machines, while in the upper levels, there are quality
checks and monitoring with a possible flow of customer orders etc. The data
that can be captured are of huge quantities and variety. In addition, for the
meaningful use of the results of their analysis, it is often necessary to react
quickly. These characteristics overlap with the Big Data three Vs - volume,
velocity and variety. However, let us emphasize from the beginning that the area
of automation is much wider than just assembly lines — a control system can
be used for any processes where it is needed to reduce human intervention for
various reasons.
1
MES - Manufacturing Execution System; ERP - Enterprise Resource Planning
6
Similarly to other domains that need to use the Big Data paradigms, in
industrial automation data are already captured, processed and analyzed, however, the properties of these data were enabling only smaller scale processing.
For example, sensor data are used for low-level control of a single machine. In
addition, the data can be kept in historian software for further offline analysis —
and even this analysis of single time series stored from measured data streams
is hard with larger amounts of data for classical historian software packages.
The Big Data technologies were developed primarily by web companies to
handle large amounts of user clickstreams and other information to be able to
offer suitable products and ads in real time. Using these technologies it becomes
possible and meaningful to analyze much larger amounts of data than when
using classical data analysis packages. However, we must note that the focus of
the existing technologies has been mainly on the volume of data. This is clear
— handling the volume even for simple analysis was something that was needed
most. As we discuss later in the paper, the variety of data is something that is
important and not satisfactorily solved as well. In fact, one of the main outcomes
of the survey [1] among the Fortune 500 leading companies is that ”it’s about
variety, not volume” and that data integration will continue to be one of the
greatest challenges faced.
Handling the semantic heterogeneity for Big Data application in industrial
automation is the main topic we discuss in this paper. The rest of this paper
is organized as follows: We describe Big Data features and existing technologies
related to the types of data that are to be processed in industrial automation.
Then we discuss the data heterogeneity problems we are facing and we propose
how to handle the problem at least in our domain. We illustrate the approach on
an example of data measured from a passive house, for which automation helps
to maintain conditions suitable for humans. After that we provide a conclusion
with the outlook for our future work.
2
Big Data
The Big Data term represents data growing so that it becomes difficult to manage
using existing database management concepts and tools [16]. The difficulties
may be related to data capture, storage, search, sharing, analytics etc. Such
data noticeably exhibit the following properties: the amount of data is large and
is quickly growing (volume), the data are generated and need to be processed
with higher speed, usually in “real” time (velocity) and the data include less
structured forms, including texts, images and videos (variety).
The main reason for the necessity of handling such data is better data driven
decision making. The ability to handle these data presents an opportunity to
create business advantage; however, it also requires new infrastructures and new
ways of thinking different from the classical business intelligence approaches.
The infrastructures, tools and frameworks developed to manage such data
were originally developed by web companies for storing and analyzing data such
as for searching, for analyzing clickstreams and user behavior etc. The required
7
outcome is typically offering relevant advertisements, products and services for
individual users.
Let us mention an example from the automation domain [2]: a CPG (Consumer Packaged Goods) company generates 5000 data samples every 33 milliseconds leading to 4 trillion of samples per year. Such data need to be stored and
processed in real time.
3
Related Work
There are many already developed solutions providing more or less capability
how to deal with data heterogeneity problem within Big Data domain. Some of
the interesting and promising solutions are listed below.
The Autonomy IDOL 102 developed by HP Company, where IDOL stands
for Intelligent Data Operating Layer, is aimed at providing single processing
layer for conceptual, contextual, and real-time understanding of data. The IDOL
allows organizations to form a conceptual understanding of information based
on a patented probabilistic algorithms to automatically recognize concepts and
ideas expressed in all forms of information (documents, video, chat, phone calls,
and emails).
The next available complex solution is IBM InfoSphere, especially Master
Data Management [4] and Information Server [3]. These systems are cornerstones of the IIG — Information Integration and Governance. It is a unified
set of capabilities that bring together data from diverse sources. The IIG delivers critical capabilities to Watson Foundations, the IBM big data and analytics
platform.
The Optique [6] is an ontology-based data access solution for Big Data. The
system aims at providing an end-to-end solution, where end-users will formulate
queries based on ontology. The main components are the ontology and mappings
that provide the relationships between the ontology and the underlying data.
User queries over the heterogeneous data are transformed with the help of these
mappings and ontology.
4
Data Heterogeneity
Information integration from heterogeneous data sources is significant problem
in every complex IT system and every successful system has to be able deal to
with this integration problem. In this section, the categorization of information
integration and heterogeneity are presented.
General information integration consists of a set of local information sources
potentially storing their data in different formats (RDF, XML ...) which have to
be integrated to provide users with unified data access.
Schema integration [5] — it is the oldest scenario of information integration and represents situation when two (or more) local data sources integration
2
http://www.autonomy.com/technology/idol-the-os/
8
is needed. The essential step of schema integration process is to identify correspondences between semantically identical entities of the schemas.
Catalogue integration [11] — In Business-to-Business (B2B) applications,
trade partners store information about their products in electronic catalogues
(product directories of electronic sales portal) — central warehouse of the marketplace. Finding correspondences among entries of the catalogues is referred
to the catalogue matching problem. Having identified the correspondences between the entries, users of a marketplace can benefit from a unified access to the
products which are on sale.
Data integration [10], also known as enterprise information integration —
is an integration of information from multiple local sources without loading their
data into a central warehouse. It ensures inter-operation of multiple local sources
having access to the up-to-date data.
There are many different classifications of heterogeneity - e.g., in [9]. We
consider the following types of heterogeneity according to [8]:
– Syntactic heterogeneity occurs when two data sources are not expressed
in the same language, e.g., it can be caused when two ontologies are modelled
by using different knowledge representation formalisms - OWL and F-logic.
– Terminological heterogeneity stands for variations in names when referring to the same entities in different data sources.
– Conceptual heterogeneity, also known as semantic heterogeneity or logical mismatch, denotes the differences in modeling the same domain of interest. it is caused due to the use of different axioms for defining concepts or
due to the use of totally different concepts. We can distinguish a difference
between the conceptualization mismatch (i.e., differences between modeled
concepts) and the explication mismatch (i.e., concepts are expressed in different way).
• Difference in coverage occurs when two data sources describe different
regions of the world at the same level of detail and from a unique perspective.
• Difference in granularity occurs when two data sources describe the same
region of the world from the same perspective but at different levels of
detail (e.g., geographic maps with different scales).
• Difference in perspective (difference in scope) occurs when two data
sources describe the same region of the world, at the same level of detail,
but from different perspective (e.g., a political map vs. geological map).
– Semiotic heterogeneity, also known as pragmatic heterogeneity, stands
for different interpretation of entities by people. This kind of heterogeneity
is difficult for computer to detect and even more difficult to solve.
Furthermore, it is common to face several types of heterogeneity together.
One possible way, how to reduce (partially or in total) heterogeneity between
data sources, is similarity matching.
9
4.1
Heterogeneous Data in Industry Automation
Data integration in industry automation domain can be expressed as an Enterprise Information Integration (EII) problem. The goal of EII is the ability
to provide a uniform access to multiple data and information from an entire
organization.
There are many different sources of information in an industry company —
data from ERP system, MES, production line, and from outside of company.
ERP system knows what customers want, MES systems know how to build it,
and data from production line sensors shows how the production system works.
However, oftentimes the enterprise data source systems are created by different
vendors and these systems do not speak the same language.
Furthermore, it is no exception in the industry domain that a same kind
of device (from different vendors) mounted at a production line has different
interface, i.e., different output. This situation is caused from the fact that the
vendors follow for example different standards.
5
Heterogeneity Reduction for Big Data
This section demonstrates main characteristics of data interoperability problem
with focus on Big Data and proposes a solution for dealing with it. General
process of the proposed heterogeneity reduction schema is depicted in Fig. 1.
The first type of heterogeneity we have to deal with is structure heterogeneity
(or syntactic heterogeneity). Various data sources are essential to ensure quick
and valuable decisions. In industry automation, it is also common to predict
next steps for control from various sources as mentioned earlier — from low level
systems as well as high level systems. It is necessary to take into consideration
many different types of data sources for our application — text files, XML files,
databases, etc.
The second type of heterogeneity is semantic heterogeneity. A possible solution for this problem is the creation of a shared ontology which ensures transformation of the data sources into the same “language”.
We present a possible solution how to deal with previously mentioned types
of heterogeneity and general heterogeneity reduction problem as well in the following subsection. The suggested approach has to take into account all the Big
Data characteristics, not only variety, but also volume and velocity. It is confronted with processing huge data amount (e.g., data stored in databases or data
streams from production lines) and a quickness of data processing, data loading,
and data storing.
5.1
Ontology Construction
The goal is to deal with data heterogeneity and the first step in our approach
is creation of a shared ontology which ensures knowledge sharing. The proper
creation of the shared ontology is essential for subsequent processing.
10
TXT
TXT
TXT
Semistructured
XML
Structured
XML
HTML
Database
Ontology
Data Sources
Unstructured
Ontology
Constuction
Data Mapping
User Verification
Shared Ontology
Transformation of Data Sources
Big Data Information Retrieval
Pre-processing
Shared Storage (RDF Triplestore)
Fig. 1. Heterogeneity reduction process
First, we have to deal with structural diversity. Structural heterogeneity problem falls into the pre-processing step. Data source processing strategies differ depending on its category. Semi-structured documents may be transformed into a
predefined relational structure. HTML documents can be indexed and reduced to
free text. For processing textual data sources, the system must utilize languagespecific natural language processing systems (e.g., GATE [7]).
Next step is the construction of a shared ontology from pre-processed data.
A crucial step is the understanding of a content and identifying the correspondent entities across all data sources. Some ontology matching systems can be
exploited for this task. We adopted our previously developed system MAPSOM
presented in [12]. This system is semi-automatic matching system and is based
on similarity measure aggregation with the help of Kohonen’s self-organizing
maps, and hierarchical clustering. The MAPSOM is focused on user involvement in ontology matching which is suitable for the domains as the industrial
automation — i.e., for the application where the highest precision is preferred
to the processing time.
11
The other possible supporting tool for shared ontology construction is formal
concept analysis (FCA). The FCA is according to [14] a possible solution for
supporting and simplifying ontology design process. It is a theory of data analysis
which identifies conceptual structures among data sets. This approach helps to
design better ontologies that are more suitable for ontology sharing than pure
taxonomies.
After shared ontology construction, a transformation of data is needed for
a subsequent utilization. In the following paragraphs, two possible ways are
described.
Data source transformation “on the fly” (on demand — i.e., when a user
submits a query) is common in many solutions. This approach has one significant
drawback and it is the additional computational and time requirement on every
access. If a user submits a query then an initialization and transformation of data
sources is needed. This is suitable solution only in the case where the storage
capabilities are limited or when data access is not frequent.
The second way is a creation of a “snapshot” (a shared storage). This is more
suitable in many application — it can speed up following analysis. On the other
hand, it is important to take up-to-dateness of data sources into account — how
often it is needed to re-transform source data into the new shared storage.
6
Testing Scenario
To demonstrate previously mentioned approach and to provide the wide usability
of the methods, we have selected the following use case. It is based on our
former project dealing with measuring physical behavior of passive houses and
fine-tuning a dynamic simulation model approximating their operation. This
use-case and the simulation model to be fine-tuned were presented in [13].
First of all, the starting point of the process is the pre-processing step. The
data sources for this demonstrative example are the SSN Ontology3 and measured sensors data stored in text files, i.e., temperature, carbon dioxide concentration, relative humidity, and air pressure. All sensor data are contained in
text file divided day by day. Every text file consists of sensor headers and lists
of sensors records. The SSN Ontology can be the other source for the information completion. The source ontology is a domain-independent and end-to-end
model for sensing application by merging sensor-focused, observation-focused,
and system-focused views. It is the backbone for a new shared ontology. In this
case, the sensor data text file is parsed into a more useable structure (i.e., object
representing properties and records of certain sensor) and SSN Ontology can
stay in the original form. The pre-processing step is depicted in the Fig. 2.
The manual (semi-manual) ontology construction is possible in this simple
example. It can be supported with the similarity mapping of the data source
entities. Mapping step lies in finding similar concepts and properties with the
help of similarity measures. It is not sufficient to use only one specific similarity
3
http://www.w3.org/2005/Incubator/ssn
12
Record date: 1.4.2012
Device
CO2_SENSOR_1430
SSN Ontology
(General Sensor Knowledge)
Data:
Name: CO2_SENSOR_1430
Locality: pcpu1
Address: 0027
Type: CO2 – A MJ: CO2 [ppm]
Description:
SENSOR_00158D000007CCA2
Static Address: 00158D000007CCA2
Time = 00:00:41
Time = 00:01:41
Time = 00:02:41
Time = 00:03:41
Time = 00:04:41
Time = 00:05:41
Time = 00:06:41
...
Value = 286
Value = 283
Value = 283
Value = 286
Value = 286
Value = 283
Value = 283
Fig. 2. Pre-processing step of heterogeneity reduction
measure, because one similarity measure is able to reflect only some specific
heterogeneity aspect. Therefore the usage of similarity aggregation is suitable
to capture the most of dissimilarity problems according to [12]. We used the
string similarity measures (prefix, suffix, and n-gram similarity measure) and
language-based techniques, i.e., extrinsic WordNet similarity measure (Resnik ).
The following corresponding entities are results of this step:
– Device — Device
– Sensor — CO2 SENSOR 1430
– ObservationValue — Value
The shared ontology construction is important step and has to be ensured
by skilled domain expert. The created ontology (Fig. 3) is the base for ontologydriven data transformation of the data sources. The shared ontology includes
concepts and relationships for sensor properties, measurements, and taxonomies.
Finally, the last step is storage of transformed data from data-sources. Naturally, it is possible to use original data sources with on-line ontology-driven data
transformation, but this approach is inappropriate for the case of big amount
of sensor data that require fast data access. Therefore, the storage of transformed data is required for faster data access. The Hadoop RDF triplestore, i.e.,
H2RDF [15], was selected due to the data characteristics and ontology-driven
transformation as well.
Using the described approach, we can take advantage of solved data source
heterogeneity problem for knowledge discovery with the help of Map&Reduce
programming within the Big Data domain.
13
Name
SensorDevice
hasName
Locality
hasLocality
Address
Device
Sensor
hasDescription
Description
Static
Address
IsProducedBy
hasStaticAddress
Observation
Vaue
hasValue
SensorOutput
Fig. 3. Generated shared ontology
6.1
Summary
The cornerstones of the proposed heterogeneity reduction approach are transformation of the data sources into a simple common format, translation to the
“same language”, and shared ontology construction. All of the mentioned steps
are complex tasks and we have demonstrated one of the possible approaches of
how to deal with these challenges.
Our approach offers possibility to integrate data sources for batch processing
(utilization of the joint RDF storage), real-time processing of sensor measurements (shared ontology serves for data source interface), and combination of the
both mentioned processing.
7
Conclusions
We have shown how the heterogeneity of data sources can be reduced by means
of shared ontology. This solution is proposed to enable dealing with integration
of diverse data collected in industrial automation domain, such as sensor measurements or data from MES/ERP systems. The proposed solution was demonstrated on the passive house testing use case.
The capability of handling various data sources stored in databases or files
as well as various streams of data is the significant advantage not only for the
industrial automation domain. This capability can precisely capture various relationships among data sources and therefore can improve the process of decision
making. As have demonstrated in the state of the art review, the variety aspect
of Big Data is very important one, but also very hard to be solved.
Our future work includes further development of the proposed process for
heterogeneity reduction in Big Data with the focus on industrial automation
domain. This work involves construction of complex software solution which will
be able to deal with huge amount of data from ERP/MES system, streams of
data generated by sensors from a production line, and also integrating data from
external data sources, such as weather conditions.
14
To conclude, the possibility of handling large volumes of data at high speed
and especially the integration of various data sources is essential for gaining
competitiveness in every enterprise. The heterogeneity of data was always an
important issue to handle, but it is much more visible and important today
when the trend of increasing processed amounts of data continues.
8
Acknowledgements
This research has been supported by Rockwell Automation Laboratory for Distributed Intelligent Control (RA-DIC) and by the Grant Agency of the Czech
Technical University in Prague, grant No. SGS12/188/OHK3/3T/13.
References
1. Big Data executive survey, Consolidated summary report. Consolidated summary
report, NewVantage Partners (2012)
2. The rise of industrial Big Data. Whitepaper, GE Intelligent Platforms (2012)
3. Integrating and governing big data. Whitepaper, IBM Corporation (2014)
4. The MDM advantage: Creating insight from big data. Whitepaper, IBM Corporation (2014)
5. Batini, C., Lenzerini, M., Navathe, S.B.: A comparative analysis of methodologies
for database schema integration. ACM computing surveys 18(4), 323–364 (1986)
6. Calvanese, D., Giese, M., Haase, P., Horrocks, I., et al.: Optique: OBDA Solution for Big Data, pp. 293–295. The Semantic Web: ESWC 2013 Satellite Events,
Springer (2013)
7. Cunningham, H.: Gate, a general architecture for text engineering. Computers and
the Humanities 36(2), 223–254 (2002)
8. Euzenat, J., Shvaiko, P.: Ontology matching, vol. 18. Springer (2007)
9. Goh, C.H.: Representing and reasoning about semantic conflicts in heterogeneous
information systems. Ph.D. thesis, Massachusetts Institute of Technology (1996)
10. Halevy, A.Y., Ashish, N., Bitton, D., Carey, M., Draper, D., Pollock, J., Rosenthal, A., Sikka, V.: Enterprise information integration: successes, challenges and
controversies. In: Proceedings of the 2005 ACM SIGMOD international conference
on Management of data. pp. 778–787. ACM (2005)
11. Ichise, R., Hamasaki, M., Takeda, H.: Discovering relationships among catalogs.
In: Discovery Science. pp. 371–379. Springer (2004)
12. Jirkovsky, V., Ichise, R.: Mapsom: User involvement in ontology matching. In:
Proceedings of the 3rd JIST Conference. Springer (2013)
13. Novák, P., Šindelář, R.: Design and verification of simulation models of passive
houses. In: Proc. of 17th ETFA Conference (2012)
14. Obitko, M., Snasel, V., Smid, J., Snasel, V.: Ontology design with formal concept
analysis. In: CLA. vol. 110 (2004)
15. Papailiou, N., Konstantinou, I., Tsoumakos, D., Koziris, N.: H2rdf: adaptive query
processing on rdf data in the cloud. In: Proceedings of the 21st international conference companion on World Wide Web. pp. 397–400. ACM (2012)
16. Singh, S., Singh, N.: Big Data analytics. In: 2012 International Conference on
Communication, Information & Computing Technology (ICCICT). pp. 1–4 (2012)
15
Structure Composition Discovery using Alloy
Radek Mařı́k
The Czech Technical University (Prague), Czech Republic
[email protected]
Abstract. A method for structure discovery is described. We assume that an unknown composite structure is sampled and observed as a set of small relational
structure fractions. Each fraction is described by a set of atoms and their relations.
We propose a technique that allows fusing these fractions into large components
or the structure itself. The method is demonstrated using an example taken from
the genealogy domain. Our approach of the solution is based on SAT. We show
that the composition can be effectively performed using the Alloy tool, which is
a bounded model checker. The search through the possible solutions is guided by
the unique identities of observations.
1
Introduction
A general scientific approach begins with a strategy of collecting of evidence events [10].
In the next step the event data are sorted and classified. We often try to find abstract entities and their attributes to simplify model building. Relations among entities are employed in the actual model composition. Based on the model we can derive or predict
further properties, events, and general behavioral patterns of the inspected system.
In this paper we focus on the building of such a model instance which resembles
all non-trivial observations made on an unknown system. We assume the existence of
background knowledge that is satisfied by all system model instances and has a form
of relations from which any instance can be composed. Furthermore, we assume the
existence of a mapping that relates facts of observations to the model instance.
While a constraint satisfaction problem seeks a solution given a set of constraints [13],
our proposed method utilizes additional conditions, i.e. the input variable values are
fixed and linked through the identity of particular observations. We do not deal with object detection as these methods try to select a part of an inspected system, i.e. as points
of a flat n-dimensional space in pattern recognition [4, 6, 5, 13] or as relation components, such as topics or named entities in natural language processing NLP [16, 17] or
communities in social network analysis [3, 9]. While general machine learning methods [13] or methods focused on inductive logic programming [8], logical and relational
learning [11] try to detect rules that are followed in the inspected system, our method
assumes an explicit specification of such constraints at input.
2
Structure Composition Method
In this paper we deal with a method that enables the composition of a large structure
from its small predefined general fragments so that observation relations are satisfied.
16
We search for a resulting structure that uses a minimum number of fragments. More
specifically, the resulting structure is assumed to have the form of a weighted graph
G = (V, E), where V (G) is a set of weighted nodes and E(G) is a set of weighted
edges. In this paper we consider possible weights as finite sets of labels. More formally,
we have a finite set X of finite sets Yi ∈ X of labels Lji ∈ Yi . Then, there are two
sets of weight functions assigning labels to vertices W G : V (G) → Lji and to edges
W E : E(G) → L`k . Observations in the form of small graphs follow the same pattern,
i.e. graphs Gm = (Vm , Em ), where Vm (Gm ) is a set of weighted nodes and Em (Gm )
is a set of weighted edges and their weight domains are taken from X.
The input data are very small subgraphs with few nodes and edges. The result structure is not known a priori. Also no unique identifiers of nodes relating to the result
structure are provided. The goal is a composition of subgraphs that results in as small a
result graph as possible. In other words, we try to replace a large set of small subgraphs
with one larger structure. We hope that all input observed subgraphs can be mapped as
substructures onto the large structure. Thus, we search for a mapping between nodes
Vm of small subgraphs and nodes V of the result structure and similarly for a mapping
between sequences of edges Em of small subgraphs and sequences of edges E of the
result structure.
In reality, there are a number of constraints that must be satisfied in substructures,
similarly the result structure must follow a number of constraints. Further, a mapping
between the observed substructures and a result structure is not given explicitly. We
assume that the mapping can be a very general relation specified again by constraints.
Then, we search for such result structures which satisfy their own constraints and fulfill
also the constraints of the mapping.
SAT can be proposed as a suitable method for searching for a solution although we
might use more efficient methods for special forms of structures, like trees, and their
constraints . While traditional methods provide a huge set of independent constraints
leading to very difficult conditions for searching, we exploit the identity of the observation substructures as the fundamental feature of our method. Each substructure
produces a number of constraints, but all of them are bound to the identity of a given
substructure. As a result we can observe that if the input substructures are larger, the
searching space of possible result structures is smaller. We will show that even when the
transformation of a given problem into a SAT task results in a huge amount of variables,
solutions can be found very quickly (seconds for 105 variables).
Generally, we will find no solution if the problem is overconstrained, one or a few
solutions if the constraints are defined properly, or a large number of solutions if the
problem is underconstrained. In this paper, we focused on situations when the result
structure is almost unique. If we detect more solutions, we try to supply additional
substructures or constraints using detected sources of ambiguities. Thus, our method
might be used for controlling a process of substructure observations to fill gaps and
ambiguities in the result structure.
The proposed method follows the principle of minimum description length [12] using which we replace a large number of small observations with a structure that explains
or captures a majority of small observations. While in theory we could pose the search
for a minimum structure, we do not insist on such a result in this paper. Generally, such
17
theoretically set-up problems lead to NP problems. However, in many practical examples we are able to find supplementary information, such as additional attributes. As
mentioned above, we also assume that observed data are not provided as standalone
atomic constraints between two logical variables but as small chunks of structures. If
such additional information is supplemented with a suitable observation procedure we
can often find a polynomial solution [1].
In this paper we consider a treatment of the actual algorithm complexity beyond the
scope of this paper. Also, we do not treat a number of other possible aspects in depth,
such as missing information or speculations on ambiguous parts of the result structure.
We will just demonstrate a principle of the method. Also we will demonstrate that even
when small instances of a problem lead to a rather huge number of variables used by
the underlying SAT solver, processing times remain feasibly short.
In the following sections we will introduce the Alloy tool, a bounded model checker.
We will show how such observed substructures and related constraints for the result
structure can be represented using the Alloy language. As a model checker, Alloy is
mostly used for verifications of models represented as collections of constraints. The
solver takes the constraints of a model and finds structures that satisfy them. It can be
used both to explore the model by generating sample structures, and to check properties of the model by generating counterexamples [7].The simulation and exploration
of model properties through the generating of samples is the feature we exploit in our
proposed method. We specify the observed substructures and constraints that must be
satisfied by the resulting structure and constraints determining how the input substructures limit the result structure as a problem input. The model expressed in relational
logic is translated by Alloy into a corresponding boolean logic formula and an off-theshelf SAT-solver is invoked on the boolean formula. In the event that the solver finds
a solution, the result is translated back into a corresponding binding of constants to
variables in the relational logic model [14, 15].
We should note that the art of model specification for our problem resides in constraining possible result structures in such a way that does not produce unwanted speculations. The task of any model checker is to search for any solution that satisfies the
constraints. That means, if model constraints enable the addition of extra entities into
the result structure and the related part of the structure is underconstrained by the input
substructures, then the model checker generates structures that might not be valid. In
fact, the same situation happens in science generally. Having some observations so far,
we created a theory that covers these observations. If we find additional facts that are
contradictory with the theory, we will try to adjust the theory to cover the new facts.
In a similar way, if the result structure found by our method seems to be suspicious we
need either to add more constraints to remove such speculations or search for additional
substructure observations that would disambiguate the issue.
To demonstrate our proposed method, we selected a simplified domain of genealogy. We will search for a family tree given observation facts such as birth events or
marriage events. However, we provide some highlights of the Alloy language in the
following section before concrete steps of the proposed method are described.
18
3
Exemplar Problem from Genealogy Domain
The basic task in the domain of genealogy is the composition of a family tree from
scattered facts about relatives. Of course, a family tree might be extended in a number of possible ways. We will simplify significantly the real problem to demonstrate
fundamental properties of our method.
(a) A record in Czech from 1643 on
the birth of Jirik Mikiska. His fathers name was Vaclav Mikiska and
his mothers name Katerina. He was
born in the village Orlice.
(b) A marriage event from 1819. Groom Jan Mikyska, son
of Martin Mikyska from Mistrovice n. 40, married bride
Josefa, born Doleckova, daughter of Josef Dolecek from
Mistrovice n. 37 and Katerina, daughter of Klyment Balas
from Mistrovice and Anna, daughter of Martin Stepanek
from Mistrovice
Fig. 1: Genealogy Events
Basic facts about relatives cover the following three events. A birth event describes
the birth of a person. The record of such an event often contains the following items:
the name of the child, the names of its father and mother, the place of birth, and the
date of birth. Information on grandparents is usually also provided. A marriage event
describes a situation when two people are married. Again, the record of a marriage event
contains items such as the date, the name of the groom, the name of the bride, the place
of the marriage, a description of parents of the groom and the bride. The third event
that provides significant information on people is a death event. The record provides
information on when, where, and who died, often at what age and what the cause of the
death was.
Facts about events can be discovered through discussions with people for the last
100-150 years. Facts on earlier events might be found in parish registers. We should
note that records or their parts might not be readable or are missing because of fire,
flood, mold, special contemporary styles of handwriting, etc. The amount of detail in
records differs significantly.
Examples of two such records are depicted on Figure 1a and Figure 1b. After a
short training in reading the contemporary handwriting, one can find that the record
19
in Figure 1a describes the birth of Jirik Mikiska. The following record from 1819 in
Figure 1b contains much more information. It is about the marriage of Jan Mikyska and
Josefa Doleckova. To simplify our example we drop information on dates and places.
Also we simplify the treatment of names. We will use only simple single short labels
instead of full names.
4
Basics of Alloy
Alloy is a formal notation based on relational logic [7, 2]. In this section, we only
introduce the key characteristics of the notation as they are applied in our family tree
example.
sig ASet {}
abstract sig Sex {}
one sig Male, Female extends Sex {}
An empty signature is used to introduce the concept of ASet. A signature introduces a set of atoms. A set can be a subset of another set. For example, Male and
Female are (disjoint) extensions of Sex. An abstract signature, such as Sex has no
elements except those belonging to its extensions. A multiplicity keyword, such as one,
lone, some, set, placed before a signature declaration constrains the number of elements in the signatures set. Declaring an abstract signature with scalar extensions (one)
introduces an enumeration, e.g. , Male and Female. In our method one often needs
to restrict the elements of sets to be explicitly defined elements to avoid generating unwanted speculative entities. The enumeration technique is suitable for such constraints.
In our family tree example we will need to encode input substructures and the entities of result structure of family tree. We will label the input signatures as events
and we will need only two such events: BirthEvent recording attributes of a child
birth and MarriageEvent describing an event if a man and a woman get married. We
will need two main signatures for family tree coding, i.e. Person describing composed
knowledge on a given person, with its two extensions Man and Woman, and Marriage
with collected information about a married couple of people.
abstract sig Name {}
abstract sig BirthEvent {childName: Name, childSex: Sex,
fatherName: lone Name, motherName: lone Name,
childPerson: Person, childParents: Marriage}
abstract sig MarriageEvent {groomName: lone Name, brideName: lone Name,
groomFatherName: lone Name, brideFatherName: lone Name, marriage: Marriage}
Relations are declared as fields in signatures. For example, fields childName,
childSex, fatherName, motherName introduce relations whose domain is
BirthEvent. The range of a given relation is specified by the expression after the
colon, in our example often as a multiplicity symbol and a signature (default multiplicity
is one). Elements of relations are n-ary tuples. Scalars are also relations, i.e. singletons.
The quintessential relational operator is composition, or dot join. To join two tuples p =
{(N 0, A0)} and q = {(A0, D0)} written as p.q one first check whether the last atom
of the first tuple matches the first atom of the second tuple. If not, the result is empty.
If so, it is the tuple that starts with the atoms of the first tuple, and finishes with the
20
atoms of the second, omitting just the matching atom, e.g. {(N 0, A0)}.{(A0, D0)} =
{(N 0, D0)}.
abstract sig Person {personSex: Sex, personName: Name,
personFather: lone Man, personMother: lone Woman, personParents: lone Marriage}
sig Man extends Person {}{personSex = Male}
sig Woman extends Person{}{personSex=Female}
sig Marriage {husband: lone Man, wife: lone Woman, children: set Person}
fact MarriageBasic1 {personFather = personParents.husband
personMother = personParents.wife}
We introduce the first signature of the result structure fragment, Person. Besides
the relations personSex determining the sex of the person and personName coding his/her name, signature Person provides three relations providing binding with
other people, such as mother and father, and their marriage. Signature Marriage
binds information of married people and collects links to their own children. Constraints that are assumed always to hold are recorded as facts. SAT method ensures
validity of facts in any direction of relations. Facts might be recorded as signature facts
as exemplified in extensions Man and Woman with the constraints immediately following their signatures. For example, we require that any tuple of relation personSex
describing a man has a value Male. Then, facts can be introduced in any order as
a paragraph of its own, labelled by the keyword fact and consisting of a collection
of constraints. In fact, both relations personFather and personMother are redundant, here introduced for demonstration purposes. The fact MarriageBasic1
requires that relation personFather is one to one mapping with regard to dot join
composition personParents.husband; similarly personParents.wife and
personMother.
Alloy also provides operators for sets, such as intersection (&), union (+), subset
(in), equality (=), and operators for relations, such as transpose (˜), transitive closure
(ˆ), reflexive-transitive closure (*), identity (ident). Standard logical operators are
also provided, e.g. negation (not or (!),), conjuction (and), disjunction (or), implication (+).
In this section we introduced very basic notation elements of Alloy language. In
fact, we have also specified all signatures we need to describe both input substructures,
e.g. our family events, and the result structure fragments of family tree. We still miss a
number of constraints that must be satisfied by the output family tree and relations in
which input substructures drive the form of the result family tree. This will be described
in the next section.
5
Genealogy Relations in Alloy
A careful reader noticed that signatures BirthEvent and MarriageEvent define
relations childPerson, childParents, and marriage. These relations define
a basic mapping from the input substructures to the family tree. Although the elements
of these relations are not provided explicitly, they serve as binding touch points through
which the family tree is shaped. They could be also defined outside these event signatures. To make expressions shorter, we placed these relations into the event signatures.
21
fact MarriageBasic2 {
no p: Person {p in p.ˆ(personFather+personMother)} //1
no wife & husband.*(personParents.(husband+wife)).personMother //2
no husband & wife.*(personParents.(husband+wife)).personFather //3
no wife.personParents & husband.personParents //4
all pChild: Person | no children.pChild or (
one children.pChild and pChild in pChild.personParents.children)} //5
We still need to define constraints valid for any family tree, then we need to define other constraints relating the input substructures to the result family tree. Fact
MarriageBasic2 sets additional constraints. Constraint 1 ensures nobody can be
her/his own father or mother. Constraints 2 and 3 and 4 specify the social convention
that there cannot be a marriage between blood relatives. Constraint 5 ensures consistency between relation personParent that binds a given child with its parents and
relation children that collects references to all children of a given married couple.
fact FamilyTreeMapping1 {
no personName.UnknownN //6
all n: Name {not n=UnknownN => some Name2Person[n]}//7
childPerson.˜childPerson in iden //8
˜childPerson.childPerson in iden //9
childParents.˜childParents in iden //10
˜childParents.childParents in iden //11
all p:Person { (no childPerson.p and
(marriage.husband.p).groomFatherName = UnknownN) => no p.personParents}//12
all m: Marriage | some childParents.m or some marriage.m or
some marriage.husband.personParents.m //13
all be: BirthEvent {be.childPerson in be.childParents.children}} //14
We need also to constrain the amount of entities that can be generated in the family tree. The model checker generates general solutions, i.e. also those which have no
justification in observations. Thus, we need to relate generated entities of the family
tree to the provided observations. So, constraint 6 states no Person is generated for
unspecified names. However, any provided Name will be reflected by some Person
instances by constraint 7. All BirthEvent events will be reflected by exactly one
child Person and one instance of Marriage using constraints 8, 9, 10, and 11. By
constraint 12 no Marriage instance is generated if there is not birth event or marriage
event evidence. Also all Marriage instances must be supported by a birth event or by
a married couple or by their grandparents through constraint 13. Constraint 14 ensures
propagation of BirthEvent into the family tree.
fact FamilyTreeMapping2 {
all be: BirthEvent | one pChild: Person {
(pChild = be.childPerson) and (pChild.personName = be.childName) and
(pChild.personSex
= be.childSex) and
((be.motherName != UnknownN or be.fatherName != UnknownN) =>
pChild.personParents = be.childParents)
and (be.motherName != UnknownN => (
(Mother[pChild].personName = be.motherName) and
(Mother[pChild].personSex = Female))) and
(be.motherName = UnknownN => no pChild.personMother)
and (be.fatherName != UnknownN => (
(Father[pChild].personName = be.fatherName) and
(Father[pChild].personSex = Male))) and
(be.fatherName = UnknownN => no pChild.personFather)}
Fact FamilyTreeMapping2 propagates information from BirthEvent instances into Person and Marriage instances. The propagation is performed conditionally only in situations when names of people are provided already.
22
fact FamilyTreeMapping3 {
all me: MarriageEvent | one m: Marriage {
(m = me.marriage) and (me.groomName != UnknownN =>
me.groomName = m.husband.personName) and
(me.brideName != UnknownN => me.brideName
= m.wife.personName) and
(me.groomFatherName != UnknownN =>
m.husband.personParents.husband.personName = me.groomFatherName)}
all m1: Marriage | all m2: Marriage
{m1.husband = m2.husband and m1.wife = m2.wife => m1=m2}}
Similarly, FamilyTreeMapping3 propagates information from MarriageEvent.
It follows the same strategy as the previous fact. Finally, we need to provide the input
data. As a demonstration we select a very simple set of input substructures. There are 7
names, three instances of BirthEvent, including those with unspecified names, and
one instance of MarriageEvent with richer details.
one sig UnknownN, N1, N2, N3, N4, N5, N6, N7 extends Name {}
one sig N2_BE extends BirthEvent{}{childName=N2 childSex=Female
fatherName=N5 motherName=N1}
one sig N3_BE extends BirthEvent{}{childName=N3 childSex=Female
fatherName=N6 motherName=N1}
one sig N4_BE extends BirthEvent{}{childName=N4 childSex=Male
fatherName = UnknownN motherName=N2}
one sig M6_1 extends MarriageEvent {}{groomName=N6 brideName=N1
groomFatherName=N7 brideFatherName=UnknownN}
6
Experiments and Discussion
A simple command of Alloy run {} for 7 Person, 7 Marriage can trigger a generation of the family tree. The maximum number of people and Marriage
instances must be either estimated (the maximum number of people is determined by
the number of fields with names, also the number of marriages is constrained by the
number of birth and marriage events). The result family tree is depicted on Figure 2.
The solution was found using 16978 vars, 544 primary vars, 40721 clauses in 109 ms
using Sat4j solver. Characteristics of other experiments with a different number of input
events are collected in Table 1.
Table 1: Performance of the proposed method with different problem size.
the number of input birth events
3
9
9
12
12
the number of input marriage events
1
1
4
1
6
the number of people
7
17
17
21
26
the number of marriages
4
9
8
13
13
the number of variables
16978 221736 233740 588927 614633
the number of primary variables
544 3008 3324
5638
6256
the number of clauses
40721 541951 580071 1421000 1501564
processing time in milliseconds
109 4949 21338 48516 27846
From Table 1 we cannot draw any conclusions regarding additional constraints provided by input substructures like marriage event. In our experiments, these additional
23
Fig. 2: The result family tree is synthetized by the constraints and the provided input
substructures of birth and marriage events. The diagram makes explicit feeding of the
family tree from the input events shown outside the box of family tree. The diagram
generated by the tool was laid out manually.
events were used mainly as confirmations of some relations inside of the result family
tree. They meant adding a relatively small number of other variables, but they resulted
in rather different processing time, both longer and shorter. Our original speculation
was that such additional input constraints should shorten processing time as the search
space is more constrained.
7
Conclusion
In this paper we demonstrated that using a set of relational substructures observed as
partial views on an unknown system we can compose the entire structure. The proposed
method utilizes a transformation from relational specification into SAT problem. We use
Alloy Analyzer that provides a suitable relational notation language and bounded model
checking. Constraints must restrict both properties of the result structure and how input
information is propagated into the result structure. The proposed method was presented
on exemplar case taken from the genealogy domain. Using a few constraints we are
able to find the underlying family tree. Although the number of variables of the related
SAT problem is huge as expected, the search for the solution is fast because observation
facts of overlapping substructures are bound by unique identities of substructures. Nevertheless, some additional issues such as time, dates, a selection of suitable mappings,
and sensitivity to unspecified variables need to be resolved before the method can be
utilized in more practical problems.
24
Acknowledgments. We would like to thank the reviewers for their comments, which
helped improve this paper considerably. This work was supported by the Systems for
Identification and Processing of Signaling and Transmission Protocols VF20132015029
project.
References
[1] Angluin, D.: Learning regular sets from queries and counterexamples. Information and
Computation 75(2), 87–106 (1987)
[2] Baresi, L., Spoletini, P.: On the use of Alloy to analyze graph transformation systems. In:
Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) Graph Transformations, Lecture Notes in Computer Science, vol. 4178, pp. 306–320. Springer Berlin
Heidelberg (2006)
[3] Du, N., Wu, B., Pei, X., Wang, B., Xu, L.: Community detection in large-scale social networks. In: Proceedings of the 9th WebKDD and 1st SNA-KDD 2007 Workshop on Web
Mining and Social Network Analysis. pp. 16–25. WebKDD/SNA-KDD ’07, ACM, New
York, NY, USA (2007)
[4] Duda, R.E., Hart, P.E.: Pattern Classification and Scene Analysis. John Wiley (1973)
[5] Duda, R.O., Hart, P.E., Stork, D.G.: Pattern Classification. Wiley, New York, 2 edn. (2001)
[6] Fukunaga, K.: Introduction to Statististical Pattern Recognition. Academic Press, second
edn. (1990)
[7] Jackson, D.: Software Abstractions: Logic, Language, and Analysis. MIT Press, ISBN 9780-262-10114-1 (2006)
[8] Muggleton, S., de Raedt, L.: Inductive logic programming: Theory and methods. The Journal of Logic Programming 19-20(0), 629 – 679 (1994)
[9] Newman, M.: Networks: an introduction. Oxford University Press, Inc. (2010)
[10] Popper, K.R.: Logika vedeckeho zkoumani (Logik der Forschung, German original 1934).
OIKOYMENH (1997)
[11] Raedt, L.D.: Logical and Relational Learning. Springer (September 2008)
[12] Rissanen, J.: Modeling by shortest data description. Automatica 14(5), 465–471 (Sep 1978)
[13] Russell, S.J., Norvig, P.: Artificial Intelligence, A Modern Approach. Pre, third edn. (2010)
[14] Torlak, E., Dennis, G.: Kodkod for alloy users. In: First Alloy Workshop, colocated with
the Fourteenth ACM SIGSOFT Symposium on Foundations of Software Engineering. Portland, Oregon (November 6 2006)
[15] Torlak, E., Jackson, D.: Kodkod: A relational model finder. In: Grumberg, O., Huth, M.
(eds.) Tools and Algorithms for the Construction and Analysis of Systems, Lecture Notes
in Computer Science, vol. 4424, pp. 632–647. Springer Berlin Heidelberg (2007)
[16] Uszkoreit, H.: Methods and applications for relation detection potential and limitations of
automatic learning in ie. In: Proceedings of International Conference on Natural Language
Processing and Knowledge Engineering, NLP-KE 2007. pp. 6–10. Beijing, China (Aug 30Sep 1 2007)
[17] Welty, C., Fan, J., Gondek, D., Schlaikjer, A.: Large scale relation detection. In: Proceedings of the NAACL HLT 2010 First International Workshop on Formalisms and Methodology for Learning by Reading. pp. 24–33. Association for Computational Linguistics, Los
Angeles, California (Jun 2010)
25
Referativnı́ přı́spěvky
Secondary Papers
26
27
Zovšeobecnený jednostranne fuzzy konceptový zväz a
jeho ekvivalencia s konceptuálnym škálovaním
Peter Butka
Katedra kybernetiky a umelej inteligencie, Fakulta elektrotechniky a informatiky,
Technická univerzita v Košiciach, Letná 9, 042 00 Košice, Slovenská republika
[email protected]
Abstrakt. Tento príspevok sumarizuje práce súvisiace s návrhom a
vlastnosťami modelu zovšeobecneného jednostranne fuzzy konceptového
zväzu, ktorý predstavuje metódu analýzy objekt-atribútových modelov
pomocou tzv. formálnej konceptovej analýzy. Konceptový zväz je hierarchická
štruktúra organizujúca objekty do skupín podľa podobnosti na základe nimi
zdieľaných atribútov. Metódy na báze konceptových zväzov boli ako
konceptuálna metóda dolovania dát úspešne aplikované v rôznych oblastiach
ako dolovania v textových dokumentoch, vyhľadávanie informácií, systémy pre
podporu rozhodovania, znalostný manažment, atď. V rámci tohto príspevku
okrem stručného popisu práce definujúcej spomínaný zovšeobecnený typ
konceptového zväzu, umožňujúceho spracovávať heterogénne vstupné tabuľky
dát, spomenieme prácu na tému ekvivalencie nového prístupu a metódy
spracovania heterogénnych vstupov pomocou konceptuálneho škálovania.
Kľúčové slová: formálna konceptová analýza, konceptový zväz, konceptuálne
škálovanie, analýza dát
1
Úvod
Jednou z oblastí konceptuálnych metód dolovania v dátach je tzv. formálna
konceptová analýza (Formal Concept Analysis - FCA, [4]). Ide o metódu na báze
konceptových zväzov identifikujúcu konceptuálnu štruktúru nad vstupnou množinou
(tabuľkou) dát definovanou ako objekt-atribútový model. Konkrétne metódy z tejto
oblasti si nachádzajú uplatnenie v dolovaní dát z databáz a textov, vyhľadávaní
informácií, znalostnom manažmente, podpore rozhodovania a podnikovej
inteligencie. Tento príspevok sumarizuje hlavné myšlienky článkov [1,2].
Konceptový zväz, ako výstup analýzy pomocou metód FCA, môže byť chápaný
ako znalostný model alebo hierarchia konceptov. Štandardný (alebo klasický) rámec
FCA pracuje s tzv. crisp (binárnym) prípadom, ktorý je založený na použití vstupných
tabuliek binárnych dát vyjadrujúcich fakt, či objekt má alebo nemá daný atribút. V
praxi však existuje potreba spracúvať rôzne typy atribútov, preto sa objavilo viacero
prístupov k fuzzifikácii klasického prístupu. Zovšeobecnenie týchto prístupov
(vrátane napríklad aj odkazov na jednotlivé predchádzajúce prístupy) založené na
dynamickom použití lokálnych Galoisových konexií je možné nájsť v [5]. Tento
model je aj základom pre prístup označený ako zovšeobecnený jednostranný fuzzy
28
konceptový zväz, ktorý tvorí základ referovaných článkov v tomto príspevku stručne
popísaných v nasledujúcich kapitolách.
2
Zovšeobecnený jednostranne fuzzy konceptový zväz (GOSCL)
Aplikačne zaujímavé modely v rámci FCA predstavujú modely využívajúce
jednostrannú fuzzifikáciu, kde jedna strana zostáva binárna (crisp) a druhá je popísaná
fuzzy množinou (napr. objekty sa interpretujú klasicky, avšak atribúty sú
fuzzifikované). V rámci článku [1] sme predstavili zovšeobecnený model takejto
fuzzifikácie umožňujúcej spracovať heterogénne vstupné kontexty (tabuľky dát
obsahujúce rôzne typy atribútov). Pre potreby tohto referujúceho príspevku si tento
model tzv. zovšeobecneného jednostranne fuzzy konceptového zväzu (angl.
Generalized One-Sided Concept Lattice – skr. GOSCL) stručne predstavíme.
Referovaný článok obsahuje odkazy na predchádzajúce práce, ako aj podrobnejší
matematický popis, dôkazy a príklady.
Usporiadaná štvorica c = (B,A,L,R) sa nazýva zovšeobecnený jednostranný
formálny kontext ak sú splnené nasledujúce podmienky:
1. B je neprázdna množina objektov a A je neprázdna množina atribútov.
2. L: A  CL je zobrazenie z množiny atribútov do triedy všetkých kompletných
zväzov CL. Potom, pre každý atribút a, L(a) predstavuje štruktúru pravdivostných
hodnôt atribútu a.
3. R je zovšeobecnená incidenčná relácia, t.j., R(b,a)L(a) pre všetky bB a aA.
Preto, R(b,a) reprezentuje stupeň z L(a) ktorý má objekt bB v atribúte a.
Relácia R reprezentuje tabuľku dát pre analýzu. Hlavný rozdiel oproti
predchádzajúcim prístupom je v možnosti vytvárať konceptový zväz z tabuliek
obsahujúcich atribúty rôzneho typu, t.j. s rôznymi štruktúrami pravdivostných hodnôt.
Ak (B,A,L,R) je zovšeobecnený jednostranný formálny kontext, potom môžeme
definovať dvojicu zobrazení : 2B  aA L(a) and : aA L(a)  2B takto:
  X a   inf ( R(b, a)) ,
bX
 g    b  B : a  A, g (a)  R(b, a).
Pár zobrazení (,) tvorí Galoisovu konexiu medzi 2B and aA L(a). Potom
máme C(B,A,L,R) ako množinu všetkých dvojíc (X,g), kde X  B, gaA L(a),
spĺňajúcich (X) = g a (g) = X. Množina X je potom označená extent a g intent
konceptu (X,g). Ak dodefinujeme čiastočné usporiadanie na C(B,A,L,R) ako (X1,g1) ≤
(X2,g2) iff X1X2 iff g1 ≥ g2, potom C(B,A,L,R) spolu s týmto usporiadaním tvorí
kompletný zväz, ktorý nazývame zovšeobecnený jednostranne fuzzy konceptový zväz.
Následne môžeme definovať inkrementálny algoritmus pre vytvorenie GOSCL,
t.j. vstupom je kontext definovaný (B,A,L,R). Pre bB je R(b) element zo súčinu
zväzov aA L(a) taký že R(b)(a) = R(b,a), t.j., R(b) je b-tý riadok tabuľky dát R.
Nech 1L definuje najväčší element z L = aA L(a), t.j., 1L(a)=1 L(a) pre všetky aA.
Potom pseudokód algoritmu pre tvorbu GOSCL je uvedený nižšie. Praktické príklady
29
na rôznych dátach je možné nájsť v referovanom článku, prípadne v príbuzných
článkoch (napr. [2,3], prípadne iné naše práce dosiahnuteľné v databázach vedeckých
článkov).
Algoritmus (Generalized One-Sided Concept Lattice)
Input: (B,A,L,R) – zovšeobecnený jednostranný formálny kontext
begin
create lattice L := aA L(a)
C := {1L},C  L
(množina všetkých intentov)
while(B ≠ )
{
choose b  B
C* := C
for each c  C*
C := C  {c  R(b)}
B := B \ {b}
}
C(B,A,L,R) := 
for each c  C
C(B,A,L,R) := C(B,A,L,R)  {((c),c)}
end
Output: C(B,A,L,R) – množina všetkých konceptov
3
Ekvivalencia GOSCL a konceptuálneho škálovania
V ďalšom článku [3] sme sa podrobnejšie zaoberali modelovaním atribútov a riešili
detailne ekvivalenciu medzi použitím GOSCL a využitím metódy konceptuálneho
škálovania pre spracovania zložitejších atribútov crisp prístupom. Konceptuálne
škálovanie reprezentuje iný prístup k vytváraniu konceptových zväzov z fuzzy
modelov. Jedná sa o transformáciu daného objektovo-atribútového modelu na binárny
prípad. Je pridané množstvo nových atribútov a nový model je omnoho väčší.
Následne je použitá klasická FCA.
V uvedenom článku je dokázané, že prístupy konceptuálneho škálovania a
zovšeobecneného jednostranne fuzzy konceptového zväzu vytvárajú na rovnakom
viachodnotovom formálnom kontexte rovnaké uzáverové systémy na množine
objektov. Preto sú aj im odpovedajúce konceptové zväzy izomorfné. Znamená to, že
každý zovšeobecnený jednostranný kontext môže byt jednoducho transformovaný do
binárneho kontextu práve metódou škálovania. Následne, použitím štandardných
metód môže byt príslušný binárny (crisp) kontext skúmaný, pričom výsledky sú
aplikovateľné aj pre prípad GOSCL.
Ako aplikácia dokázanej ekvivalencie je v článku prezentovaná metóda redukcie
atribútov zovšeobecneného jednostranného kontextu na jednoduchšie, samozrejme pri
zachovaní izomorfizmu konceptových zväzov (pred a po redukcii).
30
4
Záver
Tento príspevok stručne referuje o dvoch výsledok súvisiacich s oblasťou formálnej
konceptovej analýzy. Prvým výsledok je návrh modelu a algoritmu tvorby tzv.
zovšeobecneného jednostranne fuzzy konceptového zväzu, ktorý umožňuje
spracovávať tabuľky dát z rôznymi typmi atribútov. Druhý výsledok sa zaoberá
ekvivalenciou medzi spomínaným modelom a metódou spracovania zložitejších
atribútov používanou v klasickom prípade konceptovej analýzy, ktorá sa nazýva
konceptuálne škálovanie.
Poďakovanie. Tento príspevok vznikol najmä za podpory agentúry VEGA v rámci
projektu č. 1/1147/12 a za podpory agentúry APVV v rámci projektu č. APVV-020810. Poďakovanie patrí aj spoluautorom článkov, ktoré tento príspevok sumarizuje,
ako aj ďalším projektom spomínaným v daných prácach.
English Summary
This work summarizes published journal papers related to the model and properties of
generalized one-sided concept lattice, which represents method for the analysis of
object-attribute models using Formal Concept Analysis approach. Concept lattice is
hierarchical structure organizing the objects into groups based on their similarity
according to their shared attributes. Methods based on concept lattices were used as
conceptual data analysis technique applicable in different areas like text-mining,
information retrieval, decision support systems, knowledge management, etc. In this
paper we shortly define some mentioned generalized concept lattice model, which is
able to process heterogeneous input data tables, and also we provide information on
work related to equivalence of our new approach and classical method for
heterogeneous inputs based on the conceptual scaling approach.
Referencie
1. Butka, P., Pócs, J.: Generalization of one-sided concept lattices. Computing and
Informatics, (2013), vol. 32, no. 2, pp. 355–370.
2. Butka, P., Pócs, J., Pócsová, J.: Use of concept lattices for data tables with
different types of attributes. Journal of Information and Organizational Sciences,
(2012), vol. 36, no. 2, pp. 1–12.
3. Butka, P., Pócs, J., Pócsová, J.: On equivalence of conceptual scaling and
generalized one-sided concept lattices. Information Sciences, (2014), vol. 259, 20
February 2014, pp. 57-70.
4. Ganter, B., Wille, R.: Formal Concept Analysis. Springer, Berlin, (1999).
5. Pócs, J.: Note on Generating Fuzzy Concept Lattices via Galois Connections.
Information Sciences, (2012), vol. 185, no. 1, pp. 128–136.
31
Educational data mining for analysis
of students’ solutions
Karel Vaculı́k, Leona Nezvalová, and Luboš Popelı́nský
KD Lab, FI MU Brno
[email protected], [email protected], [email protected]
Abstract. We introduce novel methods for analysis of logic proofs constructed by undergraduate students. The methods employ sequence mining for manipulation with temporal information about all actions that
a student performed, and also graph mining for finding frequent subgraphs on different levels of generalization. We showed in [8–11] that
these representations allow us to find interesting subgroups of similar
solutions and also to detect outlying solutions. Specifically, distribution
of errors is not independent on behavioral patterns and we were able to
find clusters of erroneous solutions. We also observed a significant dependence between time duration of solving the task and an appearance
of the most serious error. This text brings a brief summary of four contributions [8–11] presented for presentation in the period from October
2013 until September 2014. In the second part, based on [11] we focus on
a newly developed outlier detection method that helps to find unusual
solutions, both correct and erroneous.
Keywords: educational data mining, logic proofs, clustering, outlier detection, sequence mining
1
Data mining in teaching logic
Teaching constructive tasks, i.e. tasks that a student has to build in several steps
– like tasks in descriptive geometry or logic and math proofs, requires advanced
evaluation techniques. For example, in the case of resolution proofs in logic, it is
not sufficient to assign the mark based only on the conclusion that the student
reached. To evaluate a student solution properly, a teacher needs not only to
check the final result of a solution (the set of clauses is or is not contradictory)
but also to analyze the sequence of steps that a student performed, with respect
to correctness of each step and with respect to correctness of that sequence.
We show that novel machine learning methods, such as graph mining and sequence mining, can be very helpful in that situation because of their capability to
process structural and temporal information. Specifically, graph mining methods
work with data represented as graphs, in our case one graph for each instance,
and take into account the structural information of the graphs. An overview of
graph mining methods can be found in [1]. Sequence mining is another topic of
data mining oriented to structured data. In comparison to graph mining, data
32
are arranged in sequences, usually ordered by time, and they are assumed to be
discrete. More information on sequence mining can be found in [3].
In the first two works [8, 9] we presented a method for analysis of students’
solutions of resolution proofs that employed graph mining. It used frequent subgraph mining algorithm Sleuth [12] for finding frequently occurring subgraphs.
These subgraphs were then generalized and used as new features for classification to correct and incorrect solutions. In [10] we extended this generalization
procedure and left out the frequent subgraph mining algorithm. In [11] we propose a novel method that is much more robust and is actually independent on
a particular student task. In addition, it processes also information about the
sequence of steps that a student performed, like adding/deleting a node or edge
in the proof and also about text (i.e. a formula) modification. It also exploits
information about the time a particular operation was performed and uses temporal information for finding outlying solutions. We use three different feature
extraction methods and show that by using those new temporal and structural
features we are able to find clusters of erroneous solutions. We also show that
there is a significant dependence between time duration and appearance of errors
in a student solution.
Moreover, by means of class outlier detection we are able to find solutions
that are anomalous and for that reason difficult to detect automatically. In the
following text we summarize that result.
2
Outlier detection in resolution graphs
Data. The data, 873 solutions altogether, was obtained in the course on Introduction to logic. Via a web-based tool, each of the 351 students solved at least
three tasks randomly chosen from 19 exercises. We selected only those solutions
that employed linear or linear input resolution. The data set contained the resolution tree and also dynamics of the solutions, i.e. all the actions performed
together with temporal information. Among these 873 different students’ solutions of resolution proofs in propositional calculus, 101 of them were classified
as incorrect and 772 as correct.
The most serious error in resolution is resolving on two literals. In this text
we denote this error as E3. Other common errors in resolution proofs are the
following: repetition of the same literal in the clause, incorrect resolution – the
literal is missing in the resolved clause, resolving on the same literals (not on
one positive and one negative), resolving within one clause, resolved literal is
not removed, the clause is incorrectly copied, switching the order of literals in
the clause, proof is not finished, intentional negation of literals in a clause. Information about the error that appeared in the logic proof is also part of the
data. All actions that a student performed, such as adding/deleting a node,
drawing/removing an edge, writing/deleting a text into a node, were saved into
a database. The collected data contains also a timestamp for each action performed by a student. The timestamps also allow us to get the order of actions
and use techniques for sequence mining as discussed in the following sections.
33
Generalized Subgraphs. As in the case of sequences, graph features may
be constructed from graph substructures found by an algorithm for frequent
subgraph mining [1]. The task of frequent subgraph mining result in the the frequently occurring subgraphs in a set of graphs. Next, Boolean features (a feature
correspond to a appearance of a subgraph) are used and the value of a feature
depends on whether the corresponding substructure occurs in the given instance
or not. Because the node labels of incorrect solutions have very small support
and frequent subgraph mining can be inefficient for small values of minimum
support, we created a new method for finding interesting patterns. The other
reason was that similar subgraphs differed only in alphabet letters and in the
order of literals in text labels or in the order of parent nodes. The main idea
used here is to generalize and unify subgraphs consisting of two parent nodes
and a resolvent. Such generalized subgraphs may be expressed shortly in the
following form: parent1; parent2 − − > resolvent. An example of generalized
subgraph is {¬Y, Z}; {¬Y, ¬Z} − − > {¬Y }, where Y, Z are variables that can
match any propositional letter. We also created a new, higher-level, generalization [10], which further generalizes the patterns found earlier. As a result,
new patterns in added; dropped form are created. The added component simply
denotes literals which were added erroneously to the resolvent and the dropped
component denotes literals from parents which participated in the resolution process. Continuing with the example, the higher-level pattern will be {}; {¬Z, Z}.
The detailed description can be found in [10].
Method. The data we process has been labeled. We focused only on the E3
error as it was the most common and the most serious error. Specifically, there
were two values of the class attribute, corresponding to the occurrence or concurrence of the error. Unlike in common outlier detection, where we look for
outliers that differ from the rest of “normal” data, we need to exploit information about a class. That is why we used weka-peka [7] that looks for class outliers
[6] using Random Forests (RF) [2]. It extends the outlier detection method in
RF implemented in Weka [4] that actually works for classical settings – normal
vs. anomalous data to manage class information. The main idea lies in different
computation of the proximity matrix that exploits also information about a class
label [7].
Results. When analyzing the strongest outliers that weka-peka found, we found
three groups according to the outlier score. The two most outlying examples,
with outlier factor overcoming 130, significantly differ from the others. The second cluster consists of four examples with the outlier score between 50 and 100,
and the last group is comprised of instances with the lowest score of 15.91.
Analysis of individual outliers let us draw several conclusions. Two most outlying instances contain one specific pattern, looping. This pattern represents the
ellipsis in a resolution tree, which is used for tree termination if the tree cannot
lead to a refutation. Both instances contain this pattern, but neither of them
contains the pattern of correct usage of the resolution rule. The important thing
is that these two instances contain neither the E3 error nor other errors. This
34
shows that it is not sufficient to find all errors and check the termination of
proofs, but we should also check whether the student performed at least few
steps by using the resolution rule. Otherwise we are not able to evaluate the
student’s skills. Instances with the outlier score less than 100 are less different
from other instances.
Discussion. The other method that we used for comparison was CODB [5].
However, when compared with weka-peka, CODB returned much worse results
mainly because of using density and distances (to nearest neighbors and to all
members of the class) for outlier detection. Such poor results may be caused
also by the fact that those metrics are too rough for our task. Moreover, it is
much more difficult to obtain a comprehensive explanation of why a particular
solution of CODB is an outlier.
It need to be mentioned that this method has not been developed for recognition of correct or incorrect solutions. However, to verify that the feature construction is appropriate, we also learned various classifiers of that kind. Best
result was achieved by SMO (SVM implementation in Weka) – 96.9% accuracy.
Similar results were obtained when only the higher level of subgraph generalization was used, again with SMO.
References
1. Cook, D. J., Holder, L. B.: Mining graph data. Hoboken, N.J.: Wiley-Interscience
(2007)
2. Breiman, L.: Random Forests. In: Machine Learning, vol. 45, no. 1. pp. 5–32 (2001)
3. Dong, G., Pei, J.: Sequence data mining. Springer, New York (2007)
4. Hall, M., Frank, E., Holmes, G., Pfahringer, B., Reutemann, P., Witten, I.H.: The
WEKA Data Mining Software: An Update. In: SIGKDD Explor. Newsl., vol. 11,
no. 1. pp. 10–18 (2009)
5. Hewahi, N., Saad, M.: Class outliers mining: Distance-based approach. In: International Journal of Intelligent Technology, vol. 2, no. 1. pp. 55–68 (2007)
6. Papadimitriou, S., Faloutsos, C.: Cross-outlier detection. In: Proceedings of SSTD.
pp. 199–213 (2003)
7. Pekarčı́ková, Z.: Supervised outlier detection. Master’s thesis (in Czech). Masaryk
University (2013)
8. Vaculik, K., Popelinsky, L., Mrakova, E., Jurco, J.: Tutoring and Automatic Evaluation of Logic Proofs. In: Proceedings of the 12th European Conference on eLearning ECEL (2013)
9. Vaculı́k, K., Popelı́nský, L.: Graph Mining for Automatic Classification of Logical
Proofs. In: CSEDU (2014)
10. Vaculı́k, K., Popelı́nský, L., Nezvalová, L.: Graph mining and outlier detection
meet logic proof tutoring. Proceedings of G-EDM Ws, EDM London 2014.
11. Vaculı́k, K., Popelı́nský, L., Nezvalová, L.: Educational data mining for analysis of
students’ solutions. Proceedings of AIMSA, LNCS vol. 8722, Springer Verlag 2014.
12. Zaki, M.J.: Sequences Mining in Categorical Domains: Incorporating Constraints.
In: 9th ACM CIKM pp. 422–429 (2000)
35
Přı́padová studie z praxe
Case Study
36
37
Utilizing educational data in collaboration with
industry
Pavel Kordı́k, Stanislav Kuznětsov
Faculty of Information Technology, Czech Technical University in Prague, Czech
Republic
[email protected], [email protected]
Abstract. Universities are seldom using their data efficiently. In this
case study, we show how educational data can be used to recommend
suitable students for project, get feedback from industrial partners, help
students to focus on skills that are demanded by companies. We have
developed portal for students collaboration with industrial partners and
run it in a pilot for almost a year. Based on our observations described in
this contribution, we are adjusting the portal to enhance the functionality
and streamline processes supported by the portal.
Keywords: Educational data mining, Data transformation, ETL, data warehouse
1
Introduction
Education data, especially evaluation of students are often only stored and not
utilized due to confidentiality and security reasons. In this paper we show that
these data can bring significant added value in many applications. One of the
most important application is matchmaking students and industrial partners.
Our portal utilize data warehouse and shows industrial partners aggregated data
as well as evaluation of students that agreeing to apply for their assignments.
We designed data warehouse and transform evaluation of students in single
courses to skills that are more comprehensible to industrial partners. Such skills
can then be used to recommend students that are needed.
2
Related work
There not many applications of data mining in university-industry relation (see
[3] or [1]) .
VIVO [2] is an open source semantic web platform originally developed and
implemented in the Cornell University, after that in 2009 supported by another
five universities in USA; it was extended as a tool able to integrate profiles in
many different institutions. This platform allows the discovery of the researchers
and the universities technical knowledge in many fields, using the professionals
38
profiles linked and related information. It uses ontologies and helps to find corresponding researchers using keywords extracted from research articles.
When if comes to students, we do not have many information that can be
used to recommend relevant ones. Evaluation from courses are very diverse and
we need some ontology to transform data into uniform shape.
ACM [6] developed hierarchical tree of skills in the area of Computing that
corresponds well to the focus of our faculty. The part of the tree can be observed
in Figure 1.
Fig. 1. Map designed by ACM to unify computing curricula.
However such ontology is too complex and not comprehensible to industrial
partners of universities.
3
Our approach
Inspired by ACM ontology, we simplified the tree to be more comprehensible for
industry partners and better fit to the profile of our faculty. We also did some
field research to find out which skills industry partners seeks for and incorporated
them to the map (Figure 2).
39
Fig. 2. Redesigned map for the purpose of interaction with industry partners.
3.1
Mapping courses
When the hierarchy of skills was ready, we started to map courses to individual
skills. Figure 3 shows how skills are computed from evaluation in individual
courses.
Student with better results from a course will get more points to skills that
are influenced by the course.
3.2
Getting data
Educational data is very valuable and feed the recommender engine of our system. Utilizing data we build profiles of our students and match them with positions requested by industrial partners. Our faculty uses several information
systems to store numerical evaluations of students. E.g. some programming assignments are evaluated using Progtest machine. Such data are hard to interpret
by external partners. Therefore we need to consolidate all data in one place in a
comprehensible form. For this purpose we designed and build simple data warehouse. At Figure 4, you can see the version 1.0 schema. We inspired by this
publication [4] . This version was a pilot and operates since July 2013. To extract data form source systems and feed it into data warehouse, we use several
Extract Load Transform (ETL). The transformations are very clear and simple,
because all we need is to get the data, mapped it to our data structure and make
some calculation to compute students profiles (skills).
Then we implemented another set of ETL operations to compute skills according to ontologies above. These data can be used for various purposes.
40
Fig. 3. Evaluation in courses is used to compute skills. Students obtaining better grades
receive more points to skills connected with particular course.
Fig. 4. ETL operations fetch data from educational systems and transforms it to data
cubes that can be accessed by target applications.
41
4
Portal for Cooperation with Industry
Portal is an information system designed, implemented and managed by Faculty of Information Technologies. It provides a communication channel between
students and companies to allow them to work together in new projects. This is
done by companies exposing their industry needs and specifying the requirements
for their goals to be accomplished. With this information the system connects
these needs with students who have these specific abilities (skills), allowing a
company to select the best candidates to develop the project. By the other side,
with these projects students earn experience in real life situations, improve their
capabilities by putting their knowledge to the test and they may get paid for
the services they give. Companies who want to join the benefits should enter
into a contract with the faculty and allocates funds for scholarships in the form
of a donation to support talented students. Students who want to participate in
the program must sign an agreement with the faculty including non-disclosure
agreement. The model was designed to allow students and companies to work
together. First it takes the information provided by the companies related to
their industry needs and requirements; and then, based on student’s academic
information, skills and preferences, connects the companies needs with students
who have these specific abilities, knowledge and skills, allowing students to apply
and a company to select the best candidates to develop their projects. Some of
the problems in this area are described in [5].
Skills are utilized for project recommendation but it is also possible to aggregate them and show summary statistics such as which skills posses average
student of our faculty (see Figure 5).
Fig. 5. Average student of FIT CVUT.
Or how skills of students are distributed (Figure 6). Individual skills can be
42
Fig. 6. Industrial partner can observe distribution of students skills and target better.
43
Fig. 7. Skill Databaze is computed from several subjects. The histogram of values
is also available both for objective (computed) skills and for subjective (inserted by
student).
44
inspected in the Portal (Figure 7).
5
Data warehouse reports
Fig. 8. Reports can be easily constructed utilizing data warehouse.
There are many more applications where educational data can be utilized
once the data warehouse is deployed. For example easy to design and configure
reports can signal potential problems before they grow too big [8].
6
Experiences and future improvements
Our Portal runs several months already in the pilot stage. Without advertisement there are already almost fifty companies registered and several assignments
completed. We did not expect that bigger problem is motivate students to work
on assignments than companies to produce them. We are involving more academics to improve the ontology of skills. We also found out that the architecture
of the data warehouse needs to be more robust to changes so we designed and
45
Fig. 9. New design of data warehouse for educational data, that is more robust to
changes and easier to extend.
started to implement new version (Figure 9) inspired by [7]. There are several
tools that allows rapid prototyping of reports from data warehouse. We work on
these reports to present data in a way leading to more informed decisions. There
are many more applications where educational data can be utilized once the
data warehouse is deployed. We are building a Business Intelligence (BI) infrastructure to be able to report actual development of key performance indicators.
Using the data integrated in the warhouse, we can also predict the future behavior, like how many percent of student will pass to the next semester and etc.
BI will help us to uncover the behaviour our system in immediate future. Figure
8 demonstrate some of the basic operational dashboards used in our system.
7
Conclusions
Education data can be integrated into data warehouse and subsequently used
for several useful purposes - analytic reports are just one of them. In this paper
we show how skills can be computed from evaluations and used to recommend
relevant students for industrial projects. Understanding and utilizing our data
is helping us to increase efficiency and innovate in the right place.
8
Acknowledgments
The development of portal and related technologies was funded by CRP 2012
grant (MSMT) and by the Faculty of information technology, Czech Technical University in Prague. Thanks to Adriana Ramı́rez for joining our team and
documenting portal for student collaboration with industry, Eliška Hrubá for
elaborating dashboards generated from data warehouse and Aleš Fišer for designing and implementing reports used in the Portal.
46
References
1. R. Baker. Data mining. In P. Peterson, E. Baker, and B. McGaw, editors, International Encyclopedia of Education (Third Edition), pages 112 – 118. Elsevier, Oxford,
third edition edition, 2010.
2. K. Börner, M. Conlon, J. Corson-Rikert, and Y. Ding. VIVO: A Semantic Approach
to Scholarly Networking and Discovery. Synthesis Lectures on the Semantic Web:
Theory and Technology, 2(1):1–178, Oct. 2012.
3. G. E. etal. Making industry-university partnerships work, lessons from successful
collaborations. 2012 Science—Business Innovati on Board AISBL, 1:1–50, 2012.
4. R. Kimball and M. Ross. The Data Warehouse Toolkit: The Definitive Guide to
Dimensional Modeling. Wiley, 2013.
5. J. Mnch, F. Fagerholm, P. Johnson, J. Pirttilahti, J. Torkkel, and J. Jarvinen. Creating minimum viable products in industry-academia collaborations. Lean Enterprise
Software and Systems, 167:137–151, 2013.
6. T. J. T. F. on Computing Curricula Association for Computing Machinery IEEEComputer Society. Computer science curricula 2013. Technical report, ACM IEEE
Computer Society, 2013.
7. P. Ponniah. Data Warehousing Fundamentals for IT Professionals. Wiley, 2011.
8. O. Yigitbasioglu and O. Velcu. A review of dashboards in performance management: Implications for design and research. International Journal of Accounting
Information Systems, 13(1):41 – 59, 2012.
47
Prezentace vědeckých projektů
Research Projects Presentations
48
49
PerConIK: Aplikovanie znalostných technológií
v doméne tvorby softvéru
Mária Bieliková, Pavol Návrat, Michal Barla, Ivan Polášek,
Daniela Chudá, Peter Lacko
Ústav informatiky a softvérového inžinierstva, Fakulta informatiky a informačných technológií,
Slovenská technická univerzita v Bratislave, Ilkovičova 2, 842 16 Bratislava, Slovakia
{name.surname}@stuba.sk
Abstrakt. Projekt PerConIK sa zaoberá výskumom v oblasti nových spôsobov
získavania a spracovania informácií a znalostí v prostredí softvérovej firmy.
Tieto vychádzajú z chápania informačného priestoru softvérového projektu ako
pavučiny prepojených komponentov, pričom prepojenia nachádzame nielen
v obsahu, ale aj v aktivitách vývojárov. V príspevku predstavujeme vybrané výsledky projektu dosiahnuté riešiteľmi projektu v spoločnosti Gratex International a na Fakulte informatiky a informačných technológií STU v Bratislave.
1
Zameranie a ciele projektu
Projekt PerConIK1 (Personalized Conveying of Information and Knowledge) sa zameriava na výskum procesov tvorby softvéru na nízkej úrovni granularity, s dôrazom
na automatizovanú podporu tých činností, v ktorých poskytnutie dodatočných informácií a/alebo znalostí môže pozitívne ovplyvniť výslednú kvalitu týchto procesov.
Základným cieľom projektu je definovať modely v doméne tvorby softvéru so
zohľadnením aktivít, ktoré v tejto doméne prebiehajú a ktoré nepriamo definujú model používateľa (typicky programátora). Nad týmito modelmi navrhujeme metódy,
ktoré zefektívňujú jednotlivé procesy vývoja softvéru – riešia podporu navigácie v
zdrojových kódoch, spolupráce a interakcie (napr. cez prehliadky kódu). Niektoré
metódy poskytujú dodatočné znalosti pre špecifických účastníkov procesu vývoja
softvéru, napr. pre manažéra vývoja, softvérového architekta alebo manažéra kvality.
Primárnym zdrojom dát v projekte je programátor a pracovné prostredie, na ktorom
si prezerá a edituje zdrojové kódy programov. Na obrázku 1 je znázornené spracovanie týchto dát do podoby tzv. informačných značiek [2], ktoré viažu semištruktúrovanú informáciu o dokumente ku konkrétnemu miestu v danom dokumente.
Značkovač predstavuje realizáciu metódy, ktorej vstupom sú záznamy o aktivite používateľa a/alebo zdrojové súbory, resp. softvérové artefakty spolu s históriou ich vývoja, ktorá na výstupe označí používateľa a/alebo niektoré softvérové artefakty príslušnou značkou.
1
http://perconik.fiit.stuba.sk/
50
Pracovné
prostredie
Zdroj dát
Dáta
Používateľské
značky
Dokumenty
Záznamy
aktivity
Metadáta
Informačné
značky
Model
dokumentu
Model
používateľa
Spracovanie metadát
Značkovač
Obr. 1. Horizontálne vrstvy spracovávania dát z prostredia, spracované z [3]
Samotné informačné značky môžu byť zobrazené dvoma rôznymi spôsobmi:
 priamo pri dotknutom zdrojovom kóde, ktorého sa týkajú (napr. táto trieda je veľmi
nestabilná, jej public metódy sa často menia)
 V špecializovaných nástrojoch, ktoré poskytujú možnosť prehliadať si a navigovať
v informačnom priestore značiek a označených zdrojových kódov [8]
2
Dosiahnuté výsledky a diskusia
2.1
Generovanie a udržiavanie informačných značiek
V rámci projektu sme riešili problematiku automatizovaného generovania informačných značiek na základe preddefinovaných vzorov aktivít a ich kotvenie na dotknuté
zdrojové súbory, resp. ich fragmenty [10]. Pri značkovaní jednotlivých fragmentov
sme museli riešiť aj problematiku udržiavania aktuálnosti kotvenia pri jednotlivých
značkách, ako aj problematiku platnosti samotnej značky, keďže zdrojový kód pod
značkami sa neustále vyvíja a mení [11]. Keďže značky môžu byť vo svojej štruktúre
veľmi heterogénne, museli sme riešiť aj spôsob ich uloženia, ´ktorý by bol škálovateľný, poskytoval dostatočnú flexibilitu pre definovanie nových typov značiek
a zároveň umožňoval aspoň základné možnosti odvodzovania nad značkami [2].
2.2
Analýza zdrojových kódov.
V projekte sme sa sústredili aj na analýzu zdrojového kódu ex post. Základným zdrojom dát je kód spolu s históriu jeho vývoja uložený v systéme na riadenie revízií (Revision Control System). Kód ďalej prevádzame do formy abstraktných syntaktických
stromov v jeho jednotlivých revíziách a získavame nový formát AST.RCS [8]. Tento
51
formát je vhodný nielen pre uchovanie a neskoršie zobrazenie samotnej štruktúry
kódu (Obr. 2), jeho používateľov a autorov, ale využili sme ho aj pri našich metódach,
ktoré detegujú jednotlivé témy obsahu kódu [7] či vzory a pachy [6].
Obr. 2. Príklad vizualizácie zdrojového kódu, antivzorov a vývojárov
Využitie abstraktných syntaktických stromov a ich rozvinutie v čase nám umožňuje
efektívne vyhľadávanie duplicít v zdrojových kódoch projektu [9],či automatizovane
vyhodnocovať evolúciu zdrojových kódov [1, str. 486]. V spojení so záznamami
o aktivite programátorov dokážeme identifikovať skryté, implicitné prepojenia medzi
softvérovými artefaktmi [1, str. 474], ktoré môžu pomôcť rýchlejšiemu zorientovaniu
sa v zdrojových kódoch, či poslúžiť pri prevencii chýb.
2.3
Odhaľovanie charakteristík programátora
V rámci projektu sa venujeme aj metódam, ktorých cieľom je identifikácia charakteristík programátora [4,5], ako je napríklad úroveň jeho expertízy pre vybrané softvérové technológie alebo úroveň jeho vedomostí o projekte alebo jeho časti. Tieto znalosti môžu pomôcť manažérovi projektu napríklad pri rozhodovaní sa o tom, komu
priradí konkrétnu úlohu. Iným druhom znalostí, ktoré extrahujeme z aktivít programátora je jeho aktuálny kontext [1 str. 492, 1, str. 468], ktorý môžeme využiť napr. pre
efektívne prispôsobovanie procesu vyhľadávania vo webových, či iných zdrojoch
aktuálnym potrebám programátora.
Viaceré z navrhnutých metód boli rozpracované a overené v rámci prototypu, ktorý
je aktuálne nasadený na reálnych softvérových projektoch v spoločnosti Gratex International ako aj na menších študentských a výskumných projektoch, ktoré sa realizujú
na Fakulte informatiky a informačných technológií (napr. projekty v rámci predmetu
52
Tímový projekt). Nasadenie prototypu na reálne softvérové projekty si na jednej strane vyžaduje odladenú implementáciu, ktorá nijakým spôsobom neobmedzuje vývojárov v ich práci, na druhej strane poskytuje výborný základ pre ďalší výskum, keďže
v porovnaní s offline experimentami máme priamy kontakt s vývojármi a ich manažmentom a môžeme ich priamo konfrontovať s čiastkovými výsledkami.
Poďakovanie. Táto publikácia vznikla vďaka podpore v rámci OP Výskum a vývoj
pre projekt ITMS: 26240220039, spolufinancovaný zo zdrojov ERDF.
Literatúra
1. Bieliková, M (Ed.): Student Research Conference 2014, Proc. in Informatics and Information Technologies, STU, 2014, p. 670.
2. Bieliková, M., Rástočný, K.: Lightweight Semantics over Web Information Systems Content Employing Knowledge Tags. In Advances in Conceptual Modeling : ER, LNCS 7518,
Springer, 2012, pp. 327-336.
3. Bieliková, M. et al.: Platform independent software development monitoring: design of an
architecture.In: SOFSEM 2014 : theory and practice of computer science, LNCS 8327,
Springer, 2014, pp. 126-137.
4. Holub, M., Kuric, E., Bieliková, M.: Modelovanie znalostí programátora s využitím ľahkej
sémantiky. In: ZNALOSTI 2012 ,Matfyzpress, 2012, pp. 21-30
5. Kuric. E, Bieliková, M.: Estimation of Student’s Programming Expertise. In Int. Symp. on
Empirical Software Engineering and Measurement, ESEM 2014, ACM, 2014, accepted.
6. Polášek, I., Snopko, S., Kapustík, I.: Automatic Identification of the Anti-patterns Using
the Rule-based Approach. In: SISY 2012, Int. Symp. on Intelligent Systems and Informatics, IEEE, 2012. pp. 283-286
7. Polášek, I., Uhlár, M.: Extracting, Identifying and Visualisation of the Content, Users and
Authors in Software Projects. In: Trans. on Comp. Sci. XXI: Special Issue on Innovations
in Nature-Inspired Computing and Applications, LNCS 8160, Springer, 2013, pp. 269-295
8. Polášek, I. et al.: Information and Knowledge Retrieval within Software Projects and their
Graphical Representation for Collaborative Programming. In: Acta Polytechnica Hungarica. Vol. 10, No. 2, 2013, pp. 173 – 192
9. Súkeník, P., Lacko, P.: Vyhľadávanie zduplikovaného kódu, In Workshop on Int. and
Knowl. Oriented Technologies, WIKT 2012, Vydavateľstvo STU, 2012, pp. 189-192
10. Rástočný, K., Bieliková, M.: Enriching Source Code by Empirical Metadata. In Int. Symp.
on Empirical Softw. Engineering and Measurement, ESEM 2014. ACM, 2014, accepted.
11. Rástočný, K., Bieliková, M.: Metadata anchoring for source code: Robust location descriptor definition, building and interpreting. In Databases and Expert Systems Applications,
DEXA 2013, LNCS 8056, Springer, 2013, pp. 372-379.
English summary
PerConIK: Application of knowledge-oriented tech. in software engineering domain
Project PerConIK focuses on research on acquisition and processing of information
and knowledge within a domain of a software house. The research is based on a weblike model of interconnected software artifacts with an additional layer of developers’
interaction. This paper presents some of the results achieved in the project.
53
UX lab & UX class: Sledovanie pohľadu za účelom
podpory používateľského zážitku a vzdelávania
Mária Bieliková, Pavol Návrat, Jozef Tvarožek, Michal Barla, Jakub Šimko
Ústav informatiky a softvérového inžinierstva
Fakulta informatiky a informačných technológií
Slovenská technická univerzita v Bratislave
Ilkovičova 2, 842 16 Bratislava, Slovensko
[email protected]
Abstrakt. V príspevku prezentujeme začínajúci projekt skúmania používateľského
zážitku (User eXperience, UX). Vznikajúce výskumné laboratórium (UX lab) je
určené pre podrobné sledovanie človeka pri interakcii s počítačom (najmä práci so
softvérovými aplikáciami) využitím senzorov očí a ďalších senzorov a metód analýzy
obrazu. UX class sa sústreďuje na zefektívnenie výučby pokročilým získavaním
implicitnej spätnej väzby v personalizovaných webových systémoch pre podporu
vzdelávania. Hlavným cieľom tohto projektu je podpora používateľského zážitku so
zameraním na webové aplikácie v rôznych doménach: vyhľadávaní informácií, online
výučbe, a pod. Prezentujeme infraštruktúru projektu a prvé výsledky realizovaných
štúdií a experimentov.
1
Úvod
Dôležitým aspektom pri návrhu rozhraní aplikácií, softvérových a informačných systémov je ich použiteľnosť a celkový zážitok, ktorý si používateľ vytvára pri práci
s nimi. Existujú viaceré spôsoby, ako tieto vlastnosti softvéru skúmať; dôležitú úlohu
pri tom zohrávajú zariadenia na sledovanie pohľadu [6], ktoré umožňujú sledovať ako
používatelia pracujú s aplikáciami bez vyrušovania alebo ovplyvňovania otázkami.
V rámci projektu Univerzitného vedeckého parku STU budujeme laboratórium používateľského zážitku (UX Lab, pozri Obr. 1), ktoré nám umožňuje podrobne skúmať
používateľov pri práci so softvérovými aplikáciami. Zameriavame sa predovšetkým
na sledovanie práce s dynamickými webovými aplikáciami, ktoré sú dlhoročným
predmetom skúmania v rámci výskumu na našom pracovisku, ale laboratórium umožňuje skúmať aj tradičné desktopové aplikácie, ako aj aplikácie v tabletoch a telefónoch. V súčasnosti disponujeme dvomi zariadeniami na sledovanie pohľadu – Tobii
X2-301 a Eye Tribe2 – pracujúcimi so vzorkovacími frekvenciami 30Hz a 60Hz, ktoré
sú vhodné pre sledovanie pohľadu na úrovni slov. V nasledujúcej fáze projektu budeme disponovať zariadeniami s frekvenciami 120Hz a 300Hz, určenými pre podrob1
2
http://www.tobii.com/en/eye-tracking-research/global/
https://theeyetribe.com/
54
né sledovanie pohľadu na úrovni čítania jednotlivých písmen. Súčasťou laboratória
budú aj doplnkové zariadenia: pre analýzu fyziologických činností (EEG, EMG, GSR,
a ďalšie) určené pre meranie pozornosti, emócií, atď., ako aj zariadenia pre vizuálnu
analýzu výrazu tváre testovaných subjektov.
Zariadenia pre sledovanie pohľadu sa používajú vo výskume v rozličných doménach [3], [4]. Relatívne vysoká obstarávacia cena však umožňovala len ich obmedzené použitie. Súčasný trend lacnejších3 a alternatívnych riešení naznačuje, že
v priebehu nasledujúcich rokov sa stanú už bežnou súčasťou zariadení koncových
používateľov podobne ako sú dnes bežne rozšírené (webové) kamery. Údaje zo sledovania pohľadu sa tak v blízkej dobe stanú ďalšou z foriem implicitnej spätnej väzby, ktorá umožní presnejšie modelovať záujmy používateľov, čím sa podporí ďalší
rozvoj v oblasti personalizácie aplikácií, na ktorú je tento projekt zameraný.
Druhou významnou časťou projektu je zameranie sa na oblasť personalizácie (elektronického) vzdelávania. Súčasťou projektu je počítačová trieda (UX Class, pozri Obr.
1) umožňujúca vyššie opísané výskumné činnosti vykonávať súčasne pre každého
študenta v celej študijnej skupine. V triede sú všetky pracovné stanice pre študentov
vybavené zariadeniami na sledovanie pohľadu a ďalšími senzormi, čo umožňuje
vzdelávaciemu systému podrobne sledovať, vyhodnocovať a prispôsobovať aktivitu
študentov podľa ich spôsobu práce počas bežnej výučby (na cvičeniach). Okrem vzorov zo sledovania pohľadu zohľadníme vstupy aj z ďalších zariadení (klávesnica,
myš), či typ práce (individuálna vs. skupinová), ako aj aktuálnemu psychickému stavu
študentov (ich emóciám, miere sústredenia, atď.). Moderné systémy pre elektronické
vzdelávanie v súčasnosti zvyčajne pracujú ako dynamické webové aplikácie.
Obr. 1. Infraštruktúra na sledovanie pohľadu. Počítačová trieda (UX Class) a výskumné laboratórium (UX Lab) využívajú softvérovú infraštruktúru (UX Research) pre zber, analýzu, vizualizáciu, manažment a archiváciu dát zo zaznamenávania implicitnej spätnej väzby.
3
http://www.economist.com/news/technology-quarterly/21567195-computer-interfaces-abilitydetermine-location-persons-gaze
55
2
Sledovanie pohľadu v dynamických webových aplikáciách
Sledovanie pohľadu v dynamických webových aplikáciách má viaceré špecifiká. Obsah aplikácie sa dynamicky mení, navyše je často na obrazovke zobrazená len jeho
časť a používateľ v ňom listuje (skroluje), čím sa rýchlo mení poloha prvkov na obrazovke. Okrem toho používateľ môže časti rozhrania skrývať, meniť ich veľkosť; môžu byť tiež prekryté rôznymi dynamickými prvkami (napr. dialógovými oknami).
Existujúce prístupy v nástrojoch pre výskum použiteľnosti webu pracujú so statickým obsahom stránok a záujmové oblastí (t. j. oblastí, pre ktoré chceme vyhodnocovať pohľad používateľa, napr. navigačné menu, výsledky vyhľadávania a pod.) umožňujú definovať len pomocou vopred definovaných statických mnohouholníkov vo
finálnej vizuálnej podobe webovej stránky. Toto riešenie je obmedzené len na jednu
vizuálnu reprezentáciu stránky, a neumožňuje zohľadňovať zaznamenávanie pohľadu
podľa dynamických vlastností a prvkov na stránke (napr. dočasné prekrytie iným
prvkom, skrolovanie obsahu v rozličných nezávislých častiach stránky). Navyše, existujúce softvérové nástroje pre výskum v oblasti sledovania pohľadu a používateľského zážitku sú obmedzené na použitie zariadenia od konkrétneho výrobcu,
a neumožňujú zber a spracovanie údajov z viacerých pracovných staníc súčasne.
Vyvinuli sme preto prototyp infraštruktúry na sledovanie pohľadu [5], ktorej najväčšími prínosmi sú:
─ Robustná definícia záujmových oblastí pomocou jednoznačných identifikátorov –
záujmové oblasti sú pri pridaní identifikované pomocou reťazca XPath4, t. j. cesty
v DOM štruktúre webovej aplikácie. Sú odolné voči zmene obsahu, pozície, ako aj
veľkosti prvku na obrazovke. Navyše umožňujú väčšiu flexibilitu pri zadávaní oblastí, napr. výberom jedného alebo všetkých elementov na danej úrovni v štruktúre,
alebo všetkých elementov s danou triedou a pod. Takto vieme zadefinovať záujmové oblasti aj pre elementy, ktoré sa generujú dynamicky počas behu aplikácie.
─ Zber údajov z viacerých pracovných staníc naraz – infraštruktúra je distribuovaná,
t. j. poskytujeme centrálny výpočtový uzol, ktorý slúži na zber, agregáciu
a vizualizáciu dát a k nemu sa pripájajú jednotlivé (vzdialené) pracovné stanice.
─ Podpora zariadení od rôznych výrobcov – každé zariadenie na sledovanie pohľadu
má spravidla svoje vlastné API (aplikačné rozhranie). Podporu viacerých zariadení
(od rôznych výrobcov) sme zabezpečili vlastnou knižnicou, ktorá tieto jednotlivé
API obaľuje a poskytuje jednotné rozhranie pre prácu s nimi. Navyše dáta získavané zo zariadení na sledovanie pohľadu obohacuje o pozíciu kurzora myši,
o aplikáciu v popredí, zobrazenú webovú stránku a konkrétny element identifikovaný pomocou XPath reťazca, na ktorý sa používateľ pozerá.
Infraštruktúra je určená pre zber a základné spracovanie údajov zo zariadení pre sledovanie pohľadu. Personalizované webové aplikácie počas behu pristupujú k zozbieraným údajom prostredníctvom aplikačného rozhrania, čím (sledované) webové aplikácie získavajú údaje o tom, kam sa daný používateľ pozerá a môžu tak v reálnom
čase reagovať na jeho správanie napr. prispôsobením zobrazeného obsahu.
4
http://www.w3.org/TR/xpath/
56
3
Realizované používateľské štúdie
Vo vznikajúcom laboratóriu používateľského zážitku bolo realizovaných už niekoľko
výskumných experimentov a štúdií, pri ktorých používatelia riešili úlohy podľa pokynov výskumníka (moderátora experimentu), pričom sa zaznamenával pohľad používateľa, zvuk, záznam obrazovky a záznam tváre používateľa pred obrazovkou. Na vyhodnotenie dát sa použil nástroj Tobii Studio určený pre zariadenie Tobii X2-30.
Cieľom štúdií bolo overiť použiteľnosť navrhnutých rozhraní: skúmali sme metódu
pre odhaľovanie záujmov používateľa za účelom vyhľadávania podobných dokumentov [1, str. 228], overovali sme spôsoby vizualizácie navigačných vodítok v digitálnej
knižnici [1, str. 212], overovali sme novú metódu pre podporu výučby cudzích jazykov na webe [1, str. 143], overovali sme rozhranie pre mapovú vizualizáciu konceptov v doménovom modeli vzdelávacieho systému [1, str. 9], overovali sme online
nástroje na tvorbu UML diagramov [1, str. 107]. Ďalšie štúdie sa zaoberali sledovaním práce študenta v online vzdelávacom systéme [2, str. 59], vyhodnotenie použiteľnosti webových portálov, ako aj medzinárodná štúdia sledovania reklamy vo filmoch.
Poďakovanie. Tento článok vznikol vďaka podpore MŠVVaŠ SR v rámci OP Výskum a vývoj pre projekt: Univerzitný vedecký park STU Bratislava, ITMS
26240220084, spolufinancovaný zo zdrojov Európskeho fondu regionálneho rozvoja,
a s podporou projektu APVV-0208-10. Prototyp sledovania dynamických webových
aplikácií vznikal vďaka tímovému projektu Carrots pod vedením Róberta Móra.
English Summary
UX Lab & UX Class: Gaze Tracking for Supporting User Experience and Learning
We present the User Experience (UX) Laboratory project in its initial phase. The
laboratory is equipped with sensors for eye tracking, monitoring physiological functions, and image processing, that are dedicated to conducting detailed observations of
users’ experience with using software applications, with special emphasis on web
applications in various domains: search, learning, etc. We present the infrastructure of
the project and first results of the studies and experiments conducted in the laboratory.
Referencie
1. Bieliková, M. (ed). Proceedings in Informatics and Information Technologies IIT.SRC
2014, Bratislava, Slovakia, (2014), 596 pgs. Url: iit-src.stuba.sk
2. Bieliková, M., Návrat, P., et al. (eds.) Proceedings of Personalized Web – 15th Spring
Workshop, Gabčíkovo, Slovakia, (2014), 158 pgs.
3. D’Mello, S., Olney, A., Williams, C., Hays, P. Gaze tutor: A gaze-reactive intelligent tutoring system. Int. J. Human-Computer Studies 70, (2012), pp. 377–398.
4. Horsley, M., et al., (eds.) Current Trends in Eye Tracking Research. Springer, (2014).
5. Móro, R., Daráž, J., Bieliková, M.: Visualization of Gaze Tracking Data for UX Testing
on the Web. In Data Vis. Workshop of Hypertext - DataViz 2014, CEUR-WS, vol. 1210.
6. Poole, A., Linden J. B. Eye tracking in HCI and usability research. Encyclopedia of human
computer interaction 1, (2006), pp. 211–219.
57
LAAOS: Logical Aspects of Adaptable Ontological
Schemas (Project Overview)
Michal Čertický1,3 , Martin Homola1 , Ján Kl’uka1 , Simone Serra2 , Vojtěch Svátek2 ,
Alexander Šimko1 , Miroslav Vacura2 , and Ondřej Zamazal2
2
3
1
Comenius University in Bratislava, Mlynská dolina, 842 48 Bratislava, Slovakia
University of Economics, Prague, W. Churchill Sq. 4, 130 67 Prague 3, Czech Republic
Agent Technology Center, Czech Technical University, Charles Sq. 13, 121 35 Prague 2,
Czech Republic
Abstract. The Czech–Slovak cooperation project aimed at new results in the
field of Semantic Web ontologies, via synergy between the formal logics background of the Bratislava group and conceptual modelling and Linked Data technology background of the Prague group. The most important achievements of the
project are the PURO ontological background modelling language, an associated
higher-order description logic, a metamodelling ontology allowing for conceptual coherency checking of OWL ontologies, and an implemented Protégé plugin
for annotation of ontologies with PURO distinctions.
1
Project and Its Objectives
The advent of the Semantic Web (SW), and especially the more recent Linked Data
(LD) initiative, resulted in an unprecedented amount of ontologies being published on
the Web, and reused in diverse applications. This mass popularity of ontologies has
brought forward a number of issues, among them the needs to combine, transform, and
merge ontologies, and also different modelling of similar entities in several ontologies.
This is often the case when the ontologies are crafted by Linked Data practitioners,
majority of whom are not trained ontology experts, but it also results from limited expressiveness of the Semantic Web ontology language OWL.4
The LAAOS project addressed some of these issues. (a) Different ontologies may
capture the same or similar concepts differently and hence recognizing and representing
a uniform background model that helps to align the ontologies is often useful. (b) Background modelling may require constructs of higher orders, which are sometimes implicitly present in ontologies, hence there is a need for logical languages that can capture
such constructs and model with them. (c) Different SW languages and their fragments
support different expressive constructs, and there is a need to transform ontologies from
one fragment to another while keeping the most of the logical meaning.
The Czech–Slovak cooperation project (reg. as 7AMB12SK020 with AIP ČR, and
SK-CZ-0208-11 with APVV) was funded in 2012–2013 by 90,000 CZK and 4,000
EUR. The results, as summarized in this paper, have been published with additional
support (on either one or other side) from the EU ICT FP7 project no. 257943, CSF
project no. P202/10/1825, and VEGA project no. 1/1333/12.
4
http://www.w3.org/TR/owl2-overview/
58
2
Results
2.1
PURO Ontology Background Modelling Language
SW ontologies, and especially LD vocabularies, are often crafted by non-experts in ontology engineering. What is more, the SW ontology languages have limited expressiveness. Consequently, imprecise or approximative modelling is often used. In particular,
entities intuitively corresponding to general concepts may be modelled by OWL individuals (syntactical instances), for example, the individual Album5 denotes the respective type of musical product. Similarly, relations are often reified (modelled as OWL
classes), e.g., the relationship between a musician and a work she composed is expressed by an instance of class Composition rather than by an instance of an OWL
property (i.e., binary relation). Also, different ontologies may model the same or similar concepts differently.
We propose that the “ontological background” that is implicit in the actual SW ontologies (also called foreground models) should be made explicit, and represented in
backgrounds models. We proposed the PURO background modelling language, which
allows to capture the background nature of the entities in foreground models by a set
of annotation labels. PURO concentrates especially on the distinction between particulars (i.e., objects) and universals (i.e., classes) – labels B-object vs. B-type (the Bprefix indicates background modelling) – and also on the distinction between (reified)
relationships and true objects – labels B-relationship vs. B-object, and so on.
It is desired for the background model to be coherent, in the sense of satisfying
constraints such as that, e.g., B-objects should not have instances, that classes, property
domains and property ranges should always contain a homogeneous set of entities, and
so on. The set of constraints was codified in the PURO ontology. With the help of
annotation labels and this ontology, the background coherence can be verified by a
description logic (DL) reasoner. The results appeared at WIKT 2012 [9], OWLED 2013
[6], and in more detail in a technical report [7].
2.2
Typed Higher-Order Description Logics
While annotation labels and the PURO ontology allow to make the ontological background model explicit, and the background coherence can be checked, we would like to
also represent the model in a suitable ontology language with logical semantics, which
would allow, e.g., to draw consequences from the background model itself. However,
background entities of higher orders may be implicit in a number of ontologies, such as
classes that contain other classes (represented as individuals in the foreground model),
etc. Current SW ontology languages do not allow higher-order classes. We proposed
a typed higher-order extension of the SROIQ DL (the base of OWL 2), which allows for such treatment. In this language background models can be directly encoded
and reasoned with. Strict type separation ensures background coherence of any such
model. The language is also suitable for some metamodelling applications. The results
appeared at DL 2013 [2] and 2014 [3].
5
This and the next example are from the Music Ontology, http://musicontology.com/.
59
Fig. 1. B-Annot tool interface: annotating a property
2.3
Analyzing Ontology Patterns via Background Models
Besides concrete ontologies, the apparatus of PURO background models can also be
applied to (empirical or explicit best-practice) patterns recurring in multiple ontologies. The prominent W3C-endorsed best practice pattern family, “Classes as Property
Values”,6 has been analysed in the PURO style and decomposed into three variants corresponding to different states of affairs [5]. A new pattern family for a related problem,
“Multi-Instance Fact”, has also recently been formulated [4].
2.4
Annotation Experiments
To verify that the PURO language is at the same time nontrivial and potentially intuitive
to users, two annotation experiments have been carried out. In the first one, two experienced ontology engineers annotated all classes from 3 popular LD vocabularies: FOAF,
Music ontology and GoodRelations.7 Although initially some discrepancies between
the annotators appeared, perfect agreement was established through a short mutual clarification phase: 92 out of 94 classes were jointly assigned a dominant label, which indicates that with proper guidelines, PURO annotation can be intuitive in most cases. Furthermore, 35 of the classes (i.e., 37 %) received other than the ‘obvious’ label (which
would be ‘level-1 B-type’), which indicates that PURO models are nontrivial counterparts to the foreground OWL models. Later on, 13 undergraduate students, after a 1hour explanation of PURO, achieved, on average, a 57% match to expert annotation on a
representative sample of 20 classes from the above-mentioned vocabularies. The choice
was from 6 PURO labels; note that in this balanced sample there were only 7 ‘level-1
B-types’, thus a majority rule – always using this label – would only yield 35% match.
2.5 B-Annot Protégé Plug-In
To support the annotation of ontologies with PURO labels we developed a Protégé
plug-in called B-Annot.8 Generic (w.r.t. ontology specification) but also dataset-specific
annotation is enabled [8], the latter addressing the issue that in some dataset, certain
6
7
8
http://www.w3.org/TR/swbp-classes-as-values/
http://xmlns.com/foaf/spec/, http://purl.org/goodrelations/v1#
Available from http://patomat.vse.cz/cz.vse.bannotation.plugin.view.jar.
60
entities may be used differently than originally intended by the author of the ontology.
The screenshot in Fig. 1 shows an assignment of a label (“PrT”: property whose range is
a type) to the topic property of FOAF. B-Annot is general enough to also capture other
background modelling languages apart from PURO; OntoClean [1] is also supported.
2.6
Language Profiling
Within the project we work on the language profiling scenario, where an user needs
(from diverse reasons, e.g., complexity downgrading) to replace language constructs
while keeping the most of the logical meaning. Our approach aims at an automatic
transformation of forbidden language constructs in the resulting/target ontology. The
automation is enabled by an automated search for transformation patterns based on an
evolutionary algorithm. Patterns that keep the most of the logical meaning are directly
forwarded to the next generation. Others undergo mutation and crossover operations
before they enter the next generation. This process involves a transformation patterns
generator generating all three transformation pattern parts, i.e., a source and a target ontology pattern and a pattern transformation. Currently, we prepare further experiments
where the generation of transformation patterns is restricted to axioms already present
in the transformed ontology.
3
Future Work
Further results concerning evaluation of existing linked data ontologies based on PURO
background models, annotation experiments, and language profiling are being prepared.
The project sparked our interest in follow-up topics, such as metamodelling and investigation of the relationship between materialization and higher-order ontology entities.
References
1. Guarino, N., Welty, C.: An overview of ontoclean. In: Staab, S., Studer, R. (eds.) The Handbook on Ontologies, pp. 151–172. IHIS, Springer (2004)
2. Homola, M., Kl’uka, J., Svátek, V., Vacura, M.: Towards typed higher-order description logics.
In: DL (2013)
3. Homola, M., Kl’uka, J., Svátek, V., Vacura, M.: Typed higher-order variant of SROIQ – why
not? In: DL (2014)
4. Svátek, V., Homola, M., Kl’uka, J., Vacura, M.: Referring to multiple unspecified objects of a
type: multi-instance fact pattern family. Submitted to Semantic Web Journal
5. Svátek, V., Homola, M., Kl’uka, J., Vacura, M.: Mapping structural design patterns in OWL to
ontological background models. In: K-CAP (2013)
6. Svátek, V., Homola, M., Kl’uka, J., Vacura, M.: Metamodeling-based coherence checking of
OWL vocabulary background models. In: OWLED (2013)
7. Svátek, V., Homola, M., Kl’uka, J., Vacura, M.: Ontological distinctions for linked data vocabularies. Tech. Rep. TR-2013-0039, Comenius University (2013), available online: http:
//kedrigern.dcs.fmph.uniba.sk/reports/download.php?id=54
8. Svátek, V., Serra, S., Vacura, M., Homola, M., Kl’uka, J.: B-Annot: Supplying background
model annotations for ontology coherence testing. In: WoDOOM (2013)
9. Svátek, V., Vacura, M., Homola, M., Kl’uka, J.: Towards conceptual structure verification of
linked data vocabularies. In: WIKT (2012)
61
Television Linked to the Web (project presentation)
Tomáš Kliegr, Vojtěch Svátek
Department of Information and Knowledge Engineering, University of Economics, Prague,
nám. W. Churchilla 4, 130 67 Praha 3
{tomas.kliegr|svatek}@vse.cz
Abstract: The LinkedTV (Television Linked to the Web) project aims to unite
television and web experience. The audio visual content is enriched by links to
related web pages, videos, podcasts and images. The user interaction is analyzed and a user model built, which enables content personalization. This paper
provides an overview of the contributions in the knowledge engineering areas,
with an emphasis on results obtained by UEP.
Keywords: EU FP7, personalization, linked data, project
1 Introduction
While conventional television is still the main media, TV over the web is gaining a
fast impetus. The web environment as well as the new capabilities of the new TV
viewing devices (set top boxes, computers, tables, Smart TVs) open a window of opportunity for intelligent technologies, that should be able to semi-automatically enrich
video and personalize these recommendation.
LinkedTV aims to unite television and web experience. The audio visual content is
enriched by links to related web pages, videos, podcasts and images. The user interaction is analyzed and a user model built, which enables content personalization.
An important element in the project is the fact that the automatically generated enrichments are curated in a TV studio before being presented to the end user. Since the
state of the art in some of the involved areas is not yet advanced enough to provide
reliable input for the enrichment, the manual curation step ensures that the content
that reaches the user maintains a stable quality level.
2 Project Overview
LinkedTV is funded by the EU within the 7th Framework Programme under the Networked Media Call. The project started in October 2011 and will finish in March
2015. The project duration is 42 months. The total cost of the project is 8 449 406
Euro, with EU contribution 6 489 633 Euro. The coordinator of the project is a German research institute Fraunhofer. There are 12 partners in the project, from eight
European countries.
62
3 Consortium
The consortium consists of the following institutions: Centre for Research and Technology Hellas from Greece (CERTH), Condat AG from Germany, EURECOM from
France, Fraunhofer Institute for Intelligent Analysis and Information Systems from
Germany, Noterik BV from the Netherlands, Rundfunk Berlin-Brandenburg from
Germany (RBB), Modul University from Austria, CWI from the Netherlands, Dutch
Institute for Sound and Vision from the Netherlands (S&V), University of Mons
from Belgium, University of St. Gallen from Switzerland, University of Economics,
Prague (UEP). The consortium comprises three types of organizations: research, technology providers, and content providers.
Research partners. CWI is focused on user interface development, Eurecom works
in the area of exploitation of linked data for multimedia purposes, Fraunhofer has two
roles: it performs low-level video processing, and also contributes to personalization,
Modul university main contribution is in exploitation and dissemination, University of
Mons performs research in multimodal interfaces and their use for personalization,
University of St. Gallen investigates viable business models for the exploitation of the
technology developed in the project. The contribution of the University of Economics,
Prague is further developed in Section 5.
Content partners. S&V is a Dutch national media archive, RBB is a German television broadcaster. The two main languages of the content analyzed are thus Dutch and
German.
Technology providers. Condat AG and Noterik BV provide solutions for indexing,
management and retrieval of digital media. In the project, Condat AG provides technical infrastructure and Noterik BV in collaboration with CWI develops the
“LinkedTV” player, which showcases the technologies developed in the project.
4 Work packages
Internally, the project management is divided into 9 work packages. Research relating
to the area of knowledge engineering is performed in work packages 1, 2 and 4:
WP 1 (Intelligent hypervideo analysis) performs analysis of audio-visual material.
This work package is led by CERTH. The main focus of the research are techniques
from the areas of shot and chapter segmentation, video concept detection, automatic
speech recognition, event detection, keyword analysis and multi-modal fusion. Selected techniques developed in this WP have been evaluated in the TRECVid contest.1
WP 2 (Linking hypervideo to web content) performs enrichment of video content.
This work package is led by Eurecom. The content is retrieved from 3rd party APIs,
as well as using focused crawling of a set of trusted websites designated by the con-
1
http://trecvid.nist.gov/
63
tent partners. The seed video as well as enrichment content is analyzed using entity
recognition and disambiguation algorithms. The result of the analysis is represented
using semantic web technologies.
WP 4 (Contextualization) performs personalization of video content. This work
package is led by Fraunhofer. The user interest clues are obtained both from explicit
user interaction with the content, as well as using physical behaviour tracking by Microsoft Kinect [4]. User profile is represented by concepts from LinkedTV User Model Ontology (LUMO), which are mapped to concepts from DBpedia and YAGO ontologies, which are identified by entity classification performed in WP2.
5 UEP@LinkedTV
In this section, we highlight the main contributions of UEP to the technical work
packages 1,2 and 4.







A language-dependent keyword analysis web service for German, English and
Dutch.
Algorithms for classification of entities in text into a custom set of classes. The
output of these algorithms is combined with the result of concept detection to obtain better results coming from the intermodal fusion.
Entityclassifier.eu: Entity classification web service, which supports German and
Dutch in addition to English [1].
Linked Hypernyms Dataset (http://ner.vse.cz/datasets/linkedhypernyms/) We
generated a significant extension to the DBpedia knowledge base for English,
German and Dutch languages by analyzing the free text of articles using natural
language processing techniques [3]. The additional entity types are used by entityclassifier.eu.
A focused crawler, which is based on Apache Nutch and Solr, which we have
extended to support crawling and retrieval of multimedia content (images, podcasts, videos). Part of the technology has been used in the MediaEval contest [6].
InBeat.eu – is a web service recommender system, which comprises of the GAIN
module for capturing user interactions, PL module for preference learning, and
RS module for recommending content [5].
The LinkedTV project also supported the development of the EasyMiner.eu association rule mining web application and web service [7]. This can be used as one
of the providers of data mining models for the inbeat.eu PL module.
6 Evaluation and impact
Demos of the software tools developed by UEP within the project have been presented at premier conferences on machine learning [1], recommender systems [5] and
artificial intelligence [4] (accepted for presentation).
The individual algorithms and tools developed or co-developed by UEP have been
successfully evaluated in multiple contests: 1st and 2nd place at MediaEval 2013 [6],
64
the InBeat system obtained 2nd place at RecSys’13 News Challenge2. Entityclassifier.eu participated in the highly competitive NIST TAC 2013, finishing in the middle
[2]. Additional benchmarking activities are ongoing.
The assessment of the “end-product”, with most of the components integrated, is
planned for the last 6 months of the project.
Acknowledgments
This work is supported by the European Union under grant no. FP7-ICT-2011-7
LinkedTV (Television Linked To The Web). The authors thank the anonymous reviewers for detailed feedback.
References (selected publications)
[1] Milan Dojchinovski, Tomáš Kliegr. Entityclassifier.eu: Real-time Classification of
Entities in Text with Wikipedia. In ECML/PKDD 2013, September 2013, str. 654658. Volume 8190, Springer.
[2] Dojchinovski, I. Lašek, T. Kliegr, O. Zamazal. Wikipedia Search as Effective
Entity Linking Algorithm. In Proceedings of the Text Analytics Conference (TAC
2013), Gaithersburg, Maryland, USA, 2013, U.S. National Institute of Standards and
Technology (NIST).
[3] T. Kliegr., O. Zamazal. Towards Linked Hypernyms Dataset 2.0: complementing
DBpedia with hypernym discovery. In 9th International Language Resources and
Evaluation Conference (LREC'14), Reykjavik, Iceland, May, 2014.
[4] T. Kliegr, J. Kuchař Orwellian Eye - Video recommendation with Microsoft Kinect. In Conference on Prestigious Applications of Intelligent Systems (PAIS'14) collocated with European Conference on Artificial Intelligence, Prague, Czech Republic,
August 2014, IOS Press
[5] Jaroslav Kuchař, Tomáš Kliegr. GAIN: web service for user tracking and preference learning – a SMART TV use case. In Proceedings of the 7th ACM Recommender Systems Conference (RecSys 2013), Hong Kong, China. October 2013.
[6] Mathilde Sahuguet, Benoit Huet, Barbora Červenková, Evlampios Apostolidis,
Vasileios Mezaris, Daniel Stein, Stefan Eickeler, Jose Luis Redondo Garcia, Raphael
Troncy, Lukas Pikora, "LinkedTV at MediaEval 2013 Search and Hyperlinking
Task", Working Notes in Proc. of the MediaEval 2013 Workshop, 18-19 October,
2013, Barcelona, Catalunya, Spain.
[7] Radek Škrabal, Milan Šimůnek, Stanislav Vojíř, Andrej Hazucha,Tomáš Marek,
David Chudán, Tomáš Kliegr. Association Rule Mining Following the Web Search
Paradigm. In Proc. of European Conference on Machine Learning and Principles and
Practice of Knowledge Discovery in Databases (ECML-PKDD 2012), Bristol, UK,
24-28 September 2012, volume 7524, 2012, pp 808-811. Springer
2
https://sites.google.com/site/newsrec2013/challenge
65
MONDIS: Using Ontologies for Monument
Damage Descriptions
Petr Křemen, Miroslav Blaško, Marek Šmı́d, Zdeněk Kouba, Martin Ledvinka,
and Bogdan Kostov
Czech Technical University in Prague, Czech Republic
Abstract. The MONDIS project is aimed at knowledge management
in the field of monument conservation, monument damages and related
interventions. The IT platform developed within the project is to be used
by conservators, monument owners and other stakeholders to share their
terminology, contextual knowledge, as well as experience about existing
damages and their interventions.
1
Project Overview
1.1
Main Goals
The project is aimed at developing ontology-based information system for sharing knowledge between various stakeholders in the cultural heritage preservation
domain, including conservators, monument owners, academics, and other. Currently, no integrated knowledge about monument damage is available to the
stakeholders in the domain. Thus, the project focuses on:
–
–
–
–
1.2
documentation of damages and failures of cultural heritage objects,
analysis of dependencies between failures and their causes,
damage mitigation measures and intervention plans,
risk factors of failure occurrence and their prevention.
Basic Facts
MONDIS is a 5-year project funded in years 2011-2015 by the Ministry of Culture
of the Czech Republic with budget over 20 mil. CZK. The project consortium
consists of two partners
FEE Faculty of Electrical Engineering, Czech Technical University in Prague,
responsible for designing the IT stack based on requirements formulated by
ITAM.
ITAM Institute of Theoretical and Applied Mechanics, Academy of Sciences
of the Czech Republic, responsible for defining business cases, developing
terminological knowledge and testing developed tools.
Details about the MONDIS project are already publicly available at the project
web site1 .
1
http://www.mondis.cz, cit. 18.6.2014
66
2
MONDIS Information System
The IT platform developed within the project is depicted in Fig.1. The knowledge
structure managed by the project IT stack is defined in the Monument Damage
Ontology [1]. To efficiently create the representative damage records for ontology
developement, we designed OntoMind [2], an ontology-driven mindmapping tool.
In the core of the platform is the MONDIS server that provides various web
services for other components of the system as well as access to the data in the
OWLIM semantic repository. MONDIS Mobile is a mobile application for creating damage records according to various damage record templates. MONDIS
web application serves for visualization, management and approval of the damage records. Its component for semantic comparison of different damage cases is
currently under development. Terminology Editor is used to manage the terminology in the monument damage domain and to extend the Monument Damage
Ontology. The relationships between different characteristics of the domain terms
are visualized by means of the knowledge matrix tool.
Fig. 1. MONDIS system. White boxes/dashed lines show modules under development.
2.1
Monument Damage Ontology
Monument Damage Ontology (MDO) is a domain OWL 2 ontology [3]. The
ontology describes Cultural Heritage objects together with their components
67
and used materials. For each component its damages are represented together
with damage mechanisms and agents. Damages are connected to interventions
used for repairing the damage. The aim of the monument damage ontology is to
cover the most important relationships in the domain together with deep concept
taxonomies (e.g. materials, components, interventions) for contextual search in
the MONDIS tools. See http://www.mondis.cz/en/web/portal/tools for more
details.
2.2
OntoMind
Ontomind is an ontology-driven mind-mapping tool used to create mind maps
with the guidance of an OWL 2 Ontology. The tool itself is domain-independent
– the domain knowledge is represented purely by the ontology. During mind
map creation, the user is offered ontological classes/properties according to the
current context to annotate the current mind map concept ontologically. Mind
maps created by the tool are exported in the form of OWL ontologies to the
OWLIM storage. See http://www.mondis.cz/en/web/portal/ontomind for more
details.
2.3
MONDIS Mobile and MONDIS Web Application
MONDIS Mobile is an Android/IOS mobile application for creating monument
damage records on site. There are implemented several methodologies for monument damage description (Mondis Record, MonumentenWacht card 2 , and other,
see Fig. 1). The records can be spatially identified by PaGIS points3 , address or
GPS position. Each record consists of a tree-shaped structure of various criteria.
Each criterion can be classified (e.g. Roof Damage Extent criterion with level
Large), as well as equipped with textual description and photo documentation.
The records created by MONDIS Mobile are sent to the MONDIS Server and
stored within the semantic repository. Each record can be viewed by means of
the MONDIS Web Application that allows to review the record, modify it and
approve it for publication. The published records are available using MONDIS
web site at http://www.mondis.cz/en/web/portal/mondis-explorer.
2.4
Terminology Editor
Terminology editor is a tool for management of domain terminology and taxonomies. While the core ontological structure of the Monument Damage Ontology is fixed, the terminological editor allows creating and annotating the
taxonomies and refine existing terminology to support multilinguality, term definitions, or term photodocumentation.
2
3
see Art Nouveau training materials at http://www.artnouveau-net.eu, cit. 19.6.2014
http://gis.up.npu.cz/, cit. 19.6.2014
68
2.5
Knowledge Matrix
Knowledge Matrix is a web application that allows the user to investigate and
comprehend relationships among selected concepts of targeted OWL 2 ontology.
It deals both with particular existing as well as possibly existing relationships.
The visible part of the application is a web component representing a tabular
view on the relationships. It represents a matrix with specific concepts assigned
to each of its two dimensions that represent navigable taxonomies. Selection of
a concept in the hierarchy results in filtering the content of matrix cells.
One of MONDIS scenarios aims at investigation of possible interventions
associated with a manifestation of damage with respect to various mechanisms
(e.g. corrosion), and agents (e.g. humidity) activating the respective mechanism.
For details see http://www.mondis.cz/en/web/portal/knowledge-matrix.
3
Conclusions
Within the MONDIS project, unique cooperation between IT specialists and
domain experts is mediated. The gained experience showed us the necessity
to use agile ontology and SW development techniques. By now, one and half
year before the end of the project, prototypes of most of the software stack
components were released. Besides MDO, Mondis Mobile/Server stack presents
one of the most promising result. Currently, possible commercial deployment is
discussed with two european monument preservation organizations.
Yet, some goals are still to be completed within the remaining part of the
project. First, transformation between damage records made by the mobile application according to different methodologies and the MDO is required. Second,
semantic search in the damage records is to be done. Third, testing of the current
software stack on the real-world examples of monument damages is necessary.
Acknowledgements This work has been supported by the grant “Defects in
immovable cultural heritage objects: a knowledge-based system for analysis, intervention planning and prevention”, No. DF11P01OVV002, of the Czech Ministry of Culture.
References
1. Blaško, M., Cacciotti, R., Křemen, P., Kouba, Z.: Monument Damage Ontology. In:
Ioannides, M., Fritsch, D., Leissner, J., Davies, R., Remondino, F., Caffo, R. (eds.)
Progress in Cultural Heritage Preservation, Lecture Notes in Computer Science, vol.
7616, pp. 221–230. Springer Berlin Heidelberg (2012)
2. Křemen, P., Mička, P., Blaško, M., Šmı́d, M.: Ontology-driven Mindmapping. In: Proceedings of the 8th International Conference on Semantic Systems. pp. 125–132. I-SEMANTICS ’12, ACM, New York, NY, USA (2012),
http://doi.acm.org/10.1145/2362499.2362517
3. Motik, B., Parsia, B., Patel-Schneider, P.F.: OWL 2 Web Ontology Language Structural Specification and Functional-Style Syntax. W3C recommendation, W3C (Oct
2009), http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/
69
Znalostní báze pro obor organizace znalostí
Helena Kučerová, Eva Bratková
Ústav informačních studií a knihovnictví, FF UK Praha, U Kříže 8, 158 00 Praha 5
[email protected], [email protected]
Abstrakt. Příspěvek představuje výsledky prvního roku řešení výzkumného
projektu Programu aplikovaného výzkumu a vývoje národní a kulturní identity
(NAKI) “Znalostní báze pro obor organizace informací a znalostí”, řešeného na
ÚISK FF UK v letech 2013–2015. Cílem projektu je vytvořit znalostní bázi,
která má zaplnit mezeru v domácí odborné literatuře tím, že shromáždí a systemizuje aktuální poznatky z oboru organizace znalostí a umožní jejich
zpřístupnění a odvozování znalostí nových. Znalostní báze poskytne zdrojový
materiál pro zpracování původní české monografie a pro aktualizaci české terminologie. Bude využita jako zdroj pro výuku a vzdělávání především v oboru
informační vědy a knihovnictví.
Klíčová slova: organizace znalostí, systém organizace znalostí, informační
věda, informační zdroje, znalostní báze
1
Úvod
Obor organizace znalostí prochází v současné době změnou paradigmatu, vyvolanou používáním elektronických dokumentů a technologií Internetu. Oblast zkoumání se rozšiřuje za hranice tradičních paměťových institucí [2], pojmová a terminologická základna se redefinuje a není jednotná [1], [5]. V rámci řešeného projektu
používáme dále uvedené vymezení organizace znalostí jako vědního oboru, organizace znalostí jako praktické aktivity, a systému organizace znalostí. Předmětem
zkoumání oboru organizace znalostí je proces organizace znalostí a jeho kontext, tj.
zdroje, jež jsou v procesu organizace transformovány, a produkty, jež jsou tímto procesem vytvářeny, včetně zúčastněných aktérů – osob, institucí, technologií. Procesem
organizace znalostí rozumíme jakoukoli záměrnou činnost, spočívající v zavádění
struktury do existujících znalostí s cílem usnadnit k nim přístup. Tyto aktivity zasahují takřka celý životní cyklus znalostí, od jejich reprezentace přes případné sdělování či
sdílení, zaznamenání, publikování, zpracování (identifikaci, popis, obsahovou
analýzu, indexaci, transformaci) až po uložení. Jednotkou organizace je zaznamenaná
znalost. Výstupem procesu organizace znalostí je artefakt označovaný jako struktura,
a obvykle i metadata o organizovaných entitách. Dalším artefaktem jsou systémy
organizace znalostí [3], např. slovníky, seznamy autorit, předmětové hesláře, klasifikace, tezaury a ontologie, které jsou současně výstupem procesu organizace
znalostí i jeho nástrojem, sloužícím pro organizaci znalostí a zároveň jako pomůcka
70
při vyhledávání z organizované kolekce. Jádrem každého systému organizace znalostí
je slovník a schéma, definující obsah a strukturu organizovaného celku.
2
Motivace a cíl projektu
Cílem projektu je shromáždit a systemizovat současný stav poznání v oboru organizace znalostí ve formě znalostní báze, která umožní ukládání, prohlížení,
vyhledávání stávajících a odvozování nových znalostí. Znalostní báze bude
zpřístupněna ve formátu otevřených propojených dat a bude sloužit pro další výzkum
a jako nástroj výuky a vzdělávání především v oboru informační vědy a knihovnictví.
Motivací pro realizaci projektu se staly výsledky průzkumu výchozího stavu poznatkové základny oboru organizace znalostí v českém prostředí, realizovaného v roce
2012. Bylo zjištěno, že zatímco používané technologie jsou srovnatelné se světovým
vývojem, chybí aktuální odborná monografie, která by reagovala na změnu paradigmatu organizace znalostí. Vzhledem k závislosti organizace znalostí na přirozeném
jazyce a na specifickém kulturním kontextu je absence aktuálních zdrojů v mateřském
jazyce pociťována v rámci české odborné veřejnosti jako citelný nedostatek.
3
Použité metody
Volbu metod ovlivnila zvolená forma znalostní báze, která je koncipována jako
„tradiční” expertní systém, jehož obsah je založený na manuální akvizici znalostí a na
intelektuálním posuzování jejich relevance a hodnoty. V návrhu znalostní báze se
snažíme o maximální opětovné využití již ověřených konceptů a standardizovaných
slovníků. Konceptuální model využívá FRBR 1 entity „dílo“, “vyjádření” a
„provedení“ [4] v kombinaci s atributy KOS-AP2 [6]. Každá jednotka znalostní báze
je klasifikována s využitím Klasifikačního systému literatury oboru organizace
znalostí3. Typologie systémů organizace znalostí je mapována do typologie NKOS 4
Vocabularies5. Specifikace požadavků a případy užití znalostní báze byly zformulovány s využitím analýzy provedených řízených rozhovorů s doménovými experty.
Dokumentové zdroje byly shromážděny standardními postupy bibliografické rešerše.
Znalosti ve formě výroků jsou manuálně excerpovány z 50 vybraných odborných
1
2
3
4
5
Functional Requirements for Bibliographic Records – funkční požadavky na bibliografické
záznamy. Konceptuální datový model bibliografického univerza.
Dublin Core Metadata Application Profile for KOS Vocabulary Registries – aplikační profil
Dublinského jádra pro popis systémů organizace znalostí.
Classification System for Knowledge Organization Literature [online]. ISKO 2011-2012,
last update 2012-04-13. Dostupné z: http://www.isko.org/scheme.php
Networked Knowledge Organization Systems/Services – neformální komunita odborníků
zajímajících se o využití systémů organizace znalostí v prostředí informačních sítí
(http://nkos.slis.kent.edu)
NKOS Vocabularies. In: DCMI NKOS Task Group [online]. 2013, modified 2013-12-16.
Dostupné z:
http://wiki.dublincore.org/index.php/NKOS_Vocabularies
71
textů. K uložení obsahu prototypu znalostní báze je využita databáze MySQL s
webovým rozhraním (43 tabulek, 82 atributů), výroky jsou formátovány jako RDF
trojice. Pro ověřovací fázi manuální akvizice znalostí plánujeme uplatnit metody automatické extrakce termínů z textu a automatické klasifikace či klastrování.
4
Dosavadní výsledky
Byl zpracován konceptuální model struktury znalostní báze ve formátu ontologie
(viz obr. 1). Jádrem ontologie jsou tři typy entit: 1. výroky (věty formalizované jako
logické predikáty, instanciované formou textových dat), 2. dokumentové zdroje
včetně systémů organizace znalostí, reprezentované popisnými metadaty, 3. nedokumentové zdroje (osoby, instituce, události, nástroje, aktivity a procesy), reprezentované rovněž popisnými metadaty.
Obr. 1. Konceptuální model znalostní báze
Proběhla manuální fáze akvizice znalostí. Je připraveno zahájení ověřovací fáze s
využitím automatizovaných metod sémantické analýzy shromážděných popisných
metadat a vybraných plných textů odborných publikací a jejich rejstříků. Byl vytvořen
prototyp znalostní báze s cca 2300 jednotkami deklarativních znalostí: 150 výroků ve
formátu RDF, 150 záznamů systémů organizace znalostí, 1000 bibliografických záznamů odborných dokumentů, slovník o rozsahu 1000 termínů.
5
Řešené problémy a plány dalšího výzkumu
Problémy, řešené v průběhu dosavadních etap projektu, se týkaly následujících
témat: 1. Použitelnost zvoleného klasifikačního systému pro instance zahrnuté ve
72
znalostní bázi. 2. Typologie systémů organizace znalostí. 3. Aplikace modelu FRBR
na dokumentové entity. 4. Použitelnost principu sémantické diverzity, uplatňovaného
v sémantickém webu, na doménovou znalostní bázi. 5. Formalizace deklarativních
výroků. V průběhu dalšího řešení projektu plánujeme rozšíření typů zahrnutých entit
o procedurální znalosti. Další úlohou bude implementace znalostní báze do
znalostního systému s inferenčním softwarem a návrh uživatelského rozhraní.
Poděkování. Projekt č. DF13P01OVV013 je realizován na Filozofické fakultě Univerzity Karlovy a je financován Ministerstvem kultury ČR v rámci Programu aplikovaného výzkumu a vývoje národní a kulturní identity (NAKI).
English summary
Knowledge base for subject area of knowledge organization
The paper presents first year results of a research project “Knowledge base for subject
area of knowledge organization”, conducted 2013–2015 within the Programme of
applied R&D in National and Cultural Identity (NAKI) on Faculty of Arts of Charles
University in Prague. The aim of the project is to design a knowledge base, which will
fill in the gap in Czech scholarly literature through assembling and systemizing the
current body of knowledge for the domain of knowledge organization and will enable
for storing, browsing, and searching of existing knowledge as well as for discovering
or inferencing of new knowledge. The content of knowledge base will provide background material for the current scientific monograph. It will serve as a resource for
updating the Czech terminology, and as an education and training tool particulary in
the field of information science and librarianship.
Literatura
1. DAHLBERG, I. What is knowledge organization? In: Knowledge organization. 2014,
41(1), 85-91. ISSN 0943-7444
2. GLUSHKO, R. J., ed. The discipline of organizing. Cambridge(MA): MIT Press, 2013.
475 s. ISBN 978-0-262-51850-5
3. HODGE, G. Systems of knowledge organization for digital libraries: beyond traditional
authority files. Washington: The Digital Library Federation, Council on Library and Information Resources, 2000. 37 s. ISBN 978-1-933645-06-3
4. Funkční požadavky na bibliografické záznamy. Praha: Národní knihovna ČR, 2002. 117 s.
ISBN 80-7050-400-5
5. SMIRAGLIA, R. P. Theory, knowledge organization, epistemology, culture. In:
SMIRAGLIA, R. P., LEE, H., ed. Cultural frames of knowledge. Würzburg: Ergon-Verlag,
2012, Chapter 6, s. 1-18. ISBN 978-3-89913-918-1
6. ZENG, M. L., ŽUMER, M. Metadata Application Profile for KOS Vocabulary Registries.
In: Knowledge Organization: pushing the boundaries: proceedings of the ISKO UK 3rd
Biennial Conference, 8th - 9th July 2013, London [online]. J. Vernau, ed. London: ISKO
UK, 2013 [cit. 2014-06-18]. Dostupné z:
http://www.iskouk.org/conf2013/papers/ZengPaper.pdf
73
TraDiCe: Cestovanie v digitálnom priestore
Pavol Návrat, Marián Šimko, Jozef Tvarožek, Alena Kovárová
Ústav informatiky a softvérového inžinierstva
Fakulta informatiky a informačných technológií
Slovenská technická univerzita v Bratislave
Ilkovičova 2, 842 16 Bratislava, Slovensko
{meno.priezvisko}@stuba.sk
Abstrakt. Projekt TraDiCe sa zaoberá výskumom získavania a vyhľadávania
informácií v rozsiahlych informačných priestoroch. V príspevku prezentujeme
základné zameranie a ciele projektu a predstavujeme vybrané výsledky projektu
dosiahnuté výskumnými skupinami na Fakulte informatiky a informačných
technológií. Prezentované výsledky pokrývajú základné oblasti, ktorým sa
v rámci projektu venujeme: prehľadávanie a navigáciu v digitálnom priestore,
vyhľadávania a odporúčanie, modelovanie používateľov, skupín, kontextu
a domény.
Kľúčové slová: digitálny priestor, web, exploratívne prehľadávanie, navigácia,
odporúčanie, modelovanie používateľov, modelovanie domény
1
Zameranie a ciele projektu
Projekt TraDiCe1 sa zameriava na základný výskum získavania informácií vyhľadávaním v rozsiahlych informačných priestoroch. Informácie záujemca nachádza alebo
odvodzuje v procese jeho interakcie ako s informačným prostredím zahŕňajúcim aj
priateľov alebo ľudí s podobným záujmom. Metafora kognitívneho cestovania po
digitálnom priestore opisuje (často zvedavého) používateľa, ktorý sa pohybuje po
webe alebo nazerá do digitálnych knižníc, či už s vedomím konkrétneho cieľa alebo
nie.
Používatelia zanechávajú po sebe v digitálnom priestore stopy, často bez toho, aby
si to priamo uvedomovali. Ide napr. o hodnotenia, odporúčania, anotácie, nápisy na
virtuálnej stene. Komunikujú s inými, tvoriac spoločenstvá spoločných záujmov.
Vyjadrujú však aj svoje názory, píšu blogy či mikroblogy. Takéto a mnohé ďalšie
formy implicitnej spätnej väzby sú potenciálne použiteľné na zlepšovanie kognitívnej
konštrukcie významu u používateľov – spotrebiteľov informácií, resp. cestovateľov.
Potenciál digitálnych knižníc čaká na odkrytie predovšetkým ich integráciou -- či už
na úrovni integrácie samotných digitálnych knižníc alebo formou zjednocovania na
základe konštrukcie významu naprieč jednotlivými knižnicami distribuovanom prie1
http://tradice.fiit.stuba.sk/
74
store webu. V perspektívne „jednotnom“ digitálnom svete informačných zdrojov
potom možno využiť pokročilé funkcie vyhľadávania, personalizáciu, sociálne sieťovanie, zohľadnenie kontextu.
V takomto priestore je dôležitý aj spôsob prezentovania a vizualizácie informácie,
ktorá predstavuje potenciálnu odpoveď na zadaný dopyt. V tomto smere sa ukazuje
ako veľmi perspektívna multiparadigmová vizualizácia, kde sa v závislosti od typu
prezentovanej informácie a tiež stavu procesu vyhľadávania využije najvhodnejšia
forma vybraná na základe povahy zobrazovaných výsledkov a tiež kontextu.
Na projekte, ktorý trvá od mája 2011 do októbra 2014, participuje viacero výskumných tímov. Na prácu riešiteľského tímu z Fakulty informatiky a informačných
technológií STU v Bratislave sa zameriavame v tomto príspevku. Riešiteľský tím z
Filozofickej fakulty UK v Bratislave sa venuje otázkam informačného prieskumu,
skúmaniu informačného správania a budovania digitálnych repozitárov. Riešiteľské
tímy Ústavu informatiky SAV v Bratislave a Fakulty elektrotechniky a informatiky
TUKE v Košiciach sa zameriavajú najmä na aspekt modelovania domény a skúmajú
podporné metódy pre tvorbu sémantických a konceptuálnych modelov.
2
Dosiahnuté výsledky
Najvýznamnejšiu časť výskumu sme realizovali v oblasti nových metód pre navigáciu
a vyhľadávanie v digitálnych knižniciach. Rozpracovali sme systém Annota 2 umožňujúci vytvárať záložky a poznámky k ľubovoľným dokumentom na Webe [6]. Navrhli
a zrealizovali sme viacero spôsobov využitia týchto poznámok pri organizácii, navigácii a vyhľadávaní v kolekcii dokumentov, pričom sme sa špeciálne zamerali na
doménu digitálnych knižníc. Používaním systému Annota na tvorbu záložiek a poznámkovanie dokumentov v prostredí webu a digitálnych knižníc budujeme dátovú
množinu, ktorá prepája doménové dáta (dokumenty a ich metadáta) s obsahom vytvoreným používateľmi (záložky, poznámky, značky).
Konkrétne sme v systéme Annota navrhli a overili nové metódy navigácie. Preskúmali sme metódu navigácie pomocou oblaku dôležitých slov, ktorá využíva históriu navigácie používateľov ako zdroj metadát pre personalizáciu navigácie [4], s. 86.
Navrhli sme aj metódu navigácie na podporu prieskumného vyhľadávania pomocou
automatickej sumarizácie textu [4], s. 89. Textové súhrny pomáhajú používateľom
navigovať sa v informačnom priestore, pretože im umožňujú rýchlo zhodnotiť relevantnosť dokumentov. Skúmali sme metódy použité pri procese vyhľadávania v digitálnych knižniciach a informačných priestoroch. Navrhli sme prístup k prehliadaniu
výsledkov vyhľadávania v digitálnych knižniciach pomocou pohľadov založených na
zhlukovaní a navigácii využívajúcej priblíženie [5]. Navrhovaný prístup k prehliadaniu výsledkov podporuje poznávanie neznámeho priestoru výsledkov pre používateľov pomocou zobrazenia výsledkov v hierarchických zhlukoch. Vďaka týmto zhlukom môžu používatelia jednoducho a rýchlo identifikovať rozdelenie priestoru výsledkov podľa ich jednotlivých vlastností a nájsť hľadaný výsledok, prípadne sa naučiť nové poznatky o prehliadanom priestore. Po identifikácii hľadaných výsledkov
2
http://annota.fiit.stuba.sk
75
môžu používatelia cestovať priestorom digitálnej knižnice pomocou približovania sa
k zaujímavým objektom a ich vlastnostiam v grafovej vizualizácii.
V rámci vyhľadávania sme sa zamerali aj na dopytovanie používateľov. Zaoberali
sme sa sémantickým dopytovaním. Navrhli sme metódu na tvorbu dopytov na základe
obsahu dokumentu a k nemu pripojených poznámok [4], s. 67. Vytvorený dopyt slúži
na vyhľadanie dokumentov súvisiacich s opoznámkovaným dokumentom, pričom
poznámky sa používajú ako indikátory záujmu používateľa o konkrétne časti dokumentu a nájdené súvisiace dokumenty súvisia práve s týmito časťami. Na riešenie
problému viacznačnosti krátkych dopytov sme navrhli metódu, ktorá dokáže odvodiť
dodatočné kľúčové slová dopytu s využitím kontextu implicitnej sociálnej siete používateľa a metódu na vytvorenie tejto sociálnej siete [3].
V rámci výskumu kognitívneho cestovania po digitálnom svete je našim záberom
aj podpora personalizovaných služieb a sociálnych sietí. Vo výskume metód pre odporúčanie sme skúmali možnosti využitia skupinového odporúčania [1], zahrnutie
kontextu a grafových algoritmov [4], s. 115. Zamerali sme sa na zlepšenie predikcie
hodnotení odporúčaných prvkov, keďže práve táto predikcia je z hľadiska úspešnosti
odporúčacieho systému často kľúčová. Aplikáciou princípov skupinového odporúčania a zahrnutím navrhnutých virtuálnych skupín sa nám podarilo zvýšiť presnosť
odporúčania oproti štandardným prístupom, ktoré sa dnes široko používajú.
Zaoberali sme sa aj modelovaním domény a používateľov, ktoré je v kontexte personalizácie nevyhnutné. Dôležité je ich efektívne budovanie a udržiavanie. V rámci
modelovania domény sme navrhli nové metódy pre extrakciu relevantných doménových pojmov založených na využití dodatočných zdrojov informácií ako sú používateľské anotácie, vizuálne charakteristiky [4], s. 106, ale tiež pokročilé metódy zhlukovania alebo metódy inšpirované prírodou [4], s. 4.
Z pohľadu podpory kognitívneho cestovania využívajúc sociálne siete sme skúmali
potenciál mikroblogov ako atraktívneho sociálneho informačného prostriedku, kde
však používatelia trpia syndrómom preťaženia množstvom informácií a načrtli sme
metódy pre podporu prieskumného vyhľadávania využívajúce muliperspektívnu analýzu a spätnú väzbu používateľov [7] alebo analýzu sentimentu [2].
Okrem návrhu samotných metód sa v projekte venujeme aj tvorbe nástrojov pre
platformu pre vyhodnocovanie metód. Jedným so zámerov bola efektívna reprezentáciu modelu používateľa v rámci webového prehliadača, čo tvorí jadro platformy modelovania používateľa a personalizácie vo forme rozšírenia do prehliadača. Nástroje
umožňujú škálovateľnú a rozšíriteľnú architektúru platformy v prehliadači a bohaté
možnosti začínajúc zberom dát, ich spracovaním a uchovávaním až po samotné scenáre prispôsobovania používateľovi. Umožňuje ďalšie možnosti personalizácie, ktoré
ponúka prostredníctvom svojich personalizačných rozšírení. Vedľajší cieľ je aj na
celoživotné modelovanie používateľa a navrhujeme efektívnu metódu indexovania
celoživotných záznamov a modelovania rozličných charakteristík používateľa webového prehliadača.
3
Zhodnotenie
V článku sme predstavili zameranie a ciele výskumného projektu TraDiCe, v ktorom
sa zaoberáme výskumom nových metód pre získavanie a vyhľadávanie informácií
76
v rozsiahlych informačných priestoroch. Viaceré z navrhnutých metód boli rozpracované a overené v rámci systému Annota, ktorý slúži na podporu práce výskumníkov.
V súčasnosti záznamy zahŕňajú údaje o cca 200 používateľoch (výskumníkoch), cca
98000 dokumentov, cca 8500 záložiek od používateľov, cca 2800 rôznych tagov a cca
6000 priradení tagov. Zozbierané dáta poskytujú dátovú bázu pre ďalší výskum metód
a overovanie čiastkových výsledkov. Dáta je možné získať na webovom sídle projektu 3 . S perspektívou narastajúceho objemu dát medzi ďalšie výzvy patrí nasadenie
navrhnutých metód vo veľkých dátových korpusoch.
Poďakovanie. Táto práca vznikla s podporou APVV-0208-10 Kognitívne cestovanie
po digitálnom svete webu a knižníc s podporou personalizovaných služieb a sociálnych sietí.
English summary
TraDiCe: Travelling in Digital Space
Project TraDiCe focuses on fundamental research in the area of information retrieval based on
search in large information spaces. In this paper, we present the goals of the project and selected results achieved by research groups at Faculty of Informatics and Information Technologies.
The results include the areas: navigation in digital information space, search and recommendation, methods for modelling of users, groups, context and domain.
Literatúra
1. Kompan, M., Bieliková, M. Personalized recommendation for individual users based on
the group recommendation principles. In: Studies in Informatics and Control. Vol. 22, No.
3 (2013), pp. 331-341
2. Korenek, P., Šimko, M. Sentiment Analysis on Microblog Utilizing Appraisal Theory.
World Wide Web Journal. World Wide Web (2014) 17:847–867, Springer.
3. Kramár, T., Barla, M., Bieliková, M. Personalizing Search Using Socially Enhanced Interest Model, Built from the Stream of User's Activity. Journal of Web Engineering. - ISSN
1540-9589. - Vo.12, No. 1-2 (2013), pp. 65-92
4. Návrat, P., Bieliková, M., Láclavík, M., Paralič, J., Steinerová, J. Cognitive Traveling in
Digital Space of the Web and Digital Libraries. STU Press: Bratislava, 2013, ISBN: 97880-227-4089-0.
5. Rástočný, K., Tvarožek, M., Bieliková, M. Web Search Results Exploration via ClusterBased Views and Zoom-Based Navigation. Journal of Universal Computer Science. Vol.
19. No. 15, 2320-2346.
6. Ševcech, J., Móro, R., Holub, M. Bieliková, M. User Annotations as a Context for Related
Document Search on the Web and Digital Libraries. Informatica 38 (2014) 21–30.
7. Žilinčík, M., Návrat, P., Kosková, G. Exploratory search on Twitter utilizing user feedback
and
multi-perspective
microblog
analysis.
PLoS
ONE
8(11):e78857.
doi:10.1371/journal.pone.0078857.
3
http://annota.fiit.stuba.sk/dataset
77
Informácia o riešení témy Big Data v projekte
„Medzinárodné centrum excelentnosti pre výskum
inteligentných a bezpečných informačno-komunikačných
technológii a systémov“
Viera Rozinajová1, Gabriela Kosková1, Anna Bou Ezzeddine1, Mária Lucká1 ,
Mária Bieliková1, Pavol Návrat1
1
Fakulta informatiky a informačných technológií STU Bratislava,
Ilkovičova 2, 842 16 Bratislava
{rozinajova, koskova, ezzeddine, lucka,
bielikova, navrat}@fiit.stuba.sk
Abstract. Príspevok poskytuje informáciu o projekte s názvom Medzinárodné
centrum excelentnosti pre výskum inteligentných a bezpečných informačnokomunikačných technológií a systémov po jeho úvodnej faze riešenia. V závere
identifikujeme hlavné úlohy, ktoré sa v projekte v ďalších fázach budú riešiť.
Slovenská technická univerzita (STU) v Bratislave je jedným z partnerov projektu
s názvom Medzinárodné centrum excelentnosti pre výskum inteligentných a
bezpečných informačno-komunikačných technológií a systémov, ktorý je podporovaný
agentúrou Agentúra Ministerstva školstva, vedy, výskumu a športu SR pre
štrukturálne fondy EÚ. Cieľom projektu je vytvorenie medzinárodného centra
excelentnosti a výskum inteligentných a bezpečných informačno-komunikačných
technológií a systémov. Projekt začal vo februári 2014 a čas jeho riešenia je
naplánovaný do septembra 2015.
Základný výskum pre rozvoj inteligentných a bezpečných informačnokomunikačných systémov sa sústreďuje na výskumné témy:
•
Inteligentná sieť – Smart grid,
•
Bezpečnosť – Kryptografia,
•
Veľké dáta – Big Data.
V rámci STU je do projektu zapojených viacero pracovísk: Ústav elektroenergetiky
a aplikovanej elektrotechniky na Fakulte elektrotechniky a informatiky (FEI) STU
v téme Inteligentná sieť – Smart grid, Ústav informatiky a matematiky FEI STU
v téme Bezpečnosť – Kryptografia a Ústav informatiky a softvérového inžinierstva
(ÚISI) na Fakulte informatiky a informačných technológií (FIIT) STU v téme Veľké
dáta – Big Data. Tri riešené témy prepája oblasť energetiky, ktorá je vlastná téme
Inteligentná sieť – Smart grid. Téma Bezpečnosť – Kryptografia sa venuje
bezpečnosti prenosu dát v inteligentnej sieti. V rámci témy Veľké dáta, ktorá je
zameraná na spracovanie, analýzu a vizualizáciu veľkých objemov dát sa venujeme
analýze meraní z inteligentných meračov spotreby elektrickej energie.
78
Táto informácia sa týka výskumu na ÚISI FIIT STU a témy Veľkých dát – Big
Data. Potrebu spracovávania veľkých dát v oblasti energetiky vyvolala snaha
Európskej únie o zavedenie inteligentnej siete v rámci Európskej únie. Podľa
vyhlášky MH SR č.358/2013 účinnej od 15. novembra 2013 má byť v Slovenskej
republike inteligentnými meračmi spotreby elektrickej energie vybavených 80 %
zo všetkých odberných miest, ktorých je rádovo dva milióny. Inteligentné merače
zaznamenávajú informácie o odbere elektrickej energie v 15-minútových intervaloch
a následne ich odosielajú do centrálneho informačného systému. Tieto merače
umožňujú jednak každému spotrebiteľovi regulovať spotrebu energie (príkladom
systému na meranie a vyhodnocovanie spotreby energie je systém Energomonitor
(https://www.energomonitor.cz/)), jednak poskytujú podporu pre návrh nových
spôsobov predikovania spotreby. Pri cieľovej konfigurácii prenášané a spracovávané
dáta spĺňajú charakteristiky veľkých dát, ako je objem a rýchlosť pribúdania dát.
Ďalšou dôležitou charakteristikou týchto dát je, že odbery pre jednotlivé odberné
miesta, či distribučné skupiny je možné modelovať pomocou časových radov.
Výzvou témy veľkých dát vo všeobecnosti je spracovanie, analýza a vizualizácia
veľkých objemov dát v reálnom čase s cieľom podporiť ďalšie rozhodovanie.
V oblasti energetiky vzhľadom na charakter dát sú typickými úlohami:
•
predikcia spotreby elektrickej energie pre distribučné spoločnosti, bilančné či
iné skupiny alebo jednotlivcov,
•
analýza vzťahu spotreby elektrickej energie a externých faktorov, napr.
meteorologických či demografických údajov,
•
dolovanie typických motívov a tvarov kriviek odberu elektrickej energie,
•
klastrovanie odberných miest podľa charakteristík odberu,
•
klasifikácia odberateľov elektrickej energie,
•
detekcia anomálií.
V úvodnej fáze projektu sme analyzovali prístupy modelovania, spracovávania a
predikovania časových radov klasickými prístupmi, ako sú regresia a analýza
časových radov [6, 7, 8]. Modely jednoduchej a viacnásobnej regresnej analýzy
môžeme zaradiť medzi kauzálne prognostické modely. V týchto modeloch
uplatňujeme predpoklad, že medzi vstupmi a výstupmi systému existuje vzťah príčiny
a dôsledku. Prognózovaná hodnota premennej je stanovená na základe
identifikovaného kauzálneho vzťahu. Pomocou časového radu zaznamenávame
zmenu skúmanej premennej v čase. Vychádzame z rozdelenia časového radu na štyri
zložky: trendová, sezónna, cyklická a náhodná. V praktických úlohách často
oddeľujeme a vyčíslujeme trendovú a sezónnu zložku a z takto upraveného modelu
zisťujeme prognózu. Ak údaje časových radov vykazujú trend, používame
nasledujúce metódy: Holtovo exponenciálne vyrovnanie, metódu kĺzavých priemerov,
jednoduché regresné modely, modely trendu, rastové medely a autoregresné
integratívne modely kĺzavých priemerov – ARIMA modely.
V prípade
identifikovania sezónnych znakov v modeli na stanovenie prognózy používame
Wintersovo exponenciálne vyrovnanie, viacnásobnú regresiu, klasickú dekompozíciu,
alebo ARIMA modely. Z pohľadu rizikového manažmentu má veľký význam
identifikácia a kvantifikácia sezónnej zložky, čím zisťujeme odchýlku oproti
očakávanej hodnote veličiny. Na prognózovanie budúcich hodnôt stacionárnych
79
časových radov používame naivné modely, kĺzavé priemery, jednoduché
exponenciálne vyrovnanie a autoregresívne modely.
Po analýze klasických prístupov sme skúmali adaptívne prístupy založené
na neurónových sieťach a metódach podporných vektorov [5, 6]. Zamerali sme sa
na publikované práce z oblasti predikcie odberov elektrickej energie [1, 8]. Keďže
kľúčovým problémom je výber vhodného spôsobu reprezentácie rýchlo pribúdajúcich
údajov, analyzovali sme spôsoby reprezentácie časových radov z pohľadu redukcie
dát a tiež potreby neustáleho rozširovania dátových súborov o nové namerané
hodnoty [3]. Na podporu spracovávania dát v reálnom čase sme analyzovali prístupy
paralelného a distribuovaného spracovávania veľkých dát . Práca s veľkými dátami
vyžaduje aplikáciu netradičných spôsobov spracovania, vzhľadom na ich objem,
rýchlosť zmien, distribuovanosť a špecifickú štruktúru. Skúmali sme možnosti
použitia analytických nástrojov na spracovanie veľkých dát, akými sú MapReduce
a Hadoop [2, 4]. Naštudovali sme základné vlastnosti a charakteristiky týchto
softvérových nástrojov s cieľom posúdiť vhodnosť ich použitia v inteligentných
sieťach. HDFS (Hadoop Distribuovaný File Systém) bol vytvorený na spoľahlivé
uchovávanie dát a ich škálovanie, čím vytvára predpoklad rýchleho spracovania spolu
so spoľahlivosťou.
Priebehové merania sa na Slovensku vykonávajú od 1.júla 2013. K dispozícii sme
mali prvú vzorku dát, ktorých vlastnosti sme skúmali v prostredí pre štatistické
výpočty R.
Vzhľadom na časovú náročnosť nie sú doposiaľ používané prístupy na
modelovanie, analýzu či predikovanie odberov elektrickej energie vhodné
na spracovávanie veľkých objemov dát, ktoré v tomto projekte riešime. Na analýzu
a predikciu takýchto dát v reálnom čase plánujeme v ďalších fázach projektu riešiť:
•
reprezentáciu dát pre rýchly prístup a spracovanie,
•
predspracovanie a transformácia časových radov s cieľom získať vybrané
charakteristiky,
•
štatistické metódy analýzy dát,
•
rýchle spracovanie dát s podporou paralelných a distribuovaných prístupov,
resp. použitie inkrementálneho spracovania
•
vizualizáciu dát podľa nájdených charakteristík.
English summary
The paper provides short information about recently started project ‘’International
Centre of Excellence for Research of Intelligent and Secure InformationCommunication Technologies and Systems.” Three main topics of the project include
Smart grid, Cryptography and Big Data. Main challenge in the theme Big Data is to
find models and methods suitable for real time processing, analysis and visualization
of big data volumes coming from Smart Metering. Application of a new European
Union Regulation concerning metering of electricity consumption to Slovakia
requires to equip about 80% of electricity supply points with smart meters in the next
two years. Smart meters will produce huge amount of data that must be properly
stored and processed. We have studied classical methods suitable for analysis and
80
prediction of time series taking into account seasonal variations. We have analyzed
suitability of these methods for real time processing of big data volumes arising from
smart metering and we have investigated new models and methods. They include
research in the area of adaptive methods based on neural networks and support vector
machines and methods allowing incremental processing. We plan to use parallel and
distributed software frameworks such as MapReduce with Hadoop [2,4] and to find
proper representation of data that will enable online processing of data and
visualization according to selected characteristics.
Poďakovanie: Táto publikácia vznikla vďaka podpore projektu v rámci OP
Výskum a vývoj pre projekt: „Medzinárodné centrum excelentnosti pre výskum
inteligentných a bezpečných informačno-komunikačných technológií a systémov“,
ITMS: 2624012003, spolufinancovaný zo zdrojov Európskeho fondu regionálneho
rozvoja.
Literatúra
1.
2.
3.
4.
5.
6.
7.
8.
Aung, Z., Toukhy, M., Williams, J., Sanchez, A., Herrero, S.: Towards accurate
electricity load forecasting in smart grids. In Proceedings of the 4th International
Conference on Advances in Databases, Knowledge, and Data Applications
(DBKDA) (2012) 51–57.
Dean J., Ghemawat, S.: Mapreduce: Simplified data processing on large clusters.
In Sixth Symposium on Operating System Design and Implementation, San
Francisco, CA, (2004).
Ding, H., Trajcevski, G., Scheuermann, P., Wang, X., Keogh, E.: Querying and
mining of time series data: experimental comparison of representations and
distance measures. In Proceedings of the VLDB Endowment 1 (2), (2008)1542–
1552.
He, Y., Lee, R., Huai, Y., Shao, Z., Jain, N., Zhang, X., Rcfile, XuZ.: A fast and
space-efficient data placement structure in mapreduce-based warehouse systems.
In ICDE, (2011) 1199–1208.
Hu, Z., Bao, Y., Xiong, T.: Electricity load forecasting using support vector
regression with memetic algorithms. ScientificWorldJournal 2013:292575. doi:
10.1155/2013/292575. eCollection (2013).
Liu, N., Babushkin, V., Afshari, A.: Short-Term Forecasting of Temperature
Driven Electricity Load Using Time Series and Neural Network Model. Journal
of Clean Energy Technologies, Vol. 2, No. 4 (2014).
Moroshko, E., Crammer, K.: A Last-Step Regression Algorithm for NonStationary Online Learning. Proceedings of the 16th International Conference on
Artificial Intelligence and Statistics (AISTATS), Scottsdale, AZ, USA, (2013)
451–462.
Singh, A.K., Khatoon, I.S., Muazzam, M., Chaturvedi, D.K.: An Overview of
Electricity Demand Forecasting Techniques, Network and Complex Systems,
Vol.3, No.3 (2013)
81
Demonstrace
Demonstrations
82
83
Doporučovánı́ multimediálnı́ho obsahu s
využitı́m senzoru Microsoft Kinect
Jaroslav Kuchař1,2 and Tomáš Kliegr2
1
Web Engineering Group, Faculty of Information Technology,
Czech Technical University in Prague
[email protected]
2
Dep. of Information and Knowledge Engineering,
Faculty of Informatics and Statistics, University of Economics Prague
[email protected]
Abstrakt Tento přı́spěvek představuje online recommender InBeat.eu.
Systém umožňuje sběr explicitnı́ch a implicitnı́ch zpětných vazeb od
uživatelů, které jsou použity jako ukazatele zájmu. Demonstrace systému
je zaměřena na interakci uživatelů s multimediálnı́m obsahem, konkrétně
se jedná o videa a scénář televiznı́ch zpráv. Videa jsou automaticky
sémanticky anotována s pomocı́ nástroje pro hledánı́ pojmenovaných entit. Důležitou součástı́ sytému je propojenı́ se senzorem Microsoft Kinect,
který umožňuje analyzovat natočenı́ hlavy za účelem reálného vyhodnocenı́ sledovánı́ daného videa. Ze zı́skaných dat jsou odvozena asociačnı́
pravidla představujı́cı́ preference daného uživatele. Tyto pravidla jsou
následně použita pro doporučovánı́.
Keywords: doporučovánı́ obsahu, multimediálnı́ obsah, sémantika, učenı́
preferencı́, asociačnı́ pravidla
1
Úvod
Existujı́ dva druhy zpětné vazby, které lze využı́t jako vstup při učenı́ preferencı́
a následném doporučovánı́ obsahu: explicitnı́ a implicitnı́ zpětná vazba. Explicitnı́ vyžaduje určitou akci uživatele aby vyjádřil úroveň zájmu, např. uloženı́ do
oblı́bených položek či ohodnocenı́ videa. Jako implicitnı́ zpětnou vazbu lze využı́t
např. samotné spuštěnı́ videa nebo čas strávený při sledovánı́ videa. Důležitou
složkou implicitnı́ zpětné vazby může být fyzické chovánı́ uživatele: např. do jaké
mı́ry opravdu dané video uživatel sleduje během jeho přehrávánı́. Pro zı́skánı́ tohoto typu zpětné vazby jsou využı́vány senzory sledovánı́ pohybu očı́ [8], které
ale nejsou běžně dostupné. Alternativou je sledovánı́ pohybu celé hlavy. Ze směru
natočenı́ hlavy lze odvodit, zda uživatel sleduje obrazovku či nikoliv.
InBeat.eu je obecnou webovou službou pro sběr interakcı́ a učenı́ preferencı́, která je v současné době rozvı́jena pro doporučovánı́ obsahu uživatelům
chytrých televizı́ [4]. Tento přı́spěvek popisuje novou verzi InBeat, která využı́vá
běžně dostupného senzoru Microsoft Kinect pro sledovánı́ pohybu celé hlavy.
Ze směru natočenı́ hlavy se odvozuje, zda uživatel sleduje obrazovku či nikoliv. Našı́m předpokladem je, že natočenı́ hlavy je dostatečnou informacı́ pro
84
stanovenı́ zájmu. Jelikož byl Microsoft Kinect navržen pro sledovánı́ pohybu
těla v prostoru, nenı́ schopen spolehlivě poskytovat žádnou detailnějšı́ informaci,
např. mimiku obličeje.
2
Scénář demonstrace
V této části je popsán základnı́ scénář pro demonstraci. Zahrnuje různé druhy
akcı́ osoby a s tı́m souvisejı́cı́ zpětná vazba, která je následně použita pro učenı́
preferencı́.
Uživatel dostane možnost pustit přehrávač simulujı́cı́ rozhranı́ televize. V
rámci demonstrace je předpřipravena sada krátkých videı́ představujı́cı́ch televiznı́ zprávy. Televiznı́ zprávy obvykle obsahujı́ vstupy z různých oblastı́ jako
jsou politika, sport, počası́ či různé zajı́mavosti. Jako ukázkovou osobu mějme
uživatele zajı́majı́cı́ho se o sport, konkrétně fotbalového fanouška.
Televiznı́ zprávy začı́najı́ sadou vstupů o politice. Uživatel je pouze sleduje,
některé části přeskakuje. Jakmile se uživatel dostane ke sportovnı́m událostem,
začne sledovat pozorněji. V okamžiku zprávy o oblı́beném fotbalistovi si ukládá
tuto část videa do oblı́bených položek aby se mohl k tomuto videu později vrátit.
Uživatel má také možnost si video pozastavit a přečı́st si doplňujı́cı́ informace pomocı́ připojeného odkazu. Dalšı́m vstupem jsou informace o možnostech návštěvy
Berlı́na a jeho památek. Tato část videa uživatele nezajı́má a proto začne hrát
hru na tabletu.
Všechny akce i zpětné vazby jsou zaznamenány pomocı́ systému a transformovány na ukazatele zájmu s různou váhou. Po skončenı́ televiznı́ch zpráv má
systém dostatečné množstvı́ dat k naučenı́ pravidel vyjadřujı́cı́ch jeho preference.
Přı́kladem takových pravidel jsou:
“SoccerPlayer(yes) → interest(positive)”,
“Berlin(yes) ∧ Politics(yes) → interest(neutral)”.
Tato pravidla jsou součástı́ profilu daného uživatele a jsou použita k doporučenı́ dalšı́ch videı́ či souvisejı́cı́ho obsahu.
3
Popis dı́lčı́ch kroků
V této části jsou popsány dı́lčı́ kroky, které se dějı́ na pozadı́ při ukázce systému.
Analýza titulků. Důležitým vstupem pro celou službu je sémantický popis
každého přehrávaného videa. InBeat na pozadı́ zpracovává dostupná metadata v
podobě titulků nebo automatické transkripce a posı́lá je k analýze do systému pro
rozpoznávánı́ pojmenovaných entit entityclassifier.eu [1]. Video je rozděleno
na menšı́ jednotky odpovı́dajı́cı́ délce jednoho titulku. Výstupem je seznam detekovaných entit pro každý jednotlivý titulek. Každá entita sebou nese informaci
o svém typu, který je popsán pomocı́ typů DBpedia. Jsou použity technologie
sémantického webu a Linked Data pro popis každého titulku.
Sběr interakcı́. Pro účely demonstrace je použit upravený přehrávač YouTube
s vlastnı́m ovládánı́m. Všechny akce určené pro ovládánı́ přehrávače i výsledky
85
sledovánı́ chovánı́ pomocı́ Microsoft Kinect [6] jsou posı́lány na server InBeat k
následnému zpracovánı́.
Agregace interakcı́. Jelikož během doby zobrazenı́ jednoho titulku může
dojı́t k několika interakcı́m, jsou interakce sloučeny do jednoho výsledného ukazatele zájmu. Pro agregaci jsou použita jednoduchá experimentálně definovaná
pravidla. Např. pokud se uživatel dı́vá na obrazovku, zvyš hodnotu zájmu o 0,3
nebo v pokud uživatel přeskočil část videa, sniž hodnotu o 0,2. Tato pravidla
byla stanovena experimentálně a správné nastavenı́ je předmětem dalšı́ch experimentů a evaluace. Výsledná hodnota je normalizována na interval h−1, 1i a
převedena na jednu z těchto třı́d: negativnı́ h−1, 0), neutrálnı́ h0, 0i , pozitivnı́
(0, 1i.
Identifikace
Popis
userId sessionId pseudo shotId Neymar SoccerPlayer ... Interest
user1 1124541 125
yes
yes
... positive
Tabulka 1. Ukázka formátu pro učenı́ asociačnı́ch pravidel.
Učenı́ preferencı́. Pro učenı́ asociačnı́ch pravidel a preferencı́ uživatele
je použit systém EasyMiner (easyminer.eu). Vstupem pro učenı́ asociačnı́ch
pravidel je tabulkový formát složený předevšı́m z popisu jednotlivých titulků
a výsledné kategorie vyjadřujı́cı́ úroveň zájmu. Přı́klad je uveden v Tabulce 1.
Prvnı́ část definuje identifikátory uživatele, identifikátor sezenı́ a identifikátor
pseudo záběru, což je fragment videa, která odpovı́dá době zobrazenı́ titulku.
Druhou částı́ je popis fragmentu videa pomocı́ pojmenovaných entit a jejich
typů. Poslednı́ část obsahuje výslednou hodnotu mı́ry zájmu, která vznikla agregacı́ interakcı́ zachycených během pseudo záběru. Pro samotné učenı́ preferencı́
v podobě asociačnı́ch pravidel je použita druhá část obsahujı́cı́ popis pro levou
stranou pravidel a mı́ra zájmu pro pravou stranu pravidel.
Doporučovánı́. Vstupem pro doporučovánı́ jsou pravidla představujı́cı́ preference uživatelů a seznam kandidátů pro doporučenı́. Seznam kandidátů může
být stanoven např. pomocı́ jednoduchého vyhledávánı́ pomocı́ klı́čových slov.
Pro každého kandidáta jsou nalezena asociačnı́ pravidla. Nejsilnějšı́ z nalezených
pravidel je použito k přiřazenı́ úrovně zájmu. Sı́la pravidla je určena pomocı́ upraveného klasifikačnı́ algoritmu CBA (Classification Based on Associations)[3].
Následně jsou kandidáti seřazeni podlé přiřazené úrovně zájmu a tento seznam
představuje doporučenı́ pro uživatele.
4
Závěr
Hlavnı́m přı́nosem prezentovaného systému je:
– InBeat.eu je, pokud vı́me, prvnı́m on-line systémem pro doporučovanı́ videı́
použı́vajı́cı́m běžně dostupný senzor Microsoft Kinect pro stanovenı́ úrovně
zájmu uživatele.
– Využitı́ systému pro rozpoznávánı́ pojmenovaných entit a provázánı́ s Linked
Data za účelem sestavenı́ popisu videa. Analýza je provedena jak pro videa,
86
která uživatel sleduje tak i pro videa určená k doporučenı́. Tı́m je zajištěna
jejich tématická souvislost.
Dı́lčı́ části prezentovaného systému byly experimentálně ověřeny, včetně využitı́
Microsoft Kinect pro účely detekce pozornosti uživatele při sledovánı́ videa [7].
Do budoucnosti je v plánu podrobná evaluace celého systému [5]. Anglická verze
článku byla přijata na konferenci PAIS 2014, ECAI [2].
Poděkovánı́.
Náš dı́k majı́ kolegové Julien Leroy a Matei Mancas z University of Mons, kteřı́
nám poskytli software pro sledovánı́ uživatelů pomocı́ Microsoft Kinect. Tato
práce byla podpořena grantem Studentské grantové soutěže ČVUT č. SGS14/104
/OHK3/1T/18, grantem IGA 26/2011 Vysoké školy ekonomické, Praha a projektem FP7-287911 LinkedTV.
English Summary
This paper demonstrates Interest Beat (InBeat.eu) as a recommender system
for online videos, which determines user interest in the content based on gaze
tracking with Microsoft Kinect in addition to explicit user feedback. Content of
the videos is represented using a semantic wikifier. User profile is constructed
from preference rules, which are discovered with an association rule learner.
Reference
1. M. Dojchinovski and T. Kliegr. Entityclassifier.eu: real-time classification of entities
in text with Wikipedia. In ECML’13, pp. 654–658. Springer.
2. T. Kliegr and J. Kuchar. Orwellian eye: Video recommendation with microsoft
kinect. In ECAI. 2014.
3. T. Kliegr, J. Kuchař, D. Sottara, and S. Vojı́ř. Learning business rules with association rule classifiers. In A. Bikakis, P. Fodor, and D. Roman, (eds.) Rules on the
Web. From Theory to Applications, vol. 8620 of Lecture Notes in Computer Science,
pp. 236–250. Springer International Publishing, 2014.
4. J. Kuchař and T. Kliegr. Gain: Web service for user tracking and preference learning
- a smart tv use case. In Proceedings of the 7th ACM Conference on Recommender
Systems, RecSys ’13, pp. 467–468. ACM, New York, NY, USA, 2013.
5. J. Kuchař and T. Kliegr. Bag-of-entities text representation for client-side recommender systems. In First Workshop on Recommender Systems for Television and
online Video (RecSysTV), ACM RecSys. 2014.
6. J. Leroy, F. Rocca, M. Mancaş, and B. Gosselin. 3d head pose estimation for TV
setups. In Intelligent Technologies for Interactive Entertainment, vol. 124, pp. 55–
64. Springer, 2013.
7. J. Leroy, et al. KINterestTV - towards non–invasive measure of user interest while
watching tv. In Y. Rybarczyk, T. Cardoso, J. Rosas, and L. Camarinha-Matos,
(eds.) Innovative and Creative Developments in Multimodal Interaction Systems,
vol. 425 of IFIP Advances in Information and Communication Technology, pp. 179–
199. Springer Berlin Heidelberg, 2014.
8. S. Xu, H. Jiang, and F. C. Lau. Personalized online document, image and video
recommendation via commodity eye-tracking. In RecSys ’08, pp. 83–90. ACM, New
York, NY, USA, 2008.
87
Annota: Pieskovisko pre výskum vyhľadávania,
organizovania a navigácie s využitím sémantiky
v prostredí digitálnych knižníc
Róbert Móro, Michal Holub, Jakub Ševcech, Mária Bieliková
Fakulta informatiky a informačných technológií
Slovenská technická univerzita v Bratislave
Ilkovičova 2, 842 16 Bratislava, Slovensko
[email protected]
Abstrakt. Digitálne knižnice predstavujú rozsiahly a cenný zdroj informácií pre
výskumníkov z rozličných oblastí. Veľkým rozsahom však komplikujú efektívnu
správu, hľadanie informácií a prístup k nim. Demonštrujeme Annotu,
kolaboratívny nástroj na organizovanie a poznámkovanie výskumných zdrojov.
Z hľadiska výskumu je to platforma pre zapojenie a overovanie metód
automatizovaného organizovania kolekcií dokumentov, podpory navigácie
v neznámej doméne, ako aj inteligentného vyhľadávania v dokumentoch.
Prezentujeme aktuálny stav infraštruktúry spolu s výsledkami dosiahnutými pri
tvorbe modelu používateľa a modelu domény využívajúcich ľahkú sémantiku.
Kľúčové slová: Annota, digitálna knižnica, prepojené dáta, model domény,
model záujmov výskumníka, vyhľadávanie, navigácia, organizácia
1
Motivácia a ciele
Pri práci s digitálnymi knižnicami musia výskumníci čeliť viacerým problémom vyplývajúcim najmä z rozsiahlosti informačných priestorov, akými sú napr. vyhľadanie a navigácia k relevantným zdrojom v knižnici, pričom existujúce riešenia tieto problémy
adresujú len čiastočne. K dispozícii je napr. množstvo metadát o článkoch, ich autoroch
a ďalších entitách, tradičné fulltextové vyhľadávanie však tieto súvislosti nevyužíva.
Využitím metadát a sémantiky v nich obsiahnutých pritom vieme používateľovi poskytnúť pokročilejšie možnosti vyhľadávania, vrátane rozpoznania významu dopytu
v prirodzenom jazyku [2]. Časté sú tiež úlohy vyhľadávania, ktorých charakter je prieskumný, ako je napr. oboznámenie sa s novou doménou [5], čo je typické pre scenár
začínajúceho výskumníka, ktorého podpora v súčasných digitálnych knižniciach chýba.
Samostatný problém predstavuje organizácia (osobnej) kolekcie dokumentov. Manuálne zorganizovať väčšiu kolekciu dokumentov je časovo náročné; organizáciu je
tiež potrebné priebežne upravovať, aby čo najlepšie vyhovovala aktuálnemu stavu celej
kolekcie dokumentov. Výhodu preto majú inovatívne spôsoby (polo)automatickej organizácie pomocou štruktúr, akými sú napr. fazetové stromy [9].
88
V príspevku demonštrujeme platformu Annota (annota.fiit.stuba.sk) [1, 4],
ktorá slúži výskumníkom ako: 1) nástroj uľahčujúci prácu s výskumnými zdrojmi
a spoluprácu výskumníkov nad nimi, 2) platforma obsahujúca infraštruktúru pre realizáciu a overovanie výskumných metód. Naším hlavným cieľom je podpora efektívnej
práce výskumníka s informačnými zdrojmi prístupnými prostredníctvom webových digitálnych knižníc poskytnutím viacerých možností organizovania a poznámkovania kolekcie článkov, inteligentného vyhľadávania v nich, ako aj rôznych foriem podpory navigácie v neznámej doméne. Kladieme pritom veľký dôraz na podporu spolupráce medzi výskumníkmi (či už je to vzťah školiteľ-študent, alebo skupina výskumníkov).
2
Annota – čo poskytuje výskumníkom
Základnou funkcionalitou Annoty je vytváranie a organizácia záložiek na články v digitálnych knižniciach. Tieto je možné pomocou webového rozhrania ďalej zdieľať
v skupinách (napr. študent so svojím školiteľom), kde je o nich možné diskutovať (pozri
obr. 1), prípadne je možné priamo odporučiť dokument nejakému používateľovi (napr.
školiteľ svojmu študentovi). Podporujeme digitálne knižnice z domény informatiky
(ACM DL, IEEE Xplore či Springer Link), záložku je však pomocou nami poskytnutého rozšírenia do prehliadača možné vytvoriť na ľubovoľnej webovej stránke.
Obrázok 1. Ukážka webového rozhrania Annoty – používatelia môžu organizovať
svoje zdroje pomocou tagov (1) a zdieľať ich v skupinách, ktoré môžu jednoducho
manažovať (2). Nad zdieľanými zdrojmi (záložkami) je možné diskutovať (3).
Annota spracúva metadáta navštívených dokumentov, pričom extrahuje napr. názov,
autorov, rok vydania, názov publikácie (časopisu alebo zborníka konferencie) či kľúčové slová zadané autormi. Takto spracované dáta transformujeme do podoby RDF
s využitím štandardnej ontológie BIBO (bibliontology.com) , čo vytvára priestor
89
pre ich obohatenie pomocou prepojených dát na webe. V súčasnosti naša dátová sada
obsahuje vyše 50 000 vedeckých článkov, okolo 230 000 autorov, 8 000 publikácií
a 130 000 kľúčových slov zadaných autormi článkov. Dátovú sadu sme zverejnili na
výskumné účely (annota.fiit.stuba.sk/dataset) a bližšie ju opisujeme v [3].
Metadáta získavame okrem extrakcie aj priamo od používateľov v podobe značiek (tagov) a poznámok (komentárov v texte). Používatelia doteraz pridali k dokumentom
v Annote okolo 2 800 unikátnych tagov a okolo 1 700 poznámok.
Zo zaznamenanej aktivity výskumníka v digitálnych knižniciach (čo vyhľadáva, aké
dopyty používa a aké dokumenty navštevuje) vytvárame model jeho záujmov v podobe
hypergrafu, v ktorom je viacero typov prepojení: medzi používateľom (výskumníkom)
a kľúčovými slovami modelujúcimi jeho záujem, medzi kľúčovými slovami navzájom,
čo zachytáva ich vzájomný súvis a medzi používateľmi (výskumníkmi), čo vyjadruje
vzťahy ich podobnosti. Tento model je ľahko rozšíriteľný o nové typy vzťahov a je
možné ho využívať pri prispôsobovaní systému používateľom, ako aj pri odporúčaní.
Annota zahŕňa komplexnú infraštruktúru, ktorá nám umožňuje overovať rôzne metódy a prístupy. Jej hlavnou výhodou je popri konfigurovateľnom a ľahko rozšíriteľnom
modeli domény a používateľa podpora rôznych experimentálnych scenárov s využitím
A/B testovania. To nám umožňuje nastaviť, čo jednotliví používatelia v rámci testovacích scenárov uvidia, ale aj aké vzťahy (z modelu používateľa a domény), sa v nich
zohľadnia. Zameriavame sa pritom najmä na metódy organizácie, navigácie a vizualizácie informačného priestoru digitálnej knižnice a vyhľadávanie v ňom.
Experimentovali sme s organizáciou dokumentov pomocou dôležitých slov vizualizovaných v podobe klasického zoznamu, ako aj v oblaku, ktorý pozostával z používateľských tagov a automaticky extrahovaných kľúčových slov. Okrem frekvencie výskytu slova sme zohľadňovali aj jeho používanie v čase, čo odrážalo jeho aktuálnu dôležitosť [6]. Na hierarchickú organizáciu kolekcie dokumentov podľa ich metadát sme
navrhli metódu fazetového stromu, ktorý umožňoval aj tvorbu ad-hoc štruktúr pre podporu aktuálnej úlohy (napr. vyhľadanie konkrétneho článku v kolekcii) [7].
Overili sme tiež metódu na vyhľadávanie súvisiacich dokumentov, v ktorej sa používali poznámky ako indikátory záujmu používateľa o konkrétne časti dokumentu [8].
Na podporu prieskumného vyhľadávania sme navrhli metódu navigácie pomocou
navigačných vodítok, t. j. slov v sumarizácii dokumentu, ktoré slúžia ako prepojenia na
relevantné dokumenty. Experimentovali sme s rôznou vizualizáciou vodítok (v súhrne
dokumentu, pod súhrnom, v oblaku slov), pričom sme využili aj zariadenie na sledovanie pohľadu, aby sme zistili, ako používatelia s navrhnutým rozhraním interagujú.
Údaje zo sledovania pohľadu pritom možno použiť nielen na overovanie navrhnutých metód a rozhraní, ale aj ako ďalší zo zdrojov implicitnej spätnej väzby a zlepšiť
tak modelovanie záujmov výskumníkov. Otvorené výskumné problémy vidíme aj
v ďalšom využití doménovo-špecifických metadát pre modelovanie domény, akými sú
napr. citácie, či využitie aktuálneho kontextu výskumníkov pre personalizovanú navigáciu a odporúčanie v digitálnej knižnici.
Poďakovanie. Táto publikácia vznikla vďaka čiastočnej podpore projektov
VG1/0675/11, APVV-0208-10 a projektu v rámci OP Výskum a vývoj pre projekt
ITMS 26240220084, spolufinancovaný zo zdrojov Európskeho fondu regionálneho
90
rozvoja. Autori by sa radi poďakovali všetkým, ktorí v uplynulých dvoch rokoch používali systém Annota, najmä členom výskumnej skupiny PeWe (pewe.fiit.stuba.sk) za
mnohé diskusie a nápady, ako aj študentom priamo sa podieľajúcim na jeho vývoji –
Jurajovi Kostolanskému, Martinovi Liptákovi, Samuelovi Molnárovi, Romanovi Burgerovi a Petrovi Mackovi.
English Summary
Annota: Sandbox for Research in the Fields of Semantics-Based Search, Organization
and Navigation in the Domain of Digital Libraries.
Digital libraries represent a vast and valuable source of information for researchers in
many domains. Nevertheless, their large extent poses complications when trying to effectively organize, access, and search the available information. We demonstrate Annota – a collaborative tool for organizing and annotating research resources on the Web.
From the researcher’s point of view it is a platform for realization and evaluation of
methods for automatic organization of collections of documents, supporting navigation
in an unknown domain, as well as intelligent searching in documents. We present the
current state of the infrastructure together with the results we achieved while creating
the user and domain models utilizing the lightweight semantics.
Literatúra
1. Bieliková, M., Ševcech, J., Holub, M., Móro, R.: Annota – poznámkovanie dokumentov
v prostredí digitálnych knižníc. In: DATAKON '13: Proc. of the Annual Database Conference, pp. 143–152. VŠB-Technická univerzita, Ostrava. (2013)
2. Chong, W., Xiong, M., Zhou, Q., Yu, Yong.: PANTO: A portable natural language interface
for ontologies. In: LNCS 4519: The Semantic Web: Research and Applications, pp. 473–
487. Springer, Berlin, Heidelberg. (2007)
3. Holub, M., Ševcech, J., Móro, R., Bieliková, M.: Annota: Budovanie prepojenej dátovej
sady dokumentov a poznámok. In: WIKT '13: Proc. of the 8th Workshop on Intelligent and
Knowledge Oriented Technologies, pp. 13–18. Centre for Inf. Tech., Košice, (2013)
4. Holub, M., Móro, R., Ševcech, J., Lipták, M., Bieliková, M.: Annota: Towards enriching
scientific publications with semantics and user annotations. D-Lib Magazine (to appear)
5. Marchionini, G.: Exploratory search: From finding to understanding. Communications of
the ACM, 49(4), pp. 41–46. (2006)
6. Molnár, S., Móro R., Bieliková, M.: Trending words in digital library for term cloud-based
navigation. In: SMAP '13: Proc. of the 8th Int. Workshop on Semantic and Social Media
Adaptation and Personalization, pp. 53–58. IEEE CS, Washington, DC. (2013)
7. Móro, R., Bieliková, M., Burger, R.: Facet tree for personalized web documents organization. In: WISE '14: Proc. of 15th Int. Conf. on Web Inf. Systems Engineering, LNCS 8786,
pp. 372–387. Springer, Berlin, Heidelberg. (2014)
8. Ševcech, J., Móro, R., Holub, M., Bieliková, M.: User annotations as a context for related
document search on the web and digital libraries. Informatica, 38(1), pp. 21–30. (2014)
9. Zhao, J., Drucker, S.M., Fisher, D., Brinkman, D.: TimeSlice: Interactive faceted browsing
of timeline data. In: AVI '12: Proc. of the Int. Working Conf. on Advanced Visual Interfaces,
pp. 433–436. ACM Press, NY. (2012)
91
Askalot: odpovedanie otázok v komunite študentov a ich
učiteľov
Ivan Srba a Mária Bieliková
Ústav informatiky a softvérového inžinierstva
Fakulta informatiky a informačných technológií, Slovenská technická univerzita,
Ilkovičova 2, 842 16, Bratislava, Slovensko
{meno.priezvisko}@stuba.sk
Abstrakt. S rozvojom Webu 2.0 neustále narastá aj popularita systémov, ktoré
sú založené na obsahu vytváranom priamo používateľmi. Jedným typom takýchto systémov sú systémy pre odpovedanie otázok v komunitách (angl.
Community Question Answering - CQA), ktoré poskytujú možnosť pýtať sa na
rozličné otázky a zároveň poskytovať odpovede na otázky ostatných používateľov. Medzi najpopulárnejšie CQA systémy patria Yahoo! Answers alebo Stack
Overflow. Aj napriek mnohým pozitívnym výsledkov CQA systémov na otvorenom Webe, ich potenciál nebol zatiaľ plne preskúmaný v rámci vzdelávacích
organizácií. V príspevku opisujeme vzdelávací CQA systém Askalot, ktorý je
špecificky určený pre podporu zdieľania znalostí medzi študentmi a ich učiteľmi. Dlhodobý experiment počas jedného semestra s viac ako 600 používateľmi
preukázal úspešnosť využitia konceptov CQA systémov v doméne vzdelávania.
Kľúčové slová: Askalot, CQA, zdieľanie znalostí, kolaboratívne vzdelávanie
1
Motivácia a ciele
Kolektívna inteligencia (angl. Collective Intelligence) je koncept, ktorý v súčasnosti
môžeme sledovať v mnohých aplikáciách Webu 2.0 postavených na zdieľaní znalostí
v komunitách [1]. Typickými príkladmi kolektívnej inteligencie na webe sú najmä
wiki systémy (napr. Wikipedia) alebo systémy pre sociálne značkovanie (napr.
del.icio.us). V posledných rokoch sa medzi populárne systémy založené na kolektívnej inteligencii zaradili aj systémy pre odpovedanie otázok v komunitách (angl.
Community Question Answering - CQA). CQA systémy môžu byť tematicky neobmedzené ako je napr. Yahoo! Answers a Quora alebo naopak zamerané na konkrétnu
oblasť ako je napr. Stack Overflow pre otázky z oblasti počítačových systémov.
Narastajúci počet používateľov a nimi vytváraného obsahu spôsobil, že CQA systémy sa v poslednej dobe stali predmetom výskumu mnohých štúdií zameraných predovšetkým na adaptívnu podporu používateľov. Napriek veľkému množstvu výskumných príspevkoch, len malá časť z nich sa zaoberá možnosťou využitia ich konceptov
v organizačnom prostredí. Špeciálne vzdelávacie organizácie predstavujú priestor,
kde majú koncepty CQA systémov potenciál významne zefektívniť zdieľanie znalostí
ako medzi študentmi navzájom, tak aj pri komunikácií s učiteľom [2].
92
Využitie CQA systémov vo vzdelávacom prostredí však nie je priamočiare. Štandardné otvorené CQA systémy nie sú na podporu vzdelávania vhodné. Niektoré
z CQA systémov priamo vo svojich pravidlách zakazujú pýtanie sa otázok súvisiacich
so školskými zadaniami (napr. Stack Overflow), čoho dôsledkom členovia danej komunity často na takéto otázky odmietajú odpovedať [3]. Navyše organizačné prostredie má viacero špecifík, ktoré na jednej strane sťažujú proces odpovedania na otázky
(napr. vyššia pravdepodobnosť preťaženia expertov), na druhej strane poskytujú nové
príležitosti (napr. prítomnosť učiteľa, možnosť pýtať sa v kontexte danej organizácie).
V našom projekte sme sa rozhodli stavať na týchto špecifikách vzdelávacieho prostredia a zrealizovať prvý univerzitný vzdelávací CQA systém nazvaný Askalot1,
ktorý špecificky podporuje vzdelávanie študentov v ich komunite naprieč celou organizáciou (fakultou). Existujúce CQA systémy v doméne vzdelávania sa zameriavajú
len na odpovedanie otázok v otvorených komunitách buď mimo organizácií, napr. [4],
alebo v organizáciách, ale iba v rámci jedného predmetu, napr. [2], [5].
2
Askalot – čo poskytuje a ako funguje
CQA systém Askalot poskytuje podporu špecificky pre dve skupiny používateľov,
ktorými sú študenti a učitelia. V nasledujúcich častiach predstavíme najdôležitejšie
funkcie, ktoré podporujú ich vzájomnú spoluprácu a komunikáciu.
Podpora spolupráce študentov. Jadrom celého systému je funkcionalita, ktorá
podporuje samotný proces odpovedania na otázky. Študenti majú možnosť vložiť do
systému novú otázku. Pri vytváraní otázky je potrebné zvoliť jej kategóriu (kategórie
reflektujú formálnu štruktúru výučby, napr. predmety a ich organizačné rozdelenie na
prednášky, cvičenia atď.) a značky (opisujú tému otázky, napr. kľúčové slová pre opis
problému atď.). V opise otázky je možné použiť ako pokročilé formátovanie textu,
zvýrazňovanie zdrojového kódu, tak aj referencovanie na iné otázky a používateľov.
Po vytvorení otázky začína fáza jej odpovedania (obr. 1). Každý študent má možnosť poskytnúť návrh odpovede, príp. hlasovať za už existujúce odpovede. Rovnako
je možné hlasovať za zaujímavé otázky a označiť ich ako obľúbené. Študenti majú
možnosť k jednotlivým otázkam ako aj odpovediam diskutovať formou komentárov
(napr. vyžiadať si podrobnejšie informácie o riešenom probléme).
Aby bolo možné efektívne sledovať aktivity v systéme, študenti majú možnosť
sledovať zaujímavé otázky a následne sú o zmenách v nich informovaní prostredníctvom komplexného notifikačného systému. Askalot navyše okrem funkcionality pre
samotný proces odpovedania na otázky stavia aj na samotnej komunite študentov.
Systém im poskytuje viacero sociálnych a motivačných prvkov ako je napr. profil
s osobnými informáciami alebo možnosť nasledovať aktivitu ostatných používateľov.
Podpora zapojenia učiteľov. Učitelia majú možnosť v systéme vykonávať rovnaké akcie ako študenti, t.j. rovnako môžu vytvárať otázky, vkladať odpovede
a hlasovať (akýkoľvek obsah vytvorený učiteľmi je vizuálne zvýraznený). Učitelia
majú navyše možnosť explicitne ohodnotiť otázky a odpovede študentov na 5-
1
Prezentačná verzia aplikácie je dostupná na https://askalot.fiit.stuba.sk/demo
93
bodovej stupnici s voliteľným komentárom. Učiteľ má tiež k dispozícii podrobné
štatistiky, čo mu umožňuje získať prehľad o aktuálnom stave v systéme a zapojení
jednotlivých študentov.
Obr. 1. Príklad otázky s označenou najlepšou odpoveďou a hodnotením učiteľa.
3
Experimentálne nasadenie
Askalot je vytvorený ako webová aplikácia, ktorá poskytuje responzívne používateľské rozhranie, čím sa stáva jednoducho použiteľný nielen na osobných počítačoch, ale
aj na mobilných zariadeniach. Vývoj celého systému je riadený testami a poskytovaná
funkcionalita je pokrytá 300 akceptačnými a jednotkovými testami.
Systém Askalot bol experimentálne nasadený na Fakulte informatiky
a informačných technológií Slovenskej technickej univerzity v Bratislave počas troch
mesiacov letného semestra v ak. roku 2013/2014. Do pilotného overenia sa zapojilo
viac ako 600 študentov v bakalárskom stupni štúdia a ich učiteľov. Počas experimentálneho nasadenia do systému vložili 180 otázok a 250 odpovedí súvisiacich so štyrmi
predmetmi, ktorých učitelia sa aj aktívne zapájali do spolupráce so študentmi.
Aktivita študentov v systéme v kombinácii s vysokou kvalitou otázok a odpovedí
preukázala úspešnosť využitia konceptov CQA systémov v organizačnom
a vzdelávacom prostredí. Viaceré otázky riešili špecifické problémy súvisiace
s organizáciou predmetu, ktoré sa tak stali dostupné pre všetkých študentov.
Počas nasledujúceho akademického roku plánujeme rozšíriť systém pre všetky
predmety v rámci fakulty. Zároveň sme v rámci systému vytvorili infraštruktúru, ktorá umožňuje jednoduchú realizáciu nových funkcií a ich experimentálneho overenia.
Tá dáva príležitosť pre zapojenie ďalších výskumných projektov, napr. v oblasti adaptívneho odporúčania a personalizácie. Tiež plánujeme prepojiť Askalot so vzdelávacími systémami na našej fakulte: ALEF [6], Peoplia [7] a PopCorm [8].
94
Poďakovanie. Táto práca bola čiastočne podporená projektmi VG1/0675/11, Kultúrna a edukačná grantová agentúra KEGA 009STU-4/2014 a APVV-0208-10.
Autori by radi poďakovali študentom tímu naЯuby – Rastislav Dobšovič, Marek
Grznár, Jozef Harinek, Samuel Molnár, Peter Páleník, Dušan Poizl a Pavol Zbell,
ktorí systém Askalot realizovali v rámci predmetu Tímový projekt v inžinierskom
štúdiu. Poďakovanie patrí aj učiteľom Michalovi Barlovi a Valentinovi Vranićovi,
ktorí sa počas pilotného nasadenia systému Askalot aktívne zapájali do procesu odpovedania na otázky a tiež poskytli cennú spätnú väzbu k návrhu a realizácii systému.
English Summary
Community Question Answering (CQA) systems, such as Yahoo! Answers or Stack
Overflow, represent an interesting subject of research. In spite of that, their potential
in organizational and educational environments is only about to be discovered. We
present a proposal and implementation of the first faculty-wide educational CQA
system named Askalot. Askalot utilizes an organization context and educational specifics in order to provide students as well as teachers with an appropriate educational
and collaborative support. The system was experimentally evaluated during the summer term at Faculty of Informatics and Information Technology, Slovak University of
Technology in Bratislava. More than 600 users participated in the evaluation and
created 180 questions and 250 corresponding answers. The obtained results confirmed
the potential of CQA concepts in the educational domain.
Literatúra
1. Lévy, P.: Collective Intelligence: Mankind’s Emerging World in Cyberspace. Cambridge,
MA, USA: Perseus Books, (1997)
2. Aritajati, C., Narayanan, N. H.: Facilitating students’ collaboration and learning in a
question and answer system. In Proc. of Conf. on Computer supported cooperative work
companion - CSCW ’13, pp. 101–106 (2013)
3. Asaduzzaman, M., Mashiyat, A. S., Roy, C. K., Schneider, K.: Answering questions about
unanswered questions of Stack Overflow. In In Proc.of the 10th Working Conf. on Mining
Software Repositories (MSR), pp. 97–100 (2013)
4. Ram, A., Ai, H., Ram, P., Sahay, S.: Open Social Learning Communities. In Proc. of the
Int. Conf. on Web Intelligence, Mining and Semantics - WIMS’11 (2011)
5. Barr J., Gunawardena, A.: Classroom salon: a tool for social collaboration. In Proc. of the
43rd ACM Symposium on Comp. Science Education - SIGCSE ’12, pp. 197–202 (2012)
6. Šimko, M., Barla, M., Bieliková, M.: ALEF: A Framework for Adaptive Web-Based
Learning 2.0. In Proc. of IFIP Advances in Information and Communication Technology,
Vol. 324, pp. 367-378. Springer, Heidelberg (2010)
7. Tvarožek, J. Bootstrapping a Socially Intelligent Tutoring Strategy. Information Sciences
and Technologies Bulletin of the ACM Slovakia, Vol. 3, No. 1, pp. 33-41 (2011)
8. Srba, I. Collaboration Support by Groups Creation in Educational Domain. Information
Sciences and Technologies Bulletin of the ACM Slovakia, Vol. 4, No. 2, pp. 62-64 (2012)
95
Krátké přı́spěvky
Short Papers
96
97
Emission prediction of a thermal power plant
Juraj Jurčo
Lubomír Popelínský
KD Lab FI MU
KD Lab FI MU
[email protected]
Karel Křehlík
OT Energy Services a.s., Třebíč
[email protected]
[email protected]
Abstract. The task of prediction of emissions is very challenging and also important. We argued that simple learning techniques that learn only one predictive model are not powerful enough in more complex situations. Better predictive results can be achieved by splitting data into smaller parts and for each part
to learn a sub-model. We proposed and tested a novel method that combines
meta-learning and ensemble learning. We showed that there is significant increase in prediction accuracy.
Keywords: meta-learning, model prediction, boiler, NOx
1
Introduction
The production of emission is nowadays huge problem around the world. Latest results
published by Intergovernmental Panel on Climate Change (IPCC) group have discovered
that human influence is the dominant cause of the observed warming with confidence of
95% [1]. The main contributor of pollution is burning fossil fuel, including coal.
Reduction of emissions produced by humans together with preserving current power
consumption standards is hard to reach without an extra financial aid.
Description of combustion. Emission produced by boiler is not only carbon dioxide
but there are various types of exhalations. During incomplete combustion carbon monoxide (CO) is produced which is poisonous for living beings. Other dangerous gas produced
is nitrogen oxide (NOx) that destroys ozone layer. There are various ways how to decrease
these pollution causing exhalations. One of the ways are secondary methods for reduce
NOx emission. First of them is selective non catalytic method (SNCR), which through the
reagent spraying system (NH3 or CH4N2O) into the optimal temperature window, reduces
NOx emission. SNCR method has negative aspects, which are residual NH 3 emissions in
flue gas in the form of NH3 gas and solid particles after sulfur and NH3 reaction. Second
way is selective catalytic method (SCR), which use catalyst for the reduction of the NO x
emission. This is more suitable for environmental but also more expensive investment and
high operational costs.
Optimization of combustion. The elementary (primary) way for the NOx emission reduction is improved combustion. There are several ways, from completely rebuilding
combustion system (high investment costs), to improve existing control system algorithms, in order to improve parameters of combustion system.
This main idea of better combustion, which has been elaborated in this paper, is to
build the mathematical model from historical data. This model is then used for emission
prediction and that knowledge is further exploited for finding combustion optimization
criteria, i.e. for the finding better control curves. Implementation of an improved version
98
of the control system is the final step. There are several ways how to validate such a system. First of them is to test it at the real technology what requires a very good knowledge
of the behavior of technology. The other way of testing is indirect - on CFD models. CFD
models can provide very good insight into technology behavior (combustion in boiler).
We can also easily make several tests to check the optimal of the control system.
Machine learning approach. If we were able from historical data to predict emissions
in future it would be easier to optimize them. The focus of our work is to find model for
emission prediction with support of machine learning techniques. For model validation we
use historical data that were not used for learning model. We implemented this method on
one of six boilers of coal power plant Melnik I. There are six pulverized granulation boilers with hammers mill. By optimization there are no extra fees required and burning is
more economy so overall budget may be reduced. This solution is also nature-friendly
because we can optimize tradeoff between exhalations and energy production.
The structure of the paper is the following. In Section 2 we describe the raw data and
explain basic data transformation. In Section 3 we introduce a novel method for emission
prediction based on learning multiple models. The results are discussed in Section 4. We
conclude with concluding remarks in Section 5.
Related work. Prediction in time series is a common task in time series analysis [2, 3].
A use of Support Vector Machines for predicting NOx, the flue gasses emitted by power
generation plant is solved in [4]. Staviri et al. created mathematical model for prediction of
emissions of a coal boiler where they reached constant difference between their mathematical model and real values 1 - 1.8% [5].
Fig. 1. Course of emissions of NOx
2
Preliminary analysis and data transformation
2.1
Data description and baseline
We used real data from a coal power plant. Boilers in this power plant are pulverized,
granulation boilers with hammer mills. Data contained 26 input attributes about temperature
of combustion, air pressures, air flows, settings of flaps and output values of flue gases O 2,
CO, NOx and SO2. If the process of combustion is varying over time, i.e. the process may
be influenced by different factors, the task becomes more difficult. There are at least two
different processes in data. You can see them in the Fig. 1– one between time A and B, and
C and D as linearly increasing amount of emissions, and second one as all other data. The
first process determines state when sensors are out-of-order or boiler broken.
2.2
Mean values of input attributes
Some of 26 attributes can be aggregated because they measure similar input attributes,
e.g. Setting of the secondary air inlet 1 – 4; Primary air flow, corresponds to the fuel
supply from the mill 1 -- 4 (setpoint); Current motor mill; Setting of the secondary air inlet
99
Order
Attribute name
1
Temperature of flue gas L+R
2
Steam power of boiler (steam pressure in the steam piping)
3
Air pressure before central air fun
4
Primary air flow intake (mill 1 – 4)
5
Current motor mill 1 – 4 (setpoint)
6
Setting of the secondary air inlet flap number 1 – 4
7
Setting of over fire air inlet valve number 1 – 2
8
Setting of flaps of core air intake, fuel supply of mill 1 – 4
9
Setting of flaps of tertiary air supply number 1 – 2
10
Air pressure behind LUVO2 L+P
11
NOx in the flue gas
valve number 1 -- 4 and so on).
Because of the similarity of
attributes we transformed data and
computed new features -- mean
values of similar attributes. Thus we
received a dataset with ten input
attributes and one predictive value –
NOx. This transformation resulted
with more robust description of the
combustion process. The list of new
input attributes is in the Fig. 2.
Fig. 2. List of new input attributes
2.3
Data transformation
The combustion is not impulsive. It is rather a process that requires some time before
the effect of input changes can be observed. Dataset in its original form was composed of
single-point values. Based on experience, it is worth to consider 10 minutes interval for
prediction. As it takes time while a setting of boiler takes effect - about 5 minutes in our
case - we predict, from 10 minutes interval, the emissions with 5 minutes delay. To consider that 10 minutes history for analysis we computed six statistics from this time window mean value, standard deviation, slope of regression line, Root Relative Squared Error
(RRSE) from regression line and two quartiles – lower and upper, see Fig. 3. RRSE, sometimes also referred as Root Mean Squared Deviation, is a measure of the differences between predicted values and the observed values. Quartiles are values that split sorted data
into four intervals. Mean of the lower quartile is that 25% of values are lower than this
value; Upper quartile means that 75% of data are lower than this value. Those statistics
were computed only for input attributes; there were no statistic window for target variable.
Fig. 3. Computation of 10 minutes statistics and 5 minutes class shift
Then we learned various classifiers on this dataset. As a machine learning tool we used
Weka [5]. We split data into training and test set in 66:34 ratio so that two thirds of data
were used for training and the rest for validation of the learned model. As a learning algorithm we used REPTree, the fast regression learner that builds pruned regression tree using
information gain. For pruning it uses reduced-error pruning. To increase efficiency it sorts
values of numerical attributes only once. When applied REPTree to the data described
above the correlation of a new model with mean dataset was 0.53. When comparing with
correlation 0.42 on original data – i.e. without aggregation – there was increase of correlation about 11%. As shown before, the transformations of the dataset improved results of
prediction. When we considered time window and class attribute shift as it was proposed by
domain expert, error prediction was lowered. As we can observe there are some improvements from previous results. Unfortunately these improvements are not sufficient enough
and they are not useful for real prediction of emissions from boiler’s settings.
100
3
Learning multiple models
This led us to idea to learn not only one model but more of them. Models would be
learned on shorter time period, e.g. 1 or 3 hours. Such models could predict emissions better because they would be used only for prediction on data that would be similar to those on
what they were trained. The method lies in splitting training set into smaller parts of the
same length called bins. The length of bins was estimated to preserve real world situation.
For our tests we used 1, 3, 6, 12 and 24 hours. A new model for each time interval was
learned and tested separately. The best results were obtained for interval of length 1 hour so
in the rest of the paper we will consider just this bin size. Separate models were trained for
all bins in the training set. The size of the whole training set was 3 weeks and number of
bins and models trained here was 504 (3 weeks × 7 days × 24 hours). All trained models
were stored in memory. The phase of training of all modes was followed by testing phase.
The test set was of size 9 days and it was also split into bins of the same size like training
set. Total number of tested bins was 216. On each of those 216 bins was tested all 504
models built in learning phase. Then from all models that have been tested the best one was
selected. For the real application the selection of the best model could be based on metalearning technique [6]. There are two main streams in meta-learning. One uses metacharacteristic of data (e.g. the number of examples or simple statistics about the data) and
aims at generalization of behavior of learners in order to predict the best one for a new data
set that has been described with the same meta-characteristics. The other is based on landmarking [7] and its variant, sampling-based landmarking. The idea of sampling-based
landmarking [8] is simple, from performance (usually from accuracy) of a collection of
learning algorithms on smaller portions of data to predict which algorithm will perform the
best on the whole data set. It has sense only in the case of prediction of the meta-learner
being reliable and the price or landmarking (usually the training time) being significantly
smaller than testing every algorithm from the collection on the full data. In the time when
we would like to predict emissions we already know the recent past history. When we use
bin size of one hour, this history is also size of one hour. Then we compute meta-attributes
of this recent history. We look into the past, where the boiler already was in the most similar state. We train model for prediction on the following bin of this past bin and we use it
for the prediction of following values.
Fig. 4. Selection of model based on meta-attributes
The proposed method is illustrated in the Fig. 4. 0For predicting emissions of test bin Pj
we need to find the closest model for the previous interval Pj-1 – let it be Bi-1. Now we use
model that had the best performance on the bin Bi. The goal now is to find a method how to
choose the best models. A choice of the best N models is based on similarity of training and
test set (using statistical characteristics of two bins) and ensemble classification.
4
Results
The best result was obtained when splitting training set into bins of one hour size as
mentioned. The selection of the proper model for prediction helped to increase correlation
and also to lower error of the prediction (RRSE). The best average correlation was 0.66
with standard deviation 0.16. More detailed information – all correlations for all bins – is in
101
the Fig. 5. Axis X represents time (bins) and axis Y correlation. Horizontal line represents
value of 0.75 that is some kind of border line for real application. When we compare it to
classical method with correlation of 0.53 (see Section 2) the increase reached 13%.
Fig. 5. Correlation (left) and RRSE (right) of predicted values for 10 minutes statistics and 5
minutes class shift
Mean value is around 25.8% with standard deviation of 25.9. From the graph it is clear
that for some bins there was no one good model trained and the error is quite high (value of
RRSE over 50%). Our dataset was limited to 30 days but in the case of longer history there
could be trained more models that would fit better. Results of this method were better than
classical method of values prediction but still not satisfying. The character of the dataset is
that there is difference between sampling frequency and preprocessing of input attributes
and class attribute. Input attributes are measured with frequency of one second while class
attribute in frequency of one minute. This difference was equalized by computing moving
average of input attributes to one minute. The class attribute remain in raw values. It means
that this attribute may contain noise and it could confuse classifiers and make prediction
harder. To lower an effect of noise in class attribute – NOx – we computed 10 minutes interval of those values. The learned function now predicts mean value of NOx on 10-minutes
interval. A result for this data was even better; the mean correlation increased to value 0.77
and the standard deviation has lowered to 0.11. Results for all tested bins are shown in the
Fig. 6.
Fig. 6. Correlation (left) and RRSE (right) of predicted values for 10 minutes statistics and 10
minutes average value with 1 minute class shift
Computation of the mean value of class attribute had also impact on RRSE. From previous value 25.8 it decreases to 18.6 with also lower standard deviation of 21 with comparison to previous 25.9. As we can see there are still some bins for that prediction was not as
successive. But results show that noise present in class attribute can be partially removed by
computation of mean value. We provided also some additional tests, with computation of
shorter mean value of class attribute, but results were worse. Comparison of real values
with the values predicted by the best classifier is shown in the Fig. 7.As we can see predicted values approximates data quite good.
Fig. 7. The best real predicted values for 10 minutes statistics and 10 minutes average value
with 1 minute class shift
102
5
Conclusion and future work
The task of prediction of emissions is very challenging and also important. We argued
that comparisons to the classical simple learning methods that learn only one predictive
model are not powerful enough in more complex situations. The best correlation achieved
by classical methods was 0.42 or 0.53 respectively for mean values of attributes. Better
predictive results can be achieved by splitting data into smaller parts and where for each
part to learn a sub-model. We proposed a novel method that combines meta-learning and
ensemble learning. We showed that there is significant increase in prediction accuracy. By
this method we achieved even better results and the increase was quite significant. The
mean value of correlation for 10 minutes statistical window and 5 minutes class shift was
0.66 and when we predicted also 10 minutes mean value of output emissions we reached
correlation 0.77 with original values. The proposed novel method for prediction of emissions of the boiler lighted the path how prediction of values can be done. During our analysis were used data contained both states of the boiler as described in Chapter 2. It is hard to
learn one classifier that is able to classify well both processes. It is a reason why it would be
better first to recognize a current process and then learn a classifier for that particular part of
the time series.
6
Acknowledgements
The work has been supported by Faculty of Informatics, Masaryk University in Brno,
Czech Republic. We also thank to all members of Knowledge Discovery Lab FI MU for
fruitful discussions and to Rastislav Mirek for data cleaning and to Zdeňka Sitová for preliminary experiments.
7
References
1. IPCC, 2013: Summary for Policymakers. In: Climate Change 2013: The Physical Science Basis. Contribution of Working Group I to the Fifth Assessment Report of the Intergovernmental Panel on Climate Change [Stocker, T.F., D. Qin, G.-K. Plattner, M. Tignor, S.K. Allen, J. Boschung, A. Nauels,
Y. Xia, V. Bex and P.M. Midgley (eds.)]. Cambridge University Press, Cambridge, United Kingdom
and New York, NY, USA.
2. Han, J., and M. Kamber. 2011. Data Mining: Concepts And Techniques: Concepts And Techniques.
3. Mitsa, Theophano. 2010. Temporal Data Mining. 1st ed. Boca Raton, FL: Chapman & Hall/CRC.
4. Saiful Idzwan B., Chen Chai Phing, Tiong Sieh Kiong. 2014. Prediction Of Nox Using Support Vector Machine For Gas Turbine Emission At Putrajaya Power Station, Journal of Advanced Science and
Engineering Research Vol 4, No 1 March (2014) 37-46
5. Staviri, V.-F.; Eduard, G. Comparative study on the calculation of nitrogen oxide emissions, Electrical
and Power Engineering (EPE), 2012 International Conference and Exposition on, Issue Date: 25-27
Oct. 2012
6. Mark Hall, Eibe Frank, Geoffrey Holmes, Bernhard Pfahringer, Peter Reutemann, Ian H. Witten
(2009); The WEKA Data Mining Software: An Update; SIGKDD Explorations, Volume 11, Issue 1.
7. Brazdil, Pavel B. 2009. Metalearning. 1st ed. Berlin: Springer.
8. Pfahringer Bernhard and Bensusan, Hilan: Meta-learning by Landmarking Various Learning Algorithms, ICML 2000.
9. Leite, R. and Brazdil, P.: Active Testing Strategy for Best Classication Algorithm via Sampling and
Metalearning. In Coelho H et al. (Eds.) Proceedings of ECAI 2010
103
Identifikácia osobnostných vlastností na základe údajov
publikovaných v rámci sociálnych médií
Peter Koncz1, Ján Paralič1, Dominik Jakub1
1
Katedra kybernetiky a umelej inteligencie, FEI TU v Košiciach, Slovenská republika
{peter.koncz, jan.paralic}@tuke.sk, [email protected]
Abstrakt. Osobné profily sú cenným zdrojom informácií o používateľoch sociálnych médií. Hoci sa o týchto informáciách často predpokladá, že sú použiteľné pre identifikáciu osobnosti používateľov, systematický výskum v tejto oblasti je stále v počiatkoch. Práca je preto venovaná overeniu možností predikcie
hodnôt dimenzií osobnosti podľa teórie Big Five na základe údajov zo sociálnej
siete Facebook. Na základe údajov od 330 používateľov sociálnej siete, ako
aj údajov z osobnostného dotazníka, bola overovaná možnosť vytvorenia predikčných modelov pre identifikáciu osobnosti. Získané predbežné výsledky potvrdzujú výsledky prác ktoré poukazujú na nedostatočnú presnosť takto vytvorených modelov.
Keywords: Big Five, dolovanie v dátach, sociálne siete
1
Úvod
Sociálne médiá predstavujú významný zdroj údajov o osobnostných vlastnostiach
ich používateľov. Napriek tomuto široko akceptovanému tvrdeniu existuje relatívne
malé množstvo prác, ktoré sa snažili toto tvrdenie výskumne overiť. Cieľom nášho
výskumu je overenie možnosti použitia údajov publikovaných v rámci sociálnej siete
Facebook pre tvorbu modelov na automatickú identifikáciu základných osobnostných
vlastností používateľov. V nasledujúcich častiach najskôr stručne popíšeme existujúci
výskum v tejto oblasti, následne popíšeme realizované experimenty a získané výsledky a napokon zhrnieme v podobe odporúčaní pre ďalší výskum.
2
Súvisiace práce
Ako sme spomínali, v súčasnosti je množstvo prác venovaných nami skúmanej
problematike relatívne malé, čo zrejme súvisí s náročnosťou vytvárania vzoriek ktoré
vyžadujú vyplnenie osobnostného dotazníka jednotlivými respondentmi. Z pohľadu
analýzy existujúcich zdrojov sme sa zameriavali predovšetkým na použité vstupné
atribúty, použité predikčné metódy ako aj výsledky realizovaných experimentov.
Sumner a kol. [1] sa zamerali na korelácie medzi osobnostnými vlastnosťami
a aktivitou na sociálnej sieti Facebook. Vytvorili zoznam 79 atribútov. Do ich expe-
104
rimentu sa zapojilo 537 respondentov. Výsledky experimentov poukazujú na viaceré
závislosti hoci ich sila je vo väčšine prípadov veľmi nízka. Bai a kol. [2] realizovali
podobný výskum v Číne kde v čase výskumu bola najobľúbenejšia sociálna sieť Renren. Všetci účastníci boli známi výskumníkov alebo známi ich známych, všetci Číňania a vekový priemer bol 24 rokov. Vo výslednej vzorke 209 účastníkov boli len tí, čo
vyplnili osobnostný dotazník, mali minimálne 100 priateľov, počet statusov viac ako
50 a blogov viac ako 10. Použité boli viaceré skupiny premenných vrátane premenných súvisiacich s prítomnosťou emócií, klasifikovaných na základe naivného Bayesovského klasifikátora na príznakovom priestore tvorenom emočne zafarbenými slovami. Výsledné skóre každého faktoru rozdelili do troch skupín, s nízkym, stredným
a vysokým skóre. Takto upravené zadanie potom riešili ako klasifikačnú úlohu do
troch tried. Pri trénovaní modelu použili naivný Bayesov klasifikátor, metódu podporných vektorov a rozhodovacie stromy. Najväčšiu presnosť dosahovali
s algoritmom C4.5. Hodnoty presnosti, návratnosti a hodnoty F1 miery dosahovali
v priemere 0,7. Wehrli [3] sa vo svojej práci zameral na používateľov sociálnej siete
StudiVZ pričom jeho vzorka bola tvorená 1560 respondentmi. Na týchto údajoch
aplikoval analýzu hlavných komponentov a bol schopný replikovať 5 faktorov, teda
rysov osobnosti z teórie Big Five. V rámci uvedených prác bol použitý dotazník Big
Five Inventory [4]. Tento dotazník je pre výskumné účely voľne použiteľný bez nutnosti pýtať si povolenie od autorov. Dotazník bol preložený do slovenčiny dvakrát,
následne boli obe verzie spojené do jednej. Dotazník obsahuje 44 otázok predstavovaných krátkymi vetami typu „Som niekto kto ...“, ktoré respondent ohodnotí mierou
súhlasu na škále 1-5.
3
Experiment
Cieľom experimentu bolo vytvorenie predikčného modelu pre hodnoty osobnostných dimenzií podľa modelu Big Five na základe údajov publikovaných na sociálnej
sieti Facebook. Vstupné premenné boli predstavované údajmi z profilov jednotlivých
používateľov, kým výstupné premenné boli hodnoty piatich osobnostných dimenzií,
ktorými boli extroverzia, prívetivosť, svedomitosť, emocionálna stabilita a otvorenosť
voči skúsenosti.
3.1
Vzorka
Vzorka údajov pochádzala od 330 respondentov, pomer mužov a žien bol 53:48
s priemerným vekom 22 rokov. Hlavnou nevýhodou vzorky bolo, že všetci respondenti boli priateľmi jedného človeka. Respondenti boli požiadaní o vyplnenie dotazníka Big Five Inventory.
Respondentov sme požiadali aj o poskytnutie svojich údajov z Facebooku. Z týchto
údajov bolo vytvorených 46 číselných atribútov ako napr. počet albumov, či statusov,
nominálne atribúty ako napríklad obľúbené knihy, filmy, relácie či tzv. liky, a 4 textové atribúty, ktoré sme vytvorili na základe popisov kníh, filmov, relácií či tzv. likovaných objektov. Okolo zmienených troch skupín vstupných premenných sme organizovali aj jednotlivé experimenty.
105
3.2
Postup
Nominálne atribúty boli transformované na binominálne atribúty a v prípade textových atribútov sme vykonali odstránenie neplnovýznamových slov a vytvorili sme
jedno a bi-gramy slov. Vyberali sme iba slová ktorých minimálny výskyt vo všetkých
dokumentoch bol 10 a maximálny 200, pričom prítomnosť n-gramov bola indikovaná
binárne. Následne sme vytvorili tri sady premenných. Prvú tvorili čisto numerické
premenné, druhá bola tvorená kombináciou numerických a nominálnych a napokon
sme použili čisto textové premenné. Cieľom bola predikcia hodnoty faktorov. Použitými metódami bola metóda podporných vektorov (SVM) v podobe dostupnej
v knižnici LibSVM ako nu-SVR s radiálnou bázovou funkciou a základnými nastaveniami a metóda k najbližších susedov (K-NN) s počtom susedov 3. Pre trénovanie
bolo použitých 90% záznamov a pre testovanie 10%.
Keďže dosahované hodnoty presností predikcie boli relatívne nízke, úlohu sme
hodnotili aj ako klasifikačnú úlohu. Transformovali sme cieľové atribúty na nominálne s troma stupňami. Záznamy zoradené podľa hodnoty boli rozdelené do štyroch
rovnako veľkých kvartálov, pričom stredné dva predstavovali strednú hodnotu premennej. V tomto prípade bola použitá desaťnásobná krížová validácia.
Pre porovnanie presnosti sme určili základné hladiny (baseline), ktoré boli predstavované hodnotou presnosti predikcie pri použití priemernej hodnoty cieľovej premennej v prípade predikčných úloh a pravdepodobnosťou najpravdepodobnejšej triedy
v prípade klasifikačnej úlohy.
3.3
Výsledky
Na vyhodnotenie presnosti predikcie bola použitá stredná kvadratická chyba, pre
vyhodnotenie presnosti klasifikácie bola použitá presnosť. Výsledky pre vzorky s
použitím numerických aj nominálnych premenných sú zobrazené v tabuľke 1. Výsledky získané iba pre numerické premenné mali veľmi podobný charakter.
Z výsledkov je možné vidieť vyššiu presnosť dosahovanú pri použití metódy podporných vektorov. Dosahované hodnoty chýb však nie sú významne nižšie ako hodnoty
základnej hladiny, dokonca sú v niektorých prípadoch vyššie.
Tabuľka 1. Hodnoty strednej kvadratickej chyby pre jednotlivé dimenzie a metódy
SVM
K-NN
Baseline
Extroverzia
0,666
0,899
0,692
Prívetivosť
0,491
0,639
0.452
Svedomitosť
0,600
0,834
0.630
Neuroticizmus
0,740
0,963
0,772
Otvorenosť
0,566
0,756
0.526
V prípade nominálnych premenných sa ako najväčší problém ukázal nedostatok
premenných, ktoré by mali dostatočné množstvo pozitívnych hodnôt v rámci celej
vzorky. Ani v prípade klasifikačnej úlohy neboli dosahované hodnoty ktoré by významne prekračovali hladinu náhodnosti (33% pre tri rovnako zastúpené úrovne hodnôt).
106
4
Záver
Na základe získaných výsledkov sme dospeli k záveru, že nami vytvorené modely
nedosahujú hodnoty presnosti potrebné pre ich reálne nasadenie. Táto skutočnosť
zrejme súvisí s nedostatočnou veľkosťou použitej vzorky ako aj potrebou zahrnutia
ďalších skupín premenných. Ako potenciálne užitočné premenné môžeme uviesť
premenné vyplývajúce z priateľstiev medzi používateľmi, či údaje zo správ používateľov, ktoré neboli v realizovaných experimentoch zahrnuté.
Poďakovanie
Táto práca bola podporovaná Agentúrou na podporu výskumu a vývoja na základe
zmlúv č. APVV-0208-10 (50%) a č. SK-CZ-2013-0062 (50%).
English summary
Personal profiles are a valuable source of information about users of social media.
Although this information is often assumed to be useful for identifying user personalities, systematic research in this area is still at its beginnings. The work is therefore
devoted to verification of the possibilities of predicting personality dimension values
according to the Big Five theory, based on data from Facebook. Based on data from
330 users as well data from personality questionnaire the possibility of creation of
such prediction models was evaluated. The obtained results confirm some of the previous works with lack of precision of the created models. The paper also describes the
problems associated with this prediction.
Referencie
1. Sumner, C., Byers, A., Shearing, M.: Determining personality traits & privacy concerns
from facebook activity. Black Hat Brief. 11, (2011).
2. Bai, S., Zhu, T., Cheng, L.: Big-Five Personality Prediction Based on User Behaviors at
Social Network Sites. ArXiv12044809 Cs. (2012).
3. Wehrli, S.: Personality on Social Network Sites: An Application of the Five Factor Model.
ETH Zurich, Chair of Sociology (2008).
4. John, O., Naumann, L., Soto, C.: Paradigm Shift to the Integrative Big Five Trait Taxonomy: History, Measurement, and Conceptual Issues. In: John, O., Robbins, R., and Pervin, L.
(eds.) Handbook of Personality: Theory and Research. pp. 114–156. Guilford (2008).
107
JOPA: Developing Ontology-Based Information
Systems
Martin Ledvinka, Petr Křemen
Czech Technical University in Prague, Czech Republic
Abstract. Accessing OWL ontologies programmatically by complex IT
systems brings many problems stemming from ontology evolution, their
open-world nature and expressiveness. This paper introduces Java OWL
Persistence API (JOPA) that tackles these problems by providing ObjectOntological Mapping (OOM) driven by integrity constraints designed
on top of OWL ontologies, together with transactional processing and
various backend implementations. Based on the lessons learnt during
the design and implementation of the prototype, we present a proposal
for a two layered architecture of object-oriented ontological information
system design and analyse complexity of various operations for objectoriented ontological applications.
1
Introduction
With the growing amount of knowledge available through (semantic) web, appropriate tools are necessary to author, process and search the knowledge. Ontologyeditors are on one side – they are generic, ontology-independent, but often hardly
understandable for domain experts not trained in knowledge modelling. Those
people require information systems, business logic and user interface of which is
tailored to the particular domain of their expertise.
Comparing to traditional information systems that are often built on top of
relational databases, design of ontology-based information systems brings many
challenges as well as advantages for information system designer [17]. On one
side, information systems, that accept closed-world assumption by their nature,
have to deal with distributed and open-world knowledge represented in ontologies, on the other hand, ontological changes often do not affect the information
system data model assumptions and thus can be smoothly applied without information system recompilation and redeployment (e.g. taxonomy/metadata extension). Furthermore, expressive power of semantic web ontologies is significantly
higher than that of relational databases.
In this paper, we review current work in the field of ontology-driven information system design, and discuss main ideas and implementation experience of the
JOPA framework1 for ontology-based information system access. Complementary to the works [18], [17] that dealt with the interaction between ontologies
and information systems, we go deeper here and analyze requirements of an
1
http://sourceforge.net/projects/jopa, cit. 16. 6. 2014
108
object-oriented ontology information system w.r.t. efficient ontological storage,
with focus on OWL 2 ontologies [22].
Section 2 presents the relationship of our work to the state-of-art research.
Section 3 introduces design and implementation of a prototype system for ontologybased information system access. Section 4 presents a proposal for the layered
architecture for ontology-based information system access. The paper is concluded in Section 5.
2
Related Work
Significant research effort has been spent on programmatic access to RDF [10]
and OWL ontologies. As already mentioned in [19], and [17], two types of information system architectures can be distinguished:
generic (domain-independent), where no assumptions are made about the
ontology in compile-time. This approach typically uses some generic (type 1)
API to ontologies like Jena [9], Sesame [8] (for RDF ontologies), or OWLAPI
[15] (for OWL ontologies). Maintenance of such applications is very difficult.
A change in the ontology (e.g. class/property addition/removal) might break
the application logic in runtime. OWLlink [20], which is in essence a remote
reasoner interface, belongs to this category as well.
domain-specific, where part of the ontological schema is compiled into the object model. Such approach significantly simplifies the work of a programmer,
who can work with object-model counterparts of ontological entities directly.
On the other hand ontological changes might break the object model and
result even in compile-time errors. APIs (type 2) of this nature include Jastor [25], Alibaba [6] (for RDF), or Sapphire[24], JAOB[21], or Empire[14]
(for OWL). Information system described in [27] is also a member of this
group, being basically an ontology management system (similar to tools like
PhpMyAdmin2 ) and using annotated Java classes merely as data transfer
objects [12].
While the discussed programmatic access options involve many RDF as well
as OWL libraries, OWL support is only available in a few ontological storages.
One of the most advanced is Stardog [7], providing full sound and complete
OWL 2 DL reasoning for ontological schemas (TBoxes). Another well-known
OWL storage is OWLIM[23], being a plugin into the OpenRDF Sesame triple
store[5]. OWLIM provides rule-based reasoning with full materialization, thus
covering OWL2-RL as well as sound, but incomplete inference over other OWL
subsets.
Many RDF stores, including OpenRDF Sesame [5], Virtuoso [4], SDB[1] or
TDB[2], provide support for transactional processing.
2
http://www.phpmyadmin.net, cit. 18. 6. 2014
109
3
JOPA
In this section, we first review basic notions and then introduce the main principles of JOPA design, together with its protypical implementation.
3.1
Background
We consider programmatic access to OWL 2 DL ontologies, corresponding in expressiveness to the description logic SROIQ(D)3 . In the next sections, consider
an OWL 2 DL ontology O = (T , A), consisting of a TBox T = {τi } and an ABox
A = {αi }, where αi is either of the form C(i) (class assertion), or P (i, j) (object
property assertion), where i, j ∈ Ni are OWL named individuals, C ∈ Nc is a
named class, P ∈ Nr is a named object property. Other axiom types belong to
T . W.l.o.g. we do not consider C(i) and P (i, j) for complex C and P here. We
do not consider anonymous individuals either. See full definition of OWL 2 DL
[22] and SROIQ(D) [16].
In addition to ontological (open-world) knowledge, a set SC = {γi } of integrity constraints is used to capture the contract between an ontology and an
information system object model. Each integrity constraint γi has the form of
an OWL axiom with closed-world (constraint) semantic, as defined in [26].
Example 1. Ontology and Integrity Constraints
Oa = ({P erson v Animal}, {hasF riend(Alice, Bob), hasF ather(Alice, Cyril)})
Ob = ({P erson v Animal}, {hasF riend(Alice, Bob), Animal(Bob), hasF ather(
Alice, Cyril)})
SC 1 = {P erson v ∀hasF riend · P erson}
SC 2 = {P erson v ∀hasF riend · Animal}
The ontology Oa states that each P erson is also an Animal and that Alice
is a friend of Bob. First, while Oa is consistent, integrity constraints in SC 1 are
violated as Bob is neither a known instance of P erson nor Animal. Furthermore,
ontology Ob is also consistent, but in this case integrity constraint in SC 2 are
satisfied (Bob is a known instance of Animal), while SC 1 are violated.
Let us also define additional ontology structures. By multi-context ontology
we denote a tuple M = (Od , O1 , ..., On ), where each Oi is an ontology identified
by a unique IRI and is called context, Od denotes the default ontology (default
context) which is used when no other context is specified. This structure basically
corresponds to an RDF dataset with named graphs [10]. An ontology store is
the underlying backend for performing operations on M.
3
For the sake of compactness, in this paper we neglect datatypes and literals (D) and
use description logic notation.
110
3.2
Architecture
The two sets of integrity constraints from Example 1 can represent two different
information systems, e.g. SC 1 for a social network, and SC 2 for some dog shelter
web site. Each integrity constraint set represents the contract between the information system object model and the ontology, see [19] for more details. Once an
integrity constraint is violated by the user-inputed data, the contract is broken
and the information system object model must be adjusted. All other changes
of the ontology are compliant with the information system and do not need
information system adjustments. This allows easy validation of the compliance
between the ontology and the information system logic by checking integrity
constraints, even without actually passing the data to the information system.
From the data access point of view, JOPA approach lies between the Type
1 and Type 2 APIs (see Section 2), allowing to use precompiled object model
for application-specific fixed schema of the ontology defined by the set of integrity constraints, while providing also access to the application-independent
parts of the ontology. I.e. all properties of an individual (e.g. in Example 1,
the hasF ather(Alice, Cyril) property assertion) can be obtained. As a result,
full ontological reasoning results, including inferred axioms, are available to the
information system designer.
Overal JOPA-based information system architecture is depicted in Figure 1.
3.3
Limitations of the Current Architecture
The current architecture of JOPA has several shortcomings. E.g., it is not able to
exploit multi-context storages. It always works on the default context, without
having any guarantee as to its contents.
The efficiency of access to the underlying ontology is also problematic. The
storage access strategy highly depends on the underlying API and bulk operations support (e.g. load all entity attributes in one query) is currently very
limited.
Another issue is transaction support on storage level. Preserving the same
transactional behaviour across all supported storages is, given their variety, a difficult task. Take, for example, the difference between OWLAPI accessed OWL
file, which has no transactional support, and an OWLIM repository, which does
support storage-level transactions. JOPA tackles the problem by creating snapshots of the underlying ontology. This is obviously inefficient for large datasets
and more advanced storages like Stardog or OWLIM offer better options (e.g.
creating temporary contexts).
4
Proposed Architecture
The contribution of this paper is described in this section. Based on our experience with developing JOPA, we propose a two layered architecture. The layers
essentially correspond to the roles of a JPA provider and a JDBC driver, but
111
Fig. 1. JOPA Architecture. Two different information systems are depicted, each
having its own set of integrity constraints and business and UI logic, but sharing
the same ontological structure. Note that the OntoDriver is not part of the
current architecture, it represents a part of our proposal.
their APIs have to reflect the characteristics of the underlying semantic data,
for instance:
– Inferred attributes are effectively read-only, because they are not explicitly
expressed in the underlying ontology and thus cannot be changed externally,
– As was stated in Section 3, user expresses the contract between the ontology
and the object-model by means of integrity constraints. These constraints
have to be verified accordingly,
– Besides explicitly stated attributes of entities, there are also properties that
are not necessarily part of the object-model (see 3.2). However, JOPA has
to be able to handle these property values the same way as property values
expressed as entity attributes,
– Last, but not least, the API of JOPA has to be able to support multi-context
storages, which have no equivalent in relational databases.
4.1
JOPA
The central point of interaction between the user application and JOPA is the
EntityManager interface. This interface in JOPA mostly corresponds to its JPA
112
counterpart, as defined by the JPA 2 specification [3]. However, to support multicontext storages, e. g. Sesame, we overload methods find, persist and merge
with additional versions accepting an instance of class EntityDescriptor. This
instance is used to provide provenance information about the entity and its attributes. Using EntityDescriptor, it is possible to specify contexts from which
attribute values should be loaded.
If the provenance information isn’t specified, JOPA uses the default context
of the storage.
Storage Access Corresponding to the approach taken by JPA, each physical
storage is represented by a single persistence unit. In the earlier version of JOPA
all the storages were managed by the same persistence unit, forcing the user to
specify which storage to use when executing methods on EntityManager. This
mechanism polluted the API and made it difficult to understand and use.
The only trade-off is that one will not be able to specify values for entity
attributes from different storages. However, we consider such situation less common and solvable e.g. using a federated storage.
4.2
OntoDriver
To unify access to various ontology storages we define the OntoDriver. This
software layer will hide the differences between storage APIs behind a unified
interface providing services optimized for object-oriented application access and
will serve as an ontology data provider for OOM in JOPA. The most straightforward approach to designing such a layer would be to adopt the JDBC structure
and realize the communication using OWL ontology queries and result sets. However, due to the lack of standardisation in the field of OWL 2 queries and since
most contemporary storages provide an API for directly manipulating axioms
as their primary interface, we have decided to exploit such interfaces. The main
reasons for this are:
– Only a limited set of query types is required,
– Eliminating generation and parsing of SPARQL (or any other language)
queries for data retrieval and manipulation,
– Exposing API suitable for typical operations performed by an OOM framework, i. e. reading and manipulation of property values of a single individual,
which can be optimized.
Typical Operations To formally describe typical operations required of OntoDriver, we need two auxiliary structures: entity descriptor and axiom descriptor.
An entity descriptor δe is a tuple (i, {(r1 , b1 )...(rk , bk )}), where i ∈ Ni , rm ∈
Nr , bm ∈ {0, 1} and m ∈ 1...k. The bm s specify whether inferred values for the
given role should be included as well.
An axiom descriptor δa is a tuple (i, {(r1 , v1 )...(rk , vk )}), where i ∈ Ni , rm ∈
Nr , vm ∈ Ni and m ∈ 1...k. The vm represent property assertion values for the
given individual and property.
OntoDriver is required to support at least the following core operations:
113
– f ind(M, δe ): 2M × Ni × Nrk × {0, 1}k → 2Ni ×Nr ×Ni , where δe is an entity
descriptor,
• Given an individual, load values for the specified properties,
– persist(M, δa ) = M∪{α1 ...αs }, where α1 ...αs are property assertion axioms
created from role-value pairs in δa ,
• Persist axioms representing entity attribute values,
– remove(M, δa ) = M\{α10 ...αt0 }, where α10 ...αt0 are property assertion axioms
for the roles specified in δa ,
• Remove axioms representing entity attribute values,
– update(M, δa ) = (M\{α10 ...αt0 })∪{α1 ...αs }, where α10 ...αt0 are original property assertion axioms for the roles r1 ...rk defined in δa and α1 ...αs are new
property assertion axioms created for role-value pairs in δa ,
• Remove old and assert new values for entity attributes,
– getT ypes(M, i, b): 2M × Ni × {0, 1} → 2Nc , where the resulting axioms
represent types of the specified individual i, b specifies whether inferred types
should be included as well,
• Get types of the specified named individual,
– addT ypes(M, i, {c1 ...ck }) = M ∪ {α1 ...αk }, where cm ∈ Nc and the αm are
class assertion axioms for the given individual i,
• Adds class assertion axioms for the given individual,
• removeT ypes(M, {c1 ...ck }) is defined analogically,
– validateIC(M, {γ1 ...γk }) : 2M × 2Ni ×Nr ×Ni × Sc → {0, 1}, where γm ∈ Sc
and m ∈ 1...k,
• Validate the specified integrity constraints, verifying reasoning-time integrity constraints which cannot be validated at runtime [19].
Transaction Snapshots The issue of transaction snapshot size (see Section 3.3)
can by tackled by extracting syntactic modules ([13]) based on the application
object model. Syntactic modules are, for most ontologies, comparable in size
with semantic modules, but their extraction complexity is quadratic, compared
to undecidable complexity for semantic modules in more expressive languages,
see [13] for more information about module extraction complexity.
More importantly, the OntoDriver layer enables us to introduce any different
transactional strategy suitable for the underlying storage, as long as the expected
behaviour is preserved.
The OntoDriver API The key element of the API for OntoDriver is the
Connection interface, which provides methods for querying and manipulating
data. The methods in the Connection interface can be divided into the following
groups:
– Standard housekeeping methods like commit, rollback, close, isOpen etc.,
– Methods for SPARQL4 queries, e. g. createStatement,
4
In OWL 2 DL entailment regime. However, the API itself does not restrict the query
language.
114
– Methods for working with contexts, e. g. getContexts or isConsistent
– Methods corresponding to operations defined in Section 4.2
The interface defines, on one hand, operations that are highly optimized in
existing reasoners (e. g. consistency check, individual’s types retrieval). Most of
the methods represent, however, operations designed specifically for application
access, where it is necessary to manipulate knowledge related to an individual
efficiently. For instance, when compared to OWLlink, where retrieval of entity
attributes would require for each attribute separate GetDataPropertyTargets
or GetObjectPropertyTargets [20] requests, in OntoDriver we are able to perform such operation in one method call.
4.3
Optimized Ontological Storage
Given the rather specific needs of OOM frameworks, represented by the API
of OntoDriver, we can even propose a data storage optimized for such needs.
Contemporary ontology storages are mostly optimized for fast data retrieval,
falling into the category of OLAP5 knowledge storages. The most advanced current triple stores also contain, to facilitate fast query answering, several indexes,
which increase data duplication and slow data manipulation down.
Optimizing Storage for Application Access Since we are dealing primarily
with OWL ontologies, our ultimate goal would be a storage with OWL 2 DL
reasoning support. As an inspiration for the possible optimized repository we
have taken Parliament6 , which is a RDF triple store with full materialization
and rule-based reasoning. The reasons why we chose Parliament are:
– The index structure as is is suitable for application access,
– The index used in Parliament produces almost no data duplication,
– Its indexing structure is fully disclosed and was elaborated in [11].
To give a short overview of Parliament’s index, it is based on linked lists of
statements with the same subject/predicate/object. Each statement contains a
reference to the next statement with the same subject/predicate/object. This
structure is very favourable for programmatic access, since loading an entity in
essence requires just traversing list for the given subject and setting values based
on the predicate.
Using doubly linked list The linked list structure can be suboptimal in cases
where the size of the list is large. To improve performance of value lookup in
such list, we propose using a doubly linked list, which would enable concurrent
search of the list from both its ends.
Table 4.3 compares operation complexity in the general case without any
index, in case of Parliament and for the optimized storage using doubly-linked
lists. Please note that we are comparing the average case complexity (see [11]
for difference between average and worst case complexity).
5
6
Online analytical processing.
http://parliament.semwebcentral.org/, cit. 18. 6. 2014
115
Operation
General
Parliament
Parliament-optimized
min(lens ,lenp )
)
f ind(M, δe )
O(|M|)
O(min(lens , lenp ))
O(
2
update(M, δa ) O(|M| × 2) O(min(lens , lenp , leno ) × 2) O(min(lens , lenp , leno ))
min(lens ,lenp ,leno )
persist(M, δa )
O(|M|)
O(min(lens , lenp , leno ))
O(
)
2
min(lens ,lenp ,leno )
remove(M, δa )
O(|M|)
O(
)
2
Table 1. Operation asymptotic complexity comparison. lens , lenp and leno
denote the lengths of lists of statements with the same subject, predicate and
object respectively. It can be seen that the complexity of all operations generally
depends on the complexity of an axiom find. This is mostly due to the fact that
insertion into the respective linked lists has constant complexity. Note that operations getT ypes(M, i, b), addT ypes(M, i, {c1 ...ck }), removeT ypes(M, {c1 ...ck })
can be realized using the above ones.
5
Conclusions
We presented several ideas about the design of ontology-based information systems that were based on the experience gained during prototyping of the original
JOPA system. We found out that access to ontological storages needs to be optimized w.r.t. the needs of object-oriented information systems. Basically, optimizing CRUD7 operations of “frames” (objects) on the storage is crucial for efficient
object-oriented access to OWL ontologies. For this purpose we defined an API
(similar to JDBC) that encapsulates these optimized operations together with
common transaction support, and analyzed the complexity of these operations.
In the next work, we will focus on empirical evaluation as well as transaction
support optimization.
Acknowledgements This work was supported by the grant No. SGS13/204/
OHK3/3T/13 Effective solving of engineering problems using semantic technologies of the Czech Technical University in Prague.
References
1. Apache Jena - SDB - persistent triple stores using relational databases. online,
https://jena.apache.org/documentation/sdb/
2. Apache Jena - TDB. online, http://jena.apache.org/documentation/tdb/
3. JSR 317: JavaTM Persistence API, Version 2.0
4. OpenLink Virtuoso Univeral Server. online, http://virtuoso.openlinksw.com/
5. OpenRDF Sesame. online, http://www.openrdf.org/
6. openRDF.org: AliBaba. online, http://www.openrdf.org/alibaba.jsp
7. Stardog: The RDF Database. online, http://stardog.com/
8. Broekstra, J., Kampman, A., van Harmelen, F.: Sesame: A Generic Architecture
for Storing and Querying RDF and RDF Schema. In: Proceedings of the First
International Semantic Web Conference on The Semantic Web. pp. 54–68 (2002)
7
Create, Retrieve, Update, Delete.
116
9. Carroll, J.J., Dickinson, I., Dollin, C., Reynolds, D., Seaborne, A., Wilkinson,
K.: Jena: implementing the semantic web recommendations. In: Proceedings of
the 13th international World Wide Web conference (Alternate Track Papers &
Posters). pp. 74–83 (2004)
10. Cyganiak, R., Wood, D., Lanthaler, M.: RDF 1.1 Concepts and Abstract Syntax.
Tech. rep., W3C (2014)
11. Dave Kolas, I.E.M.D.: Efficient Linked-List RDF Indexing in Parliament. In: The
Semantic Web - ISWC 2009 (2009)
12. Fowler, M.: Patterns of Enterprise Application Architecture. Addison-Wesley Professional (2002)
13. Grau, B.C., Horrocks, I., Kazakov, Y., Sattler, U.: Just the Right Amount: Extracting Modules from Ontologies. In: Proceedings of the 16th international conference
on World Wide Web (2007)
14. Grove, M.: Empire: RDF & SPARQL Meet JPA. online (April 2010), http://
semanticweb.com/empire-rdf-sparql-meet-jpa_b15617
15. Horridge, M., Bechhofer, S.: The OWL API: A Java API for OWL ontologies.
Semantic Web – Interoperability, Usability, Applicability (2011)
16. Horrocks, I., Kutz, O., Sattler, U.: The even more irresistible SROIQ. In: Proc.
of the 10th Int. Conf. on Principles of Knowledge Representation and Reasoning
(KR 2006). pp. 57–67
17. Křemen, P.: Building Ontology-Based Information Systems. Ph.D. thesis, Czech
Technical University, Prague (2012)
18. Křemen, P., Kostov, B.: Expressive OWL Queries: Design, Evaluation, Visualization. International Journal on Semantic Web and Information Systems 8(4),
57–79 (December 2012), http://www.igi-global.com/viewtitlesample.aspx?
id=75774&ptid=59645&t=expressive+owl+queries%3a+design%2c+evaluation%
2c+visualization
19. Křemen, P., Kouba, Z.: Ontology-Driven Information System Design. IEEE Transactions on Systems, Man, and Cybernetics: Part C 42(3), 334–344 (May 2012),
http://ieeexplore.ieee.org/xpl/freeabs_all.jsp?arnumber=6011704
20. Liebig, T., Luther, M., Noppens, O., Wessel, M.: OWLlink. Semantic Web – Interoperability, Usability, Applicability 2(1), 23–32 (2011)
21. von Malottki, J.: JAOB (Java Architecture for OWL Binding). online, http://
wiki.yoshtec.com/jaob
22. Motik, B., Parsia, B., Patel-Schneider, P.F.: OWL 2 Web Ontology Language Structural Specification and Functional-Style Syntax. W3C recommendation, W3C (Oct
2009), http://www.w3.org/TR/2009/REC-owl2-syntax-20091027/
23. Ontotext: OWLIM — Ontotext. online, http://www.ontotext.com/owlim
24. Stevenson, G., Dobson, S.: Sapphire: Generating Java Runtime Artefacts from
OWL Ontologies. In: CAiSE Workshops. pp. 425–436 (2011)
25. Szekely, B.H., Betz, J.: Jastor Homepage, http://jastor.sourceforge.net
26. Tao, J., Sirin, E., Bao, J., McGuinness, D.L.: Integrity Constraints in OWL. In:
Fox, M., Poole, D. (eds.) AAAI. AAAI Press (2010), http://www.aaai.org/ocs/
index.php/AAAI/AAAI10/paper/view/1931
27. Zviedris, M., Romane, A., Barzdins, G., Cerans, K.: Ontology-Based Information
System. In: Semantic Technology (2013)
117
Získávání znalostí pomocí dvoukrokové klasifikace
Marina Stecenková
Katedra statistiky a pravděpodobnosti, FIS,
Vysoká škola ekonomická v Praze, nám. W. Churchilla 4, 130 67, Praha
[email protected]
Abstrakt. Cílem příspěvku je představení metodologie, jenž kombinuje
výstupy analýzy latentních tříd a klasifikačního stromu CHAID, a to za účelem
zlepšení porozumění analyzovaných dat. Podstata spočívá v tom, že nejprve je
množina objektů pomocí analýzy latentních tříd rozdělena do shluků objektů
s podobnými vlastnostmi. Následně pro lepší profilaci vytvořených skupin je
použita klasifikační metoda CHAID, kde vysvětlovanou proměnnou je právě
vytvořená latentní proměnná, tj. proměnná určující příslušnost každého objektu
do jednoho z vytvořených shluků. Pro názornou ilustraci této metodologie byla
použita data z Výběrového šetření pracovních sil 2011.
Klíčová slova: klasifikace, analýza latentních tříd (LCA), algoritmus CHAID
1
Úvod
Kategorizace klientů a následný popis charakteristických rysů vytvořených skupin je
v dnešní době nedílnou součástí ekonomické (obchodní) strategie řady velkých
společností a další malé a střední podniky se k danému trendu postupně připojují.
Poznání svých klientů je jednou z klíčových otázek pro dosažení úspěchu. S tím
souvisí i rozvoj analytických nástrojů a v neposlední řadě i hledání nových postupů.
Cílem příspěvku je představit metodologii, která kombinuje vlastnosti analýzy
latentních tříd (LCA, latent class analysis) a algoritmu CHAID, kde výstup z LCA je
vstupem pro CHAID analýzu. Sledované objekty jsou tedy analyzovány ve dvou
krocích. V prvním kroku jsou vytvořeny shluky (LCA) a ve druhém kroku jsou tyto
shluky profilovány (CHAID ale i samotné LCA). Výhodou kombinace těchto
algoritmů je získání dobře interpretovatelných výstupů, a to pravděpodobnostního
profilu jednotlivých segmentů díky analýze LCA a klasifikačního stromu CHAID,
který reprodukuje vytvořené pravděpodobnostní segmenty. Pro ilustraci jsou použita
data z Výběrového šetření pracovních sil prováděného v ČR v roce 2011.
2
Dvoukroková klasifikace
Přístup dvoukrokové klasifikace je založen na analýze dat s využitím dvou různých
typů klasifikačních metod. Nejprve se objekty (respondenti, zákazníci) z dané datové
množiny pomocí LCA rozdělí podle vybraných faktorů do vhodného počtu shluků
tak, aby si objekty spadající do stejného shluku byly co nejvíce podobné z hlediska
118
hodnot vybraných faktorů a zároveň aby rozdíly mezi shluky byly co největší.
Vytvořené shluky je potřeba následně popsat (profilovat). Kromě klasického
specifikování shluků na základě podmíněných pravděpodobností, které jsou výstupem
LCA, nabízí Magidson a Vermunt [2] využít k popisu algoritmus CHAID, a to tak, že
by naopak podle hodnot stejných faktorů byla odhadována příslušnost objektů
k vytvořeným shlukům. Použití algoritmu CHAID umožňuje profilaci shluků
i pomocí jiných faktorů, než které byly použity pro vytvoření shluků.
2.1
Analýza latentních tříd (LCA, latent class analysis)
Hlavní myšlenkou analýzy latentních tříd je, že vzájemná závislost mezi
pozorovanými faktory je zapříčiněna vlivem skrytých (neměřitelných, latentních)
faktorů. Jinými slovy se vychází z předpokladu, že objekty analyzovaného souboru
pochází z jistého počtu homogenních skupin, které ovšem nejsou dopředu
pozorovatelné. Cílem LCA je identifikace těchto skupin, u kterých se předpokládají
odlišná pravděpodobnostní rozdělení. Podrobněji např. v [1] nebo [2].
2.2
Algoritmus CHAID
Algoritmus CHAID (Chi-squared automatic interaction detection) je nebinární
klasifikační strom, který využívá χ2 statistiku ke štěpení množiny objektů
analyzovaného souboru od kořene stromu přes nekoncové uzly až ke koncovým
uzlům. χ2 statistika umožňuje měřit homogenitu v uzlech a rozdělit data na další
podmnožiny. Cílem je, aby koncové uzly byly tvořeny alespoň z větší části objekty ze
stejných, předem známých, tříd. Více např. v [3].
2.3
Segmentace nezaměstnaných podle způsobu hledání zaměstnání
Výše popsaná metodologie byla aplikována na datech získaných z Výběrového šetření
pracovních sil 2011. Cílem bylo prozkoumat způsob hledání nového zaměstnání osob
bez práce, a to s předpokladem, že nezaměstnané lze rozdělit do několika skupin
s podobným vzorcem chování. LCA byla provedena na sedmi binárních faktorech
odpovídajících způsobu hledání nového zaměstnání nezaměstnaných osob. Celkem
1942 osob odpovídalo, zda hledaly své budoucí zaměstnání pomocí registrace na
úřadu práce, přes personální agentury, získáváním kontaktů od známých, přímým
kontaktem potenciálního zaměstnavatele, aktivním vypisováním a odpovídáním na
inzeráty s nabídkou práce, pouze pasivním procházením nabídek práce nebo jiným
způsobem.
Z hlediska věcné logiky a na základě nejnižších hodnot Akaikeho a Bayesova
informačního kritéria byl zvolen model se čtyřmi latentními třídami (v systému
LatentGold 4.0). Tab. č. 1 zobrazuje pravděpodobnostní profily jednotlivých tříd,
které byly pojmenovány jako Typický (do této skupiny bylo zařazeno 69 %
nezaměstnaných), Specifický (12 %), Pasivní (7 %) a Aktivní (12 %). Prevalence
určuje pravděpodobnost, že nezaměstnaný bude patřit do dané skupiny. Kdežto
119
podmíněné pravděpodobnosti udávají, jaká je pravděpodobnost, že nezaměstnaný
zvolí daný způsob hledání zaměstnání za předpokladu, že patří do určité skupiny.
Tabulka 1. Podíly nezaměstnaných, kteří hledají daným způsobem nové zaměstnání,
a pravděpodobnostní profily jednotlivých segmentů.
Latentní třída
Podíl
nezaměstnaných
Způsob hledání práce
Typický Specifický Pasivní Aktivní
Úřad práce
0.90
0.92
0.82
0.85
0.96
Pers. Agentury
0.17
0.06
0.19
0.03
0.60
Zaměstnavatel
0.81
0.81
0.98
0.02
0.96
Známí
0.91
0.98
0.80
0.40
0.98
Inzeráty – aktivně
0.35
0.35
0.02
0.01
0.80
Inzeráty – pasivně
0.83
1.00
0.42
0.11
0.99
Jiný
0.37
0.33
0.26
0.14
0.70
0.58
0.16
0.08
0.18
Prevalence
V dalším kroku byl v systému SPSS 16.0 konstruován klasifikační strom CHAID,
který zařadil správně 98 % nezaměstnaných do získaných latentních tříd při křížové
validaci (n=10) s průměrnou chybnou 3 % a směrodatnou odchylkou 0,4 p. b.
UZEL 0
T
S
P
A
1942
69.1%
11.8%
7.5%
11.5%
INZERÁTY - PASIVNĚ
NE
UZEL 1
T
S
P
A
ANO
324
0.0%
57.1%
41.7%
1.2%
UZEL 2
T
S
P
A
ZAMĚSTNAVATEL
ANO
UZEL 3
T
S
P
A
ZNÁMÍ
NE
189
0.0%
97.9%
0.0%
2.1%
1618
82.9%
2.8%
0.7%
13.6%
UZEL 4
T
S
P
A
ANO
135
0.0%
0.0%
100%
0.0%
NE
UZEL 5
T
S
P
A
1552
85.8%
0.2%
0.0%
14.0%
UZEL 6
T
S
P
A
66
15.2%
63.6%
16.7%
4.5%
PERS. AGENTŮRA
ANO
NE
UZEL 7
T
S
P
A
281
21.7%
1.1%
0.0%
77.2%
UZEL 8
T
S
P
A
1271
100%
0.0%
0.0%
0.0%
INZERÁTY AKTIVNĚ
NE
UZEL 9
T
S
P
A
ANO
101
55.4%
3.0%
0.0%
41.6%
UZEL 10
T
S
P
A
180
2.8%
0.0%
0.0%
97.2%
JINÝ ZPŮSOB
NE
UZEL 11
T
S
P
A
ANO
57
94.7%
5.3%
0.0%
0.0%
UZEL 12
T
S
P
A
180
4.5%
0.0%
0.0%
95.5%
Obrázek 1. Klasifikace do čtyř latentních tříd (výstup LCA) podle faktorů odpovídajících
způsobu hledání nového zaměstnání (stejné jako u LCA).
120
Na základě pravděpodobnostních profilů a větvení klasifikačního stromu byly čtyři
skupiny profilovány následovně. Pro skupinu Typických, do které patří téměř 70 %
nezaměstnaných, je charakteristické pasivní prohledávání inzerátů, poptávání se lidí
ve svém okolí, přímé oslovení zaměstnavatele a zároveň nevyužívání personálních
agentur. Skupina Specifických nesleduje nabídky práce a nejčastěji přímo kontaktuje
zaměstnavatele nebo se poptává u známých. Nejvýraznější rozdíly jsou vidět mezi
skupinami Aktivní a Pasivní. Zatímco Aktivní využívají k hledání nového zaměstnání
všech dostupných prostředků, tak Pasivní jsou pouze zaregistrování na úřadu práce.
Použitím algoritmu CHAID mohou být jednotlivé skupiny dále profilovány z hlediska
jiných faktorů (např. demografických, socio-ekonomických, atd.).
3
Závěr
Správné určení počtu shluků a jejich následná profilace je vždy obtížný úkol. Kritéria
určující optimální počet shluků nám sice pomáhají z daných modelů vybrat ten lepší,
ale může se také stát, že mezi srovnávanými modely nebude ani jeden dobrý
z hlediska věcné interpretace. Metodologie popsaná v tomto příspěvku přináší hlavní
výhodu právě v urychlení a zlepšení profilace získaných segmentů.
Poděkování
Tato práce vznikla s podporou grantu č. IGA F4/104 /2014.
English summary
Obtaining knowledge using two step classification
The aim of the paper is to introduce using the results of latent class analysis (LCA)
and the CHAID algorithm for segmentation and profiling of researched objects where
the output of LCA (classes) serves as an input for CHAID. Thus data will be
segmented in two steps where for each step the same variables will be used. To
illustrate this methodology, data from the periodical Labour Force Survey held in
spring 2011 in the Czech Republic are used.
Reference
1. Collins L. M., Lanza S. T. Latent Class and Latent Transition Analysis for the
Social, Behavioral, and Health Sciences. Wiley, New York, 2010, ISBN: 978-0470-22839-5, str. 39-44.
2. Magidson J., Vermunt J. K. Latent Class Analysis, The Sage Encyclopedia of
Social Science Research Methods, NewBury Park: Sage Publications, Inc., 2004.
3. Tufféry S. Data Mining and Statistics for Decision Making. Wiley, United
Kingdom, 2011. ISBN 978-0-470-68829-8, str. 313-328.
121
Crowdsourcing posilnený sledovaním pohľadu
Jakub Šimko1
1Ústav Informatiky a Softvérového Inžinierstva,
Fakulta informatiky a informačných technológií,
Slovenská technická univerzita v Bratislave,
Ilkovičova 2, 842 16, Bratislava
[email protected]
Abstrakt. V tomto článku ponúkame víziu prepojenia a synergie dvoch
výskumných (ale aj praktických) oblastí a to čerpania z davu (crowdsourcing) a
sledovania pohľadu (gaze tracking). Zatiaľ čo praktiky čerpania z davu sú dnes
široko nasadzované, sledovanie pohľadu bolo až doteraz významne
kvantitatívne obmedzené cenou zariadení, ktoré toto sledovanie umožňovali. To
sa však pomaly mení a otvára nový zdroj implicitnej spätnej väzby cennej pre
úlohy čerpania z davu. V článku uvádzame teoretickú argumentáciu
podporujúcu toto spojenie, ktoré zároveň demonštrujeme prieskumnou štúdiou
úlohy tvorby experimentálnej vzorky pre zisťovanie významu homoným.
Klíčová slova: čerpanie z davu, sledovanie pohľadu, spracovanie textu,
rozlišovanie významu slov
1
Motivácia: viac implicitnej spätnej väzby do čerpania z davu
Ľudstvo v dnešnej dobe tvorí a uchováva enormné množstvo informácií. Prominentné
postavenie v tomto ohľade má Web ako najväčší „korpus“ informačných zdrojov
a ďalších služieb. Na množstvo dostupných informácií nadväzuje potreba ľudí sa
v týchto informáciach rozumne orientovať, vyhľadávať a vo všeobecnosti napĺňať
svoje potreby. K efektívnemu spracovávaniu veľkého množstva informácií
neodmysliteľne patria automatické metódy, ktoré ako jediné dokážu obsah Webu
dostatočne rýchlo sprostredkovať. Tradičné sú však aj problémy, na ktoré tieto
metódy narážajú. Vyplývajú z povahy informačných priestorov (Webu), ktorých
obsah je štruktúrou heterogénny a ťažko strojovo spracovateľný, predovšetkým z
dôvodu prítomnosti prirodzeného jazyka a multimediálneho obsahu.
Vo výskume aj v aplikačnej praxi bolo vyvinutých množstvo automatických
metód, schopných prekonávať aj tieto prekážky. Ich fungovanie je však často
obmedzené a to z dôvodu nedostatku vhodne štruktúrovaných informácií či znalostí,
ktoré pre spracovanie „divokého“ Webu tieto metódy potrebujú. Či už ide o pravidlá
spracovania obsahu (napr. pri sémantickej analýze viet v prirodzenom jazyku), alebo
napríklad o trénovacie vzorky pre algoritmy strojového učenia (napr. vzorky
sémanticky anotovaných obrázkov pre trénovanie počítačového videnia), veľmi často
je na ich vytvorenie potrebná ľudská sila, ktorá je však drahá a nie vždy dostupná.
Celá plejáda prístupov sa preto zaoberá tým, ako čo najefektívnejšie zapojiť ľudí
do tvorby explictne vyjadrených informácií a znalostí na podporu metód
automatického spracovania ťažko spracovateľných informačných zdrojov. Ide
122
o takzvané ľudské počítanie (angl. human computation), teda proces riešenia
výpočtových úloh, ktoré sú len ťažko riešiteľné strojovo. Rozlišujeme dve skupiny
prístupov [15]: (1) využitie expertov (teda malej skupiny vysokokvalifikovaných
pracovníkov) a (2) čerpanie z davu (angl. crowdsourcing, čiže využitie širšej skupiny
ľudí s neistou mierou kvalifikácie).
Využitie expertov je pri špecifických úlohách nezastupiteľné. Ich cena je však
privysoká a dostupnosť príliš nízka pre vytváranie rozsiahlych trénovacích vzoriek
[13]. Pre tieto je typické skôr využívanie väčších skupín laických ľudí pri čerpaní z
davu, pri ktorom síce individuálne schopnosti prispievateľov nie sú také vysoké ako
pri expertoch, no ako také kvalitatívne postačujú a sú dostupné v oveľa väčšom
rozsahu. Pri automatickom spracovaní informačných zdrojov sú totiž často potrebné
aj znalostné bázy obsahujúce „bežné“ poznatky (napr. že určitý obrázok obsahuje
slnko, že automobil sa zvyčajne nezaobíde bez kolies). A práve takéto informácie,
v primeranej kvalite, je schopná poskytnúť aj širšia skupina ľudí, vhodne
organizovaná systémom čerpania z davu (napr. Amazon Mechanical Turk).
Prístupy čerpania z davu sú dnes značne rozšírené vo výskume aj v aplikačnej
praxi, majú však aj rezervy čo sa týka ich efektívnosti. Časť kvantitatívneho
potenciálu davu (množiny prispievateľov zapojených do riešenia nejakej úlohy) musí
byť často obetovaná na redundantné riešenie úloh (kontrolou zhody riešení tej istej
inštancie úlohy viacerými riešiteľmi v dave), alebo na iné procesy kontroly na
zabezpečenie kvality výstupov davu (prevencia chýb a spamu).
Dôvodom okrem iného je, že priebeh riešenia úloh a motivácia riešiteľov sú málo
transparentné, nakoľko informačné systémy, zabezpečujúce celý proces, nedokážu
zachytávať a vyhodnocovať potrebnú (implicitnú) spätnú väzbu svojich
prispievateľov a na jej základe identifikovať neštandardné a toxické správanie. Okrem
toho, adekvátna spätná väzba môže navyše priniesť aj zvýšenie prínosu už tak
správnych riešení úloh. Možno napr. lepšie rozlíšiť, ktorý prispievateľ má na riešenie
úlohy lepšie predpoklady [12] alebo či sa niektorí prispievatelia nesnažia o zneužitie
systému [4]. Štandardne (bez spätnej väzby) totiž systémy čerpania z davu chápu
svojich prispievateľov ako čierne skrinky: zadajú im úlohu a na konci riešenia
očakávajú jej (správne) riešenie. Vďaka vedomosti o postupe riešenia, však pri
špecifických úlohách vedia vyťažiť viac užitočných informácií [12].
Unikátnym zdrojom spätnej väzby pri interakcii človeka s počítačom (a teda aj pri
riešení úloh ľudského počítania, resp. čerpania z davu), je sledovanie pohľadu (angl.
gaze tracking). Abstrahujúc od technologickej realizácie, ide o zaznamenávanie miest
(na obrazovke), na ktoré sa človek pri interakcií s počítačom pozerá v konkrétnych
časových okamihoch [2]. Následne sú tieto informácie interpretované (čo už závisí od
konkrétneho účelu), či už manuálne (typicky ľudským examinátorom počas
vyhodnocovania experimentov [3]) alebo automaticky (napr. pri kvantitatívnom
vyhodnocovaní záujmu používateľov o určité časti používateľského rozhrania).
Dôležité je, že zaznamenaná sekvencia pohľadov v sebe implicitne nesie množstvo
informácií o pozornosti, záujmoch či mentálnom stave používateľa [5], ktoré sa
zároveň len veľmi ťažko dajú získať z iných „tradičných“ zdrojov implicitnej spätnej
väzby (napr. sledovania pohybu myši, rolovania, záznamov webového servera).
Ako zdroj implicitnej spätnej väzby sa sledovanie pohľadu prirodzene ponúka aj
do služieb čerpania z davu, no v tejto oblasti sa zatiaľ neuplatnilo, a to najmä
z dôvodu vysokej ceny a nepatrného rozšírenia technológií sledovania pohľadu, čo je
123
v príkrom kontraste s princípom čerpania z davu, založenom na početných skupinách
ľudí vybavených bežnými výpočtovými prostriedkami. Dostupnosť technológií
sledovania pohľadu sa však postupne zvyšuje. V horizonte niekoľkých rokov môžeme
byť konfrontovaní s ich rozšírením medzi bežných používateľov Webu (a teda
potenciálnych participantov v čerpaní z davu). Je preto namieste pripraviť sa na tento
nástup už teraz a skúmať možnosti využitia sledovania pohľadu pri čerpaní z davu.
Cieľom tohto článku je identifikovať východiská a možné smery výskumu metód
spájajúcich čerpanie z davu a sledovanie pohľadu. Rozdelený je na dve časti. Prvá sa
venuje analýze oblastí čerpania z davu a sledovania pohľadu a možností ich fúzie.
Zameriava sa pritom na domény súvisiace so spracovaním informácií na Webe. Ako
príklad možnej aplikácie sledovania pohľadu v typickej úlohe čerpania z davu,
uvádzame v druhej časti článku prieskumnú štúdiu zaoberajúcu sa konkrétnou úlohou
získavania vzorky pre určovania významu viacznačných pojmov textoch.
2
2.1
Smerom k synergii ľudského počítania a sledovania pohľadu
Čerpanie z davu
Čerpanie z davu nachádza uplatnenie pri veľkom spektre úloh, pri ktorých je nutné
ľudské počítanie. Môže ísť napr. o vytváranie znalostných báz, prípravu trénovacích
vzoriek pre počítačové videnie, automatickú analýzu textu ale aj podporu občianskeho
aktivizmu či mapovanie geografických lokalít [8]. Zároveň nadobúda mnoho foriem
a existujúce prístupy možno klasifikovať z mnohých hľadísk [10], najmä podľa
zloženia davu, spôsobu motivovania a verbovania prispievateľov, dekompozície
a distribúcie úloh, zabezpečenia kvality výstupov či predchádzania zneužívaniu.
Typickým scenárom čerpania z davu je využitie generickej platformy ako Amazon
Mechanical Turk s využitím mikroplatieb ako spôsobu motivácie potenciálnych
prispievateľov regrútovaných z bližšie neurčených používateľov služby.
Problémom generických platforiem v takomto nastavení je však už spomenutý
nedostatok spätnej väzby od prispievateľov. Prispievatelia síce dodávajú svoje
riešenia zadaných úloh (pričom ich kvalita sa dá overiť redundantným riešením
a kontrolou zhody výstupov), no priebeh samotného riešenia je netransparentný,
a sledovať a interpretovať sa dá len v obmedzenej miere. Možno napríklad
zaznamenávať vykonané akcie používateľa (kliky, rolovanie, stlačenia kláves)
v rozhraní riešenia úlohy či merať čas medzi nimi. Na správny odhad kognitívnych
procesov prispievateľov to však málokedy stačí. Vieme napríklad odsledovať, či sa
prispievateľ „zasekol“ pri určitej otázke v dotazníku (pred jej vyplnením ubehol od
poslednej akcie dlhý čas), nevieme však povedať, či to bolo z dôvodu únavy,
subjektívnej náročnosti, alebo si prispievateľ len dal prestávku.
Viaceré štúdie nám ukazujú, ako môže viac implicitnej spätnej väzby od
prispievateľov pomôcť k lepšej efektívnosti procesu čerpania z davu. Chen a kol. vo
svojej štúdii [4] napríklad detegovali spamerov v systémoch komunitného
odpovedania otázok (community question answering – CQA). Viacerí používatelia
týchto systémov sa snažia vo svojich odpovediach podsúvať odporúčania na
špecifické komerčné produkty často v rozpore so záujmami komunity. Autori ich
124
detekciu (a tým zvýšovanie kredibility komunity) opierajú o sledovanie špecifického
správania takýchto používateľov: používanie istých vetných konštrukcií, opakované
príspevky či umelé dvíhanie počtu hlasov pri odpovediach.
V inej štúdii [12] Rzeszotarski a Kittur predstavili všeobecnú metódu sledovania
priebehu riešenia úloh na úrovni používateľských akcií nízkej úrovne (kliky, pohyby
myši, rolovanie, stláčanie kláves). Autori natrénovali modely, ktoré
predpovedali kvalitu riešení zadaných úloh (ako presnosť, zrozumiteľnosť). Svoje
riešenie pritom overovali na typických úlohách čerpania z davu: značkovaní
obrázkov, klasifikácie slovných druhov a určovaní zrozumiteľnosti textov.
Celkovo je teda jedným z východísk našej argumentácie to, že sledovanie
prispievateľov počas riešenia úloh prináša zefektívňovanie čerpania z davu, no
zároveň aj konštatovanie, že takáto spätná väzba v súčasnosti využívaná len slabo.
2.2
Sledovanie pohľadu
Zaznamenávanie pohybu očí (ang. eye-tracking) resp. sledovanie (zaznamenávanie)
pohľadu na základe tohto pohybu (gaze-tracking) nie je novou disciplínou. Jej korene
siahajú až do 19. Storočia pričom automatizované prístupy sa začali objavovať už
v 40. rokoch 20. storočia. Z technologického pohľadu ide o rôznorodú doménu
zahŕňajúcu prístupy založené na vizuálnej analýze obrazu tváre (očí) pozorovateľa,
mechanickom meraní pohybov očí (využívajúcich napríklad špeciálne kontaktné
šošovky s vyčnievajúcimi tyčinkami indikujúcimi smer pohľadu) či meraní
elektrického potenciálu generovaného pohybom očí (s použitím špeciálnych
kontaktných šošoviek a elektród pripojených k telu pozorovateľa) [2].
V minulosti bolo sledovanie pohľadu využívané predovšetkým v laboratórnych
podmienkach v experimentoch s malým rozsahom. Dôvodom bola okrem ceny
zariadení, ich slabá prenosnosť, obmedzenia pre použitie v určitom prostredí či
náročnosť použitia. Dnes je najrozšírenejším spôsobom zaznamenávania pohybu očí
analýza odrazov infračervených lúčov od oka [2]. Ide o pomerne neinvazívnu,
z pohľadu používateľa ľahko použiteľnú a zároveň dostatočne presnú metódu, ktorú
dnes využíva väčšina komerčne dostupných technológií sledovania pohľadu. Tomuto
prístupu sa zároveň podarilo nastaviť trend zvyšovania svojej dostuposti2. Okrem toho
sa zlepšuje aj softvér obsluhujúci tieto zariadenia – analytické nástroje a programové
rozhrania umožňujú čoraz jednoduchší a rýchlejší vývoj aplikácií využívajúcich
sledovanie pohľadu. Viacerí výrobcovia už dokonca avizovali úmysel dostať svoje
zariadenia medzi širšiu skupinu používateľov, napríklad ako súčasť osobných
výpočtových zariadení. Celkovo teda možno v blízkej budúcnosti predpokladať
rozšírenie technológií sledovania pohľadu, s novými možnosti ich aplikácií.
Tradičnými oblasťami využitia sledovania pohľadu sa stali najmä marketing
a návrh rozhraní človeka s počítačom. Pre tieto oblasti je významná potreba spätnej
väzby konzumentov resp. používateľov (napr. pre zisťovanie efektívnosti pôsobenia
prvkov reklamy či odhaľovanie problematických scenárov v pri používaní rozhraní).
Využívajú sa pritom najmä kvalitatívne štúdie (napr. [3]) s menším počtom
2
http://www.economist.com/news/technology-quarterly/21567195-computer-interfaces-abilitydetermine-location-persons-gaze
125
účastníkov (reflektujúc práve kvantitatívne obmedzenia technológií sledovania
pohľadu spomenuté vyššie), pričom sledovanie pohľadu je len jedným zo zdrojov
spätnej väzby participantov popri rečovej interakcií s experimentátormi, zadávaní
textu, analýze rozhodnutí a podobne. Nevyhnutná je pritom manuálna evaluácia
(dostatočne skúseným) experimentátorom.
Aj manuálne vyhodnocovanie v experimentoch malého rozsahu však vyžaduje
automatické predspracovanie veľkého množstva údajov o pohľade a ich vhodnú
(agregovanú) vizualizáciu. Typickými technikami sú teplotné mapy (heat maps),
vyjadrujúce záujem používateľov o určité súčasti skúmaného predmetu/rozhrania či
grafy pohľadu (gaze plots), zobrazujúce postupnosti fixácií (momentov, kedy
používateľ venoval bez pohnutia oka pozornosť istej oblasti skúmaného predmetu)
a sakád (prechodov medzi fixáciami). Za pomoci vizualizácií potom správanie
participantov interpretuje examinátor. Keďže nejde vždy o jednoduchú úlohu, časť
výskumníkov sa venuje tvorbe špecializovaných vizualizácií napr. pre odhaľovanie
problematických vzorov správania používateľov vo výučbových systémoch [11], či na
webových stránkach [9].
V budúcom využití sledovania pohľadu pri čerpaní z davu však musíme stavať na
automatických – teda menej tradičných prístupoch vyhodnocovania údajov o pohľade,
ktorým sa v minulosti tiež venovali viacerí výskumníci. Žiaden z existujúcich
prístupov nebol navrhovaný ako úloha čerpania z davu, mnohé prístupy však k nemu
majú v rôznych aspektoch blízko. Spektrum (problémových domén) týchto metód je
široké, prirodzene však často smerujú k používateľsko-centrickým (user-centric)
aplikáciám snažiacim sa odhadovať zámery, záujmy či kontext používateľa a následne
túto informáciu využiť v jeho prospech (napr. personalizáciou), alebo prospech
vlastníka aplikácie (napr. marketingovým využitím).
Významná pozornosť je venovaná čítaniu textu, predovšetkým otázke, ako čo
najpresnejšie zachytiť priebeh čítania textu človekom v čase. Následne sa s touto
informáciou ďalej pracuje podľa potreby aplikácie. Keďže základným výstupom
zariadenia na sledovanie pohľadu je v princípe časová postupnosť dvojrozmerných
súradníc odhadnutých bodov pohľadu na obrazovke, je potrebné túto transformovať
na tvar zmysluplnejší z hľadiska analýzy priebehu čítania textu: napríklad postupnosť
dĺžok fixácií na jednotlivé slová. To však nie je triviálna úloha, keďže výstupy
sledovania pohľadu nemusia byť dostatočne presné či správne kalibrované. Týmto
problémom sa vo svojej práci zaoberal napr. Pascual Martinez-Gomez [5], ktorý si na
pomoc zobral informácie o samotnom obsahu textu (pozíciach stredov slov, ktorým
by mali zodpovedať fixácie, dĺžkach slov, ktorým by mali zodpovedať dĺžky fixácií).
Ak už máme informáciu o priebehu čítania textu, možno ju ďalej využiť
v kvantitatívnom spracovaní. Martinez-Gomez a kol. sa vo svojej ďalšej práci [6]
venovali identifikácii častí textov z rôznych dôvodov náročných na čítanie
(identifikovali miesta ktoré museli čitatelia čítať opakovane, či na ktorých sa často
„zasekli“). V inej práci [18] sa zasa Xu a kol. zaoberali tvorbou sumarizácií textov.
Na základe informácií o čítaní textu vypočítali agregovanú mieru „intenzity“ pohľadu
na každé slovo dokumentu a prešírili túto intenzitu na ostatné slová prostredníctvom
sémantickej podobnosti. Následne intenzity agregovali pre vety dokumentu, zoradili
ich a z najvyššie umiestnených vytvorili sumarizáciu.
Vhodnou doménou pre uplatnenie sledovania pohľadu je Web. Buscher a kol. vo
svojej práci [1] využívajú sledovanie pohľadu na získavanie informácií o
126
krátkodobom kontexte (záujmoch) používateľa pre rozširovanie vyhľadávacích
dopytov. Ich metóda vyberá z „výsekov“ (snippets) vo výsledkoch vyhľadávania
kľúčové slová pomocou extrakcie metrikou TF-IDF, avšak len z tých textov, ktoré si
používateľ prezrel (pričom berie do úvahy aj čas fixácií ako aj opakované čítanie).
Predmetom sledovania pohľadu môže byť tiež získavanie informácií o dlhodobých
záujmoch používateľa Webu, typicky využívaných pri odporúčaní. Napr. Xu a kol. vo
svojej práci [17] sledovali používateľov pri interakcií s Webom nejaký čas. Zároveň
sledovali ich pohľad pri sledovaní videa, textov či reklamných plôch a odvodzovali
z toho záujmy používateľov, ktorým na základe toho ďalej odporúčali.
Okrem zisťovania záujmov používateľov, predstavuje sledovanie pohľadu aj
možnosť zisťovať priamo mentálny stav používateľa (ako uvádza McDonald
„kognitívny stav človeka sa premieta aj do pohybu jeho očí a pohľadu“ [7]). Praktický
význam to môže mať napr. v technológiami podporenom vzdelávaní vo využití
empatického softvérového agenta, schopného detegovať a v reálnom čase reagovať na
problémové stavy sledovaného študenta vo vzdelávacom systéme [16].
2.3
Fúzia do novej disciplíny
Množstvo aplikácií sledovania pohľadu ako zdroja spätnej väzby priam nabáda na
jeho využitie aj v scenároch čerpania z davu. Mnohé tieto aplikácie sú až nápadne
podobné typickým úlohám ľudského počítania. Napr. spomínaná sumarizácia textov
sa často typicky musí vykonávať ručne pri vytváraní trénovacích vzoriek pre
algoritmy strojového učenia, ktoré túto sumarizáciu majú vykonávať. Pomocou
sledovania pohľadu z nej však možno vyťažiť informáciu o vhodných sumarizačných
vetách rýchlejšie a pohodlnejšie (v porovnaní s explicitným zadávaním týchto viet
človekom). Podobná je situácia pri ďalších typických úlohách ako značkovanie
multimédií. Napr. pri tradičnej úlohe značkovania obrázkov konceptami by sme
vedeli navyše vyťažiť aj presné umiestnenie týchto konceptov na obrázkoch na
základe údajov o pohľade. Mnoho ďalších úloh, pri ktorých sa dnes údaje o pohľade
používateľov vyhodnocujú manuálne, napr. diagnostika formy či obsahu rozhraní
(webových, výučbových, herných) či analýza marketingových materiálov, si možno
predstaviť s väčším množstvom používateľov a s automatickým vyhodnocovaním
zaznamenaných údajov. Optimistický pohľad teda vyzerá tak, že nasadeniu
sledovania pohľadu do čerpania z davu chýbajú len dostupnejšie technológie.
Nie je to však celkom pravda – na takýto stav by sme totiž mali byť pripravení ako
výskumníci a aj ako tvorcovia praktických aplikácií. Už teraz by sme mali rozvíjať
metódy čerpania z davu s využitím sledovania pohľadu. Dnes, prirodzene, neexistuje
adekvátna samostatná výskumná disciplína na konceptualizáciu, opis či návrh
takýchto metód. Jej formovanie bude mať zmysel až keď naberieme dostatok
skúseností s konkrétnymi prvými aplikáciami. Už teraz však možno vytýčiť možné
smery výskumu v tejto oblasti a uvažovať niektoré jeho hľadiská:
Spôsob návrhu úloh. Hoci nie je vylúčené, že samotná technológia sledovania
pohľadu podnieti vzik celkom nových metód, je prirodzené, že inovácie vyvstanú
skôr modifikovaním existujúcich metód čerpania z davu. Každý návrhár úloh pre
čerpanie z davu by sa mal zamyslieť, ako by informácia o pohľade jeho prispievateľov
mohla pomôcť k skvalitneniu výstupu celého procesu.
127
Aplikačná doména. Otvorené sú zatiaľ všetky možnosti doterajšieho pôsobenia
čerpania z davu, pri ktorých nie sú technické obmedzenia využitia zariadení
sledovania pohľadu. Špeciálnu pozornosť by sme však mali venovať tým úlohám, pri
ktorých sú prispievatelia nútení robiť nejaký typ rozhodovania na základe vizuálnych
vnemov (rozpoznávanie obrazu, orientácia na webe či vo výsledkoch vyhľadávania)
alebo trávia dlhší čas analýzou nejakej vizuálnej informácie (čítanie textu).
Špecifickosť prístupu. Mnoho budúcich prístupov bude vyvinutých len pre
špecifické úlohy a väčšina bude ťažko využiteľné inde. Určite emergujú aj niektoré
širšie využiteľné princípy (ako v každej disciplíne), ktoré však teraz predpovedať
nevieme. Od začiatku sa však výskumníci môžu zamerať aj na niekoľko skutočne
univerzálne využiteľných princípov. V čerpaní z davu je napríklad často vhodné
určovať, či bol príslušný prispievateľ počas riešenia úlohy v stave nervozity,
diskomfortu, sústredenia či uvoľnenosti keďže tieto stavy môžu do značnej miery
ovplyvňovať výslednú kvalitu prispievateľovho riešenia. No a práve údaje o pohľade
resp. pohybe očí túto informáciu nesú a budú k dispozícií [7].
Diagnostický vs. ovládací systém. Podľa Hansena a Jiho [2] možno systémy
využívajúce sledovanie pohľadu rozdeliť do dvoch skupín: (1) diagnostické (také pri
ktorých sledovanie pohľadu slúži len na zber informácií, ktoré spätne správanie
aplikácie neovplyvňujú, a ak, tak len nepriamo) a (2) ovládacie (pri ktorých
používateľ pohľadom aplikáciu priamo riadi). V kontexte ich využitia pri čerpaní
z davu možno v tejto súvislosti uvažovať nad vylepšeniami ovládania
používateľských rozhraní prispievateľov (napríklad adaptívnym ovládaním rýchlosti
prehrávania sekvencie obrázkov podľa toho, ako ich prispievateľ stíha pohľadom
spracúvať), skôr však možno očakávať zavádzanie diagnostických aspektov.
V každom prípade bude potrebné rozpracovať a (zatiaľ v laboratórnych
podmienkach) overiť prvé koncepty metód čerpania z davu s podporou sledovania
pohľadu. V našom prípade sa chceme v budúcnosti zamerať najmä na scenáre
užitočné pri inteligentnom spracovaní informácií na Webe.
3
Prípadová štúdia: rozlišovanie významu slov
S cieľom demonštrovať potenciál využitia sledovania pohľadu pri čerpaní z davu sme
sa rozhodli uskutočniť malú prieskumnú kvalitatívnu štúdiu v doméne rozlišovania
významu homoným, ako tradičného problému riešeného v automatickom spracovaní
prirodzeného jazyka [13, 14]. Dnešné metódy realizujúce disambiguáciu sú vačšinou
založené na strojovom učení. Vstupom pre ne býva okrem slova, ktorého význam
treba rozlíšiť, vektor slov či text, v kontexte ktorého sa slovo nachádza. Výstupom je
následne určenie významovej kategórie. Pri tvorbe trénovacích vzoriek je toto určenie
úlohou pre človeka v procese čerpania z davu [14].
Cieľom nášho experimentu bolo ukázať, že sledovaním pohľadu ľudí počas
čítania kontextového textu pri rozhodovaní o význame určitého slova odhalíme
pridané informácie, ktoré umožnia trénovaciu vzorku vytvoriť lepšie. Apriori sme
postulovali, že o význame slova budú v kontexte rozhodovať určité slová „s vysokou
rozlišovaciou schopnosťou“ (teda také ktoré sa s predmetným slovom sémanticky
spájajú) a stanovili hypotézu, že práve na ne spočinie pohľad prispievateľa ako
128
posledný pred tým, než vysloví svoje rozhodnutie o priradení významu. V
trénovacom vektore by tým pádom takéto slová mohli dostať vyššiu váhu. Okrem
toho sme predpokladali, že a posteriori manuálnou analýzou zaznamenaného pohľadu
odhalíme ďalšie využiteľné vzorce správania.
Experimentu sa zúčastnilo 5 účastníkov. Každý dostal rovnakú úlohu: určiť
význam toho istého slova („president“) v 10 príkladoch textov (v rozsahu niekoľkých
viet) s jeho výskytom. Možné významy boli 3 (šéf firmy, hlava štátu, prezident USA).
Všetky príklady boli náhodne prevzaté z datasetu SemEval2, používaného práve na
overovanie disambiguácie [14]. Zadania úloh aj opisy možných významov mali
účastníci k dispozícií vo forme prezentácie a svoje rozhodnutia hlásili prítomnému
experimentátorovi. Ich pohľad bol po celý čas sledovaný zariadením Tobii X2-303.
Spolu účastníci uskutočnili 50 určení významov, pričom individuálne určili
význam nesprávne v 5 prípadoch. Tri z týchto chýb pripadli na jeden z desiatich
príkladov (ukázal sa byť ako pomerne náročný). Pomocou väčšinového hlasovania
bola teda dosiahnutá úspešnosť 90%, čo potvrdzuje experimenty Snowa a kol. ktorí
overovali použitie čerpania z davu na prípravu vzoriek pre úlohy disambiguácie [14].
Čo sa týka zapojenia sledovania pohľadu, v 54% prípadov účastníci pred svojím
rozhodnutím spočinuli zrakom na takom slove (spojení slov) v texte, ktoré sme (pred
experimentom) nezávislo od toho označili za slovo s veľkou rozlišovaciou
schopnosťou vzhľadom na určenie významu skúmaného slova. Za moment
rozhodnutia sme považovali buď vyslovenie rozhodnutia participantom alebo zmenu
štýlu čítania, kedy sa podrobné a pomalé čítanie textu menilo na rýchle skenovanie
(ktorým si účastníci potvrdzovali svoju voľbu). Považujeme tak našu a priori
hypotézu za čiastočne potvrdenú, nakoľko vo ostatných prípadoch sa účastníci
rozhodovali prevažne (36%) až po prečítaní celého textu.
A posteriori analýza záznamov o pohľade ukázala niekoľko ďalších skutočností.
Účastníci používali rôzne stratégie čítania textov, traja čítali text od začiatku až do
konca (a čítanie prípadne prerušili, ak sa už rozhodli na základe nejakého
charakteristického slova), dvaja dali prednosť (rýchlejšiemu) skenovaniu slov a viet
v bezprostrednom okolí slova, ktorému určovali význam. K čítaniu celého textu sa
potom uchyľovali len v „ťažších“ prípadoch, kedy im rýchly prieskum okolia slova
nepostačoval. Pre všetkých účastníkov bolo tiež charakteristické opakované čítanie
celých vzoriek alebo ich častí v prípadoch neistoty, pričom najmarkantnejšie to bolo
práve v jedinom zle určenom prípade (ktorý bol zo všetkých najťažší). Ide síce
o pomerne priamočiare, no zároveň v praxi použiteľné zistenie. Odhaľovanie takýchto
a podobných vzorov (neistého) správania by sa pri tvorbe trénovacej vzorky davom
dalo využiť pri váhovaní hlasov jednotlivých prispievateľov s priaznivým efektom pri
vyhodnocovaní sporných prípadoch.
4
Budúcnosť (zhrnutie)
Cieľom tohto príspevku bolo poukázať na reálnu možnosť budúcej výhodnej fúzie
dvoch výskumných a aplikačných oblastí: čerpania z davu a sledovania pohľadu
3
http://www.tobii.com/en/eye-tracking-research/global/
129
abližšie predstaviť výhody tohto spojenia ako aj niektoré aspekty, cez ktoré sa na
budúce prístupy v novej oblasti možno pozerať. Cieľom bolo tiež vyzvať výkumníkov
už teraz v tejto oblasti pôsobiť a overovať svoje koncepty aspoň laboratórne.
Za kľúčový považujeme predovšetkým fakt, že systémy čerpania z davu môžu
benefitovať z pridanej implicitnej spätnej väzby, ktorú sú schopné dodávať práve
zariadenia na sledovanie pohľadu, ktoré sa stávajú cenovo dostupnejšími. Dobré
možnosti využitia sledovania pohľadu vidíme predovšetkým v tých úlohách čerpania
z davu, pri ktorých prispievatelia analyzujú vizuálne informácie a rozhodujú sa na ich
základe: úlohy rozpoznávania obrazu či čítania a značkovania textu. Ako
„najschodnejšiu cestu“ k tvorbe nových metód predpokladáme tranformáciu
existujúcich prístupov čerpania z davu. Za samostatnú skupinu prístupov hodnú
pozornosti tiež považujeme všeobecne použiteľné určovanie mentálneho stavu
prispievateľov (nervozity, únavy, sústredenia, atď.) na základe údajov o ich pohľade.
Možno samozrejme očakávať emergenciu ďalších aspektov systémov čerpania
z davu podporených sledovaním pohľadu (zoznam považujeme za otvorený). Taktiež
čakáme otvorenie ďalších výskumných, technologických a spoločenských otázok
(napr. ako budovať infraštruktúru schopnú spracúvať údaje o pohľade v reálnom čase
pre dostatočnú adaptívnosť procesu, alebo ako budú ľudia vnímať dlhodobú prácu so
sledovaním pohľadu). Ich konceptualizácia je však úlohou pre budúce štúdie.
Poďakovanie. Táto publikácia vznikla vďaka čiastočnej podpore projektov
VG1/0675/11, APVV 0208-10 a podpore MŠVVaŠ SR v rámci OP Výskum a vývoj
pre projekt: Univerzitný vedecký park STU Bratislava, ITMS 26240220084,
spolufinancovaný zo zdrojov Európskeho fondu regionálneho rozvoja.
Referencie
1. Buscher, G., Dengel, A., van Elst, L. Query expansion using gaze-based feedback
on the subdocument level. Proc. int. c. on Research and development in inf.
retrieval (SIGIR '08). ACM, New York, 387-394, 2008.
2. Hansen, D. W., Ji, Q. In the Eye of the Beholder: A Survey of Models for Eyes
and Gaze. IEEE Trans. Pattern Anal. Mach. Intell. 32, 3, 478-500. 2010.
3. Hidayah, N., Zain, M., Hanis, F., Razak, A., Jaafar, A., Zulkipli, P. H. Eye
tracking in educational games environment: evaluating user interface design
through eye tracking patterns. Proc. of the 2nd int. c. on Visual informatics:
sustaining research and innovations, Springer, Berlin, 64-73, 2011.
4. Chen, C., Wu, K., Srinivasan, V., Bharadwaj, R. K. The best answers? think
twice: online detection of commercial campaigns in the CQA forums. Proc. of
the 2013 IEEE/ACM int. c. on Advances in Social Networks Analysis and Mining
(ASONAM '13). ACM, New York, 458-465, 2013.
5. Martínez-Gómez. P. Quantitative analysis and inference on gaze data using natural
language processing techniques. In Proc. of the 2012 ACM int. c. on Intelligent
User Interfaces (IUI '12). ACM, New York, 389-392, 2012.
6. Martínez-Gómez, P., Hara, T., Chen, C., Tomita, K., Kano, Y., Aizawa, A.
Synthesizing image representations of linguistic and topological features for
130
predicting areas of attention. Proc. of the 12th Pacific Rim int. c. on Trends in
Artificial Intel. (PRICAI'12), Springer, Berlin, 312-323, 2012.
7. Mcdonald, S. A., Shillcock, R. C. Eye movements reveal the on-line computation
of lexical probabilities. Psychological Science. 14, 6, 648-652, 2003.
8. Michelucci, P. Handbook of Human Computation. Springer. 2013.
9. Pan, B., Hembrooke, H. A., Gay, G. K., Granka, L. A., Feusner, M. K., Newman,
J. K. The determinants of web page viewing behavior: an eye-tracking study.
Proc. o. t. `04 s. on Eye tracking res. & app. ACM, New York, 147-154, 2004.
10. Quinn, A. J., Bederson B. B. Human computation: a survey and taxonomy of a
growing field. Proc. of the 2011 annual conf. on Human factors in computing
systems (CHI '11). ACM, New York, 1403–1412, 2011.
11. Rakoczi, G., Pohl, M. Visualisation and Analysis of Multiuser Gaze Data: Eye
Tracking Usability Studies in the Special Context of E-learning. Proc. of the
2012 IEEE 12th Int. c. on advanced learning technologies (ICALT '12). IEEE
Computer Society, Washington, DC, 738-739, 2012.
12. Rzeszotarski, J. M., Kittur, A. Instrumenting the crowd: using implicit behavioral
measures to predict task performance. Proc. of the 24th an. ACM s. on User
interface software and tech. (UIST '11). ACM, New York, 13-22, 2011.
13. Sabou, M., Bontcheva, K., Scharl, A. Crowdsourcing research opportunities:
lessons from natural language processing. Proc. of the 12th int. conf. on
Knowledge Management and Knowledge Technologies. ACM, New York, 2012.
14. Snow, R., O'Connor, B., Jurafsky, D., Ng. A. Y. Cheap and fast---but is it good?:
evaluating non-expert annotations for natural language tasks. Proc. of the c. on
Empirical Methods in NLP. ACL, Stroudsburg, PA, USA, 254-263, 2008.
15. Šimko, J., Bieliková, M. Semantic Acquisition Games, Springer, (2014).
16. Wang, H., Chignell, M., Ishizuka, M. Empathic tutoring software agents using
real-time eye tracking. Proc. of the 2006 s. on Eye tracking research &
applications (ETRA '06). ACM, New York, 73-78, 2006.
17. Xu, S., Jiang, H., Lau, F. C. M. Personalized online document, image and video
recommendation via commodity eye-tracking. Proc. of the 2008 ACM c. on
Recommender systems. ACM, New York, 83-90, 2008.
18. Xu, S., Jiang, H., Lau, F. C. M. User-oriented document summarization through
vision-based eye-tracking. Proc. of the 14th int. c. on Intelligent user interfaces
(IUI '09). ACM, New York, 7-16, 2009.
Annotation:
Crowdsourcing reinforced by gaze tracking
In this paper, we propose a vision of synergy of two research (but also applicational)
areas of crowdsourcing and gaze tracking. While the practice of crowdsourcing is
nowadays widespread, the gaze tracking has been quantitatively bounded by high
prices of technologies. However, this is slowly changing and in gaze trackingm we
gradually acquire new source of implicit user feedback, valuable in crowdsourcing
tasks. We offer theoretical arguments supporting the fusion of crowdsourcing and
gaze tracking and for demonstration present a small explorative study of
crowdsourced acquisiton of traning set usable for word sense disambiguation models.
131
Concept of Semantic Knowledge Base
for Data Mining of Business Rules
Stanislav Vojı́ř
Department of Information and Knowledge Engineering,
Faculty of Informatics and Statistics
University of Economics, Prague, Czech Republic,
[email protected]
Abstract. This paper presents a concept of a semantic knowledge base
(in RDF form). This knowledge base will be usable for combination of
data mining of association rules and definition of business rules sets. The
data mining and domain experts will be able to use it for extension of
possibilites of definition not only user-defined business rules, but also
business rules generated from association rules gained from data mining
tasks. This research is a part of EasyMiner project.
Keywords: data mining, association rules, business rules, knowledge
base, background knowledge
1
Introduction
Let’s consider a business analyst, who is working in a small bank. For example,
let’s call him David. David should prepare a classification model for assessing
the creditworthiness of clients. He has at his disposal a dataset describing history of loans repaying in last 3 years. Applying data mining algorithms yields
a classification model in form of rules. David wants to combine gained classification model with an older rule set with description of problematic clients. The
older rule set was prepared by a domain expert one year ago and was successfully
applied yet. Currently, David has a problem: The rule sets are based on different
data dictionaries, with another names of attributes with another named groups
of values. He would like to have a complex data dictionary for combination of
rules from different sources.
Today, there is an increasing demand for decision support systems. The limitation of quality of each decision support system is quality and complexity of the
used knowledge base. Suitable form of a knowledge base is a set of business rules.
The advantage of knowledge base in a form of business rules is its modularity.
The saved rules can be independently interpreted and evaluated. For combining
of rules obtained from multiple resources, it is necessary to define all rules using
one shared data dictionary (in business rules terminology, it is called ”terms
dictionary”). This paper presents a concept of knowledge base (in RDF form),
which is suitable for support of data mining of classification business rules.
132
2
Related work
Business rules are simple, user-friendly rules presented in textual or graphical
form. Concept of business rule is based on the premise: ”Rules build on facts,
and facts build on terms.” Research of ”business rules” generation from data
mining results is a current, yet not very exposed, research topic.
To the best of our knowledge, the only publicly available software solution
to business rule learning is Rule learner [6]. Rule learner is a part of OpenRules
Decision Management System. The learned rules are presented in the form of
decision tables in Microsoft Excel worksheets.
There are especially systems for interactive data mining of association rules
and classification models. It is appropriate to mention systems MIME Framework [2] and BigML [1]. Another approach based on clustering algorithms in
combination with ontologies is proposed in [5].
In EasyMiner project, there has been explored the possibilities of interactive
preparation of sets of business rules for classification tasks. The business rules
are generated from association rules obtained from data mining results. An advantage of using association rules is their great descriptiveness. It is possible to
build really complex classification model with only small risk of overfitting. The
test results of automatic generation of business rules from association rules and
a demo of business rules editor were presented on the conference RuleML 2014.
[3] [7] This paper follows the demo implementation of business rules editor and
simple rules base in EasyMiner project. The designed knowledge base should allow combination of rules from different sources and their simple generation from
data mining tasks. This approach should simplify the preparation of rule based
classification models and also evaluation of rules novelty. For the structure of
the designed knowledge base it is also used experiences of building background
knowledge base for data mining tasks definitions in the form of XML files. [4]
3
Concept of semantic knowledge base
For definition of business rules it have to be used a complex terms dictionary.
Suitable form of this dictionary is an ontology. The dictionary is shared by
all rules saved in the knowledge base. A shared dictionary will also be a good
medium for connection of results gained from more data mining tasks - especially
in case of cooperation of more data mining and domain experts. For data mining,
instructions for data preprocessing should also be shared using the knowledge
base.
The designed knowledge base should be usable in connection with different
datasets. For this purpose, it is necessary to use an appropriate level of abstraction. The basic entities of the knowledge base are meta-attributes. Meta-attribute
is an abstraction of one property from the real world (age, sex, height, loan, rating
etc.). Each meta-attribute can be defined in more formats. The meta-attributes
with their formats are basic terms for definition of rules. The knowledge base can
also be divided into two parts: 1) definitions of preprocessings (for data mining),
2) saved (business) rules. The structure of basic entities is presented on Figure 1.
133
Fig. 1. Schema of meta-attributes and rules saved in knowledge base
How should it work: An user wants to use EasyMiner for data mining analysis of a dataset and prepare a classification model. After uploading the dataset,
EasyMiner system prompts the user to map columns from the dataset to metaattributes (respectively their formats) saved in the knowledge base. For each column, the user selects a suitable mapping, or let the system to prepare a new
meta-attribute/format. For data mining analysis, the user have to generate attributes from columns in the dataset (using preprocessing definitions). It is possible to simply use an existing preprocessing definition saved in knowledge base (for
example ”Age in years” can be divided into intervals with names ”Children” and
”Adult”), or define a new one. During the preparation of classification model, the
user can select rules from data mining results, define own rules, or select rules
from another tasks - without restrictions of attribute names and values bins. For
example, the user can also define a rule about persons older than 70 years, but
in the data mining attribute, there is only interval [18;+inf ) called ”Adult”.
The designed knowledge base should also be useful for evaluating the novelty
of rules in data mining results. The user can view previously saved rules related
(similar) to a selected rule and use them for rating of their similarity. The computational complexity of such request should not be too high. In the first step,
the system will be able to filter rules based on same meta-attributes, in the second step, the overlaps of values bins should be evaluated. The knowledge base
is saved in the form of RDF graph. The individual entities (e.g. meta-attributes,
attributes, formats) are instances of ontological classes. They are identified by
URIs. To create an applicable classification model, the selected rules are exported
from the knowledge base to DRL form, which is used in JBoss Drools.1
1
JBoss Drools - business rules management and execution system,
http://drools.org
134
4
Conclusion and future work
Currently, the author has implemented a first version of the knowledge base
presented in this paper. The knowledge base has been implemented in form of
web application in PHP, which is accessible using REST API. It is currently used
for integration of EasyMiner export of selected association rules with business
rules editor and with component for testing of classification models. In the near
future the knowledge base should replace currently used preprocessing module
in the EasyMiner system. For more details, please visit http://easyminer.eu
The advantage of presented concept of knowledge base is in the direct connection of data mining tasks with knowledge base containing preprocessing definitions and with saved business rules. The assumption is that the connection of
data mining datasets to knowledge base should greatly facilitate the data mining
analysis and the preparation of classification models. The system should also be
able to validate the novelty of founded data mining results.
The further work should be focused on testing of the described approach.
There should be tested mainly the performance demands, especially in case of
really big counts of triples saved in the RDF store. Possibly, it could be suitable to
check more variants of structure of the knowledge base.2 Following steps should
be implementation of the validation for the novelty of rules in data mining results
and the investigation of an effective way of values mappings between different
formats.
References
1. BigML, Inc. Bigml is machine learning for everyone. http://www.bigml.com. Accessed: 2014-05-30.
2. Bart Goethals, Sandy Moens, and Jilles Vreeken. MIME: A framework for interactive visual pattern mining. In Proceedings of the 17th ACM SIGKDD International
Conference on Knowledge Discovery and Data Mining, KDD ’11, pages 757–760,
New York, NY, USA, 2011. ACM.
3. Tomáš Kliegr, Jaroslav Kuchař, Davide Sottara, and Stanislav Vojı́ř. Learning
business rules with association rule classifiers. In Rules on the Web. From Theory
to Applications, pages 236–250. Springer, 2014.
4. Tomáš Kliegr, Stanislav Vojı́ř, and Jan Rauch. Background knowledge and pmml:
first considerations. In Proceedings of the 2011 workshop on Predictive markup
language modeling, pages 54–62. ACM, 2011.
5. Claudia Marinica and Fabrice Guillet. Knowledge-based interactive postmining
of association rules using ontologies. IEEE Transactions on Knowledge and Data
Engineering, 22(6):784–797, 2010.
6. OpenRules, Inc. Rule learner. http://www.openrules.com/rulelearner.htm. Accessed: 2014-04-15.
7. Stanislav Vojıř, Přemysl Václav Duben, and Tomáš Kliegr. Business rule learning
with interactive selection of association rules. In RuleML Challenge 2014. 2014.
2
In the currently presented version, each rules consists of many entities, but it could
be saved also in another structured form in one entity (e.g. XML or JSON).
135
Rejstřı́k autorů / Author Index
Barla, Michal, 50, 54
Bieliková, Mária, 50, 54, 78, 88, 92
Blaško, Miroslav, 66
Bratková, Eva, 70
Butka, Peter, 28
Obitko Marek, 6
Čertický, Michal, 58
Rozinajová, Viera, 78
Ezzeddine, Anna Bou, 78
Serra, Simone, 58
Srba, Ivan, 92
Stecenková, Marina, 118
Svátek, Vojtěch, 58, 62
Paralič, Ján, 104
Polášek, Ivan, 50
Popelı́nský, Lubomı́r, 32, 98
Holub, Michal, 88
Homola, Martin, 58
Ševcech, Jakub, 88
Šimko, Alexander, 58
Šimko, Jakub, 54, 122
Šimko, Marián, 74
Šmı́d, Marek, 66
Chudá, Daniela, 50
Jakub, Dominik, 104
Jirkovský Václav, 6
Jurčo, Juraj, 98
Tvarožek, Jozef, 54, 74
Kľuka, Ján, 58
Křehlı́k, Karel, 98
Křemen, Petr, 66, 108
Kliegr, Tomáš, 62, 84
Koncz, Peter, 104
Kordı́k Pavel, 38
Kosková, Gabriela, 78
Kostov, Bogdan, 66
Kouba, Zdeněk, 66
Kovárová, Alena, 74
Kučerová, Helena, 70
Kuchař, Jaroslav, 84
Kuznětsov Stanislav, 38
Vaculı́k Karel, 32
Vacura, Miroslav, 58
Vitvar, Tomáš, 3
Vojı́ř, Stanislav, 132
Zamazal, Ondřej, 58
Lacko, Peter, 50
Ledvinka, Martin, 66, 108
Lucká, Mária, 78
Mařı́k Radek, 16
Móro, Róbert, 88
Návrat, Pavol, 50, 54, 74, 78
Nezvalová Leona, 32
136
Vojtěch Svátek, Ondřej Zamazal
Editoři / Editors
Sbornı́k / Proceedings
13. ročnı́k konference Znalosti /
13th Annual Conference Znalosti
Vydavatel: Vysoká škola ekonomická v Praze
Nakladatelstvı́ Oeconomica
Počet stran: 150
Mı́sto, rok, vydánı́: Praha, 2014, 1.
Publisher: University of Economics, Prague
Oeconomica Publisher
Number of Pages: 150
Place, Year, Edition: Prague, 2014, 1st
ISBN 978-80-245-2054-4