DEAP(Database for Emotion Analysis using Physiological Signals)介绍

数据集申请方法及简单介绍

DEAP:Database for Emotion Analysis using Physiological Signals,即使用生理信号进行情绪分析的数据库。生理信号区别于情感照片、行为动作等易伪装信号,主要包括设备对人体采集的自主神经或中枢神经的信号。该数据集由英国Sander Koelstra等人团队建立的公开多模态数据库,官网数据集介绍论文,申请方法:

  • 去官网下载EULA用户协议,签名(中英文都可以),扫描电子版;
  • 使用学校的邮箱(edu,stu之类的),发送邮件[email protected]
  • 1-3天会收到授权即可,如下图
    在这里插入图片描述

数据集介绍

采集了32名(16名男性和16名女性)健康参与者的脑电数据。参加实

一、软件的具体操作 1.建一个文件夹,里面必须有四个文件(Dblank;deapdeap.000;123.dta)前三个文件在一般下载的DEAP Version 2.1中都有,直接复制过来就可以,第四个文件是一个数据文件,一般先在excel中先输入,再复制到一个记事本下就可以,注意在记事本下的数据只有数据,不包括决策单元的名称和投入、产出的名称,并且一定要先放产出,后是投入。例子具体见123电子表格和123记事本。 2.对命令Dblank文件进行修改,修改后保存为123.ins文件 3.打开deap软件,运行123.ins 4,回车后自动会有123.out 注意事项:(1) 123.dta;Dblank;123.ins都用记事本打开; (2)数据文件名和命令文件名一定要一样,如例子中都用123 (3)文件夹中一定要包括deap.000文件,如果没有这个文件,打开deap软件,就会出现一闪就没有了的情况。 二,结果的分析 在文件夹中打开123.out,看如下: 1) firm crste vrste scale 1 0.687 1.000 0.687 drs 2 0.814 1.000 0.814 drs 3 0.319 0.709 0.450 drs 4 1.000 1.000 1.000 - 5 1.000 1.000 1.000 - 6 0.336 0.425 0.791 drs 7 0.642 0.648 0.991 irs 8 0.379 0.381 0.994 irs 9 0.702 0.750 0.936 irs 10 1.000 1.000 1.000 - 11 0.304 0.461 0.659 irs 12 0.352 1.000 0.352 irs 13 1.000 1.000 1.000 - 14 0.594 0.929 0.639 irs 15 0.402 1.000 0.402 irs mean 0.635 0.820 0.781 firm:代表例子中的15的样本 crste:技术效率,也叫综合效率 vrste:纯技术效率 scale:规模效率(drs:规模报酬递减;-:规模报酬不变;irs:规模报酬递增) crste=vrste×scale 2) Results for firm: 3 Technical efficiency = 0.709 Scale efficiency = 0.450 (drs) PROJECTION SUMMARY: variable original radial slack projected value movement movement value output 1 7326.380 0.000 0.000 7326.380 output 2 119.910 0.000 0.000 119.910 input 1 15427.000 -4496.010 0.000 10930.990 input 2 5257.970 -1532.371 -1643.828 2081.771 第三个样本的具体分析如下: 纯技术效率=0.709 规模效率=0.450 (drs):规模报酬应该递减 第三个样本的投入产出情况分析: 第一、二产出均没有冗余情况(因为其 radial movement 和 slack movement 均为零) 第一个投入要素有投入冗余4496.010;第二投入要素有投入冗余3176.199=1532.371+1643.828 这个意思是说按第三个样本现在的产出冗余第一个投入要素可以减少4496.010,第二个投入要素可以减少3176.199 Results for firm: 8 Technical efficiency = 0.381 Scale efficiency = 0.994 (irs) PROJECTION SUMMARY: variable original radial slack projected value movement movement value output 1 235.860 0.000 0.000 235.860 output 2 3.760 0.000 6.995 10.755 input 1 777.000 -480.651 0.000 296.349 input 2 132.550 -81.995 0.000 50.555 第八个样本则出现了产出不足的情况,即第二个产出应该比现在增加 6.995 如果投入因素是决策单元可的决定的,而产出因素是不能决定的时,我们分析就可以考虑投入是否能减少,不管产出是否能增加(因为产出是决策单元不可控的因素) 如果产出因素是决策单元可的决定的,而投入因素是不能决定的时,我们分析就可以考虑产出是否能增加,不管投入是否能减少(因为投入是决策单元不可控的因素) 如果样本单元的纯技术效率为1,而规模效率小于1时,这说明样本单元本身的技术效率而言没有投入需要减少、没有产出需要增加;样本单元的综合效率没有达到有效(即1),是因为其规模和投入、产出不相匹配,需要增加规模或减少规模。如例子中的第二个样本单元,其规模应该缩小。
### DEAP框架用于情感分类 DEAP (Database for Emotion Analysis; Using Physiological signals) 是一个广泛应用于情感计算研究中的数据库,包含了由多种生理信号组成的数据集。该数据集特别适合于开发和测试基于EEG的情感识别模型[^1]。 为了实现基于DEAP的情感分类,在Python中通常会遵循以下方法论: #### 数据预处理 首先加载并清理来自DEAP的数据。这涉及读取原始EEG文件,并执行必要的预处理操作,如滤波、降噪以及分割成固定长度的时间窗口以便后续分析。 ```python import numpy as np from scipy import signal def preprocess_eeg(eeg_data, fs=128): """Preprocess EEG data including filtering and normalization.""" # Apply bandpass filter between 0.5 Hz to 40Hz b, a = signal.butter(4, [0.5/fs*2, 40/fs*2], 'band') filtered_data = signal.filtfilt(b, a, eeg_data) # Normalize the data normalized_data = (filtered_data - np.mean(filtered_data)) / np.std(filtered_data) return normalized_data ``` #### 特征提取与选择 接着是从经过预处理后的EEG记录中提取特征向量。这些可以是频域特性、时域统计指标或是通过更复杂的算法得到的空间模式等。 对于卷积循环神经网络(CRNN),可以直接输入时间序列而无需显式的特征工程过程,因为这类架构能够自动学习到有用的表示形式。 #### 构建CRNN模型 构建一个多头自注意力机制增强的卷积循环神经网络来完成情感分类任务。此结构允许捕捉长时间依赖关系的同时关注重要部分的信息流。 ```python import tensorflow as tf from tensorflow.keras.models import Model from tensorflow.keras.layers import Input, Conv1D, LSTM, Dense, MultiHeadAttention def build_crnn_model(input_shape=(32, 8064), num_classes=2): inputs = Input(shape=input_shape) x = Conv1D(filters=64, kernel_size=3, activation='relu')(inputs) x = LSTM(units=128, return_sequences=True)(x) attention_output = MultiHeadAttention(num_heads=8, key_dim=64)(x,x) flatten = tf.keras.layers.Flatten()(attention_output) outputs = Dense(num_classes, activation='softmax')(flatten) model = Model(inputs=inputs, outputs=outputs) model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=['accuracy']) return model ``` #### 训练与评估 最后一步是对上述定义好的模型进行训练,并利用预留出来的验证集对其进行性能评测。确保调整超参数以获得最佳效果。
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值