ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE FAKULTA INFORMAČNÍCH TECHNOLOGIÍ KATEDRA TEORETICKÉ INFORMATIKY
Diplomová práce
Vytěţování vědeckovýzkumných dat Bc. Vojtěch Medonos
Vedoucí práce: Ing. Pavel Kordík, Ph.D. 9. května 2013
Poděkování Na tomto místě bych rád poděkoval Ing. Pavlu Kordíkovi, Ph.D. za vedení této práce, za jeho náměty a připomínky. Také děkuji Marcele Bačovské za stylistické a textové úpravy.
Prohlášení Prohlašuji, ţe jsem předloţenou práci vypracoval samostatně a ţe jsem uvedl veškeré pouţité informační zdroje v souladu s Metodickým pokynem o etické přípravě vysokoškolských závěrečných prací. Beru na vědomí, ţe se na moji práci vztahují práva a povinnosti vyplývající ze zákona č. 121/2000 Sb., autorského zákona, ve znění pozdějších předpisů, zejména skutečnost, ţe České vysoké učení technické v Praze má právo na uzavření licenční smlouvy o uţití této práce jako školního díla podle § 60 odst. 1 autorského zákona.
V Praze dne 9. Května 2013
...................................................
České vysoké učení technické v Praze Faulta informačních technologií © 2013 Vojtěch Medonos. Všechna práva vyhrazena. Tato práce vznikla jako školní dílo na Českém vysokém učení technickém v Praze, Fakultě informačních technologií. Práce je chráněna právními předpisy a mezinárodními úmluvami o právu autorském a právech souvisejících s právem autorským. K jejímu užití, s výjimkou bezúplatných zákonných licencí, je nezbytný souhlas autora.
Odkaz na tuto práci Medonos, Vojtěch. Vytěžování vědeckovýzkumných dat. Diplomová práce. Praha: České vysoké učení technické v Praze, Fakulta informačních technologií, 2013.
Abstract This thesis focuses on data mining of public research data. First it covers issues related to public data preprocessing. Analytical questions related to data about stateaided research projects are formulated afterwards. These questions are then solved using exploratory data analysis and visualization.
Keywords
Visualization, Data mining, Public data, Exploratory data analysis,
Clusters
Abstrakt Tato práce se zabývá vytěţováním veřejných vědeckovýzkumných dat. Nejdříve seznámí
čtenáře
s problematikou
předzpracování
veřejných
dat.
Poté
jsou
formulovány analytické otázky týkající se dat o projektech dotovaných ze státního rozpočtu, získaných z Informačního systém výzkumu, experimentálního vývoje a inovací. Následně jsou tyto otázky řešeny převáţně pomocí metod explorativní analýzy a vizualizace.
Klíčová slova Shluky
Vizualizace, Data mining, Veřejná data, Explorativní analýza,
Obsah Úvod
1
1 Příprava dat a použité prostředky
3
1.1 Veřejná data ....................................................................................................................... 3 1.2 Špinavá data ...................................................................................................................... 3 1.3 Metody předzpracování dat .............................................................................................. 4 1.3.1 Čištění dat ................................................................................................................... 4 1.3.2 Integrace dat ............................................................................................................... 6 1.3.3 Transformace dat ....................................................................................................... 7 1.3.4 Redukce dat ................................................................................................................ 7 1.4 Pouţité nástroje................................................................................................................. 8 1.4.1 Gephi ........................................................................................................................... 8 1.4.2 RapidMiner ............................................................................................................... 11 1.5 Zdroje dat .........................................................................................................................12 1.5.1 IS VaVaI .....................................................................................................................12 1.5.2 ARES ..........................................................................................................................13 2 Analýza a návrh
15
2.1 Architektura datových toků ............................................................................................. 15 2.2 Návrh implementace .......................................................................................................16 2.3 Získání dat ....................................................................................................................... 17 2.3.1 Data z IS VaVaI.......................................................................................................... 17 2.3.2 Data z ARES .............................................................................................................. 17 3 Implementace
19
3.1 Vytvoření pluginu.............................................................................................................19 3.2 Tvorba layoutu .................................................................................................................19 3.3 Popis algoritmu................................................................................................................21 4 Analýza dat
23
4.1 Popis dat.......................................................................................................................... 23 4.1.1 Data z IS VaVaI ......................................................................................................... 23 4.1.2 Data z ARES ............................................................................................................. 24 4.2 Obecné předzpracování dat ............................................................................................ 24 4.2.1 Data z IS VaVaI......................................................................................................... 24 4.2.2 Data z ARES ............................................................................................................. 25 4.3 Analytické otázky ............................................................................................................ 26
4.3.1 Párování poskytovatelů a příjemců .......................................................................... 26 4.3.2 Počet výstupů z projektů .......................................................................................... 26 4.3.3 Neúspěšné projekty.................................................................................................. 26 4.3.4 Analýza shluků subjektů .......................................................................................... 26 4.3.5 Analýza osob ............................................................................................................ 26 4.4 Předzpracování dat ......................................................................................................... 27 4.4.1 Párování poskytovatelů a příjemců .......................................................................... 27 4.4.2 Počet výstupů z projektů .......................................................................................... 27 4.4.3 Neúspěšné projekty.................................................................................................. 28 4.4.4 Analýza shluků subjektů .......................................................................................... 28 4.4.5 Analýza osob ............................................................................................................ 29 4.5 Modelování ..................................................................................................................... 29 4.5.1 Párování poskytovatelů a příjemců .......................................................................... 29 4.5.2 Počet výstupů z projektů .......................................................................................... 34 4.5.3 Neúspěšné projekty .................................................................................................. 38 4.5.4 Analýza shluků subjektů ...........................................................................................41 4.5.5 Analýza osob............................................................................................................. 50 4.6 Interpretace výsledků ..................................................................................................... 65 4.3.1 Párování poskytovatelů a příjemců .......................................................................... 65 4.3.2 Počet výstupů z projektů .......................................................................................... 65 4.3.3 Neúspěšné projekty.................................................................................................. 65 4.3.4 Analýza shluků subjektů .......................................................................................... 66 4.3.5 Analýza osob ............................................................................................................ 66 Závěr
69
Literatura
71
A Seznam použitých zkratek
73
B Význam kódů podoborů
75
C Obsah přiloženého CD
79
Seznam tabulek Tabulka 4.1 - nejsilnější párování podle objemu financí ............................................................... 34 Tabulka 4.2 - kódové označení hlavních oborů .............................................................................. 34 Tabulka 4.3 - počty výstupů podle oboru ........................................................................................ 36 Tabulka 4.4 - subjekty s nejvyšším objemem přijatých financí na neúspěšné projekty ........... 38 Tabulka 4.5 - nejnákladnější neúspěšné projekty .......................................................................... 39 Tabulka 4.6 - objem vydaných financí na neúspěšné projekty podle poskytovatele ................. 40 Tabulka 4.7 - subjekty s nejvyšším počtem projektů ..................................................................... 43 Tabulka 4.8 - projekty s nejvíce zúčastněnými subjekty ............................................................... 43 Tabulka 4.9 - osoby, které se účastnily nejvíce projektů ............................................................... 52 Tabulka 4.10 - osoby, které se účastnily projektů za nejvíce peněz ............................................. 64 Tabulka B.1 - význam kódů podoborů ............................................................................................. 77
Seznam obrázků Obrázek 1.1 - ukázka rozhraní Gephi.......................................................................................... 9 Obrázek 1.2 - příklad Graph coarsening layoutu ..................................................................... 10 Obrázek 1.3 - příklad shlukování............................................................................................... 11 Obrázek 1.4 - ukázka rozhraní RapidMineru ............................................................................12 Obrázek 1.5 - struktura IS VaVaI ..............................................................................................13 Obrázek 2.1 - schéma datových toků..........................................................................................15 Obrázek 2.2 - ukázka vizualizace vztahů na serveru podnikani.cz............................................16 Obrázek 3.1 - diagram tříd připojeného pluginu.......................................................................20 Obrázek 4.1 - proces v RapidMineru - import souboru osoba.csv............................................25 Obrázek 4.2 - proces v RapidMineru - import souboru subjekt.csv.........................................26 Obrázek 4.3 - proces v RapidMineru - import dat o poskytovatelích a příjemcích..................27 Obrázek 4.4 - proces importu dat v RapidMineru pro analýzu shluků....................................28 Obrázek 4.5 - graf v Gephi - párování poskytovatelů a příjemců, hodnocení uzlů podle váţeného výstupního stupně......................................................................................................30 Obrázek 4.6 - graf v Gephi - párování poskytovatelů a příjemců, hodnocení uzlů podle váţeného vstupního stupně........................................................................................................31 Obrázek 4.7 - nejsilnější párování poskytovatelů a příjemců....................................................33 Obrázek 4.8 - ukázka grafu pro obor A - společenské vědy.......................................................35 Obrázek 4.9 - projekty s nejvíce výstupy v oboru A a jejich zařazení do podoboru..................37 Obrázek 4.10 - graf párování projektů a účastnících se subjektů..............................................42 Obrázek 4.11 - vyfiltrovaný graf okolí osoby do hloubky 2........................................................51 Obrázek 4.12 - vyfiltrovaný graf osob, které se účastnily více neţ 200 projektů......................52
Seznam grafů Graf 4.1 - poskytovatelé podle vydaných prostředků ..................................................................... 32 Graf 4.2 - příjemci podle přijatých prostředků............................................................................... 32 Graf 4.3 - průměrný počet výsledků v RIV podle oboru................................................................ 36 Graf 4.4 - histogram počtu výsledků z projektů; logaritmická osa .............................................. 38 Graf 4.5 - závislost váţeného koeficientu úspěšnosti na koeficientu úspěšnosti ....................... 41 Graf 4.6 - histogram počtů účastí osob na projektech; logaritmická osa.................................... 53 Graf 4.7 - histogram hodnot průměrných výdajů na výsledek; logaritmická osa ...................... 64
Úvod V dnešní době má díky internetu téměř kaţdý přístup k obrovskému mnoţství veřejných dat. Můţe se jednat například o samotné obsahy webových stránek či data získaná ze serveru prostřednictvím webového rozhraní. V druhém případě se jedná buď o data, která někdo zveřejnil za určitým účelem a nebo musí být zveřejněna z legislativních důvodů. Z takových dat je často moţné vytěţit zajímavé informace. Příkladem takových dat jsou data o vědecko-výzkumných projektech realizovaných v České republice, na které byla poskytnuta státní dotace. Tyto údaje jsou ze zákona archivovány a jsou prostřednictvím webového rozhraní přístupné veřejnosti. Protoţe se na tyto projekty kaţdoročně vydá ze státního rozpočtu mnoho miliard korun, je ţádoucí tato data analyzovat. Cílem této práce je popsat a zhodnotit problematiku veřejných dat. Následně pomocí nástrojů explorativní analýzy, jako je vizualizace či shlukování, podat odpovědi na definované analytické otázky týkající se těchto dat. V rámci rozsahu diplomové práce nelze vytěţit vše, proto se zaměřím na konkrétní definované úkoly. Data budou nicméně k dispozici pro budoucí analýzu. V práci se nejdříve zaměřím na problém zpracování veřejných dat. Následně popíši nástroje, které budu v práci pouţívat pro dosaţení stanovených cílů. Dále ukáţi, jakým způsobem byla data pro analýzu získána a předzpracována. V další kapitole se zaměřím na implementaci pluginu do programu Gephi, který bude pouţit pro zkoumání určitých analytických otázek. V hlavní části zformuluji analytické otázky a popíši přípravu dat pro jejich zodpovězení. Pro kaţdou z otázek následně popíši nalezené výsledky a jejich interpretaci.
1
2
1 Příprava dat a použité prostředky V této kapitole pojednám obecně o veřejných datech, jejich získání a předzpracování. Dále představím softwarové nástroje pouţité v této práci. Na závěr stručně popíši zdroje, ze kterých byla data získána.
1.1 Veřejná data Veřejná data jsou jakákoliv data dostupná pro všechny, především prostřednictvím internetu. Část těchto dat tvoří data o rozličných činnostech zpřístupňovaná orgány státní správy. V současné době probíhá v České republice kampaň za otevřená data, která si klade za cíl zajistit, aby co nejvíce subjektů, které hospodaří se státními prostředky, zveřejňovaly data o své činnosti. Z těchto dat lze vytěţit zajímavé informace, které mohou přispět ke zlepšení a zefektivnění fungování veřejného sektoru. Při zveřejňování dat je třeba dbát na to, aby byly přístupné skrze rozhraní, které je všeobecně dobře dostupné. Ideálním případem je webový portál s formulářem umoţňující vyhledávání, filtrování a následný export dat. Tento export musí proběhnout do standardního, dostupného, nejlépe textového formátu. To zajistí, ţe data můţe následně přečíst kdokoliv bez pouţití speciálního softwaru. Při sběru těchto dat dochází k chybám, které mají vliv na jejich kvalitu. O takových datech říkáme, ţe jsou špinavá.
1.2 Špinavá data Veřejná data jsou náchylná k celé řadě problémů, které je třeba odstranit před započetím samotné analýzy. Data jsou: 3
-
zašuměná - obsahují odlehlé a jiné nepatřičné hodnoty
-
nevalidní - obsahují hodnoty, které jsou nesmyslné, např. věk = -10
-
nekompletní - obsahují chybějící hodnoty atributů
-
nekonzistentní - obsahují nesrovnalosti, např. pokud v průběhu sběru dat došlo ke změně kódování hodnot atributu z {1,2,3} na {A,B,C}
-
duplicitní - obsahují více stejných záznamů
Tyto problémy mají mnoho příčin. Nekompletní data mohou vzniknout chybou hardwaru či softwaru, ale také nevyplněním hodnoty ze strany člověka při sběru dat. To nastává často například v tom případě, kdyţ je to nepovinná poloţka. Šum v datech můţe vzniknout špatnými postupy při sběru dat, chybou člověka či počítače, ale také při přenosu dat. Nekonzistentnost se často vyskytuje u datových souborů sloučených z několika různých zdrojů. Vzniká také při porušení funkční závislosti v datech či při změně definice atributů v průběhu sběru dat.
1.3 Metody předzpracování dat Proces předzpracování je často nejvíce časově náročnou, a tím pádem nejdraţší, částí celého data miningového procesu. Proto je ho třeba dobře naplánovat a dělat ho efektivně. Většinou lze tento proces rozdělit do 4 hlavních částí: -
čištění dat
-
integrace dat
-
transformace dat
-
redukce dat
Kaţdý z těchto úkolů má jiné cíle a nemusí nutně proběhnout v tomto pořadí. Všechny tyto kroky vedou ke zlepšení kvality dat a tím i ke zlepšení výsledků následné analýzy. 1.3.1 Čištění dat Čištění dat má za cíl odstranit výše uvedené problémy v datech. Doplňuje chybějící hodnoty, sniţuje šum, identifikuje odlehlé hodnoty a opravuje nekonzistence. V závislosti na datasetu se metody čištění mohou lišit, neexistuje univerzální metoda. Je třeba ošetřit:
4
Nevalidní data: Provedeme validaci, tedy ověříme, zda hodnoty všech atributů jsou v předem stanoveném rozmezí. Řádky obsahující nevalidní hodnoty je třeba vymazat či opravit. Pokud je nevalidních hodnot větší mnoţství, je třeba hledat příčinu, ne pouze opravovat následek u jednotlivých hodnot. Pokud se takovou příčinu podaří nalézt, je moţné nevalidní hodnoty opravit hromadně. Duplicitní data: Provedeme kontrolu duplicit a případně nalezené odstraníme Nekompletní data: Způsobů ošetření nekompletních dat je několik. Výběr nejvhodnější metody je opět závislý na datasetu. Obecně nelze rozhodnout, zda je hodnota prázdná či chybějící. Chybějící hodnoty lze: -
ignorovat - nepříliš efektivní způsob, nejména pokud se výrazně liší procento chybějících hodnot u jednotlivých atributů
-
doplnit hodnoty ručně - neefektivní a časově náročný způsob, zejména na velkých datasetech
-
doplnit hodnoty automaticky globální konstantou - nahradit všechny chybějící hodnoty např. nulou či -∞. Nepříliš vhodný způsob, protoţe při analýze mohou tyto hodnoty tvořit určitý pattern a zkreslit tak výsledky
-
doplnit střední hodnotou daného atributu - zkresluje data
-
doplnit střední hodnotu atributu pro všechny řádky ze stejné třídy - chytřejší neţ předchozí způsob, nezkresluje tolik data
-
doplnit nejpravděpodobnější hodnotu - nejlepší způsob, tuto hodnotu lze odvodit na základě ostatních hodnot atributu např. pomocí Bayesova teorému či pomocí rozhodovacího stromu
Všechny způsoby doplnění hodnot na základě ostatních dat nějakých způsobem zkreslují data a doplněné hodnoty mohou být chybné. Poslední způsob vyuţívá nejvíc informací v datech a poskytuje tak nejpřesnější hodnoty. Zašuměná data: Šum je náhodná chyba či odchylka v měřené proměnné. Šum v datech je neţádoucí, protoţe zkresluje vytvářené modely. Metody pro sníţení šumu jsou: -
equal-width binning - rozdělení dat do N intervalů stejné šířky. Nejjednodušší způsob, který je ale náchylný na odlehlé hodnoty a nerovnoměrné rozloţení
5
-
equal-height binning - rozdělení do N intervalů, které obsahují přibliţně stejné mnoţství dat. Obecně lepší metoda neţ equal-width binning, protoţe není tak náchylná na odlehlé hodnoty a nerovnoměrné rozloţení dat. Je vhodné vytvořit speciální intervaly pro zvláštní hodnoty, např. pro nulu
-
clustering - detekce odlehlých hodnot pomocí tvorby clusterů, které sdruţují sobě blízké hodnoty
-
kombinovaná kontrola počítače a člověka - počítač můţe analyzovat dataset na nesrovnalosti a jakékoli podezřelé jevy, člověk následně vybere ty hodnoty, které jsou špatné. Tento postup je moţný pouţít například při analýze ručně psaného textu, protoţe často nelze automatizovaně rozhodnout a zásah člověka je ţádoucí.
-
regrese - redukce šumu pomocí mapování dat na regresní funkci. Lze pouţít lineární regresi pro dvě proměnné či vícenásobnou lineární regresi pro mapování do multidimenzionálního prostoru.
Nekonzistentní data: Nekonzistentnost v datech lze opravit ručně pomocí externích znalostí. Pokud známe nějaké funkční závislosti mezi atributy, můţeme vyuţít tuto znalost pro automatizované opravení nekonzistencí. Častým problémem je datum, které je třeba převést na jednotný formát. Datum ve formátu YYYYMMDD nezachovává intervaly, je proto vhodné pouţít jinou reprezentaci. Unix system date je počet vteřin od 1.1.1970, tato reprezentace intervaly zachovává, ale je špatně čitelná pro člověka, je tedy nutné následně pouţít převod na člověku srozumitelný formát. 1.3.2 Integrace dat V průběhu data miningového procesu se často stane, ţe potřebujeme analyzovat data z různých zdrojů. Je třeba je spojit do jednotného celku s jasným významem, jinak není moţné analýzu provést. Jedním z problémů je tzv. identifikace entit. Bez externích znalostí si nemůţeme být jisti, ţe atributy „cust_id“ v jedné databázi a „customer“ v druhé databázi označují stejnou entitu. Pro řešení mnoha problémů při integraci lze pouţít vhodná metadata - data o datech. Pomocí metadat získám informace o významu jednotlivých hodnot a tyto informace poté můţeme vyuţít při integraci. Je třeba také ošetřit stejně pojmenované atributy a podobné zvláštní případy. Při integraci můţe nastat situace, ţe informace z některých zdrojů jsou
6
redundantní, taková data jsou v integrovaném datasetu neţádoucí, protoţe zbytečně navyšují výpočetní sloţitost. 1.3.3 Transformace dat Transformací se rozumí libovolná změna hodnot, atributů či metadat, které jsou součástí datasetu. Transformace dat napomáhá zlepšení výkonnosti modelů či sníţení výpočetní náročnosti. Transformace dat zahrnuje: -
smoothing - odstranění šumu z dat
-
agregace - aplikace sumárních a agregačních operátorů na data, např. výpočet měsíčních trţeb z trţeb denních
-
generalizace - mapování dat „niţší úrovně“ na obecnější koncept pomocí hierarchie. Příkladem můţe být numerický atribut výška, který lze namapovat na hodnoty {malý, středně vysoký, vysoký}.
-
tvorba atributů - vytváření nových atributů z původních. Můţe přinést potenciální problémy s interpretací
-
normalizace - škálování hodnot tak, aby byly z určitého zvoleného intervalu a lépe se s nimi pracovalo. Existuje mnoho způsobů normalizace a kaţdý se hodí pro jiná data.
1.3.4 Redukce dat Databáze a datové sklady mohou obsahovat velké mnoţství dat. Komplexní analýza můţe proto vyţadovat velké mnoţství času a výpočetního výkonu, někdy můţe být dokonce neúnosná. Cílem redukce dat je tedy získat část datasetu, jehoţ analýza poskytne nepříliš odlišné výsledky od analýzy neredukovaných dat. Obecně se metody redukce dat dají rozdělit na ty, které redukují dimenzionalitu a na ty, které sniţují numerositu. -
redukce dimenzionality - i při poměrně malém počtu atributů náročnost analýzy strmě roste. Je tedy třeba atributy zredukovat tak, aby náročnost klesla, ale nemělo to negativní vliv na výsledek. Algoritmy výběru příznaků (feature selection) hledají takové atributy, které mají největší diskriminační účinek v rámci datasetu a mají tak největší váhu. Výběr algoritmů nejenţe sniţuje výpočetní náročnost, ale často také zlepšuje zpřesňuje výsledky analýzy, protoţe odstraní atributy, které mohou vnášet do dat šum. Pro výběr 7
příznaků existuje mnoho algoritmů, obecně se dělí do dvou skupin: filtry a wrappery.
Filtry
vybírají
příznaky
nezávisle
na
následně
pouţitém
klasifikátoru. Oproti tomu wrappery vybírají takové podmnoţiny příznaků, které vykazují nejlepší zdatnost na určitém klasifikátoru. Pro redukci dimenzionality lze také pouţít kompresi (extrakci příznaků). Jedná se o mapování vektoru příznaků na nový vektor kratší délky. Tato komprese můţe být ztrátová či neztrátová. Nevýhodou je, ţe nové atributy se těţko interpretují. Dalším pozitivním efektem výběru příznaků je sníţení nákladů na měření či získání dat. Ty atributy, které se ukáţí jako nedůleţité nepotřebujeme a nemusíme je měřit. Při extrakci příznaků naopak potřebujeme všechny atributy, takţe náklady nesníţíme. -
redukce numerosity - klade si za cíl změnšení počtu datových vektorů. Obecně se dělí na parametrické a neparametrické metody. Parametrické metody se snaţí data modelovat a uchovávat pouze parametry. Neparametrické metody s modely nepracují, ale odstraňují data nepotřebná při budoucí analýze. Dvě základní skupiny neparametrických metod jsou condensing a editing.
condensing - zaměřuje se na zmenšení trénovací mnoţiny. Zachovává pouze důleţitá data blízká rozhodovacím hranicím. Ideálním výstupem je minimální mnoţina konzistentní vůči rozhodovací hranici. Většina metod je zaloţena na grafech sousedů, liší se definicí sousedství.
editing - cílem editingu je vyhlazení rozhodovací hranice a odstranění šumu z dat. Výsledkem jsou často shluky dat ve větší vzdálenosti od rozhodovací hranice. Metody editingu jsou často zaloţeny na pravidle nejbliţšího souseda.
V ideálním případě pouţijeme editing pro vyhlazení rozhodovací hranice a poté zkondenzujeme mnoţinu tak, aby tuto hranici zachovala.
1.4 Použité nástroje 1.4.1 Gephi Gephi je opensourcový nástroj pro vizualizaci a explorativní analýzu komplexních systémů či grafů. Je multiplatformní, neboť je napsán v jazyce Java na platformě Netbeans. Gephi vyuţívá 3D renderovací engine pro zobrazení velkých sítí v reálném čase. Díky flexibilní a multitaskové architektuře umoţňuje snadnou práci s velkými 8
datasety. Vizualizace dat a výsledků přináší nové moţnosti analýzy a interpretace. Díky ní můţe expert interaktivně zkoumat i velmi komplexní sítě a grafy. Gephi je vhodným nástrojem pro analýzu dat sociálních sítí. Tato data mají přirozenou grafovou strukturu a často obsahují shluky, které je moţné pomocí Gephi rozlišit a filtrovat.
Obrázek 1.1 - ukázka rozhraní Gephi
1.4.1.1 Hlavní funkce Vizualizace v reálném čase Engine Gephi je vytvořen pro rychlou manipulaci s velkými grafy a sítěmi. Zvládne pracovat s grafy s 50 000 uzly a aţ milionem hran. Pomocí dynamického filtrování a dalších uţitečných nástrojů lze grafy zkoumat přehledně a efektivně. Engine pouţívá pro výpočty grafickou kartu a nezatěţuje tak CPU. Díky multitaskové architektuře plně vyuţívá moţnosti vícejádrových technologií.
9
Přizpůsobení grafu Gephi nabízí rozsáhlé moţnosti specifikace a přizpůsobení tvaru, rozloţení či obarvení grafu. Layout lze měnit v průběhu práce, coţ zvyšuje efektivitu a kvalitu zpracování.
Obrázek 1.2 - příklad Graph coarsening layoutu
Metriky Gephi nabízí tvorbu běţných statistik a také metrik pro analýzu sociálních sítí. Lze vyuţít výpočet blízkosti, průměru, clustering koeficientu, průměrné nejkratší cesty či PageRanku.
10
Analýza dynamických sítí Gephi je vhodnou platformou pro analýzu dynamických sítí. Díky funkci časové osy je moţné filtrovat obsah rozsáhlých dynamických systémů, například sociálních sítí.
Tvorba clusterů a hierarchických grafů Podpora shlukování dat na základě atributů či pomocí vestavěných algoritmů pro tvorbu clusterů. Pomocí hierarchických několikaúrovňových grafů lze zkoumat data v různém stupni detailu.
Obrázek 1.3 - příklad shlukování Modularita Architektura Gephi je modulární a proto umoţňuje snadné rozšíření o další funkce. Nové funkce lze jednoduše přidávat a sdílet pomocí pluginů. Interní Plugin Center umoţňuje staţení a aktualizace všech dostupných pluginů z webu.
1.4.2 RapidMiner RapidMiner je opensourcový dataminingový nástroj psaný v Javě. Je k dispozici zdarma a je multiplatformní. Analýza dat probíhá skrze procesy navrhované 11
v grafickém rozhraní. Do těchto procesů lze vkládat mnoţství různých operátorů, které lze intuitivně řetězit. Tyto operátory lze pouţít pro import dat různých formátů, jejich integraci, transformaci, evaluaci a vizualizaci. Z těchto operátorů lze vytvářet stavební bloky, které lze uloţit a poté znovu pouţít. Díky zvolené architektuře lze snadno přidávat pluginy a rozšíření.
Obrázek 1.4 - ukázka rozhraní RapidMineru
1.5 Zdroje dat V této práci se zabývám daty ze dvou zdrojů: z Informačního systému výzkumu, experimentálního vývoje a inovací (IS VaVaI) a z Administrativního registru ekonomických subjektů (ARES).
1.5.1 IS VaVaI Informační systém výzkumu, experimentálního vývoje a inovací je systém pro ukládání, archivaci a zpřístupnění veřejně přístupných dat. Jeho provozováním plní Rada pro výzkum, vývoj a inovace zákonnou povinnost o zveřejnění údajů.
12
Struktura IS VaVaI se skládá z 5 částí: -
CEA - Centrální evidence aktivit
-
CEP - Centrální evidence projektů
-
CEZ - Centrální evidence výzkumných záměrů
-
RIV - Rejstřík informací o výsledcích
-
VES - Evidence veřejných soutěţí ve výzkumu, experimentálním vývoji a inovacích
Obrázek 1.5 - struktura IS VaVaI
Pro kaţdou z těchto částí existuje webové rozhraní, skrz které lze prostřednictvím formuláře v datech vyhledávat podle různých klíčů a následně nalezená data exportovat.
1.5.2 ARES Administrativní registr ekonomických subjektů je informační systém, který umoţňuje vyhledávání nad ekonomickými subjekty registrovanými v České republice. Je provozován Ministerstvem financí ČR. Zprostředkovává zobrazení údajů vedených v jednotlivých registrech státní správy, ze kterých čerpá data. Obsahuje údaje ze základních zdrojů, které jsou formou odkazů doplněny údaji z dalších zdrojů. Při zpracování se pouţívají téţ kontrolní zdroje. Obsahuje webový formulář pro vyhledávání subjektů na základě zadaných údajů. Alternativně lze data získat pomocí XML rozhraní metodou POST či GET. Tímto způsobem lze automatizovaně získat údaje o větším mnoţství subjektů.
13
14
2 Analýza a návrh V této kapitole se zaměřím na popis celého procesu vytěţení dat. Popíši získání dat, architekturu datových toků a části procesu, které je nutné implementovat.
2.1 Architektura datových toků Na obrázku 2.1 je schéma toku dat od jejich akvizice po import do Gephi. Z IS VaVaI jsou data exportována přímo do formátu csv. Data z ARES jsou pomocí automatického dotazování, popsaného v kapitole 2.3.2, uloţena do formátu XML. Poté jsem vyuţil online konvertor z formátu XML na formát CSV dostupný na adrese http://www.luxonsoftware.com/converter/xmltocsv. Dále bylo třeba data uloţit v databázi, odkud by mohla být importována do Gephi. Pro tento účel jsem pouţil RapidMiner. Popis procesů v RapidMineru lze nalézt v kapitolách o jednotlivých analytických otázkách. Z vytvořených tabulek je následně moţné importovat data přímo do Gephi pomocí standardních SQL dotazů.
Obrázek 2.1- schéma datových toků
15
2.2 Návrh implementace Jak jiţ bylo řečeno, pro získání dat z ARES bude třeba implementovat jednoduchý program pro automatické dotazování. Popis této implementace je v kapitole 2.3.2. Hlavní těţiště explorativní analýzy bude leţet v práci s programem Gephi. Pro vizualizaci vztahů osob a firem existují jiţ hotové nástroje, např. na serveru podnikani.cz.
Obrázek 2.2 - ukázka vizualizace vztahů na serveru podnikani.cz
Ač je tato webová aplikace uţitečná, neumoţňuje propojení s projekty. Vzhledem k tomu, ţe některé analytické otázky se zabývají shluky, vyvstala potřeba mít nástroj, který umí shluky odhalit. Ani Gephi ani výše uvedený nástroj na podnikani.cz nic podobného neumoţňuje. Řešením je implementace pluginu do Gephi, který bude umět definované shluky nalézt. Popis této implementace je v kapitole 4.
16
2.3 Získání dat 2.3.1 Data z IS VaVaI Data z IS VaVaI jsou veřejně přístupná přes formulář na www.isvav.cz, který nabízí moţnosti vyhledávání a filtrování. Nalezená data je poté moţné exportovat ve formátu .xls. Ke kaţdému exportu je moţné přidat volitelné doplňkové tabulky.
2.3.2 Data z ARES Získání dat ze systému ARES bylo sloţitější. Systém sice disponuje opět webovým formulářem, přes který je moţno pokládat dotazy o subjektu, nicméně pouze o jednom. Jelikoţ jsem potřeboval data o více neţ 4000 subjektech, musel jsem přistoupit k implementaci automatického dotazování. Pro tento účel jsem zvolil pro jednoduchost jazyk Java. Systém ARES umoţňuje získávat data ve formátu XML pomocí metody GET, čehoţ jsem vyuţil. Subjekty, o kterých jsem potřeboval získat informace, jsem měl identifikované pomocí IČO uloţené v souboru. Pomocí balíčku java.net jsem se připojil k serveru a postupně se dotazoval na příslušné subjekty. O kaţdém subjektu jsem potřeboval pouze data o osobách, které se vyskytovaly či vyskytují ve vedení. Proto jsem XML výstup, který mi vrátil server, rozparsoval pomocí balíčku org.w3c.dom a poté z něj vytáhl potřebná data, která jsem uloţil do vlastního XML formátu pro další zpracování. Vzhledem k limitům pro počet dotazů na IP na den bylo nutné získání dat rozdělit do několika fází.
17
18
3 Implementace Při zkoumání dat o projektech vyvstala potřeba najít subjekty, které často spolupracují na stejných projektech, coţ by umoţnilo vyvodit další závěry. Přestoţe Gephi umoţňuje zobrazit v grafu okolí určitého uzlu a následně vytvořit průnik s okolím uzlu jiného, neřeší jak takové dva uzly nalézt. Proto jsem se rozhodl implementovat plugin, který toto umoţňuje. Výstupem algoritmu jsou shluky uzlů se stejnými sousedy. V případě konkrétních dat z RIV shluky subjektů účastnících se stejných projektů. Plugin bude publikován na portálu Gephi, kde bude volně ke staţení.
3.1 Vytvoření pluginu Díky tomu, ţe je Gephi postaveno na platformě NetBeans a modulární architektuře, je tvorba nového pluginu poměrně snadná. Nejdříve je třeba stáhnout repository pro pluginy z oficiálního GitHubu, čímţ získáme projekt s prostředím pro tvorbu pluginů a s vybranými pluginy. Následně vytvoříme nový modul, který patřičně popíšeme. Poté je moţno z tohoto modulu vytvořit NBM soubor, který je moţné nahrát na Gephi Plugin portál a tak nový plugin publikovat.
3.2 Tvorba layoutu Pluginů pro Gephi je moţno vytvořit několik typů. Rozhodl jsem se pro layout plugin, neboť výstupem algoritmu je změna souřadnic uzlů a jejich obarvení.
19
Obrázek 3.1 - diagram tříd připojeného pluginu
Nejdříve bylo nutné přidat projektu závislosti na potřebných API, konkrétně Graph API, Layout API, Layout Plugin a Utilities API. Poté jsem vytvořil LayoutBuilder, který je se stará o tvorbu nových instancí layout algoritmu. Poté jiţ bylo moţné přistoupit k tvorbě vlastního algoritmu. Logika obsahuje 4 hlavní metody: -
canAlgo() - testuje, zda můţe algoritmus běţet
-
initAlgo() - volá se při inicializaci algoritmu
-
goAlgo() - hlavní část algoritmu, spustí se pouze pokud canAlgo() vrátí true
-
endAlgo() - volá se na konci běhu algoritmu, tedy kdyţ canAlgo() vrátí false
Pokud chceme, aby měl algoritmus uţivatelem modifikovatelné parametry, můţeme vytvořit LayoutProperty, která můţe být přirozeně různého datového typu. Tento parametr se poté v Gephi zobrazí v kontrolním panelu layoutu. 20
3.3 Popis algoritmu Algoritmus přijímá na vstup tři parametry zadané uţivatelem: -
počet clusterů, které se mají vytvořit
-
minimální počet společných sousedů pro zařazení do clusteru
-
počet iterací, které mají proběhnout
V úvodu se získá viditelný graf z graphModelu, který se následně zamkne pro čtení. Vytvoří se zadaný počet clusterů a všechny uzly se vstupním stupněm větším neţ 0 se do některého z nich náhodně přiřadí. Poté začíná iterační cyklus, v rámci kterého se uzly přiřazují do správného clusteru. Uzel se umístí do takového clusteru, ve kterém se nachází uzel s největším počtem společných sousedů. Tento počet musí být navíc větší neţ zadaný minimální počet. V rámci jedné iterace proběhne přiřazení pro všechny uzly. Protoţe po skončení iteračního cyklu mohou v clusterech zůstat chybně zařazené uzly z úvodní náhodné inicializace, proběhne následné vyčištění clusterů od uzlů, které nemají s ţádným uzlem ze svého aktuálního clusteru společný minimální počet sousedů. Na závěr proběhne obarvení uzlů v clusterech stejnou barvou a změna jejich souřadnic.
21
22
4 Analýza dat V této kapitole popíši data, formulované analytické otázky a přípravu dat pro jejich zpracování. Poté provedu jejich vyhodnocení a interpretaci výsledků.
4.1 Popis dat 4.1.1 Data z IS VaVaI
Pro účely této práce jsou relevantní pouze data o projektech z CEP. Databáze CEP obsahuje celkem 38 605 projektů a pro kaţdý projekt 51 atributů. CEP obsahuje také doplňkové tabulky o financování a o účastnících projektů v jednotlivých letech. V rámci předzpracování dat (viz kapitola 4.2) jsem redukoval počet atributů na 14. -
Identifikační kód projektu - jedinečný identifikátor v rámci systému
-
Identifikační
kód
resortu
-
poskytovatele
-
jedinečný
identifikátor
poskytovatele dotace na projekt -
Název projektu
-
Rok zahájení řešení projektu
-
Rok ukončení řešení projektu
-
Hlavní obor projektu - kódové označení oboru, do kterého je projekt zařazen, popis jednotlivých oborů viz příloha
-
Hodnocení výsledků projektu - kódové označení zhodnocení projektu
-
Zhodnocení výsledků dodavatelem - stručný popis výsledků a výstupů projektu včetně jejich vyuţití
-
Celkové uznané náklady - úhrn finančních prostředků ze všech zdrojů, v tis. Kč
-
Státní podpora - úhrn finančních prostředků vydaných na projekt z rozpočtu poskytovatele, v tis. Kč
-
Počet příjemců - počet příjemců prostředků od poskytovatele
23
-
Počet navazujících výsledků v RIV - údaj o počtu veřejných i neveřejných výstupů z projektu uloţených v RIV
-
Identifikační kód partnera - hlavního příjemce - kódové označení hlavního příjemce, který projekt zastřešuje, uvádí se buď IČO pro celé subjekty či kód ORJK pro jejich části, např. konkrétní fakulta vysoké školy
-
Název partnera - hlavního příjemce - název subjektu, který projekt zastřešuje
4.1.2 Data z ARES Jelikoţ jsem z těchto dat potřeboval pouze údaje o jménech lidí ve vedení firem, je struktura těchto dat jednoduchá. Po vytaţení dat z ARESu a uloţení do nového XML souboru obsahuje jeho struktura pouze dva elementy: -
subjekt s atributem ico, který je identifikátorem subjektu
-
textový element osoba, ve kterém je uloţeno jméno osoby, která patří k danému subjektu
Příklad subjektu: <subjekt ico="48041114">
Milada Vaníčková Václav Veselý
4.2 Obecné předzpracování dat 4.2.1 Data z IS VaVaI Výchozím stavem byly tři soubory ve formátu .xls obsahující údaje o projektech, jejich účastnících a financování. Vzhledem k tomu, ţe spousta atributů byla irelevantní vůči předmětu zkoumání této práce, přistoupil jsem k redukci dimenzionality. Ručně jsem ze sešitu vybral 14 relevantních sloupců (viz kapitola 4.1.1) a ostatní smazal. Následovalo další zpracování pomocí programu RapidMiner, které je podrobněji popsáno v jednotlivých podkapitolách kapitoly 4.
24
4.2.2 Data z ARES Data ve výše uvedeném XML formátu bylo nutné převést do tabulkové podoby. Vyuţil jsem online konvertor z formátu XML na formát CSV dostupný na adrese http://www.luxonsoftware.com/converter/xmltocsv. Výstupem z tohoto konvertoru byly dva soubory: -
soubor subjekt.csv s dvěma hodnotami na kaţdém řádku: o ID subjektu o IČO
-
soubor osoba.csv také se dvěma hodnotami na kaţdém řádku: o jméno osoby o ID subjektu, ke kterému osoba náleţí
Dále bylo třeba data exportovat do MySQL databáze, odkud je jiţ moţné je importovat do Gephi. K tomuto účelu jsem vyuţil program RapidMiner. Vzhledem k tomu, ţe jedna osoba mohla v daném subjektu zastávat více postů, vznikly v datech duplicitní řádky. Ty jsem odstranil pouţitím operátoru Remove duplicates.
Obrázek 4.1 - proces v RapidMineru - import souboru osoba.csv
První operátor Read CSV definuje, za pomocí jakého oddělovače se mají data přečíst a další parametry týkající se datového formátu. Operátor Remove duplicates odstraní duplicitní řádky. Poslední operátor Write Database uloţí data do zadané MySQL tabulky. Soubor subjekt.csv byl importován obdobně, operátor Remove duplicates nebyl v tomto případě třeba.
25
Obrázek 4.2 - proces v RapidMineru - import souboru subjekt.csv
4.3 Analytické otázky 4.3.1 Párování poskytovatelů a příjemců Cílem této úlohy je napárovat poskytovatele a subjekty - příjemce vytvořením grafu tak, ţe váha hrany mezi nimi určuje celkový objem finančních prostředků, které daný příjemce od poskytovatele dostal za všechny projekty, kterých se účastnil. Z tohoto grafu je poté moţné určit nejen kdo dostal kolik finančních prostředků a od koho, ale také např. který poskytovatel vydal nejvíc či naopak který příjemce nejvíc obdrţel. 4.3.2 Počet výstupů z projektů Cílem této úlohy je nalézt odlehlé hodnoty - projekty - s extrémně malým či velkým počtem výstupů v porovnání s průměrem daného oboru. Tyto údaje mohou poslouţit jako metrika a je moţné pomocí nich nalézt projekty, jejichţ výstup byl nadstandardní či naopak nedostatečný. 4.3.3 Neúspěšné projekty Cílem této úlohy je odděleně analyzovat neúspěšné projekty, zejména z hlediska nákladnosti. Nalézt nejnákladnější neúspěšné projekty, příjemce a poskytovatele, kteří se účastnili neúspěšných projektů za nejvíce peněz. Dále pak ohodnotit subjekty z hlediska úspěšnosti projektů, kterých se subjekt účastnil jako příjemce nebo poskytovatel. 4.3.4 Analýza shluků subjektů Cílem této úlohy je nalézt shluky subjektů, které se často účastní stejných projektů. Dále určit konkrétní dvojice subjektů, které spolupracovaly na nejvíce společných projektech. Na základě těchto údajů bude poté moţné identifikovat skupiny spřátelených firem či konsorcia. 4.3.5 Analýza osob Cílem této úlohy je nalézt shluky osob, které jsou často společně ve vedení různých firem. Dále potom osoby, které se účastnily stejného projektu ve vedení více firem. 26
Zajímavá je také informace o počtu projektů, kterých se daná osoba účastnila. Na závěr orientačně ohodnotit kaţdou osobu podle efektivity při práci na projektech.
4.4 Předzpracování dat 4.4.1 Párování poskytovatelů a příjemců Pro tuto úlohu byla pouţita data z IS VaVaI. Import z formátu do MySQL proběhl pomocí procesu v RapidMineru.
Obrázek 4.3 - proces v RapidMineru - import dat o poskytovatelích a příjemcích
V rámci operátoru Read Excel jsem vybral pro kaţdý řádek tři relevantní atributy kód poskytovatele, kód příjemce a objem poskytnutých financí. Pomocí operátoru jsem nahradil chybějící hodnoty u všech třech atributů hodnotou -1, aby bylo moţné tyto hodnoty následně odfiltrovat. Operátor Write Database potom výsledná data uloţil do MySQL tabulky. V této tabulce jsem poté vymazal všechny řádky, které obsahovaly hodnotu -1, protoţe v nich chyběl jeden z údajů pro analýzu. Pro import do Gephi bylo nutné vytvořit dvě tabulky - tabulku hran a tabulku uzlů. Do tabulky uzlů jsem uloţil všechny poskytovatele a příjemce a přiřadil jim unikátní ID. Do tabulky hran jsem poté uloţil ID poskytovatele jako zdrojový uzel, ID příjemce jako cílový uzel a součet objemu financí jako váhu hrany. Kaţdá hrana má také svoje unikátní ID. Tyto tabulky lze jiţ importovat do Gephi. 4.4.2 Počet výstupů z projektů Výchozím bodem byla data o projektech z IS VaVaI. Pro tuto úlohu byly podstatné tři údaje: -
Identifikátor projektu
-
Obor projektu
-
Počet výstupů z projektu 27
Vymazal jsem záznamy, kterým chyběl údaj o oboru, protoţe v následném rozdělení podle oborů by byly nezařaditelné. Z těchto údajů jsem vytvořil dvě tabulky pro import do Gephi - tabulku uzlů a tabulku hran. Tabulka uzlů obsahovala všechny identifikátory projektů a kódy oborů, všechny řádky s vlastním unikátním číselným ID. Tabulka hran obsahovala ID kódu oboru jako zdrojový uzel a ID identifikátoru projektu jako cílový uzel. Váha hrany definovala počet výstupů z projektu. 4.4.3 Neúspěšné projekty Výchozím bodem byla opět data o projektech z IS VaVaI. Z jiţ vytvořené MySQL tabulky o projektech jsem do Gephi importoval pouze ty projekty, které byly neúspěšné, tedy ty, jejichţ kód atributu Hodnocení výsledků projektů začínal nulou. Import proběhl ze dvou tabulek - uzlů a hran. Výchozím uzlem hrany byl kód subjektu a cílovým kód projektu. Váha hrany vyjadřovala objem vydaných finančních projektů. 4.4.4 Analýza shluků subjektů Výchozím bodem byla data z IS VaVaI, konkrétně doplňková tabulka o účastnících projektů. Pro účely této úlohy byly třeba pouze dva atributy: -
Identifikační kód projektu
-
Identifikační kód normalizovaného partnera
Tyto atributy jsem pomocí RapidMineru exportoval do MySQL tabulky.
Obrázek 4.4 - proces importu dat v RapidMineru pro analýzu shluků
Protoţe je z definice úlohy nutné, aby se relevantních projektů účastnily více neţ dva subjekty, všechny projekty, které tuto podmínku nesplňovaly, byly z vstupního datasetu vymazány. Vzhledem k tomu, ţe data obsahovala rozpis účastníků projektů po jednotlivých letech, vyskytly se v nich duplicitní řádky. Ty byly odstraněny pomocí 28
operátoru Remove Duplicates. Z výsledné tabulky pro import do Gephi byly opět vytvořeny dvě - uzlů a hran. 4.4.5 Analýza osob Pro tuto úlohu byla pouţita data jak z ARES, tak z IS VaVaI. Data z ARES byla předzpracována jak je popsáno v kapitole Obecné předzpracování dat. Z dat z IS VaVaI byla pouţita tabulka o účastnících projektů. Pro import do Gephi byly opět vytvořeny dvě tabulky. Tabulka uzlů obsahovala všechny osoby, subjekty a projekty s jednoznačnými identifikátory. Tabulka hran obsahovala tyto identifikátory jako zdrojové a cílové uzly. Orientovaná hrana vţdy směřovala směrem od subjektu. Pro zjištění počtu projektů, kterých se kaţdá osoba účastnila bylo třeba vytvořit jiný graf. Z dat o projektech a o osobách byla vytvořena tabulka, ve které byly napárovány projekty a osoby. Tabulka vznikla z původní tabulky napárování projektů se subjekty tak, ţe kaţdý řádek s projektem a subjektem byl nahrazen novými řádky, které obsahovaly projekt a postupně všechny osoby z daného subjektu. Z této tabulky byly opět vytvořeny dvě další - pro uzly a pro hrany.
4.5 Modelování 4.5.1 Párování poskytovatelů a příjemců 4.5.1.1 Úpravy v Gephi Importovaný graf byl orientovaný, hrana orientovaná od poskytovatele k příjemci. Po importu jsem spustil modul pro výpočet průměrného váţeného stupně uzlu, abych mohl uzly podle váţeného stupně odlišit. Podle výstupního váţeného stupně jsem změnil barvu, velikost a velikost štítku uzlu. Hranám jsem změnil barvu podle jejich váhy. Jako rozloţení jsem zvolil layout Fruchterman Reingold s velikostí oblasti 20000 a gravitací 10. Výsledný graf je na obrázku 4.5.
29
Obrázek 4.5 - graf v Gephi - párování poskytovatelů a příjemců, hodnocení uzlů podle váţeného výstupního stupně
Na první pohled jsou patrní poskytovatelé s největším objemem vydaných prostředků. Pokud chceme znát naopak největší příjemce, stačí změnit hodnocení uzlů s váţeného výstupního na váţený vstupní stupeň. Výsledný graf je na obrázku 4.6.
30
Obrázek 4.6 - graf v Gephi - párování poskytovatelů a příjemců, hodnocení uzlů podle váţeného vstupního stupně
4.5.1.2 Filtrování Pomocí operátorů filtrace můţeme z grafu získat pouze uzly či hrany splňující poţadované vlastnosti. Pomocí operátoru Rozsah stupně ven můţeme získat 5 poskytovatelů s nejvyšším celkovým objemem vydaných prostředků.
31
Poskytovatelé podle vydaných prostředků Objem financí v tis. Kč 51 781 281 39 411 186 30 540 541
MSM
MPO
GA0
11 502 695
10 274 091
8 987 893
MZ0
AV0
TA0
Graf 4.1 - poskytovatelé podle vydaných prostředků
Obdobně pomocí operátoru Rozsah stupně dovnitř můţeme nalézt příjemce s nejvyšším objemem přijatých prostředků.
Příjemci podle přijatých prostředků Objem financí v tis. Kč
4 830 318 3 621 116
3 398 532
3 099 722
2 956 368 2 290 549
Fyzikální ústav AV ČR
Masarykova univerzita
Ústav jaderného výzkumu Řež
Ústav molekulární genetiky AV ČR
UK v Praze
Graf 4.2 - příjemci podle přijatých prostředků 32
Mikrobiologický ústav AV ČR
Pomocí vnoření dvou operátorů můţeme získat graf obsahující párování s nejvyšší váhou hrany. Nejdříve zvolíme operátor Rozsah stupně a určíme parametr tak, aby byl větší neţ 1. Poté k tomuto operátoru jako podfiltr vloţíme operátor Váha hrany, kterému nastavíme parametr na poţadovanou výši. Na grafu níţe je vidět 5 nejsilnějších párování.
Obrázek 4.7 - nejsilnější párování poskytovatelů a příjemců
33
Poskytovatel
Příjemce
Objem financí v tis. Kč
MSM
Fyzikální ústav AV ČR
2 965 265
MPO
Ústav jaderného výzkumu Řeţ a.s.
2 500 899
MSM
Masarykova univerzita
2 364 892
GA0
UK v Praze
2 331 733
MSM
CESNET
2 041 929
Tabulka 4.1 - nejsilnější párování podle objemu financí
4.5.2 Počet výstupů z projektů 4.5.2.1 Úpravy v Gephi V Gephi jsem vytvořil samostatný graf pro kaţdý z těchto hlavních oborů: Kód Popis A Společenské vědy B Fyzika a matematika C Chemie D Vědy o zemi E Biovědy F Lékařské vědy G Zemědělství I Informatika J Průmysl K Vojenství Tabulka 4.2 - kódové označení hlavních oborů
Tyto hlavní obory se dělí dále na podobory, jejichţ kódy jsou popsány v příloze B. Ohodnotil jsem uzly podle váţeného výstupního stupně a aplikoval rozloţení Fruchterman Reingold s velikostí oblasti 5000 a gravitací 20.
34
Obrázek 4.8 - ukázka grafu pro obor A - společenské vědy
Exportem vah hran do formátu csv a následným výpočtem průměru podle oboru pomocí MS Excel získáme průměrný počet výsledků uloţených v RIV podle oboru. Výpočtem průměru z vah všech hran získáme celkovou průměrnou hodnotu 8,8.
35
Průměrný počet výsledků v RIV podle oboru Průměr
19,1 14,9 10,5
8,8
8,1
9
11,5
9,4
8 5,6
4,5
Graf 4.3 - průměrný počet výsledků v RIV podle oboru 4.5.2.2 Filtrování Aplikováním sloţeného operátoru na jednotlivé grafy získáme odlehlé hrany, tedy projekty, které mají abnormálně málo či mnoho výstupů. Sloţený operátor se skládá z operátoru Rozsah stupně, kterému nastavíme hodnotu větší neţ jedna. Jako podfiltr slouţí operátor Váha hrany, kterému jako parametr nastavíme poţadovaný rozsah. Obor
Nejméně
Průměr
Nejvíce výstupů
8,1
1010
výstupů Společenské vědy Fyzika matematika Chemie
0 a 0
14,9
745
0
10,5
667
Vědy o zemi
0
9
491
Biovědy
0
8
797
Lékařské vědy
0
5,6
508
Zemědělství
0
9,4
398
Informatika
0
19,1
951
Průmysl
0
11,5
2744
Vojenství
0
4,5
320
Tabulka 4.3 - počty výstupů podle oboru
36
Obrázek 4.9 - projekty s nejvíce výstupy v oboru A a jejich zařazení do podoboru
4.5.2.3 Distribuce hodnot Pro lepší představu o celkové distribuci počtu výsledků všech projektů poslouţí histogram. Pro jeho vytvoření jsem pouţil RapidMiner. Importoval jsem sloupec „Pocet navazujicich vysledku v RIV“ z původního souboru .xlsx. Pomocí funkce Plot View jsem pak vytvořil histogram hodnot.
37
Frekvence výskytu(log)
Počet výsledků
Graf 4.4 - histogram počtu výsledků z projektů; logaritmická osa
V histogramu je pouţita logaritmická osa, neboť počet hodnot v prvním binu výrazně převyšoval všechny ostatní. Z histogramu je vidět, ţe data jsou koncentrována především v niţších hodnotách. Není bez zajímavosti, ţe 28,5 % ze všech projektů nemá v RIV ani jeden navazující výsledek. 4.5.3 Neúspěšné projekty 4.5.3.1 Filtrování Pomocí sloţeného operátoru určíme subjekty, které se účastnily neúspěšných projektů, které stály dohromady nejvíce peněz. Pouţijeme operátor Síť sousedících s hloubkou 1. Do něj jako podfiltr vloţíme operátor Rozsah (Váţený výstupní stupeň), kterému nastavíme rozsah tak, aby nám ukázal vyfiltrované subjekty a projekty, kterých se účastnily. Subjekt
Přijaté finance v tis. Kč
Institut postgraduálního vzdělávání ve zdravotnictví
90 000
LET, a.s.
81 400
Fakultní nemocnice u sv.Anny v Brně
47 917
ŠKODA VAGONKA a.s.
37 531
ČKD DOPRAVNÍ SYSTÉMY,a.s.
35 000
Tabulka 4.4 - subjekty s nejvyšším objemem přijatých financí na neúspěšné projekty
38
Pomocí operátoru Rozsah (Váţený vstupní stupeň) vyfiltrujeme nejnákladnější neúspěšné projekty. Název projektu
Poskytovatel
Objem financí v tis. Kč
MZ0
90 000
MPO
81 400
MZ0
46 504
Vývoj vícesystémové jednotky
MPO
37 531
Nová modulární nízkopodlaţní tramvaj
MPO
35 000
Vývoj
a
ověřovací
provoz
klasifikačního
systému diagnostických skupin v ČR Certifikace letounu L 610G Nová metoda vyuţití magnetické navigace a endovaskulárního mozkového katetrizačního mapování pro léčbu epilepsie a cévních mozkových příhod
Tabulka 4.5 - nejnákladnější neúspěšné projekty
4.5.3.2 Analýza MySQL Protoţe v grafu v Gephi byly importovány pouze projekty a jejich řešitelé a nikoli váhy hran, rozhodl jsem se pro jednoduchost získat objem financí vydaných jednotlivými poskytovateli na neúspěšné projekty pomocí MySQL dotazu:
SELECT `projekty`.`Identifikacni kod resortu - poskytovatele`, Sum(`projekty`.`Statni podpora za celou dobu reseni`) FROM `projekty` WHERE `projekty`.`Hodnoceni vysledku projektu` LIKE '0%' GROUP BY `projekty`.`Identifikacni kod resortu - poskytovatele` ORDER BY Sum(`projekty`.`Statni podpora za celou dobu reseni`) desc LIMIT 5
39
Kód poskytovatele
Objem vydaných finančních prostředků v tis. Kč
MPO
417 168
GA0
236 396
MZ0
228 029
AV0
115 135
MSM
84 202
Tabulka 4.6 - objem vydaných financí na neúspěšné projekty podle poskytovatele
4.5.3.3 Koeficient úspěšnosti Pro tuto úlohu jsem vyuţil tyto atributy z dat o projektech: -
Identifikační kód projektu
-
Identifikační kód partnera - hlavního příjemce
-
Hodnocení výsledku projektu
-
Státní podpora za celou dobu řešení
Do Gephi jsem data importoval opět pomocí dvou tabulek - uzlů a hran. Pokud byl projekt podle kódu neúspěšný, směřovala hrana mezi subjektem a projektem směrem od projektu. Pokud byl podle kódu úspěšný, směřovala hrana směrem od subjektu. Váha hrany vyjadřovala objem financí vydaných na projekt. Bohuţel Gephi neumoţňuje výpočet poměru vstupního a výstupního stupně uzlu, musel jsem ho tedy vypočítat externě. V Gephi jsem pro kaţdý uzel vypočítal váţený i normální vstupní a výstupní stupeň. Tyto data jsem poté exportoval do formátu CSV, který jsem následně přečetl pomocí MS Excel. V Excelu jsem pro kaţdý subjekt vypočítal koeficient úspěšnosti a váţený koeficient úspěšnosti. Koeficient úspěšnosti Vážený koeficient úspěšnosti Koeficient úspěšnosti vyjadřuje, jaká část projektů, kterých se subjekt účastnil, skončila úspěšně. Váţený koeficient úspěšnosti vyjadřuje, jaká část finančních prostředků, které subjekt obdrţel, šlo na úspěšné projekty. Údaje o hodnotách koeficientů: 40
-
2,7 % subjektů má (váţený) koeficient úspěšnosti roven 0, tedy se účastnily pouze neúspěšných projektů
-
86,5 % subjektů má (váţený) koeficient úspěšnosti roven 1, tedy se účastnily pouze úspěšných projektů
-
10,8 % subjektů má (váţený) koeficient úspěšnosti mezi 0 a 1, tedy se učastnily úspěšných i neúspěšných projektů
Z grafu závislosti váţeného koeficientu úspěšnosti na koeficientu úspěšnosti je vidět v zásadě lineární tendence s občasnými odchylkami. Patrná je vysoká koncentrace dat
Vážený koeficient úspěšnosti
v hodnotách blízkých 1.
Koeficient úspěšnosti
Graf 4.5 - závislost váţeného koeficientu úspěšnosti na koeficientu úspěšnosti
4.5.4 Analýza shluků subjektů 4.5.4.1 Úpravy v Gephi Vzniklý orientovaný graf měl hrany orientované směrem od uzlu projektu k uzlu příjemce. Jako layout pro zobrazení grafu jsem pouţil Force Atlas s defaultními parametry v reţimu Linlog se zabráněním překrytí.
41
Obrázek 4.10 - graf párování projektů a účastnících se subjektů
4.5.4.2 Filtrování Pomocí filtru Rozsah stupně dovnitř můţeme nalézt příjemce, kteří se učastnili nejvíce projektů.
42
Příjemce
Počet projektů
Výzkumný ústav rostlinné výroby
117
Česká zemědělská univerzita v Praze
73
Mendelova univerzita v Brně
70
Univerzita Karlova v Praze / Přírodovědecká fakulta
59
Mendelova univerzita v Brně / Agronomická fakulta
49
Tabulka 4.7 - subjekty s nejvyšším počtem projektů
Protichůdný filtr Rozsah stupně ven můţeme pouţít pro nalezení projektů, kterých se účastnilo nejvíce subjektů. Název projektu Pozitivní
Počet účastníků
ovlivňování
kvality
mlékárenských
výrobků
cestou
14
modifikace technologických podmínek v prvovýrobě Nové postupy pro vyuţití zemědělských surovin a produkci hlavních druhů
potravin
zvyšující
jejich
kvalitu,
bezpečnost,
14
konkurenceschopnost a výţivový benefit spotřebiteli. Centrum pro výzkum biodiverzity
12
Management přepravy nebezpečných věcí na evropské a národní
11
úrovni ve vztahu k systému krizového řízení ČR Nanočásticové a supramolekulární systémy pro cílený transport léčiv
11
Studium hlavních faktorů ovlivňujících stabilitu trvale udrţitelného
11
systému obhospodařování travních porostů v České republice Bezpečnost občanů – krizové řízení
11
Tabulka 4.8 - projekty s nejvíce zúčastněnými subjekty
4.5.4.3 Shluky Pomocí pluginu popsaného v kapitole 3 můţeme v těchto datech nalézt shluky subjektů, které se často účastní společně stejných projektů. Pro nalezení vhodných clusterů jsem po experimentálním testování zvolil tyto parametry algoritmu: -
Počet clusterů: 8
-
Minimální počet společných projektů: 6
-
Počet iterací: 100 43
Výstupem algoritmu bylo 19 uzlů v 5 clusterech.
Cluster 1: -
Univerzita Karlova v Praze
-
Ústav fyzikální chemie J. Heyrovského AV ČR. v.v.i.
-
Česká zemědělská univerzita v Praze
-
Agrotest fyto. s.r.o.
Cluster 2: -
Univerzita Karlova v Praze
-
Jihočeská univerzita v Českých Budějovicích
Cluster 3: -
Fyzikální ústav AV ČR. v. v. i.
-
České vysoké učení technické v Praze
Cluster 4: -
Výzkumný ústav rostlinné výroby. v.v.i.
-
Výzkumný a šlechtitelský ústav ovocnářský Holovousy s.r.o.
-
Mendelova univerzita v Brně
-
Výzkumný ústav zemědělské techniky. v.v.i.
-
ANSER s.r.o.
-
Výzkumný ústav bramborářský Havlíčkův Brod. s.r.o.
-
Výzkumný ústav pícninářský. spol. s r.o.
-
Výzkumné centrum SELTON. s.r.o.
Cluster 5: -
Mendelova univerzita v Brně
-
Česká zemědělská univerzita v Praze
-
Jihočeská univerzita v Českých Budějovicích
Z těchto clusterů lze vybrat dvojice subjektů, které jiţ lze v Gephi analyzovat pomocí sloţeného operátoru. Do operátoru INTERSECTION přidáme jako podfiltry dva 44
operátory Síť popularity s hloubkou 1. Oběma přiřadíme do parametru ID uzlu identifikátor jednoho z dvojice subjektů, které chceme analyzovat. Tím získáme průnik jejich sousedních uzlů a tedy společných projektů. Vzhledem k tomu, ţe Gephi neumoţňuje vypočítat součet vah hran, který by se rovnal celkovému objemu financí vydaných na společné projekty dvou uzlů, bylo nutné tuto informaci získat z MySQL tabulky pomocí následujícího dotazu. Tato tabulka obsahuje také projekty, které se učastnily méně neţ 3 subjekty. Tento počet je uloţen v proměnné spolecne. Proměnná sum obsahuje celkový objem financí vydaných na společné projekty daných dvou uzlů. SELECT count(*) as spolecne, sum(`Statni podpora za celou dobu reseni`) as suma FROM `projekty` WHERE `Identifikacni kod projektu` IN (SELECT DISTINCT `a`.`Identifikacni kod projektu` FROM `projektyfirmy` AS `a` Inner Join `projektyfirmy` AS `b` ON (`a`.`Identifikacni kod projektu` = `b`.`Identifikacni kod projektu`) WHERE `a`.`Identifikacni
kod
normalizovaneho
partnera`
LIKE
'identifikátor_prvniho_subjektu' and `b`.`Identifikacni
kod
normalizovaneho
partnera`
LIKE
'
identifikátor_druheho_subjektu ' ) Tyto poznatky lze shrnout v následujících tabulkách pro vybrané významné dvojice subjektů. První údaj vyjadřuje počet společných projektů nalezených v Gephi. To jsou projekty, kterých se účastnilo 3 a více subjektů a tedy vybrané dva subjekty na nich nespolupracovaly pouze ve dvou. Druhý údaj v kaţdé tabulce, nalezený pomocí 45
MySQL dotazu, ukazuje, kolika společných projektů se oba subjekty účastnily celkem. Rozdíl mezi druhým a prvním číslem tedy říká, kolika projektů se účastnily pouze dané dva subjekty společně. Třetí údaj, nalezený téţ pomocí MySQL dotazu, ukazuje, kolik peněz bylo celkem vydáno na projekty, kterých se oba subjekty účastnily dohromady. Univerzita Karlova v Praze + Ústav fyzikální chemie J. Heyrovského AV ČR. v.v.i. Počet společných projektů s účastí více subjektů
7
Počet všech společných projektů Celkový
objem
financí
48
vydaných
na
všechny
323 646 tis. Kč
společné projekty
Česká zemědělská univerzita v Praze + Agrotest fyto. s.r.o. Počet společných projektů s účastí více subjektů
8
Počet všech společných projektů
8
Celkový
objem
financí
vydaných
na
všechny
103 785 tis. Kč
společné projekty
Univerzita
Karlova
v
Praze
+
Jihočeská
univerzita
v
Českých
Budějovicích Počet společných projektů s účastí více subjektů
6
Počet všech společných projektů
24
Celkový
objem
financí
vydaných
společné projekty
46
na
všechny
428 391 tis. Kč
Fyzikální ústav AV ČR. v. v. i. + České vysoké učení technické v Praze Počet společných projektů s účastí více subjektů Počet všech společných projektů Celkový
objem
financí
7 52
vydaných
na
všechny
1 118 485 tis. Kč
společné projekty
Mendelova univerzita v Brně + Česká zemědělská univerzita v Praze Počet společných projektů s účastí více subjektů
26
Počet všech společných projektů
46
Celkový
objem
financí
vydaných
na
všechny
537 065 tis. Kč
společné projekty
Jihočeská univerzita v Českých Budějovicích + Česká zemědělská univerzita v Praze Počet společných projektů s účastí více subjektů
7
Počet všech společných projektů
15
Celkový
objem
financí
vydaných
na
všechny
104 014 tis. Kč
společné projekty
Jihočeská univerzita v Českých Budějovicích + Výzkumný ústav rostlinné výroby. v.v.i. Počet společných projektů s účastí více subjektů
12
Počet všech společných projektů
18
Celkový
objem
financí
vydaných
společné projekty
47
na
všechny
151 715 tis. Kč
Výzkumný a šlechtitelský ústav ovocnářský Holovousy s.r.o. + Výzkumný ústav rostlinné výroby. v.v.i. Počet společných projektů s účastí více subjektů
16
Počet všech společných projektů
28
Celkový
objem
financí
vydaných
na
všechny
255 522 tis. Kč
společné projekty
Mendelova univerzita v Brně + Výzkumný ústav rostlinné výroby. v.v.i. Počet společných projektů s účastí více subjektů
8
Počet všech společných projektů
10
Celkový
objem
financí
vydaných
na
všechny
107 088 tis. Kč
společné projekty
Výzkumný ústav zemědělské techniky. v.v.i. + Výzkumný ústav rostlinné výroby. v.v.i. Počet společných projektů s účastí více subjektů
12
Počet všech společných projektů
18
Celkový
objem
financí
vydaných
na
všechny
133 543 tis. Kč
společné projekty
Výzkumný ústav bramborářský Havlíčkův Brod. s.r.o. + Výzkumný ústav rostlinné výroby. v.v.i. Počet společných projektů s účastí více subjektů
11
Počet všech společných projektů
21
Celkový
objem
financí
vydaných
společné projekty
48
na
všechny
244 425 tis. Kč
Výzkumný ústav pícninářský. spol. s r.o. + Výzkumný ústav rostlinné výroby. v.v.i. Počet společných projektů s účastí více subjektů
17
Počet všech společných projektů
23
Celkový
objem
financí
vydaných
na
všechny
237 867 tis. Kč
společné projekty
Výzkumné centrum SELTON. s.r.o. + Výzkumný ústav rostlinné výroby. v.v.i. Počet společných projektů s účastí více subjektů
9
Počet všech společných projektů
14
Celkový
objem
financí
vydaných
na
všechny
125 052 tis. Kč
společné projekty
Mendelova univerzita v Brně + Výzkumný a šlechtitelský ústav ovocnářský Holovousy s.r.o. Počet společných projektů s účastí více subjektů
10
Počet všech společných projektů
14
Celkový
objem
financí
vydaných
na
všechny
124 253 tis. Kč
společné projekty
Výzkumný ústav zemědělské techniky. v.v.i. + ANSER s.r.o. Počet společných projektů s účastí více subjektů
6
Počet všech společných projektů
7
Celkový
objem
financí
vydaných
společné projekty
49
na
všechny
57 993 tis. Kč
4.5.5 Analýza osob
4.5.5.1 Filtrování - počet firem, ve kterých se osoby angažují Po importu do Gephi vznikl poměrně rozsáhlý graf s 37823 uzly a 44673 hranami. Orientovaná hrana směřovala směrem od subjektu k osobě a od subjektu k projektu. Filtrem na vstupní stupeň získáme osoby, které jsou přítomny ve více subjektech. Z této analýzy vyplynulo, ţe: -
15,3 % osob je ve víc neţ jedné firmě
-
0,001 % osob je v deseti a více firmách
-
Jedna osoba je přítomna ve dvaceti firmách
Aplikováním operátoru Síť popularity s hloubkou 2 na uzel, který představuje osobu, získáme povědomí vazbách dané osoby (na obrázku 4.11 červeně) na okolí. V Hloubce 1 se nacházejí všechny firmy (na obrázku 4.11 zeleně), ve kterých je daná osoba zastoupena. V hloubce 2 na to poté navazují všechny osoby, které jsou v těchto firmách angaţovány a také všechny projekty, kterých se dané firmy účastnily (na obrázku 4.11 bíle). Pokud stejný operátor aplikujeme na uzel, který představuje subjekt, můţeme opět z různých hloubek sousedství získat údaje. V hloubce 1 nalezneme všechny osoby, které se ve firmě angaţují a také všechny projekty, kterých se firma účastnila. V hloubce 2 nalezneme subjekty, ve kterých jsou osoby, nalezené v hloubce 1, a také subjekty, které se účastnily společně s vybranou firmou jejích projektů.
50
Obrázek 4.11 - vyfiltrovaný graf okolí osoby do hloubky 2
4.5.5.2 Filtrování - počet projektů, kterých se osoby účastnily Importem tabulek vznikl velmi rozsáhlý graf s 37 594 uzly a 355 654 hranami. S tímto grafem bylo téměř neúnosné pracovat. Hrany v tomto grafy byly orientované směrem od projektu k osobě, která se ho účastnila. Filtrem Rozsah stupně dovnitř byl získán únosnější graf obsahující pouze osoby, které se účastnily více jak 200 projektů.
51
Obrázek 4.12 - vyfiltrovaný graf osob, které se účastnily více neţ 200 projektů
Údaj o vstupním stupni ukazuje počet projektů ,kterých se daná osoba účastnila. Jméno Radim Palouš Václav Lobovský František Pírek Jiří Ţďárek Martin Jašek Jan Kleisner Karel Šperlink Jiří Borovec František Sviták Jaroslav Míl
Počet projektů 1520 444 359 356 352 328 324 319 313 310
Tabulka 4.9 - osoby, které se účastnily nejvíce projektů
52
Počet projektů v tabulce 4.9 neznamená přímou účast osoby na projektu. Vyjadřuje fakt, ţe daná osoba byla ve vedení firem, které se celkově účastnily daného počtu projektů. Pomocí exportu vstupních stupňů u jednotlivých osob a následným importem do RapidMineru byl vytvořen histogram znázorňující rozloţení hodnot o počtu účastí na projektech mezi jednotlivými osobami. Bylo pouţito logaritmické měřítko, protoţe
Frekvence výskytu(log)
histogram je velmi nachýlen k levé straně a většina hodnot je v intervalu <0,100>.
Počet účastí
Graf 4.6 - histogram počtů účastí osob na projektech; logaritmická osa 4.5.5.3 Analýza pomocí pluginu Plugin shlukuje uzly podle toho, do jaké míry mají společné sousedy. Vzhledem ke konstrukci grafu můţe fakt, ţe jsou dva uzly ve stejném clusteru, znamenat dvě věci: -
Pokud jsou to dvě osoby, pak průnik jejich sousedů jsou firmy, ve kterých jsou přítomny obě osoby
-
Pokud je to osoba a projekt, znamená to, ţe daná osoba se účastnila projektu ve více firmách zároveň
Pro úspěšnou analýzu pomocí implementovaného pluginu bylo nejdříve nutné zvolit vhodně parametr vyjadřující minimální počet společných sousedů nutných pro zařazení do clusteru. Výstupy algoritmu pro hodnoty 2, 3 a 4 byly clustery o mnoha uzlech a nebylo by moţné následně navázat analýzou průniků jednotlivých uzlů.
53
Výstupem algoritmu pro hodnotu 5 bylo 7 clusterů s 22 uzly. Následující diagramy zobrazují clustery osob v grafické podobě.
Jana Faifrová Vlastimil Ouřada
Cluster 1
Petr Jurák Andrej Babiš
Cluster 2
Marek Mroczkowski
Pavel Švarc
Cluster 3 Václav Přibyl
54
Milan Juřík
Jan Světlík
Cluster 4
František Virdzek
Otakar Bárta
Cluster
5
Marcel Rychlik
Miroslav Mrtvý
Milan Semmler
Jan Otoupalík
Marie Křížová
Cluster 6 Zoltán Szivanyó
55
Michal Korecký
Zuzana Herichová
Petr Malivánek
Cluster 7 Jiří Zapletal Tomáš Krsek
Z těchto clusterů lze vybrat dvojice osob, které jiţ lze v Gephi analyzovat pomocí sloţeného operátoru. Do operátoru INTERSECTION přidáme jako podfiltry dva operátory Síť popularity s hloubkou 1. Oběma přiřadíme do parametru ID uzlu identifikátor jednoho z dvojice osob, které chceme analyzovat. Tím získáme průnik jejich sousedních uzlů a tedy subjekty, ve kterých se vyskytují společně. Následující diagramy znázorňují skupiny osob, které jsou společně ve vedení příslušných firem.
Vlastimil Ouřada + Jana Faifrová ČKD MOTORY, a.s.
ČKD ELEKTROTECHNIKA, a.s.
ČKD KOMPRESORY, a.s.
56
PBS ENERGO, a.s.
ČKD PRAHA DIZ, a.s.
Andrej Babiš + Petr Jurák
Synthesia, a.s.
Lovochemie, a.s..
PRECHEZA, a.s.
Kostelecké uzeniny, a.s.
Pavel Švarc + Marek Mroczkowski + Václav Přibyl
UNIPETROL, a.s.
CHEMOPETROL, a.s.
PARAMO, a.s.
SPOLANA, a.s.
SYNTHOS Kralupy, a.s.
Jan Světlík + Milan Juřík
VÍTKOVICE, a.s.
VÍTKOVICE HEAVY MACHINERY, a.s.
VÍTKOVICE CYLINDERS, a.s.
57
VÍTKOVICE POWER ENGINEERING, a.s.
VÍTKOVICE IT SOLUTIONS, a.s.
Otakar Bárta + Marcel Rychlik + Miroslav Mrtvý + Milan Semmler + František Virdzek
VF, a.s.
CHEMCOMEX Praha, a.s.
UJP PRAHA, a.s.
VF instruments, a.s.
TERAMED, s.r.o.
Marie Křížová + Jan Otoupalík + Zoltán Szivanyó
ZKL Klášterec nad Ohří, a.s.
ZKL - Výzkum a vývoj, a.s.
ZKL Brno, a.s.
ZKL Hanušovice, a.s.
ZKL Nářadí, a.s.
Zuzana Herichová + Petr Malivánek WALTER ENGINES, a.s.
AL INVEST Břidličná, a.s.
MEDIN Orthopaedics, a.s.
TES VSETÍN, a.s.
58
FF Invest, a.s.
Plzeňská energetika, a.s.
Jiří Zapletal + Michal Korecký VÚKV, a.s.
Výzkumný a zkušební ústav Plzeň, s.r.o.
ŠKODA POWER, s.r.o.
ŠKODA TRANSPORTATION, a.s.
ŠKODA JS, a.s.
ŠKODA TRANSPORTATI ON, a.s.
ŠKODA VAGONKA, a.s.
ŠKODA KOVÁRNY Plzeň, s.r.o.
ŠKODA ELECTRIC, a.s.
VÚKV, a.s.
Wikov Gear, s.r.o. STROJÍRNY OSTROV, s.r.o.
Výzkumný a zkušební ústav Plzeň, s.r.o.
ŠKODA VAGONKA, a.s. ŠKODA ELECTRIC, a.s. ŠKODA MACHINE TOOL, a.s.
Jiří Zapletal + Tomáš Krsek
Tomáš Krsek + Michal Korecký VÚKV, a.s.
Výzkumný a zkušební ústav Plzeň, s.r.o.
ŠKODA POWER, s.r.o.
ŠKODA TRANSPORTATION, a.s.
59
ŠKODA VAGONKA, a.s.
ŠKODA ELECTRIC, a.s.
Pars nova, a.s.
Z analýzy osob, které se účastnily stejného projektu v různých firmách, vzešly tyto skutečnosti: -
6725 osob z 27981, tedy 24 %, se účastnilo alespoň jednoho projektu v rámci více firem
-
Mnohé z těchto osob ve třech či čtyřech firmách
-
Mnohé z těchto osob se takto opakovaně účastnilo více projektů
Na následujících diagramech jsou zobrazeny vybrané vztahy daných osob k příslušnému projektu skrz jednotlivé subjekty.
MATERIÁLOVÝ A METALURGICKÝ VÝZKUM, s.r.o.
Strojírny Třinec, a.s.
TŘINECKÉ ŽELEZÁRNY, a. s.
Nové progresivní technologické postupy výroby ocelových výrobků
60
Hutnictví železa, a.s.
TOS KUŘIM OS, a.s.
ČKD BLANSKOOS, a.s.
ŠKODA MACHINE TOOL, a.s.
Integrace, stavebnicovost a rekonfigurovatelnost strojů konsorcia TOS NOVA
Spolek pro chemickou a hutní výrobu, a.s.
SYNPO, a.s.
BALAK, a.s.
Moderní ekologicky příznivější nátěrové hmoty
61
COLORLAK, a.s.
POLYMER INSTITUTE BRNO, spol. s r.o.
UNIPETROL, a.s.
Výzkumný ústav anorganické chemie, a.s.
Výzkumné centrum pro komplexní zpracování ropy
Kovohutě Příbram, a.s.
Kovohutě Příbram nástupnická, a.s.
Zvýšení podílu materiálového využití recyklace odpadů těžkých a drahých kovů
62
EKO - VUK, spol. s r.o.
VÚK - Čisté kovy, s.r.o.
Inovační technologické centrum VÚK, a.s.
VÚK Panenské Břežany, a.s.
Vývoj technologie a zavedení výroby stříbrných naprašovacích terčů pro výrobu CD-R a CD-RW disků
VPCH Trade, s.r.o.
4.5.5.4 Hodnocení osob Z tabulky o účastech osobách na projektech lze získat údaje o tom, na jakém celkovém objemu financí vydaných na projekty, se daná osoba podílela. Pro všechny osoby lze také vypočítat určitý ukazatel efektivity při práci na projektech. Kdyţ podělíme celkový objem financí vydaných na projekty a podělíme celkovým počtem výsledků v RIV z těchto projektů, získáme průměrnou částku, kterou bylo třeba vydat na jeden výsledek. Průměrná částka vydaná na jeden výsledek na osobu: -
5379 osob z 27981, tedy 19,2 % nezaznamenalo ani jeden výsledek, jejich koeficient tedy není definován
-
127 osob z 27981, tedy 0,5 % má koeficient vyšší neţ 100 miliónů
63
Pro představu o rozloţení hodnot koeficientu v celém datasetu poslouţí následující
Frekvence výskytu(log)
histogram. Vzhledem k vychýlenosti distribuce je pouţita logaritmická osa.
Průměrný výdaj na výsledek
Graf 4.7 - histogram hodnot průměrných výdajů na výsledek; logaritmická osa
Zajímavé jsou údaje o vypočtené průměrné částce pro osoby, které se účastnily projektů za nejvíce peněz. Jméno
Celkový objem financí vydaných na zúčastněné projekty tis. Kč 11 350 142 11 230 472
Průměrná částka vydaná na jeden výsledek v tis. Kč 2 104 2 116
Václav Lobovský Radim Palouš
11 107 455 10 863 581
2 092 544
Jiří Borovec Jan Kleisner
8 989 164 8 618 036
1 959 2 224
František Sviták Martin Jašek
8 313 876 8 294 041
2 179 2 098
Jan Bartoň Jaroslav Míl
8 252 423 8 220 028
3 630 1 836
František Pírek
8 176 689
2 046
Vlasta Míková Karel Böhm
Tabulka 4.10 - osoby, které se účastnily projektů za nejvíce peněz
64
4.6 Interpretace výsledků 4.3.1 Párování poskytovatelů a příjemců Z analýzy je patrné, ţe největšími poskytovateli z hlediska vydaných prostředků jsou Ministerstvo školství, mládeţe a tělovýchovy, Ministerstvo průmyslu a obchodu a Grantová agentura ČR. To není nijak překvapivé, neboť školství a průmysl jsou dvě oblasti, do kterých se dlouhodobě investuje a Grantová agentura ČR zastřešuje vědeckou činnost a projekty řešené v rámci evropských mezinárodních projektů. Mezi příjemci dominují z hlediska přijatých prostředků veřejné výzkumné ústavy, vysoké školy a ústavy AV ČR. První nestátní subjekt se v ţebříčku podle přijatých prostředků nachází aţ na 41. místě. Nejsilnější vazby z hlediska toku finančních prostředků jsou mezi subjekty, které jsou mezi největšími poskytovateli, resp. příjemci. 4.3.2 Počet výstupů z projektů Ač nemusí být počet výsledků projektu vhodným kvalitativním ukazatelem, lze podle nestandardní hodnoty v rámci oboru identifikovat zvláštní projekty. Velký počet výstupů můţe značit nadprůměrný úspěch projektu, malý počet naopak úspěch podprůměrný. Je třeba vţdy brát v potaz velikost daného projektu, protoţe nákladnost projektu s počtem výsledků souvisí. Z hlediska průměrného počtu výsledků podle oboru jsou na tom nejlépe informatika, matematika a fyzika. To můţe být dáno tím, ţe tyto výsledky jsou často například články ve vědeckých časopisech a sbornících. Průměrně nejméně výsledků mají naopak lékařské vědy a vojenství, coţ můţe být způsobeno odlišným charakterem výstupů a nákladností těchto projektů. Fakt, ţe 28,5 % všech projektů nemá v RIV ani jeden výsledek, je poměrně překvapující. Většina z těchto projektů jsou projekty úspěšné, které určité výstupy měly. Lze tedy usoudit, ţe většina těchto projektů nemá v RIV výsledek, protoţe nebyl do systému dodán či nebyl schválen pro zařazení. 4.3.3 Neúspěšné projekty Ač je neúspěšných projektů menšina, jsou o to zajímavější. To, ţe je projekt neúspěšný, ještě neznamená, ţe neměl ţádné výsledky. Většina těchto projektů byla předčasně ukončena odstoupením jednoho ze zúčastněných subjektů. Fakt, ţe Ministerstvo školství, mládeţe a tělovýchovy je největším poskytovatelem, ale z hlediska objemu vydaných financí na neúspěšné projekty je aţ na pátém místě, ukazuje na dobré vyuţití poskytnutých prostředků. Ministerstvo průmyslu a obchodu 65
je naopak v objemu financí vydaných na neúspěšné projekty na prvním místě, nicméně tato částka se pohybuje kolem 1 % všech vydaných prostředků. Výpočty koeficientů úspěšnosti ukázaly poměrně dobrou úroveň subjektů účastnících se projektů. Subjekty s hodnotou koeficientu 0 se často účastnily pouze jediného projektu. Z grafu závislosti váţeného koeficientu úspěšnosti na neváţeném koeficientu úspěšnosti je vidět lineární tendence závislosti. Více subjektů se nalézá nad pomyslnou přímkou a tedy neúspěšné projekty poměrově s ostatními méně nákladné. 4.3.4 Analýza shluků subjektů Filtrování grafu ukázalo, ţe nejvíce projektů se účastní veřejné výzkumné instituce a vysoké školy. Tyto výzkumné ústavy a školy spolu také často spolupracují na projektech, méně často také spolu se soukromými subjekty. Na stejných projektech se podle očekávání často podílí subjekty s podobným zaměřením, jako například ČVUT a Fyzikální ústav AV ČR. Tato dvojice se také společně účastnila projektů za nejvíce peněz, více neţ 1 miliardu Kč. Největší shluk často spolupracujících subjektů se nalézá v oblasti zemědělství a souvisejím výzkumu. Jsou v něm jak veřejné instituce, jako je Mendelova univerzita v Brně či veřejné výzkumné ústavy, tak soukromé subjekty, jako Výzkumné centrum SELTON s.r.o. a ANSER s.r.o. 4.3.5 Analýza osob Fakt, ţe pouze 15,3 % osob je přítomno ve více neţ jedné firmě, je poměrně překvapivý. Nehledě na tento fakt se mnoho osob účastnilo poměrně velkého mnoţství projektů. Nejvíce se přirozeně účastnily osoby ze subjektů, které participovaly na velkém mnoţství projektů, jako je UK v Praze, Ústav jaderného výzkumu Řeţ či konsorcium Škoda. Analýza pomocí pluginu ukázala, ţe dvojice či větší skupiny osob jsou často ve vedení firem, které jsou součástí skupiny firem či konsorcia jako je Škoda či Vítkovice. Čtvrtina z analyzovaných osob se účastnila nějakého projektu v rámci více firem, které jsou často podobně zaměřené. Toto propojení umoţňuje lepší spolupráci těchto firem v rámci projektů.
66
Distrubuce hodnot hodnocení osob podle průměrné částky vydané na jeden výsledek v RIV je lehce vychýlená k niţším hodnotám, odlehlé hodnoty se pohybují ve vyšších částkách. Osoby, které se učastnily projektů za nejvíce peněz jsou na tom z hlediska efektivity podobně, s výjimkou Radima Palouše, který má průměrnou částku vydanou na jeden výsledek ve srovnání s ostatními čtvrtinovou.
67
68
Závěr Cílem této práce bylo popsat problematiku veřejných dat a následně převáţně pomocí nástrojů explorativní analýzy vybraná data vytěţit. Jednalo se o data o vědeckovýzkumných projektech z Informačního systému výzkumu, experimentálního vývoje a inovací integrovaná s daty o osobách ve vedení subjektů z Administrativního registru ekonomických subjektů (ARES). Pro získání dat z ARES bylo nutné implementovat nástroj pro automatické dotazování a následné uloţení vybraných údajů do formátu XML. Podařilo se získat potřebná data z obou systémů a poté je předzpracovat tak, aby bylo moţné podat odpovědi na pět formulovaných analytických otázek. Pro úpravu dat byl pouţit převáţně RapidMiner, pro následnou vizualizaci a analýzu program Gephi. Přestoţe existují nástroje pro vizualizaci vztahů osob a firem, například na serveru podnikani.cz, poskytují pouze základní a nedostatečné informace. Pro zodpovězení otázek týkajících se shluků firem či osob bylo tedy nutné implementovat plugin do Gephi, který shluky v datech nalezl. Tento plugin byl zveřejněn na plugin portálu Gephi, kde je volně ke staţení. V rámci řešení analytických otázek se podařilo integrovat a modelovat data pro nalezení zajímavých skutečností. Byl vytvořen graf párování poskytovatelů dotací a příjemců, ve kterém lze například nalézt celkový finanční tok, který proběhl mezi jednotlivými poskytovateli a příjemci. Podařilo se zhodnotit projekty a jejich řešitele z hlediska počtu výsledků projektů a jejich úspěšnosti. Byly nalezeny shluky subjektů, které se často účastní společných projektů, a následně analyzovány konkrétní dvojice z těchto shluků. Z analýzy osob vzešel graf propojení osob, firem a projektů, ve kterém lze v různé hloubce okolí zkoumat vazby
pro konkrétní osoby či firmy.
Pomocí implementovaného pluginu byly nalezeny shluky osob, které jsou společně ve vedení různých firem, a také osoby, které se účastnily jednoho projektu skrze více
69
firem. Všechny osoby byly následně ohodnoceny podle průměrné částky přijaté na jeden výsledek projektu. Z hlediska pokračování se nabízí široké pole moţností. Vytvořená MySQL databáze a grafy v Gephi skýtají prostor pro další analýzu. Je moţné navázat jak hledáním globálních statistik a údajů, tak zkoumáním vztahů a vazeb pro konkrétní osoby a subjekty. V neposlední řadě je moţné rozšířit implementovaný plugin například o další algoritmus pro hledání shluků.
70
Literatura [1] IASRI: Data Preprocessing Techniques for Data Mining. Dostupné z: http://www.iasri.res.in/ebook/win_school_aa/notes/Data_Preprocessing.pdf
[2] Gephi Consortium: Gephi website. Dostupné z: https://www.gephi.org
[3] Rapid-I: Rapid Miner. Dostupné z: http://rapid-i.com/content/view/181/190/lang,en/
[4] Ministerstvo financí ČR: Administrativní registr ekonomických subjektů. Dostupné z: http://wwwinfo.mfcr.cz/ares/
[5] Rada pro výzkum, vývoj a inovace: Veřejně přístupná data IS VaVaI. Dostupné z: https://www.isvav.cz/
[6] Cinergix Pty. Ltd.: Diagrams Online. Dostupné z: https://drive.draw.io/
[7] BERG, Michal. Otevřená data pro chytřejší města. 2012. Dostupné z: http://www.datablog.cz/clanky/otevrena-data-pro-chytrejsi-mesta
[8] Luxon Software: Free online XML to CSV converter. Dostupné z: http://www.luxonsoftware.com/converter/xmltocsv
[9] Rada pro výzkum, vývoj a inovace: Informační systém výzkumu, experimentálního vývoje a inovací. Dostupné z: http://www.vyzkum.cz/FrontClanek.aspx?idsekce=610
71
72
Příloha
A
Seznam použitých zkratek CPU Central processing unit IS VaVaI
Informační systém výzkumu, experimentálního vývoje a inovací
ARES Administrativní registr ekonomických subjektů XML Extensible markup language CSV Comma separated values SQL Structured query language IČO Identifikační číslo organizace NBM NetBeans module API
Application programming interface
CEP Centrální evidence projektů RIV Rejstřík informací o výsledcích
73
74
Příloha
B
Význam kódů podoborů Kód AA AB AC AD AE AF AG AH AI AJ AK AL AM AN AO AP AQ BA BB BC BD BE BF BG BH BI BJ BK BL BM BN BO CA CB CC CD CE CF CG CH
Popis Filosofie a náboţenství Dějiny Archeologie, antropologie, etnologie Politologie a politické vědy Řízení, správa a administrativa Dokumentace, knihovnictví, práce s informacemi Právní vědy Ekonomie Jazykověda Písemnictví, mas–media, audiovize Sport a aktivity volného času Umění, architektura, kulturní dědictví Pedagogika a školství Psychologie Sociologie, demografie Městské, oblastní a dopravní plánování Bezpečnost a ochrana zdraví, člověk – stroj Obecná matematika Aplikovaná statistika, operační výzkum Teorie a systémy řízení Teorie informace Teoretická fyzika Elementární částice a fyzika vysokých energií Jaderná, atomová a molekulová fyzika, urychlovače Optika, masery a lasery Akustika a kmity Termodynamika Mechanika tekutin Fyzika plasmatu a výboje v plynech Fyzika pevných látek a magnetismus Astronomie a nebeská mechanika, astrofyzika Biofyzika Anorganická chemie Analytická chemie, separace Organická chemie Makromolekulární chemie Biochemie Fyzikální chemie a teoretická chemie Elektrochemie Jaderná a kvantová chemie, fotochemie 75
Kód CI DA DB DC DD DE DF DG DH DI DJ DK DL DM DN DO EA EB EC ED EE EF EG EH EI FA FB FC FD FE FF FG FH FI FJ FK FL FM FN FO FP FQ FR FS GA GB GC GD GE GF GG GH GI GJ
Popis Průmyslová chemie a chemické inţenýrství Hydrologie a limnologie Geologie a mineralogie Seismologie, vulkanologie a struktura Země Geochemie Zemský magnetismus, geodesie, geografie Pedologie Vědy o atmosféře, meteorologie Báňský průmysl včetně těţby a zpracování uhlí Znečištění a kontrola vzduchu Znečištění a kontrola vody Kontaminace a dekontaminace půdy včetně pesticidů Jaderné odpady, radioaktivní znečištění a kontrola Tuhý odpad a jeho kontrola, recyklace Vliv ţivotního prostředí na zdraví Ochrana krajinných území Morfologické obory a cytologie Genetika a molekulární biologie Imunologie Fyziologie Mikrobiologie, virologie Botanika Zoologie Ekologie – společenstva Biotechnologie a bionika Kardiovaskulární nemoci včetně kardiochirurgie Endokrinologie, diabetologie, metabolismus, výţiva Pneumologie Onkologie a hematologie Ostatní obory vnitřního lékařství ORL, oftalmologie, stomatologie Pediatrie Neurologie, neurochirurgie, neurovědy Traumatologie a ortopedie Chirurgie včetně transplantologie Gynekologie a porodnictví Psychiatrie, sexuologie Hygiena Epidemiologie, infekční nemoci a klinická imunologie Dermatovenerologie Ostatní lékařské obory Veřejné zdravotnictví, sociální lékařství Farmakologie a lékárnická chemie Lékařská zařízení, přístroje a vybavení Zemědělská ekonomie Zemědělské stroje a stavby Pěstování rostlin, osevní postupy Hnojení, závlahy, zpracování půdy Šlechtění rostlin Choroby, škůdci, plevely a ochrana rostlin Chov hospodářských zvířat Výţiva hospodářských zvířat Šlechtění a plemenářství hospodářských zvířat Choroby a škůdci zvířat, veterinární medicina 76
Kód GK GL GM IN JA JB JC JD JE JF JG JH JI JJ JK JL JM JN JO JP JQ JR JS JT JU JV JW JY KA
Popis Lesnictví Rybářství Potravinářství Informatika Elektronika a optoelektronika, elektrotechnika Senzory, čidla, měření a regulace Počítačový hardware a software Vyuţití počítačů, robotika a její aplikace Nejaderná energetika, spotřeba a uţití energie Jaderná energetika Hutnictví, kovové materiály Keramika, ţáruvzdorné materiály a skla Kompositní materiály Ostatní materiály Koroze a povrchové úpravy materiálu Únava materiálu a lomová mechanika Inţenýrské stavitelství Stavebnictví Pozemní dopravní systémy a zařízení Průmyslové procesy a zpracování Strojní zařízení a nástroje Ostatní strojírenství Řízení spolehlivosti a kvality, zkušebnictví Pohon, motory a paliva Aeronautika, aerodynamika, letadla Kosmické technologie Navigace, spojení, detekce a protiopatření Střelné zbraně, munice, výbušniny, bojová vozidla Vojenství
Tabulka 11 - význam kódů podoborů
77
78
Příloha
C
Obsah přiloženého CD /db........................................................................................................exportované databázové tabulky /Gephi................................................................................................................soubory s grafy do Gephi /src......................................................................................................................................zdrojové kódy /Ares..........................................projekt do NetBeans s nástrojem pro automatické dotazování /SubjectsClustering....................................projekt do NetBeans s implementovaným pluginem /text.......................................................................................................text práce ve formátu docx a pdf readme.txt.........................................................................................................stručný popis obsahu CD
79