1.基于改进协同过滤ItemCF算法的运动处方生成方法,具体步骤为:步骤1,收集运动项目,通过属性将运动项目划分为运动效果属性,作用对象属性,运动条件属性;对运动效果属性、作用对象属性进行量化得到量化数据,从而建立运动项目量化数据库;
步骤2,计算运动效果属性在数据库中的分布;
步骤3,获取用户输入数据,根据运动数据利用步骤1的量化方法建立理想运动量化模型;
步骤4,根据理想运动量化模型,利用改进的协同过滤ItemCF算法,计算运动量化数据库中所有运动对用户输入的适应度;
步骤5,筛选适应度最高的运动项目,设定运动强度,运动频率和运动时长,生成运动处方;
步骤6,收集新的用户输入数据,从步骤3开始,重复步骤3到步骤5获得新的运动处方;
步骤1的具体步骤为:
步骤1.1,收集运动项目,每个运动项目内容包含运动项目名称,运动处方类型,其值为有氧、力量、柔韧中的一种,运动效果,其值为减脂瘦身、锻炼平衡、减压、缓解疼痛、增肌、塑形、增强力量、增强有氧能力、增强体质、增强耐力、强化心肺中的一种或多种,作用对象,其值为全身、背部、头部、颈部、肩部、胸部、腰部、臀部、手臂、手腕、手掌、腿部、大腿、小腿、脚踝、脚掌中的一种或多种,运动条件属性,其内容包含运动项目的运动强度,运动时长和运动频率;
其中运动强度以每分钟心率指标刻画,单位bmp,运动时长以分钟为单位,单位min,运动频率以每周运动次数刻画,单位次/周;
步骤1.2,对收集的所有运动项目的效果属性和作用对象属性进行量化,利用one‑hot标签方法量化,其具体量化方法如下:运动效果属性量化,针对运动项目i,建立十一位的效果属性向量E(i),分别对应减脂瘦身、锻炼平衡、减压、缓解疼痛、增肌、塑形、增强力量、增强有氧能力、增强体质、增强耐力、强化心肺,对于所量化的运动项目i所具有的运动效果属性,在效果属性向量对应位置设定值为1,不具有的属性对应位置设定值为0;
运动作用对象属性量化,采用与运动效果属性量化相同的方法,针对运动项目i,建立十六位的作用对象属性向量T(i),分别对应全身、背部、头部、颈部、肩部、胸部、腰部、臀部、手臂、手腕、手掌、腿部、大腿、小腿、脚踝、脚掌,对所计算的运动项目i所具有的作用对象属性,在作用对象属性向量中对应位置设定值为1,不具有的属性对应位置设定值为0;
特别地,运动对象属性量化中,若运动项目i作用对象属性包含全身这一种类,则作用对象属性向量T(i)中所有值都设定为1;
步骤1.3,生成运动项目量化数据,针对收集到的每个运动项目i,建立运动项目量化数据N(i),其内容包含运动名称,运动效果属性,运动作用对象属性,运动效果属性向量E(i),运动作用对象属性向量T(i),运动强度Q(i),运动时长D(i),运动频率F(i),并储存;
所述运动强度Q(i)等于当前所量化的运动项目i的运动条件属性中的运动强度值,运动时长D(i)等于当前所量化的运动项目i的运动条件属性中的运动时长值,运动频率属性F(i)等于当前所量化的运动项目i的运动条件属性中的运动频率值;
步骤2包括:
步骤2.1,计算每个运动效果分布百分比,运动效果u在数据库中的分布百分比为p(u)等于含有此运动效果的运动项目数量除以运动数据库中总运动项目数量;
步骤2.2,将步骤2.1的计算结果储存到数据库中;
步骤3包括:
步骤3.1,获取用户输入,其内容包含如下:
1)运动处方类型,有氧、力量、柔韧中的一种;
2)用户运动需求,其内容包含运动目的和作用对象,运动目的的值为减脂瘦身、锻炼平衡、减压、缓解疼痛、增肌、塑形、增强力量、增强有氧能力、增强体质、增强耐力、强化心肺中的一种或多种,对应于运动项目中的运动效果属性,作用对象的值为全身、背部、头部、颈部、肩部、胸部、腰部、臀部、手臂、手腕、手掌、腿部、大腿、小腿、脚踝、脚掌中的一种或多种,对应于运动项目中的作用对象属性;
3)运动强度q,表示用户愿意或能付出的最大运动强度,以每分钟心率表示,单位为bmp;
4)运动条件,包含运动时长t和运动频率f,单位分别为min和次/周;
步骤3.2,量化运动需求输入,针对用户运动需求,建立十一位的运动需求量化向量Em,利用one‑hot标签,对减脂瘦身、锻炼平衡、减压、缓解疼痛、增肌、塑形、增强力量、增强有氧能力、增强体质、增强耐力、强化心肺中用户所具有的输入,在运动需求量化向量Em对应位置设定值为1,其余值为0;
建立十六位的作用对象量化向量Tm,对全身、背部、头部、颈部、肩部、胸部、腰部、臀部、手臂、手腕、手掌、腿部、大腿、小腿、脚踝、脚掌重,用户所具有的输入,在作用对象量化向量Tm对应位置元素值设定为1,其余值为0;
特别地,当作用对象输入值中包含全身时,其作用对象量化向量Tm的每个元素值全为
1;
步骤3.3,建立理想运动量化模型M,其数据结构包含用户输入的运动处方类型,运动需求,运动需求量化向量Em,作用对象量化向量Tm,运动强度q,运动时长t,运动频率f;
步骤4包括:
步骤4.1,针对数据库中的每个运动项目i,利用运动项目i的量化数据N(i)计算运动项目i对用户输入的适应度R(i),计算方法如下:其中E(i)为运动项目量化数据N(i)中的效果属性向量,Em为基于用户输入的运动需求量化向量,T(i)为运动项目量化数据N(i)中的作用对象属性向量,Tm为基于用户输入的作用对象量化向量,Q(i)为运动项目量化数据N(i)中的运动强度,D(i)为运动项目量化数据N(i)的运动时长,F(i)为运动项目量化数据N(i)的运动频率,q为用户输入的运动强度,d为用户输入的运动时长,f为用户输入的频率,p(u)为运动效果u在数据库中的分布;
其中 为运动条件匹配因子,用于判断当前参与计算的运动项
目在运动强度、运动时长、运动频率方面的要求与当前所计算的用户的运动强度、运动时长和运动频率的匹配程度,计算数值越大,匹配程度越高;
其中w(u)为当前计算R(i)中,用户对效果u的权重,其计算方法如下:步骤4.2,收集每个运动项目对用户输入的适应度计算结果,获得所有运动项目对用户输入的适应度R;
步骤5包括:
步骤5,生成运动处方的具体方法为:
步骤5.1,对步骤4收集的运动项目适应度R,按照值从大到小的顺序进行排序,将排序第一的适应度值所对应的运动项目s作为运动处方选定的运动项目,其量化数据为N(s);
步骤5.2,设定运动处方参数,从N(s)中获取选定运动项目s的运动强度Q(s),运动时长D(s),运动频率F(s),根据用户输入的运动强度q、运动时长d和运动频率f设定运动处方参数,其方法如下:
1)运动强度
当用户输入运动强度q大于选定运动项目运动强度Q(s),则运动处方运动强度设定为Q(s),否则设定运动处方的运动强度值为q;
2)运动时长
设定运动处方运动时长,其值等于Q(s)乘以D(s)的乘机除以所求得的运动处方强度;
3)运动频率
设定运动处方频率为F(s);
步骤5.3,生成运动处方,收集步骤5.2的计算结果,输出运动处方内容包含选定的运动项目,设定的运动强度、运动时长、运动频率。