Analýza a optimalizace procesů 3
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Analýza a optimalizace procesů 3Analýza a optimalizace procesů 3

 

Analýza a optimalizace procesů 3

Google       Google       25. 2. 2015       6 974×

V minulých článcích jsme si ukázali, jak připravit datový soubor pro analýzu výrobních procesů, která pak bude zdrojem pro jejich optimalizaci. V tomto článku se již budeme zabývat první fází optimalizace procesů, analýzou připravených dat pomocí neuronových sítí. Ukážeme si nejčastější typy sítí, možnosti jejich využití v průmyslových informačních systémech a popíšeme základní parametry ovlivňující jejich učení.

Reklama
Reklama

Úvod

Pro přiblížení problematiky neuronových sítí budeme opět používat demo verzi systému ELTAV s připravenými typovými úlohami. V této chvíli předpokládáme, že máme k dispozici již kvalitní datový soubor, ve kterém jsou odstraněna odlehlá data, neobsahuje vzájemně závislé vstupní proměnné, všechny údaje jsou vyplněny a všechny proměnné relevantní a můžeme proto přistoupit k vlastní analýze.

Jako ukázkové úlohy budeme pro jednoduchost používat data v adresářích optim1 a optim2, která obsahují náhodná data s funkčními závislostmi ve tvaru polynomů více proměnných. Výhoda popisovaných sítí je ovšem v tom, že dokáží nalézt i daleko složitější souvislosti, které se vyskytují ve skutečných výrobních procesech.

Teoretický základ je obsažen v mých předchozích článcích Inteligentní ekonomické systémy I - IV, zde se budu zabývat pouze praktickými otázkami.

V textu jsou uvedeny jen nejvýznamnější příkazy systému ELTAV. Podrobnější popis ovládání naleznete v nápovědě Nápověda - Témata nápovědy. (VÍTKOVICE ITS a.s. nepoužívejte, stránka již neexistuje).

Parametry systému

Vlastnosti systému ELTAV definuje řada parametrů, uložených v textových souborech. Tyto soubory nejsou určeny k editování, je to jen řada číselných hodnot bez označení jejich významu, které si ukládá a čte systém ELTAV. Příkazem Parametry - Otevři jméno_souboru.txt jsou načteny do vnitřní paměti a pomocí Parametry - Změň je můžete upravovat. Upravené parametry potvrdíte příkazem Ulož v dolní skupině tlačítek, změny některých parametrů můžete zrušit příkazem Zruš. Změněné parametry si pak uložíte pod jiným jménem příkazem Parametry - Ulož - jiné_jméno_souboru.txt.

Pro typové úlohy jsou již vhodné parametry nastaveny v souborech ctrl.txt, pro vlastní úlohy si vzhledem k jejich velkému množství vyberte parametry některé typové úlohy a jen si je podle potřeby upravte.

Typ a topologie sítě

V levém horním rohu je základní popis sítě - typ sítě a topologie. Tyto parametry mají na systém tak základní vliv, že je nelze vzít zpět tlačítkem Zpět.

Typy sítí

Můžete zvolit jednu z nabídky známých nebo experimentálních sítí:

Standardní sítě

Základem analýzy jsou v ELTAVu nejčastěji sítě popsané v literatuře, některé s určitými modifikacemi, které výpočet přibližují průmyslové praxi.

MADALINE je nejjednodušší, lineární síť. Dokáže nalézt lineární závislost mezi proměnnými. Přestože je jednoduchá, můžeme s ní řešit některé úlohy například v ekonomii. Po naučení můžeme závislost vyjádřit vzorcem. Pro průmyslové aplikace se většinou nehodí, tam jsou zpravidla závislosti mnohem složitější a s lineární sítí nevystačíme.

BACKPROP je zkratka pro neuronovou síť s aktivační funkcí sigmoida a metodou učení Backpropagation, čili metodou zpětného šíření chyby. Učení probíhá v této síti vždy po předložení každého vzoru. Dokáže se naučit i složité vazby ve výrobních procesech. Nevýhodou je, že závislost veličin můžeme znázornit pouze graficky. Při větší nepřesnosti vstupních dat se může rozkmitat.

AKUMUL BP je modifikace předchozí sítě, kdy učení probíhá až po předložení celé množiny v jednom kroku. Síť může být stabilnější zvláště v případě, když jsou data zatížena značnou chybou měření.

KOMPET představuje Kohonenovu síť soutěžní strategie s učitelem. Naučí se identifikovat předložený vzor a zařadit jej do kategorie určené nejbližším reprezentantem. V popisovaných aplikacích nemá takový význam, využívá se například v rozpoznávání obrazců.

Experimentální sítě

Tyto sítě jsem navrhl při řešení praktických problémů a budu je dále vyvíjet.

