科学家「黑进」果蝇大脑跑NLP任务,发现效率比BERT高

来源:机器之心

最近一段时间,有关摩尔定律终结的讨论时常出现,深度学习越来越高的算力需求与芯片制造厂商们「挤牙膏」式的换代速度产生了不可调和的矛盾。对此,一些研究者们正在专注于常规架构的效率提升,也有一些研究者把目光转向于常规计算机体系之外,如光电计算、类脑计算,以及量子计算等方向。

现在,又有人想在动物身上寻找思路。在 1 月 13 日刚刚放榜的人工智能顶级会议 ICLR 2021 上出现了这样一篇论文:研究者们「黑」进了果蝇的神经网络,用它来跑 NLP 算法,结果发现性能与常规人工神经网络相当,而且非常节约能耗。

这一通操作仿佛打开了新世界的大门。

神经科学中研究最深入的网络之一是果蝇的大脑,尤其是称为蘑菇体的部分。该部分能够分析气味、温度、湿度和视觉数据等感官输入,以便于果蝇学会区分友好刺激和危险刺激。神经科学家表示果蝇大脑的这一部分是由一组称为投射神经元的细胞组成,这些细胞将感觉信息传递给 2000 个称为 Kenyon 细胞(简称KC)的神经元,Kenyon 细胞连接在一起形成能够学习的神经网络。这让果蝇在学习接近食物、潜在伴侣等时候,学会避免潜在的有害感官输入(例如危险的气味和温度)。

这个相对较小的网络具备的功能和灵活性让神经科学家们好奇:是否可以对其进行编程以解决其他任务?

在伦斯勒理工学院、MIT-IBM Watson AI Lab 的研究者进行的一项入侵果蝇大脑网络的研究中,人们成功地在生物大脑中执行了自然语言处理等任务。这是自然界的神经网络第一次以这种方式被征用。研究者表示这个生物大脑网络与人工学习网络的性能相当,但使用的计算资源却更少。

这种方法相对简单直接,该团队首先使用计算机程序重建蘑菇体所依赖的网络,大量神经元将数据提供给大约 2000 个 Kenyon 细胞。然后研究者训练了该网络以识别文本中词之间的相关性。该任务基于的思想是:一个词可以通过其语境或通常在其附近出现的其他词来表征。该想法首先从一个文本语料库开始,然后面向每一个词,分析出现在该词前后的其他词。

这样机器学习系统可以在给定已经出现的词的情况下预测句子中下一个词。许多系统(例如 BERT)都使用这种方法来生成看起来自然的句子,该研究也采用了这种方法。事实证明即使自然界的网络完全不是基于这一目的进化的,但它也非常擅长这种方式。该研究表明该网络可以学习词的语义表征。

研究者表示,果蝇的大脑网络可与现有的自然语言处理方法相媲美,并且最重要的是生物网络仅使用很少一部分计算资源。这意味着它仅使用较少的训练时间和内存占用量。

生物的效率

这是一个有趣的结果。「我们把这样的结果视为生物启发算法普适性的一个范例,其与传统的非生物算法相比更具效率,」该论文的作者 Yuchen Liang 等人说道。

这项工作除了展示生物计算的效率,还提出了一些有趣的问题。其中最明显的就是:为什么生物神经网络计算是如此的高效?当然按照进化的理论,自然界会选择效率更高的神经网络存留下来,但在论文中,研究者们尚未对 Kenyon 细胞为何具有高效率提出自己的看法。

这项工作显然也开启了「入侵」其他生物大脑的方向。不过目前看来人们仍面临一些挑战,一个潜在的问题是神经科学家们仍然难以对更复杂化的大脑进行表征(如哺乳动物)。果蝇的大脑相对较小,只有 10 万个神经元,相比之下,老鼠的大脑有 1 亿个神经元,而人类的大脑有 1000 亿个神经元。因此在我们看到有小鼠、海豚或人类的大脑「被黑客入侵」之前,还需等待一段时间。

研究概况

论文:Can a Fruit Fly Learn Word Embeddings?

论文链接:https://openreview.net/forum?id=xfmSoxdxFCG

果蝇脑蘑菇体是神经科学中研究最多的系统之一,其核心由一群 Kenyon 细胞组成。这些细胞接受来自多种感官方式的输入,被伽马氨基丁酸能神经元(Anterior Paired Lateral Neurons,APL 神经元)抑制,从而创造了输入的稀疏高维表征。

具体而言,其主要感知方式是嗅觉,但也有来自感知温度、湿度、视觉的神经元的输入。这些输入通过一组突触权重传递给大约 2000 个 Kenyon 细胞。Kenyon 细胞通过 APL 神经元相互连接,后者会发送一个强大的抑制信号到 Kenyon 细胞。这个循环网络形成了 Kenyon 细胞之间的赢者通吃效应,并让一小部分「冠军」神经元之外的所有神经元都失声了。

