脑芯编:窥脑究竟,织网造芯(二)

简介:

雷锋网(公众号:雷锋网)按:本文作者痴笑,矽说(微信号:silicon_talks)主笔。本文为《脑芯编:窥脑究竟,织网造芯》系列第二篇。

〈二〉几重卷积几重生

蜘蛛结网,是为了捕食昆虫;

蜘蛛侠结网,是为了拯救世界;

码农Data Scientist (~ds~) 结网,是为了——

换一个角度看世界,

英语叫做: Representation。

如果你只想知道一个关于神经网络的常识,我认为上面这个单词是最不应该错过的。就像每个学模拟电子学的人,其实归根结底就是学了两个字——放大

话接上回,我们说到,通过一系列乘累加和非线性激活函数,我们就可以实现一个神经元。而关键的问题就是如何把神经元们连起来。解决这个问题之前,我们先要明白神经网络的作用——通过一系列线性和非线性的变化重新将输入信息映射成为表达事物的本质的简化特征。

如果你觉得上面一句的每个字都认识,却不知道他在说什么,那么我们来看一个经典的例子——人类的视觉皮层(Visual Cortex)。

视觉皮层, 一场生物与AI的伟大握手

码农老师的生物课又来了……

你有没有想过当你看到生命中一个重要的人的时候,比如说基友(码农怎么会有妹纸?),你是看到是他/她的鼻子,眼睛,脸上的痘痘,昨晚熬夜的黑眼圈……但是这些东西最后都只留下了一个映像——我面基了。可是你有没有想过从你看到图像,到你得到的结论,无数的信息都已经没有过滤,你的脑子完成了一次将4K3D图像压缩成两个字的过程,到底发生了什么事?

脑芯编:窥脑究竟,织网造芯(二)

这个过程就是从信息经过视觉皮层(神经网络??)的过程。从前到后,他经过了几站:

(1)始发站——视网膜 ,比较像是一个电子系统的传感器,用来接收信号;

(2)快速交流道——LGN,他是将左右眼看到的信号重新编码后传递给视觉皮层,像是一个电子系统中的主控处理器与总线(请原谅我不说LGN的中文,因为说了你也记 不住) ;

(3)第一站——主视觉区V1,第一层神经网络,司“边界检测(Edge Detection)”一职,这可能是神经元数量最丰富的一个区域;

(4)第二站——次视觉区V2,第二层神经网络,司“基础特征提取”一职,归纳视觉信号的形状、大小、颜色、频率……

(5)第三站—— V3,司“位置“,也是个过渡区,一条线上你有些站你不知道为什么会停~

(6)第四站——V4/V5(MT)分支,深度神经网络,各司“色彩/运动”;

(6)V4分支终点站1——换乘inferotemporal Cortex,近深度智能TE区,司 ”目标识别“ ~~~终于终于我认出基友来了,撒花~~

(7)V5分支终点站2——换乘Parietal Cortex, 进深度智能MST区,司“空间运动分析”。

脑芯编:窥脑究竟,织网造芯(二)


视觉皮层可能是目前为止人类认识的最透彻的大脑部分,不过,好像建立在无数的活体实验上。。。即使如此,还是有很多未知的空间亟待生物学家探索。

不知道读到这里,对人工智能略有了解的你有没有觉得这堂生物课在哪里见过? 先做边界检测,在再做特征提取,在进行分类识别,这不就是大名鼎鼎的

脑芯编:窥脑究竟,织网造芯(二)

卷积,让加速成为一种可能

其实在神经网络领域里,目前为止唯一能算的上前所未有成功的就是CNN (Convolution Neural Network,卷积神经网络)。最早的CNN可以追溯到98年Yann LeCun的一篇如何识别手写数字的paper,这里出现了第一个CNN的雏形LeNet:

脑芯编:窥脑究竟,织网造芯(二)


从结构上来,CNN继承了视觉皮层中对信号处理“层”的概念,虽然不是那么的100%的吻合,但是CNN的初级层往往用来做“边界检测”这样的简单的特征提取,而在深度层重新组合初级层的信息成为抽象的再表达(Representation),最后交给事件的发生的相关概率归纳出事物的本质。

另外,一个比较不太准确的趋势是神经元的数量随层的深度逐渐减少,但是单个神经元的粗壮程度(输入数量)随层的深度逐渐增加。视觉皮层也具有相似的规律,V1的数量多,但是结构比较简单,但到了V4/V5,链接变得很复杂,但占的区域却比V1小的多。

然而,这些都不是做电路的人重点。

对于硅工们而言,CNN获得巨大成功的原因在于:它极大地节省了神经网络的硬件开销,使神经元为单位作加速器成为了可能。

(1) CNN定义了一种更高能效的元操作——卷积核

关于卷积是什么,大家可以去参考一篇《一文读懂卷积神经网络》(广泛地转载于各大公众号间),下图是我目前看到的最形象的卷积描述。

脑芯编:窥脑究竟,织网造芯(二)


该图片源自网络,感谢原gif作者

其本质就是对于一个区块,判断和自己系数组成的“基”区块的相似程度,得到的分数越高就越相似。这样,当一种“基区块”被赋予一种特征是,即使用于整张图片的特征提取,他的系数也是固定的,因此大量的系数加载操作可以被省略。同时,一个固定大小的“卷积核”成为了比“乘累加”更高阶、更高效的原子操作,在现代计算机体系结构中,实现越复杂,但操作越固定的加速器,其效率和速度的提升也就越大。

