重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)

Posted CVer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)相关的知识,希望对你有一定的参考价值。

重磅干货,第一时间送达

前戏



Amusi 在几个小时前,逛github的时候发现了一个名为:deeplearning-models 的项目。一开始不以为然,后来又几个小时后喵了一眼,居然这么多star,然后我就看了一下内容,真的很赞!迅速Mark,分享给大家~


https://github.com/rasbt/deeplearning-models


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


在介绍 deeplearning-models 项目之前,很必要介绍一下作者,因为真的太强了。


很难想象一个MLer:Sebastian Raschka,在github上居然有 9.7k Followers,这是 Amusi见到AI 领域 Followers第二的巨佬。


PS:如果本文点击 "在看" 的人数超过 500,那么 Amusi 会单独做一期 AI 领域 Followers第一的巨佬介绍~


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


Sebastian Raschka


Sebastian Raschka 是威斯康星大学麦迪逊分校的统计学助理教授,专注于深度学习和机器学习研究。


另外,据Amusi了解到,Sebastian Raschka 还是 2015年出版的《Python Machine Learning》原作者。


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


deeplearning-models


不到12小时,近1000 star,来看看这个项目到底有啥干货


https://github.com/rasbt/deeplearning-models


在Jupyter Notebooks中,基于TensorFlow和PyTorch实现的各种深度学习架构,模型和技巧的集合。


很明显,该项目中的所有网络模型都是用TensorFlow和PyTorch复现的,有的甚至给出了double 复现。


主要内容涵盖:


  • 传统机器学习

  • 多层感知机

  • 卷积神经网络(CNNs)

  • 度量学习

  • Autoencoders

  • GANs

  • RNNs

  • 训练技巧

  • PyTorch

  • TensorFlow


PS:巨佬的知识面是真的广啊~


传统机器学习


传统机器学习中的 Perception、Logistic Regression和Softmax Regression都提供了TF、PyTorch版本的代码。


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


打开 Perceptron的PyTorch代码,可见是基于PyTorch 1.0.0的版本,代码还添加详细的注释,作者真的很细心。


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


卷积神经网络


CNN 中介绍了基础的 CNN 原型网络、AlexNet、VGG、ResNet 还有很经典的Network in Network。


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


打开基于PyTorch的 ResNet 代码,里面居然有1193行信息(不全是代码),涵盖论文信息、数据集、论文重点内容简介、代码和注释。


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


简单粗暴看一下 ConvNet的代码:


class ConvNet(torch.nn.Module):
def __init__(self, num_classes): super(ConvNet, self).__init__() ######################### ### 1st residual block ######################### # 28x28x1 => 28x28x4 self.conv_1 = torch.nn.Conv2d(in_channels=1, out_channels=4, kernel_size=(1, 1), stride=(1, 1), padding=0) self.conv_1_bn = torch.nn.BatchNorm2d(4) # 28x28x4 => 28x28x1 self.conv_2 = torch.nn.Conv2d(in_channels=4, out_channels=1, kernel_size=(3, 3), stride=(1, 1), padding=1) self.conv_2_bn = torch.nn.BatchNorm2d(1) ######################### ### 2nd residual block ######################### # 28x28x1 => 28x28x4 self.conv_3 = torch.nn.Conv2d(in_channels=1, out_channels=4, kernel_size=(1, 1), stride=(1, 1), padding=0) self.conv_3_bn = torch.nn.BatchNorm2d(4) # 28x28x4 => 28x28x1 self.conv_4 = torch.nn.Conv2d(in_channels=4, out_channels=1, kernel_size=(3, 3), stride=(1, 1), padding=1) self.conv_4_bn = torch.nn.BatchNorm2d(1)
######################### ### Fully connected ######################### self.linear_1 = torch.nn.Linear(28*28*1, num_classes)


Autoencoders


自编码器(Autoencoder)内容也很多,具体如下:


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


GANS/RNNs/Tips


现在因为才上传不到12个小时,所以有些方向的内容不是很全,但基础内容都已经涵盖,下面看一下GANs、RNNs等内容


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


PyTorch


涵盖 PyTorch 相关的训练技巧、预处理、数据集加载工具、并行计算等内容


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


TensorFlow


涵盖 TensorFlow 数据集加载工具、训练和预处理技巧等内容


重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)


侃侃


不能说 deeplearning-models内容有多深度,但广度是有的,而且能面向大众的始终是简单易懂的。该项目的意义我觉得有三点:

1. 很适合刚入门的学生

2. 适合只专注一个领域,且想学习其它方向的学生

3. 锻炼TensorFlow和PyTorch的Coding能力和技巧


如果本文的点 "在看" 的人数超过 500,那么 Amusi 会单独做一期 AI 领域 Followers第一的巨佬介绍


https://github.com/rasbt/deeplearning-models


CVer学术交流群


扫码添加CVer助手,可申请加入CVer-目标检测交流群、图像分割、目标跟踪、人脸检测&识别、OCR、超分辨率、SLAM、医疗影像、Re-ID和GAN等群。一定要备注:研究方向+地点+学校/公司+昵称(如目标检测+上海+上交+卡卡)

▲长按加群


这么硬的论文精读,麻烦给我一个在在看


麻烦给我一个在看

以上是关于重磅!深度学习网络模型大全来了(基于TensorFlow和PyTorch的开源复现)的主要内容,如果未能解决你的问题,请参考以下文章

重磅!李沐「动手学深度学习」中文课程笔记来了!

重磅!李沐「动手学深度学习」中文课程笔记来了!

资源 | 深度学习资料大全:从基础到各种网络模型

重磅!一文深入深度学习模型压缩和加速

重磅|深度学习ResNet网络模型发明者解析结构细节

Python TensorFlow实现Sequential深度神经网络回归