写一个简单的深度学习模型

最近在准备毕业设计,但是模型的数据太少,所以容易出错,我就来简单学习一下模型的结构。
写一个简单的深度学习模型:
环境:vscode,python 3.9.6 , window 11
需要安装的库:

import numpy as np
import matplotlib.pyplot as plt
import keras
from keras.layers import Dense

我这里使用pip insatll 安装总是失败,所以我都是采用镜像安装,清华镜像挺好用的

pip install numpy -i https://pypi.tuna.tsinghua.edu.cn/simple #安装numpy
pip install -i https://mirrors.aliyun.com/pypi/simple/ matplotlib #matplotlib安装
pip3 install -i https://mirrors.aliyun.com/pypi/simple/ keras #keras安装

一般不用特地安装pip,如果安装不成功,就安装一个pip
代码部分:

import numpy as np  
import matplotlib.pyplot as plt  
from keras.models import Sequential  
from keras.layers import Dense  
#从Keras库中导入`Dense`类。`Dense`是一个常用的神经网络层,代表一个全连接层。
  
# 定义数据点的数量  
num_points = 1200  
  
# 定义线性模型的参数  
a = 2  
b = 1  
  
# 生成 x 值  
x = np.linspace(-1, 1, num_points)  #使用linspace函数在-1到1这个区间里面取值
  
# 生成噪声  
noise = np.random.normal(0.0, 0.04, size=x.shape)  
  
# 计算 y 值  
y = a * x + b + noise  
  
# 绘制输入数据  
plt.plot(x, y, 'o')  
plt.title('Input data')  
plt.xlabel('x')  
plt.ylabel('y')  
plt.show()  
  
# 如果打算用这些数据来训练一个模型,可以继续如下:  
model = Sequential()  
model.add(Dense(1, input_dim=1, activation='linear'))  
# 编译模型  编译模型,设置损失函数为均方误差(MSE),优化器为随机梯度下降(SGD)
model.compile(loss='mean_squared_error', optimizer='sgd')  
  
# 将数据转换为适合训练的形状  
x_train = x.reshape(-1, 1)  
y_train = y.reshape(-1, 1)  
  
# 训练模型  
model.fit(x_train, y_train, epochs=10)

效果展示
运行程序会出现图片,图片结束以后,就可以看到我们训练的模型了,模型里面有一些参数:
这里是每个训练周期后损失函数的值:

Epoch 1: loss: 3.5201
Epoch 2: loss: 1.9141
Epoch 3: loss: 1.1080
Epoch 4: loss: 0.6560
Epoch 5: loss: 0.3934
Epoch 6: loss: 0.2364
Epoch 7: loss: 0.1425
Epoch 8: loss: 0.0861
Epoch 9: loss: 0.0525
Epoch 10: loss: 0.0322
损失函数的值随着训练周期的增加而减少,这意味着模型正在逐渐学习如何更好地拟合数据。在每个周期结束时,模型的预测能力都有所提高,因为损失函数的值变小了。但是不能过小,不然容易过度拟合,当然,我们这个就是简单熟悉环境,然后训练第一个自己的模型,互相学习

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值