Smart Search (e-shop)
Nastavení e-shopu v systému K2
Pro využití funkce Smartsearch na e-shopu je nejdříve nutné nakonfigurovat Elasticsearch v IS K2. Konfigurace je blíže popsána v části Elasticsearch - Konfigurace v K2.
Dalším krokem je nastavení konkrétního e-shopu, aby používal vyhledávání přes Elasticsearch.
V knize Weby a e-shopy se na záznamu pro daný e-shop přepneme do změny a stiskneme tlačítko Nastavení webu a e-shopu. Na záložce Vyhledávání zatrhneme Použít Smart Search vyhledávání.

Obr.: Použít Smart Search vyhledáváni
Na záložce Nastavení Smart Search definujeme oblasti vyhledávání pro našeptávač a pro výsledky hledání.

Obr.: Nastavení Elasticsearch indexů
Pomocí tlačítka Nastavení Elasticsearch indexů otevřeme konfiguraci Elasticsearch indexů.
Tlačítko Výchozí nastavení indexů nám vygeneruje základní indexy a doplní požadované údaje:
- Základní název indexů – pro pojmenování v databázi Elasticsearch. Vzhledem k možnosti provozovat vůči jedné instalaci Elasticsearch více e-shopů i z více různých instalací K2, je vhodné zvolit jednoznačný název, např. dle e-shopu.
- Název šablony indexů – pojmenování šablony indexů vytvořené v předchozím kroku. Pokud je např. šablona pojmenovaná jako web_search_cs, do tohoto pole uvedeme pouze web_search.

Obr. Nastavení indexů
Poznámka: Po rozkliknutí vytvořeného indexu se otevře formulář s jeho detailní konfigurací. Pro každý index lze nastavit, která pole mají být z K2 exportována a jak se má sestavovat hledací dotaz. Hledacím dotazem lze přímo ovlivňovat získané výsledky na webu, lze ovlivňovat prioritu jednotlivých analyzátorů a polí (název, popis, …). Podrobný popis možnosti tvorby hledacích dotazů je nad rámec této dokumentace. Podrobně je popsáno v dokumentaci Elasticsearch.
Tlačítkem Vytvoření všech indexů dojde k vytvoření všech potřebných indexů v Elasticsearch. Úspěšné vytvoření indexů je potvrzeno hlášením.

Obr. Úspěšné vytvoření indexů
Nakonec všechny dialogy potvrdíme a uložíme záznam v knize Weby a e-shopy.
V Nastavení Elasticsearch indexů, tabulka Indexy, máme možnost nastavení volitelných parametrů pro jednotlivé segmenty výsledků hledání. Například při zvoleném typu indexu Zboží si správce pomocí zatržítka zvolí, které synchronizace se mají v rámci aktualizace na daném segmentu propisovat (exportovat).

