当前位置:网站首页>7. Regularization application
7. Regularization application
2022-07-08 01:01:00 【booze-J】
One 、 Application of regularization
stay 6.Dropout application Unused in Dropout Add regularization to the network model construction of code .
take 6.Dropout In application
# Creating models Input 784 Neurons , Output 10 Neurons
model = Sequential([
# Define output yes 200 Input is 784, Set offset to 1, add to softmax Activation function The first hidden layer has 200 Neurons
Dense(units=200,input_dim=784,bias_initializer='one',activation="tanh"),
# The second hidden layer has 100 Neurons
Dense(units=100,bias_initializer='one',activation="tanh"),
Dense(units=10,bias_initializer='one',activation="softmax")
])
It is amended as follows
# Creating models Input 784 Neurons , Output 10 Neurons
model = Sequential([
# Define output yes 200 Input is 784, Set offset to 1, add to softmax Activation function The first hidden layer has 200 Neurons
Dense(units=200,input_dim=784,bias_initializer='one',activation="tanh",kernel_regularizer=l2(0.0003)),
# The second hidden layer has 100 Neurons
Dense(units=100,bias_initializer='one',activation="tanh",kernel_regularizer=l2(0.0003)),
Dense(units=10,bias_initializer='one',activation="softmax",kernel_regularizer=l2(0.0003))
])
Use l2 Before regularization, you need to import from keras.regularizers import l2
.
Running results :
It can be seen from the running results that some over fitting conditions have been obviously overcome , The model is not very complex for data sets , With regularization , Its effect may not be very good .
Complete code
The code running platform is jupyter-notebook, Code blocks in the article , According to jupyter-notebook Written in the order of division in , Run article code , Glue directly into jupyter-notebook that will do .
1. Import third-party library
import numpy as np
from keras.datasets import mnist
from keras.utils import np_utils
from keras.models import Sequential
from keras.layers import Dense
from tensorflow.keras.optimizers import SGD
from keras.regularizers import l2
2. Loading data and data preprocessing
# Load data
(x_train,y_train),(x_test,y_test) = mnist.load_data()
# (60000, 28, 28)
print("x_shape:\n",x_train.shape)
# (60000,) Not yet one-hot code You need to operate by yourself later
print("y_shape:\n",y_train.shape)
# (60000, 28, 28) -> (60000,784) reshape() Middle parameter filling -1 Parameter results can be calculated automatically Divide 255.0 To normalize
x_train = x_train.reshape(x_train.shape[0],-1)/255.0
x_test = x_test.reshape(x_test.shape[0],-1)/255.0
# in one hot Format
y_train = np_utils.to_categorical(y_train,num_classes=10)
y_test = np_utils.to_categorical(y_test,num_classes=10)
3. Training models
# Creating models Input 784 Neurons , Output 10 Neurons
model = Sequential([
# Define output yes 200 Input is 784, Set offset to 1, add to softmax Activation function The first hidden layer has 200 Neurons
Dense(units=200,input_dim=784,bias_initializer='one',activation="tanh",kernel_regularizer=l2(0.0003)),
# The second hidden layer has 100 Neurons
Dense(units=100,bias_initializer='one',activation="tanh",kernel_regularizer=l2(0.0003)),
Dense(units=10,bias_initializer='one',activation="softmax",kernel_regularizer=l2(0.0003))
])
# Define optimizer
sgd = SGD(lr=0.2)
# Define optimizer ,loss_function, The accuracy of calculation during training
model.compile(
optimizer=sgd,
loss="categorical_crossentropy",
metrics=['accuracy']
)
# Training models
model.fit(x_train,y_train,batch_size=32,epochs=10)
# Evaluation model
# Test set loss And accuracy
loss,accuracy = model.evaluate(x_test,y_test)
print("\ntest loss",loss)
print("test_accuracy:",accuracy)
# Training set loss And accuracy
loss,accuracy = model.evaluate(x_train,y_train)
print("\ntrain loss",loss)
print("train_accuracy:",accuracy)
边栏推荐
- Codeforces Round #804 (Div. 2)
- tourist的NTT模板
- 9.卷积神经网络介绍
- 5G NR 系统消息
- 9. Introduction to convolutional neural network
- DNS series (I): why does the updated DNS record not take effect?
- 1.线性回归
- 接口测试要测试什么?
- Is it safe to open an account on the official website of Huatai Securities?
- Su embedded training - C language programming practice (implementation of address book)
猜你喜欢
第四期SFO销毁,Starfish OS如何对SFO价值赋能?
[necessary for R & D personnel] how to make your own dataset and display it.
A network composed of three convolution layers completes the image classification task of cifar10 data set
[go record] start go language from scratch -- make an oscilloscope with go language (I) go language foundation
AI遮天传 ML-回归分析入门
3.MNIST数据集分类
Codeforces Round #804 (Div. 2)(A~D)
Binder core API
How does starfish OS enable the value of SFO in the fourth phase of SFO destruction?
ReentrantLock 公平锁源码 第0篇
随机推荐
[note] common combined filter circuit
国外众测之密码找回漏洞
ReentrantLock 公平锁源码 第0篇
Binder core API
Lecture 1: the entry node of the link in the linked list
Serial port receives a packet of data
【obs】Impossible to find entrance point CreateDirect3D11DeviceFromDXGIDevice
利用GPU训练网络模型
Deep dive kotlin synergy (XXII): flow treatment
接口测试进阶接口脚本使用—apipost(预/后执行脚本)
12. RNN is applied to handwritten digit recognition
C# ?,?.,?? .....
国内首次,3位清华姚班本科生斩获STOC最佳学生论文奖
Experience of autumn recruitment in 22 years
Analysis of 8 classic C language pointer written test questions
8道经典C语言指针笔试题解析
The method of server defense against DDoS, Hangzhou advanced anti DDoS IP section 103.219.39 x
130. 被围绕的区域
13. Model saving and loading
Is it safe to speculate in stocks on mobile phones?