深度学习 Day1——学习之前需要的工作准备

深度学习 Day 1——学习之前需要的工作准备

活动地址:CSDN21天学习挑战赛

一、前言

我的环境:

  • 电脑系统:Win 11

  • 语言环境:Python 3.10

  • 编译器:PyCharm,Jupyter notebook

  • 深度学习环境:TensorFlow2

二、库的安装

Jupyter notebookTensorFlow都有对应的网页端,可以直接使用,非常方便,也可以在本地下载对应的库来实现,下载方式更其他库的方式一样。

​ CMD内使用pip下载:

pip install tensorflow

pip install jupyterlab

pip install notebook

三、官方示例演示

接下来是对于TensorFlow2.0的官方示例演示

如何目前你不熟悉TensorFlow和Jupyter的使用,你可以先在PyCharm中尝试一下:

首先导入tensorflow库

import tensorflow as tf

然后载入并准备好MNIST数据集,将样本从整数转换为浮点数。

mnist = tf.keras.datasets.mnist

(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train, x_test = x_train / 255.0, x_test / 255.0

其中MNIST手写字符数据集返回两个元组,其中方法中还包括一个参数:

参数说明
x_train,x_testuint8 数组表示的灰度图像,尺寸为 (num_samples, 28, 28)
y_train,,y_testuint8 数组表示的数字标签(范围在 0-9 之间的整数),尺寸为 (num_samples,)
path如果在本地没有索引文件 (at ‘~/.keras/datasets/’ + path), 它将被下载到该目录

到这里,可能会运行成功,也可能会运行失败,运行成功的结果是;

Downloading data from https://storage.googleapis.com/tensorflow/tf-keras-datasets/mnist.npz
11493376/11490434 [==============================] - 0s 0us/step
11501568/11490434 [==============================] - 0s 0us/step

失败的问题,我们待会解决,现在我们假设已经成功,接下来我们将模型的各层堆叠起来,以搭建tf.keras.Sequential模型,为训练选择优化器和损失函数;

model = tf.keras.models.Sequential([
  tf.keras.layers.Flatten(input_shape=(28, 28)),
  tf.keras.layers.Dense(128, activation='relu'),
  tf.keras.layers.Dropout(0.2),
  tf.keras.layers.Dense(10, activation='softmax')
])

model.compile(optimizer='adam',
              loss='sparse_categorical_crossentropy',
              metrics=['accuracy'])

其中,Sequential是顺序模型,顺序模型是多个网络层的线性堆叠。简单的说一下这一些方法的概念,想要更加深入的了解Keras这个基于Python的深度学习库可以去它的中文官网去学习一下,连接我就放在这里:https://keras.io/zh/

最后,我们来训练并验证模型:

model.fit(x_train, y_train, epochs=5)

model.evaluate(x_test,  y_test, verbose=2)

它运行的结果是:

Epoch 1/5
1875/1875 [==============================] - 6s 3ms/step - loss: 0.2968 - accuracy: 0.9145
Epoch 2/5
1875/1875 [==============================] - 6s 3ms/step - loss: 0.1437 - accuracy: 0.9573
Epoch 3/5
1875/1875 [==============================] - 4s 2ms/step - loss: 0.1085 - accuracy: 0.9674
Epoch 4/5
1875/1875 [==============================] - 6s 3ms/step - loss: 0.0891 - accuracy: 0.9725
Epoch 5/5
1875/1875 [==============================] - 4s 2ms/step - loss: 0.0781 - accuracy: 0.9753
313/313 - 1s - loss: 0.0725 - accuracy: 0.9782 - 516ms/epoch - 2ms/step
[0.07253240793943405, 0.9782000184059143]

可以看出,这个官方示例照片分类器的准确的已经达到了98%,想要了解更多也是去它的官网去查阅相关的使用教程等内容。

四、过程中遇见的一些问题

上面官方示例演示的第二部分可能会运行出错。

2022-08-01 20:19:21.294942: W tensorflow/stream_executor/platform/default/dso_loader.cc:64] Could not load dynamic library 'cudart64_110.dll'; dlerror: cudart64_110.dll not found
2022-08-01 20:19:21.295104: I tensorflow/stream_executor/cuda/cudart_stub.cc:29] Ignore above cudart dlerror if you do not have a GPU set up on your machine.

