当前位置:   article > 正文

深度学习第P1周: 实现mnist手写数字识别_images = open(mnist_data_path + 'train-images.idx3

images = open(mnist_data_path + 'train-images.idx3-ubyte','rb')

深度学习第P1周:

实现mnist手写数字识别

1. mnist数据库

我先查了一下什么叫做mnist原来是nist发布的一个256个手写的数字。
MNIST是什么
我想很多菜鸟和我一样,开始零基础学习机器学习,没办法火啊,为了钱大家都是冲呀。估计很多人开始学习ML,就一头雾水,完全不知道在说什么。因为学习模式和学习其他语言完全不同,我们知道学习其他语言的时候,第一个程序就是打印“Hello World”。

其实机器学习是在某个框架下,使用某种语言,来解决问题。因此对于零基础的菜鸟而言,我们需要先学习好某种语言,可以推荐Python,因为功能强大,而且语法相对简单,也可以使用C++。框架呢,个人推荐是TensorFlow2,因为google的大腿粗啊。

什么是MNIST
建议在了解Python后,开始在TF2的框架下进行。

机器学习的入门就是MNIST。MNIST 数据集来自美国国家标准与技术研究所,是NIST(National Institute of Standards and Technology)的缩小版,训练集(training set)由来自 250 个不同人手写的数字构成,其中 50% 是高中学生,50% 来自人口普查局(the Census Bureau)的工作人员,测试集(test set)也是同样比例的手写数字数据。

获取MNIST
MNIST 数据集可在http://yann.lecun.com/exdb/mnist/获取,图片是以字节的形式进行存储,它包含了四个部分:

Training set images: train-images-idx3-ubyte.gz (9.9 MB, 解压后 47 MB, 包含 60,000 个样本)
Training set labels: train-labels-idx1-ubyte.gz (29 KB, 解压后 60 KB, 包含 60,000 个标签)
Test set images: t10k-images-idx3-ubyte.gz (1.6 MB, 解压后 7.8 MB, 包含 10,000 个样本)
Test set labels: t10k-labels-idx1-ubyte.gz (5KB, 解压后 10 KB, 包含 10,000 个标签)
  • 1
  • 2
  • 3
  • 4

此数据集中,训练样本:共60000个,其中55000个用于训练,另外5000个用于验证。测试样本:共10000个,验证数据比例相同。

数据集中像素值:

a)使用python读取二进制文件方法读取mnist数据集,则读进来的图像像素值为0-255之间;标签是0-9的数值。

b)采用TensorFlow的封装的函数读取mnist,则读进来的图像像素值为0-1之间;标签是0-1值组成的大小为1*10的行向量。

2. 安装环境

●难度:小白入门⭐
●语言:Python3、Pytorch

gao:
python 和pytorch的版本您用的是什么?

K同学啊:
python3.6.5
1.10.0+cu113

conda create --name k1 python=3.6 -y
conda install pytorch torchvision torchaudio cudatoolkit=11.3 -c pytorch

  1. 我安装了pycharm2021。然后,创建了一个项目,并创建了一个k2的环境。接下来就是安装cuda和pytorch了。我是用的cuda11.7,我卸载了,然后安装了11.3

  2. 然后,我就是,安装了env k3
    conda create --name k3 python=3.6 -y

  3. 我在env k3中安装pytorch

conda install pytorch1.10.0 torchvision0.11.0 torchaudio==0.10.0 cudatoolkit=11.3 -c pytorch -c conda-forge

我修改了一下.condarc文件。
我设置了国内的源。
Anaconda 镜像使用帮助
Anaconda 是一个用于科学计算的 Python 发行版,支持 Linux, Mac, Windows, 包含了众多流行的科学计算、数据分析的 Python 包。

Anaconda 安装包可以到 https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/ 下载。

TUNA 还提供了 Anaconda 仓库与第三方源(conda-forge、msys2、pytorch等,查看完整列表)的镜像,各系统都可以通过修改用户目录下的 .condarc 文件。Windows 用户无法直接创建名为 .condarc 的文件,可先执行 conda config --set show_channel_urls yes 生成该文件之后再修改。

注:由于更新过快难以同步,我们不同步pytorch-nightly, pytorch-nightly-cpu, ignite-nightly这三个包。

channels:
  - defaults
show_channel_urls: true
default_channels:
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
  - https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
  conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  pytorch-lts: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

环境的安装,我参考的是动手学深度学习的安装教程。
安装¶
我们需要配置一个环境来运行 Python、Jupyter Notebook、相关库以及运行本书所需的代码,以快速入门并获得动手学习经验。
安装 Miniconda
最简单的方法就是安装依赖Python 3.x的Miniconda。 如果已安装conda,则可以跳过以下步骤。访问Miniconda网站,根据Python3.x版本确定适合你的系统的版本。
如果你使用macOS,假设你的Python版本是3.8(我们的测试版本),你将下载名称包含字符串“MacOSX”的bash脚本,并执行以下操作:

# 文件名可能会更改 sh Miniconda3-py38_4.10.3-MacOSX-x86_64.sh -b 
  • 1

如果你使用Linux,假设你的Python版本是3.8(我们的测试版本),你将下载名称包含字符串“Linux”的bash脚本,并执行以下操作:

# 文件名可能会更改 sh Miniconda3-py38_4.10.3-Linux-x86_64.sh -b 
  • 1

接下来,初始化终端Shell,以便我们可以直接运行conda。

~/miniconda3/bin/conda init
现在关闭并重新打开当前的 shell。你应该能用下面的命令创建一个新的环境:

conda create --name d2l python=3.8 -y
现在激活 d2l 环境:

conda activate d2l
安装深度学习框架和d2l软件包
在安装深度学习框架之前,请先检查你的计算机上是否有可用的GPU。 例如,你可以查看计算机是否装有NVIDIA GPU并已安装CUDA。 如果你的机器没有任何GPU,没有必要担心,因为你的CPU在前几章完全够用。 但是,如果你想流畅地学习全部章节,请提早获取GPU并且安装深度学习框架的GPU版本。
MXNETPYTORCHTENSORFLOW
你可以按如下方式安装PyTorch的CPU或GPU版本:

pip install torch1.11.0 pip install torchvision0.12.0
我们的下一步是安装d2l包,以方便调取本书中经常使用的函数和类:

pip install d2l==0.17.5
下载 D2L Notebook
接下来,需要下载这本书的代码。 你可以点击本书HTML页面顶部的“Jupyter 记事本”选项下载后解压代码。 或者,你可以按照如下方式进行下载:
MXNETPYTORCHTENSORFLOW

mkdir d2l-zh && cd d2l-zh curl https://zh-v2.d2l.ai/d2l-zh-2.0.0.zip -o d2l-zh.zip unzip d2l-zh.zip && rm d2l-zh.zip cd pytorch
注意:如果你没有安装unzip,则可以通过运行sudo apt install unzip进行安装。
安装完成后,你可以通过运行以下命令打开Jupyter笔记本(在Window系统的命令行窗口中运行以下命令前,需先将当前路径定位到刚下载的本书代码解压后的目录):

jupyter notebook
现在,你可以在Web浏览器中打开http://localhost:8888(通常会自动打开)。 由此,你可以运行这本书中每个部分的代码。 在运行书籍代码、更新深度学习框架或d2l软件包之前,请始终执行conda activate d2l以激活运行时环境。 要退出环境,请运行conda deactivate。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/IT小白/article/detail/339391
推荐阅读
相关标签