autoři:
(1) Sergey Kucheryavskiy, Katedra chemie a biologie, Univerzita Aalborg a odpovídající autor ([email protected]);
(2) Sergei Zhilin, CSort, LLC., Germana Titova st. 7, Barnaul, 656023, Rusko a přispívající autoři0 ([email protected]).
Poznámka editora: Toto je část 1 ze 4 studie podrobně popisující novou metodu pro rozšiřování numerických a smíšených datových sad. Zbytek si přečtěte níže.
V tomto článku navrhujeme novou metodu pro augmentaci numerických a smíšených datových sad. Metoda generuje další datové body využitím křížového validačního převzorkování a modelování latentních proměnných. Je zvláště efektivní pro datové sady se středním až vysokým stupněm kolinearity, protože tuto vlastnost přímo využívá pro generování. Metoda je jednoduchá, rychlá a má velmi málo parametrů, které, jak je uvedeno v článku, nevyžadují specifické ladění. Byl testován na několika skutečných souborech dat; zde uvádíme podrobné výsledky pro dva případy, predikci bílkovin v mletém mase na základě blízkých infračervených spekter (plně numerická data s vysokým stupněm kolinearity) a diskriminaci pacientů odeslaných na koronarografii (smíšená data, s numerickými i kategorickými proměnnými, a střední kolinearita). V obou případech byly pro vývoj regresních a diskriminačních modelů použity umělé neuronové sítě. Výsledky ukazují jasné zlepšení výkonnosti modelů; tedy pro predikci proteinu masa, přizpůsobení modelu rozšířeným datům vedlo ke snížení střední kvadratické chyby vypočítané pro nezávislý testovací soubor 1,5 až 3krát.
Klíčová slova : augmentace dat, umělé neuronové sítě, křížová validace Procrustes, latentní proměnné, kolinearita
Moderní metody strojového učení, které se spoléhají na vysoce komplexní modely, jako jsou umělé neuronové sítě (ANN), vyžadují velké množství dat pro trénování a optimalizaci modelů. Nedostatečná trénovací data často vedou k problémům s přeplňováním, protože počet hyperparametrů modelu k vyladění je mnohem větší než počet stupňů volnosti v datové sadě.
Dalším častým problémem v tomto případě je nedostatečná reprodukovatelnost, protože postup trénování ANN není deterministický, vzhledem k náhodnému výběru parametrů počátečního modelu a stochastické povaze jejich optimalizace. V důsledku toho nikdy nevede k modelu se stejnými parametry a výkonem, protože různé tréninkové zkoušky mohou vést k různým modelům. Tato variabilita se zvětší, pokud je tréninková sada příliš malá.
Tento problém je zvláště naléhavý v případě přizpůsobení experimentálních dat, protože je často drahé a časově náročné provádět mnoho experimentálních zkoušek, takže je jednoduše nemožné shromáždit tisíce měření potřebných pro řádné školení a optimalizaci. Mohou existovat i další překážky, jako je papírování související s povoleními v lékařském výzkumu.
Jedním ze způsobů, jak překonat problém s nedostatečnými trénovacími daty, je uměle je rozšířit buď simulací nových datových bodů, nebo malými úpravami stávajících. Tato technika se často nazývá „rozšiřování dat“. Augmentace dat se ukázala jako zvláště účinná při analýze a klasifikaci obrazu, přičemž velké množství výzkumů uvádí jak všestranné metody augmentace [1] [2], [3], tak metody, které jsou zvláště účinné pro konkrétní případy [4] [5]. . Poměrně dobře propracované jsou také augmentační metody pro data časových řad [6].
Existuje však nedostatek účinných metod, které mohou poskytnout slušné rozšíření dat pro numerické datové sady se středním až vysokým stupněm kolinearity. Takové datové soubory jsou rozšířené v experimentálním výzkumu, včetně různých typů spektroskopických dat, výsledků sekvenování genomu (např. 16S RNA) a mnoha dalších. Mnoho tabulkových datových sad také vykazuje vnitřní struktury, kde jsou proměnné vzájemně korelovány. V současnosti dostupné metody pro augmentaci takových dat většinou spoléhají na přidávání různých forem šumu [7] ke stávajícím měřením, což není vždy dostatečné. Existují také slibné metody, které využívají variační autokodéry náhodným vzorkováním z jejich latentního variabilního prostoru [8], nebo metody založené na generativních adversariálních sítích [4]. Nevýhodou je, že oba přístupy vyžadují vybudování a vyladění specifického modelu neuronové sítě pro rozšiřování dat, a proto vyžadují důkladný a na zdroje náročný proces optimalizace a relativně velkou počáteční trénovací sadu.
V tomto článku navrhujeme jednoduchou, rychlou, všestrannou a přitom účinnou metodu pro rozšiřování numerických a smíšených kolineárních datových sad. Metoda je založena na přístupu, který byl původně vyvinut pro jiné účely, konkrétně pro generování validačních sad, a proto je známá jako křížová validace Procrustes [9] [10]. Jak je však ukázáno v tomto článku, účinně řeší problém augmentace dat, což vede k modelům s výrazně lepším výkonem predikce nebo klasifikace.
Naše metoda přímo využívá kolinearitu při generování. Přizpůsobuje trénovací data sadě latentních proměnných a poté využívá převzorkování křížové validace k měření odchylek v orientaci proměnných. Tato variace je pak zavedena do trénovací sady jako vzorkovací chyba, což má za následek novou sadu datových bodů.
Lze použít dva modely prokládání — rozklad singulární hodnoty (SVD) a rozklad parciálních nejmenších čtverců (PLS). Volba modelu přizpůsobení umožňuje uživateli upřednostnit část kovarianční struktury, která bude použita pro generování nových dat.
Oba modely přizpůsobení mají dva parametry — počet latentních proměnných a počet segmentů použitých pro křížové ověření převzorkování. Experimenty však ukazují, že parametry nevyžadují specifické ladění. Stejně dobře poslouží jakýkoli počet latentních proměnných, které jsou dostatečně velké na to, aby zachytily systematické variace hodnot trénovací sady. Stejně jako libovolný počet segmentů počínaje třemi.
Navržená metoda je všestranná a lze ji aplikovat jak na plně numerická data, tak na tabulková data, kde jedna nebo více proměnných jsou kvalitativní. Otevírá se tak další perspektiva, a to zesměšňování dat, které může být užitečné např. pro testování vysoce zatěžovaných softwarových systémů, i když tento aspekt zde neuvažujeme.
Článek popisuje teoretické základy metody a ilustruje její praktickou aplikaci a výkon na základě dvou datových sad různé povahy. Poskytuje komplexní podrobnosti o tom, jak lze metodu efektivně aplikovat na různé datové sady v reálných scénářích.
Metodu jsme implementovali v několika programovacích jazycích, včetně Pythonu, R, MATLABu a JavaScriptu, a všechny implementace jsou volně dostupné v úložišti GitHub (https://github.com/svkucheryavski/pcv). Navíc poskytujeme online verzi, kde je možné generovat nové datové body přímo v prohlížeči (https://mda.tools/pcv).
Tento dokument je dostupný na arxiv pod licencí CC BY 4.0 DEED.