点击左上方蓝字关注我们
01
MLP回归,无需卷积、自注意力,纯多层感知机视觉架构媲美CNN、ViT
当前,卷积神经网络(CNN)和基于自注意力的网络(如近来大火的 ViT)是计算机视觉领域的主流选择,但研究人员没有停止探索视觉网络架构的脚步。近日,来自谷歌大脑的研究团队(原 ViT 团队)提出了一种舍弃卷积和自注意力且完全使用多层感知机(MLP)的视觉网络架构,在设计上非常简单,并且在 ImageNet 数据集上实现了媲美 CNN 和 ViT 的性能表现。
近日,原 ViT 团队提出了一种不使用卷积或自注意力的 MLP-Mixer 架构(简称 Mixer),这是一种颇具竞争力并且在概念和技术上都非常简单的替代方案。
Mixer 架构完全基于在空间位置或特征通道重复利用的多层感知机(MLP),并且仅依赖于基础矩阵乘法运算、数据布局变换(如 reshape 和 transposition)和非线性层。
论文地址:https://arxiv.org/pdf/2105.01601.pdf
项目地址:https://github.com/google-research/vision_transformer/tree/linen
结果表明,虽然 Mixer 架构很简单,但取得了极具竞争力的结果。当在大型数据集(约 1 亿张图像)上进行预训练时,该架构在准确率 / 成本权衡方面能够媲美 CNN 和 ViT,实现了接近 SOTA 的性能,在 ImageNet 数据集上取得了 87.94% 的 top1 准确率。
信息来源:机器之心
02
爷青回!GAN生成的超级马里奥关卡,可以永不通关的那种
先来一波回忆杀~
《超级马里奥兄弟》的重度玩家们,可能已经发现了,这并不是原本32关里面的。不过,如果你以为这是《马里奥制造》的杰作,那你就猜错了~这是AI利用GAN搞出来的!利用GAN生成红白机游戏画面,并不是新鲜事,不过,这一次是可以无限延长的那种~
想永不通关?用cGAN
现在,只需把一张张“截图”连接起来,你就会得到:半个库巴、半个管道,以及半个马里奥……
怎么才能无缝拼接,得到连贯的关卡呢?这就需要利用「有条件的GAN」,把前一个场景作为后一个场景的边界条件。
就像这样:
可以看出,场景的左侧部分,是以第一行图像作为边界条件生成的。具体来说,首先要在之前的基础上,向生成器输入一组16×4的图像,作为上一个场景的边界部分。
网络架构是这样的:
生成器在输入条件的限制下,生成16x16的图像,然后,把它们与16×4的输入图像进行拼接,再用拼接后的图像来训练鉴别器。
利用16×4图像的不断迭代,最终就能拼接成连续的场景,比如,经过40次迭代的结果:
开发者表示,虽然效果不是特别完美,但是已经具备了趣味性和可玩性~
信息来源:量子位
03
超越YOLOv5的PP-YOLOv2和1.3M超轻量PP-YOLO Tiny都来了!
mAP 50.3%,106.5FPS 的 PP-YOLOv2,1.3M超轻量PP-YOLO Tiny, 让目标检测界再起风波。
单阶段目标检测界的扛把子--YOLO,以其 「又快又好的效果」 在学术及产业界全面风靡。自 20 年下半年 YOLOv4、YOLOv5、PP-YOLO、YOLO-Fastest 和 YOLOv4 Tiny 等等轮番轰炸、掀起「YOLO 狂潮」后,时隔半年,超越 YOLOv5的PP-YOLOv2 和1.3M 超超超轻量级的PP-YOLO Tiny一起来了!!!
图 1:PP-YOLOv2 和其他目标检测器性能对比
如图 1 可见,PP-YOLOv2 在同等速度下,精度超越YOLOv5!相较 20 年发布的 PP-YOLO,v2 版本在 COCO 2017 test-dev 上的精度提升了 3.6%,由 45.9% 提升到了 49.5%;在 640*640 的输入尺寸下,FPS 达到 68.9FPS,而采用 TensorRT 加速的话,FPS 更是达到了 106.5!这样的性能,超越了当前所有同等计算量下的检测器,包括 YOLOv4-CSP 和 YOLOv5l !
而如果将骨架网络从 ResNet50 更换为 ResNet101,PP-YOLOv2 的优势则更为显著:mAP 达到 50.3%,速度比同计算量的 YOLOv5x 高出了 15.9%。
不仅如此,与 PP-YOLOv2 一同面世的,还有体积只有 1.3M 的 PP-YOLO Tiny,比 YOLO-Fastest 更轻、更快!这样超超超轻量的算法面世,更是很好的满足了产业里大量边缘、轻量化、低成本芯片上使用目标检测算法的种种诉求!
精度速度数据
感兴趣的小伙伴可以直接查看 PP-YOLOv2 论文:
https://arxiv.org/abs/2104.10419
并查看 PP-YOLOv2 和 PP-YOLO Tiny 的代码实现:
https://github.com/paddlepaddle/paddledetection
信息来源:飞桨PaddlePaddle
04
用GAN创造新蛋白只需几周,大幅缩短制药周期 | Nature子刊
你以为GAN只能用来生成虚假的人脸吗?现在GAN又有了新用途。
它还可以用来生成功能蛋白序列。
这一工具叫做ProteinGAN,可以处理和学习不同的天然蛋白质序列,随后利用获取的信息生成新的序列。
值得注意的是,它应用于功能蛋白序列,减少了非功能蛋白序列的实验消耗;还有效保证了蛋白质活性;并且只需几周时间,可以显著提高药物研发的速度。
ProteinGAN由立陶宛维尔纽斯大学和瑞典查尔默斯理工大学共同开发,研究论文已经在Nature子刊《机器智能》上发表。
功能蛋白,是指携带能够完成人体的生理功能的蛋白质,它们主要完成人体的各种代谢活动。
蛋白质序列,通常表示为字母串,列出了氨基末端开始至羧基末端的氨基酸,其顺序最终决定蛋白质的3D结构、理化性质和分子功能。
蛋白质设计,可以分为结构预测、固定骨架设计、全从头设计三种。
不同于AlphaFold根据序列预测蛋白质结构,ProteinGAN是用于生成蛋白质序列。
过去的方法依赖于将随机突变引入蛋白质序列。但是这通常会导致蛋白质活性下降,甚至丧失,必须进行多轮昂贵且耗时的实验,设计过程非常缓慢。
信息来源:量子位
05
Jupyter Notebook已出现“返祖现象”,这款工具让你在终端里使用它
Jupyter Notebook,一般都是在网页上使用,可是你想过它有一天也可以在命令行中运行吗?
这就是用于终端的Jupyter Notebook工具nbterm:
正在使用Jupyter Notebook又更习惯终端编辑的开发者们,一起来看看这款轻便的工具吧。
安装
你可以使用任何你喜欢的软件包管理器来下载它:
$ pip install nbterm
或
$ mamba install nbterm -c conda-forge
$ cd ~/nbterm #你的nbterm存储路径
$ nbterm my_notebook.ipynb
然后使用终端来进行开发:
这是一款目前正在开发中的软件,作者David Brochart是一位任职于quantstack的软件开发员,致力于Jupyter生态库的开发,比如nbclient、jupyter-client、ipykernel、ipywidgets等。而对于这款软件,David Brochart也提到,nbterm不会重用Jupyter的基本组件,如jupyter-client和nbformat。
因为作为一名参与Jupyter软件包的维护的贡献者,他想要尝试不涉及向后兼容限制的新项目,或者说测试一下开发一个轻量notebook客户端的难度,这就导致nbterm相当精简的代码库。不过现在,他也有了一些关于nbterm未来的构想:比如尝试增加其输出方式。终端虽然只限制于显示字符,但ASCII码可以使这个问题迎刃而解。David在前段时间已经使用ASCII后端对matplotlib图形库尝试了绘制:
信息来源:量子位
飞桨(PaddlePaddle)以百度多年的深度学习技术研究和业务应用为基础,是中国首个开源开放、技术领先、功能完备的产业级深度学习平台,包括飞桨开源平台和飞桨企业版。飞桨开源平台包含核心框架、基础模型库、端到端开发套件与工具组件,持续开源核心能力,为产业、学术、科研创新提供基础底座。飞桨企业版基于飞桨开源平台,针对企业级需求增强了相应特性,包含零门槛AI开发平台EasyDL和全功能AI开发平台BML。EasyDL主要面向中小企业,提供零门槛、预置丰富网络和模型、便捷高效的开发平台;BML是为大型企业提供的功能全面、可灵活定制和被深度集成的开发平台。
END