[HN Gopher] Predicting Weight Loss with Machine Learning
       ___________________________________________________________________
        
       Predicting Weight Loss with Machine Learning
        
       Author : arijo
       Score  : 8 points
       Date   : 2024-10-19 17:08 UTC (5 hours ago)
        
 (HTM) web link (www.feelingbuggy.com)
 (TXT) w3m dump (www.feelingbuggy.com)
        
       | jvanderbot wrote:
       | This is pretty much what I do, as well!
       | 
       | I've found the equations for metabolism and weight to be
       | accessible enough that I can just plug in daily calories and
       | weight and get a nice prediction once you run it through a curve
       | fit. Nothing too sophisticated required.
       | 
       | https://jodavaho.io/tags/diet.html
       | 
       | That's not to say that ML doesn't help. I use LLMs for super
       | simple calorie tracking.
        
         | arijo wrote:
         | I think most of the classical statistical methods for curve
         | fitting happen to be some kind of variant of using least
         | squares on a manually chosen parameterizable function - you'll
         | have to chose between a linear, polynomial, exponential or some
         | other moire complex forms.
         | 
         | The nice things of using a simple feedforward DNN is that it
         | will automatically infer both the nonlinear function structure
         | and parameters and for simple basic use cases like this that
         | don't require a lot of training it works well and you can even
         | validate the fit visually by looking at the graph output.
        
           | apwheele wrote:
           | I'm sorry but this model is wild and highly misleading. Based
           | on one variable and 7 observations, days since you have
           | started, you have fit a model with `2 + 128 + 64^2`
           | parameters. It happens that a straight line is fine for this
           | data, so it does OK approximating the two observations that
           | are in the test split.
           | 
           | I was curious to see what would happen out of sample, I
           | figured it would just be a straight line (and it is, despite
           | the parameters being quite complex, print out `model.weights`
           | to check them out!)                   outS =
           | [[365],[400],[450],[500],[2*365],[3*365],[4*365]]
           | outY = model.predict(scaler_X.transform(outS))         outY =
           | scaler_y.inverse_transform(outY)
           | 
           | Negative if you keep at it long enough.
        
             | arijo wrote:
             | I don't intend to use the model to predict more than a
             | couple of weeks - the fact that it has no data to predict
             | more than that is not that a big deal for this use case.
             | 
             | Not very important, but the weight loss curve usually
             | decelerates with time and this pattern is not captured by a
             | straight line either - as i say not a big deal, it just
             | happens that by using a simple DNN model for a simple curve
             | I don't have to spend time choosing the type of function I
             | want the data to fit.
             | 
             | Also the model will improve as the number of measurements
             | that are available increases.
             | 
             | Your comment does make sense, I just think for this use
             | case and short term prediction it's not a major problem.
             | 
             | I'd be happy to learn how you'd apply some renormalization
             | techniques to reduce the number of parameters and prevent
             | the overfitting - I'm just a noob very curious to learn as
             | most as I can about practical deep learning techniques.
        
         | jflessau wrote:
         | Would you mind elaborating on how you use LLMs to track
         | calories?
         | 
         | Edit: nevermind, its all in the blog linked by you :)
        
           | arijo wrote:
           | Ha ha, no worries - I'm eager to learn from you guys as well
           | :)
        
         | jflessau wrote:
         | A calorie tracker app has been my tool of choice for the past
         | few years, one that includes a catalog of food items, meals,
         | and recipes.
         | 
         | The two most useful features are the barcode scanner (scanning
         | is much easier than typing into a search bar) and the fact that
         | it knows, for example, how much a slice of cheese from a
         | scanned package weighs. Weighing the food is actually the most
         | annoying part, at least for me.
         | 
         | It's even trickier when you're having breakfast and need to
         | weigh butter, etc., before and after to get the difference, to
         | avoid prepping everything beforehand.
         | 
         | All that sounds annoying, and it is. But compared to exercise,
         | it has been a great time investment for me. Weighing things and
         | using this app takes about 5 minutes a day. It yields results
         | I'm happy with and significantly reduces uncertainty.
         | 
         | When you're unsure if you can eat one more thing near the end
         | of the day, you can just look it up. Otherwise, uncertainty, at
         | least for me, leads to under-eating, causing more hunger the
         | next day, or overeating, jeopardizing the goal.
         | 
         | The thought of using an LLM to analyze a picture is intriguing.
         | 
         | I tried laying out items from the fridge on a plate and asking
         | an LLM what I could make from them. That worked surprisingly
         | well. But I like your idea much better.
         | 
         | The question is how accurate that would be. But snapping one
         | more picture and testing it for a few weeks sounds fun.
         | 
         | Thanks for the food for thought! :)
        
           | arijo wrote:
           | I actually do that frequently to comply with my ketogenic
           | diet - take a photo of the macro nutrients quantities,
           | calories from the nutrition facts table on the food package
           | and use ChatGPT or some other LLM to calculate the estimated
           | calories per portion.
           | 
           | You can then validate the data by tracking your lost calories
           | (calculable from your lost weight - I do it each week) and
           | compare with the predicted weight lost calculated from the
           | vendor 's nutrition facts table.
        
         | mitjam wrote:
         | Thanks for sharing, I read all 4 parts and will definitely use
         | this to improve my diet and activity (want to lose 10kg or
         | about 12%). Looking forward for part 5.
        
       ___________________________________________________________________
       (page generated 2024-10-19 23:01 UTC)