计算神经学-甲一, 概述与神经元基础

大概在四年前了解到计算神经学这一学科. 当时感觉这应该是自己最终的归宿, 先后在coursera上跟过神经元与脑、 计算神经科学两门课程, 但是都没有完成.

17后期到18年, 由于个人感情的问题, 整个人的成长接近停滞. 今年好容易状态恢复. 又拾起这本dayan & abbott经典的<Theoretical Neuroscience>, 准备系统的入个门.

概述

意识问题是现代科学的基本问题之一, 不同的学科对之有不同层次的理解, 并分别试图从各自的角度来解决这一问题.
生物物理学从的意识的物理材料入手, 研究神经元、 神经回路的物理性质、电化学性质, 以此来理解意识问题. 神经科学试图从神经元, 大脑皮层的层面来探索不同脑组织的功能, 通过整合不同大脑模块, 形成意识的初步图景, 这两者都是从还原论的视角来逼近意识问题.
而心理和认知科学则从功能应用的角度出发, 探索意识的作用, 汇总在面临不同情况时, 意识的反应模式及其功能表现, 试图通过描述意识的外在表现来了解意识.
同时还有人工智能学科, 通过数学与统计学, 在类比建模的基础, 使用电子芯片来完成类似于意识的同样功能, 从而反推意识问题的计算本质.
然而, 前两者过于微观, 事实上, 从细胞到组织, 从组织到大脑之间, 这些不同层次间有着巨大的鸿沟, 整体并不等于个体的简单加和, 这也就是网络科学所谈的"涌现", 因此, 单纯地研究单个细胞的功能对理解整体固然有益, 但是不从全局的视角来理解每一部分所起的作用的话, 很难将纷繁的生物组织性质纳入统一的框架. 从而总结出具有启发性的观点.
心理与认知科学则过于聚焦在对不同功能的列举性描述, 缺乏对于不同认知功能的系统性归纳. 对于研究意识来说, 目的性不强. 而人工智能的曲线救国路径, 虽然能够建造精妙的智能机器, 却仍然需要更多的工作来去芜存精, 对所推出与的结论与神经科学的生物事实放在一起, 进行关联比较分析, 厘定到底哪些是意识计算所必须和共通的部分, 而又有哪些是受限于特定的计算架构和算法的, 独特的部分(如gpu分布式计算, 或反向传播算法).

计算神经科学, 就是这其中缺失的一环.
计算神经科学, 致力于汇总不同层次的已知实验现象和解剖学事实, 归纳比较不同生物组织的功能和作用, 通过数学和信息论的视角来将这些知识综合在一起, 解释从生物神经元、 神经回路到心理行为的计算过程. 对于智能提出一个统一的框架.

简单来说, 就是分析神经系统能做什么, 它们是通过什么结构, 利用哪些性质来做到的. 为什么它们要通过这样的方式, 组织成这样的形态来完成这一目的.

三种模型

计算神经学科中的模型的可以分为描述性模型, 机制性模型和解释性模型三种.

描述性模型(descriptive models)

描述性模型整理某一类神经元或者神经结构的大量实验数据, 总结这些数据, 并提出一个计算模型, 这个模型能够良好的适配数据, 说明该神经元或者神经结构都做了什么. 举例来说, 假说我们现在要提出一个神经元的描述性模型, 我们拿到不同实验中, 神经元的输入动作电位和输出动作电位, 然后我们提出了McCulloch-Pitts模型, 完美解释了之前的实验数据, 那么这就是一个很好的描述性模型, 描述性模型更像是一个黑盒模型, 在这里, 我们关心的是神经元到底做了什么---轴突加权和, 非线性转换并转出---而不关心它是怎么做到的.

机制性模型(mechanistic models)

机制性模型则更进一步, 需要理解神经元是怎么做到, 以上面例子来讲, 在神经元的生物形态中, 怎样通过轴突, 树突, 细胞膜和这离子通道来实现一个 *非线性加权和* 的电位过程, 这就需要把解剖学事实、生物物理性质、以及之前的输入输出数据结合在一起, 给出一个符合观测的过程说明. 机制性模型通常会把不同层次的描述性模型联系起来. 还以神经元为例, 在神经元的层面, 一个描述性模型是McCulloch-Pitts模型, 而在离子通道层面, 我们又有一个描述离子通道的翘翘板数学模型(临时起个名字), 那么一个好的机制性模型就会联系这两者, 结合解剖学结构, 说明一个翘翘板样电位值变化如何嵌入非线性加权和的模型中. 从而解释神经元做了什么, 是怎么做到的.

