如何探索认知的神经机制:现代“读心术”(一) 杨颖 stat-neuro,neuroscience, machine learning “你是学心理学的,那你知道我在想什么吗?” “……”(默念我们又不是算命的……) 怎样才能猜到你在想什么呢? 我们脑中的数千亿神经元,时刻都在传递和处理信息,它们的活动实现了我们感觉,思维,运动甚至情感。如果能完全理解这些认知功能实现的原理,并且观测到相应神经元的活动,那我们就不会辜负大家对心理学“可以读心算命”的期待了。 但是理解神经机制一点都不容易,不过目前的研究还是有很多有趣的进展。这篇文章中,我们就来粗浅地讨论一下如何进行这样的探索,特别是如何利用目前热门的机器学习 / 统计学手段。 “读心”之所以可行,是因为我们的脑内各个脑区的神经信号和外界刺激或认知过程有极高的相关性。我们研究的首要目的是准确地描述神经信号和它们的关系,即建立编码模型,这样才可能根据神经活动进行解码:例如“用脑信号直接控制机器手”,“想什么让电脑帮你说出来”等等。请注意,虽然我用了“读心”来吸引眼球,但是编码模型远比解码这一应用更重要,从模型中,我们可以了解认知过程的复杂度,甚至模拟出与人脑原理类似的人工智能算法,也可以干预认知的神经过程进行治疗。所以,我们着重讲述如何从观测到的神经信号建立编码模型。由于篇幅略长,下文分为 (1) “如何观测神经信号”,(2) “如何应用统计手段分析神经信号”和 (3) “当前挑战和未来展望”三个部分展开。 1. 如何观测神经信号 我们可以在不同尺度上读取与神经活动相关的信号。这些读取技术的时间和空间分辨率,以及信噪比各有特点。 在毫秒和微米的尺度上,每个神经元的细胞膜表面都有随时间变化的电位,一般需要用吸破一小块细胞膜,让电极和剩下的细胞膜接在一起测量(膜片钳技术 patch clamp)。但是这个过程需要侵入脑部,定位单个神经元,费时费力,很难在清醒的动物脑内同时采集大量神经元的数据。好在神经元编码信息的主要信号是脉冲式锋电位 (spike,见图 1),因此即使退一步,把一个电极(或电极阵列)植入动物脑中,在细胞外也可以记录到多个神经元的锋电位。锋电位的发放频率常常编码了重要信息,所以电极(阵列)是目前主流的时间和空间分辨率比较高的观测方式。 图 1 用 (HHSIM) 模拟的神经元锋电位 (时间单位 毫秒) 如果时间精度在毫秒级别或者更高,我们可以认为锋电位是 0/1 离散时间序列,1 为脉冲发放。目前最常观测到的编码方式是锋电位的发放频率编码。这样的例子在众多,这里我们只举一个简单的。在大鼠的海马 (hippocampus) 脑区,有 一种叫位置细胞 (place cell) 的神经元。对于每个这样的神经元,当大鼠经过它熟悉的环境中某一特定区域的时候发放频率会明显升高。如此每个神经元代表地图上的一部分,一群神经元就可以覆盖整张地图 (图 2)。这样如果实时观测这些神经元的发放频率,我们就可以预测大鼠的位置啦。“读心术”就是这么厉害! 图 2 不同海马神经元发放锋电位时大鼠在一维迷宫内对应的位置,每个颜色为一个神经元。图片来源: 维基百科 Place cell 除 了 0/1 锋电位发放以外,还有其他一些间接的,由神经元电活动产生的信号也可以编码信息。不论在那种时间和空间尺度上,观察这些间接信号也可以帮助我们理解认知过程。微电极阵列虽然时空分辨率都很高,但是需要精确地植入固定脑区,没有办法覆盖全脑,一般多用于猴子和鼠等实验动物,不能用在健康人身上。目前关于人类认知功能的研究,我们主要利用两种脑成像手段,功能性核磁共振 (fMRI) 以及脑电图 / 脑磁图 (EEG /MEG)。它们测量的是上千甚至上万神经元活动产生的间接信号,其空间精度和和电极阵列远不能相比,但是记录区域基本可以覆盖全脑,而且不会侵入或伤害实验参与者,因此是目前研究人脑最为流行的技术. fMRI 测量的是某一脑区血液中氧含量的变化。当该脑区大量神经元活动加强时,耗氧量增加,局部的血氧含量随之变化,反映在 fMRI 测量值上。这种血氧含量时间响应通常大于 6 秒(图 3),而锋电位的时间精度在毫秒级,因此 fMRI 信号的时间分辨率非常低; 但是其毫米级的空间分辨率在非侵入式脑成像手段中是最高 的。即便如此,fMRI 每个三维像素 (voxel) 里有上万的神经元,因此如果仅有几个到几百个稀疏的神经元编码,那么我们很难通过 fMRI 观测到这些信号。虽然有这些局限性,fMRI 的应用还是打开了新世界大门,成为近 20 年来了解大脑的利器. 图 3 fMRI 和 fMRI 缓慢的血氧信号不同,脑电图 (EEG) 和脑磁图 (MEG) 利用的是基本的电磁学原理,测量群体神经元的电活动。大脑皮层是一个被折叠的曲面,曲面每一点及附近的数万神经元信号传递基本都朝向垂直曲面的方向。当它们同步活动时,会产生一个宏观的垂直曲面的电流。我们在头皮表面安放一些电极,就可以测到这样的电流引起的电势差变化,即脑电图 (EEG)。类似地,这样的宏观电流还会引起头周围磁场的变化,因此可以在头周围用传感器测量磁场变化,即脑磁图 (MEG)。这种信号的时间分辨率可以达到毫秒级,非常精确,但是空间分辨率却比 fMRI 差很多。这是因为现有技术只能放置 100-300 个电极或者传感器,每个电极的信号是来自全脑电流的总和(积分)。根据电极信号还原脑内电流,可能有无穷多个解。为了得到唯一解,我们需要加上各种约束条件 (比如 L1/L2 范数规则化,L1/L2 regularization),或者贝叶斯先验分布,可是这些解都不能保证是真实解。当然,如果不专门研究神经活动的空间分布,只是为了“读心”,MEG/EEG 的高时间分辨率无疑是很大的优势。其中,EEG 的测量对仪 器要求相对低一些,更是各种可穿待设备应用的首选。 此外,还有许多其他技术,比如皮层脑电图 (eCog),近红外光谱技术 (NIRS),钙离子成像 (calcium imaging) 等等。由于篇幅限制,在此先略去,可能会在第 3 部分简单提到。 预警: 由于作者水平有限,前方蹩脚的统计和机器学习术语及中文翻译密集,请海涵或跳读。 2. 如何应用统计手段分析神经信号 如上所述,分析的关键是建立编码模型。如果把记录到的神经信号记做 X,用 Y 表示外部刺激,实验条件或者实验参与者的行为,这个模型就是描述 X 和 Y 的关系。X 通常是多维的,维度可以代表微电极阵列或者 MEG/EEG 里的多个电极 / 传感器,fMRI 里的三维像素,或者通过主成分分析 (principle component analysis,PCA) 降维处理得到的抽象维度。Y 是由实验设计决定的,比如在大家熟知的 “实验组 vs 对照组” 的设定下,Y 可以是 0/1 二元的。Y 也可以是连续的,比如外部刺激的一些特征,或者参与者的反应时间,识别正确率等指标。 最简单的联系 X 和 Y 的手段就是线性回归 (linear regression)。我们通常看到的 fMRI 图片中哪个脑区”亮了”,就是将每个三维像素的 X 回归到实验不同条件的标志 Y 上得到的。比如下图 (图 4) 中,红色是在知乎曝光率很高的梭状回面孔区 (fusiform face area),这个区域就是比较参与者看到脸和看到其他物体两个条件下 fMRI 测量值的差别得到的,也就是把每个三维像素的 fMRI 信号回归到 Y = 1 (脸) / 0 (其他物体),然后检验两个条件下的回归系数差,标出差别显著的脑区。图中还有类似的对地点敏感的脑区 (地点场景 > 普通物体),以及对物体敏感的脑区(物体图片 > 没有固定形状的随机图案)。这种对比一度是 fMRI 最为流行的分析方式,听自己名字是不是和听别人名字激活不一样的脑区?疼痛激活那个脑区?都用 fMRI 扫一扫,看一看,总能找到显著差别的脑区。这种思路符合这样的理论: 我们很多的脑区专司一种特殊的功能,各个脑区分工细致. 图 4 对于物体,脸和地点敏感的脑区 (物体: 蓝色,脸: 红色,地点 绿色)。[Grill-Spector et al.,2008] 这种细化专一分工的观点或许并不是很差的编码模型,看哪里亮了就知道你在想什么了嘛。想桌子桌子区亮,想椅子椅子区亮,不是都解决了吗?可惜大脑编码物体类别的方式似乎不完全是这样。机器学习对脑成像领域近年来重要的一个贡献,就是让研究者不再止步于一维的对于每个三维像素的分析,而是把众多三维像素看成向量联合分析,比如识别出眼前看到的物体是椅子,可能并不存在一个很小的椅子脑区,而是一片脑区内各个三维像素的活动分布集体代表椅子。也就是说物体识别可能是分布式的 (distributed),见图 5. 图 5 分布式编码 [Haxby et al,2001] 代表椅子和鞋的分布,当把实验次数分成两半(上下),代表椅子的分布类似(相关系数=0.45),与代表鞋的分布则不那么相似(相关系数= -0.12). 这种情况可以用回归吗,其实也可以(即 multi-task learning 多任务学习),不过既然 Y 代表实验条件类别,用 fMRI 值 X 作为特征来分类 Y 好像更容易些。请看图 6 中两个维度的简单演示。只考虑任意一个维度(横轴或者纵轴上的曲线),两个颜色较难分开,但是当我们同时考虑两个维度时,红蓝两个类别可以轻易用一条直线分开,这种情况下,多维分析比一维分析更敏感。当我们应用分类器时,如果分类正确率显著高于瞎猜,那么 X 就编码了关于 Y 的信息。于是用分类器 (classifiers) 分析多个三维像素的方法又席卷脑成像领域。分类器的参数都要从训练样本中学习得到,于是研究者通常吧观测的数据分成两份,一份用来训练分类器,另一份作为测试集,用来检验正确率是不是高于瞎猜. 图 6 [Haynes & Rees,2006] 依照两个三维像素分类实验条件(红色 vs 蓝色)的示意图。图中单个维度上,很难分开红色和蓝色,但是如果两个维度一起考虑,红色和蓝色可以轻易用一条直线分开. 通常大家用比较简单的分类器,例如线性支持向量机 (support vector machine),Logistic 回归,K 最近邻法等等 )。为什么不用复杂的?因为脑成像实验一般非常昂贵,我们能采到的数据点有限,如果分类器的参数很多,很容易过度拟合 (overfit),虽然在训练集上准确率很高,但是在测试集上准确率却会较差。比如下图 7,还是以简单的二维向量为例。左边是训练集,右边是测试集。他们是根据同一分布独立抽出的。我设定这个分布时,如果数据无穷多,真实的最好的分类器是线性分类器。现在训练点的个数比较有限,且训练时要最大化训练正确率,如果只用线性分类器,黑色的线最好,不过它的准确率不是 100%。如果允许更复杂的非线性分类器,我们可能会得到类似浅蓝色的分类边界。它可以 100% 分对训练集。图右是和训练集相同分布的测试集,由于浅蓝色分类器过度拟合,想要严格分对训练集的每个点,包括其中少数不能被最佳分类器分对的”噪声”点,因此它在 在测试集上反而表现较差. 图 7 过度拟合 左: 训练集,右 测试集. 同理,fMRI 通常会有约百万个三维像素,也就是 X 的维度很大。训练这么高维的分类器很容易过度拟合,需要减少关心的维度。解决办法一是用一维回归挑出一少部分三维像素,二是用贪心算法逐步增加三维像素,三是在分类器上加惩罚(比如 L1/L2 范数惩罚)来减小分类器的复杂度。最后还有一种聚光灯法 (search-light),对每一个三维像素,只选它周围 5x5 立方体或者半径为 5 左右的球体内所有三维像素进行分析。找出所有测试准确率较高的脑区。立方体和球体的半径也可以更大或者更小. 这些办法中总会有个调整参数 (tuning parameter) 需要调节,比如到底用多少维,L1/L2 惩罚多大。怎么选这个参数呢?由图 7 看出,训练准确率并不是越高越好,只有用完全独立的测试集得到的准确率高才可信。所以我们可以把训练集分成两部分 A 和 B,在 A 上用不同调整参数训练,在 B (验证集) 上估算准确率。因为 A,B 独立,最大化这个准确率可以减少过度拟合。有时候训练数据太少,可以交叉验证 (cross-validation) ,对每个调整参数,再在 B 上训练,在 A 上求准确率,再把两者取平均。因为 AB 独立这个平均也是可信的,可以用这个平均选出最好的调整参数。当也可以分 K 份,把每份当验证集,用剩下的 K-1 分训练,然后取平均,找最好的调整参数. 多维分类器分析方法往往和一维回归分析互补,可以用来研究大脑编码不同方面。例如下面图 8,用聚光灯法找到的可以区分个体人脸而不被表情影响的脑区。其中左上右边的红色区域大概在梭状回面孔区附近(虽然可能不完全重合),表明这个对脸敏感的脑区也可以识别不同人的脸。而这样的结果用一维回归分析可能较难得到。 图 8 [Nestor et al.,2011] 利用聚光灯分类器分析找到的可以识别个体人脸的脑区。 那各脑区专司其职和分布式编码哪个才对呢。其实我觉得都有道理,二者也不是完全矛盾。毕竟我们找到了那么多功能特异的脑区,其中的神经元对于外界刺激一定有一些偏向性。但是这并不代表这些神经元对其他刺激没有响应,因此分布式应该是更自然和高效的编码方式。 除了分类器,我们也可以用相似度分析 (similarity analysis) 来研究多维神经信号。比如图 9 里,Kriegeskorte 等研究者给让实验参与者观看了 96 张不同物体的图片,其中包括有生命 / 无生命物体,有生命物体包括人类 / 其他动物,无生命物体包括自然和人造物体。他们读取了下颞叶的 fMRI 三维像素的信号。将每张图对应的 fMRI 信号作为一个向量,然后衡量两两图片间向量们的距离。这个距离可以是欧氏距离 (euclidean distance),或者其他距离(比如 1- 相关系数等)。最后得到一个距离矩阵 (图 9 右)。从中我们可以清楚地看到人脸图片间的距离很近,有生命物体间的距离也比到无生命物体的距离小很多。这样如果我们用 K 最近邻法,可以轻松分开有生命和无生命物体。图 9 左利用多维标度法 (multidimensional scaling),排列过程中保证二维平面的欧氏距离尽可能接近图右的距离矩阵。这样方便直观地看出哪些物体聚集在一起。不仅如此,Kriegeskorte 等研究者也同样分析了猴子相应脑区电极记录的神经元信号的距离矩阵,发现两个距离矩阵的元素显著相关。所以聪明的猴子们的物体识别和我们其实挺像耶! 图 9 [Kriegeskorte et al.,2008] 右: 下颞叶 fMRI 信号对应 96 个物体两两距离的矩阵。左: 使用多维标度法(multidimensional scaling) 得到的二维平面内 96 个物体的重新排列. 最后,我们也用计算机视觉提取这些图片的一些特征,算出类似的距离矩阵,然后分析神经信号的距离矩阵和计算机视觉特征的距离矩阵元素们的相关性。研究者发现目前火热的卷积神经网络(convolutional neural net) 的较高级神经元层和下颞叶的神经信号也很像 [Khaligh-Razavi & Kriegeskorte,2013]. 由于篇幅所限,我们暂时停在这里。更多酷炫进展请看下篇. 致谢: 感谢@Yuanning@PC ZHOU 和主编@TINA LIU 的辛勤审校。 图片来源: 图 2 源自维基百科,剩余图片中,标注出处的来自文献正文,未标注的为作者绘制. 本文非获得作者本人同意严禁转载(获得主编 TINA LIU 预授权的知乎团队除外) 参考文献: Grill-Spector,K.,Golarai,G.,& Gabrieli,J。(2008)。Developmental neuroimaging of the human ventral visual cortex。Trends in cognitive sciences,12(4),152-162. Haxby,J。V.,Gobbini,M。I.,Furey,M。L.,Ishai,A.,Schouten,J。L.,& Pietrini,P。(2001)。Distributed and overlapping representations of faces and objects in ventral temporal cortex。Science,293(5539),2425-2430. Haynes,J。D.,& Rees,G。(2006)。Decoding mental states from brain activity in humans。Nature Reviews Neuroscience,7(7),523-534. Kriegeskorte,N.,Mur,M.,Ruff,D。A.,Kiani,R.,Bodurka,J.,Esteky,H.,…… & Bandettini,P。A。(2008)。Matching categorical object representations in inferior temporal cortex of man and monkey。Neuron,60(6),1126-1141. Khaligh-Razavi S-M,Kriegeskorte N (2014) Deep Supervised,but Not Unsupervised,Models May Explain IT Cortical Representation。PLoS Comput Biol 10(11): e1003915。doi:10.1371/journal.pcbi.1003915 Nestor,A.,Plaut,D。C.,& Behrmann,M。(2011)。Unraveling the distributed neural code of facial identity through spatiotemporal pattern analysis。Proceedings of the National Academy of Sciences,108(24),9998-10003. ——————————————— 发自知乎专栏「通往心灵中央的旅程」