[经典阅读]Alexnet 论文读书笔记以及代码复现

Alexnet主要内容

1.使用数据集为ImageNet
2.使用非饱和激活函数Relu比饱和激活函数具有更快的收敛速度
3.使用两个GPU并行训练
4.使用Local Response Normalization进行优化
5.网络结构:5层卷积层,3层全连接层,1,2,5层卷积层后接最大池化
,使用的是重叠池化令步长s<窗口边长z,这里令s=2,z=3,每层都使用Relu激活
6.减少过拟合使用两种方法,1、数据增广 2、Dropout
7.实现细节:使用随机梯度下降,动量参数为0.9,权值和偏置的初始化策略

复现Alexnet

做出的一些改动:
1.数据集的变化:ImageNet–>cifar10,图像大小由2242243–>32323
2.没有使用原文提到的双GPU策略,没有使用局部影响归一化策略
使用平台:
Google Colab 提供NVIDIA Tesla K80 GPU免费使用,不过存在一些限制,连接时间不超过12小时,Colab Pro版本收费且只提供给美国地区使用

代码部分

import keras
from keras.datasets import cifar10
from keras import backend as K
from keras.layers import Input, Conv2D, GlobalAveragePooling2D, Dense, BatchNormalization, Activation, MaxPooling2D
from keras.models import Model
from keras.layers import concatenate,Dropout,Flatten

from keras import optimizers,regularizers
from keras.preprocessing.image import ImageDataGenerator
from keras.initializers import he_normal
from keras.callbacks import LearningRateScheduler, TensorBoard, ModelCheckpoint

num_classes = 10
batch_size = 64
iterations =782
epochs = 300
DROPOUT = 0.5
CONCAT_AXIS = 3
weight_decay = 1e-4
DATA_FORMAT = 'channels_last'
log_filepath = './alexnet'


def color_preprocessing(x_train,x_test):
	x_train = x_train.astype('float32')
	x_test = x_test.astype('float32')
	mean = [125.307,122.95,113.865]
	std = [62.9932,62.0887,66.7048]
	for i in range(3):
		x_train[<
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值