Následující bylo syndikováno z Střední pro Otcovské fórum, komunita rodičů a influencerů s náhledy na práci, rodinu a život. Pokud se chcete připojit k fóru, napište nám [email protected].
Před měsícem jsem to zkusil A/B testování abychom viděli, jak různé „léčby“ nebo vstupní parametry mohou vést k delšímu spánku našich dvojčat – a samozřejmě prostřednictvím proxy nás. Díky tomu jsem zjistil, že spánkové vzorce byly poměrně nevyzpytatelné a nenašel jsem mnoho, co by silně korelovalo s vyšším spánkem. Jak šel čas, začali více přirozeně sami od sebe. Nyní, když dosáhli 4 měsíců, zahájili zjevně běžnou, ale zřídka diskutovanou fázi regrese spánku. Znovu jsem se přistihl, že zoufale toužím po dalším spánku. Hledal jsem, jak bylo zdůrazněno v předchozím příspěvku, něco najít, bez ohledu na to, jak zoufale toužím po dalším spánku? Ano. Ano, byl jsem. Proto jsem se obrátil na jinou počítačovou techniku, strojové učení.
flickr / Matthew H.
Strojové učení je obor v informatice, který poskytuje metody pro „výuku“ počítačů nebo programů, aniž by jim dával diskrétní instrukce. Při normálním programování bych dal počítači posloupnost příkazů k provedení a přidal bych k tomu logiku učinit rozhodnutí o tom, co dělat, na základě vstupu, ale program se nikdy nemohl odchýlit od těchto dobře definovaných kolejnice. I když tento popis zní blíže k
Díky účetnímu zázemí mé ženy a našim osobnostem typu A máme u chlapců podrobné záznamy o krmení a spánku. Pamatujete si tuto tabulku?
S využitím těchto dat jsem se pustil do hledání optimální kombinace vstupních parametrů, v tomto případě jsem se podíval na celkovou spotřebu potravin v den, čas posledního krmení a množství posledního krmení, aby se určilo, co by mělo za následek nejdelší noční spánek pro chlapci. A nejlepší ze všeho bylo, že jsem mohl nechat počítač dělat těžkou práci. Navíc jsme měli dvakrát tolik údajů o těchto vzorcích, protože samozřejmě nemáme jednoho, ale 2 chlapce.
flickr / Matthew Ephraim
V programovacích jazycích je k dispozici několik skvělých knihoven pro strojové učení. I když k práci primárně používám Javu a Javascript, vybral jsem si knihovnu Python sklearn, as mají obeznámeni s Pythonem a toto se zdálo být perfektní aplikací pro flexibilní skriptování Jazyk. Existuje mnoho skvělých tutoriálů pro tuto knihovnu a také dobrá dokumentace.
Můj kód najdete na github v případě zájmu.
Exportem dat, která jsme shromáždili z tabulky, jsem extrahoval datové body za poslední měsíc. Vzhledem k rychlému růstu a vývojovým změnám, kterými kojenci procházejí, jsem cítil, že údaje za jeden měsíc – krát 2 kojenci – jsou dobrým poměrem aktuálnosti a dostatkem údajů k předpovědi.
Dát To Dohromady A Kódovat To
Získal jsem také nějaké statistiky, které byly zajímavé, včetně toho, že jsme kluky krmili v průměru 27,5 unce za kus den, ukládali je do postele nejčastěji v 7:25, nakrmili je 5,22 unce před spaním a spali 9 hodin průměrný. Ukázalo se také, že chlapci 75 procent času spali přes 10 hodin. Né tak špatné. Ale věděl jsem, že s trochou práce bychom to mohli zlepšit.
Pomocí těchto dat jsem byl schopen vykreslit každý parametr proti době spánku.
Můžete vidět, že již neexistuje silná korelace, alespoň lineární mezi většinou z nich. Nejbližší je poněkud lineární – se spoustou odlehlých hodnot – vztah mezi celkovým jídlem a hodinami spánku. Zdá se, že více jídla má za následek méně spánku.
flickr / hegbar
Existuje mnoho různých typů algoritmů strojového učení. Ty se z velké části dělí na lineární a nelineární typy. Vzal jsem data a prošel je 6 poměrně široce používanými algoritmy, abych zjistil, jak přesný každý může být. Zde jsou výsledky.
Nebo v piktografičtější podobě
Zde můžete vidět, že algo Support Vector Machine jasně fungovalo nejlépe proti datům, ačkoli rozsah je velmi široký a průměr není o mnoho lepší než ostatní. Žádný není ani na 50 procentech, což je na předpovídání dost špatné. To je zcela způsobeno pseudonáhodnou povahou dat. I s takovými výsledky jsem se rozhodl pokročit kupředu a doufal jsem, že se mi podaří získat vůbec nějaký náhled.
Pomocí SVM jsem trénoval algoritmus na vstupních datech. Pomocí toho jsem nyní mohl předvídat, kolik spánku budeme mít na základě množství jídla přijatého za den, kdy jsme je uložili do postele a kolik jsme je nakrmili při posledním krmení. Například dát jim 28 uncí, uložit je do postele v 7 a dát 6 uncí při posledním krmení by mělo za následek dost špatných 8 hodin spánku.
Závěry
S algoritmem nyní natrénovaným jsem mohl s jistou jistotou předpovědět, kolik spánku budeme mít. Ještě důležitější je, že jsem se mohl podívat na tyto trendové čáry a zjistit, jaký typ chování vedl k většímu spánku ve snaze optimalizovat. V kontraintuitivním smyslu, jít spát dříve, s menším množstvím jídla a po celý den ve skutečnosti zvýšilo spánek. Je to pravděpodobně způsobeno mnoha faktory, ale moje teorie je, že méně jídla znamená méně plynu, méně sevření žaludku při hladu, a proto klidnější spánek. Kolikrát jste se vykašlali a pak se bizarně probudili uprostřed noci hlady?
flickr / Dion Hinchcliffe
Bohužel, stejně jako u testování A/B se zdá, že žádný individuální vstup nemá silný přímý vliv na spánek. Myslím, že kdyby se to stalo, někdo by to už objevil a vydělal by miliony. Dohromady může strojové učení najít některé z těchto trendů a asociací mezi proměnnými, což vede k lepším, přesnějším výsledkům než A/B testování nebo pokus omyl, ale výsledky jsou stále daleko od skvělých. Z těchto údajů jsem mohl získat maximálně 41procentní míru přesnosti předpovědí. To znamená, že se častěji mýlí. Kvůli častým změnám ve vývoji a dokonce i rozdílům mezi chlapci je těžké aplikovat data napříč nimi. Opět platí, že by mohla pomoci větší velikost vzorku, ale v nejbližší době se nezaměřujeme na trojice.
Přesto jsou tyto výsledky lepší než nic a pomáhají demonstrovat příslib oblasti strojového učení a datové vědy. Já osobně dávám přednost rozhodování na základě dat před vnitřními pocity a tato data, i když jen potvrzují některé z mých odhadů, mi dávají lepší pocit z našeho rodičovského přístupu.
Tyler Lund je editorem Táta na útěku.