解释性模型(interpretive models)

解释性模型更为宏观, 一般会从可计算理论以及信息论的角度出发, 来理解为什么神经元要这么做, 一个非线性加权和的操作对于这个神经元参加的认知功能是必要的么, 为什么神经元会形成这样的机制, 以这样的执行方式来处理这个问题. 这就是一个典型的解释性模型所要回答的问题.

书的章节安排

本书分三大部分, 一是神经编码和解码, 二是神经元和神经回路, 三是适应和学习.
神经编码和解码主要讨论, 神经系统是通过何种方式把不同的外部信息存储在大脑中的, 这种信息编码方式是什么, 以及在需要对外界反馈的时候, 又是如何将内部编码进行解码, 最终无碍且智能在这个大千世界中行走的. 也就是说, 神经元是如何存储图像, 声音, 文字, 运动反馈等等不同信号的, 又是如何将这种存储提取出来转换为外部信息对外界进行反应的.

神经元和神经回路讨论神经元和实现机制, 电传导机制, 并进一步在神经元的基础上, 讨论神经元聚合之后的神经回路(神经网络)的种类和功能, 在这一部分, 有大家喜闻乐见的前向神经网络, 递归神经网络, 兴奋抑制网络和随机神经网络等内容.

最后一部分将探讨神经可塑性, 经典条件反射与操作性条件学习, 以及当下大热的Representation Learning.

神经元的生物结构与神经脉冲

神经元的基本结构已经是众人皆知的模型了, 地球人都知道它由轴突(axon), 树突(dendrites), 细胞核(the soma of cell)三大部分组成, 其中轴突输出, 树突输入, 细胞核处理输入. 整个输入输出以动作电位(action potential)的形式传输. 其概念图如下图所示.

那么我们列举一些不那么广为人知的事情:
1. 不同神经元接受的连接数不同, 典型的如皮层金字塔形神经元(cortical pyramidal neuron), 皮层中间神经元(cortical pyramidal neuron)接受千数量级的连接, 而特别的如小脑浦肯野神经元(Purkinje cell)可以接受多达10万个连接.

2. 轴突的传输距离极长, 甚至可以横跨整个身体. 在小鼠的大脑中, 典型的一个轴突长达4厘米, 每毫米平均有180个与其他树突的连接, 而一个树突, 平均每微米就都有两个神经连接. 与之对比的是, 神经元的细胞核直径大约也只有10微米到50微米, 一微米为百万分之一米.
3. 通常将神经元所处的脑容液的神经电位视为0mv, 这样的神经元内部相对与脑容液为-70mv, 此时这个神经元称为极化细胞, 同时此时的电位差称为静息电位.
4. 默认情况下, 带一个正电子的钠离子在细胞外浓度较高, 而同样带一个正电子的钾离子,在细胞内浓度较高. 当离子浓度差或者电位差导致离子泵打开时, 离子可以在细胞内外进行流动. 如果流动导致膜内外电位差增大, 则称为超极化, 而若使其减小, 甚至使其归零, 则称为去极化.
5. 如果去极化的幅度超过阈值, 那么细胞将产生动作电位, 一个典型的动作电位的电位差大约在100mv, 并能够持续约1ms.
6. 在一个动作电位发动后的几毫秒, 基本上神经元不可能再发动另一次神经脉冲, 这个时间区间称为绝对不应期(absolute refractory period)(好想翻译成绝对静默期啊), 而一个动作电位发动后的数十毫秒, 一般很难再发动一次神经脉冲, 这则称为相对不应期(relative refractory period).
7. 一旦称为动作电位, 即指这些能够进行长距离信息传输的惟一脉冲, 而那些电位差阈值不过限的subthreshold potential, 一般只能传输1毫米那么长...
8. 动作电位传输到轴突末端时, 二价钙离子流出, 并导致神经递质释放, 从而引起下一个神经元的超极化或者去极化反应.

嗯, 今天就总结到这儿. 下周见.