(2) Pooling —— 是垃圾就要扔掉

CNN网络的另一个巨大贡献就是在卷积层和层之间,设置了一个”垃圾箱“,把上一层产生的无效信息都扔掉,避免了超大规模的数据传输和存储。大家把这叫做Pooling,我又要来吐槽那个中国人给他取了个”池化“的名字,虽然我也找不到更好的名字,但根本无法帮助理解。Pooling的策略很多,最常见的是max pooling就是留个最大的,然后又其他都扔掉。

(3) “乱撸”? (ReLU)

LeNet后期发展到AlexNet后,激活函数也从sigmoid变成了ReLu,他们的图形曲线大概如下所示。用脚趾头也知道,Relu操作的实现就是把符号位为负置0就好了。至于sigmoid么,传承自经典机器学习回归理论,是e指数的除法操作,编译后简直就是一场噩梦,我们先把他当作一个古老的神话就好了。

脑芯编:窥脑究竟,织网造芯(二)

以上种种硬件实现的简化,加上CNN的巨大胜利,都当让硅工们看到了直接从电路角度优化的角度切入人工智能芯片的可能。但是,也发现了一个问题,传统的硬件加速的算法往往是做死的,比如椭圆加密,浮点乘除等等。但是CNN的元操作——卷积核——虽然模式固定,但是其每一层的卷积核数量和层数却是纷繁复杂,固定的硬件并不能实现网络的可塑性(structual plasticity)?

那该怎么办?下一次,如何利用具有高度可编程性的CPU来配置不同结构的神经网络——计算机的”形与令“。就到这里,且听下回分解。

特别鸣谢复旦大学脑芯片研究中心提供技术咨询,欢迎有志青年报考。


本文作者:矽说


本文转自雷锋网禁止二次转载,原文链接

相关文章
|
5月前
|
监控 NoSQL MongoDB
轻松掌握组件启动之MongoDB(番外篇):高可用复制集架构环境搭建-mtools
mtools是一个基于Python实现的MongoDB工具集,旨在提供一系列功能,包括MongoDB日志分析、报表生成以及简易的数据库安装等。它由MongoDB原生的工程师单独发起并进行开源维护。mtools包含了一些常用的组件,如mlaunch、mlogfilter、mplotqueries和mlogvis等,可以帮助我们更方便地启动和创建MongoDB数据库。
|
9月前
|
机器学习/深度学习 传感器 算法
【温度场】基于matlab模拟温度场
【温度场】基于matlab模拟温度场
|
6天前
|
NoSQL Cloud Native Redis
Redis核心开发者的新征程:阿里云与Valkey社区的技术融合与创新
阿里云瑶池数据库团队后续将持续参与Valkey社区,如过往在Redis社区一样耕耘,为开源社区作出持续贡献。
Redis核心开发者的新征程:阿里云与Valkey社区的技术融合与创新
|
5天前
|
关系型数据库 分布式数据库 数据库
PolarDB闪电助攻,《香肠派对》百亿好友关系实现毫秒级查询
PolarDB分布式版助力《香肠派对》实现百亿好友关系20万QPS的毫秒级查询。
PolarDB闪电助攻,《香肠派对》百亿好友关系实现毫秒级查询
|
7天前
|
消息中间件 Cloud Native Serverless
RocketMQ 事件驱动:云时代的事件驱动有啥不同?
本文深入探讨了云时代 EDA 的新内涵及它在云时代再次流行的主要驱动力,包括技术驱动力和商业驱动力,随后重点介绍了 RocketMQ 5.0 推出的子产品 EventBridge,并通过几个云时代事件驱动的典型案例,进一步叙述了云时代事件驱动的常见场景和最佳实践。
115029 1
|
8天前
|
弹性计算 安全 API
访问控制(RAM)|云上安全使用AccessKey的最佳实践
集中管控AK/SK的生命周期,可以极大降低AK/SK管理和使用成本,同时通过加密和轮转的方式,保证AK/SK的安全使用,本次分享为您介绍产品原理,以及具体的使用步骤。
101800 1
|
7天前
|
自然语言处理 Cloud Native Serverless
通义灵码牵手阿里云函数计算 FC ,打造智能编码新体验
近日,通义灵码正式进驻函数计算 FC WebIDE,让使用函数计算产品的开发者在其熟悉的云端集成开发环境中,无需再次登录即可使用通义灵码的智能编程能力,实现开发效率与代码质量的双重提升。
95384 2
Doodle Jump — 使用Flutter&Flame开发游戏真不错!
用Flutter&Flame开发游戏是一种什么体验?最近网上冲浪的时候,我偶然发现了一个国外的游戏网站,类似于国内的4399。在浏览时,我遇到了一款经典的小游戏:Doodle Jump...
112727 12
|
12天前
|
SQL 存储 JSON
Flink+Paimon+Hologres 构建实时湖仓数据分析
本文整理自阿里云高级专家喻良,在 Flink Forward Asia 2023 主会场的分享。
71310 1
Flink+Paimon+Hologres 构建实时湖仓数据分析
|
15天前
|
弹性计算 运维 安全
访问控制(RAM)|云上程序使用临时凭证的最佳实践
STS临时访问凭证是阿里云提供的一种临时访问权限管理服务,通过STS获取可以自定义时效和访问权限的临时身份凭证,减少长期访问密钥(AccessKey)泄露的风险。本文将为您介绍产品原理,以及具体的使用步骤。
151041 4