【论文精度(李沐老师)】Deep Residual Learning for Image Recognition

本文提出了深度残差学习框架,解决了深度神经网络在增加层数时精度下降的问题。通过残差连接,网络可以更容易地学习到identitymapping,允许非常深的网络(如152层)进行有效训练并提高精度。实验在ImageNet和CIFAR-10数据集上验证了这种方法,展示出残差网络在增加深度时能保持甚至提升性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Deep Residual Learning for Image Recognition

残差连接主要干的一个事情是:
如果你新加的层不能让你的模型变好的时候,因为有残差连接的存在,可以使新加的那些层不会学到任何东西。

Abstract

(提出问题)深的神经网络非常难以训练。(本文做了什么事情)本文做了一个使用残差学习的框架来使得训练非常深的网络比之前容易很多。(本文提出的方法)。本文提供了非常丰富的实验表明残差网络非常容易训练,且能够得到很好的精度,特别是当层数增加时。在ImageNet这个数据集上,评估了深度为152层的残差网络——是VGG nets的8倍,且有更低的复杂性。这个残差网络在ImageNet上得到了3.57%的测试精度。这个结果让他们赢得了ILSVRC2015分类任务。本文还展示了怎么在CIFAR-10(一个非常小的数据集,在cv中常见)训练10—1000层的网络。
对很多视觉的任务来说,深度是非常重要的。仅仅只是把网络换成残差网络,在coco目标检测数据集上便得到了28%的相对改进。

1 Introduction(摘要的增强版本)

深度卷积网络好,因为我们可以加很多层,把网络变得非常深,然后不同程度的层会得到不同level的features。

(提出问题)随着我们网络越来越深,一个问题:只是简单的把所有网络堆在一起就可以了吗?当你的网络非常深的时候,会出现梯度爆炸/消失,解决这个问题的一个措施是初始化权重的时候,不要太大/小,另一措施是在中间加入一些normalization(例如BN,可以使得校验每个层之间的那些输出和其梯度的那些均值和方差。),使用上述技术是可以训练、收敛的。

虽然能够收敛了,但是网络变深的同时精度变差了(如下图,56层的网络精度小于20层)。但不是overfitting,因为56层的训练误差和测试误差都高于20层。
在这里插入图片描述

考虑一个比较浅一点的网络和其对应的比较深的一个网络,在理论上,如果较浅的网络效果不错,那个较深的网络效果是不应该变差的,因为新加的那些层总会把这些层学的变成一个identity mapping(恒等映射,输入是x输出也是x),但实际上做不到。

这篇文章就提出了一个办法,使得可以显示的构造出一个identity mapping,解决上述问题,叫做deep residual learning framework。(解释了一下要干什么事情)之前网络已经学到了x,新加的层只需要学习F(x)=H(x)-x(学到的东西和真实的东西之间的残差),最后的输出是F(x)+x (核心)
在这里插入图片描述
identity shortcut connections不会增加任何的参数,也不会让计算变高,整个网络仍然是可以被训练的。

实验表明:(1)非常深的残差网络很容易可以被优化,但是不加残差连接,其效果会很差;(2)残差网络越深,精度越高。

在CIFAR-10可以train到1000层。

讲了一下imagenet上的结果。

2 Related Work

Residual Representations
Shortcut Connections

Deep Residual Network

3.3 Network Architectures

Residual Network(如何处理输入和输出的形状是不同的情况)(A)在输入和输出上分别添加0,是这两个形状能够对应起来;(B)投影,例如使用1*1的卷积层(在空间维度上不做任何东西,主要在通道维度上做改变),使得输出通道是输入通道的2倍,步幅为2以使得在高宽维度上都能匹配上。

4 Experiments

4.1 ImageNet Classification

Plain Networks 和一个没有带残差的18层和34层的网络最比较。细节见下表。可视化结果见下图。

在这里插入图片描述
在这里插入图片描述
Deeper Bottleneck Architectures(怎么构建更深的残差网络)到50层以上,引入了a bottleneck design。
在这里插入图片描述

### 李沐与机器学习、深度学习的相关论文 李沐作为一位活跃于机器学习和深度学习领域的专家,其贡献不仅限于撰写书籍和教学资源,还涉及多篇高质量的研究论文。以下是关于如何查找与其工作相关的论文的方法: #### 方法一:通过Google Scholar检索 可以通过访问Google Scholar网站 (https://scholar.google.com/) 并输入关键词“Li Mu machine learning deep learning”来进行搜索[^1]。此平台能够提供作者发表过的所有学术文章及其引用情况。 #### 方法二:利用PapersWithCode PapersWithCode 是一个专注于收集最新研究成果并与之匹配代码实现的地方,在这里可以根据具体主题找到带有实现链接的论文列表[^4]。例如,“Deep Learning” 或 “Computer Vision” 类别的项目可能就会包含由李沐参与撰写的文档。 #### 方法三:查阅顶级会议录 许多重要的AI领域进展最初是以会议形式发布的。ICLR(International Conference on Learning Representations)、NeurIPS(Neural Information Processing Systems),以及 CVPR(Conference on Computer Vision and Pattern Recognition) 等都是发布前沿成果的主要场所之一[^3]。定期浏览这些大会记录可以帮助定位到最新的理论突破和技术革新。 ```python import requests from bs4 import BeautifulSoup def search_papers(author_name="Mu Li", field="deep learning"): base_url = f"https://scholar.google.com/scholar?q={author_name}+{field}" response = requests.get(base_url) soup = BeautifulSoup(response.text, 'html.parser') papers_info = [] for item in soup.select('.gs_ri'): title = item.find('h3').text.strip() link = item.a['href'] abstract = item.find(class_='gs_rs').text.strip()[:200]+'...' paper_data = { "Title":title, "Link":link, "Abstract":abstract } papers_info.append(paper_data) return papers_info if __name__ == "__main__": results = search_papers() for result in results: print(f"{result['Title']}\nURL:{result['Link']}\nABSTRACT:\n{result['Abstract']}\n\n") ``` 上述脚本展示了如何自动化抓取来自Google Scholar的信息片段[^5]。注意实际部署时需考虑API限制及合法性等问题。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我是小蔡呀~~~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值