最后一个难题.

大约七八岁的时候, 不知是哪部科幻电影的触发, 我开始思考起时空穿越的问题. 我想象在某一个时空中, 有两个自己同时存在, 甚至面对面谈笑说话, 这种想象让我觉得很奇妙, 似乎自己可以借机遁出自己的肉身, 以一个未来版本的心智来重新感触世界.

光想想象自己一个新的躯壳中, 似乎中就能改变自己的认知, 在这种想象之下, 身边熟悉的事物会重新变得鲜活起来.
这样说似乎有点抽象, 不过有另外一个经验说起来可能每个人都有所体验.

有时或者是被罚抄写, 或者是要练字, 你要写一个汉字重复几十次, 甚至几百次, 在某一个瞬间, 突然这个汉字变得别扭起来, 你会产生一样非常陌生, 异常的观感, 就是这个字怎么是这么个样子呢.

那种感觉就是一种混合着陌生和熟悉的体验.

从类似这种体验出发, 我还思考过很多问题, 比如梦醒之后的我还是不是我, 如果我被克隆或者复制了, 那么那个两个我同在存在的感觉是什么样子的. 等等.

现在回头看这些问题, 有不少都属于意识科学的范畴, 有一些是偏科学, 而有一些只是没有多大价值的玄想而已.

虽然意识这个问题是如此重要, 又如此与每个人息息相关, 但是在长一段时间内, 在整个科学界, 它都是一个被无视的问题.

要谈到这个问题, 首先还是老生重谈笛卡尔的二元论.

笛卡尔二元论

笛卡尔二元论: 存在物质的世界与精神的世界, 这两个世界截然分明, 性质不同.

似乎到这里, 问题就结束了, 毕竟在日常生活中"物质世界" , "精神世界"的词汇使用已经约定俗成, 而这种分类也是如此的符合直观. 那么还有什么好说的呢?

然而问题才刚刚开始.

在笛卡尔的论述中, 物质和精神通过松果体来进行交互, 但是给出一个断言式的器官并不等于已经解释了这两者的关系. 稍做追问就会发现这种二分类漏洞百出.

唯物主义

比如当我在主观视角和客观视角中进行切换的时候, 我就会发现从客观视角来看其他人, 其他人有没有意识似乎无关紧要. 毕竟和我打交道的人总要通过某种行为来让我获取某种信息. 而这和任何动物, 机器并无二致. 特别是在当今计算机发达的情况下, 一个智能机器人如果做得还不错(比如google语音助手预订理发师的展示), 那么他和一个人没什么二样, 我可以清晰地剖析出在这个智能行为中, 有多少行代码, 哪一行起着什么样的作用, 以及那个惊为天人的"嗯哼"又是通过什么程序设计来实现的.

更兼之, 我也知道意识是强依存于物质而存在的, 不同的大脑损伤, 会导致不同的异常行为,而大脑一旦缺血超过一定时间进入脑死亡, 此人的"意识"行为也随之消散.

归纳一下来说, 在笛卡尔的观点, 精神和物质是各种独立完全不同的两种存在方式. 这也是一些灵魂说, 神学宗教所共同秉持的观点.

而经受过现在科学洗礼(受过高等教育, 出入上流社会的我)当然不同这种迷信的观点. 从逻辑上来说, 意识对脑的依存逻辑显得易见, 脑为意识的前提, 脑损则意识损, 发达的脑如人类的意识水平与不发达的大脑如猩猩的意识水平差异明显. 没有一例独立的脱离脑而存在的意识现象. 这些都必然的指向, 意识的物质基础.

看起来, 我踢倒了笛卡尔落后的二元论, 走向了科学的唯物主义.

然而既然在唯物主义的框架, 我所拥有的只有特质, 那么我脑海此刻翻腾的又是什么呢?
是什么在午夜清唱, 是什么在望月怀想, 是什么在抚膺长叹, 是什么在慷慨激昂?

等同理论与属性二元论.

等同理论或者属性二元论的, 也许是目前对意识科学有所了解的人相对最多人认同的观点了, 在等同理论中, 大脑中的神经元的活动与意识的想象是同构的. 两者没有先后顺序, 也不存在谁决定谁这回事, 这两者原本就是一回事.