Obr.: Typ indexů - synchronizace
Popis polí:
Ve filtru dostupnosti zohlednit Text při nulovém skladu |
Dostupné pouze pokud je zatržen parametr "Aktualizovat dostupnost zboží". Ve filtru Dostupnost se kromě volby Skladem budou zobrazovat také hodnoty z pole Text při nulovém skladu. Například:
Ve filtru se hodnoty zobrazují podle těchto pravidel:
|
|
Aktualizovat identifikační čísla |
Vyhledávání pouze v plném hledání. Pokud není vyplněné pole Typ čísla, nahrají se do elasticu všechny položky. Pokud bude hodnota Typ vyplněná, nahrají se pouze identifikační čísla, která mají vyplněna právě tento typ. |
|
Aktualizovat čárové kódy |
Vyhledávání pouze v plném hledání. |
|
Aktualizovat hledaná slova |
Vyhledávání v našeptávači i plném hledání. Vyhledávaná slova se vyhledávají přes překládaný popis, pokud není zadán, pak přes zkratku. |
|
Používat návrhy frází |
Volba Používat návrhy frází slouží k automatickému doplňování slov a víceslovných výrazů během psaní vyhledávacího dotazu v našeptávači na e-shopu. Při zapnuté volbě našeptávač:
|
|
|
Kombinovat slova z názvu zboží |
Pokud je zapnuta volba Kombinovat slova z názvu zboží, dochází k rozkladu názvu produktu na více částí. Příklad: Pro název Rock Machine Powerflex budou jako návrhy frází generovány také Machine Powerflex, Powerflex. Uživatel tak může začít psát libovolné slovo z názvu produktu (i uprostřed) a našeptávač mu nabídne odpovídající doplnění. |
|
Navrhovat názvy kategorií |
Do našeptávače se zahrnou také názvy e-shopových kategorií, což umožňuje rychlou navigaci přímo do konkrétní části sortimentu. |
|
Navrhovt názvy značek |
Do Elasticsearch indexu se zahrnou také názvy značek (např. K2, Ghost, Powerflex). Tyto značky se pak zobrazují v našeptávači jako samostatné návrhy. |
|
Navrhovat hledaná slova ze zboží |
Do našeptávače se zahrnou také hodnoty z pole Hledaná slova ze všech karet zboží publikovaných na e-shopu. Tato funkce umožňuje pracovat i s alternativními názvy, synonymy nebo obchodními označeními produktů. |
Import dat do Elasticsearch
Po základní konfiguraci a vytvoření indexů je nutné vyexportovat data do Elasticsearch. Pro první nahrání dat, případně vynucení ruční aktualizace, je možné použít akce, které jsou dostupné v prohlížení nad formulářem s nastavením indexů (viz předchozí kapitola).
K dispozici jsou 3 funkce:
- Kompletní import dat – nahraje z K2 veškerá data (zboží, kategorie, značky, blogové články) do Elasticsearch indexů.
- Aktualizace dat – nahraje do Elasticsearch pouze změněné záznamy od poslední aktualizace nebo kompletního importu dat.
- Reindexace aktuálního indexu - reindexace se používá, pokud se změnilo nastavení elasticsearch analyzátorů (např. způsob vyhledávání). Po reindexaci není potřeba aktualizovat samotná data z K2. Na rozdíl od vytvoření nových indexů a následném nutném kompletním importu dat, nedojde použitím této akce k dočasnému výpadku funkce vyhledávání na e-shopu. V případě doplnění nového pole do indexu je po reindexaci nutné vždy spustit kompletní import dat.
Po spuštění těchto akcí je zobrazen dialog se souhrnem, případně výpisem chybových stavů u jednotlivých záznamů.
Automatická aktualizace dat v Elasticsearch
Pro zajištění automatické aktualizace dat v Elasticsearch existuje speciální plánovaná úloha, která zajišťuje inkrementální aktualizace dat v Elasticsearch. Tato plánovaná úloha funguje na principu tzv. časových razítek (polí Timestamp), podle nichž vybírá záznamy změněné od poslední aktualizace a pouze tyto změněné záznamy exportuje z K2.
Plánovaná úloha je k dispozici v nabídce akcí - Web a e-shop / Elasticsearch: aktualizace dat pro e-shop/web.
Jediným parametrem plánované úlohy je výběr e-shopu, jehož data má tato plánovaná úloha aktualizovat.

Obr. Zástupce "Elasticsearch: aktualizace dat pro e-shop/web"
Nastavení K2 e-shopu pro použití Elasticsearch
Pro použití Elasticsearch je nutné nakonfigurovat i na straně K2 E-shopu umístěném na webovém serveru. Samostatná konfigurace je nutná z důvodu doporučeného umístění webu/e-shopu v DMZ, kdy je pravděpodobné, že bude Elasticsearch k dispozici pod jiným názvem/IP adresou než z vnitřního doménového prostředí. V konfiguračním souboru config.php je nutno doplnit tyto řádky:
$CONFIG['elasticEnabled'] = true;
$CONFIG['elasticHosts'] = [
[
'host' => 'k2providerweb',
'port' => 9200,
'scheme' => 'http'
]
];
Výsledky hledání a našeptávač na webu
Vzhled našeptávače a výsledků hledání je při použití Smart Search na webu odlišný než v případě klasického vyhledávání.
Do výsledků jsou dle nastavení v K2 zahnuty kromě produktů i kategorie, značky produktů, blogové příspěvky nebo parametry kategorie (např. horská, dětská, atd..)
V našeptávači je vždy zvýrazněn shodující se text.

Obr. Našeptávač na webu
Na stránce s výsledky vyhledávání jsou v horní části nejprve uvedeny nalezené značky, následně kategorie a pak teprve konkrétní produkty. Což umožní následné dofiltrování. Nabízí možnost řazení produktů podle vychozí, kódu vzest a sest., názvu vzest. a sest., ceny vzest. a sest. a doporučené.

Obr. Výsledky hledání
V případě, že je na hledaný výraz nalezeno velké množství produktů, je uživateli zobrazeno upozornění s přibližným počtem a zobrazeno pouze prvních 500 produktů.
Vyhledávání bez dotazu
Pokud je nastaveno Vyhledávání bez dotazu, viz kapitola Záložka Nastavení vyhledávání, začne našeptávač nabízet návrhy ještě před tím, než uživatel zadá jakýkoliv text do vyhledávacího pole. Tato funkce zvyšuje přehlednost a usnadňuje orientaci uživatelům e-shopu již při prvním kliknutí do vyhledávacího pole.
Našeptávač může uživateli nabídnout:
- produkty s vybraným štítkem,
- klíčová slova,
- kategorie,
- značky.

