BCI2000中P300 Classifier详解.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
BCI2000中P300 Classifier详解

* P300特征提取 周展鹏 2012-01-11 * P300Classifier概要 此软件是训练和测试一个针对诱发电位相关检测的线性分类器。此软件分析我们用P3Speller范式得到的数据,并利用逐步线性判别分析得到特征权重。而此权重可以保存并且作为参数导入到在线测试系统用于自由拼写。 * 目录 导入数据文件 得到P300响应 应用SWLDA生成特征权值 用线性分类器分类 * 数据导入 在matlab里,调用load_bcidat()导入BCI2000数据文件. 其中: StimulusBegin:1表示刺激开始的时刻 StimulusType:1表示选定的字母闪的位置 StimulusCode:数字表示闪的是第几行或第几列 * 得到P300响应 stimulusCode stimulusType * 得到P300响应 其中 m为刺激总数,k为通道数, 是每个通道记录的样本点数,t为刺激记录时间,Fs是采样频率 * 得到P300响应 假设数据是8通道并且采样频率是256, m = 12x15x5 = 900, l = 8, p = round(256x0.800) = 205 这个矩阵的大小就是900X1640 * 滤波(Moving Average (MA) Filter) 这是一个直接型FIR(有限冲激响应数字滤波器) 作用是作为低通滤波器,除去信号中的高频部分 实现公式 在这里滤波阶数是13 * 降频 for(int i=0; i16; i++) y(i) = x(i*ds_factor); 降频因子跟滤波阶数一样,都是13 这样矩阵的大小就变为900X128 * Code Type 这里要打的字是WATER “W”在第4行,第5列 * 逐步判别分析算法(SWLDA) 多元线性回归模型 设自变量 与因变量 y之间,有下列关系: 其中 是常数, ~ 是表示误差的随机变量 对 进行n次观察,得到一组观测值 对 的估计,使得 达到最小, 的最小值, 称为残差平方和 * 逐步判别分析算法(SWLDA) 多元线性回归模型 * 逐步判别分析算法(SWLDA) “最优”的回归方程就是包含所有对Y有影响的变量, 而不包含对Y影响不显著的变量回归方程。 选择“最优”的回归方程有以下几种方法: (1)从所有可能的因子(变量)组合的回归方程中选择最优者; (2)从包含全部变量的回归方程中逐次剔除不显著因子; (3)从一个变量开始,把变量逐个引入方程; (4)“有进有出”的逐步回归分析。 以第四种方法,即逐步回归分析法在筛选变量方面较为理想. * 逐步判别分析算法(SWLDA) 这个过程反复进行,直至既无不显著的变量从回归方程中剔除, 又无显著变量可引入回归方程时为止。 逐步回归分析法的思想: 从一个自变量开始,视自变量Y作用的显著程度,从大到小地依次逐个引入到回归方程。 当引入的自变量由于后面变量的引入而变得不显著时,要将其剔除掉。 引入一个自变量或从回归方程中剔除一个自变量,为逐步回归的 一步。 对于每一步都要进行t-检验,以确保每次引入新的显著性变量 前回归方程中只包含对Y作用显著的变量。 * t-检验 假设: 当 成立时 其中 为 对角线上第k个元素,p为已有的非常数变量数 当 时,拒绝假设 当P值Penter,拒绝假设,自变量对y显著,引入这个自变量 当P值Premove,接受假设,自变量对y不显著,去掉这个自变量 Penter=0.1 Premove=0.15 * Label * 逐步判别分析算法(SWLDA) [b,se,pval,inmodel,stats,nextstep,history] = stepwisefit(Data,Label,penter,0.1,premove,0.15,maxiter,60); b:存的是最终线性模型的权系数 pval:每个自变量对应的p值 inmodel:1表示对应位置的自变量在模型里 index=find(inmodel~=0); Variables=b(index); Variables=10*Variables/max(abs(Variables)); * 逐步判别分析算法(SWLDA) * 线性器分类 其中Y是900X1 * 线性器分类 * 线性器分类 predicted row = predicte

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档