在Tensorflow中训练网络一般流程

本文介绍了Google开发的开源深度学习框架TensorFlow,重点讲解了如何使用Keras模块构建、训练和部署网络模型,以物联网设备网络流量数据为例,演示了从数据准备到模型训练的步骤,并展示了良好的训练效果。
摘要由CSDN通过智能技术生成

TensorFlow 是一个由 Google 开发的开源深度学习框架,用于构建、训练和部署机器学习模型。它提供了丰富的工具和库,支持各种机器学习任务,包括神经网络、深度学习、强化学习等。
注意,TensorFlow是深度学习框架,作为一个框架,他提供了许多高级API,例如:
在这里插入图片描述
这些API可以为代码的编写带来极大地便利,其中最常用有keras,nn等。我这里主要介绍keras。

一、keras

keras为构建、训练和部署深度学习模型提供了简单且直观的接口。官方文档
在这里插入图片描述
通过这些接口,可以大大减少我们的工作量。

二、导入需要的包

import tensorflow as tf
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from keras import layers
from tensorflow.python import keras
from sklearn import preprocessing

三、数据准备

这里我随便用了一个数据集,是物联网设备的网络流量数据,根据情况选用自己的数据集即可。

use_data=pd.read_csv('danmini_traffic.csv' ,header = None)
features = np.array(use_data.iloc[:, range(0, use_data.shape[1] - 1)])
根据数据情况决定是否需要标准化
#input_features = preprocessing.StandardScaler().fit_transform(features)
labels = use_data.iloc[:, -1]

四、模型构建

model = tf.keras.Sequential(
    [layers.Dense(32, activation='sigmoid'),
    layers.Dense(32, activation='sigmoid'),
    layers.Dense(32, activation='sigmoid'),
    layers.Dense(1)]
)

这是最简单的网络结构,一共有四层网络。这里可以查看官方文档,选择需要的网络和激活函数等。

五、模型训练

#加载模型
model.compile(optimizer=tf.keras.optimizers.SGD(0.001),#
             loss='mean_squared_error',  # 损失函数
             metrics=['mse'])
#开始训练
history = model.fit(features,labels,batch_size=50, epochs=50, validation_split=0.1, verbose=1)

训练结果:
在这里插入图片描述

可以看到,训练结果很不错。损失值较小,因为这里使用的是监督学习,所以准确率偏高, 训练集和测试集的损失值差别不大,说明没有出现过拟合或欠拟合的情况。
打印一下网络模型结构:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值