4 ms·
Cool! Could you elaborate on the ways ML is used within the app? So far I gather it learns the optimal weight to be used for repetitions.
by krosaen 10y ago
Cool! Could you elaborate on the ways ML is used within the app? So far I gather it learns the optimal weight to be used for repetitions.
- kareemsabri 10y agoThanks! The main ML component is to guess how much weight you should lift for an exercise you've never logged before. To accomplish this, I periodically ingest all the exercise data offline, and for all possible pairs of exercises, see which ones are most strongly correlated. The client app downloads the latest data before every workout, and uses it to calibrate exercises if the user hasn't performed them before. If the user has logged the exercise before, guessing the optimal weight is pretty trivial, but if it's been a while, which can happen because every workout is somewhat randomized, it will override and make a prediction based on more recent exercises. There's also some learning of progress rates, it'll slow down or speed up the rate of increasing weights based on the user's performance.
- tharshan09 10y agoIm also just curious what technologies you are using, specifically for the ML. Is there a particular ML technique that works well for this use case?
- kareemsabri 10y agoJust running to a meeting but I'll reply in more detail in an hour.
- kareemsabri 10y agoJust python. I'm by no means an ML expert, this was my first foray into it. I used some basic stats to identify correlated exercises, and then simple linear regression to fit the data to a line. In my mind, linear regression is sufficient for such a simple ML problem.