法律状态公告日
法律状态信息
法律状态
2023-01-31
公开
发明专利申请公布
技术领域
本发明属于人工智能与心理学交叉领域,特别是涉及一种教师自主支持性教学行为自动识别方法。
背景技术
研究表明,具有自主支持性教学行为的教师能够激发学生学习兴趣和创造力,提升学习成就。识别教师教学行为在改进教学行为、促进学生主动学习、提升教学质量方面具有重要意义和应用前景。然而,现有教学行为识别方法多为心理学中的心理学量表法和人工识别法,这些方法严重依赖人工作业,繁琐费时、成本高昂,难以在大规模的真实课堂场景中广泛应用。
近年来,人工智能技术凭借其智能、自动、精准的优势被广泛应用于传统领域,例如,教育、医疗、金融等领域。然而,目前仍没有相关技术发明来实现教学行为的自动识别,甚至还没有可供训练算法模型使用的教学行为数据集,甚至没有指导如何构建数据集的相关标准。
为了解决上述实际问题,本发明首次将人工智能技术与心理学中的自主支持识别深度融合,实现在大规模真实课堂场景中自动、快速识别教师自主支持性教学行为。本发明从上述实际问题出发,首次将人工智能技术与心理学中的自主支持识别深度融合,将教学行为自动识别任务转换为基于高度不平衡数据的但标签文本分类问题,构建首个自主支持性教学行为训练数据集,设计教学行为识别算法,实现在大规模真实课堂场景中自动、快速识别教师自主支持性教学行为。
发明内容
本发明的目的是提供一种教师自主支持性教学行为自动识别方法,以解决上述现有技术存在的问题。
为实现上述目的,本发明提供了一种教师自主支持性教学行为自动识别方法,包括:采集教师授课语音,基于语音分割技术将所述授课语音进行分割处理,获得单句语音;利用语音识别技术将所述单句语音转换为教学行为文本信息;基于所述文本信息构建教学行为数据集;
构建教学行为识别模型,将所述教学行为数据集输入所述教学行为识别模型进行训练,获得目标教学行为识别模型;
基于所述目标教学行为识别模型对教师自主支持性教学行为进行智能识别。
优选地,利用语音识别技术将所述单句语音转换为文本信息之后还包括,对所述教学行为文本信息进行分类,获得控制行为数据、自主支持行为数据、中性行为数据。
优选地,所述自主支持行为数据包括鼓励学生讲话、以表扬作为信息反馈、允许学生以自己的方式工作、交流式表达、提供提示、提供鼓励、对学生产生的问题负责;
所述控制行为数据包括提供解决方法/答案、发出指令/命令、作出应当/应该陈述、截止时间陈述、展示解决方案/答案、提出控制问题;
所述中性行为数据包括教师讲话。
优选地,将所述教学行为数据集输入所述教学行为识别模型进行训练的过程包括,将所述教学行为数据集随机划分成5等份,选取1份作为测试集,其余作为训练集进行训练;将所述训练集中5%的训练数据作为验证集,使用随机过采样平衡所述数据集,通过基于代价敏感学习的损失函数快速计算类别可分性,优化所述教学行为识别模型。
优选地,所述基于代价敏感学习的损失函数包括优化神经网络参数的损失函数Loss
所述优化神经网络参数的损失函数Loss
其中,
所述优化代价矩阵参数的损失函数Loss
其中CE
所述矩阵M的表达式为:
M=D·exp(-S)·exp(-R)
其中R是验证集上当前分类错误的混淆矩阵。
优选地,所述矩阵D的表达式为:
其中,D
优选地,所述矩阵S的表达式为:
其中
优选地,将BERT模型后四层的输出进行拼接作为词嵌入,在所述BERT模型后分别增加2层BiLSTM网络和3层并行的CNN网络,所述BERT的嵌入作为BiLSTM的输入,所述BiLSTM的输出将与其输入拼接后再送入CNN网络,获得BERT-BiLSTM-CNN模型。
本发明的技术效果为:该发明能够实现对教师自主支持性教学行为的实时识别和分类,并能够适应大规模的的真实场景,有助于教师掌握、完善自身教学行为风格,提升教学质量。
附图说明
构成本申请的一部分的附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明实施例中的教学行为识别模型网络结构图;
图2为本发明实施例中的通过PCA方法可视化BERT不同层输出特征图;
图3为本发明实施例中的系统输出图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
实施例一
本实施例中提供一种教师自主支持性教学行为自动识别方法,包括首先采用教师授课语音作为教学行为识别对象,教师授课语音通过麦克风硬件和pyaudio、wave软件进行采集,利用GLR语音分割技术将授课语音分割为单句语音,通过自动语音识别算法将分割后的语音段转化为文本信息。
将文本信息进行教学行为分类适配,每一个文本仅对应一种教学行为,如表1所示,所述教学行为包括14个教学行为,包含7个自主支持行为,6个控制行为和1个中性行为;
7个自主支持行为包括鼓励学生讲话、以表扬作为信息反馈、允许学生以自己的方式工作、交流式表达、提供提示、提供鼓励、对学生产生的问题负责;
6个控制行为包括提供解决方法/答案、发出指令/命令、作出应当/应当陈述、截止时间陈述、展示解决方案/答案、提出控制问题;
1个中性行为包括教师讲话。
表1
如图1所示,BERT-BiLSTM-CNN模型将BERT后四层的输出进行拼接作为词嵌入,在BERT模型后分别增加了2层的BiLSTM网络和3层并行的CNN网络。随后,将来自BERT的嵌入作为BiLSTM的输入,并且BiLSTM的输出将与其输入拼接后再送入CNN网络,其中卷积核大小分别设置为2、3和4,模型输出结果的具体过程为:
首先输入文本,通过BERT的后四层,BERT每一层的输出是一个768维的特征向量,得到一个3072维的词嵌入特征向量,并将其输入到具有2个隐含层256个神经元的BiLSTM网络,然后,将BiLSTM的输出(一个512维向量)与其输入进行拼接,并将新的3584维特征向量输入到3层并行的CNN网络。最后,将CNN网络的输出进行拼接,并输入到全连接网络(纬度768*14)进行分类。
在训练过程中,分类器的参数将通过计算分类损失和梯度进行优化,为防止模型发生偏差,在模型输出层和损失函数层之间增加一个代价矩阵ξ(
损失函数Loss
其中,
每个训练epoch后,根据当前的网络参数,利用Loss
其中,
为快速计算类别可分性S,计算出样本i被预测到正确的类和其他类的概率之差,然后,计算每个类中所有样本差值的平均值,以此得到类别可分性S,矩阵S的定义如下:
为优化成本矩阵ξ,将FOCC损失函数Loss
其中CE
M=D·exp(-S)·exp(-R)
其中R是验证集上当前分类错误的混淆矩阵。
本实施例设计了多组对照实验对本申请的方法进行了综合评估,结果表明本申请的方法在micro-F1值和macro-F1值上均超越了基线模型。为了尽可能地评估和解释本申请的方法在数据集上的性能,本实施例设计了多组基于控制变量方法的实验。
采用5折交叉验证方法对本申请的数据集进行划分,以降低随机性对实验结果的影响。即将数据集随机划分成5等份,依此选取其中1份作为测试集,其余作为训练集,共计获得5个训练数据集,模型依次在这些数据集上训练,并计算训练结果均值作为评价指标。本实施例的损失函数在训练过程中需要一个较小的验证集,因此本实施例在每次实验中都使用5%的训练数据作为验证集。为了将现有的不平衡数据的数据级方法与本申请的模型进行比较,本申请使用随机过采样(Random Over Sampling,ROS)平衡本申请的数据集,它可以重复随机采样少数类样本来平衡数据,最终获得了一个新的包含44464个文本数据的训练集。同样,本实施例使用欠采样(Random Under Sampling,RUS)方法生成了一个包含仅154个样本的训练集。最后,本实施例的模型将在这3类训练集上进行微调。
为了探索词嵌入方法的合理性,本实施例采用BERT-BiLSTM-CNN模型,对BERT模型最后1层、拼接或叠加后2层、后3层和后4层的7种词嵌入方法进行了评估。此外,本实施例还使用word2vec代替BERT作为词嵌入来比较结果。为了公平和可靠地比较,本实施例使用word2vec生成一个3072维向量(与拼接BERT4层特征维数相同)进行嵌入。在这些模型中,本实施例均使用CE损失函数来优化网络参数。
关于损失函数,本实施例在模型中额外添加了四种不同的损失函数来与本申请的损失函数进行比较,分别为:(1)交叉熵(CE)损失函数,广泛应用于各种任务中的损失函数;(2)Lin等人提出的Focal loss(FL)损失函数,在本实施例中,将γ值分别设定为0、0.5、1、2和5;(3)Ashraf等人提出的的成本-权重敏感(Cost-Weight Sensitive,CWS)损失函数,可根据数据分布为每一类分配不同的权重;(4)Khan等人提出的自动优化类依赖损失(Automatic Optimization of the Class-dependent Cost,AOCC),能够自动优化代价矩阵。
本实施例还添加了随机森林(Random Forest,RF)、逻辑回归(LogisticRegressive,LR)和其他三个以CE损失函数为基线的模型(BERT,BERT-BiLSTM,BERT-CNN),并在本申请的数据集上进行训练。
在本实施例的实验中,学习速率设置为5e-5,batch大小设置为8,在数据集上进行20个epoch的微调,所有模型在CPU为i5-9400F和GPU为RTX2060的平台上进行训练。所有实验中随机种子设置为42。AOCC中的代价矩阵初始化为1,并使用1e-6的学习速率进行优化。本实施例将FOCC中成本矩阵的对角线初始化为1,其他位置初始化为30。并将采用1e-1的学习速率对其参数进行优化,Loss
如表2所示,基于BERT词嵌入的所有模型的性能都优于基于word2vec的词嵌入。这表明语境表征比非语境表征更适合于序列级语义的捕获。同时,实验结果表明,本申请提出的后4层拼接方法比其他方法(最后一层,后2、3、4层叠加,后2、3层拼接)具有更好的性能。
表2
由图2可知,为了清晰地说明本申请模型的有效性,本实施例通过主成分分析方法(PrincipalComponentAnalysis,PCA)将BERT所有层对应的高维特征降维至2维特征,并进行可视化。众所周知,BERT是由12层网络组成的,图2中的“-12”层代表了BERT的第一层,它对特征的捕获和分类能力有限,并且对样本在坐标系中的投影分散。随着层数的增加,样本的分类能力逐渐提高。最后4层的分类结果在图2中非常显著。
由表3可知BERT-BiLSTM-CNN模型中应用不同损失函数的实验结果。本实施例中FOCC损失函数当γ=3时,在micro-F1和macro-F1上优于其他方法。γ在训练中的作用是显著不同的,随着γ的增加,更多的权重将集中在少数类样本上,因此,当γ设为3时,本申请的损失函数可以有效地降低多数类的影响,更加关注少数类。AOCC在计算每个样本的类内距离和类间距离时要花费大量的计算量。例如,第i类有3000个样本,第j类有4000个样本,AOCC需要分别计算3000
表3
为了比较本申请的损失函数和FOCC损失函数的计算复杂度,本实施例给出了它们在数据集上运行20个epoch的时间均值和标准差(运行在CPU:i5-9400F和GPU:RTX2060上,损失函数中的γ设置为3),如表格4所示。与AOCC相比,本申请损失函数的训练速度是其9倍以上。
表4
对于FL损失函数,当其γ值设为2时,得到其最佳性能。CWS损失函数的结果表明,仅根据分布来设置代价矩阵的参数可能会导致某些特定任务的性能较差。RUS和ROS的结果如表5所示,表明传统的数据级方法并不适用于高度不平衡数据集。
表5
表格5汇总了基线模型的表现结果。本申请超越了所有其他方法,并且在micro-F1上比BERT提高了近6%,在macro-F1上比BERT提高了2%。与BERT-BiLSTM和BERT-CNN相比,结果表明在BERT之上增加BiLSTM和CNN网络对特征提取和表达具有更好的性能。
如图3所示,核心模块以BERT-BiLSTM-CNN模型为主体,将训练效果最好的模型通过PyTorch的save方法保存模型参数,即state_dict。再编写函数,将模型的单次前向传播过程作为一个功能实现,即可得到单次预测功能函数。
如表6所示,对于每个60s周期,系统会输出一个报表,该报表即为系统的最终输出。
表6
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
机译: 一种支持用户钢琴乐器教学应用程序模仿模型行为的方法,涉及根据用户的学习和表现水平来设置行为的过程和积分结果
机译: 提供一种用于通过使用竞争性计算和信息融合来支持车辆的自动驾驶的自动驾驶服务平台的方法,以及使用该方法的服务器。通过竞争性计算和信息融合来支持车辆的自动驾驶,并使用相同的服务器来管理}
机译: 提供自动驾驶服务平台的方法,用于通过使用竞争性计算和信息融合来支持车辆的自主驾驶,以及使用相同的服务器