这篇博客适用于新手小白,想要做图像处理、深度学习相关的研究。基于学习框架有很多,主流的是Pytorch/ Tensorflow,这篇博客以 Tensorflow框架为例。如果你在Github上下载的代码是pytorch 的,同理操作安装torch库即可。
@[TOC](PyCharm 上进行图像状态分类任务 入门必看)
0. 前言
这篇博客适用于新手小白,想要做图像处理、深度学习相关的研究。基于学习框架有很多,主流的是Pytorch/ Tensorflow,这篇博客以 Tensorflow框架为例。如果你在Github上下载的代码是pytorch 的,同理操作安装torch库即可。
1. 配置环境
环境配置:Anaconda+pycharm+tensorflow
1.1 需要下载
在配置环境前你需要 在官网下载 Anaconda 及 Pycharm(专业版)
Anaconda下载
Pycharm下载
1.2 安装Anaconda 并创建虚拟环境
1.2.1安装Anaconda,正常装即可(注意:长远考虑不要安装在C盘)
1.2.2 创建虚拟环境
清华大学 开 源 镜 像Anaconda 镜 像 使用帮助
TUNA 还提供了 Anaconda 仓库与第三方源(conda-forge、msys2、pytorch等,查看完整列表,更多第三方源可以前往校园网联合镜像站查看)的镜像,各系统都可以通过修改用户目录下的 .condarc 文件来使用 TUNA 镜像源。Windows 用户无法直接创建名为 .condarc 的文件,可先执行 conda config –set show_channel_urls yes 生成该文件之后再修改。注:由于更新过快难以同步,我们不同步pytorch-nightly, pytorch-nightly-cpu, ignite-nightly这三个包。
在所有应用中找到 Anaconda,点开终端,输入 conda config --set show_channel_urls yes
,终端运行后会生成 .condarc
文件该文件的路径为:C:用户username
用记事本打开,并将下面的代码粘贴复制到该文件中。
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
deepmodeling: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/
执行完上述操作后,打开终端,键入 conda create -n XXX python=3.6
其中,XXX为你想要创建的虚拟环境的名称,python的版本也可以自行更改。
1.2.3 激活虚拟环境已测试是否完成创建
终端界面 键入 conda activate XXX
其中,XXX为上一步创建的虚拟环境的名称
1.2.4 配置系统变量
右键我的电脑——>属性——>高级系统设置——>环境变量——>在系统变量下找到Path并点击编辑
找到Anaconda 的安装路径,并将装目录下condabin ;install【condabin的上一级】添加至Path中
示例:
E:addProgramAnacondainstallcondabin
E:addProgramAnacondainstall
1.2.5 Anaconda常用命令
conda activate XXX % 激活虚拟环境
Conda deactivate XXX % 退出虚拟环境
conda env remove --name XXX % 删除虚拟环境
conda --version % 查看版本
con服务器托管网da env list % 查看所有环境
conda list % 查看conda下的包
conda env -h % 查看环境管理的全部命令帮助
1.3 安装tensorflow
如1.2所述打开终端键入 pip install tensorflow -i https://pypi.tuna.tsinghua.edu.cn/simple
以安装tensorflow
1.4 安装Pycharm
正常安装,注意安装路径不放在C盘即可
1.4.1 服务器托管网激 活
注:若是Mac / Linux 系统 上述步骤3应为:
打开终端,cd 打开进入到/jetbra/scripts
文件夹,并执行sudo bash install.sh
1.5 配置Pycharm 环境
新建项目,这里选择好项目的位置即可,后面编译器还可以重新配置
Ctrl+Alt+S
打开设置,如下操作,添加编译器,编译器的位置是在Anaconda安装路径下/Scripts
路径下
**示例:**E:ProgramFilesAnacondainstallScripts
2 新建demo.py 测试图像分类
在上述新建的工程下,新建一个.py
文件,这里以demo.py
为例:将下面的代码复制进去
import tensorflow as tf
from tensorflow.keras import datasets, layers, models
import matplotlib.pyplot as plt
# 加载 CIFAR-10 数据集并分为训练集和测试集
(train_images, train_labels), (test_images, test_labels) = datasets.cifar10.load_data()
# 将像素值标准化到0到1的范围
train_images, test_images = train_images / 255.0, test_images / 255.0
# 构建卷积神经网络模型
model = models.Sequential()
model.add(layers.Conv2D(32, (3, 3), activation='relu', input_shape=(32, 32, 3)))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
model.add(layers.MaxPooling2D((2, 2)))
model.add(layers.Conv2D(64, (3, 3), activation='relu'))
# 在模型上添加密集层
model.add(layers.Flatten())
model.add(layers.Dense(64, activation='relu'))
model.add(layers.Dense(10))
# 编译和训练模型
model.compile(optimizer='adam',
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
metrics=['accuracy'])
history = model.fit(train_images, train_labels, epochs=10,
validation_data=(test_images, test_labels))
# 评估模型
plt.plot(history.history['accuracy'], label='accuracy')
plt.plot(history.history['val_accuracy'], label='val_accuracy')
plt.xlabel('Epoch')
plt.ylabel('Accuracy')
plt.ylim([0, 1])
plt.legend(loc='lower right')
test_loss, test_acc = model.evaluate(test_images, test_labels, verbose=2)
print(test_acc)
2.1 打开终端 并运行代码测试
点击侧边栏 终端,激活虚拟环境:conda activate XXX
,
计入虚拟环境后,运行 demo.py
即可
下面的代码实现功能是将训练一个简单的 CNN 模型来识别 CIFAR-10 数据集中的图像,并在结束时输出测试精度。
CIFAR-10 数据集在 TensorFlow 中内置,程序会自动下载和加载它。
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net