Wykorzystanie nauki danych do poprawy snu moich bliźniaków u niemowląt

Poniższy został syndykowany z Średni dla Forum Ojcowskie, społeczność rodziców i influencerów, którzy mają spostrzeżenia na temat pracy, rodziny i życia. Jeśli chcesz dołączyć do Forum, napisz do nas na [email protected].

Miesiąc temu próbowałem Testy A/B aby zobaczyć, jak różne „leczenia” lub parametry wejściowe mogą skutkować dłuższym snem dla naszych bliźniąt – i oczywiście przez zastępstwo dla nas. Dzięki temu odkryłem, że wzorce snu były dość nieregularne i nie znalazłem zbyt wiele, które by silnie korelowały ze zwiększonym snem. W miarę upływu czasu zaczęli bardziej naturalnie sami. Jednak teraz, gdy osiągnęli 4 miesiące, rozpoczęli pozornie powszechną, ale rzadko omawianą fazę regresji snu. Po raz kolejny byłem zdesperowany, żeby się wyspać. Czy ja, jak skomentowano w poprzednim poście, „chciałem znaleźć coś, bez względu na to, jak bardzo desperacko potrzebuję więcej snu?” Tak. Tak byłem. Dlatego zwróciłem się do innej techniki informatycznej, uczenia maszynowego.

bliźniaki i ojciec

flickr / Mateusz H.

Uczenie maszynowe to dziedzina informatyki, która zapewnia metody „uczenia” komputerów lub programów bez podawania im dyskretnych instrukcji. W normalnym programowaniu dałbym komputerowi sekwencję poleceń do wykonania, wrzucając logikę do podejmować decyzje dotyczące tego, co robić na podstawie danych wejściowych, ale program nigdy nie mógłby wyjść z tych dobrze zdefiniowanych szyny. Chociaż ten opis brzmi bliżej do Terminator niż to faktycznie wygląda w praktyce, uczenie maszynowe pozwala wziąć zestaw danych „uczących się” i wykorzystać je jako podstawę do prognozowania. Chociaż staje się coraz bardziej popularny w branży technologicznej, jest głównie używany do patrzenia na zakupy zachowanie i rekomendacje, sztuczna inteligencja i być może, co najciekawsze, kategoryzowanie i identyfikowanie obrazów i sztuki — głównie przez Google. Nie mogłem znaleźć wielu przykładów zastosowania tego w rodzicielstwie.

Dzięki księgowości mojej żony i naszym osobowościom typu A, mamy szczegółowe zapisy dotyczące karmienia i snu chłopców. Pamiętasz ten arkusz kalkulacyjny?

Korzystając z tych danych, postanowiłem znaleźć optymalną kombinację parametrów wejściowych, w tym przypadku przyjrzałem się całkowitej żywności spożytej w dzień, godzina ostatniego karmienia i ilość ostatniego karmienia, aby określić, co spowoduje najdłuższy sen w nocy dla chłopcy. A co najważniejsze, mogłem pozwolić komputerowi wykonać ciężką pracę. Dodatkowo mieliśmy dwa razy więcej danych na temat tych wzorców, ponieważ oczywiście mamy nie jednego, ale dwóch chłopców.

JavaScript

flickr / Mateusz Efraim

Istnieje kilka świetnych bibliotek do uczenia maszynowego dostępnych w różnych językach programowania. Mimo że do pracy używam głównie Javy i Javascript, wybrałem bibliotekę Pythona sklearn, ponieważ I znać Pythona i wydawało się, że jest to idealna aplikacja do elastycznego pisania skryptów język. Istnieje wiele świetnych samouczków dotyczących tej biblioteki i dobrej dokumentacji.

Możesz znaleźć mój kod na github Jeśli zainteresowany.

Eksportując dane, które zebraliśmy z arkusza kalkulacyjnego, wyodrębniłem tylko punkty danych z ostatniego miesiąca. Z powodu szybkiego wzrostu i zmian rozwojowych, przez które przechodzą niemowlęta, czułem, że dane z jednego miesiąca – razy 2 niemowlęta – były dobrą równowagą między ostatnimi a wystarczającą ilością danych, aby dokonać prognozy.

Składanie i kodowanie

Dostałem też kilka interesujących statystyk, w tym to, że średnio karmiliśmy chłopców 27,5 uncji na dzień, kładł je spać najczęściej o 7:25, karmił je 15,22 uncji przed snem i spał 9 godzin w nocy przeciętny. Okazało się też, że chłopcy spali ponad 10 godzin przez 75% czasu. Nieźle. Ale wiedziałem, że przy odrobinie pracy możemy to poprawić.

Korzystając z tych danych, mogłem wykreślić każdy parametr w stosunku do czasu snu.

Widać, że nie ma już silnej korelacji, przynajmniej liniowej między większością z nich. Najbliższy jest nieco liniowy — z wieloma wartościami odstającymi — związek między całkowitą ilością jedzenia a godzinami snu. Co dziwne, wydaje się, że więcej jedzenia powoduje mniej snu.

