深度学习建模从零开始步骤流程
2023-12-20 18:25:00
深度学习建模从零开始步骤流程
步骤如下:
- 环境准备
- 三方库安装
- 建模开发
环境准备
Anaconda安装:
Anaconda下载网址,下载win10下的64位版本。
清华镜像站
下载完毕后点击安装,一直点确定或下一步
到上图点击 Just me,因为只自己编程使用
上图,可在自己想要装的盘内创建Anaconda文件夹,然后作为安装目录。如我在D盘创建Anaconda文件夹,安装时选中该文件夹作为安装目录。
上图,选择第二个便好,第一个环境变量配置请看下文。
然后点击 Install进行安装,等待安装完毕,进行环境变量配置。
关于 Anaconda环境变量配置:
找到Anaconda安装目录,如:E:\Anaconda,E:\Anaconda\Scripts
将上述两个地址,添加至环境变量 Path 尾部。
三方库安装
在完成环境准备之后,在cmd中输入以下命令查看当前环境中已安装的三方库:
要进行深度学习开发,一般需要安装如下三方库:pandas,numpy,keras等,安装方式如下:
根据算法建模所需的三方库,依次使用pip3 install 命令安装便可。
建模开发
根据具体的建模应用场景和数据集,开发程序,训练模型,以电影评论二分类为例,
先使用pip3 install keras 安装深度学习建模库
import numpy as np
from keras.datasets import imdb
# 数据集准备
(train_data, train_labels), (test_data, test_labels) = imdb.load_data(num_words=10000)
# 数据向量化
def vectorize_sequences(sequences, dimension=10000):
results = np.zeros((len(sequences), dimension))
for i, sequence in enumerate(sequences):
results[i, sequence] = 1.
return results
x_train = vectorize_sequences(train_data)
x_test = vectorize_sequences(test_data)
# 标签向量化
y_train = np.asarray(train_labels).astype('float32')
y_test = np.asarray(test_labels).astype('float32')
# 神经网络构建
from keras import models
from keras import layers
model = models.Sequential()
model.add(layers.Dense(16, activation='relu', input_shape=(10000,)))
model.add(layers.Dense(16, activation='relu'))
model.add(layers.Dense(1, activation='sigmoid'))
model.compile(optimizer='rmsprop', loss='binary_crossentropy', metrics=['accuracy'])
# 验证集准备
x_val = x_train[:10000]
partial_x_train = x_train[10000:]
y_val = y_train[:10000]
partial_y_train = y_train[10000:]
# 模型训练
history = model.fit(partial_x_train, partial_y_train, epochs=20, batch_size=512, validation_data=(x_val, y_val))
# 绘制训练精度和验证精度
import matplotlib.pyplot as plt
history_dict = history.history
acc = history_dict['acc']
val_acc = history_dict['val_acc']
plt.plot(epochs, acc, 'bo', label='Training acc')
plt.plot(epochs, val_acc, 'b', label='Validation acc')
plt.title('Training and validation accuracy')
plt.xlabel('Epochs')
plt.ylabel('Accuracy')
plt.legend()
plt.show()
文章来源:https://blog.csdn.net/qq_41982466/article/details/135109685
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!