cnn模型训练——从环境搭建到模型部署
Posted 重力异常
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了cnn模型训练——从环境搭建到模型部署相关的知识,希望对你有一定的参考价值。
一、准备python环境
以Windows平台为例:
1.安装python3
直接默认安装,并且添加到PATH。
安装完毕后在命令行输入python回车查看是否安装成功。
2.更换pip源
在win+R运行输入%APPDATA%,点击确定,进入C:Users\\用户名\\AppData\\Roaming文件夹,在该文件夹下新建文件夹pip,在pip下新建文本文件,在其中填入如下内容,然后将文件命名为pip,扩展名改为ini。
[global]
index-url = http://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host = mirrors.aliyun.com
3.创建虚拟环境
通过pip安装virtualenv:
pip install virtualenv
测试安装:
virtualenv --version
创建一个文件夹用来存放虚拟环境,命名Envs。cd进目录:
创建虚拟环境:
virtualenv venv01
4.安装pycharm并新建project
进入官网下载,有免费社区版和付费专业版(学生免费)。任选其一即可。
pycharm官网下载(网速极慢)
下载完安装,下一步、下一步、默认安装就行。安装完打开,点击Creat New Project:
选择项目存放路径——>点击Existing interpreter——>点击【...】
找到刚刚用virtualenv创建的虚拟环境下的python.exe,点击OK,勾选Make available to all projects:
点击Creat创建项目:
5.安装tensorflow
点击Terminal打开终端:
输入
pip install tensorflow
安装tensorflow,注意到是安装到虚拟环境里,这样有助于保护系统,并且如果后续环境炸了,可以直接删库重建,十分方便。
同样的方法安装opencv-python等库,缺少库pycharm会报红,按提示安装相应库即可。
二、模型训练
以图像分类模型为例:
将准备好的文件放进项目文件夹里:
CNN_net.py使用keras创建了模型,app.py是模型训练程序。
首先将下载的数据集放进dataset文件夹里,按类别再分文件夹放置,文件夹名就是类别标签名。然后创建output文件夹(不会自动创建,不创建会报错)。
训练程序用到了cv2对图像进行处理,cv2不支持中文路径和中文文件名,如果批量下载的图片带中文,先使用rename.py批量重命名,按需改动path和name:
确认无误后,在终端执行
python app.py
等待训练完成,在output文件夹里生成模型文件cnn.h5。
三、模型测试
将欲测试的图片(可以是dataset里的图片,也可以是另外找的图片)放进cs_image文件夹里。更改test.py中的图片文件名与测试图片文件名相同:
在终端执行
python test.py
将显示图片和预测的分类结果及其概率:
四、.h5模型转.tflite
更改keras2tflite_int.py中的DATADIR和CATAGORIES分别为数据集路径和标签名:
在终端执行
python keras2tflite_int.py
在output文件夹中生成cnn.tflite模型文件。
以上是关于cnn模型训练——从环境搭建到模型部署的主要内容,如果未能解决你的问题,请参考以下文章
PyTorch从头搭建并训练一个神经网络模型(图像分类CNN)
PyTorch从头搭建并训练一个神经网络模型(图像分类CNN)