等同理论的实质其实是是指意识是一个分布式控制系统的副现象.
所谓分布式控制系统, 典型的比如神经元, 蚁群和蜂群, 在这种分布式控制系统中, 每个单元遵循简单的规则, 但是当单元聚合在一起, 却可以形成复杂的行为模式. 比如蚁群可以结团避火渡水, 而神经元更是可以呈现出复杂的行为.

而属性二元论, 即是指, 在意识的这个问题, 神经元虽然只有一种物质实体, 但是却具有两种属性, 所以在伴生着神经元的预测,推理, 判断的同时, 也产生了人类的主观体验. 这同样是在不同尺度上描述的同一件事情.

关于等同理论和属性二元论, 经常被人拿出来说的一个例子是剑桥谬误.

传说有个二傻子去剑桥大学参观, 但是剑桥是没有围墙和牌子的, 于是这个二傻子走到了图书馆看了看, 嗯, 这个是图书馆, 不是剑桥.
然后去了教学楼, 嗯, 这个是教学楼, 也不是剑桥大学. 于是这个二傻子走了一天也没有找到剑桥大学到底在哪儿.

所以持等同理论的人会认为, 意识问题其实没有什么神秘的, 也没有什么难的, 无非是世界有一大帮子二傻子天天研究神经元, 却不知道这些神经元的活动其实就是意识而已.

等同理论?

不得不承认, 等同理论有相当强的说服力, 而且由于当前基于神经网络的人工智能的发展, 人们也已经看到神经元的聚合确实能够实现各种精妙的算法, 复杂的行为, 沿着这个思路走下去. 似乎天下太平, 世界大同.

但是且问一个问题, 这些神经网络有意识么?

这个问题又把这么多论述打回了解放前. 毕竟, 对于当前的人工智能来说, 或者进一步讲, 蚁群和蜂群来说, 说他有意识, 似乎也太过牵强.
这牵强一方面是来源于这些系统的复杂性与人类相比, 还过于逊色, 更重要的是, 对于这种确定性运算的神经网络, 它的整个过程与我理解的意识是不同的.

就像开头时那些年少时的玄想一样, 我分明的体验到在我的意识中, 有一个"我"的概念, 在主动的写下这篇文章, 并不断地在对"唯物主义", "笛卡尔"等等概念进行符号操作和处理.

用等同理论的视角来看, 我的脑海中有一团网络结构, 它现在变成了这个构型, 接着又变成了那个构型, 随着构型的改变, 表示"唯物主义"这个概念的一个网络构型亮起然后再熄灭.

在这个过程中, 我的体验的作用何在?

也就是说, 如果等同理论成立的话, 那么即使我完全没有体验和意识, 这一切仍然可以通过网络构型的不断变化来敲下这篇文章.
说得再明白一点, 假设我是一个没有体验和意识, 头脑空空的僵尸, 但是仍然能够进行神经元的操作, 那么这一切其实没有什么不同.

所以我的意识在等同理论中, 其实根本没有存在的价值.

本着一个最基本的哲学信条, 也就是奥卡姆剃刀原理, 我认为如果完全接受等同理论的话, 那么就必须回答一个问题, "意识的作用是什么".

如果无法回答这个问题, 那么等同理论也就没有对意识问题做出回答, 它的实质是表示"意识不存在".

意识的作用是什么?

对地意识的作用的惟一的相对可信服的回答, 可能来自Dennett, Dennet表示意识是一种自我表征. 也就说, 神经网络在进行符号运算, 需要有一个东西能够表征神经网络本身, 这个表征就是意识. 意识中保存了关于这个神经网络(及所属的这个男人)的符号, 并在这个符号与外部的其他符号(如一个苹果)进行运算时(饿了, 需要吃), 能够对自己进行表示.

在这个观点中, 出现了有趣的自咬合结构: 一个神经网络表征了表示自己的符号, 同时能够对这个符号进行操作.
就像一条蛇咬往自己的尾巴, 像一个人拎着头发把自己揪起来.

这就是所谓的自指.
在这个自指中, 重要的关键是, 一个东西有着双重的含义, 用计算机的语言来说, 它需要同时是操作符与操作数.
操作符也就是运算方, 那个动作的发起者. 神经网络.
操作数是是被计算方, 那个动作的承受者, (表示)神经网络(自身的符号).

