论文部分内容阅读
赋予机器情感以及对于情绪识别的研究是当今时代的一个热点话题。情绪识别的数据要利用EEG技术获得,但是随着硬件技术的发展,为了获取尽量丰富的脑电信息和较高精度的数据,通常利用多通道(32、64或128通道)高精度的脑电采集设备。通过增加采集脑电设备的通道数和采样频率,一方面增加了脑电采集设备的成本、也增加了设计难度和操作复杂度,一方面大量的脑电数据会导致计算量过大,影响情绪识别的实时性。快速的处理大量的脑电数已成为基于脑电信号的情绪识别的一个研究重点。在基于脑电信号特征提取算法中,常用的是小波包分解和小波分解。为了解决利用传统Mallat算法进行分解、重构的复杂性,本文在Mallat算法基础上,应用“半小波包”的概念,形成将小波分解与小波包分解相结合的“半小波包分解”算法,解决了小波分解只对低频信号有效以及小波包分解的冗余问题。首次利用半小波包和改进Mallat算法的卷积过程对DEAP数据库中的脑电信号进行分解重构,在保证准确度的基础上,优化后的Mallat算法达到了分解信号高速率、分解算法低复杂度的效果,与未优化的Mallat算法相比,优化后的Mallat算法大概只需要传统Mallat算法3/14的计算量。利用并行算法加速优化后的Mallat算法,加速效果更加明显。基于上述优化后的Mallat算法,本文利用NVIDIA公司的GPU对优化后的Mallat算法使用CUDA进行加速,得到Delta、Theta、Alpha、Beta和Gamma五个频段的数据。由于Alpha、Gamma频段对情绪识别影响较大,故对Alpha、Gamma频段的数据进行特征值的提取,使用主成分分析算法对特征进行选择,并使用CUDA进行加速。以采集一位受试者一次脑电实验数据,数据矩阵大小为32*7680。CUDA加速分解重构Alpha频段、提取Alpha频段的特征以及对Alpha频段的特征进行选择,其加速比分别为2.37、0.49、3.92。在同一条件下对比不同大小的矩阵CUDA加速的效果得出脑电信号矩阵越大CUDA加速效果越好,并行计算的优势会进一步的体现出来。对DEAP数据库中的脑电信号进行特征提取与选择后得到情绪识别所需的训练数据。提取DEAP数据库中online_ratings.xls表格提供的样本数据,使用BP神经网络训练得出valence(效价)、arousal(唤醒度)、dominance(优势)对应情绪轮的情绪,定义情绪轮1到8为正向情绪定义为0,9到16为负向情绪定义为1。替换DEAP数据库原有的标签为正向情绪或负向情绪。得到新的标签结合从DEAP数据库提取的特征值组成新的数据和标签通过多预测深度玻尔兹曼机对情绪进行分类。使用多预测深度玻尔兹曼机对正负情绪进行识别得到的准确率为88.3%。