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 bB a aA. Preto, R(b,a) reprezentuje stupeň z L(a) ktorý má objekt bB 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 aA L(a) and : aA L(a) 2B takto: X a inf ( R(b, a)) , bX g b B : a A, g (a) R(b, a). Pár zobrazení (,) tvorí Galoisovu konexiu medzi 2B and aA L(a). Potom máme C(B,A,L,R) ako množinu všetkých dvojíc (X,g), kde X B, gaA 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 X1X2 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 bB je R(b) element zo súčinu zväzov aA 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 = aA L(a), t.j., 1L(a)=1 L(a) pre všetky aA. 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 := aA 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