Folgendes wurde syndiziert von Mittel zum Das väterliche Forum, eine Community von Eltern und Influencern mit Einblicken in Arbeit, Familie und Leben. Wenn Sie dem Forum beitreten möchten, schreiben Sie uns an [email protected].
Vor einem Monat habe ich es versucht A/B-Tests um zu sehen, wie unterschiedliche „Behandlungen“ oder Eingabeparameter zu längerem Schlaf für unsere Zwillinge führen könnten – und natürlich stellvertretend für uns. Dadurch stellte ich fest, dass die Schlafmuster ziemlich unberechenbar waren und nicht viel fand, das stark mit erhöhtem Schlaf korrelierte. Im Laufe der Zeit begannen sie auf natürliche Weise mehr von selbst. Jetzt, wo sie jedoch 4 Monate alt sind, haben sie die anscheinend übliche, aber selten diskutierte Schlafregressionsphase begonnen. Ich fand mich wieder einmal verzweifelt nach mehr Schlaf. War ich, wie einer im vorherigen Beitrag bemerkte, "auf der Suche nach etwas, egal wie verzweifelt nach mehr Schlaf?" Jawohl. Ja ich war. Daher wandte ich mich einer anderen Informatiktechnik zu, dem maschinellen Lernen.
flickr / Matthew H.
Maschinelles Lernen ist ein Gebiet der Informatik, das Methoden zum „Lernen“ von Computern oder Programmen bereitstellt, ohne ihnen diskrete Anweisungen zu geben. Bei der normalen Programmierung würde ich dem Computer eine Folge von Befehlen geben, die ausgeführt werden sollen, indem ich Logik einfüge, um Entscheidungen darüber treffen, was zu tun ist, basierend auf Eingaben, aber das Programm könnte niemals von diesen klar definierten abgehen Schienen. Obwohl diese Beschreibung näher an der Terminator als es in der Praxis tatsächlich aussieht, ermöglicht es maschinelles Lernen, eine Reihe von „lernenden“ Daten zu verwenden und diese als Grundlage für Vorhersagen zu verwenden. Obwohl es in der gesamten Technologiebranche immer beliebter wird, wurde es hauptsächlich für den Einkauf verwendet Verhalten und Empfehlungen, KI und vielleicht am interessantesten, um Bilder und Kunst zu kategorisieren und zu identifizieren – hauptsächlich nach Google. Ich konnte nicht viele Fälle finden, in denen es auf die Elternschaft angewendet wurde.
Dank des buchhalterischen Hintergrunds meiner Frau und unserer Typ-A-Persönlichkeiten verfügen wir über detaillierte Aufzeichnungen über das Fütterungs- und Schlafverhalten der Jungen. Erinnern Sie sich an diese Tabelle?
Mit diesen Daten machte ich mich daran, die optimale Kombination von Eingabeparametern zu finden, in diesem Fall habe ich mir die Gesamtmenge an aufgenommener Nahrung in. angesehen den Tag, die Uhrzeit der letzten Fütterung und die Menge der letzten Fütterung, um zu bestimmen, was zu der längsten Nachtruhe für die führen würde Jungs. Und das Beste war, dass ich die harte Arbeit dem Computer überlassen konnte. Außerdem hatten wir doppelt so viele Daten zu diesen Mustern, weil wir natürlich nicht nur einen, sondern 2 Jungen haben.
flickr / Matthew Ephraim
Es gibt mehrere großartige Bibliotheken für maschinelles Lernen, die in allen Programmiersprachen verfügbar sind. Obwohl ich hauptsächlich Java und Javascript beruflich verwende, habe ich mich für die Python-Bibliothek sklearn entschieden, da ich haben Vertrautheit mit Python und dies schien die perfekte Anwendung für die flexible Skripterstellung zu sein Sprache. Es gibt viele großartige Tutorials für diese Bibliothek und auch eine gute Dokumentation.
Meinen Code findet ihr auf github wenn interessiert.
Beim Exportieren der Daten, die wir aus der Tabelle gesammelt haben, habe ich nur die Datenpunkte des letzten Monats extrahiert. Aufgrund des schnellen Wachstums und der Entwicklungsveränderungen, die Säuglinge durchmachen, hatte ich das Gefühl, dass die Daten eines Monats – mal 2 Säuglinge – eine gute Balance zwischen Aktualität und genügend Daten waren, um eine Vorhersage zu treffen.
Zusammensetzen und codieren
Ich habe auch einige interessante Statistiken erhalten, einschließlich der Tatsache, dass wir die Jungen im Durchschnitt mit 27,5 oz pro gefüttert haben Tag, legte sie am häufigsten um 7:25 Uhr ins Bett, fütterte sie vor dem Zubettgehen mit 5,22 oz und sie schliefen 9 Stunden weiter Durchschnitt. Es stellte sich auch heraus, dass die Jungen 75 Prozent der Zeit über 10 Stunden schliefen. Nicht so schlecht. Aber ich wusste, dass wir das mit etwas mehr Arbeit verbessern könnten.
Mit diesen Daten konnte ich jeden Parameter gegen die Schlafzeit darstellen.
Sie können sehen, dass es zwischen den meisten bereits keine starke Korrelation gibt, zumindest linear. Am nächsten kommt die etwas lineare – mit vielen Ausreißern – Beziehung zwischen der Gesamtnahrung und den Schlafstunden. Seltsamerweise scheint mehr Essen zu weniger Schlaf zu führen.
flickr / hegbar
Es gibt viele verschiedene Arten von maschinellen Lernalgorithmen. Diese werden weitgehend in lineare und nichtlineare Typen eingeteilt. Ich nahm die Daten und ließ sie durch 6 ziemlich weit verbreitete Algorithmen laufen, um zu sehen, wie genau jeder davon sein könnte. Hier sind die Ergebnisse.
Oder in einer piktografischeren Form
Hier sehen Sie, dass der Support Vector Machine-Algo gegenüber den Daten eindeutig am besten abschneidet, obwohl der Bereich sehr breit ist und der Mittelwert nicht viel besser ist als bei den anderen. Keiner liegt sogar bei 50 Prozent, was für Vorhersagen ziemlich schlecht ist. Dies liegt ausschließlich an der pseudozufälligen Natur der Daten. Trotz solcher Ergebnisse beschloss ich, weiterzumachen, in der Hoffnung, überhaupt Erkenntnisse zu gewinnen.
Mit SVM habe ich den Algorithmus an den Eingabedaten trainiert. Auf diese Weise konnte ich jetzt vorhersagen, wie viel Schlaf wir bekommen würden, basierend auf der Menge an Nahrung, die wir an einem Tag zu uns nahmen, wann wir sie ins Bett brachten und wie viel wir sie bei der letzten Fütterung gefüttert hatten. Zum Beispiel, ihnen 28 Unzen zu geben, sie mit 7 ins Bett zu bringen und 6 Unzen bei der letzten Fütterung zu geben, würde zu ziemlich schlechten 8 Stunden Schlaf führen.
Schlussfolgerungen
Mit dem jetzt trainierten Algorithmus konnte ich mit einiger Sicherheit vorhersagen, wie viel Schlaf wir bekommen würden. Noch wichtiger ist, dass ich mir die Trendlinien für diese ansehen und sehen konnte, welche Art von Verhalten zu mehr Schlaf führte, um eine Optimierung zu erzielen. Entgegen der Intuition, früher zu Bett zu gehen, mit weniger Essen dann und den ganzen Tag über, hat tatsächlich den Schlaf erhöht. Dies ist wahrscheinlich auf viele Faktoren zurückzuführen, aber meine Theorie ist, dass weniger Nahrung weniger Blähungen, weniger Magenschwund bei Hunger und daher einen erholsameren Schlaf bedeutet. Wie oft haben Sie sich ausgehungert und sind dann auf bizarre Weise mitten in der Nacht verhungert aufgewacht?
flickr / Dion Hinchcliffe
Leider scheint, genau wie bei den A/B-Tests, keine einzelne Eingabe einen starken direkten Einfluss auf den Schlaf zu haben. Ich schätze, wenn es so wäre, hätte es jemand bereits entdeckt und würde Millionen verdienen. Zusammenfassend kann maschinelles Lernen einige dieser Trends und Assoziationen zwischen Variablen finden, was führt zu besseren, genaueren Ergebnissen als A/B-Tests oder Trial-and-Error, aber die Ergebnisse sind noch lange nicht großartig. Aus diesen Daten konnte ich höchstens eine Vorhersagegenauigkeit von 41 Prozent erhalten. Das bedeutet, dass sie meistens falsch liegen. Aufgrund der häufigen Veränderungen in der Entwicklung und sogar der Unterschiede zwischen den Jungen ist es schwierig, Daten auf sie anzuwenden. Auch hier könnte eine größere Stichprobengröße hilfreich sein, aber wir streben in absehbarer Zeit keine Drillinge an.
Dennoch sind diese Ergebnisse besser als nichts und tragen dazu bei, das Potenzial des Bereichs Machine Learning und Data Science zu demonstrieren. Ich für meinen Teil ziehe es vor, Entscheidungen anhand von Daten zu treffen, statt Bauchgefühle und diese Daten, die nur einige meiner Vermutungen bestätigen, geben mir ein besseres Gefühl für unseren Erziehungsansatz.
Tyler Lund ist der Herausgeber von Papa auf der Flucht.