实时反馈技术在CPR训练与学生模型评估中的应用
一、CPR实时反馈系统
1.1 系统架构与训练设置
在CPR训练中,为了实现实时反馈,采用了特定的系统架构。所有类别均为二元类,因此使用二元交叉熵损失进行优化,并使用Adam优化器,学习率设为0.01,训练30个周期。
实时数据利用是系统架构的运行时行为,可概括为三个阶段:
1. 检测阶段 :CPR Tutor需确定学习者执行的是胸外按压(CC)而非其他动作。采用基于规则的方法进行动作检测,通过Kinect数据监测肩部关节的垂直运动来持续检查CC的存在。这些规则经过手动校准,以确定CC的开始和结束。每次CC结束后,CPR Tutor通过TCP客户端将整个数据块推送到SharpFlow。
2. 分类阶段 :SharpFlow运行一个用Python实现的TCP服务器,持续监听CPR Tutor发送的传入数据块。收到新数据块后,检查其数据格式是否正确且未被截断。若满足条件,则对数据块进行重采样,并将其输入从内存加载的最小 - 最大缩放器中,确保新实例得到正确归一化。准备好后,将转换后的数据块输入同样保存在内存中的分层LSTM。每个目标类别的结果被序列化为字典并发送回CPR Tutor,作为CC的注释保存。SharpFlow对一个CC进行分类平均需要70毫秒。
3. 反馈阶段 :每次CPR Tutor收到分类后的CC时,会为每个目标类别计算性能和错误率(ER)。性能使用10秒窗口的移动平均值计算,即只考虑前10秒内执行的CC。错误率的计算公式为:$ER_j = 1 - \frac{\sum_{i