bliźniacy-śpiący-chłopcy

flickr / hegbar

Istnieje wiele różnych typów algorytmów uczenia maszynowego. Są one w dużej mierze podzielone na typy liniowe i nieliniowe. Wziąłem dane i przepuściłem je przez 6 dość powszechnie używanych algorytmów, aby zobaczyć, jak dokładny może być każdy. Oto wyniki.

Lub w bardziej piktograficznej formie

Tutaj możesz zobaczyć, że algo Support Vector Machine wyraźnie radziło sobie najlepiej w stosunku do danych, chociaż zakres jest bardzo szeroki, a średnia nie jest znacznie lepsza niż inne. Żaden z nich nie jest nawet na poziomie 50 procent, co jest dość kiepskie do przewidywania. Wynika to wyłącznie z pseudolosowego charakteru danych. Nawet przy takich wynikach postanowiłem iść do przodu, mając nadzieję, że w ogóle wydobędę jakikolwiek wgląd.

Korzystając z SVM, wyszkoliłem algorytm na danych wejściowych. Korzystając z tego, mogłem teraz przewidzieć, ile będziemy spać na podstawie ilości jedzenia przyjmowanego w ciągu dnia, kiedy kładziemy je spać i ile karmiliśmy podczas ostatniego karmienia. Na przykład danie im 28 uncji, kładzenie ich do łóżka w 7 i podawanie 6 uncji podczas ostatniego karmienia spowoduje dość kiepskie 8 godzin snu.

Wnioski

Po przeszkoleniu algorytmu mogłem z pewną dozą pewności przewidzieć, ile będziemy spać. Co ważniejsze, mogłem przyjrzeć się liniom trendu i zobaczyć, jaki rodzaj zachowania prowadzi do większej ilości snu, próbując zoptymalizować. Wbrew intuicji, chodzenie spać wcześniej, z mniejszą ilością jedzenia wtedy i przez cały dzień faktycznie zwiększyło sen. Jest to prawdopodobnie spowodowane wieloma czynnikami, ale moja teoria mówi, że mniej jedzenia oznacza mniej gazów, mniej skurczów żołądka, gdy jesteś głodny, a zatem bardziej spokojny sen. Ile razy wypiłeś, a potem dziwnie budziłeś się w środku nocy z głodu?

bliźniaki-spanie-2-

flickr / Dion Hinchcliffe

Niestety, podobnie jak w przypadku testów A/B, żaden indywidualny wkład nie wydaje się mieć silnego bezpośredniego wpływu na sen. Myślę, że gdyby tak było, ktoś już by to odkrył i zarobiłby miliony. Podsumowując, uczenie maszynowe może znaleźć niektóre z tych trendów i powiązań między zmiennymi, co prowadzi do lepszych, dokładniejszych wyników niż testy A/B lub próba i błędy, ale wyniki wciąż są dalekie od najlepszych. Z tych danych mogłem co najwyżej uzyskać 41-procentowy wskaźnik trafności prognoz. Oznacza to, że najczęściej się mylą. Ze względu na częste zmiany w rozwoju, a nawet różnice między chłopcami, trudno jest zastosować do nich dane. Ponownie, większy rozmiar próbki może pomóc, ale w najbliższym czasie nie dążymy do trojaczków.

Mimo to wyniki te są lepsze niż nic i pomagają zademonstrować obietnicę w dziedzinie uczenia maszynowego i nauki o danych. Na przykład wolę podejmować decyzje na podstawie danych, a nie odczuć, a te dane, nawet potwierdzające niektóre z moich przypuszczeń, sprawiają, że czuję się lepiej w naszym podejściu do rodzicielstwa.

Tyler Lund jest redaktorem Tata w biegu.

Separacja małżeństwa: 9 rzeczy, których nauczyłem się po rozstaniu z żonąRóżne

Mój 8-latek mówi o supermocach, tak jak niektórzy mężczyźni rozkładają statystyki sportowe. Jego ulubione pytanie dotyczy tego, jaką nadludzką zdolność wziąłbym, gdyby wszystkie moce nagle stały si...

Czytaj więcej

Dlaczego zachowujemy się tak dziecinnie wokół naszych rodzinRóżne

Oto jesteś, dorosły, odwiedzasz swoją rodzinę, kiedy coś - może zdanie wypowiedziane przez twojego tatę lub niefortunny komplement wypowiedziany przez twojego szwagra - włącza przełącznik w twoim m...

Czytaj więcej

8 wskazówek, jak ponownie żyć samotnie po rozwodzie lub separacjiRóżne

Życie po A rozwód lub separacja wymaga wielu poprawek. Jeden duży? Nauczyć się żyć samotnie na nowo. Po rozstaniu wysłałem SMS-a do starszego kuzyna z prośbą o radę. Wcześniej przeżył rozwód, miesz...

Czytaj więcej