所以当我在想, 我饿成狗, 我要去吃掉那个苹果时.
就是神经网络对(表示神经网络的符号"我")和(表示苹果的符号"苹果")进行运算, 得出结论.

在这个过程中, 对自己的表征是必须的.

这也就是大名鼎鼎的侯世达在著名的GEB中提出"智能(或者意识)的本质是自指)"这种观点的逻辑所在.

结束了么?

很遗憾, 并没有, 因为这种讨论依然没有解决我们的问题, 即使神经网络可以表征自己, 可以进行符号运算. 那么在这个运算中, 我们的那种体验是怎么回事?

Dennett对于这个问题的看法是, 体验没有存在的必要性.
不仅Dennett, 还有David chalmers(侯世达的学生), 研究意识的伉俪Churchland夫妇, 都持这种观点. 这个名单, 还可以列很长.

最后一个难题.

在这些论述中, 读者也许会看到, 我不断地在检视完某种理论后, 回到我自己的主观视角, 并用自己的主观体验来校验该理论.

这并不是我耍小聪明或者撒泼无赖, 盖因, 对于意识的确定性, 每个人都只有回到主观视角, 通过一种"主体间性"类似的由已及人外推来理解这一问题.

所以最后, 让我用这种"主体间性"来试着表达一下什么是意识.

意识是我当下的那些感觉和知觉, 像那个笛卡尔剧场中的聚光灯聚到的那些事物, 意识是那种体验.
托马斯-内格尔写过一篇著名的探讨意识的文章<作为蝙蝠是一种什么体验>, 让我来摘抄一段:

`
但是,不管形式如何变化,一个有机体只要具有有意识的经验,这个事实就意味着,从根本上说,存在某种作为那个有机体是什么样的经验。它也许还蕴含着这个经验的形式;甚至也许(虽然我抱有怀疑)还蕴含着该有机体的行为。不过从根本上说,当且仅当一个有机体具有作为那个有机体是什么样(对于那个有机体来说是什么样)的经验时,它才具有有意识的心理状态。

我们可以把这叫做经验的主观性。对心理的还原分析都不可能控制它,因为它们在逻辑上全都与它的不存在相容。不能用任何(证?)明机能状态或现象状态的方法来分析它,因为这些可以归之于机器人或自动机,它们可以像人一样行动,却不可能具有经验也许实际上不可能有这样的机器人。也许任何复杂到能像人一样行动的东西都会有经验。但,即使真是如此,这个事实也不能仅仅通过对经验的概念分析来发现。出于同样的理由,不能用涉及独特的人的行为的经验因果作用来分析它。
`

是时候可以点题了, 在1994年意识研究的Tucson会议报告中, 与会者提出了一个定义. 也就是所谓的难题.

这个难题是指, 为什么认知过程, 思维能力需要伴随着体验. 主观体验是如何产生的, 它又有什么作用?

这也许是最后一个难题了.
而遗憾的是, 我们对于这个难题的答案的可能形式, 都还是一头雾水.

后记

对于难题的回应分化出许多流派, 而且对于体验也有很多争论. 最有名也许是最有意思的一个思维实验是这样的.

有个姑娘叫小丽, 小丽是个研究色觉神经元的脑科学专家, 她天资聪颖, 在本专业已达化境. 可是遗憾的是, 小丽生下来. 就往了一个只有黑白两色的房间里.
直到二十八岁那年, 有个叫小明的研究人工神经网络的年轻人把小丽带出这间只有黑白两色的屋子.

小明摘了一朵黄色的月季花送给小丽, 并单膝跪地向小丽告白:
"这朵鲜红的月季代表我那颗火热的心, 嫁给我吧小丽!"

你觉得小丽会怎么回答呢?

参考文献:

托马斯-内格尔 <作一只蝙蝠是怎样的体验>
侯世达 <哥德尔 巴赫 艾舍尔 集异壁之大成>
丹尼尔-博尔 <贪婪的大脑>
Susan Blackmore <人的意识>

神经网络的前世今生---之一

