深度学习建模从零开始步骤流程

2023-12-20 18:25:00

深度学习建模从零开始步骤流程

步骤如下:

  1. 环境准备
  2. 三方库安装
  3. 建模开发

环境准备

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
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。