在这项论文中,研究者将该网络模体(motif)进行了数学化建模,并将其应用于一项常见的 NLP 任务:学习非结构化文本语料库中的词与上下午之间的相关结构。

该研究提出的网络模体如图 1 所示,KC 也将输出发送到蘑菇体输出神经元 (MBON),但是蘑菇体网络的这一部分不包含在数学模型中。

图 1: 网络架构图。几组对应不同方式的神经元将它们的活动发送到 KC 层,而 KC 层通过与 APL 神经元的相互连接而被抑制。

总体而言,研究贡献如下:

  1. 受果蝇网络的启发,研究者提出了一种算法,使得为单词及其上下文生成 binary (相对于连续) 词嵌入成为可能,并系统评估了该算法在词汇相似性任务、词义消歧和文本分类等任务上的表现;

  2. 与连续 GloVe 嵌入相比,本文的 binary 嵌入能产生更紧密和更好分离的概念集群,并且符合 GloVe 的 binarized 版本的集群特性;

  3. 研究者发现,训练果蝇网络所需要的计算时间比训练传统的 NLP 架构(如 BERT)所需要的计算时间要少一个数量级,但是在分类准确率上有所降低。

这一成果展示了人类将自然界算法及行为进行「重新编程」,并将其转化为原始生物体从未参与过的任务的目标算法的巨大潜力。

实验结果

在论文的第三章,研究者从静态词嵌入、词聚类、上下文相关的词嵌入、文本分类等几个方面对研究提出的网络进行了评估,以下是实验结果。

静态词嵌入评价

词聚类

上下文相关的词嵌入

文本分类

计算效率

论文作者

本文第一作者 Yuchen Liang,本科毕业于浙江大学,在哥伦比亚大学获得硕士学位,现为美国伦斯勒理工学院(Rensselaer Polytechnic Institute)在读博士。研究兴趣包括数据挖掘和机器学习技术。

参考内容:

https://arxiv.org/abs/2101.06887

https://www.discovermagazine.com/the-sciences/fruit-fly-brain-network-hacked-for-language-processing

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/485429.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

配置信息的优化,类型转换器

1. 优化&#xff1a; 可以将配置信息单独放入db.properties中&#xff0c;然后再动态引入 db.properties:kv <configuration> <properties resource"db.properties"/> 引入之后&#xff0c;使用${key} 2. MyBatis全局参数 在<configuration&g…

Attention Model

参考1: https://blog.csdn.net/malefactor/article/details/50550211 attention部分实现: https://blog.csdn.net/mpk_no1/article/details/72862348转载于:https://www.cnblogs.com/ying-chease/p/9448726.html

卫星互联网行业深度报告:战火早已熊熊燃烧

来源&#xff1a;万联证券1、低轨卫星加速建设&#xff0c;协同 5G 与地面通信互补融合1.1 卫星互联网纳入新基建&#xff0c;未来蓝海无限。卫星互联网是基于卫星通信的互联网&#xff0c;通过一定数量的卫星形成规模组网&#xff0c;从而辐射 全球&#xff0c;构建具备实时信…

Leetcode--416. 分割等和子集

给定一个只包含正整数的非空数组。是否可以将这个数组分割成两个子集&#xff0c;使得两个子集的元素和相等。 注意: 每个数组中的元素不会超过 100 数组的大小不会超过 200 示例 1: 输入: [1, 5, 11, 5] 输出: true 解释: 数组可以分割成 [1, 5, 5] 和 [11]. 示例 2: …

LUGOU P3907 圈的异或

传送门 解题思路 其实就是找出所有的环判断&#xff0c;因为数据范围很小直接暴力做&#xff0c;注意要判断自环。 代码 #include<iostream> #include<cstdio> #include<cstring> #include<cmath> #include<algorithm>using namespace std; cons…

新基建下的自动驾驶:单车智能和车路协同之争

来源&#xff1a;德勤Deloitte编辑&#xff1a;蒲蒲2020年3月&#xff0c;随着中央政治会议的正式定调&#xff0c;“新基建”&#xff0c;即新型基础设施建设&#xff0c;成为公众新焦点。4月&#xff0c;发改委明确新基建范围。在新基建涉及的细分领域中&#xff0c;5G、物联…

输入参数

输入参数&#xff1a;parameterType #{} ${}区别&#xff1a; 1. 类型为简单类型&#xff08;8个基本类型String&#xff09; #{任意值} ${value},其中的标识符只能是value #{}自动给String类型加上 ${}原样输出 但是适合动态排序&#xff08;动态字段&#xff09; s…

2038: [2009国家集训队]小Z的袜子(hose)