出现这个情况我们先设置一下GPU:

import tensorflow as tf

gpus = tf.config.list_physical_devices("GPU")

if gpus:
    gpu0 = gpus[0]                                        #如果有多个GPU,仅使用第0个GPU
    tf.config.experimental.set_memory_growth(gpu0, True)  #设置GPU显存用量按需使用
    tf.config.set_visible_devices([gpu0],"GPU")

但是我们发现这样设置GPU之后还是报错,和之前的报错一样,这是因为最新版本的TensorFlow2默认安装CPU和GPU两个版本,而GPU是不能运行退回到CPU版本的这个时候。

我们发现错误里面提示**‘cudart64_110.dll’ not found**,因此我们需要手动将cudart64_110.dll添加到路径**“C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.0\bin”**中去。

cudart64_101.dll链接:https://cn.dll-files.com/cudart64_101.dll.html

但是这个时候肯定有很多人会发现自己的Program Files文件夹里面根本就没有NVIDIA GPU Computing Toolkit这个文件夹,这是因为我们没有安装CUDA和CUDNN。

好现在我们要去下载CUDA和CUDNN,下载地址我就放在下面:

CUDA:https://developer.nvidia.com/cuda-downloads

CUDNN:https://developer.nvidia.com/rdp/cudnn-download

注意:CUDA和CUDNN要版本匹配才行,CUDA要选择自己电脑支持的版本。

可以在电脑桌面右击,选择NVIDIA 控制面板,然后点击帮助,然后点系统信息,再点组件就可以看见自己电脑支持的版本了。

在这里插入图片描述

顺便提一下,如何这两个下载速度很慢或者因为网络问题下载失败,需要挂VPN然后最好不要使用WiFi下载,直接连接手机热点下载,反正我用WiFi总是下载不了,换手机热点之后就好很多了。(但依旧慢的要死😭)

在漫长的等待过后,我们终于下载好了这个两个东西。

1、安装CUDA

CUDA的安装推荐默认的就行,这样也不会忘记安装地址了,如果C盘容量不足的话那还是换另一个盘安装,安装结束之后,我们需要测试一下CUDA是否安装成功.

我们直接在cmd里面输入命令:nvcc --version,显示如下即算安装成功。

在这里插入图片描述

然后使用命令:set cuda,可以查看cuda设置的环境变量。

2、安装CUDNN

下载之后直接解压该压缩包到你指定的路径里面,检查一下是不是这些文件

在这里插入图片描述

然后打开C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA路径,找到路径下的binincludelib目录,然后将解压后CUDNN里面对应的binincludelib目录下的文件对应的复制到binincludelib目录下。

然后也是检查一下安装是否成功。

打开C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\demo_suite路径,在此路径下打开Powershell(shift+鼠标右键选择在此处打开Powershell窗口),执行命令:.\bandwidthTest.exe,如何出现如下信息就证明安装成功:

在这里插入图片描述

到这里就CUDA和CUDNN的安装就结束了。

现在,我们重新打开PyCharm,然后重新运行程序,就会发现现在已经可以成功运行出结果了。

在这里插入图片描述

五、最后我想说

这是我参加CSDN的一个活动所写的博客,名字叫做21天学习挑战赛,是免费参加的,我也是想学习一些新知识,然后让自己忙起来不那么闲,总而言之,参加能更加督促自己每天的学习,我本人也经常偷懒,哈哈哈😁

活动地址我放在这里:https://t.csdnimg.cn/imX8

感兴趣的同学可以利用自己的空余时间来跟着大博主学习学习,增长知识,何乐而不为。

今天主要是进行一些环境搭建等前期工作,接下来就要跟着博主去训练各种项目,然后去总结知识,然后用博客的方式发出来,这也是这次活动的参与方式。

创作不易,谢谢你们的点赞收藏转发三连,文章里面有一些也是我翻阅了很多其他博主总结的,毕竟学习过程中遇见困难要学会自己去上网翻阅解决问题。

最后,文章如有某个地方出现错误或者不妥之处,也请大家为我指出,谢谢大家!!!🥰🥰🥰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

-北天-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值