有些领域,领域内风起云涌,让人只觉得天地翻覆,就好像潘朵拉的盒子正在打开,不周山的天柱正在倒塌,每个人都像打了鸡血一样生怕被这股能把猪都吹上天的狂风拉下,可是领域外的人们,面对这个似乎很平静的世界,继续讨论着二十四史中可以用阴谋阳谋把握的故事。

 
 

自从2006hinton提出了对比散度算法以来,从玻尔兹曼机到堆叠自编码器,以google brain项目为起始性事件,微软研究院的机器同时传译,IBM的沃森在危机边缘知识推理问题比赛中击败人类年度总冠军,一时间,先是hinton和其两个学生所开创的dnnresearch公司被收购,接下来hinton另外一名学生所在的没人听说过的deepmind,一个要名声没名声,要产品没产品的公司再次被google4亿美元收购,接下来,深度学习研究领域另一大牛yuu lecunfacebook实验室收走,李彦宏高调成立百度研究院,并发布少帅计划要向三十岁以下的孩子们发放百万以上年薪。

 
 

似乎这一时间,只要沾上了"深度学习"这几个字,立马飞上枝头变凤凰,长成深闺无人见,一朝成名天下知了。。。

 
 

深度学习,deep learning,其实就是deep neural netword(即hinton的dnnrearch中的dnn),仍然是神经网络的一枝。而神经网络是一门老技术了,从人工智能成立之日起,神经网络就出现了,只是这门技术命途多舛,其中几经起伏碾转,时而狂风大作,时而门庭冷落,幸好还有hinton大叔之辈,举世非之而不加沮,一直和丫这门技术耗,终于耗到今天重新将之发扬光大。

 
 

要八卦神经网络的前世今生,需要从人的大脑皮层开始说起。(吕轻侯:这要从人和宇宙的关系开始讲起。)

一般意义上来说,被广泛承认的人工智能领域的第一项工作,开始于warren mcCulloch 和 walter pitts,这二人提出了一个简单的神经元模型,即将一个单独的神经元,看成是一个函数,其输入值对应于下层神经元的传导电位,而其输入值则对于对上层神经元的传导电位(此处做了简化处理,实际情况更加地复杂。)

  

如图,左代表神经元之间的连接,而右边则是简化的数学模型,每条线就代表着一个值的传递,而一个黄圈则代表一个处理函数:而如果把这些神经元,模仿人类的神经元进行联接之后,我们就会得到这样更加复杂的神经元模型(函数)


这其中每一个神经元的输入就仿佛是生物上下层神经元的轴突与本层神经元的树突的联接,而依次类推。

有了这个模型,我们就有了一种较简单的模型来做最基本的砖头,而从这个砖头出发,历代的神经网络研究者们就试图从简到繁,一步一步地来搭建出人类的整个大脑。

 
 

这种从简单出发的研究方法,不仅在人工智能领域,同样在神经科学领域也是采取着类似的方法,关于我们的记忆,长期以来也是困扰人类的一个问题,1929年,karl lashley移除活鼠的不同部位,发现其记忆似乎不受影响,因而主张,脑部并没有主管记忆的专区,整个大脑皮层外围都负责记忆动作,然而在这种主张下,医生对病人进行了海马切除手术后,却发现病人的短期记忆转化机制出现明显的问题,病人不再能够记住刚刚发生的事情。

于是lashley的说法遭到质疑,更多的人希望对记忆机制有更深一步的了解,能够搞明白记忆的生理基础。

 
 

而最后成功的,则是美国国家健康研究院的Eric Kandel童鞋,Kandel到处思考和寻找,试图设计可行的实验,因为困难在于,对于大脑而言,神经元实在是太小了,然后最后将终于将焦点固定在海蜗牛上面,这种只有两万个神经元的生物,体现比一般蜗牛稍大,就像其他的蜗牛一样,丫会分泌黏液,而分泌的地方,受到刺激就会收缩,小时怕有不少男童鞋们,会拿着一枝尖尖的树枝去刺蜗牛,然后去观察他那种剧烈的收缩。

 
 

Kandel对蜗牛进行电击,然后使用行为主义(巴甫洛夫的狗)的方法来对其进行习惯化、敏感化等等,最后成功观察出蜗牛神经连接强度的改变,从而提出记忆的分布式存储理论。

 
 

之后我会开始学习神经网络设计一书,在学习过程中,与童鞋们分享我们的仿生学之路。