Vzpomenete si ještě na fungování bank v nedávné minulosti? Při žádosti o úvěr vás převzal bankovní úředník. Po získání všech potřebných dokumentů vás přeměřil přísným pohledem a rozebral mnoha zvídavými otázkami. Na základě svých zkušeností, denní doby, aktuální rodinné a firemní atmosféry rozhodl, zda banka úvěr poskytne, či nikoliv.
Rozhodl jeho mozek. Jsme ve světě počítačů, tak proč nenahradit rozhodovací mechanismus jeho mozku umělými neurony, které dnes umíme velmi úspěšně tvořit? Že je to složité?
Základem všeho je neuron
Možná si říkáte, že vytváření umělého mozku tu už několikrát bylo. Ale v našem případě nejde o celý mozek. Chceme totiž nahradit pouze jednu rozhodovací dráhu, která má na starosti přidělování úvěrů. Inspirací nám bude biologický neuron. Proč také vymýšlet něco nového, když příroda vyvinula kvalitně fungující aparát? Pouze jeho základní podobu převedeme do struktur počítače a začneme s ním operovat.
Informace do neuronu vstupuje dendrity, každý impulz může mít jinou sílu. Rozhodnutí o informaci, kterou neuron zasílá axonem dál, poskytuje jádro (soma).
Jakmile jsme nuceni o něčem rozhodovat, což provádíme tisíckrát denně, aktivujeme mozkové trasy, které se skládají z neuronů. Ty přenášejí informace a zároveň provádějí dílčí rozhodné operace. Příkladem může být nakupování. Představme si, že máme v mozku jeden neuron specializovaný na nakupování vína. Samotná koupě je ovlivněna zkušenostmi, preferencí druhu, náklonností ke značce a finančním obnosem, který jsme ochotni obětovat. Při pohledu na láhev vína pak vstupují do hry naše vjemy (zaujme nás etiketa, zhodnotíme barvu, zpozorujeme cenovku). Náš životní styl a zkušenosti celkově rozhodují, které podněty budou mít na samotnou koupi klíčový vliv. V mozku je to zajištěno silnější dráhou k našemu neuronu. Zjednodušeně řečeno, pokud máme neomezené finanční zdroje, cenové hledisko do rozhodného neuronu ani nemusí doputovat díky oslabené dráze reprezentující vliv ceny. Samotné rozhodnutí je poměrně snadné – vstupy ovlivněné významností trasy se sečtou, a pokud je součet silnější než práh rozhodování, láhev vína zakoupíme.
Nerozhodujeme se však jen o koupi vína, ale uzavíráme například i pojištění. Skupina klientů, kteří uzavřeli určité životní pojištění, se obvykle vyznačuje podobnými vlastnostmi. Pokud je odhalíme, nic nám nebrání této znalosti využít. Čím významnější je atribut/vlastnost klienta, tím silnější je dráha k neuronu, který o zakoupení rozhoduje.
Umět rozhodnout o čemkoliv
Umělý neuron v podstatě kopíruje svojí strukturou biologický neuron. Informace do něj vstupují podobným způsobem a rozhoduje se opět na základě prahu. Jaká informace je pro rozhodnutí nejpodstatnější, určuje váha každého vstupu.
Při rozhodování o přidělení úvěru je například výše platu ohodnocena vysokou váhou, protože toto hledisko je důležité. Aktuální počasí má váhu nulovou. Když jsou váhy šikovně rozdělené, může neuron velmi jednoduše a automaticky řešit zadaný úkol. Často jsou úlohy složitější a například samotné přiznání úvěru není jednoduchým rozhodnutím, které by nejlépe vyřešil jediný neuron. Proto se obvykle neurony seskupují a spojují do sítí, které již dokáží rozhodnout o čemkoliv, pokud tedy rozhodnout mohou (rozhodovat o přidělení kreditní karty pouze na základě pohlaví obvykle nelze).
Neuronová síť se skrytou vrstvou, jedna z možných architektur.
Obrázek: Wikipedia, licence GNU Free Documentation License
Učit se, učit se
Když je vše tak jednoduché, naskýtá se otázka, proč se s umělými neurony nesetkáváme na každém kroku? Trochu jsme totiž zanedbali otázku přidělení důležitosti jednotlivým vstupním informacím. Naše zkušenosti se utvářejí po celou dobu života – učíme se. Že oheň pálí, jsme si vyzkoušeli snad všichni. Podobné je to s umělými neurony – žádná učená neuronová síť z nebe nespadla a bohužel jednoduše nespadne. Je třeba ji učit na základě historických zkušeností, které jsou ukryty v datech. Tím se dotýkáme technik data miningu, které se snaží získat z dat znalosti a vložit je do umělého modelu. Naším modelem je neuronová síť a znalosti ukládáme do vah vstupních informací, podobně jako je tomu v našem mozku. Stejně jako se učíme my, učí se i síť a na základě vkládaných informací průběžně upravuje důležitost vstupů. Nám trvá učení celý život, síť je schopná zachytit informace v datech v reálném čase. Člověk zapomíná, síť zapomínat nemusí, i když je to často vítanou vlastností.
Samotné učení sítě skutečně není úplně jednoduchým procesem, ale lze jej pochopit. Úspěch učení je obvykle podmíněn několika faktory. Zkušenosti ukazují, že klíčovou část tvoří kvalitní příprava dat a následně velmi pomalé učení.
Umělé neuronové sítě při získávání zkušeností disponují několika parametry, které ovlivňují rychlost, s níž se učí. Když se setkáte s neurony, téměř nikdy neuděláte chybu, pokud rychlost učení snížíte téměř k nule. Ztracený čas je kompenzován vyšší kvalitou získané sítě.
Učit se, učit se?
Existuje tedy postup, jak do umělých neuronů vkládat informace. Jenže informací je nedostatek. O klientech toho stále víme málo, známe pouze střípky z vlastností a životního stylu. A neuronovou síť tedy učíme pouze z útržků, které jsou ukryté v datech. To v některých případech vede k tzv. přeučení.
Přeučený model správně rozpozná pouze vzory, které se učil. Vzory, které se jen mírně liší, již rozpoznat nemusí. Příklad vydá za odstavce vysvětlování. Pokud by se školák učil písmena z jediné učebnice a nesetkal by se s jiným typem písma, měl by v reálném světě se čtením určité problémy. Dokázal by rozpoznat pouze ten typ písma, které se naučil, nebo nějaké jemu podobné, ale například rukou psaný text by nemusel správně rozluštit. Reálný svět nám poskytuje bezpočet různých typů písem, které v životě poznáme. Proto k přeučení nedochází. Umělý model ale čerpá jen z informací, které mu poskytneme. Proto je klíčové dbát na to, aby data obsahovala co nejvíce relevantních informací a hlavně aby jejich kvalita byla vysoká. Přeučení lze obvykle velmi snadno omezit pomalým učením a jeho zastavením ve správný moment. Identifikace správného momentu nebývá složitá, postačuje k tomu reprezentativní vzorek testovacích dat.
Neuronová síť není černá skříňka
Velmi často se setkáváme s postojem, že není vhodné používat umělé neurony, protože není zřejmé, jak rozhodují. Neuronová síť je proto označována za černou skříňku, která na předkládaný vzor odpoví, ale není jasné, proč takto odpověděla. Již víme, že se o rozhodování starají jednotlivé neurony, důležitost jejich vstupů a práh neuronu. V síti je neuronů často větší množství a rozhodování je kooperativní.
Lze tedy vůbec identifikovat, proč síť nějakým způsobem rozhoduje? Vraťme se k úloze s nákupem vína. Nakonec si nějakou láhev koupíme, ale často nevíme proč. Jedná se o složitější souhru vjemů, náhod a aktuálního rozpoložení člověka, které poskládají výsledné rozhodnutí. Proto ani v neuronové síti nelze identifikovat pravidla jednoduchým způsobem. Ale o černou skříňku rozhodně nejde. Složitý model z ní vytváří velké množství spojovacích hran. Není nic jednoduššího než nedůležité vstupy odřezat. Jednoduše se to říká a skutečně se to i jednoduše provede. Nakonec zůstane neuronová síť, do níž vede jen několik důležitých vstupů, mezi neurony existuje taktéž pouze omezené propojení.
Složitá struktura neuronové sítě může být prořezána. Získáme tak jednodušší síť, ze které je již zřejmé, jak dochází k rozhodnutí. Prořezaná síť často rozhoduje jen nepatrně hůře.Váhy jednotlivých spojení ukazují na důležitost cest. Jejich poskládáním pak získáme soubor pravidel, na jejichž základě neurony rozhodují. Je pravdou, že například rozhodovací stromy poskytují snazší cestu k pochopení rozhodování, avšak jejich potenciál automatického rozhodování není tak vysoký.
A zpět k rozhodování
Vraťme se ale k použití umělých neuronů v data miningu. Pomocí získané neuronové sítě můžeme řešit mnoho úloh a podporovat rozhodování. Analyzovat „Propensity to buy“ úlohy (tj. úlohy, které identifikují skupiny zákazníků, jež mají tendenci pořídit si nový produkt nebo službu), případně přímo cross-selling (jehož cílem je přesvědčit zákazníka ke koupi souvisejících produktů a služeb) a up-selling (tj. přesvědčit zákazníka ke koupi nového/vyššího modelu produktu či řešení nebo ke zvýšení jeho hodnoty). Rozhodovat o poskytnutí úvěru, kreditní karty či slevy.
Neuronová síť může také napomoci při odhalování pojistných podvodů, lékařům může naznačit nastupující chorobu, může rozpoznávat klíčové sekvence DNA.Úloh data miningu existuje skutečně značné množství. Proces rozhodování je velmi blízký historickému myšlenkovému přístupu. Umělý model však není náchylný k rozmarům počasí ani k rodinným problémům. Rozhoduje stále stejně a doučit ho případně nové podněty je také možné.
Autor je Business Consultantem společnosti Adastra Corporation.