2038: [2009国家集训队]小Z的袜子(hose) Time Limit: 20 Sec Memory Limit: 259 MBSubmit: 15879 Solved: 7205[Submit][Status][Discuss]Description 作为一个生活散漫的人&#xff0c;小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天&#xff0c;小…

Jeff Dean三执笔:一文看尽2020年谷歌AI重大突破

来源&#xff1a;AI前线作者&#xff1a;Jeff Dean译者&#xff1a;核子可乐策划&#xff1a;钰莹 在二十年前刚刚加入谷歌时&#xff0c;我们关注的问题只有一个——如何面向这么多不同种类的联网计算机提供一整套质量出色且涵盖范围全面的网络信息搜索服务。到如今&#xff0…

输出参数

输出参数为resultType 1.简单类型&#xff08;8个基本类型String&#xff09; 2.输出参数为实体对象类型 3. 输出参数为实体对象类型的集合&#xff1a;虽然输出类型是集合&#xff0c;但是resultType依然写集合的元素类型 4. 输出参数类型为HashMap HashMap本身是一个集合…

模板 普通平衡树

Treap 版&#xff1a; 查询操作是最简单的&#xff0c;就是二叉搜索树。左旋右旋画一画就好了。 最近代码能力下降&#xff0c;码一码模板QAQ 1 #include<ctime>2 #include<cstdio>3 #include<cstring>4 #include<cstdlib>5 #include<algorithm>…

信号时频图的横纵坐标对调

博客1&#xff1a;如何翻转信号的时频图论文有时候需要绘制信号的时频图。Matlab有专用的函数spectrogram可以用来帮助我们绘制信号的时频图。默认的图例是横轴为频率&#xff0c;纵轴为时间。如果希望将横轴和纵轴对调&#xff0c;只需要在函数的末尾指定xaxis或yaxis即可。sp…

技术的顶点,是普惠人类还是超越人类

来源&#xff1a;大数据文摘我们很容易忽视我们在宏大的生态系统中的卓越地位&#xff0c;尤其是在一个容易依赖技术引领我们走向我们渴望的未来的时代。我们真的相信技术比人类更复杂和必要吗&#xff1f;被创造的东西真的能取代它的创造者吗&#xff1f;我们必须共同决定&…

HDU 2089 不要62

杭州人称那些傻乎乎粘嗒嗒的人为62&#xff08;音&#xff1a;laoer&#xff09;。 杭州交通管理局经常会扩充一些的士车牌照&#xff0c;新近出来一个好消息&#xff0c;以后上牌照&#xff0c;不再含有不吉利的数字了&#xff0c;这样一来&#xff0c;就可以消除个别的士司机…

Leetcode--149. 直线上最多的点数

给定一个二维平面&#xff0c;平面上有 n 个点&#xff0c;求最多有多少个点在同一条直线上。 示例 1: 输入: [[1,1],[2,2],[3,3]] 输出: 3 解释: ^ | | o | o | o -------------> 0 1 2 3 4 示例 2: 输入: [[1,1],[3,2],[5,3],[4,1],[2,3],[1,4]] 输出…

生态位构建-一种普遍的主动进化

来源&#xff1a;混沌巡洋舰人类正在塑造地球上生命进化的未来。我们不仅造成了大规模的物种灭绝&#xff0c;我们还迫使动物、植物和真菌适应我们的人造世界: 例如&#xff0c;城市鸟类现在唱得更高了&#xff0c;因为这种音调似乎有助于它们的歌声传递交通的声音。但是&#…

[引] 如何在Matlab中得到透明背景的图片?

% you created a figure and it is “current”. % the following, you could have guessed set(gcf,‘color’,‘none’); set(gca,‘color’,‘none’); % but this following little detail took me ages to figure out set(gcf,‘InvertHardCopy’,‘off’); 作者&#xf…

Openstack入门篇(十一)之neutron服务(控制节点)的部署与测试

1.Neutron的介绍 Neutron 为整个 OpenStack 环境提供网络支持&#xff0c;包括二层交换&#xff0c;三层路由&#xff0c;负载均衡&#xff0c;防火墙和 *** 等。Neutron 提供了一个灵活的框架&#xff0c;通过配置&#xff0c;无论是开源还是商业软件都可以被用来实现这些功能…

Leetcode--139. 单词拆分

给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict&#xff0c;判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。 说明&#xff1a; 拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。 示例 1&#xff1a; 输入: s "leetcode…

【物理方程】物理学中最难的方程之一,你知道多少?

来源&#xff1a;数学中国物理学是一门包含许多方程式的学科&#xff0c;这些方程描述了从微观世界粒子的行为到宏观宇宙的演化。在所有的物理方程中&#xff0c;有一组在数学上被认为极具挑战性&#xff0c;还被克莱数学研究所列为七个“千禧年大奖问题”之一&#xff0c;它们…