学习深度学习代码各个步骤都是为了啥
Posted 盖丽男
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习深度学习代码各个步骤都是为了啥相关的知识,希望对你有一定的参考价值。
活动地址:CSDN21天学习挑战赛
学习日记
**
一个深度学习的例子,代码一般会包括以下几个步骤:
- 设置GPU
- 加载数据
- 处理数据
1. 归一化
2. 设置测试集 - 构建模型
- 激活模型
- 训练模型
- 结果可视化
1. 绘制loss图
2. 预测
3. 评估
设置GPU
gpus = tf.config.list_physical_devices("GPU")
if gpus:
tf.config.experimental.set_memory_growth(gpus[0], True)
#设置GPU显存用量按需使用
tf.config.set_visible_devices([gpus[0]],"GPU")
通过tf.config.list_physical_devices,我们可以获得当前主机上某种特定运算设备类型(如 GPU 或 CPU )的列表
所以这段话就是,获取机器的gpu列表,然后用第一个
加载数据
# 支持中文
plt.rcParams['font.sans-serif'] = ['SimHei'] # 用来正常显示中文标签,运行配置参数中的字体(font)为黑体(SimHei)
plt.rcParams['axes.unicode_minus'] = False # 用来正常显示负号
data = pd.read_csv('./datasets/SH600519.csv') # 读取股票文件
"""
前(2426-300=2126)天的开盘价作为训练集,表格从0开始计数,2:3 是提取[2:3)列,前闭后开,故提取出C列开盘价
后300天的开盘价作为测试集
"""
training_set = data.iloc[0:2426 - 300, 2:3].values
test_set = data.iloc[2426 - 300:, 2:3].values
plt.rcParams[‘配置参数’]=[修改值] 是在修改matplotlib的配置
然后把数据读到data对象里
iloc[ : , : ]
前面的冒号就是取行数,后面的冒号是取列数
左闭右开原则
处理数据
归一化
#数据转换的范围是[0,1],sc代表min和max
sc = MinMaxScaler(feature_range=(0, 1))
#sc代表min和max,fit找出每列的Min和Max,将x(i,j)代入归一化公式进行transform
training_set = sc.fit_transform(training_set)
#每一列数据的归一化公式已确定,直接代入数据就可以。
#这里不用再次fit是因为sc.fit_transform(training_set)已经确定了每列的归一化公式。由此可知test_set归一化数据,并不是把数据映射到 [ 0,1 ] ,只是用了和training_set一样的归一化公式。
test_set = sc.transform(test_set)
sklearn 库有六大模块,分别是分类、回归、聚类、降维、模型选择和预处理preprocessing。MinMaxScaler()函数在preprocessing模块,用来实现数据的归一化,即把数据映射到 [ 0,1 ] 。
设置测试集
# 设置测试集训练集
x_train = []
y_train = []
x_test = []
y_test = []
这里就是设置了几个对象留着给后面用
…
先写到这里,后面的下一篇介绍。
以上是关于学习深度学习代码各个步骤都是为了啥的主要内容,如果未能解决你的问题,请参考以下文章