Obr.: Smartsearch našeptávač - Hledání bez dotazu
Návrhy frází
Pokud je nastaveno Používat návrhy frází, viz kapitola Nastavení e-shopu v systému K2, pak našeptávač nevyhledává pouze od začátku řetězce, ale pracuje s celým názvem nebo frází, případně rozkládá dotaz na jednotlivá slova.

Obr.: Smartsearch našeptávač - Návrhy frází
Vyhodnocení funkčnosti vyhledávání
Po nasazení Elasticserach je vhodné po čase vyhodnotit, jak dobře pro konkrétní data konkrétního e-shopu fungují použité analyzátory a použité definice hledacích dotazů. Za účelem vyhodnocení hledaných slov a výrazů je vhodné na webu nasadit Google Analytics. K2 e-shop následně do Google Analytics bude odesílat události pro každé hledání i zobrazení našeptávače. Kromě seznamu nejčastěji hledaných výrazů na webu získáme také seznam výrazů, pro které se nezobrazily žádné výsledky. Pokud se jedná o opakovaný výskyt takových slov, je nutné řešit, proč na tyto výrazy nedostávají uživatelé žádné výsledky. Buď je potřeba hledané fráze dostat do názvů a popisů kategorií a produktů nebo provést optimalizaci nastavení Smart Search.
Informace o hledaných výrazech jsou v Google Analytics k dispozici v sekci Chování/Události. Jedná se o události kategorie search – plné výsledky hledání a searchAutocomplete – výsledky zobrazení našeptávače.
Každá tato kategorie se dále člení:
- Akce – nabývá 2 možných hodnot:
- Results (byl vrácen nějaký výsledek) a
- ZeroResults (na hledaný výraz nebyla zobrazena žádná položka výsledků
- Štítek – obsahuje uživatelem zadaný hledaný výraz
Kromě sledování událostí je také doporučeno nakonfigurovat standardní analýzu vyhledávání v rámci Google Analytics (sekce Chování/Vyhledávání na webu). Tato sekce ale zobrazuje pouze výsledky plného vyhledávání, nezohledňuje průchod přes našeptávač. Pro nastavení plnění dat do této sekce je nutné v konfiguraci webu na stránkách Google Analytics v části Nastavení výběru dat zapnout volbu Sledování vyhledávání webu a doplnit Parametr v URL na hodnotu search.
Umělá inteligence
Doporučování hodnot polí
Hardwarové a softwarové požadavky
Požadavky se vztahují na server, na kterém běží AI služba. K2 klient pouze komunikuje se službou prostřednictvím sítě.
Software
- Operační systém: Windows nebo Linux. AI služba je dodávána jako kontejner Docker.
- Přístup k databázi: AI služba musí mít síťový přístup k Microsoft SQL Serveru s databází K2. Pro komunikaci je vyžadován Microsoft ODBC Driver 18 for SQL Server, který je součástí dodávaného Docker kontejneru.
- Síťová komunikace: Mezi K2 a AI službou musí být zajištěna síťová komunikace prostřednictvím protokolu HTTPS (výchozí port 44301). Server s AI službou musí mít přístup k aplikačnímu serveru K2 nebo k počítači, na kterém běží desktopová aplikace K2.
Hardware
Procesor (CPU)
Řešení nevyžaduje grafickou kartu a plně podporuje běh na běžných serverových procesorech.
Doporučená konfigurace:
Objem nových dokladů za rok |
Doporučený procesor |
Jednotky tisíc |
4 vlákna CPU |
Desítky až stovky tisíc |
8 vláken CPU |
Stovky tisíc až jednotky milionů |
10 - 32 vláken CPU |
Grafická karta (GPU)
Volitelná.
Pokud je k dispozici grafická karta NVIDIA s podporou CUDA, AI služba ji automaticky využije ke zrychlení trénování modelů. Pro běžné objemy dat není GPU nutná.
Operační paměť (RAM)
Nejvyšší nároky na paměť vznikají během trénování modelu.
Doporučujeme alespoň 16 GB volné paměti RAM.
Diskový prostor
Modely a jejich metadata vyžadují řádově desítky až stovky MB. Je však potřeba počítat také s prostorem pro:
- exportovaná trénovací data (CSV),
- historii trénování,
- Docker prostředí.
Doporučujeme alespoň 50 GB volného místa na disku.
Doporučený postup nasazení a údržby
1. Příprava
Ověřte, že AI služba běží, je dostupná a má přístup ke K2 databázi. Ve formuláři zapněte volbu "Přebírat připojení k API podle konfigurace K2", případně adresu služby a databázi vyplňte ručně.
2. Kontrola dat (volitelné)
Spusťte Extrakci dat a zkontrolujte vygenerovaný soubor CSV. Ověřte, že obsahuje dostatek historických dokladů a že exportovaná data odpovídají očekávání.
3. První trénování modelu
Spusťte Trénování nového modelu (kompletní) s výchozím nastavením. Průběh trénování můžete sledovat v přehledu Aktuální běžící trénování.
4. Vyhodnocení kvality modelu
V přehledu Historie trénování otevřete detail dokončeného trénování a zkontrolujte dosažené metriky (např. Hit@1, Hit@5, ECE). Podle výsledků posuďte, zda model dosahuje požadované úspěšnosti.
5. Zapnutí AI doporučování
Zapněte volbu "Povolit doporučování hodnot polí pomocí AI" a podle potřeby nastavte Počet doporučených záznamů.
6. Pravidelná údržba
Doporučujeme naplánovat inkrementální přetrénování, například jednou týdně v nočních hodinách, aby model průběžně využíval nově vzniklá data.
7. Kompletní přetrénování
Po významných změnách dat nebo konfigurace doporučujeme znovu spustit kompletní trénování modelu.
Řešení problémů
Problém |
Možná příčina / řešení |
Řešení nenabízí žádné návrhy |
Zkontrolujte, zda je zapnuta volba "Povolit doporučování hodnot polí pomocí AI", zda je AI služba dostupná a zda je natrénovaný alespoň jeden model. |
Trénování končí stavem Selhalo |
Podrobnosti naleznete ve zprávě v Historii trénování. Nejčastější příčinou je nedostupná databáze, nesprávné přihlašovací údaje nebo chyba připojení. |
„Od posledního trénování nejsou nová data" |
Inkrementální přetrénování nenašlo žádná nová data k doplnění. Nejedná se o chybu. |
Nelze spustit další trénování (konflikt) |
Stejný typ trénování již probíhá. Vyčkejte na jeho dokončení nebo zkontrolujte přehled Aktuální běžící trénování. Po restartu služby se případné nedokončené běhy automaticky odstraní. |
Nový model se nenasadil |
Nově natrénovaný model nedosáhl lepších výsledků než aktuální produkční model. Z důvodu zachování kvality zůstává nasazen původní model a zobrazí se zpráva Produkční model nezměněn. |
Vysoká úspěšnost u Kódů 1–6 (100 %) |
Jedná se o očekávané chování. Pole Kód 1–6 obvykle obsahují menší počet možných hodnot, a proto model dosahuje velmi vysoké přesnosti. |
„Přesnost (vzácné třídy)" = 0 a počet vzorků 0 |
Ve vstupních datech se nevyskytují vzácné hodnoty, proto nelze tuto metriku vyhodnotit. Nejedná se o chybu a metriku lze v tomto případě ignorovat. |
Slovníček pojmů
- Model - natrénovaný model strojového učení, který na základě kontextu předpovídá hodnoty cílových polí.
- Trénování - proces učení modelu z historických dat.
- Kompletní trénování - vytvoření nového modelu od začátku na základě všech dostupných dat.
- Inkrementální přetrénování - aktualizace existujícího modelu o nově přidaná data.
- Kontextové pole - pole, jehož hodnota slouží jako vstup pro predikci modelu (např. kniha nebo typ dokladu).
- Cílové pole - pole, jehož hodnotu model předpovídá (např. dodavatel, odběratel nebo středisko).
- Predikce (doporučení) - odhad nejpravděpodobnějších hodnot cílového pole, které jsou nabídnuty uživateli..
- Našeptávání - zobrazení seznamu doporučených hodnot. Výběr i vyplnění hodnoty provádí uživatel..
- Validace - ověření kvality modelu na datech, která nebyla použita při jeho trénování.
- Hit@K - metrika udávající, jak často se správná hodnota nachází mezi prvních K doporučeními.
- MRR (Mean Reciprocal Rank) – metrika hodnotící, na jaké pozici v seznamu doporučení se nachází správná hodnota.
- NDCG (Normalized Discounted Cumulative Gain) – metrika hodnotící kvalitu pořadí doporučených hodnot s větším důrazem na správné výsledky umístěné na předních pozicích.
- ECE (Expected Calibration Error) – metrika vyjadřující, jak dobře odpovídá jistota modelu skutečné úspěšnosti jeho predikcí.
- Perplexita - metrika vyjadřující míru nejistoty modelu při predikci. Čím nižší hodnota, tím jistější jsou jeho předpovědi.
- Epocha - jeden průchod modelu všemi trénovacími daty.
- Hyperparametry - nastavení, která ovlivňují způsob trénování modelu.
- Architektura modelu - vnitřní struktura modelu a způsob zpracování dat.
- Nasazení modelu (promování modelu) - proces, při kterém je nově natrénovaný model označen jako produkční a začne se používat pro doporučování hodnot.
Validace a validační metriky
Po dokončení trénování se kvalita modelu ověřuje na validační sadě – části historických dat, která nebyla použita při učení. Model na těchto datech předpovídá hodnoty a výsledky se porovnají se skutečností.
Souhrnné údaje:
Údaj |
Význam |
Interpretace |
Trénovací ztráta (Train Loss) |
Chyba modelu na trénovacích datech. |
Nižší = lepší. |
Trénovací perplexita |
Míra nejistoty modelu na trénovacích datech. Hodnota blízko 1,0 = model je velmi rozhodný. |
Čím blíže hodnotě 1, tím lépe. |
Celková doba trénování (ms) |
Doba potřebná k natrénování modelu. |
Informativní údaj. |
Validační ztráta (Validation Loss) |
Chyba modelu na validačních datech. |
Nižší = lepší. Obvykle je důležitější než trénovací ztráta. |
Validační perplexita |
Míra nejistoty modelu na validačních datech. |
Čím blíže hodnotě 1, tím lépe. |
Celková doba validace (ms) |
Doba potřebná k vyhodnocení modelu. |
Informativní údaj. |
Perplexita vyjadřuje míru nejistoty modelu při predikci. Hodnota 1 znamená, že je model při rozhodování velmi jistý (model si je vždy jistý jednou hodnotou). Čím je hodnota vyšší, tím je jeho nejistota větší (model váhá mezi "n" hodnotami).
Metriky úspěšnosti (Hit / MRR / NDCG)
Metriky se vyhodnocují pro každé cílové pole zvlášť a pro několik hodnot K (1, 3, 5, 10, 20 a 50). Hodnota Top-K označuje prvních K doporučených výsledků.
Metrika |
Význam |
Interpretace |
Hit@K |
Udává, jak často se správná hodnota nachází mezi prvními K doporučeními. |
Vyšší hodnota je lepší. Příklad:
|
MRR |
Hodnotí pořadí správné hodnoty v seznamu doporučení. |
Hodnota blíže 1 = správná hodnota bývá na prvních místech |
NDCG |
Hodnotí kvalitu pořadí doporučených hodnot. |
Hodnota blíže 1 = znamená lepší výsledky. |
V praxi jsou nejdůležitější metriky Hit@1 a Hit@5:
- Hit@1 udává, jak často je správná hodnota první v nabídce.
- Hit@5 udává, jak často se správná hodnota nachází mezi prvními pěti návrhy.
U polí s malým počtem možných hodnot (např. Kód 1–6) je běžné dosahovat úspěšnosti 100 %.
Kalibrace a úspěšnost na častých a vzácných hodnotách
Metrika |
Význam |
Interpretace |
ECE (Expected Calibration Error) |
Vyjadřuje, jak dobře odpovídá jistota modelu skutečné úspěšnosti jeho predikcí. |
Nižší = lepší. |
Přesnost (časté třídy) |
Úspěšnost predikce často se vyskytujících hodnot. |
Vyšší hodnota je lepší. |
Počet vzorků (časté třídy) |
Počet validačních záznamů použitých pro výpočet metriky. |
Informativní údaj. |
Přesnost (vzácné třídy) |
Úspěšnost predikce málo se vyskytujících hodnot. |
Vyšší hodnota je lepší. |
Počet vzorků (vzácné třídy) |
Počet validačních záznamů použitých pro výpočet metriky. |
Pokud je hodnota 0, ve validačních datech se nevyskytovaly žádné vzácné hodnoty. Nejedná se o chybu. |
Rozdělení na časté a vzácné hodnoty pomáhá posoudit, zda model dokáže správně doporučovat nejen nejčastější hodnoty, ale i méně běžné případy. Při hodnocení výsledků je vhodné vždy zohlednit také počet vzorků, ze kterých byla metrika vypočtena.
Parametry
Nastavení parametrů je určeno především pro pokročilé uživatele. Výchozí hodnoty jsou ověřené a pro většinu nasazení není potřeba je měnit.
Parametry modelu (architektura)
Tato nastavení určují architekturu modelu a lze je upravit pouze při kompletním trénování. Při inkrementálním přetrénování se architektura přebírá z aktuálního produkčního modelu.
Popis parametrů:
Parametr |
Výchozí |
Popis |
Použít DCN (Deep Cross Network) |
Zapnuto |
Zapne část modelu, která se zaměřuje na kombinace hodnot vstupních polí (např. kniha × typ dokladu). |
Použít Transformer |
Vypnuto |
Zapne Transformer jako doplňkovou část modelu. Pro většinu scénářů není jeho použití nutné. |
Počet DCN vrstev |
3 |
Určuje počet vrstev DCN. Vyšší hodnota umožňuje modelu zachytit složitější vztahy mezi poli, ale prodlužuje dobu trénování a může zvýšit riziko přeučení. |
Počet Transformer vrstev |
1 |
Určuje hloubku Transformeru, pokud je použit. |
Počet Transformer hlav |
4 |
Určuje počet paralelních mechanismů pozornosti (attention heads) v Transformeru. |
Multiplikátor embedding dimenze |
4,0 |
Určuje velikost vektorové reprezentace hodnot polí. Vyšší hodnota zvyšuje kapacitu modelu i jeho paměťové nároky. |
Minimální embedding dimenze |
4 |
Určuje minimální velikost embeddingu pro jednotlivá pole. |
Maximální embedding dimenze |
256 |
Určuje maximální velikost embeddingu pro jednotlivá pole. |
Skrytá dimenze hlavy |
1024 |
Určuje velikost rozhodovací části modelu. Vyšší hodnota zvyšuje kapacitu modelu, ale prodlužuje trénování a zvyšuje nároky na paměť. |
Shared dropout (Sdílený propad) |
0,1 |
Určuje míru dropoutu ve sdílené části modelu. Vyšší hodnota pomáhá omezit přeučení (0–1). |
Head dropout (Propad v hlavě) |
0,3 |
Určuje míru dropoutu v rozhodovací části modelu. Vyšší hodnota pomáhá omezit přeučení. |
0,3
Parametry trénování (hyperparametry)
Tato nastavení ovlivňují průběh trénování modelu, nikoli jeho architekturu.
Základní
Parametr |
Výchozí |
Popis |
Velikost dávky (Batch Size) |
4096 |
Určuje počet dokladů zpracovaných v jednom kroku trénování. Vyšší hodnota zvyšuje nároky na operační paměť. |
Maximální rychlost učení (OneCycleLR) |
0,001 |
Určuje maximální hodnotu rychlosti učení při kompletním trénování. |
Pokles vah (Weight Decay) |
0,02 |
Určuje míru regularizace, která pomáhá omezit přeučení modelu. |
Počet epoch |
50 |
Určuje, kolikrát model projde všechna trénovací data (kompletní trénování). |
Náhodný seed |
42 |
Zajišťuje opakovatelnost výsledků při stejném nastavení trénování. |
Výběr trénovacích dat
Parametr |
Výchozí |
Popis |
|
Časový váhový exponent |
2,5 |
Určuje, jakou váhu mají novější data při trénování. Vyšší hodnota více zvýhodňuje novější doklady. |
|
Okno trénovacích let |
10 |
Určuje počet posledních hospodářských let zahrnutých do trénování. |
|
Poměr trénovacích/validačních dat |
0,9 |
Určuje poměr dat použitých pro trénování a validaci (0,9 = 90 % pro trénování, 10 % pro validaci). |
|
Maskování a dropout
Parametr |
Výchozí |
Popis |
|
Pravděpodobnost maskování |
0,3 |
Určuje, jak často jsou při trénování dočasně skryta cílová pole, aby se model naučil jejich hodnoty předpovídat. |
|
Propad kontextu (context dropout) |
0,2 |
Určuje, jak často jsou při trénování dočasně vynechána kontextová pole, aby model nebyl závislý pouze na jednom vstupu. |
|
Stabilita trénování
Parametr |
Výchozí |
Popis |
Norma ořezu gradientu |
1,0 |
Omezuje velikost gradientů a přispívá ke stabilitě trénování. |
Gamma (focal loss) |
2,0 |
Určuje, jak silně se model zaměřuje na obtížnější případy. |
Alfa (focal loss) |
1,0 |
Určuje váhu použitou při výpočtu funkce Focal Loss. |
Začátek nárůstu (OneCycle pct_start) |
0,3 |
Určuje, v jaké části trénování dosáhne rychlost učení svého maxima. |
Inkrementální přetrénování
Parametr |
Výchozí |
Popis |
Inkrementální rychlost učení |
0,0001 |
Určuje rychlost učení při inkrementálním přetrénování. Nižší hodnota pomáhá zachovat znalosti již natrénovaného modelu. |
Inkrementální počet epoch |
100 |
Určuje maximální počet epoch při inkrementálním přetrénování. Trénování může skončit dříve díky mechanismu Early Stopping. |
Trpělivost early stopping |
5 |
Určuje počet epoch bez zlepšení, po kterých se trénování automaticky ukončí. |
Množství historických dat pro přetrénování |
0,5 |
Určuje podíl historických dat přidaných k novým datům, aby si model zachoval dříve získané znalosti. |
Plateau scheduler (jemné doladění rychlosti)
Parametr |
Výchozí |
Popis |
Faktor Plateau Scheduleru |
0,5 |
Určuje, o kolik se sníží rychlost učení, pokud se model přestane zlepšovat. |
Trpělivost Plateau Scheduleru |
3 |
Určuje počet epoch bez zlepšení, po kterých dojde ke snížení rychlosti učení. |
Minimální rychlost učení Plateau Scheduleru |
0,000001 |
Určuje nejnižší hodnotu rychlosti učení, pod kterou již scheduler neklesne. |
Monitoring K2 v IS K2
Pro přístup do Monitoringu K2 musí mít uživatel nastavené přihlašovací údaje. O jejich přidělení je nutné požádat servisní tým nebo obchodního zástupce. Zároveň musí být uživatel propojen s kontaktní osobou. Bez tohoto propojení není možné Monitoring využívat.

Obr.: Chybová hláška při přihlášení
Po nastavení kontaktní osoby se uživatel přepne do záložky Web, e-shop, kde nastaví přihlašovací údaje do Monitoringu K2. Přihlášení se vždy nastavuje na kontaktní osobě. V poli Web musí být zvolená možnost Monitoring.

Obr.: Kniha Kontaktní osoby - záložka Web, e-shop
Pokud v číselníku Přihlášení k webu, e-shopu záznam Monitoring neexistuje, je nutné jej vytvořit. Ve formuláři pro nový záznam se vyplní pouze pole Zkratka a Popis. Následně se záznam uloží.

Obr.: Založení položky Monitoring v číselníku
Notifikace z monitoringu
Z Monitoringu K2 lze odesílat notifikace na základě zpracovávaných dat. Notifikace jsou zasílány formou e-mailů, které si uživatel nastavuje přímo v prostředí IS K2. Nastavení je dostupné ve stromovém menu Správce - Systém - Nastavení monitoringu K2.
Při prvním spuštění Monitoringu K2 se uživateli zobrazí registrační formulář. Pro jeho používání je nutné se nejprve registrovat. Během registrace zároveň proběhne kontrola, zda má daná společnost přístup do Monitoringu K2.

Obr.: Registrace do systému notifikací
Jméno a Příjmení je předvyplněno podle aktuálně přihlášeného uživatele (kontaktní osoby). Pokud není vyplněn e-mail, doplňte jej a klikněte na tlačítko Registrovat. Po úspěšné registraci se zobrazí tabulka pro zadávání a správu notifikací.

Obr.: Seznam notifikací
Nový záznam vložíme kliknutím na tlačítko Nový.

Obr.: Založení nové notifikace
Název upozornění |
Slouží k pojmenování notifikace. Tento název se zároveň používá v předmětu e-mailu. |
Interval |
Určuje, jak často probíhá kontrola dané události v Monitoringu K2. Hodnota je uvedena v sekundách. |
Druh kontroly |
Pro každou notifikaci je nutné vybrat druh kontroly. Jednotlivé druhy mohou vyžadovat specifické vstupní údaje. |
Aktivní |
Pravidlo lze aktivovat / deaktivovat. |
Zpráva upozornění |
Text, který je k dané notifikaci zaslán e-mailem. Do textu lze vkládat makra, která jsou dynamicky doplněna pro dané pravidlo a také symboly pro formátování textu. |
Aktuálně jsou připraveny následující druhy kontrol:
Druh kontroly |
Popis |
Vstupní parametry |
Kontrola funkčnosti K2 e-shopu |
Notifikace je odeslána, když zmíněný K2 e-shop není dostupný. |
Url - webová adresa K2-eshopu, která se bude kontrolovat |
Kontrola funkčnosti Elasticsearch na K2 e-shopu |
Notifikace je odeslána, když ES pro zmíněný K2 e-shop není dostupný. |
Url - webová adresa K2-eshopu, která se bude kontrolovat |
Kontrola funkčnosti Redis na K2 e-shopu |
Notifikace je odeslána, když Redis pro zmíněný K2 e-shop není dostupný. |
Url - webová adresa K2-eshopu, která se bude kontrolovat |
Chyba v K2 obsahuje text |
Notifikace je odeslána, když chyba obsahuje uvedený text. |
Text v chybovém hlášení - klíčové slovo(-a), která jsou v chybovém hlášení |
Skript nebo sestava běžela déle než určenou dobu |
Notifikace je odeslána, když je uvedený objekt spuštěn delší dobu než je uvedeno. |
Název skriptu nebo sestavy - název Délka trvání - délka v sekundách |
Byl spuštěn modul |
Notifikace je odeslána, když je uvedený modul spuštěn. |
Identifikátor (classname) modulu - identifikace modulu (např. TInvoiceOutDM) |
Byl spuštěn skript nebo sestava |
Notifikace je odeslána, když je uvedený objekt spuštěn. |
Název skriptu nebo sestavy - název |
Seznam je uveden v okně, které lze v notifikaci vyvolat pomocí tlačítka zvýrazněného na obrázku.

Obr.: Definice notifikace - nápověda pro text notifikací
Seznam možných maker a formátovačů je uveden na obrázku.

Obr.: Seznam maker a formátovačů
Notifikace je možné editovat, aktivovat / deaktivovat a mazat. Po zmíněných úpravách je jejich uložení provedeno po stisku tlačítka “Uložit“ nebo stisknutím tlačítka “Ok“.
Změny notifikací začnou být aplikovány nejpozději do 1h od jejich uložení.
Využití vlastních skriptů a tiskových sestav
Modul slouží k přehledu o používání vlastních skriptů a sestav v IS K2. Umožňuje uživatelům sledovat, jak často byly jednotlivé skripty a sestavy během vybraného období spuštěny. Díky tomu lze snadno zjistit, které jsou využívány nejčastěji a které naopak využívány nejsou. Modul je dostupný pod názvem Využití skriptů a sestav, číslo 1966, a data jsou získávána z Monitoringu K2.
Pro přístup do modulu je nutné, aby měl uživatel zřízen a nastaven účet do Monitoringu K2 v IS K2. Postup pro nastavení přístupu je popsán v kapitole Přístup do Monitoringu K2 v IS K2.
Po přihlášení se otevře kniha se seznamem všech skriptů a sestav. Pod ribbonem je k dispozici kalendář ve kterém si uživatel zvolí období, za které chce sledovat jejich spouštění. Skripty a sestavy, které nebyly za toto období spuštěny, jsou označeny červeným podbarvením. Pomocí dostupných funkcí lze skripty a sestavy nejen zobrazit, ale také otevřít k úpravě. Stisknutím klávesy Enter nebo dvojklikem na vybraný skript dojde k otevření modulu Skripty a sestavy (pokud je objekt v tomto modulu dostupný). Grafy v dolní části okna poskytují přehled o typu úpravy a úspěšnosti jejich kompilace.

Obr.: Otevřená kniha Využití skriptů a sestav
Popis polí tabulky Vužití skriptů a sestav:
Přeskok na záznam |
Otevře vybraný skript nebo sestavu v seznamu. |
Otevřít v editoru |
Otevře vybraný skript nebo sestavu v editoru. Lze použít klávesovou zkratku Alt+F5. |
Načíst zařazení v F9 |
Načte seznam skriptů a sestav z modulu a zobrazí jejich zařazení v okně F9 Datových modulů. Zároveň ukazuje, zda je skript registrovaný. |
Test kompilace |
Ověření přeložitelnosti skriptů - všech, nebo vybraných. |
Cesta |
Místo uložení skriptu nebo sestavy, |
Typ |
Typ objektu - skript nebo sestava. |
Počet |
Počet spuštění za vybrané období. |
Hodnoty stavu kompilace:
Úspěch |
Kompilace proběhla bez chyb. |
Chyba |
Ve skriptu nebo sestavě se vyskytla chyba. |
Selhání |
Skript nebo sestava nebyla nalezena. |
Varování |
Upozornění na problém ve skriptu nebo sestavě. |
Neověřeno |
Skript nebo sestava neprošla kontrolou. |
Výsledek kompilace se zobrazí i ve sloupci K.
Po zvolení možnosti Otevřít v editoru se vybraný skript otevře a uživatel si může zobrazit jeho strukturu, provádět úpravy a změny ukládat.

Obr.: Skript otevřený v editoru
U jednotlivých sestav a skriptů lze zjistit, ve kterých datových modulech jsou zařazeny, zda se jedná o registrovaný skript nebo jestli jsou používány v plánovači úloh. Vše je vidět v seznamu v pravé horní části knihy v nabídce F9 Datových modulů.

Obr.: Zařazení úlohy do plánovače
Nepoužívané skripty a sestavy – tisková sestava
Soubor: UnusedScriptsAndReports.AM
K2 odesílá informace o spuštěných sestavách a skriptech do Monitoringu K2. Pomocí této sestavy může správce vygenerovat statistiku o zákaznických (speciálních) skriptech a sestavách, které nebyly ve zvoleném období spuštěny. Před spuštěním sestavy je nutné zadat období, za které má být statistika vytvořena.

Obr.: Parametry pro spuštění
Pro spuštění sestavy musí mít uživatel nastavené přihlašovací údaje do Monitoringu K2. Pro přístup do modulu je zároveň nutné, aby byl uživatel propojen s kontaktní osobou. Postup nastavení je popsán v kapitole Přístup do Monitoringu K2 v IS K2.

Obr.: Chybové hlášení - uživatel bez přihlašovacích údajů
Po spuštění sestavy se zobrazí nepoužívané skripty a sestavy za vybrané období. Výstup může sloužit k identifikaci nevyužívaných objektů a jejich následné optimalizaci nebo odstranění.

Obr.: Seznam nepoužívaných skriptů a sestav