作者:ArielFaigon
自打搬来美国以后,我的体重就一路飙升,足足胖了50多磅。
而在来美国前,我其实还算是个瘦子。你看,这是我刚来美国时的驾照照片:
美国的生活方式极其容易让人发胖,pizza和快餐到处都是,而且还很便宜。我长期spoil自己,结果给身体造成了很多负担。
于是,我决定减肥。
为什么我要使用机器学习研究减肥?
看到这里,也许你会说,少吃多动就可以了,何必用到机器学习来研究减肥,甚至可能还会觉得我在刻意博人眼球。
Well,事实上,我已经试过了很多减肥方法。我曾经非常真诚地遵循着“少吃或不吃”的原则。然而每次的节食,都会让我在一段时间后吃得更猛,长得更快。
想必你会说,那你一定要多动。但是亲爱的,我并不是一个意志力强大的人,高强度运动对我来说不是一种可以长期坚持下去的Lifestyle。
所以我意识到,我需要的,是一种长期可以让我坚持的生活方式,它不会让我产生焦虑,或是在没有做到某个标准的时候,产生负罪感。
它需要满足以下几个特点:
1.可以长期坚持;
2.不会产生想打破习惯的冲动;
3.在坚持的时候,不会产生不愉悦的体验。
于是,我想到了利用“MachineLearning”来发掘最适合我的减肥方式,毕竟现在MachineLearning对于数据的预测和聚类有着突出的优势,其预测结果的准确性和严谨程度也是极具参考性的。
当然,也是找到一个好的生活方式。
这里是我16个月以来的减肥成效:结果事实证明,我通过机器学习找到的生活方式非常有效!
-体重变化记录
想知道我是如何做到的?那就继续往下看。
我的研究步骤
第一步,收集数据。
要找到最适合自己的减肥方法,就需要充分了解自己的身体:看看自己吃什么、做什么会长肉,然后就尽量避免。
数据记录方法很简单,做一个CSV表格,Date一列,MorningWeight一列,Yesterday’sLifestyle/Food/Actions一列。
每天早上我都记录新的体重,以及过去24小时内做的任何事情,包括吃的食物,是否锻炼,睡眠太多或太少等等。
第二步,处理数据。
在记录多天后,我开始运用MachineLearning来分析我的数据。
我主要用到的语言/工具如下:
我先写了一个脚本将我的数据记录文件转换为vowpal-wabbit训练集回归格式。
在转换后的训练集中,我把目标特征(targetfeature)标签为过去24小时内重量(delta)的变化,把输入特征(inputfeatures)设为我在导致这个delta的24小时内完成的活动或吃过的东西。
然后,通过MahineLearning分析,我有了以下发现:
在上图列出的食物/活动中,正的相对值是会让我增重的生活方式,而负的则是能让我减肥的生活方式。
向上滑动阅览
在这里我要声明以下,请不要对上图我的data太过较真儿,我自己知道在数据的收集过程中存在一些不完美,比如:
原始数据点的数量可能太小(只记录了多天)而不足以建立足够的显著水平(significance)
我每天的体重变化量非常小,通常约为0.1磅
我的称不太准,你可能已经注意到,我的data有个0.2pound的resolution,理想情况下,最好将其控制在0.1pound
那些让你增重和减重的项目,经常会出现在同一条线上,因为它们之间可能会相互抵消
即使把当前的数据集复制多次用来做training(这样很容易导致modeloverfitting,i.e.在trainingdataset上效果很好,但是在testing时候效果很差),你的lossfunction也最多只能减小到0.2.
原始数据中还有一些拼写错误
第三步,得出结论。
通过这些数据,可以得出的4个最能影响我体重的因素:
睡眠时间是最能显著影响体重变化。
睡眠不足会让体重上升。
碳水摄入会增加体重。而最让人长胖的,是那些高糖分的食物。
油脂类、高蛋白食物与体重呈负相关,也就是说,摄入这类食物,体重会下降。
“当我们在睡觉的时候,我们在消耗,且无法摄入热量。”
我花了一阵子才意识到,这其实就是睡眠影响体重的最简单直白的原因:当你醒着的时候,即使不是用餐时间,也难免会吃一点零嘴,但这却不会发生在睡眠期间。
所以睡着以后,才是我们禁食最长的时候。
我是如何让体重下降的
你也许注意到了表格的顶端,这里有一个很明显的体重快速下降的部分。
背后的原因可能比我现在要告诉你的更加复杂和多元,但我想告诉你,我是如何做到的。
第一个方法非常简单,增长禁食的时间即可,你可以:
跳过早饭部分;
提早最后一顿饭的时间,并且早点上床睡觉。
通过这种方法,我的禁食时间增加到了每天14-16小时左右。而一般来说,这个时间可能仅在10-12小时。
第二个方法,将每一餐的碳水的部分减少,增多高脂高蛋白的部分。这个方法可以让我更快感受到饱腹感。
第三个方法,减少糖分摄入。我研究了血糖生成指数和血糖负荷的含义,然后按照表中的叙述将我吃的东西都换成了会产生较低血糖负荷的食物。
通过这天的MachineLearning研究,我十分确信,通过这种生活方式,我可以重新回到来美帝之前的体重。
然后,我按照得出的结论为指导,避免了那些会让我长胖的食物、活动,成功地减了20磅。
如果我可以保持现在的这种减肥速度,用不了一两年,我就可以完全逆转过去20多年的身体负荷。
我的减肥方法论总结
1.减少碳水化合物的摄入(特别是在减肥最开始的时候)。
但需要注意的是,减碳不等于完全无碳,只是减量、减次。
2.减少糖分摄入。
你可以上网查查升糖指数表,尽量避免吃那些指数高的食物。避免升糖负荷高的食物。升糖负荷指的是在人体摄入某样食物后,它会如何升高你的血糖水平。
3.大胆摄入脂肪。
我减肥期间,从不“防备”脂肪,只要它是天然、非加工的脂肪,我就放心吃。
我的身体不但没有长胖,反而让体内的细胞们明白:“我的血液中有过多的脂肪,所以我们要赶紧增加分解脂肪酶的数量”。这样长期下来,更有利于我减肥。
4.增加一点运动量。
当然,这一项多多益善。我减肥的时候没做太多运动,我只是骑自行车上班。
5.多睡,少吃。
增加你的睡眠时间,在睡觉前尽可能早地停止进食,再醒来后,尽可能晚地进食。
身体总是要靠分解食物来产生能量,而在少吃之后,血液中的葡萄糖含量会变低、肝脏中的糖原也被完全消耗,这时,身体只能通过分解体内储存的脂肪来获得能量,而这恰恰是我们减肥人士最想要的结果。
6.吃鸡蛋。
鸡蛋,是脂肪和蛋白质的完美组合!而且根本没有碳水化合物!
7.细嚼慢咽
妈妈告诉你的话,还是有道理的。
(文章来自网络)
开启你的留学之旅
体验不一样的人生道路
赞赏