AUTO INP je experimentální síť, která se pokouší automaticky nalézt relevantní data. Nalezená množina relevantních parametrů je zatím spíše orientační, přesnější metodou je postupné odstraňování nerelevantních dat. Ve vývoji budu dále pokračovat s cílem zvýšit přesnost a zkrátit dobu výpočtu.

EXTENDED je dvoufázová síť. V první fázi se heuristicky nalezne přibližné řešení, v druhé fázi se síť doučí metodou Backpropagation. Výsledky jsou zatím nadějné, bude však nutné tuto síť ověřit na větším množství úloh.

Lineární sítí a sítí soutěžní strategie jsem se zabýval ve svých předchozích článcích, v tomto seriálu se zaměřím především na sítě, které mají význam v analýze průmyslových procesů.

Topologie sítě

V závislosti na typu sítě musíme definovat její topologii.

Počet vrstev

Neurony se v sítích řadí do vrstev, vstupy každého neuronu z vyšší vrstvy jsou propojeny s výstupy všech neuronů nižší vrstvy. Topologie definuje vstupní vrstvu, jejíž neurony pouze přenášejí vstupní hodnoty do sítě, žádnou až zpravidla maximálně dvě střední vrstvy a jednu výstupní vrstvu. Počet neuronů vstupní vrstvy je pevně dán počtem vstupů, políčko je pouze pro čtení, počet neuronů výstupní vrstvy je v našem systému standardně 1.

Lineární a Kohonenova síť může mít pouze vstupní a výstupní vrstvu, u ostatních můžete počet vrstev mimo vstupní měnit. Při změně počtu vrstev se vždy implicitně nastaví v každé vrstvě 1 neuron, počty si pak můžete upravit. Nemá smysl zadat větší počet než dvě vnitřní vrstvy, nedosáhne se zpravidla lepší výsledek a výpočet se zbytečně prodlouží.

Počty neuronů ve vrstvách

Počty neuronů ve vrstvách si můžete změnit kliknutím myší na příslušný řádek seznamu. Objeví se okénko, kde můžete zapsat svůj požadovaný počet neuronů. Hodnotu potvrdíte tlačítkem Změň v dialogu vlevo dole.

Počet neuronů první vnitřní vrstvy se doporučuje zadat zhruba jako počet vstupních veličin, v druhé vrstvě zhruba polovinu. Záleží to ovšem na složitosti úlohy.

Příklad 1

Otevřete si příklad v adresáři optim1: Parametry, Otevři, optim1, ctrl.txt a Data, Soubor, data.txt. Naučte síť: Parametry, Učení. Jakmile se chyba přestane snižovat, můžete učení přerušit. Všimněte si, že síť rozpoznala dobře všech 20 kontrolních vzorků.

Změňte nyní topologii sítě: počet vrstev 2 Změň, vnitřní vrstva 2 Změň a Ulož. Nyní znovu naučte síť a všimněte si, že z 20 kontrolních vzorů rozpoznala pouze 5. Chybně rozpoznané vzory jsou ve výsledcích zvýrazněny.

Je vidět, že nedostatečná topologie sítě může vést k chybným výsledkům analýzy.

Základní parametry sítí

Parametry sítě zadáváme v pravé část obrazovky. V tomto článku si probereme společné parametry.

Počet testovacích řádků

Účelem neuronové sítě není jen naučit se vzory, které jsou obsaženy v trénovací množině, to bychom mohli řešit uložením a výběrem z databáze. My chceme, aby síť dokázala zobecnit vztahy obsažené v datech a správně reagovala na data, která v trénovací množině obsažena nejsou. Navíc data jsou zpravidla zatížena určitými chybami a příliš rozsáhlá síť by se mohla naučit závislosti v datech i s jejich chybami, byla by tzv. přeučená. Proto část vstupních dat vyčleníme, síť naučíme ze zbytku a vyčleněná data použijeme na kontrolu úspěšnosti učení.

Počet kontrolních vzorů se zadá ve zmíněném políčku. Musí být podstatně menší než množina pro učení. Speciální význam má hodnota 0 = učení z celé množiny. To však můžeme použít jen pro orientační analýzu, výsledky nemusí být spolehlivé.

Počet iterací

Jak jsem již uváděl v předchozích článcích, neuronová síť pracuje po krocích, postupně prohlíží vždy celý datový soubor a zpřesňuje řešení od zcela náhodného k dostatečné přesnému. Maximální počet takových kroků můžete zadat v tomto políčku. Malý počet iterací může znamenat nižší kvalitu analýzy, příliš velký zase prodlužuje výpočet.

V literatuře se uvádí také ukončení při dosažení určité zadané chyby, v systému ELTAV se chyba zobrazuje při výpočtu a je ponecháno na uživateli, kdy výpočet ukončí. Můžete si také prohlédnout výsledek a ve výpočtu pokračovat.

Koeficient učení

Koeficient učení je nejdůležitější koeficient, který ovlivňuje průběh učení. Souvisí opět s postupným zpřesňováním řešení. Definuje, jak rychle se řešení zpřesňuje v jednom kroku. Na začátku je síť nastavena náhodně, provede se výpočet, zjistí chyba a o jistou část způsobené chyby se upraví konfigurace sítě. O jakou část, to určí koeficient učení.

Malý koeficient učení prodlužuje délku výpočtu, velký může způsobit, že se síť rozkmitá. U jednoduchých úloh se koeficient volí maximálně 0.2, u složitějších je nutno jej snížit na setiny případně tisíciny.

Příklad 2

V adresářích optim1 a optim2 jsou uloženy soubory koeficientů a data pro učení polynomů. Zkuste si měnit popsané koeficienty a porovnejte výsledek.

Grafické zobrazení výsledků

Pro grafickou reprezentaci můžete použít následující postup (tento postup se více používá při optimalizaci):

Příkaz Optimalizace - Komplexní, v dialogu označte proměnnou myší a stiskněte tlačítko Meze pod seznamem proměnných. Do políček se vám vloží minimální a maximální hodnoty zvolené proměnné. Poté stiskněte Meze uprostřed obrazovky u výsledku, vloží se vám rozsah hodnot funkce. Po stisknutí tlačítka Graf se vám zobrazí závislost graficky: plná čára vypočtená funkce, přerušovaná zobrazuje vliv ostatních proměnných, křížky jsou znázorněny zadané body.

Cvičení

Vytvořte si v Excelu náhodnou veličinu x a její jednoduchou funkci f(x) - max. 20 vzorů. Zkopírujte si soubor ctrl.txt a upravte si jej. Vzhledem k omezení demo verze zvolte jednoduchou funkci, např. f(x)=x*x a zadejte počet kontrolních řádků 0. Zjistěte, zda se síť naučí vašemu vzorci. Zobrazte graf funkce.

Závěr

V tomto článku jsme si předvedli základní analýzu pomocí neuronové sítě. V dalších článcích se budeme věnovat speciálnějším metodám, které pomohou dosáhnout lepších výsledků a zvýšit přesnost analýzy.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
3 hlasy
Google
(fotka) Jaroslav TedaAutor se zabývá vývojem inteligentních softwarových systémů ve firmě OPTI Intelligent s.r.o. Publikoval na seminářích včetně mezinárodních i zahraničních a v časopise Automatizace.
Web    

Nové články

Obrázek ke článku NEWTON Media prohledá 200  milionů mediálních zpráv během sekund díky Cisco UCS

NEWTON Media prohledá 200 milionů mediálních zpráv během sekund díky Cisco UCS

Česká společnost NEWTON Media provozuje největší archiv mediálních zpráv ve střední a východní Evropě. Mezi její zákazníky patří například ministerstva, evropské instituce nebo komerční firmy z nejrůznějších oborů. NEWTON Media rozesílá svým zákazníkům každý den monitoring médií podle nastavených klíčových slov a nabízí online službu, kde lze vyhledat mediální výstupy v plném znění od roku 1996.

Reklama
Reklama
Obrázek ke článku Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Touto roční dobou, kdy je zem pokrytá barevným listím a prsty křehnou v mrazivých ránech, se obvykle těšíme na zbrusu novou verzi RAD Studia. Letos si však ale budeme muset počkat na Godzillu a Linux až do jara. Vezměme tedy za vděk alespoň updatem 2 a jelikož dle vyjádření pánů z Embarcadero se budou nové věci objevovat průběžně, pojďme se na to tedy podívat.

Obrázek ke článku Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Stále rostoucí zájem o cloudové služby i maximální důraz na pružnost, spolehlivost a bezpečnost IT vedou k výrazným inovacím v datových centrech. V infrastruktuře datových center hraje stále významnější roli software a stále častěji se lze setkat s hybridními přístupy k jejich budování i provozu.

Obrázek ke článku Konference: Mobilní technologie mají velký potenciál pro byznys

Konference: Mobilní technologie mají velký potenciál pro byznys

Firmy by se podle analytiků společnosti Gartner měly  rychle přizpůsobit skutečnosti, že mobilní technologie už zdaleka nejsou horkou novinkou, ale standardní součástí byznysu. I přesto - nebo možná právě proto - tu nabízejí velký potenciál. Kde tedy jsou ty největší příležitosti? I tomu se bude věnovat již čtvrtý ročník úspěšné konference Mobilní řešení pro business.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý